After having failed to submit Thunderbolts and Lightning on LD39 because of some vast miscalculations about the scope of the entry, I was determined to submit this time at all costs. I was relatively happy with it even if, as always, there is a lot of room for improvement.
Here is the link to Mountain Diver’s page on the LD site. Please play it and rate it :grinning:

Tech/Tools
- Unity 2017, plus the free DOTween plugin for interpolation.
- Aseprite, with Photoshop CS6 for additional processing.
- Recordr, Jfxr and Audacity for audio.
- To track tasks I used Trello. Below is a screenshot of my board by the time I submitted:

Process
I learned about the theme at around 6 or 7. After a couple more hours of sleep, I went outside to have breakfast and do some brainstorming. This time I thought the theme was pretty good and it could spawn lots of different ideas, so it didn’t take me long to start coming up with concepts. You can check the notes in the following video:
https://youtu.be/DnKnW5opwVU
Of all those, two started to take shape relatively soon:
* The first one was inspired by a verbal blunder of Spain’s PM (he’s mastered those f*ck ups into an art to the point there’s even a Monkey Island-inspired parody game).
https://www.youtube.com/watch?v=TGGtSHtaEfI
This stuck with me the whole morning the way bad songs do. Eventually it evolved into a full “corruption simulator” game idea, where your goal would be to arrange contracts with corporations in exchange for commissions. Those could be used to finance your party, bribe the press or enrich yourself, but if you were too greedy you would attract the attention of the anti corruption brigades, exposing yourself to jail and electoral defeat. The last notes on the video reflect how I had started to approach this.
While I liked the concept the more that I developed it the less convinced I was about it. I also feared that it would be too local and some jokes (read: envelopes) would be missed by a non-Spanish audience.
- The second was a bit more personal. It revolved around how as time passes and you keep accumulating fears and doubts the harder it gets to speak up your mind, share your true feelings, or simply take action. I was thinking of some linear action-RPG game with some choices. However, every time until now I've tried to translate more intimate stuff into a game I just go blank trying to bridge the gap between the “plot” and the core mechanic (a perfect example of the point I wanted to make, on the other hand). Also, this was likely to have gone out of scope easily.
Time was passing while I kept trying to decide what to do, falling into yet another one of the concepts I’d sketched: Analysis paralysis. I had been thinking of so many different things that I couldn't pick one. Eventually the free-fall / climb mechanic that would become Mountain Diver came to mind. In comparison it was way simpler than the other two (which was good scope-wise), and it just sort of felt right. The winter mountain setting would come naturally some hours after that.
As soon as I had the idea proper development started I started focusing on the player movement and the camera. I’ll deal with these on the next sections, this has already become too long.
What went well:
The scope was very scalable. Even if I missed key features such as multiple levels or even level generation, the core gameplay was simple enough and is solid.
Change in mechanics. Originally I had added an energy attribute that would be depleted during the climbing stage. Picking crystals would increase the depletion rate, effectively making the game harder. I’d also considered encumbrance, impairing jumps, but At some point I just ditched the energy and went on to experiment with the crystals <=> platforms idea. Now I believe it was the right choice.
The theme connection was still there and it laid the ground for some more interesting choices (“Shall I pick this or that? will it be too hard for me to jump then? If I don’t, will I still be able to pick the required ones even if I need to use the boost?”) I had to make some adjustments so players that had failed at the diving stage could still have a chance at beating the level and, while that part wasn’t fully balanced, I also think it played the part nicely (even if the boost was buggy)
Camera not too clunky. Together with the controls this was one of my main concerns and I’m more or less happy with how the camera works (although it’s by no means perfect). I’d been following an awesome study I found some time ago about 2D cameras and chose some classic target tracking, smoothed with interpolation, plus edge snapping and, on the second part of the game, platform snapping.
Sound. Just two hours before the deadline I decided to try to put some sounds. I didn’t want to just use 100% generated effects and I thought it would be a good fit to have at least some wind blowing (at that point I didn’t have the snow particles either) and some basic sounds for user feedback, so I downloaded a recording app and started to blow at the phone.
Relatively comfortable development pacing. I did iterate quite a bit with controls, the camera and even the main mechanic, but at no point did I get the impression of being stuck or sluggish.
No tech issues. For LD39 I’d switched from Unity 5.5 to Unity 2017.1, and it was a bit unstable, with lots of crashes over the 3 days (I was never sure if that was Unity’s fault, that I’d enabled the experimental new .NET support or perhaps Touchscript not being fully compatible). This time it all worked flawlessly.
What went wrong:
Belated start. By the time I finally committed to the dive/climb idea it was past 17h. I don’t generally start coding before lunch, but still I wasted a couple of hours sketching things for the corruption idea or just deciding.
The most important thing to me: Glitchy controls, and slippery horizontal motion. I was using acceleration-based calculations for movement, and even if I’d added some drag it still felt too hard for everyone who tested it.
I still feel the sting of guilt when someone tells me “I’ve tried your game, but I’m so bad at it”. I could just cheat and say "oh yeah, it's intended to be hard", or "well, you're on the snow, so of course you'll slip", but I'd be lying. It was broken all along :flushed:.
For example, a stupid mistake I made was not paying attention to the differences in input devices. The game was slightly less slippery on a gamepad, and I didn't realise that on a keyboard (which was what most people were using) the amount of horizontal impulse was just 0 or 1 (on the gamepad you'd get a broader range), making it less permissive. In the end I removed acceleration, and it seems to be better now.
Additionally, the boost skill is mapped to a separate input than the jump. I’d tried to have both on the same button, but given the way the jump works it didn’t feel right, so I added a separate button to control the boost's charge and release. Still, it was quite buggy and had to patch it too. I’m tempted to revisit all that logic and try to combine them again now to see how it works.
No proper character art. I ran out of time to create some decent sprite for the main character and animations, and the placeholder I’d created to sketch how it would look like made it into the final build. I like the design, but it wasn’t final by any means.
Insufficient feedback. It takes a while for most people to realise about the catch of the game. While I wanted players to discover it by themselves and potentially keep playing the level to improve their score, I think I could have added some in-game hints to communicate it beter. For exampe, I had in mind camera changes (travellings, increasing the distance so there was more visible space and could anticipate better, or maybe some visual cues).
Timed out. Nothing new here. Just look at the Trello screenshot from before :sweat_smile:
Recap
Despite the initial frustration at deciding the game I wanted to make and the issues with controls I really enjoyed making Mountain Diver. As always, I’d like to keep improving it a bit, but, also as always, I can’t predict if I’ll stick to it for long.
Thank you for reading up to this part, and if you try the game I hope you enjoy it!
