~Piscine~: My Time Under the Sea
FishFest
Game jams are known for having themes that participants must follow in order to qualify for judging. The theme is typically revealed at the beginning of the jam: with no participant having insight into the theme, ideation and scoping can be included in the jam timeline for an additional challenge. Not so with FishFest.
FishFest, hosted by Possibly Axolotl, wears its theme on its sleeve. There are no prizes, there is no clout, there is just one requirement: fish must be front and center in whatever you upload. For my part, I was browsing through a list of upcoming jams and this was by far the most intriguing – how would I make a game about fish?
My goal for FishFest had been to create a game that wouldn’t take a lot of effort (professional work left me without much time or energy) but would make my team laugh. Something I’ve always enjoyed was reading through dialogue-heavy stories with friends, riffing on the story and playing with ridiculous voices for the characters. A great source of these are visual novels: if you find yourself with some close friends and some time to kill, Magical Diary: Horse Hall and the Magical Diary series can be entirely recast with Muppet characters (shout out to Big Steve, pinball wizard). Therefore, I approached the team (collectively, the Game Jam Fam) with a three word pitch: For what it's worth, "fish dating simulator" did appear in multiple other submissions -- check them out on the submission page!
The Team
As has been the case for the past few jams I’ve participated in, I had the pleasure of working with HeyV (composer, musician, and sound designer) and Kry (artist and graphic designer). GameJamFam founding member Will dropped by to provide moral support and shaders, but due to a nasty case of employment could not join for the duration of the jam.
Scoping out the project
The simple truth is that everyone involved is an adult working full-time in this economy: any semblance of free time is eked out after spending 10 hours at your day job, if you’re fortunate enough to only need one job. Nobody wanted to roll into this jam with big ideas and intentions of winning it all, we (and particularly I) just wanted a nice little creative outlet.
Our initial scope was straightforward: use the Godot engine, which we were familiar with, along with a popular dialogue library, Dialogic, to make a by-the-numbers dating simulator that would make us laugh. We planned for a Main Character customization screen (choose your own fish!) and a few minigames that vaguely supported the ridiculous story we were hashing together.
We had used Dialogic before to write the dialogue for our previous jam entry, Wayfall. Since we had decided on a deep-sea theme for that jam, it was fun to take some of the same characters and bring them into our new game (namely Jacques, the terminally online shrimp). Purely within the fiction of the game jam, we decided that Jacques would be our “writer”, so his role as a romanceable partner could be the handsomest self-insert around.
The story is fairly straightforward: deep beneath the ocean waters, a small community of sea life is threatened when the local geothermal vent (a source of power for the community) is plugged up by a large boulder. You, a fish investigator from the Big Fish City, are here to get to the bottom of this mystery (and possibly, find romance in one of the suspects).
The dry details of the entire GDD are included for those And for those with an excess of spare time. , but to summarize:
- Each character moves between the explorable areas depending on the day and time.
- The game only goes over 5 days and four nights, with the first day being taken up with exposition.
- There are three romanceable options: A punk eel named Eeliott, a nerdy sturgeon named Barnaby, and a very handsome and buff shrimp named Jacques.
- Each romance option has their reasons for (potentially) committing the crime:
- Jacques was snubbed at the local Bodybuilding/Philanthropy contest.
- Eeliott makes biolouminescent art, but can’t get any eyes on it
- Barnaby did it for a dare during a frat hazing gone terribly wrong
Game Design Document
Our GDD took the form of a shared Google spreadsheet we edited together, split into some key sections: the cast, the locations, where characters should be at what times, visual/audio assets needed, and a Brick Breaker style minigame.
The Cast
* Indicates a romanceable character/suspect. Strikethrough lines represent cut characters.
Name | Type | Trope |
---|---|---|
Eeliott* | Moray Eel | Goth |
Barnaby* | Sturgeon | Nerd |
Jacques* | Shimp [sic] | Jock |
Franklin | Humpback Anglerfish | Chief of Fish Police |
Smitty | Telescopefish | Frat Bro |
Meelody | Pelican Eel | Lawyer |
Hollandaise | Lumpfish | Mail Carrier |
Charlene & Romeo (twins) | Barracudina | Bartenderistas |
Cutscenes
- Romanceable cutscenes: 3 per protag (9)
- Splash scenes in cutscene: 1 per protag (3)
- Different ending cutscene for each protag (3)
- Ending cutscene if you fail to romance any (1)
Settings
- Bar/Coffee shop
- Geothermal Vent
- Library
Schedule
Day | Bar/Coffee Shop | Geothermal Vent | Library | Police Station | Jacques’ Home MansionGym | Eeliott’s Arthaus | Barnaby’s Dorm Room |
---|---|---|---|---|---|---|---|
1: Day | Franklin | ||||||
1: Night | Jacques, Eeliott, Barnaby, Charlene | ||||||
2: Day | Romeo, Hollandaise | Meelody | Franklin | Jacques | Eeliott | Barnaby, Smitty | |
2: Night | Charlene, Meelody, Smitty | Eeliott, Hollandaise | Jacques | Barnaby | |||
3: Day | Romeo, Barnaby | Jacques, Smitty | Franklin, Meelody | Eeliott, Hollandaise | |||
3: Night | Charlene, Jacques, Eeliott, Smitty | Barnaby | Franklin, Hollandaise | ||||
4: Day | Romeo, Meelody, Jacques | Eeliott, Smitty | Barnaby | Franklin, Hollandaise | |||
4: Night | Franklin, Charlene, Hollandaise | Jacques | Eeliott | Barnaby, Smitty | |||
5: Day | All | ||||||
5: Night |
The Minigame
The minigame was designed as a simple brick breaker game, where each brick is labeled with something (character name, fact, clue, etc). Depending on what happened during the day/night, different text will be used. Romantic progression with any of the three romanceable characters would introduce effects like multi-ball. A large, final brick at the top would have been labelled “The Truth”, breaking it would end the minigame and bump up a running score. After playing our game, the player could then brag to their friends about “winning the best at fish romance”.
Ultimately, this was cut for time, since writing on the order of 30 scenes takes up more of the allotted time than expected.
Creating the artwork
I slapped together some coveted programmer art, spending up to an entire minute per portrait. Meanwhile, Kry was putting together the assets in a collage style, which turned out very nicely. You can compare our efforts below (try to spot the differences!).
Due to a tight time budget (and because my portraits were laughably bad), we ended up using my versions for the non-romanceable cast. After applying some filters, they ended up looking like felt cutouts.
For the locations, Kry put together a few stock photos based on the limited descriptions in the GDD, with a few hidden details in the background (blessed be our Hatsune Miku Funko). We spent an entire development call talking through the vibes for each of the romanceable characters, which I think comes through in how they keep their spaces: Barnaby’s dorm room is industrial concrete save for a PC tower shining with RGB, while the bar/café is stocked with everything under the sun, just in case a patron might want to use it.
Creating the music
I had absolutely no part in creating the music, though we did end up using some of the ambience tracks from a previous jam. I had a few questions for HeyV on how she goes about creating music in a crunch:
Gavin: At a high level, what does your creative process look like?
HeyV: The great thing about our jams is that because we’re all involved with figuring out what the game will be overall, I can start thinking about sound immediately. So as we talk, I’ll write out a rough asset list. Then I’ll do some research on games in the same genre as what we’re creating and make a playlist of reference tracks (which will also include suggestions teammates give me!). Then I will take all of those ideas and start writing. Fishfest was different from other jams because I sketched ideas out in notation software before moving to a DAW. I feel like I’m still figuring out my creative process, but that change was something I liked and may keep doing in the future!
Gavin: How do you take pride in / put a bit of yourself into your work?
HeyV: I don’t know that I’m at the point where I’ve developed my creative voice to come through recognizably in my work yet, but I really take pride in showing up, doing my best, and trying to learn as much as possible. Not only just from an audio standpoint, but I like to try to understand the work everyone else is doing as well! Even if they’re things that don’t directly affect what I’m doing, it’s always interesting and I believe it makes me a better team member!
Gavin: What would your advice be for someone starting their first jam as a composer?
HeyV: My advice would be 1) to set realistic expectations for what you can accomplish within your time limit and 2) have a technique or list of ideas you can fall back on when you feel stuck. I will fully pull from aleatoric music techniques and roll dice to help me come up with a melody or chord progression or what have you. It’s never perfect or complete as is, but for me, the goal is to have a starting point to get ideas flowing. OH and 3) have your tools ready to work efficiently. That can mean anything from making sure your software or plugins are working pre-jam to having session templates that you’re comfortable using.
Gavin: If/When you do your next jam, what do you think you’ll explore next?
HeyV: For a future jam or project, I’d like to explore more with middleware and adaptive audio! The jams we’ve done so far haven’t required it, but as we learn and gain more experience, that’s something I would love to try!
Writing dialogue at 1AM the day before the jam finishes
The last major part of development was actually writing the visual novel. I tried to do as much as I could with the free time I had, but ultimately ended up pulling an all-nighter before the deadline. Using a little pocket recorder, I threw together dialogue by quietly roleplaying the people in the conversation. Afterwards, I transcribed the scenes into Dialogic syntax for branches, user inputs, and portrait changes. There’s still a few places where I made mistakes, but as a workflow for getting something out there, I’m pretty happy with the results. For the next time at least, I know that I’ll need to go through another round of editing.
The late night writing is especially apparent whenever Smitty (a frat bro telescopefish) participates in a conversation. As it turns out, it’s very easy to ramble about the fish condition and how it relates to vocaloids when you’ve had a pot of coffee at 11pm.
The branching nature of the scenes meant that I couldn’t necessarily count on a player having seen a particular conversation before, apart from the introductory scenes. For the most part, I think that the scenes are somewhat standalone, though given more time this would be an area for improvement.
The exception to this is the “no romance” option: if you spend every day and every night in the police station with Franklin, the Chief of Police, you slowly play through every game in the breakroom (until another character finds you on day 4/5 to try and convince you to explore anywhere else).
Release and Beyond
The release of the game was straightforward: Kry and Heyv helpfully playtested the uploaded version, letting me know about broken paths and spelling mistakes.The itch.io page is written as if Jacques himself designed and wrote the game, contracting us to put together his vision.
The story isn’t particularly serious, or especially well developed. That’s the nature of the beast when you try to cram something into a week. But it does acheive my goal of making my team laugh, and I’m grateful that the people who played it and generously gave feedback also found it amusing.
Interested in playing the game? Check it out on itch.io!