Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
- Le Neveu de Rameau
- I'm a hoobsie roller; I got robots in my life
- Posts: 994
- Joined: 8 years ago
- First name: Rameau's Nephew
- Location: Gettin' gibbly with the business
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
I swear I forget about these every time, despite telling myself to make a mental note, and in the rare cases where I remember, they get rescheduled, whereupon I forget the rescheduled version. But I guess when you're on a streak, it's important not to ruin it.
- raekuul
- 2 Nephi 2:25-27
- Posts: 1842
- Joined: 15 years ago
- First name: Pokota
- Pronouns: he/him/his
- Location: Deti Plains
- Contact:
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
I am pleasantly surprised.
Here's my bot's code, for the interested.
Here's my bot's code, for the interested.
Code: Select all
name dumbot
author Pokota
iff code dumb
main:
move forward
if value #cur_fuel < 1 then self destruct
generate random
goto #random
1:
turn left
goto look
2:
turn right
goto look
3:
move backward
goto look
4:
move forward
goto look
look:
scan forward
if scan found enemy then gosub murder
if scan found flag then gosub charge
scan perimeter
if scan found enemy then gosub sparx
if scan found flag then gosub circle
goto main
circle:
move forward
turn right
move forward
turn right
move forward
move forward
move forward
turn right
move forward
move forward
move forward
turn right
move forward
move forward
goto look
sparx:
discharge energy
move backward
goto look
charge:
move forward
move forward
move forward
move forward
move forward
scan forward
if scan found enemy then gosub murder
goto look
murder:
fire weapon
fire weapon
fire weapon
fire weapon
fire weapon
goto charge
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
I'll post my code once the bot gets beaten. Looking forward to getting to commentate. Will see if I can get to the next one.
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
When do you think will be the next stream?
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
He did well in the December 2016 round! He made it to the second round battles!Willhart wrote:I sent my big to the thing to see the world and sail the internet. Also next one of these was mentioned to be on Tuesday again.
http://tacticalneuronics.com/content/Results_201612.asp
-
- What about Ron magic?
- Posts: 699
- Joined: 11 years ago
- First name: Mikko J. Fuzzygrumbles
- Pronouns: he/him/his
- Location: Lots of miles from Vietnam
- Contact:
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
How about a status update?
Many people need desperately to receive this message: I feel and think much as you do, care about many of the things you care about, although most people do not care about them. You are not alone.
-Kurt Vonnegut
Context-free Supper Mario Broth Roulette! NOTE: Potential Jumpscare warning!
Avatar source (for most of them).
-Kurt Vonnegut
Context-free Supper Mario Broth Roulette! NOTE: Potential Jumpscare warning!
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
Would like one too.Mikkofier wrote:How about a status update?
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
Can I please co-commentate on the last one? I've wanted to participate on one of these from the beginning, but usually something has come up. I'd really like to be part of at least one. Also hyped to see who can get to top 10.Horikawa Otane wrote:Moving today to two weeks from now. And that will be the FINALE.
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
Ah I understand. Was planning on practicing with some of Maiku's streams and others, but I don't really have much experience with live commentary yet. The timing can be tricky too, due to often being very early in the morning. I might ask on some other stream later then, and I hope the event turns out well.Horikawa Otane wrote:Probably not. Co-commentating with participants was planned, but due to a number of things, it's been cancelled. Bad apples can spoil it for everyone. The mods know what led up to this and I'd prefer not to go into it publicly except with very specific people.Willhart wrote:Can I please co-commentate on the last one? I've wanted to participate on one of these from the beginning, but usually something has come up. I'd really like to be part of at least one. Also hyped to see who can get to top 10.Horikawa Otane wrote:Moving today to two weeks from now. And that will be the FINALE.
Currently, the way I'm handling the final stream is by inviting people who I know would be good or fun for co-commentating. I'll probably try to bring in raocow or Pyro or Hoeloe or something, depending on availability. The idea being to look for someone who I know I already have a good live commentary dynamic with and would make for a fun stream for everyone.
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
Should be very soon then, so hype!Horikawa Otane wrote:The FINALE will be TOMORROW at 5pm EST.
Re: Make a Rad Bug - CONTEST CLOSED. List of Participants Posted (make sure you're on it!)
That was an awesome contest! And not just because I won :)
Here's my bug:
Here's my bug:
Re: Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
Congratulations to the winner! And everyone who made a cool bug!
I thought maybe we should spoiler tag the placements for now still?
So people who missed it live can watch the youtube video at some point.
Last matches were super exciting and close!!
Either way, great finale.
Thanks for make.
I thought maybe we should spoiler tag the placements for now still?
So people who missed it live can watch the youtube video at some point.
Last matches were super exciting and close!!
Either way, great finale.
Thanks for make.
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
That was quite a journey. Thanks again for hosting this.
Re: Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
Woah, I came in third? I wasn't following the streams (I wanted to wait for the YouTube version so that I can watch at my leisure), so that's somewhat out of the left field.
If anybody wants to see my bug, I'll post it in spoiler tags (although the full bug collection is posted anyways...). Also, a confession I have to make: The "moveForwardMaxFive" function actually moves forwards a maximum of three spaces. It was the last tweak I made before submitting (after experimenting with that value, I found 3 gave much better results), and I was worried I'd mess up renaming the function somewhere and break something (the refactoring tools leave something to be desired. ). I feel almost dirty about that.
[/spoiler]
If anybody wants to see my bug, I'll post it in spoiler tags (although the full bug collection is posted anyways...). Also, a confession I have to make: The "moveForwardMaxFive" function actually moves forwards a maximum of three spaces. It was the last tweak I made before submitting (after experimenting with that value, I found 3 gave much better results), and I was worried I'd mess up renaming the function somewhere and break something (the refactoring tools leave something to be desired. ). I feel almost dirty about that.
Code: Select all
;main:
name Lockirby2
debug on
;raise shield
assign v5 0
;goto makeDecision
;v0 = estimate of strategy node distance
;v1 = estimate of enemy distance
;v2 = param for aimForTarget; x coordinate
;v3 = param for aimForTarget; y coordinate
;v4 = param for aimForTarget; boolean: 1 if I'm aiming for an enemy, 0 if I'm aiming for the strategy node
;v5 = boolean: 1 if currently going around an object, otherwise 0
;v6 = boolean: 1 if going horizontally around an object, 0 if going vertically around an object
;v7 = iterator (for loops)
;v8 = paramater for moveForwardMaxFive; boolean: 1 if moving horizontally, 0 otherwise
;v9 = row/column we are aiming to be in after moving around the object
;====== LOGIC ======
makeDecision:
cmath v0 = Abs(#strat_x - #x_pos) + Abs(#strat_y - #y_pos)
cmath v1 = Abs(#enemy_x - #x_pos) + Abs(#enemy_y - #y_pos)
if value ~v0 = 0 then goto defendNode
if ammo is = 0 then goto strategyYo
if value ~v0 <= ~v1 then goto strategyYo
if value ~v5 = 1 then gosub resetGoingAroundObject
;goto attackEnemy
attackEnemy:
math v2 = #enemy_x + 3
assign v3 #enemy_y
assign v4 1
goto aimForTarget
strategyYo:
assign v2 #strat_x
assign v3 #strat_y
assign v4 0
;goto aimForTarget
aimForTarget:
if value ~v5 = 1 then goto goAroundObject
assign v5 1
;v5 will be unset later if the robot moves in some direction
if value #x_pos < ~v2 then if value #y_pos < ~v3 then goto moveSouthWest
if value #x_pos < ~v2 then goto moveNorthEast
if value #y_pos < ~v3 then goto moveSouthWest
;goto moveNorthWest
moveNorthWest:
gosub turnWest
assign v8 1
gosub moveDirection
goto makeDecision
moveSouthEast:
gosub turnEast
assign v8 1
gosub moveDirection
goto makeDecision
moveSouthWest:
gosub turnSouth
assign v8 0
gosub moveDirection
goto makeDecision
moveNorthEast:
gosub turnNorth
assign v8 0
gosub moveDirection
goto makeDecision
goAroundObject:
if value ~v9 = -1 then gosub setGoingAroundObject
assign v7 3
forLoopTwo:
scan relative 3
if scan found nothing then turn right
if scan found flag then turn right
makeSurePathClear:
scan relative 1
if scan found nothing then goto pathClear
if scan found flag then goto pathClear
turn left
goto makeSurePathClear
pathClear:
move forward
if value #x_pos = ~v9 then if value ~v6 = 0 then gosub resetGoingAroundObject
if value #x_pos = ~v9 then if value ~v6 = 0 then goto makeDecision
if value #y_pos = ~v9 then if value ~v6 = 1 then gosub resetGoingAroundObject
if value #y_pos = ~v9 then if value ~v6 = 1 then goto makeDecision
if ~v7 > 0 then goto forLoopTwo
gosub spinCheck
goto makeDecision
defendNode:
;lower shield
;raise shield
attempt repairs
scan perimeter
if scan found enemy then gosub dischargeThrice
long range scan
if scan found enemy then gosub launchMissile
turn right
long range scan
if scan found enemy then gosub launchMissile
turn right
long range scan
if scan found enemy then gosub launchMissile
turn right
long range scan
if scan found enemy then gosub launchMissile
turn right
goto defendNode
;====== SUBROUTINES ======
spinCheck:
;lower shield
;raise shield
scan perimeter
if scan found enemy then gosub dischargeAndEvade
long range scan
if scan found enemy then gosub launchMissileAndEvade
turn right
long range scan
if scan found enemy then gosub launchMissileAndEvade
turn right
long range scan
if scan found enemy then gosub launchMissileAndEvade
turn right
long range scan
if scan found enemy then gosub launchMissileAndEvade
turn right
return
dischargeAndEvade:
gosub dischargeThrice
turn right
move forward
move forward
turn left
gosub resetGoingAroundObject
return
launchMissileAndEvade:
gosub launchMissile
turn right
move forward
move forward
turn left
gosub resetGoingAroundObject
return
dischargeThrice:
discharge energy
discharge energy
discharge energy
return
launchMissile:
;lower shield
launch missile
;raise shield
return
turnNorth:
if facing east then turn left
if facing north then return
turn right
if facing north then return
turn right
return
turnEast:
if facing south then turn left
if facing east then return
turn right
if facing east then return
turn right
return
turnSouth:
if facing west then turn left
if facing south then return
turn right
if facing south then return
turn right
return
turnWest:
if facing north then turn left
if facing west then return
turn right
if facing west then return
turn right
return
moveDirection:
gosub moveForwardMaxFive
gosub spinCheck
turn right
cmath v8 = Abs(~v8 - 1)
;v8 = !v8
gosub moveForwardMaxFive
gosub spinCheck
return
moveForwardMaxFive:
raise shield
scan relative 1
if scan found barrier then return
if scan found mine then return
if value ~v8 = 1 then cmath v7 = Abs(~v2 - #x_pos)
if value ~v8 = 0 then cmath v7 = Abs(~v3 - #y_pos)
if value ~v7 = 0 then return
if value ~v7 > 3 then assign v7 3
assign v5 0
lower shield
forLoopOne:
scan relative 1
if scan found nothing then move forward
if scan found flag then move forward
math v7 = ~v7 - 1
if value ~v7 > 0 then goto forLoopOne
return
setGoingAroundObject:
if value #x_pos = ~v2 then goto verticalDestination
;goto horizontalDestination
;horizontalDestination
if value #x_pos < ~v2 then gosub turnNorth
if value #x_pos > ~v2 then gosub turnSouth
assign v6 1
assign v9 #y_pos
return
verticalDestination:
if value #y_pos < ~v3 then gosub turnEast
if value #y_pos > ~v3 then gosub turnWest
assign v6 0
assign v9 #x_pos
return
resetGoingAroundObject:
assign v5 0
assign v6 -1
assign v9 -1
return
- raekuul
- 2 Nephi 2:25-27
- Posts: 1842
- Joined: 15 years ago
- First name: Pokota
- Pronouns: he/him/his
- Location: Deti Plains
- Contact:
Re: Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
Cactus versus Cardboard is amusing, if in a "whyyyy" sort of way.
E: Also, I updated dumbot to be a lessdumbot (code at bottom), and threw it against the top four winners. Behold the mess.
E: Also, I updated dumbot to be a lessdumbot (code at bottom), and threw it against the top four winners. Behold the mess.
Code: Select all
Mutiple Battle Total:
____________________________________________________________________________________________________________________
1st place Cybug: #10 rHunter Total score: 13117 Team: 17702
2nd place Cybug: #06 veruchAI Total score: 11000 Team: 16895
3rd place Cybug: #08 Lockirby2 Total score: 6302 Team: 6302
4th place Cybug: #05 veruchAI Total score: 5895 Team: 16895
5th place Cybug: #09 rHunter Total score: 4585 Team: 17702
6th place Cybug: #07 Lockirby2 Total score: 3542 Team: 3542
7th place Cybug: #03 Bombardier Total score: 1978 Team: 1978
8th place Cybug: #04 Bombardier Total score: 1411 Team: 1411
9th place Cybug: #02 lessDumbot Total score: 568 Team: 796
10th place Cybug: #01 lessDumbot Total score: 228 Team: 796
____________________________________________________________________________________________________________________
Battle number: 1
Battle Results:
____________________________________________________________________________________________________________________
1st Place #10 rSNode Damage: 16 Fuel: 100 Score: 3963 Team: 7157 Red
2nd Place #09 rSNode Damage: 13 Fuel: 1 Score: 3194 Team: 7157 Red
3rd Place #07 Lockirby Damage: 7 Fuel: 1285 Score: 1693 Team: 1693 Author Unknown
4th Place #06 veruchAI Damage: 15 Fuel: 0 Score: 1186 Team: 1649 stolenfromIsamoor
5th Place #04 Bombardie Damage: 10 Fuel: 0 Score: 1079 Team: 1079 Bellmoore
6th Place #05 veruchAI Damage: 14 Fuel: 0 Score: 463 Team: 1649 stolenfromIsamoor
7th Place #03 Bombardie Damage: 10 Fuel: 0 Score: 390 Team: 390 Bellmoore
8th Place #01 lessDumbo Damage: 10 Fuel: 0 Score: 276 Team: 253 Pokota
9th Place #08 Lockirby Damage: 14 Fuel: 0 Score: -14 Team: -14 Author Unknown
10th Place #02 lessDumbo Damage: 12 Fuel: 0 Score: -23 Team: 253 Pokota
Battle play by play:
____________________________________________________________________________________________________________________
Click: 5 #08 Lockirby2 is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 9 #08 Lockirby2 is scorched by #06 veruchAI's grenade fragments doing 5 damage!
Click: 9 #08 Lockirby2 is killed! ...Memorial flag planted!
Click: 10 #02 lessDumbot is humbled by #09 rHunter's grenade direct hit doing 7 damage!
Click: 10 #05 veruchAI is humbled by #10 rHunter's grenade direct hit doing 7 damage!
Click: 11 #10 rHunter is crushed by #05 veruchAI's misile direct hit doing 9 damage!
Click: 12 #05 veruchAI is humbled by #10 rHunter's grenade direct hit doing 7 damage!
Click: 13 #05 veruchAI is killed! ...Memorial flag planted!
Click: 14 #02 lessDumbot is scorched by #09 rSNode's grenade fragments doing 5 damage!
Click: 15 #02 lessDumbot is killed! ...Memorial flag planted!
Click: 23 #04 Bombardier protected by shield is pounded by #09 rSNode's grenade fragments doing 2 damage!
Click: 27 #10 rSNode moves into the strategy node!
Click: 37 #04 Bombardier is humbled by #09 rHunter's grenade direct hit doing 7 damage!
Click: 39 #09 rHunter is humbled by #04 Bombardier's grenade direct hit doing 7 damage!
Click: 39 #01 lessDumbot is scorched by #06 veruchAI's grenade fragments doing 5 damage!
Click: 44 #04 Bombardier discharged energy doing 1 point of damage to itself!
Click: 44 #04 Bombardier zaps #09 rHunter with energy discharge inflicting 2 points of damage!
Click: 45 #04 Bombardier is killed! ...Memorial flag planted!
Click: 47 #09 rSNode takes flag and resets damage to 0!
Click: 55 #01 lessDumbot takes flag and resets damage to 0!
Click: 80 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 80 #06 veruchAI zaps #01 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 81 #01 lessDumbot discharged energy doing 1 point of damage to itself!
Click: 81 #01 lessDumbot zaps #06 veruchAI with energy discharge inflicting 2 points of damage!
Click: 81 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 81 #06 veruchAI zaps #01 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 87 #01 lessDumbot hits #06 veruchAI at a range of 1 space for 5 points of damage!
Click: 87 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 87 #06 veruchAI zaps #01 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 88 #01 lessDumbot hits #06 veruchAI at a range of 1 space for 5 points of damage!
Click: 88 #06 veruchAI is killed! ...Memorial flag planted!
Click: 92 #01 lessDumbot takes flag and resets damage to 0!
Click: 95 #01 lessDumbot lands on a mine taking 5 damage!
Click: 100 #01 lessDumbot lands on a mine taking 5 damage!
Click: 101 #01 lessDumbot is killed! ...Memorial flag planted!
Click: 105 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 105 #03 Bombardier zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 105 #07 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 105 #07 Lockirby2 zaps #03 Bombardier with energy discharge inflicting 2 points of damage!
Click: 106 #07 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 106 #07 Lockirby2 zaps #03 Bombardier with energy discharge inflicting 2 points of damage!
Click: 107 #07 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 107 #07 Lockirby2 zaps #03 Bombardier with energy discharge inflicting 2 points of damage!
Click: 108 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 108 #03 Bombardier zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 114 #10 rSNode is pummled by #07 Lockirby2's misile fragments doing 7 damage!
Click: 114 #09 rSNode is crushed by #07 Lockirby2's misile direct hit doing 9 damage!
Click: 114 #10 rSNode is killed! ...Memorial flag planted!
Click: 115 #09 rSNode takes flag and resets damage to 0!
Click: 115 #09 rSNode moves into the strategy node!
Click: 149 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 149 #03 Bombardier zaps #09 rHunter with energy discharge inflicting 2 points of damage!
Click: 153 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 153 #03 Bombardier zaps #09 rHunter with energy discharge inflicting 2 points of damage!
Click: 154 #03 Bombardier is killed! ...Memorial flag planted!
Click: 160 #09 rSNode moves into the strategy node!
Click: 224 #09 rSNode is crushed by #07 Lockirby2's misile direct hit doing 9 damage!
Click: 224 #09 rSNode is killed! ...Memorial flag planted!
____________________________________________________________________________________________________________________
End of Battle sequence
____________________________________________________________________________________________________________________
Battle number: 2
Battle Results:
____________________________________________________________________________________________________________________
1st Place #06 veruchAI Damage: 0 Fuel: 1165 Score: 2949 Team: 4126 stolenfromIsamoor
2nd Place #10 rHunter Damage: 14 Fuel: 0 Score: 1985 Team: 3166 Red
3rd Place #03 Bombardie Damage: 16 Fuel: 48 Score: 1232 Team: 1232 Bellmoore
4th Place #09 rHunter Damage: 18 Fuel: 0 Score: 1181 Team: 3166 Red
5th Place #05 veruchAI Damage: 12 Fuel: 0 Score: 1177 Team: 4126 stolenfromIsamoor
6th Place #08 Lockirby Damage: 14 Fuel: 0 Score: 463 Team: 463 Author Unknown
7th Place #02 lessDumbo Damage: 10 Fuel: 0 Score: 187 Team: 173 Pokota
8th Place #01 lessDumbo Damage: 14 Fuel: 0 Score: -14 Team: 173 Pokota
8th Place #07 Lockirby Damage: 14 Fuel: 0 Score: -14 Team: -14 Author Unknown
9th Place #04 Bombardie Damage: 15 Fuel: 0 Score: -27 Team: -27 Bellmoore
Battle play by play:
____________________________________________________________________________________________________________________
Click: 4 #01 lessDumbot is crushed by #05 veruchAI's misile direct hit doing 9 damage!
Click: 9 #01 lessDumbot is scorched by #05 veruchAI's grenade fragments doing 5 damage!
Click: 10 #01 lessDumbot is killed! ...Memorial flag planted!
Click: 11 #07 Lockirby2 is scorched by #06 veruchAI's grenade fragments doing 5 damage!
Click: 12 #08 Lockirby2 is humbled by #10 rHunter's grenade direct hit doing 7 damage!
Click: 13 #10 rHunter is crushed by #08 Lockirby2's misile direct hit doing 9 damage!
Click: 14 #08 Lockirby2 is humbled by #10 rHunter's grenade direct hit doing 7 damage!
Click: 15 #09 rHunter is crushed by #05 veruchAI's misile direct hit doing 9 damage!
Click: 15 #08 Lockirby2 is killed! ...Memorial flag planted!
Click: 15 #05 veruchAI is humbled by #09 rHunter's grenade direct hit doing 7 damage!
Click: 17 #05 veruchAI is scorched by #09 rHunter's grenade fragments doing 5 damage!
Click: 18 #05 veruchAI is killed! ...Memorial flag planted!
Click: 18 #07 Lockirby2 foolishly fires misile with shields up doing 9 damage to itself!
Click: 19 #07 Lockirby2 is killed! ...Memorial flag planted!
Click: 27 #10 rHunter lands on a mine taking 5 damage!
Click: 28 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 28 #10 rHunter is killed! ...Memorial flag planted!
Click: 32 #06 veruchAI takes flag and resets damage to 0!
Click: 36 #03 Bombardier protected by shield is pounded by #06 veruchAI's grenade fragments doing 2 damage!
Click: 40 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 40 #03 Bombardier zaps #02 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 42 #02 lessDumbot discharged energy doing 1 point of damage to itself!
Click: 42 #02 lessDumbot zaps #03 Bombardier with energy discharge inflicting 2 points of damage!
Click: 43 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 43 #03 Bombardier zaps #02 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 45 #02 lessDumbot discharged energy doing 1 point of damage to itself!
Click: 45 #02 lessDumbot zaps #03 Bombardier with energy discharge inflicting 2 points of damage!
Click: 45 #03 Bombardier moves into the strategy node!
Click: 46 #09 rHunter is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 46 #09 rHunter is killed! ...Memorial flag planted!
Click: 54 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 58 #06 veruchAI takes flag and resets damage to 0!
Click: 60 #03 Bombardier completes repairs lowering damage to 7
Click: 84 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 84 #06 veruchAI zaps #02 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 85 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 85 #06 veruchAI zaps #02 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 86 #02 lessDumbot is killed! ...Memorial flag planted!
Click: 90 #06 veruchAI takes flag and resets damage to 0!
Click: 95 #03 Bombardier is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 96 #03 Bombardier is killed! ...Memorial flag planted!
Click: 107 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 109 #06 veruchAI takes flag and resets damage to 0!
Click: 109 #06 veruchAI moves into the strategy node!
Click: 114 #04 Bombardier protected by shield is pounded by #06 veruchAI's grenade fragments doing 2 damage!
Click: 128 #04 Bombardier is humbled by #06 veruchAI's grenade direct hit doing 7 damage!
Click: 148 #04 Bombardier protected by shield is shaken by #06 veruchAI's misile direct hit doing 6 damage!
Click: 149 #04 Bombardier is killed! ...Memorial flag planted!
____________________________________________________________________________________________________________________
End of Battle sequence
____________________________________________________________________________________________________________________
Battle number: 3
Battle Results:
____________________________________________________________________________________________________________________
1st Place #06 veruchAI Damage: 10 Fuel: 0 Score: 4789 Team: 5572 stolenfromIsamoor
2nd Place #05 veruchAI Damage: 10 Fuel: 0 Score: 783 Team: 5572 stolenfromIsamoor
3rd Place #04 Bombardie Damage: 12 Fuel: 0 Score: 187 Team: 187 Bellmoore
4th Place #10 rHunter Damage: 14 Fuel: 0 Score: 77 Team: 51 Red
5th Place #02 lessDumbo Damage: 0 Fuel: 2442 Score: -1 Team: -15 Pokota
6th Place #07 Lockirby Damage: 11 Fuel: 0 Score: -12 Team: -12 Author Unknown
7th Place #01 lessDumbo Damage: 14 Fuel: 0 Score: -14 Team: -15 Pokota
7th Place #08 Lockirby Damage: 14 Fuel: 0 Score: -14 Team: -14 Author Unknown
8th Place #03 Bombardie Damage: 15 Fuel: 0 Score: -16 Team: -16 Bellmoore
9th Place #09 rHunter Damage: 14 Fuel: 0 Score: -26 Team: 51 Red
Battle play by play:
____________________________________________________________________________________________________________________
Click: 4 #07 Lockirby2 protected by shield is pounded by #06 veruchAI's grenade fragments doing 2 damage!
Click: 5 #04 Bombardier protected by shield is pounded by #05 veruchAI's grenade fragments doing 2 damage!
Click: 15 #04 Bombardier protected by shield is pounded by #05 veruchAI's grenade fragments doing 2 damage!
Click: 16 #07 Lockirby2 protected by shield is damaged by #06 veruchAI's misile fragments doing 4 damage!
Click: 16 #10 rHunter is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 17 #10 rHunter hits #07 Lockirby2 at a range of 1 space for 5 points of damage!
Click: 18 #07 Lockirby2 is killed! ...Memorial flag planted!
Click: 19 #04 Bombardier protected by shield is pounded by #05 veruchAI's grenade fragments doing 2 damage!
Click: 19 #10 rHunter takes flag and resets damage to 0!
Click: 20 #09 rHunter is pummled by #06 veruchAI's misile fragments doing 7 damage!
Click: 20 #10 rHunter is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 24 #10 rHunter is scorched by #06 veruchAI's grenade fragments doing 5 damage!
Click: 24 #09 rHunter is humbled by #06 veruchAI's grenade direct hit doing 7 damage!
Click: 24 #09 rHunter is killed! ...Memorial flag planted!
Click: 24 #10 rHunter is killed! ...Memorial flag planted!
Click: 29 #04 Bombardier discharged energy doing 1 point of damage to itself!
Click: 29 #04 Bombardier zaps #05 veruchAI with energy discharge inflicting 2 points of damage!
Click: 29 #05 veruchAI discharged energy doing 1 point of damage to itself!
Click: 29 #05 veruchAI zaps #04 Bombardier with energy discharge inflicting 2 points of damage!
Click: 29 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 30 #04 Bombardier discharged energy doing 1 point of damage to itself!
Click: 30 #04 Bombardier zaps #05 veruchAI with energy discharge inflicting 2 points of damage!
Click: 30 #05 veruchAI discharged energy doing 1 point of damage to itself!
Click: 30 #05 veruchAI zaps #04 Bombardier with energy discharge inflicting 2 points of damage!
Click: 31 #04 Bombardier is killed! ...Memorial flag planted!
Click: 33 #06 veruchAI takes flag and resets damage to 0!
Click: 35 #05 veruchAI takes flag and resets damage to 0!
Click: 38 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 42 #06 veruchAI takes flag and resets damage to 0!
Click: 47 #08 Lockirby2 is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 49 #05 veruchAI lands on a mine taking 5 damage!
Click: 53 #08 Lockirby2 is scorched by #06 veruchAI's grenade fragments doing 5 damage!
Click: 53 #08 Lockirby2 is killed! ...Memorial flag planted!
Click: 54 #03 Bombardier protected by shield is shaken by #05 veruchAI's misile direct hit doing 6 damage!
Click: 59 #05 veruchAI lands on a mine taking 5 damage!
Click: 60 #05 veruchAI is killed! ...Memorial flag planted!
Click: 65 #01 lessDumbot is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 74 #01 lessDumbot is scorched by #06 veruchAI's grenade fragments doing 5 damage!
Click: 75 #01 lessDumbot is killed! ...Memorial flag planted!
Click: 91 #06 veruchAI lands on a mine taking 5 damage!
Click: 94 #03 Bombardier is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 95 #03 Bombardier is killed! ...Memorial flag planted!
Click: 110 #06 veruchAI lands on a mine taking 5 damage!
Click: 111 #06 veruchAI is killed! ...Memorial flag planted!
____________________________________________________________________________________________________________________
End of Battle sequence
____________________________________________________________________________________________________________________
Battle number: 4
Battle Results:
____________________________________________________________________________________________________________________
1st Place #05 veruchAI Damage: 11 Fuel: 0 Score: 1791 Team: 2882 stolenfromIsamoor
2nd Place #10 rHunter Damage: 10 Fuel: 0 Score: 1391 Team: 1577 Red
3rd Place #06 veruchAI Damage: 10 Fuel: 0 Score: 1091 Team: 2882 stolenfromIsamoor
4th Place #07 Lockirby Damage: 10 Fuel: 0 Score: 588 Team: 588 Author Unknown
5th Place #02 lessDumbo Damage: 2 Fuel: 2543 Score: 424 Team: 423 Pokota
6th Place #03 Bombardie Damage: 10 Fuel: 0 Score: 385 Team: 385 Bellmoore
7th Place #09 rHunter Damage: 14 Fuel: 0 Score: 186 Team: 1577 Red
8th Place #01 lessDumbo Damage: 0 Fuel: 2442 Score: -1 Team: 423 Pokota
9th Place #04 Bombardie Damage: 10 Fuel: 0 Score: -19 Team: -19 Bellmoore
9th Place #08 Lockirby Damage: 18 Fuel: 0 Score: -19 Team: -19 Author Unknown
Battle play by play:
____________________________________________________________________________________________________________________
Click: 6 #09 rHunter is crushed by #05 veruchAI's misile direct hit doing 9 damage!
Click: 7 #05 veruchAI is scorched by #09 rHunter's grenade fragments doing 5 damage!
Click: 8 #08 Lockirby2 is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 11 #09 rHunter is scorched by #05 veruchAI's grenade fragments doing 5 damage!
Click: 11 #09 rHunter is killed! ...Memorial flag planted!
Click: 12 #08 Lockirby2 is crushed by #07 Lockirby2's misile direct hit doing 9 damage!
Click: 12 #08 Lockirby2 is killed! ...Memorial flag planted!
Click: 14 #03 Bombardier protected by shield is rattled by #10 rHunter's grenade direct hit doing 4 damage!
Click: 16 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 16 #03 Bombardier zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 16 #04 Bombardier protected by shield is shaken by #05 veruchAI's misile direct hit doing 6 damage!
Click: 17 #03 Bombardier protected by shield is pounded by #10 rHunter's grenade fragments doing 2 damage!
Click: 19 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 19 #03 Bombardier zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 21 #04 Bombardier protected by shield is rattled by #05 veruchAI's grenade direct hit doing 4 damage!
Click: 22 #04 Bombardier is killed! ...Memorial flag planted!
Click: 23 #10 rHunter hits #07 Lockirby2 at a range of 1 space for 5 points of damage!
Click: 24 #07 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 24 #07 Lockirby2 zaps #10 rHunter with energy discharge inflicting 2 points of damage!
Click: 25 #07 Lockirby2 is killed! ...Memorial flag planted!
Click: 27 #02 lessDumbot is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 27 #10 rHunter takes flag and resets damage to 0!
Click: 31 #10 rHunter moves into the strategy node!
Click: 33 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 33 #03 Bombardier zaps #10 rHunter with energy discharge inflicting 2 points of damage!
Click: 36 #03 Bombardier discharged energy doing 1 point of damage to itself!
Click: 36 #03 Bombardier zaps #10 rHunter with energy discharge inflicting 2 points of damage!
Click: 37 #03 Bombardier is killed! ...Memorial flag planted!
Click: 40 #02 lessDumbot takes flag and resets damage to 0!
Click: 40 #10 rSNode moves into the strategy node!
Click: 48 #05 veruchAI discharged energy doing 1 point of damage to itself!
Click: 48 #05 veruchAI zaps #02 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 49 #05 veruchAI discharged energy doing 1 point of damage to itself!
Click: 49 #05 veruchAI zaps #02 lessDumbot with energy discharge inflicting 2 points of damage!
Click: 78 #02 lessDumbot hits #05 veruchAI at a range of 2 spaces for 4 points of damage!
Click: 78 #05 veruchAI is killed! ...Memorial flag planted!
Click: 82 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 84 #02 lessDumbot takes flag and resets damage to 0!
Click: 100 #02 lessDumbot hits #06 veruchAI at a range of 2 spaces for 4 points of damage!
Click: 101 #02 lessDumbot hits #06 veruchAI at a range of 2 spaces for 4 points of damage!
Click: 104 #06 veruchAI discharged energy doing 1 point of damage to itself!
Click: 104 #06 veruchAI zaps #10 rHunter with energy discharge inflicting 2 points of damage!
Click: 105 #06 veruchAI is killed! ...Memorial flag planted!
Click: 116 #02 lessDumbot discharged energy doing 1 point of damage to itself!
Click: 116 #02 lessDumbot zaps #10 rHunter with energy discharge inflicting 2 points of damage!
Click: 119 #02 lessDumbot discharged energy doing 1 point of damage to itself!
Click: 119 #02 lessDumbot zaps #10 rHunter with energy discharge inflicting 2 points of damage!
Click: 119 #10 rHunter is killed! ...Memorial flag planted!
____________________________________________________________________________________________________________________
End of Battle sequence
____________________________________________________________________________________________________________________
Battle number: 5
Battle Results:
____________________________________________________________________________________________________________________
1st Place #08 Lockirby Damage: 10 Fuel: 1 Score: 5886 Team: 5886 Author Unknown
2nd Place #10 rHunter Damage: 18 Fuel: 352 Score: 5701 Team: 5751 Red
3rd Place #05 veruchAI Damage: 10 Fuel: 0 Score: 1681 Team: 2666 stolenfromIsamoor
4th Place #07 Lockirby Damage: 11 Fuel: 0 Score: 1287 Team: 1287 Author Unknown
5th Place #06 veruchAI Damage: 14 Fuel: 0 Score: 985 Team: 2666 stolenfromIsamoor
6th Place #04 Bombardie Damage: 10 Fuel: 0 Score: 191 Team: 191 Bellmoore
7th Place #09 rHunter Damage: 18 Fuel: 0 Score: 50 Team: 5751 Red
8th Place #03 Bombardie Damage: 12 Fuel: 0 Score: -13 Team: -13 Bellmoore
9th Place #01 lessDumbo Damage: 18 Fuel: 0 Score: -19 Team: -38 Pokota
9th Place #02 lessDumbo Damage: 18 Fuel: 0 Score: -19 Team: -38 Pokota
Battle play by play:
____________________________________________________________________________________________________________________
Click: 9 #03 Bombardier protected by shield is shaken by #06 veruchAI's misile direct hit doing 6 damage!
Click: 12 #03 Bombardier protected by shield is shaken by #05 veruchAI's misile direct hit doing 6 damage!
Click: 13 #03 Bombardier is killed! ...Memorial flag planted!
Click: 14 #02 lessDumbot is crushed by #08 Lockirby2's misile direct hit doing 9 damage!
Click: 16 #04 Bombardier discharged energy doing 1 point of damage to itself!
Click: 16 #04 Bombardier zaps #09 rHunter with energy discharge inflicting 2 points of damage!
Click: 16 #04 Bombardier protected by shield is pounded by #06 veruchAI's grenade fragments doing 2 damage!
Click: 17 #09 rHunter hits #04 Bombardier with shields up at a range of 1 space for 2 points of damage!
Click: 19 #04 Bombardier discharged energy doing 1 point of damage to itself!
Click: 19 #04 Bombardier zaps #09 rHunter with energy discharge inflicting 2 points of damage!
Click: 19 #05 veruchAI is crushed by #07 Lockirby2's misile direct hit doing 9 damage!
Click: 19 #09 rHunter hits #04 Bombardier with shields up at a range of 1 space for 2 points of damage!
Click: 22 #04 Bombardier protected by shield is pounded by #06 veruchAI's grenade fragments doing 2 damage!
Click: 23 #04 Bombardier is killed! ...Memorial flag planted!
Click: 23 #05 veruchAI takes flag and resets damage to 0!
Click: 23 #09 rHunter lands on a mine taking 5 damage!
Click: 25 #05 veruchAI lands on a mine taking 5 damage!
Click: 25 #09 rHunter takes flag and resets damage to 0!
Click: 28 #06 veruchAI is pummled by #06 veruchAI's misile fragments doing 7 damage!
Click: 28 #09 rHunter is crushed by #06 veruchAI's misile direct hit doing 9 damage!
Click: 29 #06 veruchAI is pummled by #05 veruchAI's misile fragments doing 7 damage!
Click: 29 #09 rHunter is crushed by #05 veruchAI's misile direct hit doing 9 damage!
Click: 29 #06 veruchAI is killed! ...Memorial flag planted!
Click: 29 #09 rHunter is killed! ...Memorial flag planted!
Click: 34 #10 rHunter is crushed by #05 veruchAI's misile direct hit doing 9 damage!
Click: 37 #05 veruchAI is scorched by #10 rSNode's grenade fragments doing 5 damage!
Click: 38 #05 veruchAI is killed! ...Memorial flag planted!
Click: 46 #10 rSNode moves into the strategy node!
Click: 73 #01 lessDumbot is crushed by #08 Lockirby2's misile direct hit doing 9 damage!
Click: 119 #02 lessDumbot is crushed by #07 Lockirby2's misile direct hit doing 9 damage!
Click: 120 #02 lessDumbot is killed! ...Memorial flag planted!
Click: 121 #01 lessDumbot is crushed by #08 Lockirby2's misile direct hit doing 9 damage!
Click: 122 #01 lessDumbot is killed! ...Memorial flag planted!
Click: 189 #08 Lockirby2 takes flag at full power overloading system doing 5 damage!
Click: 190 #08 Lockirby2 takes flag and resets damage to 0!
Click: 207 #10 rHunter is crushed by #08 Lockirby2's misile direct hit doing 9 damage!
Click: 207 #10 rHunter is killed! ...Memorial flag planted!
Click: 245 #08 Lockirby2 takes flag at full power overloading system doing 5 damage!
Click: 245 #08 Lockirby2 moves into the strategy node!
Click: 261 #08 Lockirby2 damages fuel system during repair attempt, fuel burn rate increased!
Click: 291 #08 Lockirby2 completes repairs lowering damage to 4
Click: 356 #08 Lockirby2 runs out of fuel and sputters to a stop awaiting possible doom!
Click: 357 #08 Lockirby2 completes repairs lowering damage to 3
Click: 387 #08 Lockirby2 completes repairs lowering damage to 2
Click: 413 #08 Lockirby2 completes repairs lowering damage to 1
Click: 429 #08 Lockirby2 completes repairs lowering damage to 0
Click: 482 #08 Lockirby2 completes repairs lowering damage to -1
Click: 487 #08 Lockirby2 damages fuel system during repair attempt, fuel burn rate increased!
Click: 535 #08 Lockirby2 damages fuel system during repair attempt, fuel burn rate increased!
Click: 555 #08 Lockirby2 completes repairs lowering damage to -1
Click: 576 #08 Lockirby2 damages fuel system during repair attempt, fuel burn rate increased!
Click: 587 #08 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 587 #08 Lockirby2 zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 588 #07 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 588 #07 Lockirby2 zaps #08 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 588 #08 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 588 #08 Lockirby2 zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 589 #07 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 589 #07 Lockirby2 zaps #08 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 589 #08 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 589 #08 Lockirby2 zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 590 #07 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 590 #07 Lockirby2 zaps #08 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 596 #08 Lockirby2 discharged energy doing 1 point of damage to itself!
Click: 596 #08 Lockirby2 zaps #07 Lockirby2 with energy discharge inflicting 2 points of damage!
Click: 597 #07 Lockirby2 is killed! ...Memorial flag planted!
Click: 597 #08 Lockirby2 is killed! ...Memorial flag planted!
____________________________________________________________________________________________________________________
End of Battle sequence
____________________________________________________________________________________________________________________
Code: Select all
name lessDumbot
author Pokota
iff code lessdumb
main:
if value #cur_fuel < 20 then self destruct
if value #x_pos = #strat_x then
if value #y_pos = #strat_y then
self destruct
end if
end if
generate random
move forward
goto #random
1:
turn left
goto look
2:
turn right
goto look
3:
turn left
turn left
goto look
4:
goto look
look:
scan forward
if scan found enemy then gosub murder
if scan found flag then
if damage is > 0 then
gosub charge
end if
end if
scan perimeter
if scan found enemy then gosub sparx
if scan found flag then
if damage is > 0 then
gosub circle
end if
end if
goto main
circle:
move forward
turn right
move forward
turn right
move forward
move forward
move forward
turn right
move forward
move forward
move forward
turn right
move forward
move forward
goto look
sparx:
discharge energy
move backward
goto look
charge:
move forward
move forward
move forward
move forward
move forward
scan forward
if scan found enemy then gosub murder
goto look
murder:
fire weapon
fire weapon
fire weapon
fire weapon
fire weapon
goto charge
sd:
self destruct
Re: Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
Congrats to Bellmoore and all the other winners, and especially to DumbBot for being the last survivor and finishing top three in the Superfinal.
I can't wait for the epic DumbBot vs DroneB3 "infinite loop" match to be immortalized on YouTube.
I can't wait for the epic DumbBot vs DroneB3 "infinite loop" match to be immortalized on YouTube.
- Willhart
- Stalker, Doxxer, and Sexual Harasser
- Banned
- Posts: 2434
- Joined: 13 years ago
- Location: Finland
Re: Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
When can we expect the prizes?Horikawa Otane wrote:I will be aiming to get the contest in its entirety up on YouTube this weekend.
- Rednaxela
- Maker of Shenanigans
- Posts: 897
- Joined: 10 years ago
- Pronouns: they/them
- https://rednaxela.talkhaus.com
Re: Make a Rad Bug - CONTEST FINISHED. THANKS GUYS!
Much congrats to Bellmoore!
In case anyone is curious, here's my messy nonsense code, with some freshly added comments.
In case anyone is curious, here's my messy nonsense code, with some freshly added comments.
Code: Select all
Name r1
Author Red
IFF Code r1
; Here's my random little bot. It priorities moving to strategy node unless
; there is someone else relatively nearby, in which case it'll attempt to
; attack them.
; There's no awareness of mines, walls, flags, or any scanning of any kind of
; all. It's solely reliant on the global variables for strategy node location
; and location of the nearest non-cloaked enemy bug. It's pretty dumb that way.
; Entry point of the code is here. We'll just drop right into "Strategy Node"
; mode right away as an initial state.
snodeMode:
; Entering "Strategy Node" mode, set name
Name rSNode
snodeLoop:
; The value 'v6' represents the direction we should to turn to face the
; strategy node. Having originally done this months ago I don't remember the
; full details anymore. There is some randomization as a tie-breaker.
; Should output -4 for left and +4 for right, or 0 for facing the right
; direction.
cmath v6 = (4*Sgn((((#cur_head mod 2)*(#strat_y-#y_pos)*(#cur_head-2)+((#cur_head+1) mod 2)*(#x_pos-#strat_x)*(#cur_head-3)) <= 0) And (2*Sgn((#cur_head mod 2)*(#x_pos-#strat_x)*(#cur_head-2)+((#cur_head+1) mod 2)*(#y_pos-#strat_y)*(#cur_head-3)) + Sgn(Rnd(1)*0.5))))
; Some logic to:
; A) Increment value by 1 if we're not yet on the strategy node
; B) If we're on the strategy node, force value to 0
cmath v6 = SGN(ABS(#x_pos-#strat_x)+ABS(#y_pos-#strat_y)) + SGN(ABS(#x_pos-#strat_x)+ABS(#y_pos-#strat_y))*~v6
; Calculate the manhattan-distance to the nearest enemy
cmath v7 = ABS(#x_pos-#enemy_x)+ABS(#y_pos-#enemy_y)
; If the nearest enemy is within a distance of 7, enter hunter mode
if value ~v7 < 7 then goto hunterMode
; Unless we need to move forward, or turn
if value ~v6 = 1 then move forward
if value ~v6 <= -2 then turn left
if value ~v6 >= 2 then turn right
; Back to top of strategy node mode loop
goto snodeLoop
hunterMode:
; Entering "Hunter" mode, set name
Name rHunter
hunterLoop:
; The value 'v6' represents the direction we should to turn to face to head
; toward the nearest enemy. Having originally done this months ago I don't
; remember the full details anymore. There is some randomization as a
; tie-breaker.
cmath v6 = (4*Sgn((((#cur_head mod 2)*(#enemy_y-#y_pos)*(#cur_head-2)+((#cur_head+1) mod 2)*(#x_pos-#enemy_x)*(#cur_head-3)) <= 0) And (2*Sgn((#cur_head mod 2)*(#x_pos-#enemy_x)*(#cur_head-2)+((#cur_head+1) mod 2)*(#y_pos-#enemy_y)*(#cur_head-3)) + Sgn(Rnd(1)*0.5))))
; The value 'v7' is the manhatten distance to the nearest enemy
cmath v7 = ABS(#x_pos-#enemy_x)+ABS(#y_pos-#enemy_y)
; The value 'v8' is a "should we attempt to be firing grenades" value. If it is
; anything except 0, we shouldn't. It consists of a series of tests, which all return
; - The first test is "Sgn(ABS(#x_pos-#enemy_x)*ABS(#y_pos-#enemy_y))" which
; returns non-zero if we're not aligned with the enemy on at least one axis.
; - The second test is "ABS(~v6)" which checks the 'v6' computation above,
; returns non-zero if we still need to turn
; - The third test is "(1 And (~v7 <= 2))" which returns non-zero if we're
; within 2 spaces of the enemy in which case we would rather not be using the
; grenade. Note the "1 And (booleanexpression)" construction which is used
; to convert a boolean to a numeric value.
; - The fourth test is "(1 And (#cur_ammo < 12))" which returns non-zero if
; there is too little ammo.
; - The fifth test is "(1 And (#cur_fuel < 500))" which returns non-zero if
; we have too little fuel.
; These conditions are summed together, and if any is non-zero, we don't fire.
cmath v8 = (Sgn(ABS(#x_pos-#enemy_x)*ABS(#y_pos-#enemy_y)) + ABS(~v6)) + (1 And (~v7 <= 2)) + (1 And (#cur_ammo < 12)) + (1 And (#cur_fuel < 500))
; If the nearest enemy is further than a distance of 7, return to "Strategy
; Node" mode
if value ~v7 >= 7 then goto snodeMode
; In the following code, assign the command we want to do next to the variable 'vt'.
; Checks that are further down are 'higher priority'
; By default, we'll be moving forward
assign vt move forward
; Unless we're right beside the enemy, in which case we want to do a close
; range attack
if value ~v7 <= 1 then assign vt fire weapon
; Unless we're ready to fire a grenade at the enemy
if value ~v8 = 0 then assign vt goto hunterGrenade
; Unless we want to turn left or right
if value ~v6 < 0 then assign vt turn left
if value ~v6 > 0 then assign vt turn right
; Run the command assigned to 'vt'
~vt
; Return to hunter mode loop
goto hunterLoop
; If we've entered here, fire a grenade, set with a fuse value that should make
; it trigger one space closer to us than the enemy is. This is intended to be a
; little more likely to hit than a missile if they've moved a little bit.
hunterGrenade:
cmath v7 = ~v7-1
set grenade fuse ~v7
launch grenade
; Return to hunter mode loop
goto hunterLoop