Dev-Diary: 94

Hey everyone!
I don’t think will come as a surprise to anyone but I am still heccin’ exhausted hahaha~ ^^

Not too much has changed in regards to what has been keeping me busy; I’ve still been working as hard as I can for Radioactive Magic on Pok├ęStudy where we have Part 2 of the Villain study currently in development (it is HEAVILY animated so it’s taking a little longer than normal!), and I’ve been continuing my work on roll which I’ll discuss in a bit. I was also hoping to get the next batch of videos out for Silver Ambience but I’ve had to prioritise more immediate tasks, so hopefully we’ll have something coming-out in the new year. I was however fortunate enough to have some time off to go to PAX (which was incredible!), as well as give myself a little breather to mitigate some potential burnout (mental health and awareness is important~!). While I’m still working hard and am pretty tired, my passion for creation is fully ignited and I am excited to see where it will take me! ^^

Talking about roll progress a little; in October/November I sat down and re-planned the project’s scope to fit a few different time-frame options, and laid out some iterations of tasks that progress along them. Depending on way too many life variables, I’ve factored in a few possible paths to get the project out both as quickly as is realistically accessible, but also to ensure I’m able to achieve all the goals I currently have for it. With that in mind, I’m really quite happy with some of the progress I’ve been able to make, and am truly keen to see where this leads! On that note, let’s cover some of the achievements over the past two months!

  • Text: Okay so this sounds like a small and almost negligible update, but hear me out! I’ve finally added a handful of text pop-up functions into the game! Everything from UI overlays to full dialogue boxes to even in-world text. There were a good range of things to cover for this as the uses are wide and dynamic (as you’ll see in a later point!), but ultimately this marks the beginning of the Story content! The goal here is to utilise these features not just for instruction and guidance, but also conversation and depth. As I’ve mentioned before, this simple game about rolling around contains way more lore and message than it should, and I am absolutely all for it~!
  • Triggers: Another seemingly simple one, and is a core aspect of many of the new features, but the game now has in-world triggers (and events)! So much of the game is automated, and for good reason as it takes place in a procedurally generated world so it needs to be able to run itself, but there are a lot of fine-touch concepts I’m starting to include in the game that need very specific instruction and occurrence, and that’s what this is for. Is it hyper-common feature in most-games? Yes, but that doesn’t make it any less of a fantastic achievement that it’s now up-and-running in-game!
  • Tutorial: FINALLY! It’s not quite done but it is REALLY close! The game now opens with a unique sequence and introduces the player to the gameplay through a carefully constructed and unique world. Currently the tutorial is being built for a demo-build, as the immediate goal is to have a game version I can just put into someone’s hands and let them enjoy it without my overseeing them. As such, it will definitely be going through an overhaul down the line to be updated with the next stage of content updates, but for now it is serving stunningly (and I am pretty heccin’ proud of it!).
    The other major function of the tutorial is to introduce the player to the Story aspects; through simple messages, visuals, collectibles, and even secrets, the depth of the game is slowly revealed to the player as they explore the starting world. All of this will connect to the actual collectible story and artworks the player uncovers as they play the main game. I will say; up until this point the game felt very arcade-y, and that isn’t to say it isn’t a coffee-break replayable arcade-y game because it very much is, but the depth of the world around that arcade game wasn’t there. However now, even in the tutorial’s simplest version, that world is not just visible, but presented to the player right from the get-go!
  • Pause Menu: This was another one of those “why is this very important feature missing?” kinda things~ You can now pause the game, quit, restart, continue, check your score, check the world’s seed, etc. Not much to discuss for this one actually, but it’s there now, finally! Yay!
  • Optimisation: Always gotta optimise! Although there are still some glaring issues to tackle (which will be addressed after the demo-build), the progress is absolutely present. While I was more focused on content production these past two months, I’ll still touch upon the important optimisation updates that I’ve made:
    • Animals: The Animals I introduced last time have been updated to be cleaner and further autonomous. This was to fix a few errors I discovered, but also to prepare them for some intended uses later down the line in regards to world generation.
    • Seed Generation: Some tweaks have been made to better produce and read cleaner seed values. Another tiny update but one that I think will contribute to an improved experience overall!
    • Particles: One of the things I mentioned last time was optimising the particle rendering. I’ve started experimenting with and implementing a few ideas to generally reduce the resources required to handle them, and I’ll be keeping an eye on both their performance as well as visual appeal while I work on the demo-build.
    • World: One area of improvement I discovered during the previous two months was the world objects, notably the collision objects that make-up the bulk of the labyrinth. I’ve long known the curvature and sizing of some elements were not exactly quite right, but their margin of error was generally so low that it was always a “fix it later” kind-of problem. Well, this month was later! I’ve redrawn most of the wall visuals, as well as also gone over the vast majority of collision data one-at-a-time to optimise the originally automated collision values, and replaced them with much more carefully planned colliders. The engine’s default collider components like to think they’re automatically setting up a very detailed map for you, but in reality, and even truer for a simple mobile game, most of the objects only need a handful of points to determine the space they occupy in the world. Not only that, but I’ve ensured these points are uniform across all the objects, so objects with the same edges or angles also contain the same values. This was really just a LOT of drawing vectors followed by a LOT of data entry, but it had to be done, and it feels a lot cleaner now.
    • Scripts: I’ve said it before, but script optimisation is on-going. Now, being completely honest, I am not the world greatest programmer (shocking, I know!), however I am a more experienced one than I used to be! I’ve been compiling a list of scripts that need to be reworked, and have also actually been reworking them, to better ensure they are following standards implemented across the rest of the game, while also optimising their resource demand. Simple stuff like limiting call frequency, simplifying variables and references, and correctly handling game objects. All-in-all, the game just feels a little nicer, at least to me~

Honestly, there were many more updates, but some are on-going while others are secret, at least for now~ As such, I’m going to wrap this update here! I’m looking forward to being able to provide some more amazing updates for you in the new year, and even releasing this game for everyone to play! I’ve got so much planned not just for this project, but the future as well! I hope everyone had a fantastic and safe year, I hope everyone is doing wonderfully to support both one-another and yourselves, and till next time, all the best~!