Hey!
This guide will teach you how to create a revival system, a system that accomplishes tagging within your own team. Tagging Teammate = Reviving
Tip: When you are playing with friends [1] let them SUFFER. Then, LAUGH at them. HAHA.
This way will not work with multiple teams. Only 1 team can be allowed to have it this way. [2]
Final Product
Ahh
So first, we want to detect if the player is tagged or “fallen” right? So I have a property for that, called “isPlayerTagged” which is a true and false.
Lemme show you.
We have it start out at false because the player doesn’t start out tagged.
Great, but we need it to change when tagged, or hurt. So whenever that happens, run these blocks.
These blocks basically just set the value of the tagged property to true.
Counter Way
Basically @Here_to_help reminded me that you can use counters instead of a true/false. I’m not doing it this way, just because it works out better for my map, but most of the time this will work better.
The tagged property is number instead and instead of running those blocks you increment a counter. The counter should update the property, and have a starting value of 0. It should also decrement on “revival”.
So now, we need to update these properties [on the player coordinates].
PlayerX and PlayerY.
Images
It’s the same for the other one, but just a different name.
since you clicked this, you get to suffer
Sigma, sigma boy, sigma boy, sigma boy
Sigma, sigma boy, sigma boy, sigma boy
Sigma, sigma boy, sigma boy, sigma boy
Ok 3 lines is enough. I won’t let you read this anymore, anymore will make your braincells disappear
So, now we want the property for revival coordinates to be updated upon the whole team [3] So for that, we’ll use a relay. All players in specific team. That same team.
Player Moves → Trigger Relay
So now we need some blocks to run upon that. All it does is set the current x and y values to the revival ones.
Simple so far.
Now revival properties.
It’s the same, but global. Also, Y property is the same, but different name.
[You can also make it team scoped, but it won’t make a difference.]
Nicely done. But, we are not done yet. In the player coords. we need some blocks. This is the distance formula, calculating the distance between it all.
The distance variable carries the distance. Then, if the distance was in between -1.5 and 1.5, and the true/false property was true, then set the true/false property as false, broadcast message on revival. Then, whatever you want to happen to the player when revived, is done when receiving on “revival.” However, this is only done if the team number is 1. Aka, the team that can revive.
Also, for the counter way you would need to check if the isPlayerTagged property is equal to 1. You can also remove the part where you set the property to false. Or just do nothing at all so your friends can SUFFER.
Debugging
If you noticed, I have some activity feed in the blocks. That REALLY helps with the debugging. When it works, it provides an activity feed saying, “You are revived!”
You can also include an activity feed on the bottom of the if statement, like this.
Add Activity Feed Item For Everyone | Create Text With | [var] distance
I love eating people
Done!
However, this system is flawed, it works, but sometimes it just randomly follows another team. [4]
Also this system allows two people that need reviving to tag each other, and be revived.
@T_Sonic54 and yip [5] helped me playtest this, so shoutout to them!
- 1/10
- 2/10
- 3/10
- 4/10
- 5/10
- 6/10
- 7/10
- 8/10
- 9/10
- 10/10
- 11/10
If you reply NEVER say “nice guide” the :heart: button exists :exploding_head:
sigma boy bardy out.