One of the elements that accompanies teleporters in other Arena Shooter games is TeleFragging, which is a design element that helps deter teleporter blocking/camping. What happens is when a player is blocking a teleporter, they receive a visual indicator such as their screen turning a reddish hue to warn them, and if they don't move, bam! They're dead. However, this only occurs when another player is attempting to enter the blocked/camped teleporter, which is going to require a little fancy scripting to get it to work in this game. What I need is one of you great scripters who wouldn't mind taking a few hours of your time to assist me in designing this. I've got the basic idea down, but I lack the know-how to implement it. The script needs to follow this basic idea: If Zone A is Active, AND Zone B Activates, THEN (Visual Effect for X seconds followed by death causing action) in Zone A. So, who's down to give a fella a hand? Thanks.
Kinda working on something like this set a general idea ill be off work in about 4 hours but Set a script brain boundy to cover the area you want and set it to detect player activator, then have the action to either set a timer or send a power message to a channel to start a timer and then at the end of the timer have it spawn in like a fire or a kill zone and then have when its not detecting anyone to despawn the item, ive had the flu so havent had time to play with the new scripts but i have something like that i tested today
Sorry if that didnt make much sense still little outta sorts but i can go into more detail when i get on
You can also set the action to put a filter on players screen and or play a sound im not sure if with the call out volumes the ones that say names you could have it spawn some of those in sequence if they have numbered ones
Script Brain with boundary on either end. Conditions: Boundary Checks for scripts 1&2 Continuous at 0.05 seconds on 1 Exit at 0.05 seconds on 2 Have the sender boundary set a power state to ON for the Continuous, OFF for Exit. Have the receiver boundary Set:Label for Objects/Players using the Boundary[THIS] mod. This is how you know players are there or not and how you flag the players in the receiver boundary for targeting. Have a Message fire on a Timer Condition every 0.05 seconds and another (on a separate channel) every 1 second. Multi with 2 required for the Power State being ON and the 0.05 second timer Message. Multi with 2 required for the Power State being ON and the 1 second timer Message. Multi with 2 required for the Power State being OFF and the 0.05 second timer Message. This is how you have that generate an output that you can use. Have the result of the 0.05/Power ON Multi be the following: Set Screen FX for Objects/Players with the label you chose above. Have the result of the 1/Power ON Multi be the following: Number Change Global Alpha, Increment Constant 1 Have the result of the 0.05/Power OFF Multi be the following: Remove Screen FX for Objects/Players with the label you chose above. Number Change Global Alpha, Set Constant 0 That is how you set effects for players in the receiver boundary when players are in the sender boundary and detect the length of both states being true while reversing and resetting the counter when the player leaves the sender boundary. You may want to add another power channel to the receiver boundary setup to ensure that nothing stupid happens and kills the other player for no reason, like players entering the sender boundary and DC'ing, thus not triggering the exit Condition and constantly kill anyone in the other space. Do a Number Check on the Global Alpha channel Check to see if it is greater than or equal to a constant (do not change the offset) Set that constant to the amount of time you want to give them before they die in seconds. Have the results of this kill the player. There are a few ways to do this part, but I forget which is best. This is dependent on the Teleport event triggering the exit Condition on the receiver boundary. You may have to experiment with that part.
The one i tested on i just set the boundry check to activator i left it at 0 and when it detected it turned alpha power state on and on exit it turned alpha power state off and then i had a small human fire to spawn on power alpha on and despawn on alpha power off and then just placed it in the center of the boundry, and then the actions were enter put filter on and on exit set to default got away with running 4 scripts. Im trying to understand setting it at .05 intervals im decent at scripting not the greatest always trying to learn more --- Double Post Merged, Dec 15, 2016 --- I get out of work in like 3 hours idk if you will be on but i would love to take a look at what you have
I got nothing yet. Might take a stab at what Captain posted tomorrow, but would really like to have someone that knows their way around scripting in a party/game with me when I under take this. I'm going to bed for now though.
Cap'n, how about having the Boundary Check [Player, Continuous, 0.05] script increment a Global{channel} Number? Add a 2nd action to set a 2nd Global channel Number to the object count inside the sender's boundary. Then use Number Check [Global{channel}, =, 60] to detect when it hits the time, 3 seconds in this case. At that point kill the players inside the receiver boundary. Use Number Check [Global{channel2}, =, 0] to set Global{channel} back to 0. That way you don't need a message & multi, you increment the Number directly. The continuous object count check handles multiple players entering & exiting the sender. I think you can use the teleporters directly for the zones, right? Then the rest like Cap'n said.
@Yumudas Beegbut That, rather something very similar, occurred to me, I was just trying to keep the logic easier so that it would be easier to troubleshoot for new scripters reading this. @all, Yumudas' build is more lightweight. Having the occupation of the sender change a value, then checking that value at a certain point to trigger a targeted kill/damage. Unfortunately, both only work for stopping the blocking of teleporters, not camping them, since players using the sender wont be in the zone long enough to trigger the death of the camper and you might just push the camp spot back.
Any map that makes lightning striking down players look silly needs to just be deleted. @Captain Punch, you mean we need to have another wider zone around the receiver that tracks players that camp there? I don't I know exactly how the telefrag mechanism works, or if there are a few different setups we could make. Possible variables: Size of teleporter zones Additional zones around teleporter zones Start timer for player in receiver zone regardless of sender status (maybe they can hit the max time and get killed if someone enters the sender zone) Accumulate time even if blocked players exit the sender zone instead of resetting
The way telefragging worked in H1 was that the blocking player's screen would slowly fade to white for a few seconds before just outright killing him. I know that lightning looks dumb, but it's the only way I can think that instantly kills a player and can be scripted.
Look lightning would be awesome but if you dont want that just have it spawn in fire at the base of the telporter or a kill volume
Kill volumes can't be scripted, and fire doesn't kill instantly. I guess you could use fire as a makeshift timer, but that wouldn't be very classic.
We can damage player health directly now using Damage: Ratio, just have to be able to single out the players using the filters. We can use Boundary.This and Players (include) to get all the players inside a boundary. Damage: Ratio doesn't affect shields, but players still die. I think we can use some combination of screen FX and other visual & audible cues to let players know what's happening.
Could you possible use the mini game options and have the player lose there shields or set there health to low and then the fire should knock then out right away, unfortunetly iive had the flu and have been working til midnight so ive only scratched the surface of the new update but i did make an area like it was radioactive when the player entered the area they got the flood filter on there screen and a fire was hidden so that they would be hit by it Damages fairly quick --- Double Post Merged, Dec 16, 2016 --- Awesome
Ive messed around with scripting a bit. If you want the telefragging to delay for a short bit with a video and audio cue, I can literally just walk upstairs, build, and prefab it
The concept Im working on uses the old respawn timer trick, though I'll see if I can figure out wait scripts. Just put a boundary around the receiver in a short radius, maybe 16-20~. Then, put a boundary check (Continuous) with a 0.05 repeat. Mark the player in the boundary with a label and a send a message. When the message is sent, it triggers a wait script for (Insert Time Frame Here) and sends another message, killing everyone with the label. Also set a sound to be played, like negative or negative alt. Set another script on the reciever (or whatever you use as a boundary), and set it tp boundary check (Exit) with a repeat of 0.05. Have it remove the label from the players who aren't in the boundary, so if a player wisely leaves, they don't die. I'll have the prefab up in moment, and I might post a tutorial thread, or put it in an existing one. I'll update you when Im done