Subathon and Game Dev Updates!
Hi everyone!
Sorry for the delay with the next update post!Â
I am releasing this news post for FREE because I want to give back to the community. For the people subscribed here, you will be getting a post at the end of the month with some updates on some of the existing members-only tools for SAMMI, and potentially more (if I have the time, this month is surprisingly very busy!)
The subathon was a huge success but also very, very exhausting and I needed some time to rest, especially to let my foot heal since I wrecked my achilles tendon before the subathon and it's been rough!
Subathon:
Thank you so, so much to everyone who contributed to this. We raised a lot of money which went to immediately paying off my remaining student loans, which is a huge relief since they were forcing me to continue paying $500 a month into them, which I expected I'd be able to pause when I quit my job, but the application to put them on hold temporarily was denied so this was eating my savings quick.
I will continue to deliver all the incentives to everyone who earned them, as well as plan out the special streams over January since we have a frontpage stream on Friday the 20th and other events, plus I'll be taking some days off to spend with family for Christmas.
Again, thank you, so, so very much. You've all made my dreams come true with being able to work on my game full time, make content, stream on Twitch, and more. It's been so much better for my mental health (and I'm trying to get my physical health in order, the foot injury was an accident!), and you have no idea how much you've all helped me and changed my life significantly for the better.
Game Dev:
My projectile system was a mess. It was using physics and colliders for hit detection, and when looking to improve this so it wouldn't drop frames when 100+ projectiles were fired, I found out about the ECS system. Now, trying to get this working I spent a few weeks learning this, but, unfortunately, I was not able to successfully get it running and it was causing a lot of work to stall and no progress. The documentation is lacking in areas, not correct in others (because massive system changes), and just not reliable in general to figure things out. So I scrapped this and went back to my old system.
Instead of collision for hit detection, I swapped my system so projectiles use ray casting instead (like a laser pointer basically) and are managed in batches for updates instead of checking every single frame if they hit or not. This still looks very fast and accurate, so I'm happy with the result, and now I can fire much more projectiles at a time.
To test this, I added a new fun function that weapons can choose - Rapid Fire:
This allows me to make it so weapons can fire rapidly at enemies and set how fast they should fire or not, leading to more dynamic weapons and how they can be configured and set up when the player receives a new one or upgrades existing weapons to synergize with their selected abilities. I still need to flesh out the upgrade system with more stuff, such as adding chain lightning to projectiles, poison damage, and more, but we'll get to those once I finish the projectile system and reworking the pathfinding.
Here's an example of the rapid fire in action:
This has no performance drops and you can fire quite a few at once and have some neat effects!
Pathfinding:
I'm currently reworking the game's pathfinding system so enemies avoid obstacles and move towards the player. I recently made it so enemies cannot overlap anymore and push each other and can push the player and walking through a swarm of them is like wading through a bunch of enemies, reminiscent of trying to get through a horde of zombies in Left 4 Dead.
The problem is that the enemies now no longer no how to walk past obstacles optimially due to their new collision system. This causes them to get commonly stuck on corners or stuck slowly sliding against a wall trying to find a new path. Here's an example of this, it's.. not great.
To fix this, I'm purchasing something called A* Pathfinding Pro. I was trying to avoid buying this, but as I ramp up things in my game, it has a ton of features I need and that I'm not wanting to spend months learning to code myself, such as automatic navmesh generation (so if a door opens, enemies can path through it and know it's now possible to go that way, and more), more pathfinding threads, local avoidance (high performance, way to make enemies naturally avoid overlapping), and more. I can reuse this in other game projects as well, so I think it's a worthwhile investment.
Once I implement the new pathfinding system, I'll hopefully be able to move on to creating character classes, adding more weapons and upgrade types, and then getting around to implementing the actual planned art for the game!
Thank you again, everyone, for all of your support.