Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
(+1)

Very pretty visual particle effects and sounds.

I didn't know that you could save state between sessions in a WebGL game. Nifty!

Maybe it's just a question of genre preference, but I found it cryptic. I was surprised that even the "helping hand" tutorial mode didn't explain what the controls were -- it just told me to push some buttons and explore. It took me quite a while to find them.

When I pressed a slash or apostrophe, some kind of search bar appeared at the bottom of the screen. I don't know if this is part of the game, itch, my browser, or my OS.

(2 edits)

Thanks for playing and for the feedback! I can see how the project can come off as cryptic, esoteric, or uninviting. That’s part of its core identity, and I apologize if that is a point of frustration.

My philosophy toward game design is that failure is the best part. At some point, game designers have to let players off the rails, make mistakes, and fail, because failure is integral to learning. The first and only test of THE OMEGA REACH is to ask players to navigate to The Reach and then activate it. After that, it should gradually become more intuitive as you keep playing.

There is most likely a change (or ten million) that could improve its intuitiveness. That’s why I’m considering feedback like yours—and still a year away from the full release. I’ll look into that and let you know.

I imagine that the search bar is related to your browser or device. However, I’ll double-check that too.

Cheers!

(3 edits) (+1)

Also, the project uses IndexedDB for persisting the session. At first, I used localStorage in my projects, but I found it quite limiting when wanting to store bigger or more complex data structures. However, both strategies are viable. Especially, if you just want to store a JSON-encoded representation of your game’s state—and it’s smaller than a few megabytes—then localStorage is a much simpler way to accomplish that. Seriously, it’s the difference between just calling localStorage.setItem(), versus ensuring a database exists, creating it if not, and connecting to it, before you can set that item.

I’m not proud of this source code, but it’s pretty loadbearing: https://github.com/nicross/the-omega-reach/blob/main/src/js/app/storage/api.js