Posted June 01, 2025 by beembag
Player Guide:
There is no objective required of the player each day, the idea is to roam around and talk to characters as you please using E when you see and indicator to start a conversation or thought. Some characters have multiple things to say so if you see an indicator again after talking to them, it’s likely that have something else to add!
The days continue in the same way as before where you can go around town starting conversations and thoughts, however, as you progress from Monday to Wednesday Bean’s movement will become restricted. Don’t be alarmed if you can no longer run and jump! You will also have less opportunities to inhabit geese and Bo no longer wants to play mini games 
How Soup Weather compares to its original Concept!:
The primary concern with my original concept for Soup Weather were surrounding the ambitious scope, my concept outlined a multi-day narrative journey with a handful of mini games and plenty of dialogue. Whilst all this was achieved in Soup Weather I do intend to continue development further, adding a larger variety of mini games, more involved dialogue and revisiting some of the mini game artwork as I think it could be improved to compliment the main style. I did originally plan to have specific objects to be interacted with throughout the world but I opted to instead create moments of internal dialogue based on abstract thoughts as drawing additional sprites for multiple objects would have taken more time than necessary for the content.
At the time of writing the concept for Soup Weather (which didn’t even have a name). I had not scoped out the types of mini games I would be including however I did have hopes to create more than the three I have ended up with at this stage. As I continue to develop this into a larger game I do plan on adding more mini games.
Feedback and how it was implemented:
Player Movement Milestone: The movement script I created at this stage for Bean did not change much over the following weeks of development, the only main issue I encountered was what appeared to be a missing sprite frame in the walking and running animation. I was not able to figure out the issue as there was no missing frame, however when I eventually drew new sprites for Bean (as the art style of the overall game came together) the issue resolved itself, magic!
I had also implemented a double jump ability in which I could set the number of jumps possible in the inspector, but as a joke had set the jump number to 100 and forgot to change it back resulting in players being able to “Mary Poppins” off the screen!
Level Blocking Milestone: The major bug with my level blocking was the inclines in the town. When was stationary she continued to slide downwards and the “falling” animation would play despite being grounded. The sliding issue was easily resolved by increasing Bean’s friction, however I was not able to resolve the animation issue, the animation should register Bean as grounded when in contact with the platforms but for some reason I cannot work out this is not the case.
Concern for the ambitious number of “levels” was voiced again at this stage but my coffee addiction combined with an abundance of free time negated this concern!
Mini Games and Dialogue Milestone: The dialogue and mini games themselves seemed to operate fairly smoothly however there was an overwhelming amount of issues concerning the UI and trouble exiting mini games. Menu’s were popping up at the wrong time due to colliders being toggled incorrectly, which was resolved in the SceneSwitchMenu script, Players were exiting the mini games at a different location to where they entered, instead of using player prefs or logging their entry location I opted to load the mini games over the existing scene so you continue from exactly where Bean left off. Lastly there was a whole lot of spelling errors (very on brand for me) which I have gone back through all the dialogue to amend although I’m sure I have missed some errors.
Graphics Milestone: I was very pleased to receive an overwhelmingly positive response to my artwork after I had chosen to redraw the environment and characters and only received some minor suggestions. The dialogue and interaction indicators which were green went unnoticed too often, so I did redraw them later to be the same colour as Bean’s Jumper (a bright yellow which isn’t used anywhere else in the world). Whilst a more contrasting colour light bright red would have been more noticeable I didn’t want the indicators to clash or distract from the environment.
The instructions at the beginning were not obvious enough and so players were confused about the controls. I have instead created an instructional dialogue pop up at the start of the game which commands more attention and makes the controls clear.
Play Testing Session Feedback:
Through both my playtest feedback survey and my observation of others playing my game that thee was an issue of direction due to a lack of prompts. Players didn’t realise they could jump up onto buildings and continue dialogue past the first line. To rectify this problem I added a small (e) symbol to the lower right corner of the dialogue boxes at the end of each line to prompt player input to continue the conversation. I also included dialogue that prompts the player to try getting onto the roof tops (“I could totally make it up onto the roof”).
Again the instructional UI went unnoticed and so this became the instructional pop up at the start of the game.
There was a large bug towards the end of the game which switched to the goose camera at the wrong time causing the player to miss a conversation with Pop. Whilst I would never complain about looking at geese I did fix this issue so players can look at geese in their own time, not when Pop has something to say!
Assets!
Animations: a pretty large folder containing every character, as well as the pigeons, possum, and some other little objects animators and animation states, some of which have multiple animation states.
Prefabs:
- A Bean prefab containing her movement script, ground check, and animator
- A BeanSoup Prefab which contains her slower movement script and animator
- Prefabs for dialogues, both automatic and input activated, containing their triggers and scripts.
- NPC prefab containing base dialogue object and animator.
- Story Notes Prefab containing the note sprite and text, with a dialogue object.
- Scene Switch Menu Prefab with scene switching script attached to UI buttons.
- Clouds and Mist prefabs which contain the cloud/mist sprite and a movement script. Clouds are also used in the Hot Air Balloon Dream.
- Grief Pong Prefabs, the objects in the mini game that are instantiated during the play through (ball, paddle, button)
- Huntin Season Prefabs (labelled Invaders) which contain all the objects that gets instantiated during the mini game as well as a prefab containing the whole mini game as it was used in two scenes.
Scenes: There are 8 scenes in total in soup weather which the player progresses through chronologically, before looping back to the first scene upon completing that game.
(0) Saturday
(1) Sunday
(2) Hot Air Balloon
(3) Monday
(4) Tuesday
(5) Wednesday (Soup Day)
(6) Grief Pong
(7) Friday
Fonts: I used two royalty free fonts from 1001fonts.com in soup weather. A pixel font that was used for the majority of text and signs, and a handwritten looking font used in the letters (story notes) found around the world.
Sounds: I used a mix of music and sound fx from pixabay.com to provide the atmosphere and fun sounds for the entire game. There are some sounds I did not end up using in the file but I have tentative plans to use later as I continue developing Soup Weather further!
Main Gameplay Scripts: a brief rundown of each script's purpose.
- Audio Manager: contains all the sound effects and volume control for the entirety of the game – other scripts call the audio manager to play sounds.
- AutoDialogue: variation of dialogue script that waits for a set period of time between lines of dialogue instead of requiring input (used in the Hot air balloon and grief pong mini games).
- AutoDalogueTrigger: instantiates dialogue scripts on entering trigger.
- Bean: player movement script controlling walking, running, and jumping in conjunction with an animator for each movement state.
- BeanSoup: player movement script variation without the ability to run or jump.
- Dialogue: instantiates IEnumerator that fetches lines on player input (written in inspector) and displays text letter by letter.
- Dialogue Trigger: attached to object with collider trigger, toggles the dialogue indicator and on player input instantiates dialogue script.
- Goose Listener: disables player movement and enables goose movement and camera priority when connected dialogue starts.
- HomeToggle: toggles interior game objects within Beans house and darkens the exterior world on trigger and player input.
- Honk: player movement controlling the goose and attached animator.
- NPCWander: originally intended for multiple characters but became too much of a task to animate movement for them all, only ended up being attached to the geese and pigeons for them to wander back and forth randomly within a set range.
- NPCAnimState: for the few NPC characters that had multiple positions this was a quick way to alter which state they would be in within the inspector without making more animators.
- SceneSwitcher: could be attached to buttons and controlled progressions to new scenes and mini-games.
- Title: toggles the title animations and fade between cameras on game start.
Hot Air Balloon Dream Scripts
- Clouds: movement of the cloud obstacles.
- Game manager: controls pause and play, instantiates replay or exit options depending on if the dialogue has ended.
- Parallax: using materials controls speed and direction of background parallax effect.
- Player: player movement that applies upwards thrust on input.
- Spawner: spawns cloud obstacles within determined height range.
Huntin Season Scripts:
- Bunker: controls (reduces) sprite state and health of bunker objects on collision with enemy bullets.
- HuntinSeasonManager: instantiates all gameplay prefabs on start and toggles menu on win or lose of the game.
- Invader: animation states and destroy on hit from player projectile.
- Invaders: controls the collective spawn of all enemies and moves them towards player and launches projectile. Speed of movement and projectile frequency determines by % of enemies left in the scene.
- InvPlayer: player movement back and forth, and shooting using inputs.
- Projectile: launches and maintains velocity of projectiles, destroys on collision.
Grief Pong Scripts:
- Ball: launches and maintains velocity of ball in random direction.
- Brick: determines health and assigns sprites associated with each health level, health is decreased each hit and destroys the game object if below 0. There is also an unbreakable option (used at the beginning of the game) in which health cannot drop below 1.
- Paddle: using player input to move back and forth, an bounces ball back at an angle.
- Pong Manager: contains and IEnumerator that runs the whole series of events in Grief Pong based on a time system.
Sprites: This folder contains multiple iterations of the sprites I used in Soup Weather, as a result its large and messy (I probably should have deleted old sprites as I went along but ahh). All the artwork in Soup weather were drawn by me including environment, characters, menu buttons, mini games and anything else you might see!
There were a few materials, physics, and other resources made for this project including Bean’s physics material, the balloon parallax backgrounds, invaders distortion etc.
No AI was used to generate artwork or code in this project (call me stupid and inefficient but I have a lot of fun figuring things out on my own!)
HAVE THE SOUPIEST DAY!