Today is the day: Oddhop out NOW!

See what I just did there with the post title? I avoided starting the title with the word Oddhop! Had to break that particular pattern. ;) Anyway, this is just a quick announcement that the game is indeed out right now, so you should go and download it!

It's free on the Google Play Store (ad-supported, but don't worry — you can purchase the ads away) and $1.99/1,99€ on the App Store. BUT, if you act quick, you can get it on our celebratory launch sale for 50% off, so it's just $0.99! The launch sale ends in a week (May 20th to be exact), so now is definitely the best time to "hop" (pun intended) on board! :D

Download on the App Store Get It On Google Play

Personally this has been — once again — quite a journey, with a small-turned-out-to-be-not-small-at-all project so I am very glad to have the game out, finally. Hopefully the launch goes without fatal issues (wish us luck!). Also happy that I managed to ship a game while hooked on Dark Souls III:) Anyway, that is it for now. Enjoy the game, maybe even give us a rating on the stores and feel free to comment or even write a review!

Oddhop launches on May 12th!

Good news, everyone! I'm proud to announce that the puzzle game we've been working on for the past 2+ years is finally releasing! And quite soon, too: the Oddhop launch date is May 12th:)

We're launching on the App Store and the Google Play Store simultaneously. The game will be $1.99/1,99€ on iOS, and free (with ads) on Android. However, to celebrate the launch we will be putting the game on sale right off the bat! So for the first week after launch (up until May 20th) Oddhop is 50% off! No reason not to grab it, right? :D

Finally: here is the launch / gameplay trailer. Take it for a spin if you've got a spare minute, and do give the video a thumbs up if you enjoyed it and/or are looking forward to playing the game! Comments are also most welcome, as always. Thanks for the interest and enjoy the trailer! :)

Oddhop Visual History

When starting work on the original prototype that eventually became Oddhop, I thought it would be fun to collect some images along the way. And this is what I did — so here is a post showcasing various images from the old, ugly prototype to the now nearly finished (at least visually) game. :) Personally it is motivating to look upon these images, as the game looked like shit not too long ago, so some progress has definitely been made!

So let's take a look! You can click on the pictures for a bigger view. :)

Early prototype (the "Looks like shit!" period)

You know that period of time where you are afraid to show your prototype to anyone, because it looks so bad it might actually physically hurt some people? Yeah, this is that period. :P On the left above is a screenshot taken on 17th of February, 2014. It's from the very first prototype, back when we had square levels! Those creatures would all rotate around in unison, for no reason other than it looked funny. :D On the right is how the game looked with hexagonal levels (March 2014). I quickly realised I wanted to use hexagons, both for visual appeal and also for more varied gameplay (more movement directions). I had my first animated (test) creature made at that point.

More prototyping (a.k.a "Polishing the turd" period)

(Not that I'd show these to anyone, either. Except now I guess I did.) Here on the left we have a radial hexagonal level (November 2014). Switch from rectangular hex levels to radial was made purely out of aesthetic reasons. It just looks much better. :) Here you can also see the first iteration of the creature that ended up being blue in the final game.

On the middle is an early 3D background test (February 2015). Initially I had the idea to use lightmapped 3D scenery as the background. It would have allowed some nice things like different light maps for different times of day (it was simple to swap lightmaps in Unity 4.x, Enlighten[yuck!] in 5.x made that not-so-simple to pull off), and also opened up the possibility to use some premade assets (rocks, trees, etc.) without having to model everything myself. Those cliffs pictured are my own (quick test) models, though.

I played around with the 3D backgrounds for a while, including 2D trees on top of the scenery. It wasn't really working so I ditched the 3D stuff and went for image backgrounds. In retrospect it was a good decision even though it meant much more work! :) So, on the right there is an early version of the swamp background theme (June 2015).

Starting to look like something.. (Other than shit.)

On the left is some lighting color studies I made, when searching for a pleasant color scheme for the swamp (June 2015). (As a side note: I really want to work on a PC game in the future and use proper, dynamic color grading!) Note the flowers on the background, we took those out soon after this. In the middle image (July 2015) the lighting is starting to look like it's now. At this point there were still no other backgrounds done, only the swamp! :P I made the backgrounds in decreasing order of complexity: swamp first (it needed render textures and shaders for the water animation), then the lake (water shader), snow (snow flake particles) and finally the forest (nothing special). That also was a quite good decision, if I may say so myself. :)

As for the lake theme: for some time I was just using the swamp trees on a green background with a blue diamond slapped in the middle as a placeholder, it looked quite horrendous (as you can imagine) and Teemu (the game designer) hated it, so I finally started working on the proper lake. On the right is an early lake screenshot, shortly after that disgusting blue square. (August 2015).

..but still not quite there, yet..

Here's more progress on the lake theme (August 2015). In the middle there is a first 3D test of the new "revolving platform" gameplay mechanic, originally it was a 2D gear sprite (October 2015). And finally there is a random night-time shot, showing the old placeholder portal graphics (November 2015). It is the forest theme, but as you might notice I only have a placeholder background texture there and the trees are from the swamp! :)

And finally, here is a shot showing the work-in-progress version of our "portal" wells (December 2015)! That's it for now, I have some WIP UI stuff but that's not very interesting (I would think), so I guess this shall do the job. :) Let me know in the comments (or hit me up on Twitter) if you liked/hated this post!

Oddhop Status Update #3


Phew! I barely made this third monthly update in time! I don't have a new screenshot to show this time, but wanted to show the new MHGames logo I made a while back. The old one was quite badly dated and needed some refreshment, I made something simpler and cleaner looking. :)

We've been expanding our closed Alpha-group quite a lot on both Android and iOS (if you want to try the game, drop me a note!). The initial feedback has been great, even though not many people have finished the game, so we haven't really received any definitive data on the difficulty level of the game. If you're part of the testing group, reading this and feeling a stab in your heart, you need to play more! ;) Okay I'm (partly) kidding, of course. :D

Speaking of difficulty level: we developed a gut feeling that the Water-levels were actually easier than the Swamp-levels, so we've switched things around: Water-level pack is now II, and the Swamp is III. Not that they need to be exactly in difficulty order (as that varies per person), but I think they're better this way.

Oddhop TODO-list, March 2016

Again, in no particular order, here are the things still need to be done. I added couple of things that I had forgotton earlier.

  • Sounds & Music: Not much progress with sounds, I added a couple of effects but we're still missing some. The ambient background soundscapes are still missing, as is the theme song. But we are currently working with a composer so hopefully we'll get the music sooner than later!
  • Polish and more polish! See, I removed one instance of "polish" from the list? :) In other words I have been doing missing menu animations, added some campfires to the night levels (for added variety to the existing torches). The biggest polish thing I did was adding dynamic eye movements to the creatures. They now look at various things in the playfield and react to gameplay events. That worked quite well IMHO, added lots of life to the creatures! Definitely was worth spending one Friday-afternoon on!
  • Further testing: With the latest Alpha build I pushed today, I made an experiment and switched to using IL2CPP scripting backend on Android (like already on iOS) instead of using Mono. This approach has both pros and cons, so I'm keeping an eye on this and decide whether the time is right to actually release the game with IL2CPP or not.
  • Promo stuff: I need to take up-to-date screenshots for both App Store and Play Store, which is going to be painful especially with App Store requiring screenshots for various screen sizes.. I've already done some of that work for the Alpha, but I think I need to retake most (if not all) of them. :(
  • Launch trailer: This is obviously also promo stuff, but I separated it since it's quite a biggie! Still not sure how I'm going to do the trailer. Clearly the approach I used for the teaser is not good, too much cropping needed which results in mushy looking video. I'm probably going to render the trailer in-engine, so I don't have to learn how to use any professional video editing software! :D

Not going to do a full list on things I have done since the last update, but here is a brief summary. I've done the social gaming integrations (meaning achievements, leaderboards on both platforms), statistics are now gathered, did the above mentioned eye movements for polish, and our sole In-App-Purchase (ad-removal on Android) works. I've also cleaned up and optimized the code, getting rid of the old and nasty prototype parts. So yay me! Solid progress, even though I have been playing quite a bit of Earth Defense Force 4.1;)

See you in a month, maybe?

Oddhop Status Update #2

Oddhop gameplay (click for bigger!)

Well look at that, I made a second post in the series of Oddhop status updates, just like I sort-of-promised! :) For comparison, check out the earlier post here. But first some exciting news: currently Oddhop is about to start private Alpha-testing very soon! It is a small step for humanity, but a big one for us: before only a handful of folks have tried or even seen the game. :D

In addition to Alpha-testing, I set up a page for the game (Oddhop). Check it out for more information! I've also been preparing the Oddhop Press Kit, which will be posted soon. UPDATE: The Alpha-testing has begun, and the Press Kit is now available!

As customary, here's a brand new screenshot and then we'll dive right in just what the hell is going on with the game as of late!

Oddhop TODO-list, February 2016

Again, in no particular order, here are the things still need to be done. As you can see, the list is much shorter than it was last time! Personally I'm happy with the progress made in the last month, I've put in as much hours as I possibly could.

  • Sounds & Music: We've added quite a bit of sounds into the game, but many sounds are still missing and some are not final. Solid progress on this front, all in all. For music we're actually thinking of using just ambient soundscapes (think forest with birds chirping, wind blowing) for the ingame audio. A fun theme song that plays in the menus is needed still, we will be searching for a composer later.
  • Social stuff: Yes, these Google Play Games (Android) and Game Center (iOS) integrations (achievements, online high scores) are still missing, I'm only doing them at the very end. Check the previous post for details, if interested.
  • In-App-Purchases: We got only one IAP and it's the option to remove the ads for good. The ads are in but the IAP is not, yet.
  • Statistics screen: I'm already tracking total playtime across all levels, but we will add some simple stats just for fun, like number of creatures eaten and so forth. Simple stuff so no worries there. I decided it was not necessary for the first Alpha, so it was postponed. :)
  • Code cleanup, refactoring: Basically getting rid of any remaining prototype-quality code, there is still some nasty stuff left in there and I really don't want to be the one maintaining that for years to come! (But alas, I am.)
  • More testing!: We're currently in private Alpha for friends and family. A public Beta may start later, so do keep an eye out for beta access later on if you want to help! :)
  • Polish, polish and more polish!


Here's a reminder what was in my TODO list before, and now is looong gone! ;)

  • Analytics: I added some analytics that help us determine if there's need for level difficulty adjustments, average play times, etc.
  • Localization: I went ahead and did a quick and simple localization system, basically the same one as in Jewels 2. Texts and UI can now be localized into various (Western) languages. Player can switch the language at runtime and the UI updates accordingly. We probably ship with English and Finnish only, though.
  • Menus: I've done most of the menus, basically there's only statistics screen and stuff related to the social services (Google Play Games and Game Center) that are not yet done.
  • Final levels: Well, can't say the current level selection is final final, but it is what it is and hopefully with this alpha we can gather some feedback. Still have time to change levels, if needed. :)
  • Binary level package format
  • Player profile
  • Tutorial system: Tutorial tips work. I may add an animated hand/finger thingy at the very beginning of the game later, not sure yet.
  • Settings system
  • Creature Animations: Done, except I'll probably want to have an eye movement system where the creatures can look around and stare at things happening around them, but that's for the polish phase.
  • Ads: Since I've got a family to feed there are ads in the game (on Android), but don't worry, there will be an option to remove the ads with a single purchase!

That's it for the February update! See you possibly in March! :)