|
|
Line 1: |
Line 1: |
| The event/scripting system for Red is very powerful, yet easy to use. The basic philosophy behind it is that you LINK a TRIGGER to an EVENT(s). This system is very versatile and will let you create an almost unlimited number of special scripted sequences.
| | #REDIRECT:[[RED Objects#Events]] |
| | |
| An "Event" is a basic game action that occurs when it receives either an On and/or Off message. On messages can be sent from triggers, objects, or they can be received from other Events. Off messages are sent from the off state of events like the Switch Event, or are sent through an Invert Event. Most Events only respond to On messages (since most Events do a single thing which doesn’t need to be stopped with an Off message). Events must be linked to the trigger source so they know when to trigger. You link a trigger and event together by using the objects unique id number, or by just selecting the first object, then the second object, and hitting the "K" hot-key.
| |
| | |
| Events can also be linked to other Events to set up a "Chain reaction" of event all triggered from one source. For example, you might have a trigger which links to a Play_Sound Event (which plays a scream), and the Play_Sound Event could link to a Play_Animation Event (which plays an animation of an AI holding his head in agony).
| |
| | |
| All Events have an optional delay associated with them, which you can specify in the Event properties (CTRL-P or by right clicking over the selected event and selecting "Properties" from the pop-up menu). This will delay the action of the event by the specified amount of time, after an On or Off message is received.
| |
| | |
| Events can link to other objects, which is used to tell the Event which objects to affect. Each Event affects their linked objects in different ways, so refer to the Event list below for a detailed description of each event. The link HAS to go from the event to the object for it to work- even if the object is being used at the "trigger"!
| |
| | |
| ==Available Events==
| |
| Continuous Damage
| |
| Description
| |
| Cause the AI or Player which triggered the event to receive damage (use a trigger reset time of 0 to make the damage continuous).
| |
| | |
| On Response
| |
| Apply damage to the entity who triggered the event. Any linked objects will also receive damage.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Damage_per_second: Damage per second applied.
| |
| | |
| Damage_type: Generic, Brushing, Burning. Currently the only supported damage_type is Generic.
| |
| | |
| | |
| | |
| Cyclic Timer
| |
| Description
| |
| This Event will send an On message to all linked Events at a specified interval. This Event has to receive an On Message before it will begin sending out messages.
| |
| | |
| On Response
| |
| Begin sending On messages at the specified interval.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Time: The interval in seconds between sending On messages to all linked Events
| |
| | |
| Max Sends: The number of times the Event will send out On messages
| |
| | |
| Send Forever: If true, the Max Sends field is ignored, and the Cyclic Timer sends On messages forever
| |
| | |
| | |
| | |
| Drop Point Marker
| |
| Description
| |
| This is a special type of Event which doesn’t respond to On or Off messages. This Event is used as a position where AI will drop off objects while in AI_COLLECTING_MODE. This is how Grabber robots can drop their rocks off at a specific location.
| |
| | |
| On Response
| |
| None.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Explode
| |
| Description
| |
| This Event will cause an explosion to occur at the Event location. The explosion can be made to cause a geomod, and you can control the amount of damage caused by the explosion.
| |
| | |
| On Response
| |
| Make the explosion happen.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Damage: The amount of damage caused by the explosion. This is the damage that is applied to any object within the explosion range.
| |
| | |
| Type: Small, Medium, Large. This field isn’t properly supported yet. We need to list a selection of different explosions to choose from.
| |
| | |
| Geomod: If true, the explosion will apply a geomod at the center of the explosion. The hardness of the rock where the explosion occurs is used to determine if a geomod is possible.
| |
| | |
| | |
| Follow_Waypoints
| |
| Description
| |
| This event will force all linked objects to follow a specified waypoint list, with a specific following method.
| |
| | |
| On Response
| |
| Begin following the waypoints. An AI will use the closest waypoint as the location to begin the path following.
| |
| | |
| Off Response
| |
| Stop following the current waypoint path.
| |
| | |
| Parameters
| |
| Waypoint List: Name of the waypoint list that the AI should follow.
| |
| | |
| Always Face Player: If true, the AI will always face the player while following their waypoints
| |
| | |
| Max Speed Scale (0-100): Used to make the AI move slower while following waypoints
| |
| | |
| Follow Method: This determines how the AI will behave when the last waypoint node is reached. The choices are:
| |
| 1. One way: follow the waypoints to the last node and stop.
| |
| 2. Loop: follow the waypoints to the last node, then return to the start and repeat
| |
| 3. Ping Pong: follow the waypoints to the last node, then follow the nodes back to the start (repeat).
| |
| | |
| | |
| | |
| Follow_Player
| |
| Description
| |
| This Event will force all linked objects to follow and protect the Player. This should only be used to make Hendrix follow (or stop following) the Player.
| |
| | |
| On Response
| |
| Make linked entities follow the Player.
| |
| | |
| Off Response
| |
| Make linked entities stop following the Player.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Give_Item_To_Player
| |
| Description
| |
| This Event will make the player pick up a specific item. Items are normally automatically picked up by the player when he gets close enough to them. All game items are specified in items.tbl.
| |
| | |
| On Response
| |
| Give the player the specified item.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Item: Item class name, which is selectable from a drop-down list of all items from items.tbl.
| |
| | |
| | |
| | |
| Goal_Check
| |
| Description
| |
| This Event can either block or forward On messages, depending on the state of an associated goal_set Event.
| |
| | |
| On Response
| |
| Foward On messages if min_count exceeds the current count value of the associated goal_set Event
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Goal Name: Script name for the associated Goal_Set Event
| |
| Minimum Count: The miniumum value that the associated Goal_Set Event must have before forwarding messages
| |
| | |
| | |
| | |
| Goal_Set
| |
| Description
| |
| This Event will increment a count variable every time it receives an On message (Off messages will cause the count value to decrement).
| |
|
| |
| On Response
| |
| Increment count by one.
| |
| | |
| Off Response
| |
| Decrement count by one.
| |
| | |
| Parameters
| |
| Start Count: The inital value of the count variable (this will be zero in most cases).
| |
| | |
| | |
| | |
| Goto
| |
| Description
| |
| This Event will make all linked entities travel to the Event location.
| |
| | |
| On Response
| |
| Make linked entities start moving towards Event location.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Always Face Player: If true, the AI will always face the player while following their waypoints
| |
| Max Speed Scale (0-100): Used to make the AI move slower while following waypoints
| |
| | |
| | |
| | |
| Goto_Player
| |
| Description
| |
| This Event will make all linked entities travel to the Player position. The linked entities will continue to pathfind to the Player until they have line-of-sight. When the entities can see the Player, they will return to their default AI.
| |
| | |
| On Response
| |
| Make linked entities start moving towards the Player.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Heal
| |
| Description
| |
| This Event will add life to all the linked objects. This Event can be used to damage events by using a negative Life Delta value.
| |
| | |
| On Response
| |
| Add the Event Life Delta value to the life of all linked objects.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Life Delta: How much life to add (negative amount will cause damage)
| |
| | |
| | |
| | |
| Invert
| |
| Description
| |
| This Event will change On messages to Off messages (and Off to On) before forwarding them to any linked Events.
| |
| | |
| On Response
| |
| Change message to Off.
| |
| | |
| Off Response
| |
| Change message to On.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Level_Transition_Marker
| |
| Description
| |
| This is a special type of Event which doesn’t respond to On or Off messages. This Event is used to maintain the correct positions and orientations off all objects in the transition areas between levels. This Event needs to be placed in the location of the trigger which causes level loading in the other level involved in the transition.
| |
| | |
| On Response
| |
| None.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Load_Level
| |
| Description
| |
| This Event will cause the specified level to load. The Player will be taken to the new level seamlessly.
| |
| | |
| On Response
| |
| Load the specified level.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Filename: Disk filename (including the .d4l extension) of the level to load.
| |
| Start Marker id: The unique id of the Drop_Point_Marker associated with the level transition.
| |
| | |
| | |
| | |
| Look_At
| |
| Description
| |
| This Event will cause any linked AI to turn and face the Event location.
| |
| | |
| On Response
| |
| Make linked AI look at the Event.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Play_Sound
| |
| Description
| |
| This Event will cause a sound to play. The sound can be a 3D or 2D sound, and it can be made to loop.
| |
| | |
| On Response
| |
| Start playing the sound.
| |
| | |
| Off Response
| |
| Stop the sound, if it is playing.
| |
| | |
| Parameters
| |
| Sound Filename: Disk filename of the sound to play (including .wav extension).
| |
| | |
| Min Distance: Distance (in meters) where the sound begins to drop off in volume. If you don’t want the sound to be 3D, set the Min Distance to zero.
| |
| | |
| Looping: If true, the sound will play looping (until you stop it by sending an Off message to this Event).
| |
| | |
| | |
| | |
| Make_Fly
| |
| Description
| |
| This Event will make the linked AI enter fly mode. If the AI is already flying, this Event does nothing. This Event can only make AI fly if it normally has the ability (i.e., this Event can’t make a Cave Slug fly).
| |
| | |
| On Response
| |
| Make linked AI enter fly mode.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Make_Walk
| |
| Description
| |
| This Event will make the linked AI enter walk mode. If the AI is already walking, this Event does nothing. This Event can only make AI walk if it normally has the ability (i.e., this Event can’t make a Grabber walk).
| |
| | |
| On Response
| |
| Make linked AI enter walk mode.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Message
| |
| Description
| |
| This Event will make a sound file play and display the associated text on the Player HUD.
| |
| | |
| On Response
| |
| Play the message.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Persona: Selectable from drop-down list of names which is generated from personas.tbl. Select "none" if you don’t want the message to be from a persona.
| |
| | |
| Voice Filename: Disk filename (including .wav extension) of the sound file to play.
| |
| | |
| | |
| | |
| Play_Animation
| |
| Description
| |
| This event will cause a linked AI to play a specific animation. If the animation is a state animation (i.e., a looping animation) then it will replace the current animation state for the AI. If the animation is an action animation (i.e., a one-time animation) then it is blended with the current state.
| |
| | |
| On Response
| |
| Play the animation.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Animation: Name of the animation. This is selectable from a list of possible animations for the object that is linked.
| |
| | |
| Hold Last Frame: If true, the model will stay in the last frame of animation. This is only valid if the animation is defined as an action animation.
| |
| | |
| | |
| | |
| Remove_Object
| |
| Description
| |
| This Event will destroy all objects linked to the event. Objects will disappear instantly (i.e., without their death sequence).
| |
| | |
| On Response
| |
| Kill all linked objects immediately.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Set_Friendliness
| |
| Description
| |
| This Event will set the Friendliness of all linked objects.
| |
| | |
| On Response
| |
| Change the Friendliness of an entity.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Friendliness: The friendliness is selectable from a drop-down list, and consists of the following choices:
| |
| | |
| 1. Unfriendly: AI will attack the player on sight.
| |
| 2. Neutral: AI will only attack the player if provoked.
| |
| 3. Friendly: AI will not attack the player, and may attack entities that are attacking the player.
| |
| 4. Outcast: AI will attack anything it sees.
| |
| | |
| | |
| | |
| Set_Light_State
| |
| Description
| |
| This Event will set the state of any linked lights. Currently this event can set a light on or off, but any light related changes (like making a light flash, change color, etc.) can be data within this event.
| |
| | |
| On Response
| |
| Change the state of all linked lights.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| State: On or Off
| |
| | |
| | |
| | |
| Slay_Object
| |
| Description
| |
| This Event will kill all linked objects, and allow their death sequence to play.
| |
| | |
| On Response
| |
| Kill all linked objects.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Shake_Player
| |
| Description
| |
| This Event will shake the viewpoint of the Player.
| |
| | |
| On Response
| |
| Start shaking the Player camera.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Magnitude: How strong to make the shaking. This value is the max amplitude of the shake in meters.
| |
| | |
| Time: How long to shake the camera in seconds.
| |
| | |
| | |
| | |
| Shield
| |
| Description
| |
| This Event will add the Shield Delta value to the shield of all linked objects.
| |
| | |
| On Response
| |
| Add Shield Delta to all linked objects shields.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Shield Delta: The amount of shield to add (you can decrease shield by using a negative number here).
| |
| | |
| | |
| | |
| Shoot_At
| |
| Description
| |
| This Event will cause all linked AI to shoot at the Event location. The AI will continue to shoot at the Event until an Off message is received.
| |
| | |
| On Response
| |
| Make all linked AI attack the Event location.
| |
| | |
| Off Response
| |
| Make all linked AI stop attacking the Event location.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| Shoot_Once
| |
| Description
| |
| This Event will make all linked AI shoot once in the direction they are currently facing.
| |
| | |
| On Response
| |
| Fire a single time.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Shoot Type: Primary, Secondary, Flare. What type of weapon to use.
| |
| | |
| | |
| | |
| Spawn_Object
| |
| Description
| |
| This Event will cause a specific object type to be created. The object is created at the Event location, with an identity matrix orientation. [FIXME: we may want to give events an orientation]
| |
| | |
| On Response
| |
| Spawn the object at the Event location.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Object Type: Entity, Clutter, Item. Selectable from a drop-down list.
| |
| | |
| Object Class: The classname of the object. Selectable from a drop-down list. The choice here depends on the Object Type that has been selected.
| |
| | |
| | |
| | |
| Swap_Textures
| |
| Description
| |
| This Event will cause the specified textures (up to 2 per Event) to be used on all linked objects.
| |
| | |
| On Response
| |
| Swap the textures.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Texture Num: Texture index to swap (starts from 0)
| |
| | |
| Texture Filename: Disk filename (including extension) of the texture bitmap to use
| |
| | |
| | |
| | |
| Switch
| |
| Description
| |
| This Event behaves like a switch that remembers it’s state (on or off). This Event can be used to turn lights on or off, and can be used to let the player activate special events. If the Event is linked to a VFX, this VFX is used as the model for the switch (the default state of the VFX should be off, with the animation taking the VFX to the on state).
| |
| | |
| On Response
| |
| Toggle the state of the switch. The behavior of the switch is controlled through the Event parameters.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Initial State: The initial state of the switch (either on or off)
| |
| | |
| Behavior: This says what kind of signal the switch will send. (toggle between on and off, always send an on, always send an off)
| |
| | |
| Sound: Disk filename (including the .wav extension) of the sound to play when the switch is thrown
| |
| | |
| Max Throws: How many times the switch can be thrown
| |
| | |
| Infinite Throws: If true, the Max Throws parameter is ignored, and the switch can be thrown an infinite number of times.
| |
| | |
| | |
| | |
| Switch_Model
| |
| Description
| |
| This Event will change the model of all linked objects to the model filename that is contained in the Event.
| |
| | |
| On Response
| |
| Change the model.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| Model filename: Disk filename (with extension) of the model to switch to.
| |
| | |
| | |
| | |
| Teleport
| |
| Description
| |
| This Event will teleport all linked objects to the Event location. There are no special effects associated with the teleportation.
| |
| | |
| On Response
| |
| Teleport all linked objects.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| | |
| When Dead
| |
| Description
| |
| This Event will send an On message to all linked Events when all linked objects have died. This Event is used when you want to do something when a specific object has been destroyed.
| |
| | |
| On Response
| |
| None.
| |
| | |
| Off Response
| |
| None.
| |
| | |
| Parameters
| |
| None.
| |
| | |
| | |
| [[Category: Red Faction]]
| |
| [[Category: RF1 Editing]]
| |