Thank you! I responded to your comment on Twitter as well, but to anyone wondering: If you hold both [R] and [Space] on a save slot for five seconds, it will wipe it.
Auroriax (Tom H.)
Recent community posts
I was already keeping up a devlog on the forum when the devlog feature launched, so I had to post my updates to both to keep them consistent which was a hassle, so not having to duplicate things would be nice. It was a very major driver of traffic for me back then. I feel that https://itch.io/devlogs is very crowded, it is very hard for me as player to see things I'm interested in playing, so having an option to filter there might make discovery easier. More metadata might also be nice there, since each entry tells me about the contents of the devlog posts, but almost nothing about the game itself. I really like the pop-up that appears when you hover over a thumbnail on other parts of the site, and having that here would help me a lot to understand the context of the devlog update on the devlogs page of a game I don't know.
On the forum, I like that all recent update are all visible on a single page, it allows me to just scroll past things and just looking at all the images until I see something that interests me. On game pages, posts are only discerned by a title and how long ago they were posted, more metadata there might be nice, maybe even a "Show All Posts" option? A view of devlog posts on the main game page similar to https://itch.io/devlogs with displayed images and excerpt for each post might help devlog posts be a more visible and prominent part of the game page.
I also feel that posting a smaller update (like just a screenshot) on the forum is more acceptable than posting a small news item with the devlog feature, because it feels more like a "News" feature in which you always post significant amounts of text about game updates or something. On the forum you can have a more relaxed conversation around the game, and I don't feel bad about posting "Didn't work on the game much, but here's one cool GIF of something I did work on!" there, where as with the devlog feature everyone gets notifications putting more pressure on me to actually write something meaningful. But maybe that's just me.
Aah, that's a shame. I'm sorry, I'm going to look into it from my side. but it could take some time. One final thing I can think of is updating the controller's drivers, but I doubt that's it. If you really want to play with a controller, look into software that can convert controller inputs into keyboard presses. I'm really sorry I can't provide a better solution at the moment!
Strange, that's one of the controllers I've confirmed that should work. Some things I can think of that could be going wrong:
- Joystick support is turned off in the settings.
- Controller was plugged in after the game launched. If you want to confirm a controller was detected by the game, go to the "Joystick" option in the settings screen. If it's description displays question marks, the game isn't detecting your controller for some reason.
- Key maps aren't set correctly for some reason. If you press [F12] on the main menu you set the keybindings for the controller, or press [F12] again to reset it to default in case they did not initialize properly.
If those things don't help, would you mind providing more details? Does the game actually receive input from the controller, or doesn't it do anything at all?
Controller support only works in the Windows version, and I only tested it with USB controllers, so others could behave unpredictably. Sorry for the inconvenience! I'll look into updating the controller support for the next update.
I really like SetoKonowa's gigantic collection of games, updating constantly with interesting games.
I host a collection of games that I'd recommend to players from one of my own games, and I also host a general Recommendations collection with all kinds of story, puzzle, and otherwise interesting games. I also have two private wishlists, one for free and one for paid games. This way, I can build up a buffer of games to play, then dedicate an entire part of the day for binge-playing games with the itch desktop app.
Thanks for playing & recommending! Sadly, I don't think an extended edition or sequel is going to happen, as I really want to make a completely new game next. Thanks for the suggestion, though!
What's your screen's resolution? You could try setting screen scale to 1x or full screen in the settings menu of the desktop versions, or activate the fullscreen mode of your browser (press [F11] in Chrome or Firefox).
Seems the button mappings are not set correctly! I broke that in the latest update, oops. Try pressing [F12] two times on the title screen, this should reset the default keybindings until I fix it.
Edit: Should be fixed now. If it doesn't work yet, the aforementioned trick still works.
I don't own a mac OS device I need to make a mac version, but I'll try to lend one from my friends soon. It could take a while, though! Feel free to check out the browser version in the meantime.
Mobility, after two years of development has finally been released! You can get it here.
Luke Steinmann made some fantastic music for this game, and it even supports soundtrack switching! You can grab it on https://lukesteinmann.bandcamp.com/releases as a pay-what-you-want soundtrack.
Although I'm mostly done with the development of the game, if there's enough interest I'd like some help to translate the game into multiple languages. I will need to put in some effort to implement that into the game, and translate the game into Dutch myself, so I'll only do it if I can add at least two other new languages. I'm not sure if I can support non-latin languages or right-to-left ones, but I'll look into that if you email me. The story of the game has about 3300 words of text, and if you add all interface text, I predict the game has about 3800 words in English.
If you're interested in volunteering, write to with:
- Your motivation
- What language you want to translate the game in and your proficiency with that language
- If you know someone who is willing to double check & edit your translation
- And what kind of tools would be helpful for you to help streamline the translation process.
Mobility has some cheats! I've already given out some hints in some channels. There's one hidden in the trailer somewhere, and another in the release email I sent out. You can enter cheats by pressing [Tab] on the title screen, and then entering the code. A little sound will play if the code is accepted. Good luck with discovering the codes!
Mobility was my attempt to take an existing game genre and make it accessible to people who don't play those games a lot. Next time, I think I'll design a game for that audience right off the bat. I don't think I'll spend another two years making my next game, so I'll be making a lot of smaller and more experimental games from now on.
That said, I do think making Mobility was an excellent journey. It is my most polished game so far, has a complete original soundtrack, with the development process recorded in the devlog, and I met most of my goals I set for this project. One more goal I still need to achieve is to make the actual release of the game a success, so please help me by sharing the game with people who might be interested in it.
Thank you so much for reading, and enjoy the game!
Hey! You might've seen this game from time to time on the devlog subforum, but after two years of development, it's finally released!
I love precision platformers, but they've always been really difficult. Mobility is my attempt to make the genre more accessible, with different difficulty settings, accessibility options, and a browser version. (Die-hard fans, though, can also ignore all that and just play everything on the highest difficulty. Your choice!)
You can play or download it on https://auroriax.itch.io/mobility.
It's finally happening on the 17th this month!
You'll be able to play the game within a few days from the moment I'm writing this. I'm super glad to finally have finished the game, and can't wait to see your reactions!
If you want to help me to make the game a success, consider supporting my Daycause. If you join, you'll be able to compose a message that gets sent out on your social media the moment the game releases. If you'd like to help the game to gain some exposure, you can help me here!
I can confirm that it'll have Windows, Linux (Ubuntu) and Browser versions on day one. See you then!
I'm not putting the game behind a paywall to make it as accessible as possible. I am enabling pay-what-you-want, though, so players are still heavily encouraged to make a donation, because I put in a lot of work (most of my free time from the past two years) and would appreciate it if people sustained the effort. I'm looking into providing some kind of goodie for players that donate, but no details on that yet.
Here's one of the last devlog posts of the year, and—if all goes well—the last devlog before the game releases.
Some say that the last 10% of work on a project is actually another 90%. Another saying goes that a game is never finished, just in a good enough state to ship. Both of these are true for me on this project—as much as I've liked to work on Mobility, I'm glad to move onto something else after it is wrapped up, and improve my planning so it won't take two more years before you can play my next game.
Let's get to the good part, shall we?
At the very last moment, I'm creating some new levels to improve the variety a bit. Take a look:
I added a new difficulty setting called Growth. It's like Vanish, except the block will turn into a hazard after it has been stepped on. It will also slowly but surely grow in size—if you don't hurry, passage might be blocked off later.
I playtested the game previously with some players who thought Contact was too easy, but Vanish was a bit too hard in some cases, and wanted an in-between setting. Now Growth is the new extreme, and Vanish becomes the new in-between option. This might seem like a stupid solution that doesn't solve this particular issue, but don't forget everything is relative—the mere existence of Growth makes Vanish look less intimidating.
Currently I'm putting the final touches to the game's dialog. That means I'm doing spell check, trimming texts to remove unnecessary words, and changing word use in some places (I have a tendency to use words that are more fancy than is necessary).
Problem: The game's dialog is scattered all throughout the game code. If you want to change one character of dialog, you have find that, and to change another, go to a completely different place. So I made a sheet that contains all of the dialog. It took some time to find everything in the game code and paste that in there. But now, at least I can change stuff quickly.
But then how do you get that dialog back into the game? I based my method loosely as described in this Gamasutra article, and made a function that can export all strings as Game Maker code which I can paste into the project.
This had three big benefits: - I now know how many strings, words and characters the game contains, and judge how much work it would be to translate the game in another language. - I can use spellcheck to fix the last few typos that remain in the game's story dialog. (I found three of them, so it was totally worth it.) - All of the game's text is in one place that can easily be searched and then exported to a format the game can read.
And for the record: the story of Mobility has 3400 words, nearly 20000 characters, and consists of 57 individual conversations. And that's only all of the dialog, without counting all other text in the interface.
I'm also working on a game trailer for Mobility. More on that in the next devlog when I can actually show you the trailer, but here's my timeline for it so far.
Here's what I'm guessing will be one of the last devlogs before the game releases! I forgot if I wrote about this last time, but my goal is to finish the game by the end of the year, allowing me to polish and release it early next year.
So here's my progress!
The default resolution of Mobility used to be 512x384. That's a strange setting, and I'm not really sure why I originally chose it. I finally got around to changing it to 640 x 360.
This caused a bunch of issues-- for example, you could see some areas of the overworld rooms not being tiled because they weren't supposed to be seen before. UI elements that weren't anchored correctly were now misplaced, as well. Luckily, these problems were both quite easy to fix, and now, Mobility has pixel perfect scaling when set to full screen on a 1920x1080 monitor.
Especially very horizontal rooms like this one on the Starii now look quite nice.
The final boss
As I predicted, it took a long time to get this baby to work. But it's almost there. And I do think it was worth my time to build it.
The boss now has a shield, which can only be de-activated when the player activates all blocks. So now it's more like a normal, though slightly longer level, but this works pretty well.
I'm still putting in the final touches, but I'm really happy with it so far. While the boss is quite easy on some difficulty levels, I'm also considering building in a function to skip the boss for people who don't or can't deal with the boss, and allow them to see the ending as well.
Also check out the thunder effect on the boss shield and arena borders, which I'm generating entirely from code:
Something I've wanted to do for quite some time was to integrate OpenDyslexic as font for the dialog boxes in Mobility. I already had a system where you could set the dialog font, so I just had to download OpenDyslexic, install it, add the font in Game Maker, add it to my font selector, and list it in the credits. It was a really easy inclusion that I hope some players will benefit from.
This particular character will tell you about your statistics at the end of the game. I'm super interested in seeing what kind of stats people get at the end of the game!
I'm currently working on my very final task list with features that will need to be in at the release of the game. Huge remaining tasks are programming in the game's ending, finishing the final boss, adding a save system, polishing the game, bug testing, and making a trailer for the game's release. I've decided not to do leaderboards at the moment, since it would take me a lot more time to ensure these work and replays can also be uploaded and played back. Let's see if I can get most of that done by the end of the year. Thanks for reading!
A lot of things have happened since I wrote last month, so lets get to it!
New promotional art
So I've been working on some banner art and some other goodies. I already uploaded it to most portals I'm hosting the devlog on, so you might've already seen it.
This uses an isometric style that I really like using, and neatly fits the overall very minimalist style of the game. I'm also preparing this artwork, which is the sprite of the main character using other sprites as building blocks:
I had two more people playtest Mobility in the meanwhile. I had them play through the entirety of the game, with exception of the final boss (who was not finished yet). The results were very interesting.
One of the things I spotted was that nobody used the backflip, a move in the game that allows you to do a higher jump by jumping while crouching and standing still. Reasons for this are that the move is never explained in the game, and is also never really necessary to complete levels, unlike the long jump for example. This is why I decided to remove the backflip from the game completely. A bit harsh, perhaps, but I was thinking for longer about doing this, and from what I've seen, nobody is bothered by the lack of the move. I still need to adjust some levels slightly to compensate, but overall this removal has a positive impact on gameplay.
Another change that I was experimenting with was a progress bar. It fills up for every block you activate, and is full when the level is completed. It didn't really work in that state since, once again, nobody noticed its existence. So I changed my approach slightly: when you've almost activated all blocks, a little text pops out of them saying '3 more!', indicating the amount of platforms yet to activate. I haven't tested it yet, but I feel it works pretty well so far. This also avoids the scenario where the players has completed the level, but has skipped some blocks by accident, and this new feature will alert them in time.
Some people even thought the game was too easy, and I'm experimenting with a new difficulty mode specially for them. It is currently named 'Growth', and is simillar to Vanish, except once the blocks disappear after being activated, they turn into slowly growing spikes. Not really sure if I want to have this in the final game yet, but it is already pretty frantic and could be a nice 'secret' mode.
There where other items as well, but these were mostly just small topics. Playtesting can be super interesting, and the only way to discover problems like these. I'm currently preparing a post about playtesting for beginners on my blog, so please look forward to that!
Mobility has had support for multiple playable characters for a very long time, but has always been an afterthought. I want to keep the game as accessible as possible, so you don't have to complete every level in the game to be able to reach the ending. Nonetheless, a lot of players still do this, but weren't really rewarded for it-- which is where I'm re-introducing the playable characters as unlockables.
The Scarf Cat and toast character I introduced in last month's post
are unlockable, the other two characters will be implemented later.
Characters will not differ gameplay-wise, because that's too much
trouble for me to implement.
Final boss upgrade
For the first time in quite a while, I've made some progress on the final boss! Under more, the aiming bugs are fixed, and I'm building a new arena to do battle in. The current arena is kind of empty and pretty dull, but I'm thinking of keeping it as the intro of the boss fight to help teach the mechanics.
The room is now a tighter space, and there are normal blocks in the middle. I'm thinking of giving the boss a spike shield, which the players can disarm by activating all blocks. I'll also add some new attacks to replace the flailing arm one in this level.
After the final boss is finished, I'll start polishing it until about the end of the year. I'm not sure if the game will release this year (a December launch period will be very risky, even for a free game-- I'd rather wait until Jan or Feb), but at the very least I'll attempt to finish it this year. Thanks for reading!
Another Mobility devlog is here!
Wrapping up the story
This chapter has some spoilers for the game's ending.
An state-of-the-art story was not my goal for Mobility-- as long as the motivation to continue playing is there, and the gameplay metaphors are decent, it is sufficient. (I'd really to dive deeper into story on a future project, though!)
One thing that did bother me was that that most of my games ended rather suddenly or in an anti-climax. That's one of the reasons I'm building a final boss for this game-- to help round the game off better. But there needs to be a bit of story behind that boss as well, as well as the ending of the story once it is defeated.
Introducing Star Fix. This company directly competes with the Mobility, while also sabotaging all of the spaceships you were sent out to fix! In the final chapter, the Star Fix CEO kidnaps the crew of your home base, and you need to go to the Star Fix Headquarters to save them.
The demolished home base, The Beginning, after the attack
On the headquarters, the goal is not to repair the ship, but to
sabotage it to gain access to the boss chamber. While the gameplay is
the same, platforms will start off in their black 'activated' state and
deactivate when hit, which I thought was a nice detail. Doing so will
give the player access to the center of the ship where the CEO is
The door for the final boss room has a fancy animation to help build up the climax a bit.
But then, how does the story end after the boss fight? I had already written up some diary entries the CEO is supposed to have written, and scattered then around the headquarters. In them, the CEO describes that the sabotage plan was actually an attempt to increase profits, but in the further stages of the plan it seems that Star Fix is actually nearing bankruptcy. Once you enter the boss room and enter dialog with the CEO, he just got word of the bankruptcy, and decides to direct his anger towards you.
I'm currently writing an happy ending for the story. It would seem too easy (for me, as a story writer) to have the main character pull out some fists and punch the boss through the window into space, but that would be much to cheap, and contrasts the rest of the story too much. Instead, I'm considering having the boss tell a little bit about how he became head of the organization, and then rebuild Star Fix to cooperate with the Mobility instead of working against it, which seems like a fitting ending.
I'm still decorating the final spaceship, but I've gotten these fancy bubbles to work.
One final note: did you notice you'll get to fight an actual *company* boss in this game! A fitting last joke for a game filled with silly NPC humor and dodgy use of Latin for level names.
Man, I discovered quite some bugs the past week.. Most of these were game-breaking, even! I'm not going to explain how I fixed them (my code's a bit too messy for that, sadly), but you might find it interesting regardless.
First off, if you finished the level and got hit by a spike on the same frame, the game would count it as a victory and record your high score, but would reset the level instead of showing the replay. Another one I found was that you could still jump when you get hit by a spike. Normally, the game transports you back to the last checkpoint in just a few frames, but the jump sound effect would still play, making it awkward. There even was a crashing bug! This had to do with the replay array not being correctly initialized upon level load, causing the first frame of the replay to be missing when it was played, causing the game to break down.
Another really weird one caused all grind rails to count as activated platform every minute or so when the level was played on the Vanish difficulty, causing you to either finish the level within three seconds, or being unable to finish it at all, even after activating all blocks. Even better, this bug could've been in the game for a few months without being spotted at all.
It's a good thing I've found and fixed all of these, because these would be frustrating or even game-breaking to encounter normally. Morale: I (and you too, probably!) should take bug testing more seriously.
After the final ship is done and the boss can be defeated, I'm going to do another round of playtests which will hopefully result in the final list of desired tweaks for the game. I'm also developing some prototypes to see which project I could develop after Mobility is finished.
I'd really like to restate how much work has gone into this (seemingly simple) game. It's been almost two years since development started, the longest I've ever spent on a single game, and it's mostly been just me for that time! Please, do not underestimate the time developers put into making the games you like.
Thank you. I'm going to continue tinkering at the game! See you later--
The eventual goal is to have the game playable in the browser! While my priority is the Windows version, a browser version is something I can and very likely will make. Though it'll take some more time because I need to fix some browser specific bugs.
The final boss of the game is quite a handful of work. I was already expecting that (see my last devlog post for details) but it was still surprising how long it's taking me! The only thing I've really achieved so far is to get initial versions of all attacks implemented into the game. But they're all pretty cool, so take a look!
Throwing arm attack
The basic idea behind the boss is that it's a big robot with deadly arms. The arms are the main way the robot attacks the player, and I can control both of them individually. So I made an attack where the arms are launched in the direction of the player. I had some trouble to get the homing of the arms work in a way that works and feels fair. The way I did it was to add a warning sign where the arm shakes and turns into the direction of the player, so the players know in advance that they need to dodge an arm.
This is currently also the attack that leaves the final boss most vulnerable. The boss can be damaged by jumping on it from the top or hitting its left or right side, just like every other platform in the game. (This does not yet work in all difficulty settings, but I'll fix that later.) That way, I barely have to program any logic regarding damaging the boss-- I just need to make sure it recovers to an inactivate state a few seconds afterwards.
The boss swings its arms around itself while moving in the direction of the player. Very simple and effective. Since the boss moves quite fast, this is the perfect attack to wall jump upwards to dodge the attack and then fall down to hit the boss on its head. Very hard to dodge if you're close to it, so once you see the arms start moving slowly, prepare to run away.
Once the boss is hit, it will recoil by doing a variation of this attack while standing still. The arms will also rotate into a slightly different direction. This forces the player to retreat, after which the boss will fully recover and can be damaged again.
The bot flips up in the air (diagonally, targeting the player if possible), hangs there, shakes, and falls down. It will keep his arms above his head, so if players happen to be below the bot when it falls down, they'll be crushed instantly.
So what's next?
I'm actually quite happy about these attacks. Currently, I need to make these attacks feel fair and leave good weak spots on the final boss. Then, I'll implement health for the boss, and maybe a final state. This is what I was thinking of in regards to the final phase (a very quick prototype, please don't mind the inaccuracies):
But I still have to see it that actually makes it into the game...
I made a logo for the Star Fix, making a rather literal representation of the companies' name, and animated it like a shady neon sign.
Also, Unidrax (who helps building levels and the spaceships from time to time) found a sprite for a toast NPC I made a while back as a joke, and turned it into a playable character!
Hah, the old man gets his fifteen minutes of fame. Now we only need the gibberish 'hints' he is famous for.
Ricocheting arrows off your sword is a quite fun interaction, although a bit overpowered. Slashing in the direction of the mouse cursor could feel better, since the camera doesn't keep the guy in the middle of the screen like a twin stick shooter. I liked it, the art and animations were also pretty nice.