#Spawn Strike
1980 messages ยท Page 2 of 2 (latest)
My turtle will just follow wherever's threatened
It doesn't get to choose the direction
So that's on you ๐
Did you just lost 40 rating? O_o
Yeah, I did fame
Fun fact, drawing against bots 1000 points below you costs you points ๐
Takes a day or so for bots to be made available in ranked matches to other players
Yeah, at which point I'm sure the counterattack will begin
So here's an interesting detail
I'm messing around with the center flag
And apparently the flag swaps ownership, and the ramparts along with them, before movement that tick
I'm saying this because a creep that presumably wanted to move from rampart to rampart suddenly didn't move, only for that tick
Although since it's not my bot, I'm assuming it didn't just fail to send a move command that tick
I had some flag fights before where enemy creeps ended up sitting behind my rampart and I was forced to attack it to kill them.
But I didn't notice that they didn't move on switch tick.
if it's anything like World, then move resolution for creeps not going into the same square is unpredictable. Flags are triggered by movement, so likely are also unpredictable in order.
Well, those assumptions are faulty
Oh, you tested and it is predictable?
The flag only flips iff there is a creep on the tile at the start of the tick
And that condition was the case way back in CTF in the alpha
Ah, so that case you found actually was just not moving?
To be fair, what I announced earlier shouldn't be terribly surprising
It just means in the tick logic order:
- Any creep on a flag changes the flag to their team and triggers any relevant effects
- Creeps move based on current teams
@heady helm I don't understand how order didn't matter. If two different team creeps stand in front of flag, and both move to it with its 1move mover, it's a night and day difference.
yes?
but at tick100 we both are not. Flag on 50:50, me on 49:50, opponent on 51:50.
we both do move(50:50) on tick100. Who will be claiming it when we both are x1move.
That tick, no one
The flag isn't claimed until the tick after
At which point one of the creeps will have "won" the "contest"
Which creep won has nothing to do with what I was talking about
sure. I understand how "attacks happen this tick, and only after move happens, and next tick starts with moves just happened and consequences applied".
but it doesn't have anything to do with the quesstion: who will be let on the flag, me or opponent :)
haha :)
I told you the priority of creep movement
Although "snake" is doing a lot of heavy lifting in what I said
I was only talking about "which creep won". I'd assume whichever way is used to pick it, should have been applied for capturing multiple flags in Power Split
(like I said, I kept it simple)
That is incorrect
Because again, the flags are captured on the next tick
The order of movement doesn't matter
I see what you mean now.
since there's no contest of space, my logic is irrelevant
I didn't know speed involved in the contest of space. I thought 2 options: either "always player1 wins" or "it' random". I wouldn't assume game would be smart about it :)
so in the end, who wins in the contest of space, when both are x1move ?
random?
Arbitrary
Arbitrary as in you will get the same result every time, but you shouldn't count on it
I believe it takes the first creep after the list has been sorted numerous times
then let it be "pseudorandom seeded on some game values" dunno. I'd expect game to not have this mechanic, it must be simpler. I'll test it someday :)
So technically if you have the exact same initial conditions, you will get the exact same result
But good luck figuring out what that result is in advance, and it could change at any time
first time beating kero haha :)
(because his snake hasn't hatched yet by v6)
doomsday_v9 situation
Are you fast enough for this? ๐
sure, i'm melee, he's ranged :) his newer version return home when they notice me doing it. This older version just had 1 creep return lol
Yeah, I had some bugs with the wall calculation in older versions
also ^ my newer matrix debug "just where it matters, around the creeps"
gogo no snakes please!!
also how fucked us is this matchmaking that it offers me 6 landmines of +0 -15? what did I do to deserve this?!
Almost made it to top 16 ๐
Although you'll probably want to be 1650+ to be sure
I know Kerobi's been working on stuff recently
I'm just getting a lucky streaks, I'm still dumb "once I aggro -- I run after it forever", didn't had time to made any smarts.
Well, you can still climb a fair amount
All those +10's were wins against bots higher rated
And the -2 a loss against a higher rated bot
I still think it's a bug in MM. Situations where I get +0 should happen only when I'm SO high I can't climb any higher. Having 30% of matches be a landmine is not ok. There's no reason to offer a landmine. And so much of it too.
The win streak counters the landmine
And believe me, I know all about "so high I can't climb any higher" ๐
how long should this streak be? out of first 7 games, 4x were mines for +0
Win streaks don't do anything at the top
A win streak is from your most recent loss
So from the -2
It has nothing to do with how you group your games
And, presumably, those "mines" count toward the win streak
before this screenshots I've had 6x wins in a row. So effectively 13 wins in a row. And by the end of this 13winstreak I've got 4x landmines
must be a bug. No reason to offer +0 -15
if not a bug, then an intention that's plain wrong to have
You're free to have that opinion
rating would work just fine if I'd be given opponents of -15+15 range (-14+14?). No need to offer +0 -0.
yeah and we are here to suggest for devs to maybe fix it. They are live people. They will listen to us.
Unless all of you except me protect the idea of serving +0 -0 opponents (landmines) into MM, at a rate of 30% in this case as well.
I don't particularly mind it
because you are fucking top1 why would you care of anything lol )
Lets me test my bot against bots that aren't in my range
You do realize I'd be much higher if I didn't lose points sometimes to drawing against bots that don't know how to attack, right?
sure. I'm fine with having some random out-of-range opponents, for diversity. Just reward me +1 for attempt though. Situations must be win-win always. Must not be "nowin-lose".
Are you really going to get upset over +0 instead of +1?
You'd really hate it at the top
Where the +0's don't just come from "mine" bots
so I don't care about my own rating specifically, I know it's just a number that somewhat accurately represents my skill (my probability of winning vs opponents). But I care about a good design, a good math and such.
Feel free to post in the suggestions then
the bear will downvote it as usualy:)
I think the rating system is working as well as it has in any seasons so far
I also like the exposure to low level bots
sure, it works ok. There's just no objective reason to serve a lot of "landmines" where there's no option to "win".
And ya, as u climb u get a lot more of a wash (winning gets u plus 1 2, losing to a low level bot slams u for -15)
So u sort out that gap
cool. I'm not against it as well. Give +1 for win.
Why that will just create artificial inflation
U deserve +1 for beating system bot no matter how high u are?
That is not how an elo system works
They aren't reinventing the wheel here
if you are to give me system as opponent for some reason - sure. In any encounter a player must be able to win.
and we do have it in Fame btw
rewarded for beating system )
There is no place for a participation award in the math of elo calculation. It would just lead to an endless rise in everyone's elo which is not what u want
exactly. Do you see chess federation schedule Magnus Carlssen matches aganst Dima, just to make sure Magnus is ok? and to reward him with +0?
they don't do +0 matches. No major game has matchmaking that serves players +0 encounters.
Not just +0, it's +0-15 :)
thanks for this great opportunity, matchmaking :)
Idk how to explain this any better than doom and myself already have
Not playing against other players at ur elo makes no sense
So u need -15 to 15 or capped at top
there's no way to "explain" this. I know why it happens. And it is wrong that it happens. No game should serve situations where you can't win. Especially not in 30% cases too.
Zero just happens to be in that range, it would be arbitrary af to not have u play a certain elo range that happens to give u zero elo
*steps back
that's the point of matchmaking though. To be served opponents around your skill level.
"holding your position" is as close to winning as is reasonable
And that is what +0 is
The person ranked #1 can't climb to #0 just by beating #2 enough times
sure, makes sense for a very high top1 players. Doesn't make sense for me, the noob.
Mike Tyson wouldn't take a match offer where "if you lose - you go to the hospital, but if you win - ok, ofc you won lol, you are Mike Tyson, you expect a reward for it?!"
This match just won't happen. For every possible loss must be a possible reward. This is what matchmaking for. To offer us opportunities.
Heh
That's probably the worst example I can think of that you could've made
It's called "title defense"
how about the magnus carlssen one that won't play chess vs Dima because if he loses he'll get -32, and if he wins he'll waste his time with +0 and waiting for me thinking, and possibly I'll cheat and use an engine, and even beat Magnus, that's -rep for him, having to give interviews "Dima probably cheated with anal beads" etc.
what's the profit for him playing underELO opponent? He never does.
I don't know why you're using examples of top players
Your point is much stronger for literally anyone else
just a name you know. Anyway noone (well, not me) ever agrees to a bet, where one can lose, but can not win. It's silly participating in such a bet.
Games usually have 2x different modes: Rating play (matchmaking, +- rating etc), and Fun play (no rating, random opponents). Since current mode is Rating, I want +rating for wins. Don't give me bets with only chances to lose, no chances to win.
Judging by the stats, you've agreed to the bet 1549 times ๐
Just be top seed and don't lose ๐
lol I mean is it shady to hold my final set of changes to the night before so that I can pound on all existing bots for elo without any chance of them getting elo off my new version?
U monster
How many test cases do u have? Out of curiosity
Including system idle, 50
I think
Not all of them are particularly useful
8 of them are BearBot ๐
Lmao Jesus nice
I don't even know if there's any material differences between some
Like, is v97 actually different from v96?
Maybe a comment was added
So because I have shared libs... It unfortunately leads to version creep when I'm working on another are a
Right, that's another possibility
To be fair, I have everything in one "shared" folder too
Which would matter if I actually was in the other arenas
(yes, I added random two days ago to address a case I literally don't have a test case for)
I mean don't forget (it sounds unpleasant to set up) that I can technically run matches against urself in private comps
Oh, c'mon ... Be a man and let me spend at least 40 hours trying to deal with it.
All I know is that when I changed my strat, his bot was building a completely different snake ๐
Oh, yeah, I didn't post that bot ...
Lol u understand what doom is saying right. He intends to write custom detection and counters for every one of the top bots and release it such that we have no time to react
I mean, I understand. So my next question will be addressed to Doom ๐
I go in blind whithout even playing against his bot ๐
You, bois, are stressing me out too much ๐
And I'll be going in blind against any bots released at the end
It's the only time you can release without being worried about some random bot cheesing you
Yes, it'll be a competition to see who can make the best bot based on all the existing test cases in the arena
But I don't have so many tokens ๐
Don't worry, I only spent a fraction of my total dust ๐
Am I right to assume that you had it from the previous seasons?
Yeah
Totally makes sense now.
I could probably turn the things I don't care about that I got from it back into more dust
But I got most of the test cases I was after
There were a few bots in the top 16 that I didn't find
Do you remember who they are? Or not that relevant?
Don't worry, I have your v64 ๐
(although unlike all the other top bots, I never found the highest version)
No hidden strats there ๐
No like in v66.
All fear the suicide bot
Is v41 bugged in the same way as v38 and v40 when creeps just stop doing things?
No idea
Ok.
I just wanted a way to make it more obvious if something is going wrong
Enter "suicide mode"
I'd be honest, I have no idea what "suicide mode" can mean in your case ๐
It's exactly what you see in the picture
Spamming 1M1H and sending everything to the tile that maximizes the chance it gets destroyed without threatening the spawn
Too advanced for me to understand.
It's a suicide bot
It's trying to lose to as many bots as possible
So it has to burn its energy
Interesting ...
Makes it easier to look at test cases and say "yep, that failed"
So you say that you can put a date/time check in your code that let you climb with your bot to a high rank and on the next day when everybody will get access to it, it will just suicide?
I'm pretty sure date/time was removed precisely to prevent that
I have a suicide flag on advanced arenas
Just returns at top of loop if triggered
When testing I just set my bot to give up around tick 1000 or so
I worry that the enemy will just stare at me if I do that
I obv turn it off when pushing to ranked but ya, super useful for debug
Lol I remember ctf how intimidating my bot found system bot
Sitting there at spawn (menacingly!)
It was obviously a trap
I'll write it down: "Stall the game in case they forgot to turn it off".
I mean, even with with this suicide logic...
I don't believe so
Kk
Can't say I've ever tested it though
I do wish we had a suicide function
Why don't u just target ur own spawn
Same reason
Did we ever test it?
I know that I was shooting my creeps. Or it just looked like this during the replay (not sure if there was damage dealt or what code returned).
Well, my understanding is you can't target ally objects
Whether they be ramparts, spawns, structures, or creeps
But you clearly can shoot your own ramparts.
Or I should say - damage ramparts.
Only by targeting an enemy inside them
Glorious
Can only go up from here
Or I guess sideways...
But now that I've confirmed the suicide mode loses to everyone, I can actually use it for the real test
And the real test will be to drop down to zero and then climb up to the top again?
I've done that, but it's not as easy to drop below ~800. As long as I wait at base, build units, and then send them moveto(spawn.!my) with some kind of aggro on the way implemented creep.any.findInRange(creeps_enemies, 7) then creep.every.attack(closest_enemy)
all this feels like a game of "who releases latest", kinda no fun.
so he indeed gets a "somewhat good" bot, gets it to the top to collect Test samples, and then will write a private separate "tournament" bot, which is known to beat every one of actual versions of top bots.
Therefore best screeps:arena strat is to... not participate in screeps:arena.
I guess the only way to counter it would be forcing Test bot versions into pool. No other way to avoid people not participating to win.
I commend Doom for efficient allowed strategy though!
We will see how it works out. He has his work cut out for him. There is a lot of diversity at the top and we have all put in a lot of time tuning them
But it's kinda the nature of arena, new players have the advantage of seeing what everyone else is doing, so they can skip all the meta development that led to the current state
Tbh I love the meta development more than the destination
Of course need to be good at coding too :)
I don't like that it's incentivised to avoid playing. He intentionally missed entire season. And now intentionally missing presenting his bot into the pool, abusing Test tokens.
Because I want playing, and I don't like people having unfair advantage over me )
But to each their own, everyone plays for their own fun with however much time and skill they have
You're missing one important detail: everyone can do this
I don't discredit doom for his choice, certainly more time efficient
And bots don't formally enter the pool for around a day or two after being uploaded
yeah, I'm praising you for executing an efficient strat!!
I just personally don't want to execute it, because I'd want to participate at every moment of arena. And therefore I'd love to find ways to make it impossible. It's counterproductive for the game to be favoring not playing it.
Well, the fact of the matter
Either you do this, or you risk someone else cheesing your bot at the 11th hour
Fame is the metric u should care about then dima
nah, fame appears to mostly be "who clicks the most" or something :)
It is a combined metric of bot quality and maintaining the top of the ever changing meta
That is the one good thing about Fame, yeah
U can discredit it all u want, but it is a metric that stops the very thing u are against
Fame requires regular participation and socialization of ur bot
If not for me racing a few players on fame, there would easily be 50% less bot diversity on the ladder
And everyone benefits from a more filled out ladder
fame currently not presented in interface as something desirable. I look at top1 bear/drake/doom and I feel awe. I look at top1 fame bear and I think "lol"
Idk doom, the 7 day buildup combined with the 3 concurrent series feels pretty good to me
I don't feel like I'm wasting time, keeps me in the loop, doesn't feel like a chore
My lead at this point certainly is unnecessary, but ya, people stopped trying to stop me
It was close for a while
It rewards continual participation throughout rather than making the best bot in the end
Staying top of fame also genuinely creates the "notoriety" that o4 wanted. Ur bot regularly causes people across the ladders pain
And in the case of fame, 6 bots at once
It's not participation tho, if multiple people chase it, it absolutely is a time sampled quality
I certainly understand why o4 would want this participation
Which is interesting when u consider the mobility of the metas
But that doesn't mean I have to like it
Idk, I wanted to fight u or tigga for fame
It will feel good to smash u in the tourney, but this season felt by far the least competitive so far which is a bummer
Exciting to see some new faces go hard tho
lmao fking legend
I'm actually only participating because it's the first season
Figured if I was going to participate in one, it should be this one
Kinda same, felt obligated to go hard this season out of respect to the time the devs put in
I then spent like a month staring at Spawn Strike, unsure of how to deal with all the shadows
It's a great game, just not sure it has mass appeal
Idk I'll prolly pop in here and there if there are super interesting arenas
dunno, for the audience of programmers it sure does!
The gameplay is great, but the replayability is awful
Def won't push fame again tho
how so Dooms?
no competition everyone is too weak? :)
that's an us-problem, not game's :)
Well, it's all fun and games when you're climbing the ladder, improving your bot to beat each new challenge
But then you get to the top
And there's nothing
Ya the top is pretty unfun
once I'm top1 it's when fun will start :) I am already writing code to draw with construct-site platforms blinking :)
And then a new season comes, most of the code you wrote is useless, and you feel you have to write a bot comparable to what you had before
and many other interesting approaches
Oh, that's a u problem doom XD I'd say 80% of my code is reusable from seasons to season
At the end of the day, there are only so many ways to design creeps and exactly correct ways for them to behave
never seen other season, but my code should be reusable :)) if I won't decided I need a completely different archeticture once I've learned more what works and what doesn't
So on new seasons u really should just be deving top level strategy
That explains why you couldn't even decide if you wanted the ranged part to go in front or back
๐
lol what now
And "deving top level strategy" sucks
alright letsa gou!
"there are only so many ways to design creeps"
Can't even decide whether to build RMMMMM or MMMMMR
flying snake*
RRRRRM!
Haha priority of swamp speed is a pickle
lol
Idk I used my generic ranger class from last season for all 3 arenas
High level strategizing sucks when you don't have high level bots to test against
Like I said, I spent a month chasing shadows ๐
U having more fun now that u have test cases?
Yes
Far from optimized, but I think most of the current leaderboard executes their strategies well
Still a little bummed u and tigga looked at the imo fun problem that is PE and decided, I can't think of an optimal solution so I will not try anything.
The portals are an interesting concept
The portals making the game more random than Collect and Control was is not
Why bother making a high level bot when it can lose to a low level bot that gets a good start?
dunno, statistics? or u only enjoy 100% winrate?
It is a staggering amount of rng true
I wonder why they didn't just mirror the map or something
And besides that
Would have been the best of both worlds
The primary reason is I just never got past SS
They seem to be against true mirroring tho
You know how you hate all those +0's?
Imagine that, but sometimes it's a -15
since it's all bots playing, and bignumbers/statistics apply, must not care of unequal spawn chance, it will be all smoothed over time
Good luck
)) as long as its equal chance of getting a losing or a winning position. But I'd hope to get somewhat +8-8 opponents for that mostly :)
Haha ya, the amount of random low elo fame losses I get in pe is pretty triggering. Glance at replay (direct container vs 5 bounce nada)... Yup moving on
+8 is a myth
Oh god, I didn't even think about Fame
yeah I don't like when game becomes a game of luck, not game of skill. I've never played it. Was it that bad really?
That's even worse
Spawn Strike doesn't have any luck aside from the uncertainty on what the opponent does in a tick
Luck sucks
I think it's still fun, but at a certain point ya, u just accept a lot of losses
I railed against it in Spawn and Swamp
q_q
I wrote scathing complaints about it in Collect and Control
And yet somehow we got Portal Exploration
Where you explore whether or not you get to play
)))
Do not think that you are the only one with complaints
I've been playing Arena for years
I'd love devs to participate in arenas as well. Games usually are best when devs are somewhat top5%
And then there's all the people who started with World years before that
careful what u wish for, o4 is officially the scummiest high level opponent I have faced in world
Man has no shame
u think I do? :)
Which I find oddly offensive as he has the keys to balance the issues he is taking advantage of XD
I'd love to read some Arena codebases
I'm inventing multiple bicycles over here
That's most of the fun
Cracks me up how much cleaner some of the combat code is in arena vs my MMO bot
Simply due to easier testing
Despite CPU being 100% more scarce of a resource in world
I do expect to deem every code I'll read as inferior :) but I could benefit from some basic understanding of, I don't know, ... if I'd know what I lack knowing I'd know it :)
Thank god Arena got rid of Memory
"A fresh start" in a lot of games is what drags people back, not pushes away.
When I start a new arena and see how my implemented idea works is where I get the most joy.
Only after that I meet Snake and start working 40 hours a week just to get a 50% win rate against it.
It is not the same for you, right?
damn snakes
The problem with new arenas is there's no spread of bots to go against
translating: we all are trash
It's a fundamentally different experience than coming in the middle
Lol I wonder if tigga was here if he would have shut down our snake shenanigans a long time ago
I genuinely don't think it's optimal to put that many eggs in one basket
And yet here we are
walls are too thick. I can't seem to break it before snake eats me frontdoor
I find it funny that snakes are used for a completely different reason than S&S
(flying one, noheal, just head, mover, and longtail)
Back in S&S you could only spend 1000 energy on a creep at once
Unless you built extensions, but those were costly and vulnerable
So you'd never make the kind of snake that's in SS
flying snake is effectively a creep with 50+250=300 parts (ok 49)
Lol that fucking s&s snake that built its own offensive ramparts for sieging
So fucking creative
Tearing down the fortresses was fun
Lol, what?
haha we should get discord roles based on our join time. Like "prehistoric doomsday", "season1 drake & dima"
SPB would be the prehistoric one, not me
It was this unwieldy long snake that had a combat head, then a healer, then a builder followed by a few haulers and a rearguard. Basically it hauled in its own energy so that it could build ramparts at the enemy base and tunnel to the enemy spawn while under fire from defenders
Yeah, it was quite silly
So much easier to just build a couple spawns in the center and spam super units
๐
Okay, so the priority is a lie
If speed is truly the priority after snake, the mover should've won easily
I have thought that it is more about creep id.
your debug pictures are quite inspiring. You are logging not just your own steps, but history of steps of each opponent? For how many steps? why? each of your creeps has different color? random or with a meaning?
haha feel like I need to make creeps_enemy.onbirth.passport = new CreepPassport(), where it stores full steps story, and etc info like "can_damage" and whatever.
Oh, no, I don't log the opponent's moves
Nor do I log my own moves
The arrows are where my creeps are trying to move
aha, then arrow is current move (as you draw before actual move as displayed)
If it's like World, then speed has little to do with priority.
It's something like the fourth tiebreaker.
From my understanding none of the higher tiebreakers are relevant there
It looks like the speed is the same too.
Infinite vs 2?
There is no infinite
Weight is always considered to be at least 1.
Oh, it looks like Harabi's creep has 2 move but weight 1, so not the same.
I always thought it was size that mattered most
In World, creeps swapping have absolute priority, then based on how many creeps are moving into the creep's tile, then whether a creep is pulling being pulled, then whether it's being pulled pulling, then move/weight.
It's indeterminate after that, and probably based on order they get returned from the db engine.
And you're saying weight is always minimum 1
Yes
That doesn't add up with fatigue
It's 1 for purpose of calculating move/weight, nothing else.
You got a link to that?
Ah
weight = weight || 1
I've seen that before, but didn't realize the weight 1 line
Either that or forgot
Thanks
It's possible that I swapped the "creep pulling" vs "creep being pulled", because I keep having to go back and check which field means what ๐
Yep, I think I did swap them. object._pulled means "the creep by which this one is being pulled".
And object._pull means "the creep this one is pulling".
I keep thinking that ._pulled means "pulled by this".
It would be much easier if they were called ._puller and ._pullee or similar.
._pulledBy is also an option.
WhoWasTheFirstOneToThinkItsEasierReadingTextsLikeThis_instead_of_like_this.this_is_madness
Camels.
Have you ever thought of switching to an artist?
Either way, looks pretty cool ๐
I would like to point out that the heal clearly needs to go in front of the move... smh basic anatomy dude
Oh, by the way
You guys really can't complain about me holding back my magnum opus when I'm already ranked higher than you ๐
I have no games played against your bot at the moment. Maybe that is why you still higher ๐
In the past week while you were climbing I re-wrote all my creeps logic. It is no longer a mess it was before and I finally can make changes ๐
You haven't tried either ๐
There are three more things I need to implement before that ๐
what's your secret?
You already saw my current bot
"me but better" lol
More or less
well that's kinda a compliment to me :)
even being bad, I still managed to choose a somewhat ok strat :)
I mean, you just spam melee from what I understand
not just that. Camp, walls, protecting base with tough shenanigans too
all low-hanging fruit that doesn't require actual coding ))
Actual coding is hard
yeah need like 3 days straight for next feature, don't have it at all
Just pretend that the snake is from the tick before
Since you can't draw visuals that represent the current state of the board
(which is very weird)
So, what about the snake?
Don't take the bait drake, he is just trying to pull more test cases out of us
I'll try to get a ranked game against him tonight and I'll post the replay
situation is: you all inferior :)
even BEFORE he applied his anti-personal skills :)
doomsday 4 life
my hero
It's not like what my current bot does is a secret
It just builds three 5T25M20R ranger and then I believe a 5T11M6H healer
It then sits at spawn and snipes anything that gets too close
If it feels it can defend the spawn with just one ranger, it sends the others forward to the enemy spawn
Which happens pretty often when the opponent tries to force their way across the swamp
And then can't escape
It feels like you describe me.
I did have a 100% win rate against various versions of your bot
But most bots would go all in too early
So around tick 1800 I'd just slowly march my rangers across to the enemy spawn
@tiny elbow do you also have a feeling that in the next version of Doom's bot we won't see all of this? ๐
lol wont see what?
he has been plain, he intends to write purpose built detection and counters for each of our bots
All those turtly rangers that wait for tick 1800 ๐
this will probably be his fallback if he fails detection
for the record, its all u guys fault he is at top, every time he posts a series, my bot seems to be holding him to draws ๐
To be honest, it is you who have played against Doom, so you know what to expect. I never saw his bot ๐
Actually, with yours is about 50-50 win-draw
Beeves is 100% draw
lame, thought i held long enough
โขw<โฅโช is 100% win
the beeves draw does not suprise me at all
it took me a lot of effort to shave wins off beeves
And those are the only three "real" bots I see in the top range
i think my new strat will handle him much better
I wonder how you get them at all. With my creep composition it is really easy. But with only one head ... Oh, do you sacrifice some body parts to make more creeps?
ya, i spin up some support rangers that brawl while my snake bores
and they cycle back to the snake for healing
Yeah, I saw that fallback strategy. It is the one where I win 100% of the times.
But the strat that I win against them loses to Beeves and potentially Doom ๐
ya, just need to add some reactivity to ur bot then
ie create some metrics of quantifying what ur opponent is doing
and adjust ur strat accordingly
I have thought of it, but the time window for decision making is too narrow and I can't wait (or your Snake will be next to my spawn when I finally build my last creep).
that is the struggle/ tradeoff of reactive
In theory, you only need a single tick to react
assuming they spawn something relevant
many bots spawn some trash units at open
irrelevant to my snake design
i guess i could match trash till they spawn what i care about... but that is a race to the bottom
Welcome to reactive bots
oh i know
I'm not sure how much you remember from the reaction wars in S&S back in the alpha between me and Tigga
my compromise is that my head spawns blind, then i shave down my healer to afford some rangers as needed
oh i remember S&S, i called it knife fighting
because the edge was soo small
What was it?
It had a very similar dynamic to SS
just a swampy death match, spawns had some containers at open and then there were random containers that spawned in center that were fought over
Where you have a lot of energy to start
primary difference from this SS is that the center mattered
unlike the center in spawn strike
Although back in S&S, you were limited to spending 1000 energy at once
But yeah, you were incentivized to send a worker to the center to collect the energy there
And various strategies and counterstrategies developed around that
I forgot, were you allowed to build there?
Yes
it was one of the first times we saw serious bunkers
The simple solution was to build extensions next to the containers and put the energy in there
The spawn can use energy from any extension anywhere on the map
Assuming it's yours, of course
idk if u have seen it drake, but my PE recycled that extension builder class
just puts a little fast worker into the field and he builds extensions around containers
No, I didn't see it, actually.
Maybe I was winning too fast ๐
Did you find my last bot? You were curious what I do with a central container connection.
ive been grabbing test cases last few times i played fame but havent sat down and acutally done anything with them in a few weeks
In my estimation it gives me 33 energy per tick.
my guess is it has more to do with combat than clearing the center container first
u likely have well tuned ur bot to outclass my static fighter design
probably with a sprinkling of mele or heal
but dont worry, i will give it some time
just focused elsewhere
No pressure.
No-no, he don't need to do it. Lets stay on topic ๐
There's Portal Exploration
There's Construction and Control
And then there's the arena that everyone has a bot in
Oh, my brain hurts. I can't come up with a reasonable "Nutcracker" solution ๐
for his swamp camp?
(no one tell them that my final turtle won't just blind rangers)
There are Aecert, von Deus and Doom. Last two have a pretty good reaction to incoming threat. I don't have the code yet to identify the side from which the pathing is better and then I can't cross the swamp without loosing all my creeps.
my solution for both of them was side entering the swamp, but doom likely chases
Side actually makes it easier for me
which although i have never tested it, my snake should keep cycling around looking for a safe crossing and then eventually suicide
Because there's more room between the swamp and the spawn
does it cycle the various entrances?
The only thing I can think of is to stare at his creeps from the other side.
It follows the attacker(s), yes
no i mean does my snake try different swamp entrances and keep getting put off by ur defense chasing
Oh, I don't know what your snake does
or does it just kinda cycle at one of the side entrances
kk
anyhow to drake, there arent a whole lot of good solutions tbh
I know it tries to go in, gets bodied, retreats, and then heals up
ideally a bot who only drawed wouldnt get to top rank and thereby secure tourney wins on draws
lol
When you come through the wall next to my spawn you always go straight through the middle.
And then repeats until eventually it just doesn't retreat
oh after my snake crosses the swamp it guns for the spawn (it still runs retreat logic)
but i tried to make it skittish about crossing the swamps with enemies in immediate vicinity, so it tries other entries
Well, my creeps aren't actually in range of the swamp tiles
nah, it considers some zone
Unless there's a threat that demands shooting closer
oh u know what
Oh, I forgot, did we get a reply what happens if the game ends up in a draw during finals?
i tied that to mele enemies tho
if ur just running rangers, it prolly ignores u
and just tries to cross
The goal is to bait the snake into the swamp so it can't run away once it starts getting shot
sadly a draw goes to the lower seed as a win
isnt seed 1 best?
So Doom secured his spot even here ๐
It's like 1st place is the highest place
ya, having a turtle bot player sitting at top rank is subideal to be sure
Indeed, if the tournament was done right now
I'm pretty sure Doombot would win in the most boring way possible
Then we just need to overtake him before the season end ๐
I'll be cheering you up ๐
might have to write an ahk to spam ranked games till the horn ๐
Well, my goal will be 100% win rate against all bots
likewise
Not draws
i heard u
how are u doing so far on ur test cases?
i genuinely havent started my rewrite yet
but have strong theory crafting for it
I believe if I ran it right now
Assuming it runs as intended
I would win
Against System Idle
To be fair
That's better than yesterday
Where it would have been 49 losses and 1 draw ๐
I have thought that you just switched the direction of climbing ๐
Ran a few games. No Doom-bots so far ๐
UPD: 2806 rating... Where are you Doom?
That's a very good question
Not like I hid the bot
Maybe internally it didn't benefit from the win streak bonus and never climbed beyond when v15 was released?
I wonder if draws are handled somehow differently on frontend and backend
Specifically that u likely draw to lots of low level bots, but playing manually u get dragged up due to matchmaking
I'll do an elo reset if necessary to find it
What I can say is that I got to around 2900 spamming rated games
And then immediately lost 40 points doing fame
You can probably find versions in fame
There should be several that are very similar to v15
The last versions basically saw me fix weird edge cases that caused a loss
Although there's still one edge case that happens like 1% of the time where my healer and two rangers block each other because of a 1 tile gap
I apparently don't have any replays of that anymore ๐
The highest bot it gave to me was a Snake at 2654 rating. I'll try again after midnight reset.
I think that your bots should appear a bit higher in the rating, but I'm hitting soft cap. Every win gives me 4-6 points and every loss takes 10 away.
Need to make those fixes that were postponed ...
If it's any consolation
I never found that bot
This was a fun little bug that made me go "huh?"
Haha
You supposed to be superior to other bots so why bother? ๐
Well, that's the scenario where my creeps lack the power to just bulldoze the enemy spawn
I could do all this fancy stuff like poking in and then pulling back out
Or proding each entrance for weakness
But why bother?
Just wait until time's almost up and then rush in anyway
That's what Beevesbot does
After the latest changes I've made my bot started losing every other game against Beeves ๐
I need to retract changes to figure out what happened.
This is amazing
An error occurred, which caused my bot to entire suicide mode, sending everything to the enemy spawn ceasing all attacks
This not only drew SPB's snake over to try to defend it
But also clumped up my creeps such that the snake refused to attack
So we just sat there, doing nothing for 1000 ticks
yeah my movements often make him go do circles near {0,0} with his snake for some reason :)
That is pretty interesting. I didn't see such snake behavior before.
Finally
You have no idea how annoying it was to get the bot to beat all those versions at once
is it hard to beat? we at 1600 do it all the time :)
#arena-talk message
It has... many variants
jokes aside, he just rushes his minisnake in, I catch it on swamp and murder. He does some smart things like attacking two fronts or trying to pull me while snake comes from other front, but it's not welltimed, and my mindless bot just happens to return, if I recall correctly.
See, the trick is winning consistently
Turtlebot already drew half the time and won the other half
But does he have any tricks up his sleeve? I was not paying much attention since I'm not even close to that 2500 where his natural habitat is, I'm getting too much murdered by 1200 flying snakes, but doesn't he just rush in through swamp? Can't you in 100% cases meet him there and kill? what exactly would make you draw?
Higher versions don't just suicide in the swamp until the 11th hour
I do clearly have. And, man, I struggle much ... Lets forget about the snake for a moment, there is Anti with some simple wall breaching strat. But I keep losing to him in 10% of the games. Only yesterday I've noticed that under some unknown circumstances he is running a different build order that I wasn't ready to deal with.
No, he doesn't. There are different snake body compositions within the same bot version that play differently against different opponents. Some of the strats designed to deal with swarms, some against turtles.
I start to think that it is just random.
@heady helm as the only other person that actually knows the amount of diversity in a seemingly identical build, I am genuinely impressed with this
Curious tho, did u have to make sub classifications?
Or were u able to do it with a single classification?
Well, it's responding differently depending on the snake
Including building a melee creep if the snake goes heavy on melee
It's also not consistently winning against all of them yet
Idk if I'm actually going to have time and energy to write my new strat this evening
I've been pounding so many issues the past few days
Might just polish a turd and call it a day
Frequently I'll change something for one and it'll break for another
What about tomorrow? ๐
Like I just found a bug where if there were two ranged creeps within 5 tiles of my own, my creep might stare at the one 5 tiles away instead of running from the one 4 tiles away
The dates just lined up poorly, I have the kids this weekend and my wife is in mexico
Fair.
Boy, oh boy, I'm stressed ๐
It doesn't work as I want it to. Despite the fact that I already made "Lego bricks" that I combine strat from. It always fixes some bots and breaks on another.
Fortunately for me, at this point when I break another bot, it's only a couple unless I just borked the whole thing
Oh, that's a fun bug
So I give every object a name
For my creeps, their names tend to be set based on the properties I give it, although I can also set it manually
For enemy creeps, their names are just based on their properties
But my creeps will be like "Hunter 65" and enemy creeps will be "Enemy Hunter 66"
The same extends to ramparts
Well, I'm not updating the names of the ramparts if they change side ๐
So is it a bug or a feature? ๐
Why am I so dumb? Why my creeps can't work together? ๐
I personally won't touch any code this last day. Given life experience, it's a bad idea doing something today. I've had 90 days. Last one is to chill. Even God did that. Why shouldn't I?
OMFG, I'm about to make an anti-Anti strategy.
the beauty of test cases and version control
still
if i do decide to go on a bender tonight, u better believe i will be tagging in version control win loss tie on my test set
(and it's not like I have this luxury anyway :)
version control is free, testing is not:)
surely u have collected some test tokens
x2 so far, never spent one, not gonna spend it today
oof... ya gues su have to be grinding fame to get a lot of them
tho i will admit, the fact that there is no end of season reward for top fame kinda cracks me up
just removes a little more of what little purpose that ranking even had
not mad, just amused
yeah the more I look it it, the more I like Fame as an integral of overall greatness. There should be at least as grand reward as for one single arena. Probably even more!
(I'm top16 fame; you say gotta grind, but how much more grind u expect to do than being top16? telling you, Test Tokens are for oldmoney code top1 aristocrats, not for us normal top95% percentile people)
and I don't do 7day runs, as far as my understanding goes, Fame bundles, yet chests don't. So I do it every day. Can't do more than that. Other than "just be better LOL".
Darn it Bearbot v25
Stop going too deep and getting killed before my healer can arrive
I'm trying to test something!
Rich man problems ๐
I've discovered it's easy to test stuff in Contests. Can get one piece of code to do that I want, and then launch my main code against it.
I'm not sure how publicity of this Contests work though. Because for powersplit it appears that every game of mine is available publicly. I hope that my personal Contests with no participants and no link sharing are private.
Like it was a surprise for me that just clicking a link icon during replay instantly publicly posts it.
Don't try to make me think it's working, Game. I don't trust you.
first-generation-rich poor-man's testing :)
I've decided to aim for the "neck" of the snake if it's sufficiently weak
Does it work?
I know that there are versions that will eat me alive if I'll try to do it with my creeps.
I conclude it could only be a good idea if you'll be focusing head first.
It does lead to situations like this though
Because I need to stay in range or else it'll retreat and heal
And if I'm that close anyway, doesn't matter how many are adjacent
It's better for me to be able to RMA
If it is dead you win anyway, right?
The goal is indeed to kill it
Otherwise I shouldn't be engaging there in the first place
I still don't know this range game. Have some theory ideas but no idea how it actually goes
...without my healer
I have no idea what that means
Okay, I think I fixed that weird edge case
Hopefully it doesn't break against others now ๐
starting range4 what can happen to range if I move forward/stay/move back, assuming opponent will move in, in this particular piece.
it appears range logic is so that it lets either come melee with ranger or get out of range in ~2 ticks, if I'd incorporate it in my units :)
for example, if I want to never come melee (range1 is a no), I must stop approaching enemy melee when the range is more than 3... just some mockup math for when I'll finally do kiting rangers code :)
There will be trophies for fame too
ty, haha didnt want to complain, but i was hoping there would be
And... now it doesn't even go for the neck, because it's staying away from the head ๐
Which is probably smarter
Same as the chance to meet a dinosaur. Either you meet it or you don't ๐
I meant 50 out of 50
Ah ๐
I was worried for a while if I'd be able to actually finish the generalist bot
But it's looking really solid now
Really punishing all those snakes that sacrifice armor for mobility and convenience
Oh, and Drakebot is there too ๐
Really not sure what the master plan was with this
how does it work in the end? vs ranged head you can outheal? vs melee head you can outdps their heal?
It works by engaging the enemy where it's advantageous and keeping away where it's not
but I just don't have experience, in some of my tries I just lacked the dps to outdamage ranged snake, it was healed back.. so being able to damage more than they heal is important.
you ultimately have no issues with your own dps? it's always enough?
oh, I forgot you starting using rangedMassAttack when in melee! this looks effective!
That does indeed increase the damage output
Although it's not necessary to exceed the enemy healing power
Even if you have 25 heal parts, that's only 300 damage heals per tick
My creeps do over 500, and that's before considering RMA
in a melee head case, healer could have what, 20-40 heal parts, that's 240-480 heal per tick. That requires 48 ranged parts to just stay even. Pretty close!
I have never seen 40 heal parts at once
Or even close to it
40 heal parts would cost 10k
2500 mover. And some-gimped head
Plus another 2k just to move at regular speed
Leaving a mere 3k for... you know... damage
but melee damage is x6 more costeffective than ranged
and as long as it can't be killed, it's enough to chew on base
It's actually only 4.5x assuming you want 1:1 movement
And that assumes it can actually hit
being able to hit not important if heal lets live forever. Spawn can't run away.
And then you meet my little friend who goes by the name of RMA
But yes, I did consider such a monstrosity at one point
I'm not sure how to think of it. I need some damage. It must move alright. So that part is fixed. Then I pick between 80 and 150, 30 and 10.
How would my thought process be to compare it 130 vs 200? like when comparing it to other options altogether, like 60 tough?
You should always assume 1:1 movement unless it's something that's going to stay at your spawn the entire game
130 vs 200
You've gotta include the movement part cost with it
In a way, that is a problem for armor
As you do indeed need to pair it with movement
yeah, a big one. If only, once destroyed, armor would have no weight for example?!
That would make armor much stronger, to be sure
Could also just give it no weight in general
Either way, that's not the world we live in
and increase price to 25++
no, 25 is bad lol, we get 200hp for 60. I propose getting 200 for 50++ :)
ok increase to 15-20 :)
exactly. not the world, it's arena!
we already fiddle with turrets. No reason to not fiddle with tough :)
So, in World armor has the same base stats
Or maybe I should call it "tough", but yeah
But once you get a high even level of... "technology"... you can boost the parts on creeps
Boosts to attack double, triple, or even quadruple the damage
Similarly for ranged and heal
Boosts to move parts x2~x4 the movement provided
So you can have 1:1 movement with 4R1M
For armor, it greatly reduces the damage the part takes
aha, buffing heal squared!
By 30%, 50%, and 70%, if I recall
Indeed
As long as the armor holds, it's very hard to deal damage to the creep
well yeah just keep armor as it is, but give it 50% :)
(I don't like live-forever overhealing strats though; I'm happy it's not a thing here)
As you can see, though, armor really got the short end of the stick in the journey to Arena
Although not as short as what Towers got...
At least armor was useable in certain situations
Sounds like you're questioning my ability to build creep body.
Don't you dare giving me hope, Game!
TOUGH parts and Road are quite difficult to use effectively, aren't they? Personally, I think Tower had more clear use cases, so I was surprised that it got adjusted first. Regarding TOUGH and Road, it might be worth creating a topic in arena-suggestions to discuss them, with the caveat that "they don't need to be adjusted immediately."
It's been used by a variety of bots in Spawn and Swamp and Collect and Control
It's even included on the melee creeps in CTF
The only time towers have been relevant is CTF, where they could fire every other tick and got free energy
In the C&C beta, I actually set my bot to build towers only when I encountered Tigga. It was quite effective, but unfortunately, there are no replays left. We didn't even run into each other during the tournament.
I also tried to build towers in S&S
But they were just outclassed by normal creeps and healers
The 1M1R and 1M1A unit compositions that Tigga frequently used in C&C can be stopped in their tracks by firing three shots from a distance.
Oh, right, I want to tell everyone this: I recommend sharing a number of your replays before the season switches over. Once the season ends, you won't be able to watch your unshared ranked matches anymore.
Sometimes the creeps just refuse to stay together
I never lived to see this stage. Wow, my routing not so bad then!
You have to care about grouping your creeps before you can get in an infinite loop keeping them grouped ๐
I see you Drake
But I got to 3000 first ๐
If I understand the rating formula properly, I think the best I can do reasonably is 3150
At which point I'll have a fun picture to share
I hope someone takes noumenari's place at #16
I always draw against their bot ๐
Yup
Looks like some bots are still giving +1
But some aren't
what's our elo constants? 400? 32?
Dunno
you can tell by knowing rating border where +1 turns into +0, since you are experiencing a lot of it, you are a best person to know
It's every 50
Although only some drop each 50, it appears
The problem is I don't know what elo I'm facing each time
if that's their last version, you can somewhat assume by looking leaderboard
You cannot
+-50 like that
Nope, the internal bots seem to be over 100 higher, at least in some cases
Also, you rarely face the latest version
anyway numbers should be like 16|200, meaning +0/+1 border is at 400, and overall if you'll see it being right, you can assume it is
Even accounting for the fact the latest isn't available right now
No, the highest is 3150. The best is obviously 3141.
Did you at least get 3141 at some point?
Yes
Yay!
ya, im fading hard
bummed i didnt get to play ur bot
but alas is the nature of how they have season finals setup
OMG, Doom, who did you play against?
I already was capped at 3-4 rating per win.
UPD: Well, I see at the last screen that bots are the same.
It's possible I could have gone for 3200
But unfortunately I did not achieve my goal of 100% win rate
So it would have been risky
My bot's biggest weakness is the startup time
I take the center every time, but the armored creeps take longer to build than a lot of snakes
Normally this isn't an issue, as they just ram into the ramparts unsuccessfully until all my creeps arrive, at which point I have the stat superiority
But some bots are more aggressive with going around the sides of the ramparts, and my handling of such creeps is not as airtight
Especially if there's multiple
They won't get back to the spawn like that, but I have seen instances where my creeps get caught, flanked, outhealed, and isolated
But the startup time also results in draws against bots like noumenari v2
Because they dig through the wall closer to my spawn (on the path to the center) and my creeps are too scared to stop it before a failsafe triggers that causes my creeps to run back to spawn to turtle
At which point they don't even finish digging through the wall, and we just sit there until time runs out...
By the way, some replays of my bot:
https://arena.screeps.com/game/FQECGELJMA
https://arena.screeps.com/game/6RCX39G4BI
https://arena.screeps.com/game/HVXI24PEZ4
And Drake and Kerobi also shared some
Who did you lose to?
That was painful to deal with.
Mostly trash bots that were too dumb to be scared of my creeps
Although not dumb enough to challenge them either
I've lost 15 points to the swarm bot that I mistakenly identified as a turtle. I killed all of their creeps except one that sneaked to my spawn. That was embarassing.
These are pretty cool. Mind sharing how you implemented that "rampart kiting"?
Is it with custom cost matrices that have low costs for ramparts and high for outside tiles?
- Score and sort the ramparts based on how close they are to the closest enemy to the ramparts
- Send each "rampart defender" to the "best" rampart in its range that isn't already taken by another creep, or out of its range if its adjacent best is where it already is
Note: combat simulation assumes all ramparts take maximum possible damage, and ramparts that have no HP after this are ignored
There's plenty of nuance, like making sure creeps don't get confused or stuck on the back ramparts, but that's the gist of it
You'll note that what it doesn't do is handle multiple threat vectors... at all
It only considers the closest
Which is pretty exploitable if anyone knew about it
And even without bots specifically countering it, some still confuse it because of that
It also probably overprioritizes "chasing" the enemies near the ramparts rather than cutting them off from going around
Such things would definitely need to be fixed if there was a back and forth arms race
Oh, it is a lot more behind it than I have thought then.
I was thinking about using ramparts in those cases where I was able to control the center, but it was really tricky to lure the enemies there and after I started losing control over middle to multiple opponents I gave up on the idea.
Man, I'm such a disappointment.
That's why I wanted test tokens for all the other bots
And I still missed a critical one that nearly cost me the whole thing
Out of 1500+ games that I have (where 500 of them were from the last 3 weeks), I never met Susy. So I didn't have him in my pool.
I knew that such thing could have happened that my creeps will be lured into ramparts fight (totally expected this from you even before I saw your bot). And I even tried to implement the logic that was making them hold next to the one that is breaking the wall, but I didn't find a way to not fail against other bots at the same time. So I made my bet on who I would face in the finals and adapted my bot to them.
TL;DR;
Chris lost - my logic broke ๐
Yeah, as I recall your bot just suicided into my creeps
Oh, apparently I never saved a replay
Pity
Season 3
This arena has been chosen for Season 3. It will include the new mechanic of limiting spawn-to-extension range (see this discussion https://discord.com/channels/860665589738635336/1472855270626693143), and a few other changes to the map: pre-built extensions with energy and energy refill in spawns.
Playtest:
Is it intended for Spawn to regenerate energy?
And IMO, this array of extensions looks weird and unnecessary.
If my calculations are correct, this time around we have 8500 energy to spare in Basic.
Are we allowed to build in Advanced this time?
Yes, energy refill is intended, we want to make this mechanics more standard. Same with extensions, since spawn capacity is also standard.
No construction, as previously.
@heady helm, I was able to take Top-1 in "Blue" arena.
Will you be back in Season 3 for a competition on Spawn Strike?
That still doesn't mean "no", so there is hope ๐
Well, considering that at the time I didn't realize season 3 had already started
You can change that to somewhere between "extremely unlikely" and "definitely not"
I got a lucky streak today ๐