View Single Post
Old 09-19-2008, 09:46 PM   #3
Mabus
Member
 
Join Date: Jan 2006
Posts: 213
Mabus is on a distinguished road
Re: born-again techie looking to MUD

I feel you!

I want to say that my responses are just "off the top of my head" opinions, and not the only, or even best, options.

With that out of the way:

One solution:
Make each a separate area, and the parent of the area below it. The city would be an area, containing the blocks which would contain the buildings.

This would allow control of what affects each in an amazingly simple way.
The classic "PlayerA moves south/PlayerB closes door south/Dragon breathes - all at the same time" problem. Single threading and queues.

Some fantasy games have "astral travel" spells that allow (constructed to appear so) a player to leave the character's body behind and travel in a spirit form.

This leaves the old session-controlled MOB (let's call it OM, old MOB, for simplicity) item of the character where it starts the skill, and places the session within a secondary MOB (the spirit, NM, new MOB). Echoes from the room of the OM are sent to the session, with appropriate messaging ("In the room:" or such, in your case) and regular messaging would happen to the NM.

The vehicle is a room with a portal (RP, for room portal). The moving part is an exit object (MP, for moving portal). The MP moves through the other rooms, and switches the exit target of the RP each time it moves.

I had a builder ask for "a floating reed island that randomly wanders, based on wind", which I coded recently, that uses the same principle. You can sail a boat, fly or swim to this portal, and end up on the island. You can then leave the item from the shore and end up in the same room with "a reed island" in its journey through the large body of water. I plan on using the code for ships, tents and several other future projects.
Most already exists, but not in exactly the form you are stating. Entirely doable.

I would recommend (I can hear the howls and protests already...) C++ or Java. Either (or other OO with inheritance language) should work fine.

Could find a codebase that handles most of the "chores" for you, strip it down (code-wise) and then code in your features. If you go Java, then could work out.

If you are not familiar with coding it could take some time. You might want to get all of your ideas down on paper before you "learn" what is "possible", so that when you are able to code the game you envision you will remember that exactly why you started.

I wish you the best of luck.
Mabus is offline   Reply With Quote