User Tools

Site Tools


advanced_entities_explanation

Advanced Entities Explanation

This page is for all the optional entities that will enhance your TTT map and make it more interesting. It is HIGHLY recommended that you use these sparingly. The best maps use things like traitor traps and testing tastefully and in a balanced way. It's better to not use these entities than just plopping them in for the sake of it

ttt_tester

ttt_tester is the entity used to create a Traitor Tester. This functions as a way to test whether someone is an Innocent or a Traitor. Typically, it is implemented with some catch or has a way for traitors to counter it as to not make it too easy to get everyone proven.

To implement, use a trigger or button to activate ttt_tester with the Activate output. Once activated ttt_tester will check the role of who triggered the button/trigger and do either a OnPass or on OnFail output for innocent and traitor respectively.

For more in-depth instructions check below.

1. Create a confined space for a player to get tested in, include an ent_door or ent_platform to enclose while testing.

2. Create the ttt_role_check entity, place it near the tester (doesn't matter where), and give it a name.

3. Create a trigger_multiple in the confined space and uncheck the Enabled object property.

4. Add an output on the trigger to remove itself.

5. Add an Activate output to send to the ttt_tester entity

6. Set OnPass and OnFail outputs to something the play can see like red and green dynamic lights turning on.

7. Hook up a button to close the door for 6 - 10 seconds, then open it.

8. Add an output to the same button to the trigger_multiple to enable after the tester door closes.

9. Clean up the system and play with the timing until it works and feels right

Congrats, you just made your first tester!

Tips

  1. Give the tester time for it the “test” the player. Instant testers are no fun and are not balanced
  2. Testers are implemented best with Traitor Rooms being close by to invite some counterplay
  3. Many testers will allow players to “break” them by destroying something in the room, should have a lot of HP
  4. Some maps will force players to find something to activate the tester or find fuel around the map to power for a test

ttt_role_button

ttt_role_button is what is typically called the “Traitor Button.” It is an entity that allows a set role to press a button they see in their vision if within it's range by pressing E. When pressed it will be able to send outputs similar to ent_button.

Important Object Properties:

Role - will determine which role can see it, can be used for expanded roles by typing their name

Description - Tells the player what it does, will show up next to the button when they look at it.

Delay - How long until the button can be used again. Will have no delay at 0.

Remove on use - Will delete the button after being used once. Useful for one time traps like explosions

Tips

  • Use sparingly, trap heavy maps can be annoying and unbalanced. The best maps have only a few traps at most.
  • You can use this entity to make Detective Rooms by making a Detective button on a door
  • Innocent buttons should be avoided unless you have a really good reason to use it

ttt_text_popup

ttt_text_popup allows for a message to pop up on the player's screen when receiving an input.

There are a few important Object Properties:

Target Players - Allows for the entity to send the message to the activator, everyone, or a specific team

Popup Text - Will determine what the main message contains

Popup Title - Will determine the title above the main message. Useful to clarify a cooldown or if single use

ttt_credit_adjust

ttt_credit_adjust will remove or give credits to the user. This is useful for something like a role button that costs a credit to activate.

To implement simply have the button/trigger send an Adjust output upon activation to the ttt_credit_adjust. The amount can be set in the Object Properties by changing the Adjust Amount. To remove one credit make the amount -1.

ttt_force_win

ttt_prop_spawner

Entity that will spawn a prop when sent the SpawnProp output. It will spawn the prop every time it gets a signal.

Important Object Properties:

Is Static - Determines if it should spawn in with physics or just stay static.

Tags - Gives props spawned by the entity the tags. This is useful for something like a key that needs a tag to work for a certain trigger.

World Model - This will determine what prop spawns. When selected it will show the model in hammer exactly where it will spawn in.

ttt_player_clip

s&box doesn't currently support a way for only props to be affected by clips, we added a setup that allows for that. ttt_player_clip will only block players and nothing else. This is useful for things like prop collectors that you don't want players getting into.

To implement select the entity in entity tab and then double click in the world. From there just make a box with the dimensions where you want to block the player. Be sure to give the box the toolsinvisible.vmat material unless it needs to be seen.

advanced_entities_explanation.txt · Last modified: 2023/06/11 04:00 by frank_lee_smith

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki