Command Line Interfacing

posted in Septopus for project Unsettled World
Published November 24, 2018
Advertisement

One of the great advantages to having a distributed modular system comes in its flexibility and its configurability/re-configurability.  The modular approach I'm taking with my system will allow me to service and tune specific aspects of the architecture individually during live operations. 

The more flexible and modular the system becomes, the harder it becomes to manage efficiently.  This is a general rule in large scale computing, at least one I've come to believe in over the years.

I was continuing work on the Mob server(loot-drop type NPC controller), and I realized it was past time to begin thinking about how to manage this beast once it's actually breathing internet bits..

Pub/Sub to my rescue again! ;)

I'm rolling with a simple CLI program on the servers and it's just using a standard MQTTNet client.

Each individual server has a topic in its own name that it subscribes to.  e.g. "MobServer01"

Each type of server subscribes to their group topic. e.g. "MobServers"

So, to send a command to a server or a whole group of servers is just a matter of publishing to the appropriate topic, across the entire infrastructure. :D

Here I've set the Mob to Player ratio to 2 before logging in. The Mob server output is bottom left, the CLI is bottom right.

npcclimpr2.png.e24d62e3ba80bf2fcd2831866a9ae37f.png

and here's the 2 npcs after login.

npccli2login.png.4a29fa6f4d6246080a21de8c1a37d39f.png

and now the fun stuff! :D

Well, I guess you'll have to click the link until the embedded images start working again..

https://www.gamedev.net/gallery/image/10396-npccli3mp4/

lol ;)

 

1 likes 0 comments

Comments

Rutin

Genius at work. ;) 

November 25, 2018 05:17 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement