X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=scripts%2Fentities.ent;h=c3c83d16f5494b0a86ef261030a0e8161510bfb9;hb=6b609484c4af0e5a064f87595675808e2ac67643;hp=b3b516835967177c0bc53619b9ab29ab7b986a57;hpb=db6ca2c6975b623df2ae3e460d3a372437d1ec5e;p=xonotic%2Fxonotic-maps.pk3dir.git diff --git a/scripts/entities.ent b/scripts/entities.ent index b3b51683..c3c83d16 100644 --- a/scripts/entities.ent +++ b/scripts/entities.ent @@ -128,13 +128,14 @@ When a button is touched by a player, it moves in the direction set by the " number of seconds button stays pressed (default 1, -1 = return immediately). lip remaining at end of move (default 4 units). (default 0) if set to any non-zero value, the button must take damage (any amount) to activate. +Noise that is played when the button is activated -------- SPAWNFLAGS -------- if set, splash damage cannot activate the door, only direct damage can (requires health to be set) if set, all the damage needs to be done in one hit (requires health to be set) -A conveyor. Solid brush version. +A conveyor. Solid brush version. Will run forever if it's not targeted. Use relay_activate, relay_deactivate or relay_activatetoggle to activate/deactivate it. -------- KEYS -------- if set, it can be turned on/off determines the opening direction @@ -144,17 +145,19 @@ A conveyor. Solid brush version. -A conveyor. Nonsolid trigger version. +A conveyor. Nonsolid trigger version. Use relay_activate, relay_deactivate or relay_activatetoggle to activate/deactivate it. -------- KEYS -------- if set, it can be turned on/off determines the opening direction movement speed (200 default) -------- SPAWNFLAGS -------- the conveyor is turned on if not triggered +-------- NOTES -------- +Almost the same as func_conveyor. -Normal sliding door entity. By default, the door will activate when player walks close to it or when damage is inflicted to it. +Normal sliding door entity. By default, the door will activate when player walks close to it or when damage is inflicted to it. Can be locked with keys. If DOOR_DONT_LINK is not set, the door will be linked with all doors it touches. Note however that for linked doors to work properly, it is necessary that ALL linked doors have SOME volume of common area (that is, there must be a point that is part of ALL doors). -------- KEYS -------- is printed when the door is touched if it is a trigger door and it hasn't been fired yet, or death message if dmg is set @@ -168,16 +171,17 @@ If DOOR_DONT_LINK is not set, the door will be linked with all doors it touches. lip remaining at end of move (8 default) damage to inflict when blocked (when triggered and someone is in the way) when 1, use default door sounds -sound when the door opens -sound when the door closes -keys required to open this door. +sound when the door is unlocked +sound when the door stops moving +sound when the door is moving +sound when the door can't be unlocked +keys required to open this door (1 for gold key, 2 for silver key, 3 for both) -------- SPAWNFLAGS -------- causes the door to move to its destination when spawned, and operate in reverse. It is used to temporarily or permanently close off an area when triggered (not useful for touch or damage triggered doors). the door won't link with another door it touches -causes the door to open only if the activator holds a gold key (Q1 compatibility). -causes the door to open only if the activator holds a silver key (Q1 compatibility). causes the door to wait in both the start and end states for a trigger event. if set, splash damage cannot activate the door, only direct damage can (requires health to be set) +crush players hit by the door instantly -------- NOTES -------- More information about keys can be found in item_key description. @@ -189,7 +193,7 @@ If DOOR_DONT_LINK is not set, the door will be linked with all doors it touches. BIDIR makes the door work bidirectional, so that the opening direction is always away from the requestor. The usage of bidirectional doors requires two manually instantiated triggers (trigger_multiple), the one to open it in the other direction must have set trigger_reverse to 1. -BIDIR_IN_DOWN will the door prevent from reopening while closing if it is triggered from the other side. +BIDIR_IN_DOWN will prevent the door from reopening while closing if it is triggered from the other side. -------- KEYS -------- is printed when the door is touched if it is a trigger door and it hasn't been fired yet, or death message if dmg is set death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end) @@ -200,8 +204,11 @@ BIDIR_IN_DOWN will the door prevent from reopening while closing if it is trigge wait before returning (3 default, -1 = never return) damage to inflict when blocked (when triggered and someone is in the way) when 1, use default door sounds -sound when the door opens -sound when the door closes +sound when the door is unlocked +sound when the door stops moving +sound when the door is moving +sound when the door can't be unlocked +keys required to open this door (1 for gold key, 2 for silver key, 3 for both) -------- SPAWNFLAGS -------- causes the door to move to its destination when spawned, and operate in reverse. It is used to temporarily or permanently close off an area when triggered (not useful for touch or damage triggered doors). the door won't link with another door it touches @@ -209,13 +216,18 @@ BIDIR_IN_DOWN will the door prevent from reopening while closing if it is trigge if set, splash damage cannot activate the door, only direct damage can (requires health to be set) rotate around the X axis rotate around the Y axis +door can open in both directions +don't reopen the door while closing if it's triggered from the wrong side +crush players hit by the door instantly +-------- NOTES -------- +This entity is similar to func_door. Basic secret door. Slides back, then to the side. Angle determines direction. Opens when targeted or when shot; does not create its own trigger field like func_door does. -------- KEYS -------- movement type (1 = linear, 2 = cosine [default]) -# of seconds before coming back +time in seconds before coming back, -1 keeps the door open forever first entity key with one-line description second entity key with one-line description override WIDTH to move back (or height if going down) @@ -223,11 +235,11 @@ Basic secret door. Slides back, then to the side. Angle determines direction. Op damage to inflict when blocked (2 default) text to display when activating the door, or death message if dmg is set death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end) +when 1, use default door sounds sound when opening backwards or closing sound when opening sideways sound when stopping -------- SPAWNFLAGS -------- -only work once, then stay open 1st move is left of arrow 1st move is down from arrow never respond to shots @@ -264,9 +276,9 @@ Rising platform the player can ride to reach higher places. Plats must always be if set, this will determine the total amount of vertical travel of the plat. damage to inflict on player when he blocks operation of plat. Plat will reverse direction when blocked. if set, the trigger that points to this will lower the plat each time it fires. The plat lowers and lifts someone up later. -2 for alternate sound set, -1 for silence, or use the fields below -platform starts moving sound -platform stop sound +2 for alternate sound set, 0 for silence, or use the fields below +platform starts moving sound +platform stop sound kill message, when someone gets killed by this plat death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end) -------- SPAWNFLAGS -------- @@ -280,7 +292,7 @@ This is an invisible area like a trigger, which rain falls inside of. -------- KEYS -------- falling direction (should be something like '0 0 -700', use the X and Y velocity for wind) sets color of rain in the Quake palette (default 12 - white) -adjusts density, this many particles fall every second for a 1024x1024 area, default is 2000 +adjusts density, this many particles fall every second for a 1024x1024 area (on average), default is 2000 @@ -303,7 +315,7 @@ This is an invisible area like a trigger, which snow falls inside of. -------- KEYS -------- falling direction (should be something like '0 0 -300', use the X and Y velocity for wind) sets color of snow in the Quake palette (default 12 - white) -adjusts density, this many particles fall every second for a 1024x1024 area, default is 2000 +adjusts density, this many particles fall every second for a 1024x1024 area (on average), default is 2000 @@ -313,10 +325,9 @@ Point entity with EF_STARDUST applied. This will spawn a particle cloud with mos Trains are moving solids that follow a cycle of path_corner entities. Origin brushes are NOT supported; they use the "mins" corner as reference (that is, lowest x, y, and z coordinates). At each node, the train's mins corner hits exactly the path_corner. -Trains always start on in the game. +Trains always start on mapstart unless NEEDACTIVATION is set. Trains do not damage the player when blocked. Trains cannot emit sound. -Trains are not trigger-able or toggle-able. Trains cannot be block-stopped just by getting in their way, the player must be wedged between the train and another obstacle to block it. -------- KEYS -------- default/initial speed of train (default 100 or overridden by speed value of targeted path_corner) @@ -327,6 +338,10 @@ Trains cannot be block-stopped just by getting in their way, the player must be interval to apply dmg to a player who is in the way death message when a player gets crushed death message when someone gets pushed into this (default: "was thrown into a world of hurt by"). The # character is replaced by the attacker name if present (and it instead does not get appended to the end) +-------- SPAWNFLAGS -------- +don't use the direct path to the next target, instead create a curved path using the current path_corner's curvetarget +turn the train when it reaches a path_corner +train needs to be triggered to start @@ -434,6 +449,12 @@ Pink team's player spawning location, but there is no game mode to use this yet. when 1, only bots can spawn here; when 2, only humans can spawn here (be careful with these, or the game will crash because someone cannot spawn) + +Acts as a checkpoint to re-spawn at +-------- KEYS -------- +when targeted, this will set the activator's spawn point temporarily to this entity. It is reset upon re-spawn. + + Large Armor (default 100 armor points) -------- KEYS -------- @@ -676,32 +697,6 @@ This is the only correct way to put keys on the map! itemkeys MUST always have exactly one bit set. - -SILVER key. ------------KEYS------------ -color of the key (default: '.9 .9 .9'). -message to print when player picks up this key. -custom model to use. -custom sound to play when player picks up the key. --------- SPAWNFLAGS -------- -the item will float in air, instead of aligning to the floor by falling ----------NOTES---------- -Don't use this entity on new maps! Use item_key instead. - - - -GOLD key. ------------KEYS------------ -color of the key (default: '1 .9 0'). -message to print when player picks up this key. -custom model to use. -custom sound to play when player picks up the key. --------- SPAWNFLAGS -------- -the item will float in air, instead of aligning to the floor by falling ----------NOTES---------- -Don't use this entity on new maps! Use item_key instead. - - Instagib ammo. Always contains 5 (g_instagib_ammo_drop) shots. @@ -803,11 +798,11 @@ By this you see that you HAVE to specify fade for a linear light... use values b -Laser beam emitter. Note that for the laser to be deadly, it has to start OUTSIDE the player's collision box. To ensure this, you may want to put this entity inside the walls (or directly on their surface), or cover it with a playerclip brush. +Laser beam emitter. Note that for the laser to be deadly, it has to start OUTSIDE the player's collision box. To ensure this, you may want to put this entity inside the walls (or directly on their surface), or cover it with a playerclip brush. Can be controlled by relays. -------- KEYS -------- target_position the laser targets (may be another entity, preferably target_position, possibly controlled by misc_follow) name of particle effect for the beam end point (see effectinfo.txt; default is laser_deadly if dmg is set, and none if not) -color of the laser beam (default: red, that is, 1 0 0) +color of the laser beam (default: red, that is, 1 0 0) damage inflicted by the beam per second, or -1 for an instant-death ray name to target this (then its state is toggled) when set, makes a dark laser of the given strength; may be combined with colormod @@ -820,7 +815,7 @@ Laser beam emitter. Note that for the laser to be deadly, it has to start OUTSID the laser passes through solid (faster rendering on clientside); non-FINITE lasers then never display their impact effect "mdl"! the team that owns this will NOT get hurt -------- NOTES -------- -Use trigger_monoflop if you want the laser to turn off for a while, then turn back on. +Use trigger_monoflop and relay_activatetoggle if you want the laser to turn off for a while, then turn back on. When the laser's target has itself target set, its targets are triggered when someone enters or leaves the laser. @@ -1080,10 +1075,12 @@ All path_corner entities of a train have to connect in a circular manner, while triggered when a func_train stops at this target triggered when a func_train stops at this target triggered when a func_train stops at this target -instead of triggering ALL matched entities, trigger ONE of them by random +choose a random next corner from the list of all path_corners with targetname specified in "target" the train following the path or the previous path_corner in the path points to this. speed of func_train while moving to this path corner. If unset, the value from the func_train will be used. number of seconds func_train will pause on this path corner before moving to next path corner (default: 0.1; to not wait, set this to -1 +-------- SPAWNFLAGS -------- +train needs to be triggered to move to this corner @@ -1144,7 +1141,6 @@ The sound name may also be of the form *soundname, and in that case the respecti -------- SPAWNFLAGS -------- the sound is looped and initially plays (the sound file MUST have the LOOP_START vorbis comment then!). It can be toggled by a trigger. the sound is looped and initially does not play (the sound file MUST have the LOOP_START vorbis comment then!). It can be toggled by a trigger. -the sound plays with no attenuation (same as setting atten to -1) the sound is played to the activator only when triggered (cannot be combined with LOOPED_ON and LOOPED_OFF) @@ -1159,7 +1155,7 @@ Monster spawnpoint for Invasion Acts as an intermediary for an action that takes multiple inputs. -After the counter has been triggered "count" times, it will fire all of its targets and remove itself. +After the counter has been triggered "count" times, it will fire all of its targets. -------- KEYS -------- how many times this needs to be triggered to activate its targets trigger all entities with this targetname when triggered @@ -1169,6 +1165,7 @@ After the counter has been triggered "count" times, it will fire all o remove all entities with this targetname when triggered -------- SPAWNFLAGS -------- don't print a "2 more to go..."-like message when triggered +fire at every count (behaves like trigger_multiple with limited shots) @@ -1537,7 +1534,7 @@ NOTE for race_place: when the race starts after the qualifying, the player with -A brush that emits particles. +A brush that emits particles. Can be (de)activated with relays. -------- KEYS -------- particle effect name from effectinfo.txt when positive, number of particles to emit per second; when negative; number of particles to emit per second and 64^3 block @@ -1548,7 +1545,7 @@ A brush that emits particles. sound to play when the particle is emitted distance attenuation of the sound (a value from 0.1 to 3.9), default is 0.5; set to -1 for no attenuation (global sound) volume of the sound -name to target this (then its state is toggled) +name to target this (use relays) emitter class from the BGM script attack time of the effect strength (0 to 3.9) decay time of the effect strength (0 to 3.9) @@ -1556,10 +1553,10 @@ A brush that emits particles. release time of the effect strength (0 to 3.9) -------- SPAWNFLAGS -------- when targeted, the particle emitter will start switched on -only send the full amount of impulse particles when the entity is triggered +only send the full amount of impulse particles when the entity is toggled on/off only emit particles if the emitter brush is in the current PVS -------- NOTES -------- -Use trigger_monoflop if you want the particles to turn off for a while, then turn back on. +Use trigger_monoflop and relay_activatetoggle if you want the particles to turn off for a while, then turn back on. A BGM script is a .bgs file named like the map, in the maps directory. Its format is lines of the form <emitter class> <time since start of background music> <0 if the emitters are to be switched off, >0 and <=1 if they are to be switched on> e.g. @@ -1568,6 +1565,30 @@ e.g. The lines MUST be sorted by emitter class as primary key, and by the time since start of the BGM as secondary key. + +A brush that emits sparks. Can be (de)activated with relays. +-------- KEYS -------- +extra velocity jitter amount +number of particles to emit per second (min 0.5, default 2.5) +particle count multiplier (per spawned particle) +when set, trace direction (particles will then be emitted from the surface the trace hits); the length of the vector is used as strength of taking the normal of the trace into account +sound to play when the particle is emitted +distance attenuation of the sound (a value from 0.1 to 3.9), default is 0.5; set to -1 for no attenuation (global sound) +volume of the sound +name to target this (use relays) +emitter class from the BGM script +attack time of the effect strength (0 to 3.9) +decay time of the effect strength (0 to 3.9) +sustain level of the effect strength (0.1 to 1, set to -1 to disable sustain) +release time of the effect strength (0 to 3.9) +-------- SPAWNFLAGS -------- +when targeted, the particle emitter will start switched on +only send the full amount of impulse particles when the entity is toggled on/off +only emit particles if the emitter brush is in the current PVS +-------- NOTES -------- +Specialised version of func_pointparticles + + "Flip-flop" trigger gate... let's only every second trigger event through -------- KEYS -------- @@ -1610,6 +1631,29 @@ Triggers once when the game starts, then no longer does anything. wait so many seconds before triggering + +A brush that when entered changes the player's view to a position between target and target2, useful for side-scrolling stages +-------- KEYS -------- +should point to a target_viewlocation_start entity +should point to a target_viewlocation_end entity +-------- SPAWNFLAGS -------- +allow regular aiming and movement while forcing the camera between the viewlocation points +show a crosshair on screen and allow 2d aiming instead of only forward +allow moving up and down as well in side-scrolling mode, useful for brawlers + + + +Starting position for the area of viewing in a view location area, viewing position is bounded between this and a target_viewlocation_end +-------- KEYS -------- +the trigger_viewlocation should point its target to this. + + + +Ending position for the view location area, should be higher up but on the same plane as the target_viewlocation_start +-------- KEYS -------- +the trigger_viewlocation should point its target2 to this. + + Makes one entity follow another. Will not work with all entities. -------- KEYS -------- @@ -1674,6 +1718,20 @@ You may want to target this by a race checkpoint, a teleporter, or a trigger_mul the items listed will get removed from the player + +Kills whoever activates this target +-------- KEYS -------- +used to trigger this +message to print + + + +CAMPAIGN ONLY!!!! Warp to another campaign level +-------- KEYS -------- +used to trigger this +index of the campaign level to warp to (starting from 1), 0 for next level + + Spawns or modifies an entity when triggered. The entity field list is a single string of the form: @@ -1789,7 +1847,8 @@ When triggered, it resets to full health, and unbreaks. -------- SPAWNFLAGS -------- do not allow damaging this until it is first activated indicate amount of damage already taken by coloring -if set, splash damage cannot activate the door, only direct damage can (requires health to be set) +don't take damage (needs to be triggered to 'explode', then triggered again to restore) +if set, only direct hits do damage (requires health to be set) @@ -1864,11 +1923,25 @@ modeldisabled="models/weapons/g_hookgun.md3" Any object touching this will be healed. -------- KEYS -------- -health to give per second (default 10) +health to give per heal (default 10) max health this trigger will give (default 200) +delay between the heals in seconds (default 1) sound file to play (use misc/null.wav to make it silent), default = item_health_medium sound +-------- SPAWNFLAGS -------- +play the sound even if the player is fully healed + +Target version of trigger_heal. Heals the activator. +-------- KEYS -------- +health to give per heal (default 10) +max health this target will give (default 200) +delay between the heals in seconds (default 1) +sound file to play (use misc/null.wav to make it silent), default = item_health_medium sound +-------- SPAWNFLAGS -------- +play the sound even if the player is fully healed + + the Sniper Rifle. -------- KEYS -------- @@ -2290,27 +2363,34 @@ When triggered, its effect is turned off until triggered again. An area where gravity differs from the rest of the map. This acts as a modifier over the normal gravity (sv_gravity). e.g.: 0.5 is half the normal gravity, 2 is twice the normal gravity. -------- KEYS -------- -gravity offset in this area, defaults to 0 if not set +gravity multiplier in this area, defaults to 0 if not set sound to play when an entity enters the gravity zone, leave empty to disable -you can use this to target the gravity zone with a trigger, which will toggle it when activated +you can use this to target the gravity zone with a relay to (de)activate the gravity multiplier -------- SPAWNFLAGS -------- entities keep their gravity after leaving the gravity zone -when targeted, the gravity zone starts off and is enabled upon triggering +when targeted, the gravity zone starts disabled Activates all targets List of currently supported target ents: +trigger_conveyor +trigger_gravity trigger_hurt trigger_heal trigger_impulse trigger_push trigger_teleport +target_heal +target_kill func_rotating func_bobbing func_button +func_conveyor func_fourier +func_pointparticles func_vectormamamam +misc_laser -------- KEYS -------- trigger all entities with this targetname when triggered name that identifies this entity so it can be triggered @@ -2319,16 +2399,23 @@ func_vectormamamam Deactivates all targets List of currently supported target ents: +trigger_conveyor +trigger_gravity trigger_hurt trigger_heal trigger_impulse trigger_push trigger_teleport +target_heal +target_kill func_rotating func_bobbing func_button +func_conveyor func_fourier +func_pointparticles func_vectormamamam +misc_laser -------- KEYS -------- trigger all entities with this targetname when triggered name that identifies this entity so it can be triggered @@ -2337,16 +2424,23 @@ func_vectormamamam Toggles all targets de/active List of currently supported target ents: +trigger_conveyor +trigger_gravity trigger_hurt trigger_heal trigger_impulse trigger_push trigger_teleport +target_heal +target_kill func_rotating func_bobbing func_button +func_conveyor func_fourier +func_pointparticles func_vectormamamam +misc_laser -------- KEYS -------- trigger all entities with this targetname when triggered name that identifies this entity so it can be triggered @@ -2359,7 +2453,11 @@ When no chmap key is set, the entity just ends the match when triggered. The pla The name other entities can use to target this entity Map file to switch to, leave empty to make this entity just end the match Switch to this gametype. If empty, the same gametype stays +fraction of players (excludes bots) that need to trigger this entity to change the level when MULTIPLAYER is set (default: 0.7) +-------- SPAWNFLAGS -------- +makes this entity only change level when a fraction of the players triggered it + Fast firing moderate damage bullet (hitscan) turret. -------- KEYS --------