Howdy Unity3D community! My coworker/friend and I (we call ourselves Panic Vault) have been working diligently on our first Unity3D game for while now, and just released it. It’s a 2D mobile sidescroller that aims to be a quality, polished, enjoyable title with zero ads or popups. We’re so stoked to finally be 100% done, and the initial reviews coming in are looking great!
Links:
App Store: https://itunes.apple.com/us/app/dale-kepler-big-dipper-shipper/id1093142002
Play Store: https://play.google.com/store/apps/details?id=com.panicvault.dkbds
I’m very happy with how the trailer turned out:
A few stills:
What we learned
I really learned a lot doing this… I consider myself a decent developer, and consistently turn out stable code fairly quickly, but wow this process sure was intense. To be fair, I’m doing this in my spare time (I’ve got a full time security engineering career outside of this), but still - the amount of time needed for two developers to make all of this stuff from scratch was far more than we could predict, and this is just a “simple” sidescrolling 2D mobile game. We put a lot of time into the polish of boss fights, movement, shooting, etc, but when you compare it to games that the vets put out, it really both inspires and scares me to know how much talent, experience, time, and resources they needed to get to that point.
We’ve made a decent number of awesome game jam games, but making the game “work” is the easy part. The hard part was the 75% of polish, rebuild, testing, art-ing, sounds, meta (like capturing stills, trailer video, marketing, etc).
We also starting using an issue system (currently Redmine, soon to be JIRA), which sped things up a ton as it drastically reduced the number of hours spent “figuring out what to work on today”. I could just sit down, open my issue tracker, and get to work as soon as I got home from work each day.
What we built
In the process of creating the game, we spent a ton of time building tools to use in the future. We make this color palette swapping tool that lets you name sprite objects by the color you want them to be, and then create reusable serialized color pallets and swap them out on the fly. This let us make one monocolored sprite set and have unlimited color pallets to use. It also let us color everything in the game exactly one time, instead of managing colors in the PSDs (if you’re interesting in using it, let me know and I’ll opensource it!)
We also built this level creation tool (forked from the amazing Baste-RainGames/Node_Editor tool)
that lets us pick what spawns when in each level, adjust timing and powerup drops, etc. Originally, it was all random, but this let us eliminate awkward wave timing issues:
We also doubled the size of our Juice library: GitHub - James9074/Unity-Juice-UI: A juicy system for tweening Unity3D sprites, UI elements, colors, and more. Works for Unity 5.x and 2018.x/2019.x Please feel free to use and contribute to it! It comes with a bunch of neat effects like Typewriting text, material fading, bouncing, twisting, scaling, etc.
It lets you do things like tween (move) or fade UI elements or sprites with this simple line (it supports callbacks, too!):
- Juice.Instance.FadeGroup(myGroup, 0.5f, 0.0f);
I’m really looking forward to being done and moving onto VR games (our next project) though!
Progress screenshots, from start to finish
Here’s an example of the first build we ever had:
And the second version of the game:
And even on the third try it just wasn’t quite there yet. The UI was decent and matched our art, but felt kind of clunky, so we went simpler in the final build.
Check out our dev blog for a better look at the progress with far more screenshots
Thanks so much for taking the time to read all of this! It means a lot to us, we really just want to make neat games. I’ll be posting more info here as we release it, links to the store and some notes about our experience with the post launch cycle (bugs, issues, etc).
If you have any questions or comments, please do respond!




