Jump to content

Dreamy's Mapping Tips and Guidelines


Recommended Posts

- Preface

This is a collection of tips, tricks, guidelines, guides, to gather my thoughts in a single place, instead of all over discord. The intention behind this is to help current and future mappers, to create maps that are correct, but also to create them easier, faster, and more consistent.

This is not a collection of "official" requirements, but parts of it may be linked when reviewing pull requests. None of this is absolute rules that must always be followed, there may be exceptions. 

This may be updated in the future.

- The Three Most Important #1-3 Tips

Spoiler

Test your map.

So many problems can be quickly found by just starting up a local server, and running around the map.
Please. I beg you. Test your map.

If there is a shuttle, get on it, undock and redock it. Look at if the airlocks open and close automatically.
Make sure power and atmos both work, try to set up power, see if there's enough fuel or whatever else.
Try to click on all airlocks and see if they cycle and open properly.
Spawn as every ghostrole if there's any, see if they have shoes, uniforms, and enough of any other gear.
Shoot yourself in the face and try to fix yourself in the medbay to see if there's enough medicine supplies.
If there's an armory, try to arm up for a possible threat, see if there is enough ammunition and armor for everyone.
Do not treat this as a checklist of points to check. What needs to be tested depends on the map.

Test your map. It will take you a few minutes, but it will avoid players in the future potentially having their experience ruined if the map is not functional.
Everyone makes mistakes, including me any anyone else, and that is fine.
But a lot of simple mistakes can be prevented by just spawning in the map and running around for a minute or three.

 

Commit Often.

Strongdmm may bug out, or you may mess something up, or even simply just your computer may randomly reboot for no apparent reason.
Map corruption occasionally happens too.
Save often, and commit often. This is your insurance against the unexpected, it sucks really bad to lose progress.
Git is very powerful, in that it allows saving all the changes, comparing them, reverting changes, or even just looking previous iterations.
But any of that that that you commit changes often.

 

Gather Feedback.

Don't open up a PR with the whole map already finished.
Do open it earlier, and mark the PR as work-in-progress.
Do post progress pics in #mapper_coordination, or even just the idea of what you are trying to do.
If the idea is something "new" or experimental, where a similar thing doesn't exist already, ping a developer if the thing is wanted.

Why? Cause it is easier to spot any issues, and fix them, before the map is already finished, fully functional, furnished, decorated.
It sucks to see a map fully finished, but with layout problems, like lacking airlocks or docks, where fixing that would require rearranging rooms, redecorating, moving pipes and wires around, etc.
And it sucks to have to fix these issues too, when they could have been pointed out and fixed earlier.

 

- Strongdmm Tips

Spoiler

image.png.50ee3e7cc52e91b705d3ba6252e5d0da.png

Learn and use shortcuts. If there is a button in the GUI you can click, that also has shortcuts, it will show these shortcuts.

 

image.png.4b53de455383faf4e5424368d38bda38.png

Use this to easily drag objects to pixel-shift them.

 

image.png.a9c6dda44715b42db5589e581ec6e8fd.png

Do this to take a high quality screenshot of the whole map, or just a selection. Either to save it somewhere, or copy it to clipboard for easy pasting on discord or wherever.

 

image.png.6f866186df1395cce1adaafd9a52d5cc.png

Use these buttons and shortcuts to quickly hide areas/turfs/objects/mobs. Useful to hide objects to check if turfs under them are correct, like when checking for mistakes like space turfs under windows or doors.

 

image.png.fa933347004028b1afe8ea0818100226.png 

Click the eye to turn on selective hiding/unhiding of paths. For example to hide all catwalks and grates, or dirt, or tables, to see the wires and pipes under them easily.

 

image.png.283d739a9f8f527ddc8decc720682ab9.png

Can also do the opposite. Hide all objects, and then unhide all atmospherics, to only see pipes+turfs and nothing else. Can still place or remove pipes like this, and the hidden atoms are not affected.

 

image.png.876e2bfb8b6fa483fd59753cfd1cad52.png

Copy/paste still works with selective hiding. If you hide everything but pipes, and copy these pipes, only pipes will be copied and not the hidden things too. Same goes for pasting.

 

image.png.8c203ae2b4ff29dd4cd3d04384c5e76a.png

These are "prefabs" of a selected atom. Prefabs are variations of a single atom TYPE, based on vars set in the maps. Types are created in code. Different vars means different prefabs, in this case the different pipe prefabs differ in their dirs. Prefabs are generated from current map, but also from other maps that are currently open. This is nice when mapping in a new map, to open up a different already finished map, to see its prefabs (of pipes, wires, etc) to avoid having to set them up manually on every new map.

 

image.png.fc0add227a90b8f3a06a44988ad1068f.png

Here are variables of the selected thing. Use the cog menu to show only modified vars. Also click the circle near the var to pin it so it stays at the top.

 

image.png.4dc80d45c92a40b81c421a354ca89f73.png

Normally if you select a thing on the map, and change its wars, you will change them only for that specific instance of a thing. If you select a prefab (or select an instance of a thing and switch from instance to prefab mode here), you can change the vars of the whole prefab (so every instance of this prefab will have the vars changed). This only works for currently opened map, and does not affect other maps you have open. This is useful to, for example, change required access on all APCs or Air Alarms or Doors, after they've all been mapped already.

 

image.thumb.png.9a9a26358d36870ce93cb1d1a4ad331f.png

In options/preferences, turn on Quick Edit: Tile Context Menu. Now you can right click a tile, mouse over an atom, and change its x/y/dir very quickly by scrolling mouse wheel.

 

image.png.6f5942a8c9470040e3a1b27f7dccb692.png

Click-drag the name of the map file, and drag it over to the rectangles that appear, to have two map files open at once. Very useful to easily copy parts of one map to the other, or even to just compare them, seeing two (or more) maps at once, and not having to constantly switch between them

 

- Airlocks and Airlock Markers

Spoiler

Guide on how to set up airlocks:

 

Guide on how to set up docking airlocks:

 

Guide on how to set up shuttle airlocks:

 

General mistakes:
- the shuttle is not aware of its airlock (in /datum/shuttle/autodock/overmap... should be var dock_target)
- or the other way around (shuttle_tag on the shuttle airlock marker)
- same thing with the dock landmark (in /obj/effect/shuttle_landmark... should be var docking_controller)
- or the other way around (landmark_tag on the docking airlock marker)
- also the controller types may be wrong (.../airlock/airlock_controller when it should be docking_port)

- General Mapping Tips

Spoiler

Difficulty of mapping would be something like this from easiest to hardest:

  • Minor fixes/additions/remaps to existing ships/sites/ruins. To get to know the mapping flow, GitHub, opening new PRs, getting familiar with Strongdmm.
  • Adding new ruins. They are small, don't have to be functional, don't need atmos or power usually.
  • Adding new away sites. Generally without ghostroles, they don't have to be fully functional, or can be only partially functional.
  • Adding new third party ships. They do generally have to be fully functional, but they are self-contained so they are easy to just look at the whole map to review if it's complete.
  • Making bigger changes to horizon like remapping or rearranging stuff. This is a bit of a wildcard, cause it may seem simple and easy to just change one room, but then it turns out another room has to be moved, and then a bit of maintenance tunnels have to be rearranged, and then the other department on the other side needs to be shrinked a bit, pipes rerouted, hallway expanded, etc. Even a small remap has the risk of having to touch many departments, rooms, decks, and rapidly expanding scope. Also a high risk of merge conflicts that are annoying to resolve, and if there's any bugs or mistakes it may actively ruin enjoyment of other players every round until the problems are fixed.

 

image.png.e2f1d99f9598b9eb7247116969dbb3c6.png

Look at this folder, and at the guidelines there. Follow them. They are entirely visual, and have lots of correct and incorrect examples.

 

image.png.a0d81324ce396bd7c9d1a94950c72b00.png

When creating new maps, look at other maps of the same type. Study them, look at how they are implemented. Avoid reinventing the wheels by yourself. If you have some issue that you cannot solve, look at other maps to see how they do it. We have a ton of maps, and only getting more, but only the newest maps (or remaps) are high quality and following the newest standards. If you cannot solve the issue by yourself, ask others on discord, and if that fails, ping a mapper/developer.

 

image.png.669a8fea30c3bd1f82268afa1c6b7aab.png

Avoid "fake objects", and generally avoid changing vars like icons or icon states. It may be fine at first, but if the icon paths or icon states change in the future, these fake objects will be broken. Prefer creating new types for things like fake props. And especially avoid changing icons and icon states of functional things like turfs, objects, machinery.

 

- Mapping Quality and Standards

Spoiler

image.png.2b60c2fa2bfa279cb6a56e0eba603b4f.png

On directions and orientations of ships and shuttles:
- All new ships must face south. Meaning their fore is south, and aft is north. No exceptions.
- (Reasoning for the above, is that this makes it easier to reuse ship pieces, or give ship weapons to ships that don't have any.)
- Shuttles can face any direction. Meaning their fore can be south, north, east, or west.
- (But shuttles that are supposed to be armed, should face south, as we only have south-pointing ship guns currently.)

 

image.thumb.png.ae073c55c6203bae9b84b80b8cdf1ef2.png

Space away sites and ships with pressurized interiors should have docks in all orientations.
Docks make it so much easier and quicker to interact with the site/ship, if any visitors can just dock and immediately walk inside.
Having to go EVA is hugely annoying and slow, and requires everyone to have EVA suits and air ready, and that includes any passengers or off-duties who may just want to tag along for fun.
If a site or ship lacks docking ports, then exterior catwalk "docks" can be used instead, to at least make going EVA easier, without having to fly with a jetpack or construct lattices to get to the airlock.
How many docks are needed, depends on the ship/station/outpost, of course, but bigger is expected to have more docks.
This does not apply if the lack of docks is intentional, to make it slower to visit the place.

image.png.9738c93eb179c39397f00e1ba2f9f73d.png

On APCs, air alarms, areas, etc:
- Doors and windows should have firedoors on them.
- Every enclosed space should have an air alarm. Enclosed meaning, separated by doors/firedoors/windows. More than one is fine, especially for big spaces.
- An area should have at least one vent and scrubber. Small rooms don't necessarily need them, if they are connected to bigger rooms by a door.
- Big rooms or hallways may have more than one vent and scrubber. Even bigger rooms don't need vents and scrubbers, as long as they are connected to another area that does have them.
- Exactly one APC is needed for every area that is to have functioning power. Outdoors or exterior areas don't need APCs.
- Areas can be bigger than a room, as long as they are close and logically perform similar functions. One combined area for all of the ship's crew quarters is fine. One area for crew quarters and warehouse, is not fine.

 

image.png.3c2e7a7b12e60bdd14b082775302f870.png

Windows on thrusters, or thrusters being visible from inside of the ship, is a very old mapping style. It looks bad, and makes no sense.

 

image.png.8e4d01e8510c093bc1b381602390f2f7.png

Ships and sites with active crew should feel lived in, and not only have things necessary for gameplay.
The crew should have some spare clothing, more than just what they spawn with, to be used if the clothing they spawn with is ruined or lost.
They crew should have some recreational facilities with things to do outside of "work" or whatever they do normally.
Neither of these need to be very extensive, don't need to have a whole recreational wing for every ship, or three spare outfits for the whole crew.
How much is needed depends on the ship or site, for example, military ships would have less recreation and only spare military uniforms, and not any "civilian" clothing.
But some is better than none at all.

 

- Mapping Style and Aesthetics

Spoiler

image.png.ab3b6d41f2d70eccfed296835adb974d.png

Areas and rooms should have some sort of decorations, ornaments, non-vital things that are not strictly required for gameplay.
Floor decals, full trash bins, potted plants, all kinds of clutter, things on desks, pens, someone's hat they left on a table, empty coffeecup, things like that.
Decorations make an area feel more lived in, like someone is actually using it, living there, and help to enable roleplay, even if it's just something to comment on.
Lack of decoration may feel "gamey", like a ship only exists to drive gameplay, or a site exists only to provide loot for the visitors.

 

image.png.7bc91ec5bb78eded8444a1ed697cc658.png

Bigger ships/stations/outposts should have maintenance tunnels.
Wires and pipes should be routed through these tunnels, and kept out of sight from visible areas as much as possible.

 

image.png.ace1563af459d7c302745617741eff87.png

If not sure how to fill up an empty room or area - more storage space is always good.
Possible ideas to fill storage space: canisters, tools, empty crates, random loot crates, food, any random gear that does not fit anywhere else.
Even just a few crates is better than leaving a room empty and boring.

image.png.b1cab40902fbfd55966654141adb86c3.png

Avoid overusing catwalks or grates indoors. They show pipes and wires, but also hide dirt, blood, etc.
Prefer putting grates on wire/pipe intersections, as to make following where they route to easier.
In maintenance tunnels, should avoid grates generally, as they make actually maintaining things harder and more annoying.

 

.

 

 

 

Edited by Dreamix
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...