Cue “Dissolved Girl” by Massive Attack

Developer Update #8

Jeff
Grid Games
Published in
4 min readNov 13, 2018

--

Welcome to another Grid Online Developer Update where I’ll briefly discuss the latest changes on Grid Games’s MMO sci-fi RPG. If you’d like to see what we’ve been up to previously, head over to Developer Update #7.

Over at the Grid Games HQ we’ve been hard at work shaping and developing our game. In this update I’ll share some details about the tasks we’ve worked on the past weeks such as the item system and ramble on about some of our AI for our NPCs.

Items Management (inventory, trading, etc.)

Early screenshot of the trade window

Items management is literally everything that’s got something to do with items in whatever form they come. Ranging from dragging and dropping items in your inventory, picking up and equipping items and displaying them on your character to player and kiosk trading.

I’ve been working on (re)-implementing the core item management and container system, which is a fancy way of saying ill-try-my-best-not-to-loose-your-shit™. At the moment all of the items are managed server side and actions and behaviours are predicted on the client’s side (e.g. moving items in your inventory, trading, etc.). Player-to-player items trading is fully functional and works as you can expected in most games. You initiate a trade with another player, you drag items from your inventory to your side of the trade window (left) and accept the trade. Once both parties accept the trade the items will be moved to the other player and placed in their respected inventories.

Work in progress of the Bank terminal

Storing items in chests is also fully functional, which eventually be used for storing items permanently inside the Bank and loot chests you may find on missions.

NPCs and AI

NPC will have a large role in your adventures to come and are incredibly important to make places feel alive. Whether they are road-side food shops, outposts or large cities, they are very important to make areas feel alive instead of abandoned, empty places. I’m currently working towards a model where NPCs have a “life” and go about their business from getting to work to having noodles for dinner at a food truck. I also want to give NPC significant information about their surroundings such that there will be groups of NPCs that get together for a chat instead of aimlessly walking around a town. I think it would be really cool if you’d walk up to an NPC and offer him your wares like a weapon or some of your illegal hacking mods and have them decide wether to either buy it off you if they are interested or call security on you if they are lawful citizens (better screen them first, find out their occupation and/or interest).

I guess the point is that NPCs will play a large role in our world and that even though the game is an MMORPG and you’ll mostly interact with other players, NPCs will be equally important on your adventures.

Rick the dummy AI

The coming weeks my main focus will be on developing these systems and I’ve got a pretty good understanding of where I want to take this. Last week I started on some basic navigation (path finding) using set markers so that an NPC could navigate towards a position without bumping in to walls or other obstacles.

Rick is our first NPC and he’s pretty much a test dummy. Any code I develop will be thrown at him, which often ends up in some hilarious moments and sometimes in some good results. The basic code is set and I’m now able to expand further and start building out the necessary components to make our NPCs feel alive and part of this world.

The AI stack contains an AI controller, which has the ability to find and acquire targets of interest, movement using the target and reacquiring a target when something blocks line of sight. The AI controller is the central point for the other AI components such as the AI_Combat and AI_Aggro modules.

Using these two components I constructed a small scenario for your entertainment. Rick was given a weapon (Nova Flow), God Mode and a target: Rick vs Berth the Giant. Enjoy!

--

--