Plays at ~3fps and with a ~1s latency on all interactions on Firefox, MBP2015 :( Slightly better on Chrome, but the menu is still incredibly laggy and the placement grid lags way behind the mouse cursor. Got to say that the performance isn't exactly that of Rollercoaster Tycoon, famously written by Chris Sawyer in lovingly hand-crafted assembly!
Nah, I think the implementation is just off. Graphics need HW acceleration for modern resolutions, but the whole thing should be fine in vanilla JS. Afaik wasm is just an abstraction on top of a jsvm
> Afaik wasm is just an abstraction on top of a jsvm
it is, but as a compiler target there's tons of opportunity for automatic optimization -- in my experience wasm (from rust) tends to be faster then then hand-written js for the same function (although, i'll admit, javascript is far from my strongest language, so take that with a grain of salt)
Wasm objects are what you get in C or other low-level language, with a linear heap and zero metadata. That alone makes it vastly faster and easier to JIT than JavaScript.
Some criticism, the UX is not very exciting. It's a theme park game, take a look at RC2's menus. Having exciting menus makes you want to click on everything and explore the game! This is very gray, and monotone, and makes you not want to click on anything.
RC2 had "exciting" menus? they looked like Windows 3.1... made me feel like i was using ancient accounting software. which was actually pretty fitting for the genre.
The cursor is just bad UX from the start. The click area is off and it looks like you should click and drag but that's not the case. Clearly AI has a very long way to go.
Such an interesting showcase of history.
RCT was a masterpiece written in Assembly from hand. Looking at code from OpenRCT2 you can really see the thought behind it.
Now ISO Coaster really is a badly slipped together adaptation. A lot of details don’t make sense, graphics often look weird and performance is terrible - all while using tons of compute resources.
I never played RCT, I thought this was really fun and was hooked for a good minute.
Ran smoothly on MBP M1+Chrome. I couldn't figure out how to start the kiddie rides or get people through the doors initially. It might be fun to have some kind of daily challenge or competing with other parks. I found clicking in the 3D space to a little tricky.
This is fun. I didn't grow up playing RCT but I get the gist. I am a bit confused about two main things: how do you rotate a tile, and what's the relationship between the park entrance and the border tile where the customers enter?
considering you are okay with ideating with Gemini, you should focus on creating a concept frame of what a theme park actually looks like, and then just nail the art style. everybody knows what a roller coaster game is, but nobody knows what yours looks like :)
I'd much rather someone drop https://openrct2.io/ into emscripten with open-source graphics.
It is. https://x.com/milichab/status/2017132008934428963
Firefox has some incredibly slow paths in its graphics stack. If you happen to use those you're S.O.L.
it is, but as a compiler target there's tons of opportunity for automatic optimization -- in my experience wasm (from rust) tends to be faster then then hand-written js for the same function (although, i'll admit, javascript is far from my strongest language, so take that with a grain of salt)
Now ISO Coaster really is a badly slipped together adaptation. A lot of details don’t make sense, graphics often look weird and performance is terrible - all while using tons of compute resources.
Ran smoothly on MBP M1+Chrome. I couldn't figure out how to start the kiddie rides or get people through the doors initially. It might be fun to have some kind of daily challenge or competing with other parks. I found clicking in the 3D space to a little tricky.
This is fun. I didn't grow up playing RCT but I get the gist. I am a bit confused about two main things: how do you rotate a tile, and what's the relationship between the park entrance and the border tile where the customers enter?