Devlog #10 An Authoritarian Server for an Authoritarian Game


Hello there,

So the last two weeks have been more progress on the inventory system in addition to a foundational rebuild to the development project. In essence, I’m a noob, I have terrible coding organization and Tango stepped in and helped with this by taking the foundation we built and rebuilding the project anew with much better folder organization as well as better code use and coding habits.

This generally helps me work from a better example of how the development process should like to build better habits, but also supports a more scalable mechanic design as the project is now designed in a more modular fashion.

https://kappa.lol/CJuf14

This is a simple example of where inventory is right now. Basically we have rewritten the inventory from the ground up with multiplayer in mind. Now our current state is just having completed the movement from one slot to another empty slot, but the important thing here is the authority included in this new version.  The server now acts as the final authority on all item related decisions. Any move is checked with and handled by the server, where the client just does what the server says in response.

This is important because the entire concept of this game revolves around items. From mining to manufacturing to using, the core of the game is all about items. So the code behind preventing abuse needs to be solid and that’s what’s being built here.

With that said, I kind of want to start moving away from “development logs” and more into feature updates with these bi-weekly logs.  I’ve done 9 development logs so far and to be honest, while I enjoy learning new things in programming, I’m not huge on writing about how it was done, I’m also not the best explainer of this stuff in general.  So moving forward, my plan with these is to focus more on providing information about general feature/mechanic updates rather than the nitty gritty of how it was done.

I believe I mentioned before, I want this game to be something that grows over time and isn’t just a one off game that needs sequels and such. One of the ways I’m considering handling this is via making the design of the mechanics generally modular to support multiple “realms” in one.  This doesn’t generally change development as a whole, just the end goal concept for what this game will be. At its core, this game will be a third person roleplay experience. What does that mean? It means that while I am currently developing it in a sci-fi dystopian futuristic era in respect to the inspiration of the 2003 MMORPG Face of Mankind, the game itself will support other eras and the mechanics will be able to support them as well.  For example, the storage mechanic in this game will be technologically advanced storage terminals visually, but in another era, maybe Medieval times, the storage mechanic would be the same, but visually be a barrel or a shed.

The idea here being, the mechanics are universal on a base level which allows the game to support multiple roleplay experience types. The current goal is the sci fi dystopian experience, maybe the next one will be a medieval experience. The only things that would really change gameplay-wise would be the art and the types of weapons used, but the mechanics would remain the same.

In this way, the experience for all communities across the board would potentially visually be different but mechanically the same. It also means that when one experience receives a new mechanic, all other experiences receive the same mechanic update just used differently for their era/realm. Potentially, it may also be possible in the future for server owners to enable and disable certain items in their server in turn allowing them to mix and match different era items into their servers creating a unique experience for each community.  Imagine a medieval era with random bits of advanced technology.

It’s a vague idea right now, but generally what I want to keep in mind while continuing development. I believe it will be the key to keeping the game alive and progressing. New era’s released as DLC potentially to keep the project funded while providing new and fun content to roleplay with for communities.(Don’t worry, it won’t be designed around getting rich quick, just priced to continue supporting the project on indie based pricing for each “realm” or “era” environment art and item set released for that environment . New mechanics and such will always be added to the base game at no additional charge.)

With all of this said, the credit for the current setup of the foundation and most of the work on designing the multiplayer goes to Tango, this same level of work would probably have taken me months to get to this same spot if at all given my level of experience. Multiplayer, even high level multiplayer in Godot is a beast to work with when attempting to design a game based around server authoritative architecture. Not only is the code complex, but you have to consider the “what if’s” in your design to prevent abuse as is the purpose of the server being authoritative.

As I said before, the project was rebuilt, so I still need to bring over quite a bit of the stuff from the original project. You can see there’s basically no placeholder art here in the current project as the focus has been on the inventory. This will happen over time, but for now, the focus is on improving the inventory’s capability, expanding it to support features like equipment slots, backpacks and such before moving on to the systems that will require this to be set up such as mining, manufacturing and markets. These systems will all be pretty closely tied together but are the core of gameplay in RotD.

In the next update, I plan to release a list of new features and changes to current features and perhaps explain them a bit as a part of my new development log concept moving forward. What I can say for now is that while the inventory appears to be moving slow in development, a LOT of backend work has gone into it as well as the foundation of the game as a whole which will make development moving forward easier, but also a lot of the work in the last couple weeks has been necessary to build out a reliable and responsive inventory and game that feels natural to interact with and works as expected.

As we progress, the foundation of the game itself is becoming more rock solid to support the advances made to it in the future.

Until next time.

Get Realm of the Dominion

Buy Now$4.99 USD or more

Leave a comment

Log in with itch.io to leave a comment.