Intro
Now that thereâs a coordinate device you can make so many more things! :D
This includes making a puddle of DEATH.
What is a puddle of death, you ask? Well, to put it simply, a puddle the brings death, destruction, and chaos wherever it is.
Puddle of Death: a black puddle of liquid, put down by a player, that causes damage.
Achievement Earned: Puddle of Knowledge!
Now youâre probably thinking, âIsnât that just a zone + a damager?â Thatâs why I mentioned the coordinate device earlier, because Iâm turning the puddle of death into an ability!
|In this guide, the attacking player is the player with the puddle of death ability and the defending player is the one being affected by it.|
Note: This guide is meant for more experienced GKC builders so if you donât know how to use blocks use and configure devices |or| do math then this guide may not be for you. Itâs not that hard though. You technically will be copying the system I created but just make sure you know how to be able to copy everything in it! Get ready :D !
Also, thanks to @teapot for reminding me about the distance formula, which I forgot because it is never used in my school. Technically, teapot told me how to do the whole blocks part without telling me the actual blocks so props to him! Honestly, the [state I live in]âs education system is not good at all.
Backstory
There was this one help topic in the forums asking for user-made characters for a brawl stars spin off and I remember asking for an AOE[1] ability for the character.
Achievement Earned: Time Machine
Devices and More
anything in the parentheses () are device settings.
- 1 Overlay (Type: button, position: bottom right, text: pour a puddle of death, visible on game start: no, visibility scope: player, )
- 1 Player Coordinates Device (player position changes, broadcast on channel âcoordchangeâ; update properties: yes, x pos property: âpxâ, y pos property: âpyâ)
- 1 Lifecycle (Event: Game Start)
- 3 Relays (Audience: All players on specific team (Team 1) x2) (Audience: All other players)
- 2-3 Triggers (Visible in game: no, Allowed Team: any, Active on game start: yes, trigger by player collision: no | dubbed âtrigger 1â) (modify one of the any team allowed trigger so that it triggers when receiving on channel âhurtâ | This trigger is optional! Dubbed âopt triggerâ) (for the 3rd trigger, just copy the any team trigger that wasnât modified and set the allowed team to team 1 | dubbed âtrigger 2â)
Achievement Earned: Trigger Happy
- 1 Damager (damage: your choice, ko message: your choice (I used; âThe Puddle of Death got {name}!â))
- 4-5 Properties (name: âpxâ, type: number, scope: player) (duplicate the âpxâ property and rename the duplicate to âpyâ) (name: âmpxâ, type: number, scope: global) (duplicate the âmpxâ property and rename the duplicate to âmpyâ) (px = player x, py = player y, mpx = main player x, mpy = main player y)(optional property || name: âdistanceâ, type: number, scope: global)
- 1 Wire Repeater (delay: your choice)
Achievement Earned: Devices, Devices, and Even More Devices!
Wires and Channels
Anything inside the brackets [_] is a wire or channel. And remember that you can change channel names so that it fits for your map!
First wire the lifecycle to one of the âall players on specific teamâ relays [event occurs â trigger relay]. Then wire that relay to the overlay [relay triggered â show overlay]. Now go to the overlayâs channels and [when button clicked, transmit on channel âpressedâ]. Also, do this in the overlay: [hide overlay when receiving on channel âpressedâ]. The overlay will be hidden when it is pressed. Create a loop between the overlay and the wire repeater; 1st wire [button pressed â repeat wire pulse], 2nd wire [wire pulse repeated â show overlay]. This will serve as a cooldown for the âabilityâ. Grab your âAll Other Playersâ relay and wire your overlay to it [button pressed â trigger relay]. Get the trigger with any team allowed and no channels. Wire the most recent relay to that trigger [relay triggered â trigger trigger]. Weâll get back to that trigger later! Lastly, get the unused relay with the setting of âall players on specific teamâ and give it this: [relay when receiving on channel âcoordchangeâ]. Also get the trigger with the only team allowed as team 1. Wire the relay to the trigger [relay triggered â trigger trigger].Thatâs all for this section!
Achievement Earned: All Tangled Up
Blocks
This is the part where it may get a bit complicated. Thereâs some math and coding, every beginnerâs worst fear! Donât worry though, itâll be fine!
Both triggers have blocks. Letâs start with trigger 1, where the main code is. Create a new block in trigger 1. The easiest way to make AOE is not by making a circle around a player, but by having a distance, with parameters, between the attacking and defending player. Basically, the code finds the radius of a hypothetical circle around the player instead of creating a hypothetical circle around the player and detecting another player within it. Creating the hypothetical circle is definitely possible though so if you want to find that way of making AOE then go for it! What @teapot recommended, the distance formula[2] which is a formalized version of the pythagorean theorem in a different context, essentially. You can look it up for more information on it. Now that you know a little more about what will be in the code, Iâm sure some of you could figure it out yourself! But here it is anyway:
You donât need to add the round block, I was just using that to test something.
Edit: I fixed a bug! Add this in-between the variable defining block and the if statement:
Achievement Earned: Not Much Farther
For the if statement, in the âandâ block, you can set the value parameters to whatever you want. The value is the number of units not the number of tiles, Iâm pretty sure, but correct me if Iâm wrong. I used 7 units from the attacking player. The channel âhurtâ, or whatever you named it, is the channel that sends a message to damage the defending player if they are in range. In the devices section of the guide, I put the âhurtâ channel being received in the optional trigger, but for now make the damager, damage a player when receiving on âhurtâ.
That code mightâve been a teeny weeny bit complicated for you but this next piece is MUCH easier!
Create a new block for Trigger 2. Here is the blocks:
The âmain playerâ coordinate properties store the coordinates of the player who is âplacingâ the Puddle of Death. This way, we can find the distance between the person attacking and the person defending. If these properties werenât there then we would always have one playerâs coordinates which would destroy the system.
Wow! That went by fast! You finished the blocks part of this guide!
Achievement Earned: Data Collector
Thatâs it! Not too hard right?
Achievement Earned: Completion!
I hope this reaches anyone who wonât be on in the summer: ~Happy Summer Break!~
If you want a little extra something, thereâs still more for you below!
And, if you want visuals, then you will have to place a circle barrier in every single section of the game. I mean every little crevice! The you would need a trigger that broadcasted on a channel, through blocks, based on the mpx and mpy properties
Optional
This uses some extra blocks, a property and the opt trigger! Wire the opt trigger to the damager [trigger triggered â run wire pulse block].
Edit the blocks in Trigger 1 and add this in-between the 2 if statements:
In the damagerâs settings, replace the âhurtâ channel with nothing. Now create a new block in the damager for âOn wire pulseâŠâ. Now make this:
This will make defending players take more damage the more closer they are to the attacking player. You can change the multiplier by whatever you want. Thatâs it!
Achievement Earned: Hungry for More!
Achievements
Did you collect all the achievements? If you havenât, try going back through the guide!
List:
- Puddle of Knowledge!
- Time Machine
- Trigger Happy
- Devices, Devices, and More Devices!
- All Tangled Up
- Not Much Farther
- Data Collector
- Completion!
- Hungry for More!
Backstory
I always admired TSonicâs Tim series! I also liked Kat_aronii/Kat_Macâs dialogue in her/VoidFluffyâs guides! I tried to do my own thing this time. Also, someone had a help topic for a guide that wasnât working for them but they didnât read the whole guide, so this will hopefully help people read the whole post. Hopefully, it doesnât seem super goofy. (This is a test trial⊠ig?)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11