Jump to content

monster860's Guide to Adminbus - Shuttles


monster860

Recommended Posts

 

So, you need to whip up a shuttle for your fancy custom event. Here's how to do it.

Disclaimer: I'm not an admin. Also, if you fuck up a value and end up taking out a chunk of the station, it's not my fault.

 

Step 1 - The Turfs

 

The first thing you should do before doing anything is decide how big your shuttle will be. Consider where your shuttle will be docking on the map.

 

Now that you have your size down, find a nice area on z-2. You want 7 tiles off the edge of the shuttle for transit space. In other words, you should be able to walk the entire perimiter of where you place this shuttle without seeing anything besides space. This will be your transit area, and this is where your shuttle will go when it is in transit.

 

Now you can begin building the actual shuttle. Switch to "Build Mode", and set the mode to "Adv Buildmode". This will allow you to construct objs and turfs of any kind, by right clicking on the buildmode button. For reference, we will be making the following shuttle:

 

wwcLIHN.png

 

Now, you can start building the shuttle. Here's the relevant paths you need for this:

 

 

- Shuttle walls: /turf/simulated/shuttle/wall

- Interior shuttle walls: /turf/simulated/shuttle/wall/interior - This is for corner turfs that you want to have something other than space as an underlay.

- Shuttle floors: /turf/simulated/shuttle/floor

- Plating (for windows, and engine): /turf/simulated/floor/plating

- Grilles: /obj/structure/grille

- Shuttle windows: /obj/structure/window/full/shuttle

- Propulsion: /obj/structure/shuttle/engine/propulsion - Dir should point INTO the shuttle

- Heater: /obj/structure/shuttle/engine/heater - Dir should point OUT OF the shuttle

- Reinforced window (For engine): /obj/structure/window/reinforced - Make sure to set your direction properly in the top left corner of the screen

 

 

You should end up building something like this:

 

WfdHlWO.png

 

You also need to put paint in the area. Set the buildmode's mode to "area", and rightclick the buildmode button. On the first text input, type in "/area/shuttle" (Without quotes). On the second one, type in what you want your shuttle to be called. In this example, I call it "Adminbus". Now, paint this area in by left-clicking on all your shuttle turfs.

 

You can now add the lights. Use /obj/machinery/light and make sure Dir points TO THE wall.

 

For transit turfs, use /turf/space/transit if your shuttle points north and /turf/space/transit/horizontal if your shuttle points east. Set your buildmode to "FILL", rightclick the buildmode button to set the path, and click on two corners to fill an entire area with the turf. Be careful to not fill over your shuttle.

 

Step 2 - The icon_state's

 

To begin, set your buildmode to "EDIT". This will let you edit vars. Now, to set the icon_state of an object, right-click on the build mode button, type in "icon_state" (Without quotes), select text, which is the first entry in the list, and then type in your desired icon_state value. Now, clicking on an object will set it's icon_state to that value.

 

Here's a handy chart on icon_states for shuttles:

uAZzxsh.png

 

After you're done, it should look somthing like this:

 

DWuiq3q.png

 

You probably notice that the corners are black, instead of having the correct icon under them. This is an easy fix. Simply right click on any transit turf (Doesn't matter which, it will be replaced with the correct one when you move the shuttle), and view variables. Click on the drop-down, and select "Mark Object". Now, View-Variables all of the corner turfs with black, and click "E" on the "underlays" var, and select "(ADD VAR)". Now scroll down all the way to the bottom, and select "marked datum". Now click "No." You have to do this for every corner turf.

 

e2FUAXs.png

 

There, that's a lot better.

 

Step 3 - Docking Ports

 

This is the part where you make shuttles actually move. The first thing you need is figure out where to put the mobile docking_port, and which way it will face.

 

While this doesn't really matter too much where you place it as long as you place it the same way for every docking port, the standard for shuttles is to place the docking port on the door, and having it face inwards toward the shuttle. In this example, it will be placed here:

 

Qs5N3J3.png

 

Now we need to figure out what values to put for width, height, dwidth, and dheight. The values are done relative to the docking_port's dir. Here's a pic showing how it's done:

 

gEF1WoE.png

 

Now, create a /obj/docking_port/mobile in the desired location, using Adv Buildmode, making sure to mind the DIR arrow in the buildmode. Now, you can't simply right click and view variables the docking port. It is invisible, so you have to view variables the turf, and search for contents. Look for a /obj/docking_port/mobile and click on it. You are now viewing the variables of the docking port. Set the width, height, dwidth, and dheight to the appropriate values, set name to what you want to call the shuttle ("Admin Bus" in this example), and set the id var to an appropriate value as well ("adminbus" in this example). Now, you need to register the docking port. To do this, click on the drop-down on the top right, then "Call Proc", then type in "register", and then "0" (All without the quotes again).

 

Now, create a /obj/docking_port/stationary/transit in the same place as the mobile one and put in the same width, height, dwidth, and dheight values. Set id to whatever you had for the mobile one, plus "_transit" at the end (WIthout quotes) ("adminbus_transit" in this example). The name will be automatically set when you register the port. Register this docking port too, the same way.

 

Finally, decide where you want the shuttle to be able to dock. Place a /obj/docking_port/stationary in the appropriate locations, and set the width, height, dwidth, and dheight values to what you had before. Set ID to something appropriate. I recommend prefixing it with the name of your shuttle to avoid conflicts ("adminbus_station", "adminbus_base" in this example). Set the name to something appropriate ("station", "base" in this example). The name will show up on the shuttle console. Make sure to register the docking port.

 

And now the shuttle console. Create a /obj/machinery/computer/shuttle somewhere on the shuttle. View variables it. Set "shuttleId" to whatever you set for the ID of the mobile docking port. ("adminbus" in this example). Now, if you use the computer, it should say "Status: In Transit towards unknown location", and it should give you the options you created before. If it doesn't, ViewVariables it, and in the var "possible_destinations", put a list of the ID's for the stationary docking ports you created (But not the transit!), seperated by semicolons.

 

Finally, doors. On the doors in the shuttle itself that you want bolted when in transit, set the id_tag var to "s_docking_airlock" (Without quotes). On the doors at the docking ports where you want the door to bolt when there isn't a docked shuttle, set the id_tag var to the ID of the stationary docking port in that dock.

 

And now you're done! Congratulations, you just build a shuttle.

 

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Terms of Use