User Tools

Site Tools


building_vehicles

How to Build Functional Vehicles

The makevehicle command can be used to build functional terrestrial vehicles, such as wheeled vehicles (including motorcycles!), boats, air-cushioned vehicles, and simple aircraft.

The vehicle created consists of a vehicle object that everyone outside the vehicle can see, a control room (think 'vehicle interior'), and a parent room that contains the vehicle's control room. It sets the vehicle up, and adds scripting that allows you to move the vehicle around using the command drive <destination exit>. People inside the vehicle will see what goes on outside, and if they've missed anything, can use the window command to look outside, both to see outside and to look at specific things outside (window <object> will show the object's description).

Once you have used the makevehicle command, you can enter the vehicle using enter <your vehicle name>. Once inside, you can use the vehicle commands listed in the previous paragraph to move around. Once you arrive at your destination, you exit your vehicle by simply typing out.

Players are encouraged to customize their vehicle descriptions, both the vehicle object itself as well as the interior.

Modifications for Spacecraft Owners

For those of you with access to a spaceship, you may want to take your vehicle along with you, especially if you happen to be an explorer and need reliable transport once you arrive planetside. The following modifications need to be made to your vehicle in order to make it capable of being driven onto your ship:

For purposes of this document, let's say the following database reference numbers (dbref#) apply to your vehicle:

  • Your vehicle object dbref# is #11111.
  • Your vehicle's drive action dbref# is #22222.

Enter your vehicle and do the following:

  • Type @unlink drive
  • Type @link drive=$nothing
  • Type @succ drive={force:#11111,{&arg}}
  • Type @set #11111=X
  • Type @flock #11111=#22222

Now, the ship needs to be prepared to allow vehicles to drive on or off. You will need the dbref# both the ship itself, and a dbref# for a room on your ship that has an exit to the outside. A room set up with the Airlock code is recommended, since it will usually have an OUT exit action assiciated with it that is linked to the outside of the ship.

Once you have those two dbref#, you can make the following modifications:

For purposes of this document, let's say the following dbrefs apply to your spaceship:

  • Your ship's object dbref# is #33333
  • Your ship's airlock (or whatever room you are going to use, see caveat above) dbref# is #44444

Stand outside the vehicle you're about to modify and do the following:

  • Type @action Rollon <shipname>=#33333,#44444

This will create an exit named “Rollon <shipname>”, with a dbref#. Let's pretend that dbref# is #55555. If you want to prevent others from driving their vehicles onto your ship, you can lock that exit by doing the following:

Create a lock string. You can use anything, as long as it follows the format <blurb1>:<blurb2>. For instance, if your ship is named “SS Lollipop”, you can use something like “_Lollipop:Y” as your lock string. There is no specific requirement to use your shipname as <blurb1>. You could just as easily use “_asdfLongCatisLoooooooong:1234” as your lock string.

Now you do the following (remember, your boarding exit action dbref for this example is #55555, and your vehicle's dbref# is #11111):

  • Type @lock #55555=_Lollipop:Y
  • Type @set #11111=_Lollipop:Y

Now you can drive your vehicle onto your ship using drive rollon <shipname> and any other vehicle without your lock string set on it cannot. To drive your vehicle off your ship, simply type drive <out>, or whatever the appropriate exit name is.

building_vehicles.txt · Last modified: 2011/06/14 04:34 by hagalaz