Re: [Circle] Ships

From: Nick B (nick@connecti.com)
Date: 11/10/96


What if you wanted to make it so that the player could command the ship
around, and different ships could fight with eachother?

At 12:05 PM 11/10/96 -0600, you wrote:
>>This is how I did ships, it may not be the best way, but
>>it works and is  flexible.
>>
>>First:
>>
>>Create a room spec_proc that loads an object at certain time.
>>(this will be the ship while it is in port)
>>
>>The same object that is created above needs a spec_proc that
>>will somewhow transfer the player to the ship (which is just
>>a zone that has no entrance)
>>
>>This way, a player can only get to the ship if the object
>>is loaded in the room (the ship) and they enter the right
>>commnad (mine is 'board ship')
>>
>>Now, the room spec_procs needs to unload the object at a certain
>>time (I leave mine in port for two hrs)
>>
>>Second: 
>>
>>Code the zone for the ship and do whatever you want with it.
>>
>>I create a mob called the skipper that does various shouts
>>and duties while the ship is 'in motion' (that is when there
>>is no dock loaded)
>>
>>Here is where I had some probs, so I will list both methods of
>>how I unloaded the ship.
>>
>>met1: Have a room on the ship load an object called let's say,
>>the port of waterdeep, and theplayer will see when the enter 
>>that room of the ship, "A gangplank stretches out to the dock
>>of Waterdeep" or whatever, then have the player type 'cross
>>dock' or whatever. (this is in the object spec_proc) and then
>>transfer the player to the appropriate room in the game.
>>
>>met2: When a certain time is reached, have the zone transfer
>>allplayers to the port room and send them some kind of emote,
>>like, The dock reaches Waterdeep and the crew hutslte you off
>>the ship. This way is limited because a ship can only have
>>one destnnation.
>>
>>So all you need to do is corrdinate where and when the ship 
>>needs to be loaded and unloaded. Have a room spec_proc at
>>each of the rooms do this, and thus it simulates the moving
>>of the ship. Players can stay on board for as long as they
>>like, but can only get off when a 'gangplank to a dock' is 
>>loaded into the room you board the ship from.
>>(if using met2 from above)
>>
>>Basically all you have is the following:
>>
>>The ship zone 
>>A room spec_proc for each port that needs a ship loaded and unload to
>>A room spec_proc for the room on the ship that loads the 'exit'
>>A skipper spec_proc (just for roleplaying purposes)
>>The following objects;
>>The Ship (this is what each port room will load, it will have an obj
spec_proc)
>>Each dock/plank/ whatever (this will also have an obj spec_proc)
>>
>>This all a big illusion, theplayer thinks they are 'riding' on a ship
>>
>>Here is what really happens:
>>
>>PLayer enters a room with the ship loaded.
>>player types <board ship>
>>player is transfered to the ship zone
>>....time passes
>>Captain shouts, approaching Waterdeep.....
>>....The waterdeep dock is loaded into the ship
>>player types <cross dock>
>>Player is transfered to the Waterdeep port (where the ship is also
>>loaded in case they wanna get right back on)
>>....time passes
>>Ship is extracted from the port
>>
>>It is just a big schedule of obj_to_rooms, messages, obj_from_rooms
>>and etc..
>>
>>I hope this makes sense, I am working on very little sleep.
>>
>>Almost all the code used in this entire thing can be piece together
>>from stock circle funtions. The hardest part of this is the obj_spec_proc
>>that looks for an argument from the player (board ship) and then
>>transfer to the ship zone. If you need help with this part, mail me and I
>>will help.
>>
>>Chuck
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>+-----------------------------------------------------------+
>>| Ensure that you have read the CircleMUD Mailing List FAQ: |
>>|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
>>+-----------------------------------------------------------+
>>
>>
>
Nick B

nick@connecti.com

+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
+-----------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/18/00 PST