View Single Post
Author Message
Pootis Spencer Ere
Junior Member
Join Date: Nov 2011
Old 10-19-2012 , 09:45   [TF2 | Mapping & Gameplay] TriggerHappy
Reply With Quote #1

This plugin will remain under development on an as-needed basis.

This plugin adds event trigger support to your custom maps.

NOTE:
Currently, this plugin only supports triggers for voicemenu commands and sudden death events.
I plan on adding more triggers in the future as the need arises or if someone requests a specific trigger.

How to use:
  1. Download the attached (zipped) trigger_brush FGD file, place it in your SourceSDK folder with the other FGD files
  2. Import the FGD file into hammer
  3. Create a trigger_brush brush-based entity
  4. Name said brush to "voicemenu X Y"
    >> the name of this brush indicates which voicemenu command the map will listen for.
    >> for a list of voicecommands, see here
    >> please note that you need to subtract 1 from the above list's indicies;
    >> (Calling medic is "voicemenu 0 0", NOT "voicemenu 1 1" [that's for "incomming"])
  5. Wire up your trigger's USE output however you want.
    >> Now whenever someone uses the specified voicemenu command,
    >>>> the trigger_brush's USE output should fire and whatever event you desire will occur.
    >> the !activator IS passed to the triggered I/O chain, should you need it to; this allows you to filter your inputs too!


For a demo, Please see the attached zip file for VMF & BSP map.
in the demo, a Medic bot should spawn whenever a BLU player calls for a medic; nothing will happen if a RED player calls for a medic as the trigger is filtered by team.
(demo requires sv_cheats 1 and depending on server team balance settings, the medic might be RED)


Important Notes:
The attached FGD file enables you to use trigger_brush entity. this entity is SOLID with no way to make it non-solid.
it's best to put it somewhere where nothing could collide with it (or cleverly texture it into part of your map, I don't care.)
Also, if you name your trigger_brush to one of the following below, the game engine itself will automatically trigger these events (this plugin does not trigger them)
  • game_playerdie Fires whenever a player dies. The person who dies is the !activator
  • game_playerkill Fires whenever a player kills another player. (game_playerdie also fires) The person who killed the player is the !activator
  • game_playerjoin Fires whenever a player joins the game. The person who joined is the !activator
  • game_playerspawn Fires whenever a player spawns. The person who spawned is the !activator
  • game_playerleave Fires whenever a player leaves the game. The person who left is the !activator

Mapping Ideas
Here's some ideas and possibilites this plugin could add to your maps:
  • spawn engineer buildings when someone says to
  • payload maps could "switch" tracks depending on voicemenu "go left" "go right"
  • payload maps could start/stop the cart on voicemenu "go" or "no"
  • lock/unlock doors in sudden death (maybe even remove spawn walls?)

...the possibilities are endless.




History:
0.2 - 19 Oct 2012 - Added support for Sudden Death events
>> teamplay_suddendeath_begin Fires when sudden death begins
>> teamplay_suddendeath_end Fires when sudden death ends
>>>> These triggers can be used to change the map layout, un/lock doors, maybe even destroy that wall between spawns... it's up to you

0.1 - 19 Oct 2012 - Inital release, only supports voicemenu commands
Attached Files
File Type: sp Get Plugin or Get Source (triggerhappy.sp - 1081 views - 2.1 KB)
File Type: zip TriggerHappyTest.zip (7.1 KB, 252 views)
File Type: zip trigger_brush.zip (1.1 KB, 346 views)
__________________
Common Aliases: Xyphos, [poni] Shutterfly, Pootis Spencer Ere

Mapping & Gameplay: AddCond | AreaCond | TrapKill | TriggerHappy

SlapTheStackers

Last edited by Pootis Spencer Ere; 10-19-2012 at 10:49.
Pootis Spencer Ere is offline