Getting started!


Today I'm kicking off the real work of getting this game off the ground! I've been working on a framework for JavaScript MMOs for months now (using Lance.gg and Pixi.JS), but I've not actually made a game with it. I'm excited to kick things off! I've already signed up for 4 separate game jams that I can submit the game to:

I'm hopeful that the need to finish something before the jams end will push me to skip over some of the little stuff that I tend to focus on. So, let's talk a bit about what I think this is going to look like!

The Technology

Since this is an MMO, there's a lot to consider...

  • We need to be able to sync up multiple players
  • We need to be able to host multiple servers so we can limit the number of players that need to be sync'd without preventing players from playing
  • We need to be able to handle significant server loads

By itself, building an MMO is hard. Now, consider that I'm doing all of this with JavaScript? Oh boy.

Fortunately, I've found a really great tool that will be super helpful for this: Lance.gg. Lance.gg is a JavaScript engine designed specifically for building networked multiplayer games. I've been playing with it for a few months and it's pretty solid! The one concern I have with it is performance. The performance has seemed pretty good thus far, but I've only tested it locally, and I've only tested it with 2-3 players. The real test will come once I actually put the game out and we start watching to see how the servers hold up under real, production conditions with actual loads.

Now, given that this is a JavaScript game, there are several different options for rendering. I could use an HTML canvas and build my own rendering engine, or I could use a prebuilt framework. I've gone the former route plenty of times, and I've built several very efficient rendering engines. This time, though, I want to use something else to cut down on development time. There are a few options out there, but Pixi.js stands far above the rest. It can use WebGL where available to significantly improve rendering performance, so I've decided we're going this route.

I haven't put a lot of thought into the server stack yet. I'm probably going to kick that can down the road a bit. 🤷🏻‍♂️

The Art

I expect I'll have to do at least a little bit of my own art, but I'm definitely going to start out with an asset pack. Since we're going the Sci-Fi route, I've been dying to use Penusbmic's Sci-Fi Series. The characters have so much life and variety to them, and the world design is just so attractive. I've purchased all of the packs in their entirety and I'm really stoked to put them to use. 🥰

Development

No, I'm still not using Unity. Instead, I'm going to do what any boneheaded developer would do: I'm going to build my own designer. Am I going to be able to accomplish this within the bounds of the game jams? I have no idea. I'm going to try, though. Aseprite and Texture Packer are great, but I think a more purpose-built tool will allow me to create assets and deploy them a lot faster. I guess we'll see!

Conclusion

I know I've already said it several times, but I'm really excited! I think having the extra motivation will be helpful for me, and forcing myself to stay accountable will hopefully give me the kick in the pants I need to get something done!

Leave a comment

Log in with itch.io to leave a comment.