At the beginning of January, we released our demo on Steam! Overall, it was a successful launch and we are excited that so many people were able to checkout The Violets of Amicus™ for the first time! Reception has gone over well, with all recommendations at the current time of this writing on Steam. We appreciate each and everyone playing our demo. If you haven’t got a chance yet to play the demo, or review the demo, please do so here. It helps boost our game so that other people will see it!
During this past month, things have been a bit slower, comparatively to the craziness of December! That doesn’t mean we haven’t been busy though as we have been hard at work marketing and preparing for our Kickstarter launch. As mentioned in our previous post, we are a week out from launching our Kickstarter campaign! If you haven’t clicked the “Notify me on launch” button, please do so! Again, it helps boost our project so that other people will see it.
Now, onto the updates!
Art
Tony has been currently finishing a few animations that were low priority for the demo, that didn’t quite get in at launch. These were some breaking animations; a bear statue and sawmill junk:


We also began work on the big bad Centaur! We showcased the stand frames last month. Currently, we have been working on the walk and canter animations:




We are hoping to get these into the demo before the launch of our Kickstarter.
Speedrun and Commentary
A couple of weeks ago, I (Dan) decided to try doing a speedrun of our demo. I test the game a lot and decided to give myself a challenge (as well as try to uncover any bugs). The current world record is 25:08. This is a pretty steep challenge, but I am already aware of about 3 minutes that could be shaved off from optimization.
We didn’t want that video / challenge to go to waste, so about a week ago, Tony and I decided to do some commentary about the development on Violet while the speedrun was playing in the background. You can watch that video here: https://youtu.be/-pZi7ifh7T4
Streamers and Youtube Video Highlights
We had a streamer, Bashfulday, scheduled to play our demo the day after release day. It was a lot of fun watching her play the demo. We can watch this stream here (Content Warning: there is some language in this): https://youtu.be/3sQ-rEMenOo
Meanwhile, we also found three Youtubers who played our demo — one which we presume is from Italy! It’s been exciting to see people play through our game. We can watch these videos below (Content Warning: there is some language in these):
Matt Plays Indies https://youtu.be/QEPwa71Pgm8
GogetaSuperx https://youtu.be/H4mDTa5dbCk
Sid Ruxell Gaming https://youtu.be/FcMrrkmo4pE
Updates from Gameplay Observations
Now that the demo is out there in the wild, and we have gameplay footage out there for all to see (including us), we are able to watch these playthroughs and make any adjustments / tweaks. For example, we found a common issue of people not realizing that the West Gate is the way out of Jasper (Castle Town). This can be observed in Matt Plays Indies’ video above. Therefore, we made a few adjustments, to help the pacing and get people playing “the action parts” of the game:
- Make the Fortune Teller Open 24/7 – Luckily, people who were getting stuck did find the fortune teller, and she explained where to go next. However, her shop wasn’t always open. Therefore, we kept it always open.
- Make the West Gate more Obvious by Adding a Sign and NPC – We noticed in a few playthroughs that people tend to through the South Gate of Jasper. Therefore, we put a sign out there explaining that the path is blocked off and only the West Gate is available. We also put an NPC outside of the North and East Gate, explaining the same thing.
- Make Picking Up Weapon Scraps not go to Assets Inventory – This actually came directly from a review on our Steam page! Essentially, when picking up a weapon scrap, while picking up dropped weapons, pressing
start
would take the player to the assets inventory page. Most cases, the player actually wants to go to the inventory of the weapons they are picking up. A easy one-line code change to make player-experience all the better! - Auto Save Loads at the Hospital – Because saving / loading was a last minute feature, we weren’t able to thoroughly implement how it will be in the real game. This lead to people getting put in positions upon loading that would cause them to softlock. Therefore, loading will always take you to the hospital.
There were several other clean up and fixes around this, but these were the highlights!
Music Updates
Eugene has been cranking out tunes left and right! Below are two snippets, the first is the Enemy Variation of the Forest Town (which is already in the demo now) and the second is the Forest Temple Theme, which we plan to add to the demo before the launch of the Kickstarter:
Other Notable Updates
Game Maker Updates
We have been on the February 2024 build of Game Maker. As mentioned in previous posts, Game Maker kept introducing bugs that were preventing us from upgrading. With the launch of our demo approaching, we decided to stay on that version.
With the “downtime”, we decided to finally upgrade to Game Maker 2024.11
, the latest version at the time of this writing. The 2024.8
version was actually already tested, except one bug that wasn’t fixed. Therefore, this was a quick turnaround to fix. However, in updating to 2024.11
, we found a couple of issues:
- Game Maker decided that methods should use
self
(this
equivalent for other programming languages) explicitly instead of implicitly. I’m still unsure why, but it’s resolved now. - There actually was a bug introduced in
2024.8
with collisions that we didn’t noticed until we had already started upgrading to2024.11
. This had to do with ourrampTileCellData
system, and how the game knows whichlayerDepth
an instance should be in. It was essentially and order-of-operations issue, that we resolved by adding a simple conditional. - We also fixed two of our own bugs while refactoring / cleaning up:
- When quitting to the title screen, there was an issue with the way we went about cleaning up our instances under certain circumstances with enemies. We thought it was something to do with the
collision_rectangle_list
function (as seen here), but it turns out it was because one of our gates was not working as intended. - We’ve had a major issue where instances would activate in the background and therefore either be in places where they weren’t supposed to, or disappear when they weren’t supposed to. We ended up overhauling major parts of this system, and even optimized unloading to be 3 times faster. We believe we have squashed this bug, but time will tell!
- When quitting to the title screen, there was an issue with the way we went about cleaning up our instances under certain circumstances with enemies. We thought it was something to do with the
Ubuntu Builds
We attempted to add native Linux support, as well as native Steam Deck support. However, our findings were that Linux builds were about 33% slower than what the game ought to be running at. In regards to the Steam Deck, we found that the Proton experience was much more performant than native Linux builds. Right now Game Maker’s Linux tools are still in beta and just aren’t quite ready for production. Because Linux is the default for the Steam Deck, and these performance issues hinder player experience, we decided to remove Linux support at this time. More information can be found here.
AStar Extension Updates
As you may recall, we rolled out our own pathfinding extension, as we wanted to perform these calculations on a different thread. We’ve been encountering some silent crashes, where the game would crash without an error report. These are the worst kind of bugs, because it doesn’t give us any insight on what happened. Well, we figured out a way to gather that intel, and we determined that, at least one of the silent crashes, was caused from a race condition in unallocating an AStar instance while another thread was using it. This has been patched and fixed.
While we were looking into Ubuntu builds, we also were able to create an AStar extension that would be compatible with Linux builds.
Conclusion
Please share our Kickstarter page with anybody who would be interested! We appreciate you reading and keeping up-to-date with the development. Be sure to follow the socials and stay tuned for the launch of our Kickstarter campaign!