In Octave Devlog #9 - And… TIME!


In Octave is released today!

It's finally available for you to play. Right for the start of SGDQ! Ironically, it's my first speed-runnable game. Was this intentional? Well, not at all. But let's pretend so.

You might have noticed that, last time, I announced that my next devlog would be the last before the release. Then I decided not to write it.

I literally had nothing else to say other than “I didn't had much time, so I could only do the sounds effects.”. So I was already planning another week of work before finishing the game.

And then I realized that there was really not much left to do, and even better, that it was easier than what I expected!

The greatest surprise was the implementation of scaling. I developed the game with a fixed resolution of 800x800. There was two issues with that: first, most web games a at most 600px high. Second, if I want the game to play in full screen (which would be nice), I needed to adapt it. My problem was: every dimensions and paces I programmed were bound to that resolution. Should I program a whole scaling system so that the game's sprites update themselves every time the window size change?

Fortunately, Phaser has already something for that:

this.game.scale.scaleMode = Phaser.ScaleManager.SHOW_ALL;

And that's it! I really didn't expect it to work that easily. There was a little trap around the keyboard focus when the game goes fullscreen on itch.io, but it was easily fixed by setting the focus manually.

My second fear was browser compatibility. Yes, it's a web game! Which means this is going to be a mess. And… Well, honestly, it kind of is.

  • On Firefox, the game runs well, with some slow down though. Although for some reason, on Firefox Linux, the controller keys are not correct (there is a fix just for that).
  • On Chrome, it's fine too, but the game runs less smoothly
  • On IE 11, it simply doesn't launch. Not even the loading screen! The error is unfortunately not explicit enough.
  • It doesn't work in the itch app either! It crashes when doing a gradient, because the browser does'nt consider "rgb(X, X, X, X)" to be a color. This is kind of a bummer, because it's just standard js here. Plus, I kinda like the itch app! I really wanted my game to be playable on that.
  • The game works on Vivaldi, but is incredibly slow. Such as every web games on that browser. This is the reason why I don't use it anymore.

So here we are: Firefox and Chrome… Well, nothing new I guess. I couldn't try it on Edge or Safari. If some of you can give feed-back on that subject, I would be really glad!

Another big issue that I've already mention: the game doesn't have a constant framerate! It's smooth at first, but depending on the machine and the browser, it can quickly get slower on the last levels. This is mostly because of the gradients, an issue I already have mentioned. Even with the improvement I made, it still consumes memory. I have not found a satisfying solution for that. I want the background to stay as they are, because I really love that look! But finding some ways to pre-calculate the gradient, or cheat a little with them, would mean re-writing a big part of my engine… And I don't think it's worth it. This is a little game, and it kind of exceeded its expiration date for me: I learned what I wanted to learn, experimented with it, now I just want to work on something else. So… I guess it will stays poorly optimized?

Yeah, that part is definitely a failure. Optimization is still not my forte.

On the other hand, I'm really happy with how this turned out, especially esthetically! Not only the procedural music is nice, but I think I also achieved something great with the minimalist visuals! I also might use Tone.JS and Phaser for future projects (with less radial gradients this time).

I hope you found this devlog interesting, and that you will have fun with In Octave! As for myself, I will spend the next week watching speed-runners playing games for charity. See you this summer for my next project!

Files

in-octave.1.0.3.zip 68 MB
Jun 24, 2018

Get In Octave

Leave a comment

Log in with itch.io to leave a comment.