Introducing a Development Blog about my Online Persistent-Universe Game

Search for a command to run...

We are willing to pay a high price to acquire the source code of a mobile game that is compatible with both Android and iOS platforms, for the purpose of learning and research. The game must meet the following criteria: it should be developed by a top-tier gaming company within the past 5 years, fully completed and matured, and preferably of the multiplayer online MMORPG or ARPG genre. If your game meets our interest, we will proceed with the transaction promptly and offer an upfront payment as a gesture of goodwill. Contact me q791864008q@gmail.com
Hello. I'm writing a Lambda "tick" function to simulate the universe for my game. It's a different architecture than my previous idea of maintaining a 24/7 server, which simulates a busy real-time game loop. I wanted to give it a try. In this post, I...

A small tool that lets you put a "marker" on a song and have a button to recall that position with a click.

Hey there! I had a blast participating in the Appwrite hackathon and I want to share my journey with you. So, buckle up and get ready for some timer magic! Team Details Okay, before we dive in, let's get to know the team (well, it's just me actually)...

Hello. I've decided to try something for the game I'm developing. The game is a long-running online solo/coop space strategy game with resource balancing and 4x elements, but that's not the subject of this post. I decided to separate game logic code ...

Hello. For this one, I ended up using Hammer.js. I did try Interact.js which is definitely newer and more updated, but that just... well... didn't work nicely. Judging by the examples on both libraries' pages you can see if the core functionality of ...

Hello. AGS9 is a game I'm developing. It will be online, single player or cooperative private games with a persistent universe that keeps on running even when you are logged out. The theme will be space exploration and survival, with stars to colonize and space dragons to defend against. The intention is to create a 4X/resource-balancing game that takes inspiration from the gameplay of Frostpunk and Master of Orion (of course), with the anticipation of classic web games like Tribal Wars for something that will happen in a few hours or days from now.
AGS9 is not intended to be PVP at all, at least not in my original design. I want to create a game that people with a full-time job can play and excel at, without 14 year old kids farming them all the time.
I decided to write down a development blog about my progress and the challenges I encounter and overcome. These writings come not from the first line of code I write, but after several iterations of different game and server architectures I played around with and learned what suits best for the game at this stage of development.
For example, I decided against running multiple microservices deployed with Kubernetes, either with a Stateful Set of game servers that host multiple games, or a crazy idea of a Pod per game instance. I examined a solution of a Godot client/server architecture, but having HTML5 as a target platform and reading in Godot's official documentation that HTML5 support is not that great, I dropped that project too. That idea included either multiple games per a Godot server instance, or a Pod for a single Godot server that runs a single game for a player. The latter case is interesting because it lets me develop the game regardless of infrastructure or any authentication logic, multiple games on a single server, etc, and I only need some API Gateway Server for Kubernetes to have my players authenticated and directed to the individual game Pods.
But I don't do any of that. It's an overkill in this early stage of the game development.
Did I mention there's no game yet? Only infrastructure? :)
Today, at the time of this writing, I understood that as a developer I tend towards building things with cool technologies instead of actually making a Product, in this case a game. I do know however, that I want to have a working end-to-end system, with login, user management, and a "skeleton game" online and running, before I iterate on the game itself.
When I know everything "works" from the client side login, up to the server which communicates with the client through WebSockets with pushes of "space dragons attack you" or "your ship is ready after 7 hours of building", I could start focus on the game design itself, and inviting users slowly so I can get early feedback and develop with the community accordingly.
It's worth mentioning that I intend to run the game under a very cheap subscription plan, just to keep the servers running and not to get rich or something like that.
Trying to make these posts not too long, I will write about the current "early development architecture" I chose in the next part of this blog.