Space Dreamer is a base-building survival game in development.
More than 2 months ago the idea for this game came through a concept art that I did, I have dedicated most of my time with it since then. Thank you to all who tested the game on the discord server!
Instead of relying on the original "player" tile with movement and collisions, I opted to create my own "player" tile that the drawn character would be lerping to.
Since the player is a two-tile wide character, the implementation of interactions became easier, as reverting from a previous location using the go to function would fire the update event again, resulting in undesired bugs and interactions.
Made possible by decimal trick!
I had a hard time deciding which of these two speeds to choose from, but eventually decided on using the faster one. The slower would be used in the future as an effect of a debuff of some sort.
The transition between walk and idle was achieved by checking every frame how long it has been since the last button press, using the event.frame variable.
Picking - up supplies
Doors and Exits
There’s a lot of tile checking happening under the hood for customizability, as I’m planning on saving the tiles for every room with a truckload of variables.
Added a growth system for the crops, so now every week they'll grow until they are harvestable. The yield of the plants is still supplies for now, but I'm planning to add different materials such as water and food.
Introducing Nutri Dispenser!
You can now turn your delectable crops into horrible Nutri paste! Just put it inside the dispenser and viola!
Not delicious but nutritious!
I wrote a Python script that produces code for drawing and swapping buildings, making it less of a burden to code when a new building is added. I stayed away as much as I could from while loops and embedded variables, as they seem to slow the game. I instead coded functions that call themselves when needed, acting like a loop. I'm not sure how this affects the performance or anything, but it works! The theme for this game's coding style is brute force.
Build, build, build!
Reworked a lot of the player code to be able to also handle the bots. These needed a lot of code to be modular; it felt like making a whole new game from the ground up. Python made scripting this significantly easier, focusing on creating the system rather than doing repetitive code. Right now, they can move, collect, and supply both the nutri dispenser and water tank; they can also do this while the player is not on screen (no bathroom breaks while I'm away!). This code will also be used as a base for a possible entity system (aliens!?).
They won't be stopping anytime soon.
I had underestimated implementing the bots; it was really tedious, so there was little progress. However, development continues now that it's almost complete. Now you can command them and do all your work!