Worked On Even More Tools and Systems For Enduring Dreamers™: Freya
These are development notes for April, 2022.
As you know from before (if you have read the previous devlog) I have been working on developing tools and systems for the game. Last month I worked on a scene–transition system and made plans to work on a save system next. Which I did!
Save systems are complex creatures, but obviously very necessary to keep track of data such as a player's progress and leaderboards.
So that's what I dabbled with for a week before I stumbled upon a major obstacle—a save system requires data to be saved, in other words, you need to know what data you want to save—I don't have all the data I need because the game is not ready finished yet! See the problem?
What I ended up doing was I created a simple save system that saved some basic data values and then moved on to develop other tools and systems—with plans to polish the save system much later on once the game gets closer to completion.
So what did I do for a whole month? Quite a lot actually!
Profile System
I developed a profile system that allows players to create multiple profiles. This will make it possible for multiple people to play on the same device without having to worry about overwriting someone else's progress!
Virtual Keyboard
Can't type a profile name without a keyboard! So I developed a virtual keyboard similar to those you would find on old console games.
Popup Message System
While developing the Virtual Keyboard and Profile System, I had to create another system that gives players a response to their actions. For example, if you try to create a profile without typing any text then it will not work... but there was no message that informed you of this. So I had to develop a message system that informs the player of what is going on.
If a profile name already exists, then you get an error. If not, then you get a success message!
Menu Sound Effects
The biggest time-sink was creating sound effects for a Menu Sound Effect system. Out of all the systems I worked on this month, I consider this one "finished" and fully working.
Basically, every time the player navigates the menu, changes scenes, pushes a button, etc. the Menu Sound Effect system will do all the work and trigger a sound effect.
The old way of playing sound effects was to hard code the sound effect at every function in the script. This meant that whenever I wanted to change the sound effect itself I would go into the script and change the code EVERYWHERE the new sound needed to be updated.
So this new system is much more efficient, it only takes 2-3 seconds to change the sound effect, even if there are a thousand different lines of code calling to play it.
Other Minor Tools
Those were the major tools/systems I worked on during the month of April. Some other stuff I developed was also a Time Tracker, a tool that can be used to create timers, countdowns, etc. I needed it for the Profile and Save systems to give players valuable information, like longest time survived, or total played time, etc.
A creature Spawner system, I'm not sure if or how I will develop this little tool, the idea was to create one tool that handles all types of spawning, from items, creatures, furniture, etc. I want to make it so all I have to do is drag and drop it into the world map and then just use some checkmarks and other settings to set things up. However, one problem this would create is now the item/creature to be spawned will have to be changed using code, compared to using the normal workflow of directly instancing a copy of the item/creature into the world which gives you access to make all changes visually directly from the editor. So I might just put this little tool on hold for now.
Anyhow, that's the month of April. I'm quite happy with how much I managed to get done, I hope to be even more productive during May!
I wish I could share some screenshots, but everything looks pretty ugly right now. But hopefully I will be able to share some images in a couple of months, so stay tuned!