Hey everyone,
I know its been a whileabout three months since my last updateand I want to kick things off by saying Im really sorry for the silence and for taking the Dross demo offline. I didnt plan for it to be down this long, and I feel bad about leaving you all hanging. Your patience means a ton to me, and Ive been working my butt off behind the scenes to make this game better than ever. Sometimes that means stepping back to rip things apart and rebuild them right.
Whats Been Happening?
So, whats been keeping me busy? Well, Ive been tearing into just about every system in DROSS to fix, refactor, and optimize it. The demo being offline wasnt the goal, but its given me the space to do some heavy-duty upgrades.
Heres the rundown of the big stuff:
Player Movement and Actions:
Ive totally redone how you move and interact with the world. It used to feel a bit clunky, but now its smoother and more responsive. Whether youre dodging or swinging, it should feel natural and fun.
Script Optimization:
Before, I had these massive scripts trying to do everything at oncelike a jack-of-all-trades mess. For example, every weapon had its own code for bullet trails, holes, and damage calculations, which led to bugs and inconsistencies. Ive split those up into smaller, focused scripts and built a central Weapon Manager to handle it all.
Now, everything runs through one system. If it works there, it works everywhere. Less places for me to screw up. no more weird glitches where one gun behaves differently from another.
Object Pooling:
Early on, I was creating and destroying stuff like bullet holes, trails, ammo casings, and even enemies every time they were created or destroyed. It got the job done when starting, but it tanked performance, especially when things got chaotic.
Ive switched to pooling with an object Pool Manager. Now these objects get reused instead of trashed. Its a huge boost for optimizationyoull notice the game running way smoother.
Enemy Behavior:
Enemies got a big upgrade too. Ive moved them to behaviour trees, which let them act smarter and more varied without choking the system. Plus, Im using behaviour inheritance that are shared across enemy types, keeping the code clean and efficient as possible. Theyll do cooler stuff now, and it wont slow things down. Heres an enemy behaviour that I have created, and took quite a while to do so. Enemies will face the player. And move closer and farther away before they are ready to attack. Moving away from the the player, essentially walking backwards still keeps the big facing the player. However, the walk animation plays in reverse. This is a huge improvement over turning around to move back, and then resuming facing the player. This is very cool in large numbers, as the enemies circle the player.
Culling Manager:
This is a amazing new tool Ive added.
The Culling Manager determines and stores where the player is. And figures out what needs to be active based on that. Enemies dont check if they can see you unless youre in their chunk of the level, and room art only turns on when youre nearby.
It also controls animations: enemies far off play at roughly 10 frames per second, saving resources without you noticing a difference up close.
No more pointless distance checks: the players location is saved. And only changes when the player is exiting its current chuck and entering another. Its all handled by the levels chunk system. And not having individual enemies measure their distances to closest player saves a tonne of resources.
Unity 6 GPU Graphics Drawer:
Heres some new tech stuff with the release of Unity 6, i now can use Unitys new GPU features for rendering. Instead of each enemy being a heavy skinned mesh renderer, theyre now built from meshes that can be batched together. This slashes draw calls, letting me throw way more enemies on screen at once without lag. Picture bigger, crazier fights that still run like butter.
The long wait to .8.2:
I know Ive been super quiet, and I shouldve been more upfront about whats been going on. Its tough to admit when things are harder or slower than I expectedI thought Id have this wrapped up way sooner.
Taking the demo offline wasnt my first choice, but it had far too many issues. I wasnt happy with it. And it wasnt giving the impression I wanted.
Im pouring everything Ive got into these changes to make DROSS worth the wait. Im doing my best, and Im sorry for not keeping everyone in the loop better.
So Whats Next?
Right now, Im pushing hard to finish these fixes and optimizations for version 0.8.2 of the demo. Its shaping up to be a massive leap forward in stability and performance, and I cant wait to get it back online for everyone to play. Im hoping soon is the wordIm not locking in a date yet, but Im close, and Ill keep you posted as I nail things down.
This update feels like a fresh start for DROSS, and Im stoked for everyone to dive in again.
Your supportwhether its feedback, encouragement, or just sticking aroundkeeps me going, and I cant thank you enough for that.
Look Forward to version 0.8.2:
Please keep an eye out for version 0.8.2its going to be good, and I hope youll love where DROSS is headed. If youre as excited as I am, maybe tell a friend about it or spread the word. Im not the best at shouting about my own stuff, but Id love for more people to check it out when its ready.
Big, big thank you to all of youtalk to you soon!
Cheers,
~SALT_
P.S. Ill aim to be better about updates from here on out. You deserve it!
[ 2025-03-14 17:00:46 CET ] [ Original post ]