Guide to mapping: Difference between revisions

Jump to navigation Jump to search
1,934 bytes added ,  11:20, 28 July 2015
imported>Oranges
imported>MrStonedOne
(4 intermediate revisions by 2 users not shown)
Line 49: Line 49:


== Pre-commit checks ==
== Pre-commit checks ==
- Are all the floors with or without air, as they should be? (regular or airless)<br>
 
- Does the area have an APC?<br>
*Are floors with or without air, as they should be? (regular or airless)
- Does the area have an Air Alarm?<br>
*Does the area have an APC?
- Does the area have a Request Console?<br>
*Does the area have an Air Alarm?
- Does the area have lights?<br>
*Does the area have a Request Console?
- Does the area have a light switch?<br>
*Does the area have lights?
- Does the area have enough intercoms?<br>
*Does the area have a light switch?
- Does the area have enough security cameras? (Use the verbs under Mapping for help)<br>
*Does the area have enough intercoms?
- Is the area connected to the scrubbers air loop?<br>
*Does the area have enough security cameras? (Use the verbs under Mapping for help)
- Is the area connected to the vent air loop? (vent pumps)<br>
*Is the area connected to the scrubbers air loop?
- Is everything wired properly?<br>
*Is the area connected to the vent air loop? (vent pumps)
- Does the area have a fire alarm and firedoors?<br>
*Is everything wired properly?
- Do all pod doors work properly?<br>
*Does the area have a fire alarm and firedoors?
- Are accesses set properly on doors, pod buttons, etc.<br>
*Do all pod doors work properly?
- Are all items placed properly? (not below vents, scrubbers, tables)<br>
*Are accesses set properly on doors, pod buttons, etc.
- Does the disposal system work properly from all the disposal units in this room and all the units, the pipes of which pass through this room?<br>
*Are all items placed properly? (not below vents, scrubbers, tables)
- Check for any misplaced or stacked piece of pipe (air and disposal)<br>
*Does the disposal system work properly from all the disposal units in this room and all the units, the pipes of which pass through this room?
- Check for any misplaced or stacked piece of wire<br>
*Check for any misplaced or stacked piece of pipe (air and disposal)
- Identify how hard it is to break into the area and where the weak points are<br>
*Check for any misplaced or stacked piece of wire
- Check if the area has too much empty space. If so, make it smaller and replace the rest with maintenance tunnels.<br>
*Identify how hard it is to break into the area and where the weak points are, and balance the area accordingly (eg. the Vault should be made of reinforced structures and electrified windows, the Kitchen should not)
- Are there any [[guide_to_mapping#Room Structure|unsimulated floors]] where they shouldn't be?<br>
*Check if the area has too much empty space. If so, make it smaller and replace the rest with maintenance tunnels
*Are there any [[guide_to_mapping#Room Structure|unsimulated floors]] where they shouldn't be?


== General Station-wide Mapping Guidelines ==
== General Station-wide Mapping Guidelines ==
Line 233: Line 234:
=== Access ===
=== Access ===


==== Door access ====
Access to doors is handled by req_access values. There are four when editing a door - req_access, req_access_txt, req_one_access, and req_one_access_txt. The one's we're concerned with are '''req_access_txt''' and '''req_one_access_txt'''.
 
[[File:DoorAccessImage1.png|thumb|left|300px]] This image shows a door on the Arrivals shuttle - since it's a public door, the access is set to "0", as everyone should be able to open it. If we look at the Brig front door, we would set the access to 63, because that's the value for Security front doors - accessible by Security positions, but no one else.
 
Multiple accesses to doors are handled by adding a semicolon (with no spaces) between access values (eg. "28;31" is for Kitchen and Cargo access). This might seem worthless, but it's useful for small maps, where jobs might need to share access due to cramped spaces.


==== Airlocks ====
There's an important difference between the two that you need to pay attention to - req_access_txt requires '''ALL LISTED ACCESSES''' to open the door, while req_one_access_txt lets anyone with '''ONE OF THE LISTED ACCESSES''' open the door. For example - say you want your Brig to be openable by the Detective and Security Officers, we would put "63;4" in '''req_one_access_txt''', because we want the Detective '''AND''' Security to have access. If we used req_access_txt, you would need '''BOTH''' accesses to open the door, meaning neither the Detective or Security could open it.


==== Pod Doors ====
You can view all of the access values in the code/game/jobs/access.dm file. (Most should be self explanatory or have a label, but if you really aren't sure, you can take a look at Boxstation's map file and check the value on the door you're looking for).


=== Airless Floors ===
=== Airless Floors ===
Line 276: Line 281:


==Shuttles==
==Shuttles==
  12:20 <%tkdrg> basically there's 3 types of shuttle dock
Basically there's 3 types of shuttle dock stationary, transit and mobile
  12:21 <%tkdrg> stationary, transit and mobile
*stationary == places where the shuttle can dock
  12:21 <%tkdrg> stationary == places where the shuttle can dock
*transit == shuttle as it moves
  12:21 <%tkdrg> transit == transit
*mobile == the place with the actual shuttle
  12:21 <%tkdrg> mobile == the place with the actual shuttle
so you'd have a transit dock in the transit area and 2 stationary docks, one in centcomm and the other one in the station and 1 mobile dock, in centcomm for most shuttles (apart from mining)
  12:21 <%tkdrg> so you'd have a transit dock in the transit area
 
  12:21 <%tkdrg> 2 stationary docks, one in centcomm and the other one in the station
The shuttle docks are grouped by id eg id = "cargo_away" id = "cargo_transit"
  12:21 <%tkdrg> and 1 mobile dock, in centcomm for most shuttles (apart from mining)
 
  12:22 <%tkdrg> these are selected by ID eg id = "cargo_away" id = "cargo_transit"
You need to add the dock types to the map and edit the bounding boxes via varediting the dock, you need to varedit height, width, dheight and dwidth at minimum. These are offset by the dir so do keep that in mind, eg if dir == 2 then width goes from EAST to WEST, if dir == 4 then width goes from NORTH to SOUTH and dwidth/dheight are offsets from the lower-left corner of the plane switched to the dock's dir
  12:22 <%tkdrg> basically you need to create those docks
 
  12:22 <%tkdrg> and set their bounding boxes
You should also ensure the directions face the shuttle or face away from the thing the shuttle docks with.
  12:22 <%tkdrg> the bounding boxes can be set with varediting on the docks
 
  12:23 <%tkdrg> you need to varedit height, width, dheight and dwidth
If a shuttle's mobile docking port direction is different then the stationary docking port's direction, the shuttle and all items on it will be rotated accordingly. (Try it, it works properly for just about everything)
  12:23 <%tkdrg> these are offset by the dir so do keep that in mind, eg if dir == 2 then width goes from EAST to WEST
 
  12:23 <%tkdrg> if dir == 4 then width goes from NORTH to SOUTH and dwidth/dheight are offsets from the lower-left corner of the plane switched to the dock's dir
'''Warning the bounding box for the mobile dock must fit inside of the stationary dock (after any rotation)''' Or the shuttle will refuse to move.
  12:24 <%tkdrg> so basically you just need to set those 5 vars and done
 
  12:24 <%tkdrg> also create shuttle plating under the engine and turn all existing plating to shuttle plating
If the shuttle's mobile docking port is in an area that is a subtype of /area/shuttle, Only turfs in the bounding box in that same area are moved. Otherwise it moves all turfs in the bounding box. This can be used for odd shaped shuttles. (the area will be transfer over as well)
  12:24 <%tkdrg> the new shuttle controller will only move shuttle tiles
 
  12:28 <%tkdrg> oh also i forgot to say
Also note that the emergency shuttle and cargo shuttle need special subtypes of the dock type eg so /obj/docking_port/mobile/emergency
  12:28 <%tkdrg> emergency shuttle and cargo shuttle need special dock children docks
 
  12:29 <%tkdrg> so /obj/docking_port/mobile/emergency
The other variables of note is traveldir, which defines if the shuttle rotates on transit, it's an angle in degrees (just imagine the shuttle is inside a circle . For example, if you want the shuttle going right to left set it to 270 degrees.
  12:29 <%tkdrg> it's important to remember to use stuff like /obj/docking_port/mobile/emergency and the cargo one whose path i forget
 
===Dwidth and Dheight in more depth===
===Dwidth and Dheight in more depth===
  12:48 <%tkdrg> oranges: dwidth/dheight is the offset of the docking_port obj from the (0,0) bounding box corner
dwidth/dheight is the offset of the docking_port obj from the (0,0) bounding box corner. In dir == 1 (north) 0,0 is the bottom left corner? This changes for each direction, For example when dir is 2 it's the upper right corner. so dwidth and dheight identify where the bounding box starts relative to the docking port obj whereaswidth and height determine the actual width and height of the bounding box
  12:49 < quiltyquilty> is 0,0 the bottom left corner?
 
  12:49 <%tkdrg> not always
'''Note: We count step 0 as a tile, so a height and width of 9 is actually 10 tiles (tile 0 to tile 9)'''
  12:49 <%tkdrg> on dir = 1 it is
  12:49 <%tkdrg> on dir 2 it's the upper right corner
  12:49 < Editor> and so on for each direction
  12:49 < oranges> so dwidth and dheight identify where the bounding box starts relative to the docking port obj
  12:49 < oranges> width and height determine the actual width and height of the bounding box
  12:49 < Editor> Note we also count 0 as a tile, so a width of 9 is 0-9 (width of 10 tiles)


Here is an example for the north facing shuttle dock direction
Here is an example for the north facing shuttle dock direction - you can rotate this image to determine where the offset is for each other cardinal direction
[[File:ShuttleBox.png]]
[[File:ShuttleBox.png]]
[[Category:Guides]] [[Category:Game Resources]]
[[Category:Guides]] [[Category:Game Resources]]
{{Contribution guides}}
{{Contribution guides}}
Anonymous user

Navigation menu