0

Communication Is The Key

In a video game things can happen literally at anytime, you can have tons of things in the game that could be at any given location at any time. How would you deal with that? It can be a tough question to ask. What situations call for something( Object A ) in your game to talk to something else( Object B ) in your game? Most people, depending on your technological background would say, I would send him a message or something. In some cases that wouldn't be a bad choice, but messages aren't perfect, neither is anything else for that matter, but they do have their weaknesses. This brings me to Communication Type 1, The Postal System. For the most part people agree that the postal system is very slow or is complicated to some level.

Something You Need To Say To Someone...
In the real world the postal system consists of 3 components at the minimum, these are a sender, a deliverer and a receiver. The sender is exactly as it seems, a person who has a MESSAGE that he/she wants to convey to another. In the game world this would parallel exactly as it seems. The Deliverer is effectively the postal service, where the messages are processed ad delivered. In itself the Postal service isn't a one man job, because it consists of multiple roles. The roles can be broken down as such, mail is received from the sender, taken to the Post Office to be processed, and after processing it must be delivered. As you can already see this model is starting to take up a lot of time. In the game world this is almost paralleled, mostly because of the steps. At a high level it is the same but doing it is different, first because the sender must know exactly who the message should be sent to so that the post office can send it to the proper destination, at the same time the post office must know who that is so they can sort it internally. Finally the receiver part comes after the message was sent, processed, and is now to be delivered. Hopefully the Post Office knows who the receiver is and is able to get it there as soon as possible. If every thing has gone according to plan, everything should be fine and dandy with a letter in the receiver's mailbox in as timely a manner as possible. In general the postal system is very useful, but time and other varying factors take it down.
Model,Message System


What If I Just Don't Care...
Communication Type 2 is more along the lines of TV, more precisely the news most times. This system is called the EVENT system, where there are a lot of traits from the message system, but a lot of the focus is shifted to be more time efficient. In general the TV world works like the postal system in terms of having three steps and a goal. In the TV/News model weight is shifted from the Sender/Middle Man step to the Middle Man/Receiver step. In the real world, an episode is created sent to some sort of communicator ( usually a antenna or something similar) and is sent out to anyone who cares enough to subscribe, not unlike the magazine system. For the most part this saves time because everyone that exists doesn't have to be searched through to find a specific person. At the same time there is the slight downside that anyone who cares has to make the effort to sign up to receive each and every event that they want to know when it happens. At the same time the helps the both sides, the sender only makes events happen when there is someone who wants it, the middle man only has to deliver to any people that have subscribed to this specific event when it happens, and the subscriber/receiver only gets stuff he/she cares about.
Model,Event System


Custom Models Are Cool Too...
I'm sure there are other models, but these are the to that are most commonly used. For this game, Ascension, I have designed a special model that has the best of both without being either. This model is based off of RADIO Communication, which if it had to be typed it would be Communication Type 2.5. The Radio model is very similar to the TV model, but with an extra layer, that I call the Cellular/Communicator layer. In general the radio communication layer splits up attributes to be efficient, in the model there are two base types, the transmitter and the receiver. All the transmitter can do is send, and all the receiver can do is receive. In a game world there are items that don't always need both, then there are some that need to do both. This is where the cellular layer comes in, essentially playing the role of a cell phone. A cell phone can do both of these functions, very well usually. The cellular layer takes( inherits ) everything from both the transmitter and the receiver and adds to it. Anyone using this model that has a cell phone can send events to people who subscribe to the events, but at the same time can communicate using a contact list.A contact list is essentially a phonebook in a real cell phone. You have the ability to have anyone that is part of the cellular layer or is a receiver can give you their unique ID and you can literally send events directly to them as if it was a message system.
Model,Event Sustem


In The End...
I'm sure there are many other ways to implement communication between game object, but Type 1 and 2 seem to be very popular, and type 2.5 seems like it's a good idea. In all there are so many creative communication models that can be used to create different ways to communicate in a video game, but it all depends on what you need in the end.

Posted By Darren

0 comments:

Post a Comment