advanced_entities_explanation
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| advanced_entities_explanation [2023/05/24 21:31] – frank_lee_smith | advanced_entities_explanation [2026/04/06 23:28] (current) – frank_lee_smith | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ================Advanced Entities Explanation================ | + | ================Doors and Elevators================ |
| - | This page is for all the optional entities that will enhance | + | This page will go over rotating doors, sliding doors, and elevators |
| + | ======Rotating Doors====== | ||
| + | A door that will need to rotate on a pivot to open. | ||
| - | =====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. | + | {{:f9x8q37.png? |
| - | To implement, use a trigger or button to activate ttt_tester with the // | ||
| - | For more in-depth instructions check below. | ||
| - | 1. Create a confined space for a player | + | To implement, create a new empty in the outliner and add the **Rotating Door** component. The model for your door will also need to be added to this gameobject via the Model Renderer component. |
| - | 2. Create | + | **Note: The Pivot for the door model you use must have the pivot set to the side the door will rotate on** |
| - | 3. Create a **trigger_multiple** in the confined space and uncheck the //Enabled// object property. | + | {{:v0sqw0h.png? |
| - | {{:: | ||
| + | By default, the door will be set to a straight 90 degree pivot. This can be modified in the object properties or dragging the pivot gizmo. | ||
| - | 4. Add an output on the trigger to remove itself. | + | ======Sliding Doors====== |
| - | {{:: | + | A door that will open and close by moving back and forth in one direction. |
| + | {{: | ||
| - | 5. Add an **Activate** output | + | To implement, create a new empty in the outliner and add the Linear Mover component. The model for your door will also need to be added to this gameobject via the Model Renderer component. The pivot does not matter for this type of door. |
| - | {{:: | + | The **Move Delta** variable determines how far the door moves when activated |
| - | 6. Set OnPass and OnFail outputs to something the play can see like red and green dynamic lights turning on. | + | {{:9jqr4sp.png? |
| - | {{:: | + | ======Elevator====== |
| + | An elevator needs multiple gameobjects to function. | ||
| - | 7. Hook up a button to close the door for 6 - 10 seconds, then open it. | + | Currently, support is in for two stop elevators only. |
| - | 8. Add an output to the same button to the **trigger_multiple** to enable after the tester door closes. | + | ====Path Track==== |
| - | 9. Clean up the system | + | The first thing you will need is a **Path Track**. Create an empty gameobject |
| - | Congrats, you just made your first tester! | + | {{:: |
| - | **Tips** | + | ====Path Mover==== |
| - | - Give the tester time for it the " | + | |
| - | - Testers are implemented best with Traitor Rooms being close by to invite some counterplay | + | |
| - | - Many testers will allow players to " | + | |
| - | - 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====== | + | This will be the elevator itself. Create an empty gameobject and add a **Path Mover** component. Give the gameobject itself a unique name. |
| - | **ttt_role_button** is what is typically called the " | + | {{::tfs9034.png? |
| - | {{: | + | Add a **Model Renderer** for the elevator model on this object. Make sure your elevator model has collisions. |
| - | Important Object Properties: | + | The **Track Name** property MUST be filled with the same unique name the **Path Track** was given. |
| - | **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. | + | ====Path Point==== |
| - | **Delay** - How long until the button can be used again. Will have no delay at 0. | + | You will need to create two separate gameobjects and add a **Path Point** to each. |
| - | **Remove on use** - Will delete the button after being used once. Useful for one time traps like explosions | + | {{::xw2qvf1.png? |
| - | **Tips** | + | Name them Point 1 and Point 2 in the **Point name** variable in the object properties. |
| - | * Use sparingly, trap heavy maps can be annoying and unbalanced. The best maps have only a few traps at most. | + | {{::1nnth0r.png? |
| - | * 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====== | + | Point 1 will need to have the same position/ |
| - | **ttt_text_popup** allows for a message to pop up on the player' | + | ====Buttons==== |
| - | {{:: | + | Your elevator will need a button for each position of the elevator. Start by creating each of your buttons by creating a new empty gameobject and adding a **TTT Button Component** |
| - | 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 | + | Add a **Model Renderer** with the model your button will be using. Make sure your model has collisions. |
| - | **Popup Text** - Will determine what the main message contains | + | To hook your buttons into the elevator find the **Objects** section in the object properties and add an //Targets On Activated// item. |
| - | **Popup Title** - Will determine the title above the main message. Useful to clarify a cooldown or if single use | + | {{::00tj6p2.png? |
| - | ======ttt_credit_adjust====== | + | In the popup, you need to set the name to the unique name of the gameobject you made for the elevator itself. |
| - | **ttt_credit_adjust** will remove or give credits to the user. This is useful for something like a role button that costs a credit | + | Set the input to " |
| - | To implement simply have the button/ | + | The Payload will need to be set to the point that the elevator goes to when pressed while the elevator is at the button' |
| - | + | ||
| - | ======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 | + | |
| - | + | ||
| - | **World Model** - This will determine what prop spawns. When selected it will show the model in hammer exactly where it will spawn in. | + | |
| + | {{:: | ||
| + | If all of this is set up properly your elevator will be functional with two buttons and two back and forth stops. | ||
advanced_entities_explanation.1684963919.txt.gz · Last modified: 2023/05/24 21:31 by frank_lee_smith