- Some properties can be assigned a variable by highlighting the property and pressing Options > Swap Variable/Constant.
- Use Rotate and Snap To Grid to neatly align and organize your objects. You can change the rotate Angle Snap Increment and snap to grid Grid Size in the module properties.
- In order to stay under budget for memory and network objects in your map, create your gameplay logic and set pieces first then add the modules to finish up your map.
- Keep testing your map as you build. It's easy to accidentally break a portion of your map that was just working.
- It might not be obvious what the player goals and objectives are. Use the Communication objects so that the player knows what to do.
- Use the Observation module, or another large empty module, to house all the logic for your map. A big, blank module will help keep everything organized and can help make troubleshooting easier. Using a separate module to store your entire game logic can help you make a different map based on the same logic.
- Use the "Save to my Downloaded Maps" option to download a map to your local drive. This lets you open the map in the editor and see how the original author accomplished a particular thing.
- Rename your variables, events and objects to make any future troubleshooting easier.
- Place a Module object anywhere inside a module to trigger events when a player enters that module.
- Make a Trigger volume invisible by setting its Show on Start property to false.
- Up to 12 AI can be alive at any time, additional demons will only spawn as AI are killed. When using hand-placed demons, it's up to you, the map author, to manage the AI. Control the order that demons spawn by disabling the Show On Start property on placed demons and Show them on demand. Alternatively, use the Single Demon Encounter object to spawn demons as needed.
- Player Resource and Team Resource objects hold a value for each player/team. All Player Resource inputs require a player as an activator. All Team Resource inputs require something that has a team (player, AI, etc) as an activator.
- Read the input/output descriptions as you follow a logic chain to figure out what the activator will be. Some inputs will behave unexpectedly if no activator or the wrong activator is passed in.
- Troubleshooting and Debugging a map can be hard. Narrow down the problem by moving the player start, inserting audio cues into your logic chains, setting up HUDs and using other temporary logic.
- While playtesting your map, keep a list of all the fixable things you notice. This will help you remember what to do when you get back into the editor.
- Try to keep all the lighting, FX, audio and prop items out of the modules until you're done building and testing logic. This keeps the clutter down during troubleshooting, which can prevent some frustration.
- Use Logic Chain Mode to look at the path of a signal. This can help in cluttered or complicated chains where moving the camera around can be difficult.
- Disable respawning by changing the Respawn Delay property in the Gameplay Settings object to a negative value like -1.0.
- Create Checkpoints by enabling/disabling Player Start objects.
- You can give your player Bigger Loadouts by using the Player Input object and a Player Loadout object for each weapon. When the player presses Weapon Switch, Give the next loadout to the player.
- The Gate object's outputs will only fire when a Test Gate input is signalled.