Thanks for testing and going the info! Firefox is about 40% slower than Chromium-based browsers and Safari for us, we focus on the default browser on each platform so Firefox isn't tested often. Firefox also accounts for about 0.4% of our traffic and their performance analysis tools aren't very deep, so unfortunately it's hard to justify allocating time to improve there.
We also can't load in 2 seconds on any device we can run on. There are obviously some devices that ship Chrome on Android that can load the game, but are incredibly slow. So yes, not always 2 seconds!
Finally, we still have a huge amount of known performance we can gain in our loading, so I do hope I can come back in the future and show that 2 second loading on a lot more devices!
Hey! Thanks for checking it out. Twitter broke threads for people who aren't signed in sometime this year so unless your signed in, they will only show you the first tweet in a thread. Previously you could use Twitter as a place to post general information like this, but since they broke it I should really move the information somewhere else!
You should be able to see that loading performance on a "cold load" yes, but it's difficult to account for all network conditions. It's also possible for the multiplayer connection to take a little longer. I think if we messaged that more clearly then it would explain what's happening. We also considered just putting you in the game before you got the multiplayer connection, but that might be a bit jarring when it added all the players and entities in. We should maybe still think about it!
There's also a lot more room for loading optimization, I think we can maybe go 2-5x faster than what we have currently!
We do use some WASM yes and intend to use more in the future, but the majority of the engine is still TypeScript compiled to Javascript.
The pricing model is not yet announced, but it'll be a rev share between the creator of the game and us. More info here: https://developers.dotbigbang.com/
We went for Go as it's 1) about 100x faster than Python in testing 2) Garbage collected so prevents many memory-related bugs (many of us have a C++ background so we're familiar with manual memory management and its pitfalls) and 3) It's super stable.
We did look at Rust, but Rust suffers from a little bit of the "shiny new thing" syndrome. We have simple needs and wanted something fast and boring :)
The server-side design is also as boring as possible, just standard web stack for serving, and websockets for multiplayer. We use EC2 for everything yep!
It's nice because all the game entities end up being separate entities in the destination tools, so you can rearrange and move things around vs it just being a monolithic blob.
I would like to consider open sourcing the engine at some point in the future, at least for single-player games, but my view is that with a small team, we have to make the engine excellent and the platform successful before we do that.