Chat:World/2022-04-24

From CG community
Jump to navigation Jump to search

Ajaiy: struct Which league are you in btw

struct: bronze

struct: but i havent done much yet

Ajaiy: oh ok

Ajaiy: But I am not able to select your bot

ClockSort: I've done a ton and I'm in Wood 2. Hah

Ajaiy: It's not showing

ClockSort: technically I haven't submitted anything though

struct: its not top 1000

Ajaiy: ok

struct: I need to find some motivation :/

Ajaiy: I can relate

ClockSort: struct what do you think of this challenge compared to past ones?

Ajaiy: I give up every single time when I try to make a game in Unity

Ajaiy: idk what is making me do that

Ajaiy: But pretty sure 75% of loss of motivation

struct: ClockSort I'm not a big fan of it

struct: but I don't like fog

Ajaiy: Spring Challenge 2021 made me super confused

Ajaiy: I reached till Silver

Ajaiy: This year is better

Ajaiy: for now

JohnyDaison: Ajaiy have you set yourself small achievable goals or are you always trying work on everything from the start?

Ajaiy: I mean, I could complete small games if my motivation didn't run out

struct: not really JohnyDaison

struct: Maybe i should do that

Ajaiy: Each day, my motivation halves

Ajaiy: But I HAVE recreated a nice version of Hangman in Python

Ajaiy: Since it took 2 hours

Enknable: The bright side is...you'll never lose your motivation!

meowhurrhiss: The temptation doubles everyday, however.

Default avatar.png Kokoz: Good morning guys.

Default avatar.png Kokoz: What does shield do in the spring challenge?

ravenbluedragon: Prevents spells

Default avatar.png Kokoz: only spells? it doesn't stop dmg?

ddreams: you know there's a description right there

Default avatar.png Kokoz: yes, thank you

Miki09: some1 using neural networks for spring 2022?

Default avatar.png Kokoz: I wish I knew how to do that :)

Default avatar.png Kokoz: Is there a way to challenge top ranked players?

Miki09: yes

Miki09: In ide

Miki09: players

therealbeef: in the IDE you can select bots (at the bottom of the screen) that will play against each other when you do play my code

Default avatar.png Kokoz: I cant find you

therealbeef: only the top 1000 in your league are selectable

therealbeef: and your own bots

Default avatar.png Kokoz: oh. Thank you :)

Miki09: Do you think it's better to have 2 "defenders" and 1 "serial killer"(kills everything near him, camps in middle of map) or 2"defenders" and one guy who sends and shields spiders to enemy base?

VizGhar: If he's succeful, then choice #2 :)

Miki09: ok :-)

Default avatar.png Kokoz: I am using the second method now and it doesnt work so good :S

therealbeef: that kind of knowledge ('meta') usually changes over the course of a contest, as more advanced bots are submitted

Default avatar.png Kokoz: It is hard to progress with choice #2

VizGhar: you are using it wrong then... check top player

Miki09: I already checked him

Miki09: Hes killing me 3:0 all the time :-(

VizGhar: hmm easiest way is to stand near opponnent base. If mob is not targeting his base, send it there (control). If it's targetting the base shield him

VizGhar: should work for top 500 (my guess)

Miki09: thanks for advice

Default avatar.png Kokoz: the top 1 guy just spam control on my heroes so they cant defend the base :D

Miki09: Yeah

Default avatar.png Kokoz: cool

Miki09: Even with 3 defenders I lost 1:0

VizGhar: yup... I'm shielding if there is any mob near my base and opponent hero in range

VizGhar: (dont check now, resubmit :P )

VizGhar: win rate 11/11 so far... I've probably improved a tiny bit

Miki09: congratulations :clap_tone3:

Miki09: OMG u r 260

VizGhar: hmm wind is incorrectly computed somehow for me... good to know

VizGhar: 260?

Default avatar.png Kokoz: I think this challenge is too complicated for me (for my skills).. I will satisfy with mid bronze

_NikJ: I'm shielding myself if there's an enemy within CONTROL range and there's a spider nearBase, but so far I don't like how it's working

Miki09: Kokoz dont satisfy with low!!!! Aim for at least silver

therealbeef: the bronze boss will probably be chosen from mid-bronze, so if you're mid bronze now, you can reach silver too :)

Default avatar.png Isaax: hello

Miki09: hi

Default avatar.png XxGrindingSheeshxX: when silver guys ?

Miki09: today

Miki09: 5 pm cest

Miki09: 3 pm gmt

Default avatar.png XxGrindingSheeshxX: ty, hate this offensive meta, hope there will be more defensive spells

Default avatar.png Isaax: why when i return 0 the function don't end?

Default avatar.png Isaax: def f(fathers, log): http://chat.codingame.com/pastebin/830c9934-2646-4306-a9bd-f3f3c4afbb5c

Miki09: @VizGhar you from slovakia!!!

Default avatar.png Kokoz: Im 1867th now.. But I just don't know how to pregress. I get the idea but it is hard to implement it.. I am a beginner (or low intermediate) with not much experience

Miki09: hmm

Miki09: Ill watch your matches

VizGhar: :D hej som

Miki09: Já jsem z české republiky :-)

VizGhar: :wave:

Miki09: Kokoz first of all you have kinda lagged wind method

Miki09: You need to check if the target is in range

VizGhar: Hmm my bot didn't perform that well at the end :) I'm just enhancing defenders

Miki09: Once you lost because you used wind and the enemy was out of range

Ajaiy: Miki09 Can you just tell me how to see someone's plays?

Ajaiy: I can only see Top 1000

Miki09: Go to leaderboard

Miki09: You cant see more than 1000

Ajaiy: Sorry, I confused bots with plays

Miki09: If youwant to watch specific player search it in the search bar

Miki09: Oh ok

Default avatar.png Kokoz: yes Miki, I am aware but I dont know how to fix it.. I think I am checking for range..

Miki09: Try euclidian

Miki09: distance

Miki09: math.sqrt((myx-hisx)**2+(myy-hisy)**2)

Miki09: https://www.tutorialexample.com/wp-content/uploads/2020/05/Euclidean-distance-in-tensorflow.png

Default avatar.png Kokoz: I am checking if the monster is close to my base AND if my heroes are in wind range

Miki09: hmmm

Miki09: What is ur distance formula?

Ajaiy: Kokoz All your heroes are in the base, it might be better to send one of them to kill some spiders outside the base

Default avatar.png Kokoz: heroes x and y minus monster x and y <= 1250

Miki09: thats not gonna work

Miki09: https://www.tutorialexample.com/wp-content/uploads/2020/05/Euclidean-distance-in-tensorflow.png use this

Default avatar.png Kokoz: Ok, I will try that. And Ajaiy, I will try moving them little bit further away from base

Miki09: Nice

Default avatar.png XxGrindingSheeshxX: if your hero's position is x = 0 and y = 0 and monster's pos is x = 1250 and y = 1250 your calculations are not gonna work cause the distance is bigger than 1250

Default avatar.png Kokoz: I see

Default avatar.png Kokoz: Thank you guys :)

Miki09: np :-)

Default avatar.png XxGrindingSheeshxX: np

Default avatar.png FrozenYT: hello

Default avatar.png FrozenYT: im new here

Default avatar.png FrozenYT: im doing no spoon but im stuck

Miki09: Where?

Default avatar.png FrozenYT: at the start

Default avatar.png FrozenYT: i dont understand it

Miki09: hmm

VizGhar: he is doint there is no spoon puzzle

Default avatar.png FrozenYT: yea

Default avatar.png FrozenYT: for python

Miki09: For each node, you have to output his neighbors on right and down

VizGhar: FrozenYT ask questions directly

Default avatar.png FrozenYT: ??

VizGhar: You didn't ask anything

VizGhar: we cant help you

Default avatar.png FrozenYT: so should i say "Can you help me understand the 'there is no spoon puzzle'"?

VizGhar: there is full description there... what you dont understand?

Miki09: you have to go left to right

Miki09: in every node

Miki09: like reading a book

Miki09: and for every node

Miki09: you should print its neighbors

Miki09: on right and down

Default avatar.png FrozenYT: ok

Default avatar.png FrozenYT: thank you

Miki09: np

VizGhar: I don't understand how does that help him o.O

Default avatar.png Kokoz: I think I fixed wind range issue..

Miki09: NIce

VizGhar: improved my bot falls 150 places :D that's life

Miki09: lol

avdg: I hope it's worth long term

Default avatar.png Gawei: Ma da shen are you there?

avdg: Also, ranking can be a bit flaky

Default avatar.png Kokoz: So, by fixing wind issue and moving heroes forward I moved 450 places up in the ranking :3

Jerrasterix: I want to make a summer holiday project, involving astronomy... any ideas pls ??

Default avatar.png LaurensD: how about taking a picture every hour for the whole summer of the sky and make a slice show out of it

Jerrasterix: involving programming dude

jacek: programming in bikini

Default avatar.png LaurensD: you can make your own raspberry pi code :innocent:

Jerrasterix: jacek :unamused:

avdg: matrix math with stars, sky and time?

Jerrasterix: cool, thanks avdg

LarsVR: can we get out of bronze yet?

Jerrasterix: nope only at 1pm EST

Jerrasterix: *2pm

JohnyDaison: Why is opening Silver delayed so much?

therealbeef: this is normal. because they make the bronze boss out of one of the bots, they want people to have some time making decent bronze bots

Uljahn: yes, there are no bosses prepared in advance for higher leagues, they want the bosses' difficulty to scale with average skill of participants to make legend league not too crowded and not too empty

Enknable: Uljahn does that mean bosses are coded during the competition by Codingame to separate Leagues?

therealbeef: they just copy a person's bot

Enknable: oh

Enknable: thats a better way lol

therealbeef: sometimes you can see that when they copy a 'chatty' bot ;)

Enknable: so there's someone out there...getting pwned by themselves

Enknable: what a world

therealbeef: i think everyone above the chosen bot (including the bot that got copied) gets automatic promotion

JohnyDaison: Why should they be pwned by themselves? Have you tried running your own code against itself? Perfectly symmetrical violence. Ended with a tie.

Enknable: sounds like The Matrix.

Enknable: I beat myself all the time.

Enknable: <3

XxGrindingSheeshxX: if u use random values it can not be symmetrical violence xD

JohnyDaison: TMI

dinggg: Hey. When is Silver out and anyone know how many people get in straight away?

Enknable: relax antiwonto

Thorcode: ;taco:

Thorcode: :taco:

Thorcode: that bot slept

Wontonimo: hi antiwonto

antiwonto: [auto] hey Wontonimo. I'm a bot :robot:

Thorcode: how

Enknable: dang

Wontonimo: nope sleep, just not gonna taco during competition

Thorcode: why

Jerrasterix: hello antiwonto

antiwonto: [auto] hey Jerrasterix. I'm a bot :robot:

Enknable: Wontonimo must be a positonimo

Wontonimo: there is too much conversatiion about competition and there is some fear it will turn into spam

Thorcode: ok

Thorcode: hola antiwonto

Enknable: sup, antiwonto

Wontonimo: only looks for "hi" ;( I should improve it to also allow hola, sup

Thorcode: balls

Thorcode: yeah

Wontonimo: that's no longer a bad word

Thorcode: that badword dead

_NikJ: you bet your ass it isn't

antiwonto: [auto] _NikJ be respectful and watch your language https://www.codingame.com/playgrounds/40701/help-center/code-of-conduct

_NikJ: there we go, I triggered him :d

Wontonimo: please don't try and trigger it

Thorcode: new word?

Enknable: there is no language anchor in that link btw

Thorcode: what can you do antiwonto

Enknable: no mention of "bad words"

Thorcode: help

Wontonimo: it really just says hi, looks for bad words, and clash of code links right now

Thorcode: anti stop sending msg with "help"?

Thorcode: that's goood

_NikJ: I know it's been asked 22! times already, but when does the silver open for spring contest?

_NikJ: Maybe you can add an answer to it Wontonimo

Wontonimo: II think maybe 2pm

Wontonimo: EST

_NikJ: that's in 10 hours?

Thorcode: spring challenge like the botter of the galaxy

Wontonimo: idk, i was just looking at the logs for an answer

_NikJ: are you participating in the contest, Wontonimo?

Thorcode: he is

Enknable: hi antiwonto, I found a real ass in https://www.codingame.com/ide/48546456e7d6e2e50fc86753d96171ce61673d4x

antiwonto: [auto] Enknable be respectful and watch your language https://www.codingame.com/playgrounds/40701/help-center/code-of-conduct

Thorcode: stop pls bro

Enknable: just wanted to see

Enknable: the switch statement

Enknable: ;)

Wontonimo: Enknable, consider that your warning. No more

Westicles: can you get into silver with only wind?

Thorcode: i think can

Jerrasterix: I guess not

Jerrasterix: literally every top 250 players are using control

Wontonimo: my rank is 1385, and I only use wind

Thorcode: some guy could defend with one knight and wind

MACKEYTH: I'm not.

Jerrasterix: nope you can't Thorcode

Westicles: well, then how about only control? I only want to learn one spell

Wontonimo: lol

avdg: I'm now 650 with only wind, got to less than 1800 yesterday without spell

Aramang: i reckon you could get silver with shield and no wind

Thorcode: yep

Jerrasterix: lol, you can't with 1

Thorcode: only control can do that

Enknable: Wontonimo affirmative :cop_tone1:

Wontonimo: :thumbsup: :grin:

_NikJ: Yesterday I was 80th and I only used wind. Today I'm using shield too and I'm 300th :D

Enknable: Dang..megaman looks alot like the police lol

Jerrasterix: _NikJ, that's bcoz others have started to use spells

_NikJ: Oh believe me, I've noticed :D

_NikJ: Some are very aggressive

Thorcode: wind and control is good to defend

avdg: and I'm wondering why the ui doesn't display emoji's in comments

Jerrasterix: yeah, I am struggling for a basic implementation lol

avdg: it can do unicode, I saw Japanese text earlier today

Jerrasterix: defending will only earn you a lose as you will not go out of the base

Jerrasterix: and will gather less wild mana

Thorcode: how do control cost you?

Enknable: jerrasterix thats true, but only if you don't lose yourself

avdg: spells can eat mana I guess

Thorcode: yep

Thorcode: every spell need 20 mana

Jerrasterix: each spell 10 mana

avdg: you can loose 30 each turn

nalka0: Do you guys know if damages dealt by a hero outside of the base to a monster inside the base is wild mana or not?

Thorcode: i'm thinking how to caculate time each round?

avdg: I think any hit gains mana?

Thorcode: nah

Thorcode: killing gain mana

Jerrasterix: outside is wild mana nalka0

nalka0: Yeah any hit gains mana but my question is about WILD mana

Enknable: nalka0 if you're checking that deep

Aramang: i don't know for sure i heard wild mana was based only on the hero position

Enknable: damn u scary

avdg: `In case of a tie, the player who gained the highest amount`

avdg: `this is called wild mana`

nalka0: Haha well i've been looking at the code in their repository but the only thing i found is a gainMana() that increases manaGainedOutsideOfBase without conditions

Thorcode: i think i should start coding my own hero now

Q12: "In case of a tie, the player who gained the highest amount of mana outside the radius of their base will win. this is called wild mana."

avdg: Basically, wild mana is kinda like a hidden parameter unless you know about it

avdg: It only cannot be more than mana

nalka0: Exactly, that's why I ask cause I can't just figure it out with "debugging" ^^

Thorcode: just make a var to store your mana to caculate wild mana i think

pmor: wild mana is determined by the position of the hero

Enknable: pmor I trust u for some reason

pmor: https://github.com/CodinGame/SpringChallenge2022/blob/3297c5714be55f900028750e8ecb8b51d6aa4551/src/main/java/com/codingame/game/Referee.java#L563

Enknable: might be fear

avdg: if my ai plans to maximize, I don't have to store wild mana I guess

avdg: though the game provides the mana of each player each turn

nalka0: @pmor yeah I was about to post it here but you've been faster ^^

nalka0: And also, i've been wondering, is it normal that we're all stuck bronze?

MACKEYTH: nalka0 wild mana is earned when your hero does damage while outside of the base

MACKEYTH: Monster position doesn't matter

Wontonimo: no

Wontonimo: wild mana is earned just being outside of base

Wontonimo: no combat needed

Wontonimo: it is an incentive to not camp in your base, that's it

yhyoxx: wild mana is mana earned outside the base

MACKEYTH: No, combat is required, if I'm reading the ref right. It's in the performCombat function

avdg: combat just means getting your hero close to monster outside base

nalka0: Wontonimo, do you pull this from reading the code or the knowledge you have of the game? Cuz indeed Referee.java line 570 makes it look like you're right but i'm not sure about fully understanding the code

MACKEYTH: https://github.com/CodinGame/SpringChallenge2022/blob/3297c5714be55f900028750e8ecb8b51d6aa4551/src/main/java/com/codingame/game/Referee.java

MACKEYTH: line 563

cegprakash: https://www.codingame.com/share-replay/623410227 wth was that in the last few turns

nalka0: @mackeyth Yeah this line means only the hero matters, but it doesn't mean you don't need to deal damage

JohnyDaison: nalka0, are we reading the same code? because to me it looks like you need to be in combat

cegprakash: how opponent pushed about 10 monsters of distance 10000 units in 1 turn :O

MACKEYTH: triple overlapping wind spells.

avdg: in the worst case, 6 heroes can push a single entity

cegprakash: I was only using MOVE commands avdg

avdg: well, onsters, because you can't push your own team

avdg: so 3 times 2200 => 6600

cegprakash: SPELL WIND 17630 9000 means push to right bottom right

cegprakash: why is it pushing to top left

Aramang: it would probably be op to gather up 3 spiders and triple yeet them at the enemy

avdg: pusing is relative to your hero, otherwise dunno?

kovi: i saw some blue wind 0,0

avdg: 6600 push with a base fog radius of 6000

Jerrasterix: I try to accomodate SHIELD in my code , went from 1200 to 4100 :innocent:

kovi: on that replay

Aramang: 4100 means literally doesn't run right?

Jerrasterix: nope, just last every battle somehow, without any error :sob:

avdg: hmm I had a running bot at the back, it just didn't defend well yet

Jerrasterix: I am reverting

AidasLau: please help on wood 2 league?

avdg: you have a code problem or a problem solving problem?

AidasLau: 2nd one

Jerrasterix: just defend your base

avdg: probably best to share a replay?

AidasLau: yes but how to write code for that?

cegprakash: kovi I'm unable to reproduce that replay with same seed in IDE

cegprakash: it's so weird how 10 units teleported 10000 distance

Jerrasterix: just attack the spider nearest to your base

kovi: your backwind helpem them a lot (pulling both mobs and enemies)

JohnyDaison: cegprakash it seemed to me like one of your dudes also casted wind in the direction of your own base

avdg: 6 * 2200 => 13200 => basically almost the whole map

cegprakash: no JohnyDaison my base is 0,0 I am using spell on SPELL WIND 17630 9000

cegprakash: and opponent has only 20 mana JohnyDaison

Jerrasterix: nope your output shows that you are SPELL winding at 0 0 cegprakash

cegprakash: even triple wind is not enough to teleport 10000 units

Jerrasterix: your bot 0 does it

JohnyDaison: yep

Default avatar.png LaurensD: so... is the entityid consistent the whole game or can that be changed each loop?

JohnyDaison: turn 198

JohnyDaison: entity.Id is consistent

AlMualem: is there a way to know where the cut off will be done for silver?

Default avatar.png LaurensD: Thanks :grimacing: I wonder what I'm doing wrong with the current refactor :P

avdg: cut off silver: unknown, depends on which ai the moderators are picking

AlMualem: maybe mid of bronze or top 1/3 i would say....lets see

cegprakash: thx Jerrasterix JohnyDaison kovi fixed it

Jerrasterix: np

Aramang: treating all 3 heroes as one is kind of cool https://www.codingame.com/replay/623417233

this is super basic test logic, skip to about 45

AlMualem: For a weird reason i read Johny's name and i read Davidson :P

AidasLau: help on wood 2

AidasLau: how to write code

Aramang: if you don't know how to write code start with a simpler problem

Ajaiy: Wait, how do I know if someone pushed me with WIND?

Thorcode: start with the starter kit then got to bronze fast

benobab: http://chat.codingame.com/pastebin/47d44bac-037e-4f7e-9b20-db2116af589a

benobab: Hi, C++ here, for the spring challenge 2022, I'm timing out at 70/75ms, not 100ms. Am I the only one ?

dbf: 50 ms per turn is a limit

Wontonimo: 50ms is the timout

Jerrasterix: Ajaiy you can if you track the position, and telling if there was a sudden increase or decrease

benobab: oh boy ok, it's writtent "Temps de réponse par tour ≤ 100ms" it's for both players?

benobab: thanks

Ajaiy: Ah I see

Ajaiy: Thanks

jacek: its 50ms

dbdr: 50 ms in english is translated as 100 ms in french :D

jacek: but time is slower in france

Ajaiy: dbdr lol

benobab: aha

benobab: thanks for your replies, I'll let the creator know

Ajaiy: It's like telling that ord in python is OrderedSet in some language

benobab: of course it is :p

SirLoxley: that awkward moment when you start programming an attacker, play against your version which doesn't do it ... and lose

Ajaiy: I understand

jordonez: Working on that right know, my attacker is useless hahaha

jordonez: now*

Ajaiy: What does it do though?

jordonez: he is not a real threat so i lose because of wild mana

AnyaForger: :kissing_heart:

SirLoxley: my attacker actually works, only thing is ... he attacks my base lol

Something is odd with the normalization logic

jacek: insurance fraud?

Aramang: your bot geined sentience and tried to commit suicide

Ajaiy: SirLoxley Maybe you used the wrong coordinates for something

Ajaiy: Like thinking your base is at 0, 0 when you are in red team

Ajaiy: It happened in my code

SirLoxley: of course I did :-)

Ajaiy: Wait, really? :O

Flash7: do someone know if an entity is protected from spell the turn it is used?

SirLoxley: I actually made the effort to 'normalize' the game, i.e. if I happen to have the opposite base, I will make a note, and invert all input ... that way I can always assume my base is at 0, 0 (obviously has to be corrected during output)

SirLoxley: Looks like there was an oversight :-)

Enknable: r u using atan2?

Ajaiy: Who?

MACKEYTH: Flash7 no, shield takes effect the turn after it's cast

Enknable: SirLoxley

Flash7: alright ty

SirLoxley: no. Cos/Sin nothing more fancy

SirLoxley: It's ok, found it

Ajaiy: Wait, why do you need it though?

Alurian: How's everyone doing in the event?

Ajaiy: Very well, thank you :)

Alurian: Is there a way I can play against your bot?

Ajaiy: Which league are you?

Alurian: Bronze

Ajaiy: I guess, no? Since I am not yet in Top 1000

Ajaiy: I am tweaking my code

Alurian: ooh ok

msumera: When is silver league opened?

Alurian: in 5 hours if im correct

Mortis_666: yeah! im at top 100 now

Alurian: waiting for that

Alurian: top 50 here :D

Mortis_666: nice

Alurian: waiting to improve until silver comes

Mortis_666: same

Default avatar.png LaurensD: Is there any way to identify when a spider dies?

IvesL: hp = 0?

Alurian: not really, it's better to recreate a list each turn

SirLoxley: dies or died?

Default avatar.png LaurensD: died

IvesL: dieded

SirLoxley: you don't get the ID in the next round

Alurian: hp = 0 won't work seeing as they wont give spiders with 0 hp

Aramang: you cant know where the emeny will move so its possibly unknown if they will hit it

Default avatar.png LaurensD: aww made it so I got a list that is re-used so that I still have the older locations when someone is out of bound

IvesL: but if you dont have it in vision, its id disappears as well

Default avatar.png LaurensD: Yeah but it might be alive

Th1nhNg0: I was test the stable-baselines3 library in python with snake environment and it look very promising

Aramang: spider heads out of vision towards my base... my bot: this is fine

SirLoxley: My attacker sucks :/ ... I won against my own but, but by Wild Mana only

Alurian: you should just make sure atleast 1 guy is close to base

Alurian: because you can see everything up to 5000 units away from base

Alurian: I often win with wild mana


Alurian: attacking is hard

JohnyDaison: LaurensD just put a tick limit on how long to store that Entity. If it hasn't been seen in a few ticks, it's probably gone.

Default avatar.png LaurensD: I sort of had that idea but it'll react unpredicatable because it assumes that spider is still there for a few turns

DollarAkshay: When is Silver opening ?

IvesL: in 4 hours?

DollarAkshay: TY

Default avatar.png LaurensD: later today

DollarAkshay: I know it is today. wanted to know the exact time

Default avatar.png ACad: Hey how exactly do we win wild mana?

Default avatar.png LaurensD: should be kills outside your base

Ajaiy: You kill spiders outside the base

Default avatar.png LaurensD: so in the 'wild'

IvesL: you "damage" rather than kill

IvesL: you dont have to kill

Default avatar.png ACad: Nice, do you know if you win more by damaging the ones with more health?

Default avatar.png ACad: Thank you a lot everyone

KiwiTae: wildmana its smth new in bronze?

IvesL: you get 1 damage per damage

IvesL: 1mana*

JohnyDaison: no, only difference is inside or outside the base, health doesn't matter

Default avatar.png ACad: ok thank you!

IvesL: so each hero get 2mana from each monster in range each turn

MACKEYTH: Yep

Ekaon: What makes the difference after 600 rank to win the battle ?

IvesL: what do you mean

MACKEYTH: Two things I found useful was switching the behavior of my attacker between attacking and hunting based on my mana

avdg: my bot is now around 650 (now slightly better)

I guess wasting less moves can do something

avdg: also use more spells to put the opponent under more pressure

MACKEYTH: and making aggressive used of wind to blow spiders into the enemy base

Ekaon: This is rouggly what I do

avdg: my ai is also already quite good in gathering mana

Default avatar.png Kokoz: if you use control on monster does it carry "is_controlled" untill something else happens, or "is_controlled" is 1 only while using the spell??

avdg: though it doesn't hunt monsters, just defends the base for now

Ekaon: I had 3 guys that can swtich of behaviour depending wich one is the nearest, one that farm mana, one to defend and one to attack. The attacker is also a farmer at the begening

Ekaon: I found that using mana at begening is really a waste

MACKEYTH: I just added some control-anticontrol logic to my bot. waiting to see if it helps

avdg: Kokoz: control is applied once on the next turn I believe

See statements

Ekaon: Mana is really a key from what I saw, we should use it wisely. For example, I shield my defender only if it was controlled once and helps me get some ranks more

avdg: It's mentioned on "Action order for one turn"

Default avatar.png LaurensD: decided to test the bot agains @Alurian, lol that wasn't a good idea =P

Default avatar.png LaurensD: got butchered

MACKEYTH: Hmph. literally no difference.

Ekaon: Maybe you should do it more contextually ?

msumera: i just tested my bot against 4th and it won, hope it's not just luck

Miki09: Submitting code

Miki09: With REALLY big changes

Miki09: Hope it'll be ok

Default avatar.png LaurensD: it's probably fine ~

Miki09: idk

Valdemar: Ekaon as far as I can see difference in wld mana gathering mainly. The better you move to beat several spiders at once the higher you will climb

msumera: new bot, 40th -> 13th :)

Miki09: Omg

Miki09: congratulations :-)

msumera: thanks! I added some features like standing at the edge outside of base when defending just to get wild mana ;)

Miki09: O.O

Miki09: Can anyone please tell me when will the silver league open,

Miki09: Many people say many different things

msumera: i heard it's in 3.5 hours, but not sure

Miki09: yeah me too

Miki09: but I also heard its in 7.5 hours

Miki09: so idk...

_NikJ: I also heard that they need to add it manually and they won't do it today because it's sunday D:

_NikJ: So nobody really knows when

Miki09: hmmm.....

AlMualem: it is 2pm GMT

SirLoxley: When my hero gets mind controlled and casts a shield on himself in the same turn ... why is there no shield on him in the next turn? I cannot find it in the rules

msumera: if the hero is controlled, he cannot do anything

Obult: silver opens in 4.5hrs

_NikJ: are there any new rules in silver? do we have that info?

DollarAkshay: what happens if wind is used on the edge of the map ?

Uljahn: no new rules expected in silver, bronze rules should be final

KiwiTae: SirLoxley control happens before shielding

Miki09: oh ok

Ajaiy: Wow, this year, the rules are super simple

Miki09: Uljahn do u have any info about when the silver opens?

Ajaiy: but there are millions of strategies

Uljahn: Miki09: no precise info atm https://clist.by/standings/spring-challenge-2022-34341526/

Miki09: ok thx

SirLoxley: the rules are very vague here, it's really easy to miss, there's only one line about 'even if he's controlled' ...

avdg: There is referee code, though the description isn't the worst imo

avdg: There might still be some try and error involved, explaining things clearly is a hard thing to do

avdg: The code can be found here https://github.com/CodinGame/SpringChallenge2022/tree/main/src/main/java/com/codingame/game

But again here, you might need to read it quickly 10 times before it makes sense

MACKEYTH: Ooh, top 10!

Nerchio: gz

avdg: nice

avdg: gonna have to clean up my code before I push again, now cleaning up and luckily no big bugs here

avdg: my ai now takes a bit more time with mostly about 1 full ms

avdg: but I now see peeks at 20ms

avdg: hmm

avdg: oh I guess I read the wrong number

msumera: how do you check that?

avdg: `const { performance } = require("perf_hooks"); performance.now()`

avdg: at least in js/ts

Nerchio: playing defense in this game is pretty fun

avdg: mine is quite defensive

Nerchio: I will write offensive when I am satisfied with my defense, which is far from it :grin:

avdg: I'm making already changes to improve offensive implementations later

wlesavo: if you sim the defence you will already sim the offence as well :slight_smile:

karliso: Best defense is a good offense

avdg: hmm my code simming?

wlesavo: oh hi karliso, how you feel about this game? :slight_smile:

avdg: it's not even comparing 2 states at the moment except 1 thing that is not related to simming

avdg: (more related to math I can't do in my head so I took the slow way)

avdg: (so I have a function doing n instead of 1, but with a low n)

karliso: wlesavo nnguys say is it quite unnable so that is good I think.

Default avatar.png k4aAki: Hey boys, beginner question here. I expected to be threat_for to be only 1 if its trajectory is pointing towards my base. but it seems like its default 1

avdg: you mean, you mostly get the value 1

RoyTorre: Jo! I've been first in my league for a while, but I'm not advancing. How do I get into a higher league?

avdg: RoyTorre did you get a working bot yet?

RoyTorre: Yep and I pushed it live in arena too

avdg: does it kill incoming monsters?

Default avatar.png k4aAki: its seems like i messed up. just printed the inputs

RoyTorre: Yes it does. I win most battles

RoyTorre: I'm in wood 1 though XD, but for some reason it doesn't send me to a higher league

avdg: I'm now rank 660 in bronze with a bot I submitted yesterday evening

RoyTorre: Ah maybe your league changes over night then or something

avdg: the bot needs to be kinda flawless mostly, unless you have a fun bug making your bot win better than expected (already happened to me a few times)

avdg: but otherwise, it just a matter of yeasting the bot sometimes

RoyTorre: I see so I'll just have to push the code to the arena?

ganbat24: I am in 2570 with a bot that doesnt use mana

avdg: yeah, and see if it doesn't do weird behaviour

avdg: I got around 1800 yesterday without using mana (just before I added wind casts and after fixing bugs)

avdg: that position may be higher now, with more bots being better

RoyTorre: I see thanks!

avdg: I guess around 2000 with the same bot

DollarAkshay: what happens if wind is used on the edge of the map ?

IvesL: from my experience, it stucks at that point

IvesL: so it will be constantly pushed and get stuck if your code works like that

Ekaon: the 100ms of game turn are processed after le last monster is read ? Because when i check it can be 80ms long to read the entities

Default avatar.png LaurensD: @Ekaeon per constraint it could be < 50ms for turns; the first turn is allowed to be < 1000 ms

Uljahn: start the measurement after reading the first line of inputs

Ekaon: So I dont understand why my program can run 83ms without being shut down

jacek: sometimes there is margin but its unreliable

Ekaon: I benchmarked that reading entities can last 101ms long

Default avatar.png LaurensD: are you sure it's 83ms? that's rather slow (I think :?)

Ekaon: Yes, this is why I'm surprised. I use c++ and it's only the entity reading phase that take this long

Ekaon: Not always tho

Ekaon: In avg it's 23ms

Ekaon: Maybe the testing area has slow stream operations ?

Uljahn: maybe you're measuring it wrong?

avdg: I write nodejs code and it's doing turns usually in around 1 ms with additional logic I added just now

Ekaon: I'm pretty confident, but I can show you what i use to measure

Ekaon: http://chat.codingame.com/pastebin/f12df54e-717a-4e5a-82b2-8eae13f0aeb6

avdg: I've done some precautions though about perf from the start

Default avatar.png LaurensD: lol

Default avatar.png LaurensD: oh wait

Uljahn: Ekaon: do you start the measurement after reading the first line of inputs?

avdg: it can do turns in less than .2 ms at best

avdg: (mine is measured after reading)

Default avatar.png LaurensD: Oh well mine is also like 20 a 40 ms whoopsy

ycsvenom: is silver league open now?

slazure: whats silver league

avdg: few hours

Ekaon: In first place I measured before the first reading until the end of turn. But I was able to restrain it around only the reading of entities

avdg: a bit more than 3 hours and silver is open

slazure: what is silver

ycsvenom: on the contest slazure

ycsvenom: bot programming

Ekaon: Because actually all my others bit of code are smaller than 1ms

avdg: silver is better than bronze, bots are ranked

avdg: Are you sure it's not the waiting on input?

avdg: Because that is normal

Ekaon: You mean before the first input ?

avdg: yeah

Uljahn: so you're measuring the referee time and your opponents time lol

avdg: I wonder if the opponent is executed in parallel

jacek: theyre sequential in referee

RoyTorre: How can I debug log with python?

jacek: print to stderr

Uljahn: print to error stream with file=sys.stderr argument

jacek: print("Debug messages...", file=sys.stderr, flush=True)

Ekaon: Haaa no you're write, the time is while reading the first input

RoyTorre: Thanks

avdg: :-)

Uljahn: :upside_down:

Ekaon: Okay my bad

Ekaon: Mystery solved

jacek: (:

ycsvenom: it would be magnificent if the rank appears as tooltip when you point to someone in vs battles

avdg: (hmm my mind thinks it sees references with bomberman game)

Default avatar.png LaurensD: Hmm, if you do move to XX and the next turn execute wait; will it keep walking or stay in place?

avdg: move is only executed once unless it is a monster

avdg: (but meh, you can't control monsters except with a spell)

Default avatar.png LaurensD: whoopsy with move I ment my own hero

Uemu: I rly lose a lot when it comes to wildmana score

Default avatar.png LaurensD: @Uemu yeah! got to fix that also =P

avdg: my bot can plan attack very well, as long as it sees the monsters

avdg: that's enough to gain a lot of mana for me

avdg: (and yeah, wild mana is gained outside your own base)

ycsvenom: i hate aggressive bots

avdg: and my bot only focusses on defence for now

ycsvenom: what's your rank?

avdg: 663 now

avdg: added some big changes to my ai, but my ai doesn't take advantage of the change now

Last submission was yesterday

IvesL: if you want to play against aggressive bot, try "statiolake"

avdg: hmm, wonder if I win

avdg: nope

_NikJ: statiolake is so aggressive and I'm so passive that he loses to normal spiders before he can get to my base

_NikJ: but man oh man is it an annoying strategy :D

IvesL: he goes all in

IvesL: i like his thinking

Miki09: Like th #986th statiolake?

avdg: just shoot one 1 mentallity :D

avdg: *one in

avdg: hmm second run, I win

IvesL: but honestly his strategy still has great potential, if he manages to herd 3 together

avdg: it would be scary if he does symmetry

avdg: and target the one very close to base

ycsvenom: maybe if we do vulnerability testing on the contest code maybe we can change it's variables from outside :smiley:

IvesL: his current strategy will will harm his herd

IvesL: still*

Default avatar.png LaurensD: @IvesL why does it feel like I

Default avatar.png LaurensD: I'm playing with myself

Default avatar.png LaurensD: and then getting rekt

Illedan: :tada:

Default avatar.png LaurensD: https://www.codingame.com/share-replay/623529501

Miki09: Im submitting new code, looks pretty good

Pieman: Is silver unlocked yet ?

Miki09: no

Ekaon: In 2h

IvesL: @LaurensD, i feel like you need to set priority for your heroes, rather than all of them rushing for the same target

avdg: hmm his bot is random, same run, different result

avdg: or maybe it's because I changed something in my code (I only changed something in the debug output)

Default avatar.png LaurensD: @IvesL had something that made sure that there were not two attacking the same target but that did not work too well haha

avdg: or maybe he updated his bot

avdg: this is one run from my ai

https://www.codingame.com/replay/623533226

IvesL: @avdg, i think you use too many wind in early turns

IvesL: when you can hunt them for mana

Default avatar.png 1mpossible_c: playing codingame makes me feel so smart but in reality I suck at programming

avdg: it is already conservative, though the checks needs to be improved

Miki09: Oh god

Miki09: He uses 3 winds at same time

Miki09: O.O

avdg: outside base it only uses wind when it think it is effective

IvesL: @1mpossible_c same same

ycsvenom: that was brutal avdg

Default avatar.png 1mpossible_c: when there's character criteria, it becomes really unfair for C-family languages

ycsvenom: he is an aggressive player

Default avatar.png 1mpossible_c: python and similar languages will just write very short functions

Default avatar.png 1mpossible_c: C-family needs curly bracelets for beginners lol

avdg: ? what is brutal?

Default avatar.png LaurensD: throwing the enemy right to the finish

ycsvenom: i mean the reply you shared

Default avatar.png LaurensD: dude did the same to me

ycsvenom: replay*

avdg: it's the only way my ai can be outbeated I believe apart from overloading

avdg: well, at least my defence

RoyTorre: fuck had to revert 2 h of work because of a bug XD

antiwonto: [auto] RoyTorre be respectful and watch your language https://www.codingame.com/playgrounds/40701/help-center/code-of-conduct

avdg: ai's don't seem to like that :p

Divlo: Hello, world!

Divlo: :sunglasses:

ycsvenom: till now i have max of 4 lose streak

Default avatar.png LaurensD: @avdg I thought challenge accepted; but awww https://www.codingame.com/replay/623537597

avdg: it's only using wind now :p

Default avatar.png LaurensD: mine has not really brains atm

Default avatar.png LaurensD: just randoms

Default avatar.png LaurensD: lol

avdg: hmm I might get a very aggressive bot working quite soon

Default avatar.png LaurensD: is there any trick to throw enemies really far?

Aramang: multiple winds on the same turn

avdg: I'm working around some fog issues right now

Default avatar.png LaurensD: interesting

avdg: what also helps: your ai's aim in the same direction

StyllyMyle: Sup bois

StyllyMyle: long time no see

Aramang: yeah if the heroes arent in the same location they need to shoot in parallel, not at the same point

Default avatar.png LaurensD: @avdg always to the enemy base :3

avdg: ? my winds?

avdg: yeah

Default avatar.png LaurensD: does it help being in front of them and then execute with winds? or isn't there a logic like that

Default avatar.png LaurensD: so the draft throw is bigger

avdg: there is logic to keep my heroes a bit outside base, but with 1 always near base

avdg: and 2200 is the distance it travels

avdg: base fog is 6000

StyllyMyle: Cannot get promoted to wood 1?

avdg: StyllyMyle did you just submit?

StyllyMyle: I can only get test in arena button

StyllyMyle: No submit

StyllyMyle: and after testing, Im above bot but still can't get upgrade

avdg: you need to wait the full rank stabilization procedure

Miki09: Illedan congrats on #3

untab: this is good crack

Illedan: ty

avdg: hmm my new changes add 323 lines of code to the ai and it currently doesn't improve the ai at all, will work on that soon

Miki09: Im currently on 153 line :-)

avdg: 1125

Miki09: lol

madninjaskillz: nearly 600 lines and every change makes it worse :|

tealfrog: what language?

madninjaskillz: c#

Miki09: me python

avdg: typescript

avdg: and still doing less than 1 ms each turn

Audatic: I feel if you make it top 50 they should give you more than 50 battles for the rank to stabilize. Just so random at the top spots.

tealfrog: I'm at 200 lines in python which seems enough for this league (12%)

Miki09: With my 152 lines I'm #746

Illedan: 1300 for 3rd

Miki09: nice

avdg: I wonder if there are others who track how long their bot spend on 1 turn

Miki09: Me totally not

VizGhar: 1300? you are searching right?

struct: you are doing good Illedan

VizGhar: like stuc t during last multi :P

Miki09: Does anyone know somebody who uses nn?

VizGhar: you were 1st for quite some time

struct: well I was beta tester

VizGhar: aha ok :P

avdg: you reused your code?

struct: on previous contest yeah

struct: but it wasnt that strong

struct: and I didnt really have anyone to test against

struct: so it wasn't a huge advantage

avdg: simming this game isn't that hard and unless your bot keeps state, the info for each turn is quite small

avdg: so in best case, dump data, run local

avdg: at least, if you had bugs

struct: My final bot had 100% win rate vs the beta tester bot

struct: so

avdg: ah

avdg: you could only play with yourself :p

struct: I could play vs the other beta testers

struct: but my bot also had very high win rate vs them

avdg: or share (parts of) the code with your collegues

avdg: because you are not in contest anyway

struct: I didnt share any code

WannaBeHum1n: guys

WannaBeHum1n: is sliver out yet ?

avdg: 2 and a half hours now

Alurian: 600 lines for 45 here. but using c#

avdg: @Alurian is it fast?

WannaBeHum1n: 104 lines js for 800 xD

Alurian: wdym fast?

avdg: I guess less than 10ms a turn is still quite fast

MACKEYTH: I'm up to 1138. A lot of trash has accumulated

Alurian: I have no clue how fast. i can place a timer

KamiTzayig: does this arena thing go forever?

avdg: mine does it typically in less than 1 ms a turn in typescript even after adding some logic, but I focussed on optimisations a bit

struct: the contest is 8 more days

KamiTzayig: im rank 6 now and i have an idea how to improve

struct: but after it gets released as a multi

KamiTzayig: how do i stop?

avdg: (rank 6600 here)

WannaBeHum1n: KamiTzayig what language u using

Audatic: new submission has a winstreak of 22 so far, fingers crossed :D

avdg: uh with 1 zero less

WannaBeHum1n: out of curiosity

KamiTzayig: python 3

KamiTzayig: im new to this platform

WannaBeHum1n: is it some genetic algortithm kind of stuff or conditions based bot ?

KamiTzayig: i clicked test in arena and have no idea how to go out lol

JohnyDaison: just click in the dark area

WannaBeHum1n: it keeps going by itself but u can press vs battles

KamiTzayig: maybe this is not the same ranking what we are talking about

WannaBeHum1n: to close it

KamiTzayig: ahh ok thanks

WannaBeHum1n: what division u on ?

KamiTzayig: wood 2, just start an hour ago

WannaBeHum1n: ahh ok

KamiTzayig: rank 4

WannaBeHum1n: have fun

KamiTzayig: lol

KamiTzayig: what devision are you?

KamiTzayig: leage

WannaBeHum1n: bronze 770

KamiTzayig: ok

KamiTzayig: lets see if i can get there

WannaBeHum1n: u will

JohnyDaison: everyone is waiting in bronze for them to open silver

WannaBeHum1n: u got this

KamiTzayig: thanks :D

Alurian: it's 18 ms

madninjaskillz: silver opening will make me look better - coz all the actually talented people will be out of bronze :D

WannaBeHum1n: i have a questioin

WannaBeHum1n: when silver opens up

Alurian: max is 30ms. but it can still use a lot of improvement

Alurian: in 2hours

WannaBeHum1n: how many will get automatically get there

WannaBeHum1n: ?

Nerchio: i'd say around 400 but we will see :P

Nerchio: maybe more

struct: way more

Alurian: aight

WannaBeHum1n: oof

struct: I expect like 40%

WannaBeHum1n: got get out of 700 800 range then

WannaBeHum1n: XD

struct: Alurian you have more than 2 hours

Nerchio: finally the first 20 games of a submit will not be a waste of time

Alurian: haha nah, waiting for silver :p

Nerchio: when does silver open? in 12 minss?

struct: people are saying 2 hours and 12 minutes

Alurian: Hard to see what works atm with only 40 people above me, and i have exam in few days

Nerchio: ok

peerdb: Usually it shows when the next league opens in the IDE right? They had a timestamp there but removed it

madninjaskillz: Finally improved... 711. Now scared to touch it lol

Alurian: here are my ranks when testing

WannaBeHum1n: In case of a tie, the player who gained the highest amount of mana outside the radius of their base will win. this is called wild mana.

Alurian: 847-1083-910-220-156-345-45

WannaBeHum1n: what is the radius of base

WannaBeHum1n: cuz 6000

WannaBeHum1n: is vison range

Alurian: 5000

WannaBeHum1n: ahh ok

WannaBeHum1n: thnx

BRETTRIVERBOAT: How are ties determined? Same base health at the end of the game?

WannaBeHum1n: in case of a tie, the player who gained the highest amount of mana outside the radius of their base will win. this is called wild mana.

_NikJ: if the health is the same then it takes into account wild mana aka the mana collected outside of your base

IvesL: do we have wild mana as input

Larbino: when does the silver league open ?

_NikJ: no, we don't IvesL

BRETTRIVERBOAT: Thanks

madninjaskillz: you can kinda calculate it - if an entity disapears - and you were attacking it and its not near your base, you can count it as a kill and thus mana

IvesL: can we copy opponent's moves?

avdg: hard to do in fog of war

madninjaskillz: if you can see them

WannaBeHum1n: if i see em

Alurian: uhm

IvesL: so we cant directly copy from output stream

Alurian: every hit isd 1 mana

avdg: don't blow when you have nothing to blow at though

Alurian: Your team will also acquire 1 point of mana per damage dealt to a monster, even from monsters with no health left.

avdg: I guess the copy bot will be a bad idea

WannaBeHum1n: when u hit it in the same turn

WannaBeHum1n: how to print text in the game

JB5: So far I was able to get to Bronze using simple code, I'm wondering if experienced programmers use any complex algorithms or data structures when implementing more complex code for this challenge?

WannaBeHum1n: ?

JB5: like graph, min-max, ...?

avdg: hmm I would benefit from extreme simple data structures though...

IvesL: i dont mean to copy opponents, i only want to know its actions

Audatic: I was top 10 now I am top 100 with only if/else no state

JB5: ok, thanks - I'm new so was curious a bout it

Alurian: top 50 with no state

madninjaskillz: I'm an experience programmer and my code is dumb as hell - its just an FSM with different behaviours based on how agressive the enemy player is. Anything clever I make does poorly lol.

Alurian: ooh i haven't calculated the enemy in yet

avdg: your bot has a basic empathy implementation?

Ajaiy: https://www.codingame.com/share-replay/623571150

Ajaiy: I have no idea how it worked with Wood 1 code

Audatic: same. If I send the hero where the mon should be next turn my win rate drops by about 10%

avdg: my bot is basically the same for the first moves, except my ai push them out the base

Alurian: simple is best haha

WannaBeHum1n: Illedan are using genetic algotithms ?

Ophen: when will silver league drop

WannaBeHum1n: got to 678 if statements only xD

avdg: 2 hours from now till silver

msumera: what is the requirement to advance to silver?

avdg: beat the bot that has yet to be determined

madninjaskillz: can you read the name of the player youre against? So I can intentionally not go to silver. Wanna be a big fish in a little pond lol.

JulienKerlero: The only infos you get are what the game tells you, I don't think you can read the player's name

Astrobytes: of course not

Audatic: nah then you could hard code strategies against player names....

WannaBeHum1n: guys

JulienKerlero: But what you can do is pick a random number at the begening of the fight, and lose the game if it's below a threshold

WannaBeHum1n: how to make text on hero

WannaBeHum1n: using js

Audatic: add it after command

JulienKerlero: That way, you'll never promote but you'll still be (sometimes) an unbeatable opponent

avdg: you only get their base health and mana other than entity data

Ophen: how do you know when silver will drop ? where it is mentionned

WannaBeHum1n: SPELL WIND 6000 5000 TEXT

IvesL: i dont get how you are unbeatable by losing

WannaBeHum1n: like this ?

avdg: https://clist.by/standings/spring-challenge-2022-34341526/

IvesL: yes

JulienKerlero: Let's say 50% of the time you lose intentionally

JulienKerlero: You'll never get promoted

avdg: it made the opponent scared I guess

Mateuszone: how can index 0 be out of range in range(heroes_per_player) xd

IvesL: but you lose intentionally is still beaten

IvesL: so you are not unbeatable

JulienKerlero: then you'll be promoted

JulienKerlero: the goal here is not to be promoted

JulienKerlero: to achieve that, you HAVE to lose games

WannaBeHum1n: it is to be evil

Default avatar.png LaurensD: @Mateuszone perhaps it has not been filled yet :?

IvesL: then just write random codes

WannaBeHum1n: and make ur enemies doubt their skill as developers

IvesL: randomize your actions

Astrobytes: never heard so much nonsense

IvesL: lmao yea

WannaBeHum1n: guys this is super dumb

WannaBeHum1n: but i am console.error an array

WannaBeHum1n: how can i make the items in the array

WannaBeHum1n: show under each other

JulienKerlero: IvesL the goal is also the be "the unbeatable guy" and thus have a really good AI

WannaBeHum1n: not in a long line

JulienKerlero: add a \n after each element ?

JulienKerlero: or whatever the new line symbol is in your programming langage (is it Java ?)

WannaBeHum1n: [item, \n, item]

WannaBeHum1n: like this ?

JulienKerlero: yup

IvesL: i will let you continue your work there

WannaBeHum1n: ty

IvesL: seems i have misunderstanding about the concept of unbeatable

Puiss51: Hi I think silver league is not opened yet, does somebody know when it would be?

WannaBeHum1n: asked earlier

WannaBeHum1n: people said

DollarAkshay: is mana gained in the opponent base considered as wild mana ?

WannaBeHum1n: in around 2hrs

DollarAkshay: "wild mana: mana gained outside the radius of your base."

DollarAkshay: So I am guessing mana in the enemy base is wild mana ?

Alurian: JUP

WannaBeHum1n: when all my heros attack the same entity

WannaBeHum1n: do i gain mana

WannaBeHum1n: more

WannaBeHum1n: than hitting by single hero

WannaBeHum1n: ?

IvesL: just for imagination, but would it be a good idea that the heroes can be leveled up by slaying certain numbers of monsters for better attributes, like speed, damage, spells

Alurian: Your team will also acquire 1 point of mana per damage dealt to a monster, even from monsters with no health left.

WannaBeHum1n: i cant manage to understand the sentence

WannaBeHum1n: because all heros do damage

WannaBeHum1n: same turn

Alurian: if you hit a monster that has 1 health

Alurian: with 3 heroes

SergeyShirokov: leveling up will be a runoff mechanic

Alurian: you get three mana anyway

Alurian: even though the first would kill it

WannaBeHum1n: but this is an edge scenario

WannaBeHum1n: what id monster full hp

WannaBeHum1n: i wont gain anthing right ?

WannaBeHum1n: ot no

WannaBeHum1n: or*

Alurian: if you hit an enemy with more health, you just do 3 dmg and get 3 manba

Alurian: EVERY 1 dmg = 1 mana

WannaBeHum1n: so basically i just kill it faster

WannaBeHum1n: no mana gained

WannaBeHum1n: ty

WannaBeHum1n: 4 taking the time

Alurian: what you mean no mana gained

WannaBeHum1n: to help

Alurian: at the edge case you gain extra mana

WannaBeHum1n: yeah

WannaBeHum1n: but i am thinking

WannaBeHum1n: i divide them to attack more monsters xould be more beneficial

WannaBeHum1n: cuz i always lose by wild mana

Alurian: hitting multiple monsters at once is more beneficial tho. because 1 hero can attack 5 monsters at once for example

Alurian: i send 2 out to get wild mana and one to defend

WannaBeHum1n: yeah i think i am statrting to understand why i dont gain as much mana

Alurian: the multiple monsters is a more complex subject i am yet to implement

Mateuszone: guys im a newbie

WannaBeHum1n: scan all monsters

WannaBeHum1n: check if coordinates

Mateuszone: how i can make sure that wind will not be casted towards my base?xd

WannaBeHum1n: are in same

WannaBeHum1n: hitting range

WannaBeHum1n: mobilize

WannaBeHum1n: hero

WannaBeHum1n: u mean this Alurian ?

KamiTzayig: im rank 1 in wood league, how do i get to bronze?

WannaBeHum1n: wait

WannaBeHum1n: can take even 5 mins

Alurian: yeah that's way more complex. because you also have to take into account that they move. so if it's to far away you will just waste time and your hero will just be running around hityting nothing

WannaBeHum1n: u will get a notification

Alurian: mateusz

Alurian: 'use SPELL WIND ENEMYBASE.X ENEMYBASE.Y

Alurian: themn you blow to enemy base

WannaBeHum1n: alurian yeah accounting for direction would be hard too

WannaBeHum1n: the can be going opposit eways

WannaBeHum1n: resulting in them getting out of hit range faster

Alurian: yeah so in theory its simple but in practice its not

WannaBeHum1n: yup

Alurian: right now i just hit closest target

Alurian: what rank are you wanna?

Thheo: herocan't move less than 800 units?

WannaBeHum1n: can i dm u Alurian?

Alurian: sure

Alurian: yes they can move less

Alurian: they move 800 maximum

IvesL: shorter target xy

Alurian: I've never used the wait command lol

Mateuszone: http://chat.codingame.com/pastebin/c244ab1b-4563-428f-aed4-5268baa9874d

Mateuszone: guys why it forces my all 3 heroes to slowly go towards enemy base instead of forcing only hero number 0 to go there?

jacek: does it work? no out of syncs messages?

jacek: because after the if (i == 0) there is no else nor return

avdg: so they all move towardds the spiders?

avdg: I don't see where spiders_ranked is evaluated, but it must be unchanged for all 3 heroes

IvesL: could you provide a replay

avdg: the first loop only may trigger the first if statement

Mateuszone: http://chat.codingame.com/pastebin/28aab8f5-6034-47a9-86b6-6ee97cddfa34

Mateuszone: thats a full code

avdg: the other 2 will do the snake check I guess

Default avatar.png Wizard-Dude: I thought the silver league would open up today, where's the boss?

jrke: it will open in few hours

Illedan: Usually around 6pm, but might be whenever

IvesL: yea very soon

Default avatar.png LaurensD: I heard someone say 'boss', you have summoned me

Default avatar.png LaurensD: Very good tactic by standing still, you have defeated me

dbdr: we used to know which ms the league would open, but that has been remove apparently :D

Alurian: https://clist.by/standings/spring-challenge-2022-34341526/

Alurian: thats when

JohnyDaison: Mateuszone the line "spiders_ranked.append(spider)" seems sus

Illedan: They couldn't deliver with MS accuracy dbdr :P

jrke: dbdr this may help https://cg.spdns.eu/wiki/Chat:World/2022-04-21

jrke: :smiley:

jrke: 1650812400000

jrke: here

dbdr: :+1:

dbdr: what's that leaderboard for?

jrke: it says 3pm gmt

Default avatar.png thekindboy: hi guys i want to get better with python

Default avatar.png thekindboy: whats your advice plz

dbdr: practice

Default avatar.png LaurensD: basics tutorials

IvesL: code more?

DollarAkshay: r/ProgrammerHumor

DollarAkshay: :P

Thheo: when does silver open?

avdg: less than an hour

avdg: normally

Thheo: ty

JohnyDaison: Mateuszone or it could the be the extra 2 spaces before print('SPELL WIND 17630 9000')

SashaNukem: How to add numbers above my heroes?

Darleanow: Hello everyone

Darleanow: i need to build a machine learning app

SashaNukem: Hi👋

Darleanow: but i need to find like whats the purpose of it

Darleanow: i have no ideas :/

Uljahn: generate some ideas [solved]

Darleanow: OH

JohnyDaison: SashaNukem just add extra text at the end of commands for your heroes e.g. WAIT TEXT

avdg: Submitting my new ai

avdg: can't wait for the results :P

Kukiss: good luck :)

avdg: I think I might have to fix something already, but it luckily doesn't break the bot

MACKEYTH: My bot feels like a Jenga tower right now. Every time I change or add something, it falls over.

Default avatar.png Anonymous_004: |M|power|N| and |N|power|M| my math is damn sucks i can't even solve this :D

JohnyDaison: time for a refactor

struct: league did not open yet?

avdg: 20 min and you know

avdg: hm need to fix few bugs in my code, luckily not on the critical part

WannaBeHum1n: says 16mins on the scoreboard

bolmos-o: Where do you check silver league opening time? I cannot find it anywhere...

avdg: https://clist.by/standings/spring-challenge-2022-34341526/

Marrggta: Does the SHIELD spell prevent from being affected by the WIND spell?

DaNinja: rtfs: The target entity cannot be targeted by spells for the next 12 rounds

Marrggta: yes, but for me it wasn't clear if the wind target entities as we don't specify any id there

Default avatar.png ScifiSpirit: it says "All entities" for me in statement for wind

Default avatar.png ScifiSpirit: (except your own heroes)

Uljahn: also shield spell does not protect from a spell from this same turn.

Default avatar.png ScifiSpirit: also technical details say that spells may be cancelled

Default avatar.png ScifiSpirit: does not say if by opponent, but i assume so

vvandenb: How do I name my heroes pls?

struct: cout << "WAIT message you want\n";

struct: so normal commmand followed by the message

Default avatar.png aatj: Do the entity trajectory variables vx and vy represent the relative trajectory from the current x,y of the entity, or the ultimate target x,y of the entity?

vvandenb: so you can tell them to wait and do somethin?G

MACKEYTH: aatj relative

vvandenb: thx

Default avatar.png pixelxd: yes

Default avatar.png aatj: Thanks MACKEYTH

Default avatar.png pixelxd: :stuck_out_tongue:

Default avatar.png aatj: What is the promotion threshold?

Rikus: vvandenb you just append any text AFTER your command (move/wait/cast) and that will be printed on top of your hero (remember to add a Space character " " between your command and th text)

MACKEYTH: I've been watching erick.lee's bot trying to figure out what makes it so good.

jacek: is it love?

MACKEYTH: The thing that stands out most is that it's really good at mana hunting.

Epigene: I'm trying "WIND 14000 4000" and erroring out with "Bad command". Do the coords need to be in range of the caster? Even so, I think I am..

Default avatar.png aatj: Thanks Rikus - didn't know that either

MACKEYTH: SPELL WIND x y

MrAnderson: @aatj rank ahead of the boss after the evaluation is over

Default avatar.png aatj: Thanks MrAnderson

Alurian: 1 minute...

MACKEYTH: spell commands start with SPELL ... Epigene

Miki09: So silver should be now?

Alurian: yes

Alurian: I assume it'll take a minute to be here

einaj: do we need to resubmit to get promoted to silver?

Miki09: ok

Alurian: no i don't think so

avdg: I guess it will be slow to process bot submissions from now

Miki09: yeah

Miki09: rip the servers

Miki09: ITS HERE

Alurian: it's here

avdg: let's see how boss 3 behaves

Alurian: ez win

avdg: hmm I can beat boss 3

Alurian: hell yeah

_NikJ: need a resubmit or no?

aCat: no

avdg: I've submitted my fixes just in time :-)

Miki09: its promoting some guys!

Miki09: I hope ill get in silver

avdg: my ai only uses wind as spell for now

Nerchio: bronze boss isnt agressive

Alurian: newp

Default avatar.png Thibauld: ey silver league

Default avatar.png Thibauld: Just opened?

Alurian: yes

Alurian: it's processing

Miki09: lol my "play in progress" is still loading :-)

IvesL: bronze bot looks familiar

avdg: already found out which ai?

MrAlexS: @madninjaskillz i know that feeling

Miki09: I cant get match to load so I havent seen the boss yet

Miki09: Network error : status 504

Miki09: rip servers

_NikJ: boss aggressive af :D

MACKEYTH: Yay, flawless victory vs Boss 3. Silver here I come.

Default avatar.png Thibauld: omg the update overwrote my code with an old version :/

Default avatar.png marata13: guys do you know how long it takes before the game promotes you to the next league?

IvesL: @Thibauld you are right, so as mine

Alurian: not long

madninjaskillz: balls. im in silver.

JohnyDaison: yea, the fact the it refreshes the page without asking is annoying

avdg: it can take a while if servers are overloaded

Waffle3z: watching my bronze rank climb as everyone is promoted

Alurian: but right now it's bumping up silver peeps

Alurian: it's going through list backwards lol

avdg: I guess I will bump to silver soon

avdg: top 500 now (not sure how many left bronze now)

MACKEYTH: Hm. Boss 3 is a defense bot. I'm surprised.

Miki09: I hope I will bump to silver soon

avdg: my ai defends better

struct: So they still promoted like the old way

einaj: i was top 300 but havnt been bumped jet. resubmitted just in case

struct: and have everyone compute the battles again ....

KCrown: I got into silver :P

Alurian: top 40 but still bronze

Audatic: same top 40

Whiskee: same

Miki09: 510 in bronze :-(

avdg: 452 now

Alurian: eyy

Alurian: silver


Miki09: 496 now

Thheo: top 1000 placed in silver hmmm

Fubuchi: Do I need to resubmit to promote?

peerdb: bruh i was 200th, how come I still am in bronze

avdg: nope fubucchi

avdg: it may slow things even down maybe (not 100% sure)

Miki09: peerdb its promoting from backwards

avdg: but resubmitting will at least mean you have to wait all the battles

Miki09: the top 1 player is still in bronze

peerdb: Miki09 okay thanks. why tho

Alurian: it will def slow you down

avdg: and the server is already loaded -> even slower

Alurian: i think it's promoting randomly

struct: 718 computing...

struct: and it will be even more once all get propmoted

jrke: again silver bug!

Waffle3z: what bot was used for the bronze boss, the one in 1000th?

avdg: 718 computing is server load?

jrke: in one contest silver got opened on the first day only due to server errors

Miki09: "Codingame ended 24.4.2022 because all the servers blew up and killed whole france"

Alurian: well this is a massive load

struct: I dont know how many got promoted

struct: but I guess it will be 1.5k computing soon

struct: it will take hours

jrke: i am enjoying it my rank went from 104 to 712 just under 10mins:grimacing:

JohnyDaison: Silver currently shows me 670 members

IvesL: 600-700 promoted

Alurian: 690 members

jrke: IvesL it will be more than that

Alurian: 710

jrke: there is server error ig

avdg: I hope they picked a fast boss

a1.dk: @jrke i have diferent situation from 400 to 79 XD

jrke: :grinning:

IvesL: @jrke i expect top 1500-2000

jrke: expecting same

Alurian: 760

jrke: but atleast i am expecting me to be in silver

jrke: :grinning:

Scarfield: can you see the bronze boss yet, i cant pick it as opponent

Miki09: I can pick him

msumera: when is gold opened?

avdg: there isn't one yet

IvesL: i will just leave it here right now, just to avoid further code loss due to page refresh

avdg: it's probably a dump ai

Miki09: Im still in bronze :-(

avdg: 343 in bronze now

IvesL: it is supposed to be a dumb ai, it's the starting the league after tutorial

Miki09: me 381

Miki09: 372

avdg: hmm a player few positions higher than me promoted now

Alurian: 920

jrke: finally i reached silver

Lexer31: why best players are still in bronze

jrke: after travelling 104 to 927

Waffle3z: why's it called "mad pod racing" now

jrke: Lexer31 server errors

JackMc: caus pods are mad

Scarfield: copyright worries waffles

Bernard_Lowe: Lexer31, I don't know, but it's hilarious. Many of top 50 are still in bronze.

Kukiss: I was ranked ~700 and got promoted very fast. So it really could go backward

Miki09: Illedan and butcher still in bronze

IvesL: nah its random

Scarfield: a lot of other multies and puzzles have had name changes

KCrown: no rule changes in silver it seems?

MACKEYTH: Maybe players closer to the boss's rank are being promoted first?

jrke: 1216 computing damn CG is gonna ...

IvesL: no rules will be changed from bronze

peerdb: why is it promoting backwards wtf

avdg: bronze has all the rules

YiCao: The system seems blocked again? Terriable

KCrown: ah I hate changes

gokubill: hi

JohnyDaison: don't worry, already over 1000 promoted

MACKEYTH: Silver's still growing. Up to 1040 now.

CommanderCero: how am i rank 914 in silver when I was 1600 in bronze

Miki09: lol

jacek: inflation

avdg: rank is probably shuffled and many didn't made it through yet

gokubill: con cặc

madninjaskillz: less people in siver - and being high rank doesnt seem to be what promotes you

Aramang: i think the more people in a league the less accurate the ranks, due to limited games played

Alurian: 1104

Miki09: Now im 295 in bronze

avdg: it's hard to compare bots when they have different strategies to win

Waffle3z: nontransitive

daffie: I agree the scoring system is pretty basic in this

Miki09: Everyone has got like "battles: 4%"

Miki09: Its gonna take ages

avdg: 235th here now

Default avatar.png SabertheLost: 106

Thheo: would it be possible to do the battles on user's computers?

jacek: silver :tada:

Miki09: congrats

Default avatar.png SabertheLost: is there a good way to know how much time you have spent on each turn?

struct: I was promoted and I was rank 2k?

struct: how many made it through

struct: lol

avdg: me not yet

jacek: i was 1.5k

msumera: got from 30th to 16th in bronze, so itf it's random ~50% is processed :)

Default avatar.png SabertheLost: 1364 seems to be in silver

avdg: my queue is now 214

MACKEYTH: What language SabertheLost?

Miki09: Butcher2013 now in silver

Default avatar.png LaurensD: boss 3 is pretty weak, though lost because of wild mana

Default avatar.png SabertheLost: Java Mackeyth

Miki09: me 2

MACKEYTH: I usually use System.currentTimeMillis()

Default avatar.png aatj: Yes, Boss 3 is easier than the test bot.

KCrown: silver numbers are stilling going up. its at 1497 for me ... so probably the first 2000 gets in?

MACKEYTH: Grab a start time immediately after your first input read statement

struct: KCrown I was 1979

struct: so its likely

therealbeef: 2100 ppl will be left in bronze it seems (based on current boss ranking)

Kagey: Are there new mechanics in the silver league ?

Miki09: I was 777 and im still in bronze :-(

struct: no

struct: anyone has a replay of boss 3 playing?

struct: I want to watch him but I cant play against him anymore

Miki09: https://www.codingame.com/replay/623677630

MACKEYTH: https://www.codingame.com/replay/623673496

struct: ty

Ekaon: Someone has settup the challenge in local ?

KCrown: did boss3 do anything differnt?

struct: I have no idea how my bot places higher than boss 3

struct: My bot plays much worse than that

Runner87: new rules for silver?

struct: no

KCrown: silver have the same rules

Kagey: By the way does anyone know why I have this error ? error: cannot find symbol

   public List<Hero> heroes = List.of(

Runner87: CONTROL : change direction of monster ?? or no?

Kagey: The arrow is pointing on the dot of List.of(...)

struct: on next turn yes

Miki09: Why boss 3 so bad?

Miki09: He tries to control shielded spiders

Default avatar.png aatj: The thing that makes boss 3 so easy is that it isn't standing next to your base casting spells.

Wontonimo: oh cool, i got promoted to silver without doing anything

Wontonimo: but i'm bottom of the bottom

Default avatar.png aatj: @MACKEYTH is 3 now in bronze

Wontonimo: no need to use the "@" aatj

Default avatar.png aatj: Thanks Wontonimo

Wontonimo: btw, the text is red only because your name is in it

struct: my bot should not have made it to silver

Wontonimo: :grin: glad it did

PatrickMcGinnisII: i made it to silver while i was gone, kewl...noww my bot is jumping +/- 300 ranks in minutes

PatrickMcGinnisII: did it just open?

avdg: a half hour ago

Miki09: And many people still not promoted

Kukiss: maybe all will go to silver :p 1600 already

Lexer31: there is too much people in silver

avdg: now someone a few spots before me got promoted

Miki09: avdg what place r u?

LarsVR: what got changed in silver?

LarsVR: did not get the popup

Miki09: nothing

avdg: 161 now in bronze

Miki09: me 182

LarsVR: ah wut, thought something changed every league

Wontonimo: nope

madninjaskillz: when you got to bronze it said "youve unlocked the full game"

MACKEYTH: Usually all the game mechanics are available in bronze.

Wontonimo: that's is only mad pod racing. everything else has consistent rules from bronze on

LarsVR: aha, mb

MACKEYTH: Mad Pod Racing is a glaring exception

Wontonimo: +1 MACKEYTH "we are thinking the same thing"

Wontonimo: wow, my score is -4.05 !

Ekaon: So.. When the gold league will open ?

Wontonimo: that's bad

HoriMiyamura: Hi Wontonimo, long time no see

HoriMiyamura: You are mod now?

Wontonimo: yeah, i've been upgraded

Wontonimo: Modtonimo

HoriMiyamura: haha

Aramang: Wontonimo(d)

Scarfield: Wonmodimo

Wontonimo: oh, i like that one

HoriMiyamura: I wonder If I can use an AI algorithm for this problem?

Wontonimo: yes you can

HoriMiyamura: too many randomize things

benobab: When do the next leagues open?

Wontonimo: no, that's not a problem

HoriMiyamura: really?

Wontonimo: i don't think it is published here. maybe on discord. go check there

Wontonimo: ^^ benobab

benobab: alright thanks

struct: oh no

Wontonimo: so, consider this HoriMiyamura : let's say you have a small sim thatt only takes into account what is visible

HoriMiyamura: is there a group on discord discuss about algorithms to solve this problem ? Wontonimo

HoriMiyamura: oh

struct: 2k computing

struct: and its back to 100 battles

HoriMiyamura: do you have next Wontonimo

Wontonimo: let's say you've hard coded 4 different if/else bots. use your sim to check which if/else bot does the best over the next 5 turns.

struct: 200k matches incoming rip servers

avdg: 113th

avdg: and getting a fight now

avdg: oh, it's not the bot

Wontonimo: I don't have a sim, or a good if/else bot right now HoriMiyamura. I haven't been serious about this competition

avdg: hmm I'm colored different now

avdg: and back, weird

avdg: got promoted anyway

avdg: yey

HoriMiyamura: I can write a sim myself I think

HoriMiyamura: but why do I need 4 different if else bot?

Wontonimo: no, you don't. it was just an example

HoriMiyamura: ah

iTsluku: when is gold open?

Wontonimo: "imagine" that you had written 3-7 different if/else bots that handle different situations. your sim will help you chose which one is best over the next 5-10 turns

Uljahn: in two days

HoriMiyamura: so you mean we don't care about the random things

Wontonimo: no, we do. but a first implementation that ignores outside the FOG will probably do well

Wontonimo: something that takes into account a probabilistic view of what's in the FOG will probably do better

iTsluku: ty Uljahn

Wontonimo: but i'm just guessing

HoriMiyamura: ummm

Scarfield: the random things are also somewhat limited, only newly spawning monsters, and monsters thrown out of a base area

KCrown: THIS time maybe a sim wont be the way to go?

Wontonimo: looking at replays of the top players, it looks like if/else is still very powerful in this game

MACKEYTH: That's what I'm doing.

KCrown: too many random events THIS time for sim to do well?

HoriMiyamura: yeah

HoriMiyamura: that's why I think we can't have a good bot algorithm

Wontonimo: like how in CSB sim'ing just for drift helped ... i bet limited small sub-sims (if you will) will help

MACKEYTH: There are so many possible moves from each game state, I don't know how you could Monte Carlo it

Wontonimo: just MC, not MCTS.

MACKEYTH: Either

Scarfield: i dont think the random parts weill be an issue, but the search space is huuge. pruning will be the problem

Aramang: there is a lot of math you can apply to efficiently assigning 3 heroes to n targets, I wouldn't be surprised if you could make silver with if/else and no spells

struct: you can use heuristics to generate moves for monte carlo

HoriMiyamura: csb doesn't have too many randomize I think

HoriMiyamura: the rule a fix?

Scarfield: yea thats probably what i will try struct

KCrown: Ive gotten to gold with just if then else bots a few times

struct: The problem for me is not the number of moves

struct: but the rng and fog

PatrickMcGinnisII: i love his replay: https://www.codingame.com/replay/623689797

KCrown: MC doesnt do will with fog and random ... but I hate MC personall :P

iTsluku: i think u need some kind of search pattern to overcome the fog; meaning where to go when the hero would idle --right?

KCrown: I dont think u'll be idle much

iTsluku: depends on idle pos

MACKEYTH: I have my attacker orbit the opp bast at just over 6000 distance so the base can't see it.

WJChua: I have one question guys. How do I set the game with the AI with me on the opposite side?

MACKEYTH: My defenders just stay in place.

KCrown: the first 10 turns maybe then the spiders comes and gets harder

iTsluku: remove players and add them in the different order

iTsluku: just swap, down at the icons

struct: WJChua press delete on ide

struct: you can choose which player you play on ide

struct: https://i.imgur.com/n94qWqp.png

WJChua: Thank you so much!

WJChua: You guys are god sent.

struct: np

WJChua: It took me so long.

KelvinAndHubbles: ouch dropped 700 places on league promote, guessing it's just slow servers trying to do all battles?

CommanderCero: does wild mana count if the monster is in my base but the hero is outside?

KCrown: thsi game is more like soccer/football ... a goalie or an attacker? two defender is the norm I think ...

iTsluku: everyone is on like 5% battles

orangesnowfox: Kelvin I'm like 5% through my submit :p

Mateuszone: the rules of debbuging says that you can append text after any command and that text will appear above your here, can someone show me example in python?

orangesnowfox: yeah

MACKEYTH: Hey, I'm Bronze #1! Kneel before your king, serfs.

struct: print("MOVE 1000 1000 hello")

struct: Mateuszone

orangesnowfox: Mateuszone: print("WAIT your message here")

iTsluku: print(<action**> <msg>)

Wontonimo: i thought the rule for debugging was "debugging is twice as hard as coding. if you write your code as cleverly as possible, by definition you do not have the skill to debug it"

MACKEYTH: lol

iTsluku: xd

madninjaskillz: 90% of coding is removing bugs, the other 10% is adding new ones.

Default avatar.png RandomSteve: xddd

Tryst: lol

Wontonimo: All code has at least 1 bug, and all code can be optimized by at least 1 line. Applied iteratively, all code can be reduced to 1 line that doesn't work

VizGhar: So... greenfield project is just about creating bugs right?

Wontonimo: that's why i love greenfield projects

Wontonimo: it plays to my strengths

madninjaskillz: green fields ARE full of random insect and bugs - where do you think the name GreenField comes from? :P

VizGhar: :D so true

VizGhar: 2000 players in silver already? is this a joke o.O

avdg: is everybody that should be promoted promoted now?

MACKEYTH: Not yet

Wontonimo: wow, i changed 2 innocuous hyper parameters by marginal amounts and I jumped from 1200th to 600th. Still same poopie bot, just different camp spots (by 50 units at that)

VizGhar: wait a few hours avdg :)

avdg: bronze bot isn't stabilized yet I guess

VizGhar: Wontonimo so it will go to hyperparam optim? :)

Wontonimo: hehe

VizGhar: avdg bronze bot is probably only stable thing right now

VizGhar: I can see you writing python script + GA just for testing

VizGhar: I still havent decide how I'll approach this... But since I have no time for this contest, I'll probably just go with heuristic... bottom gold

_NikJ: I just love how my dumb bot from 2 days ago is now in silver 70th place, while my "smart" bot can't win 2 consecutive rounds vs my dumb one

CommanderCero: seems like your dumb strategie is just more effective xD

CommanderCero: not so dumb afterall

_NikJ: it's like a fortress, just farm and defend, that's all it does, yet it's 65th in silver atm

orangesnowfox: Honestly, I've just been kinda waiting for silver to open just because of how difficult it is (for me) to write a bot that wins multiple spots on the RPS

_NikJ: though I expect to drop like 100 places

MACKEYTH: Ah, silver at last. Feels like my ears popping.

Default avatar.png aatj: Altitude sickness?

MACKEYTH: No, same sense of relief

blasterpoard: https://www.codingame.com/replay/623705186 sim bot coming along nicely

Default avatar.png RandomSteve: why is the batman puzzle so hard afdsfs

blasterpoard: might be ready before gold

Default avatar.png aatj: blasterpoard: your blues have a nice strategy

Default avatar.png ACad: when does gold open? is it already?

Default avatar.png LaurensD: only sucks you killed the ones walking in the enemy's base lol

MACKEYTH: RandomSteve hint: you can solve Batman without diagonal leaps and centroids. Horizontal and vertical leaps work just as well

PatrickMcGinnisII: have mercy blasterpoard , you spot and performed a killshot in 6 turns

Wontonimo: share replay please PatrickMcGinnisII

PatrickMcGinnisII: he did... 9 minutes ago

Scarfield: nice blaster, the wind train

PatrickMcGinnisII: 3 killshots... mad crazy

Wontonimo: nice nice

Aramang: when naming a varaiable for an enemy hero, do you guys use "enemy" or "nme"?

Scarfield: op

therealbeef: oppo

orangesnowfox: opponent bc I'm verbose like that

therealbeef: their

Scarfield: myHero opHero has the same no. of chars, me like

MACKEYTH: o<descriptor>

orangesnowfox: `my` and `their` is pretty good too

Default avatar.png aatj: enemy_opponent_who_is_opposed_to_me_*

Scarfield: xD

orangesnowfox: lmaooo

orangesnowfox: no... I'm not *that* verbose, I do have to fit in the submission file limit

Scarfield: could shorten it with first letter of each word: eowiotm.. easy to read as well

Ketroc: Is "Test in Arena" only running 1 game now for everyone else too?

orangesnowfox: nah, my brain sees an owo there and that kind of acronym is *not* going in my code (even if its broken by an `i`) especially if you ignore the words like "is" and "to" in your acronyms like I do, you get EOWOM

jacek: uwu?

Scarfield: much better than opponent xD

Default avatar.png LaurensD: arena battle are a bit slow

Default avatar.png LaurensD: haha

orangesnowfox: jacek gdi

Default avatar.png LaurensD: probably hurts the server adding a new tier

struct: only 2.4k submits

struct: this is fine :)

geppoz: there is a strange behavior in the inputs after a spell CONTROL on moster

Scarfield: CG has fire extinguishers at the ready

orangesnowfox: geppoz wym?

geppoz: it is given again with the previous vx,vy

struct: yeah

struct: https://forum.codingame.com/t/spring-challenge-2022-bugs-questions/195480/54

struct: check this geppoz

struct: I describe it there

struct: I'm waiting for an answer

orangesnowfox: huh, thanks for pointing that out, I'll... Need to work around that

struct: because threatFor gets updated

struct: but vx and vy dont

orangesnowfox: if threatFor didn't get updated I would've noticed that a lot sooner (with the double controlling of mobs)

geppoz: yeah, exactly

struct: I think its what you described

struct: I dont see the logic on giving one updated and other not

HoriMiyamura: so will this be fixed?

struct: no idea

Scarfield: o0 so you have to remember prev pos of a monster, to be sure of their actual vel?

HoriMiyamura: well then ...

struct: dont think so Scarfield

struct: Check what I say on the post is a bit different

Default avatar.png aatj: trajectory, rather than velocity, right?

struct: The vx and vy get updated but only 2 turns later

orangesnowfox: Oh, you know what, it might be so that you can't figure out where they're going

orangesnowfox: Like, if the opponent controls a mob

struct: orangesnowfox why does threatfor get updated then?

orangesnowfox: *shrug*, just a guess

Miki09: lol came here 1.5 hours later and still battles in progress: 9%

struct: yeah I know, this is just my counter argument

struct: in case that is their answer

struct: It will only get slower Miki09

Miki09: :-(

jacek: time dilation is no joke

struct: Don't know why they didnt promote like last time

Default avatar.png aatj: As Scarfield said, if you want to know the actual trajectory, you can try to store spider x,y across turns

Default avatar.png Wadzhamah: when i will be promoreted to the next legue?

orangesnowfox: struct what happened last time?

struct: They just added the top N players to the next league but without submit

struct: you kept the same points you had

orangesnowfox: ah

blasterpoard: https://www.codingame.com/replay/623722348 vs current rank 1

orangesnowfox: aatj, you could store the ID and direction of mobs you control

blasterpoard: just in case someone still thinks wild mana is relevant

orangesnowfox: So, current meta is to spawncamp the mobs?

HoriMiyamura: never Wadzhamah

orangesnowfox: and then wham them into bases

Nerchio: It's good but it won't be a winning strat

VizGhar: When will gold league open? :D

Scarfield: isnt that because you cast the spell, the spell aplies next turn, but only after reading the input of vel (that has not yet been updated, since the spell is only being cast this turn)

struct: but why is threatfor updated?

Scarfield: it kinda makes sense, not knowing where the opponent wants to control the monster i guess, untill it moves

struct: if the spell hasnt been cast?

Scarfield: thats the weider part i think

orangesnowfox: legend has it that on struct's grave will be the words "but why is threatfor updated"

struct: lol

Scarfield: but either both should be updated, or none of them

struct: yeah

orangesnowfox: yeah, regardless of reason the lack of consistency is a bug

orangesnowfox: or, feels like one

Scarfield: and they look like bugs

struct: afk

Default avatar.png aatj: It's definitely a bug. If it were a feature of the spell, it would be documented.

struct: I think we can all agree its a bug

struct: I dont think it will be fixed though

orangesnowfox: yeah...

Default avatar.png LaurensD: lol I think my test in arena is bugged, it's stuck I think at 57%

HoriMiyamura: no it isn't a bug

orangesnowfox: LaurensD no bug, just a tons of submits

HoriMiyamura: it is a feature @LaurentsD

Default avatar.png aatj: Hah

Default avatar.png LaurensD: ah alright, I thought it would have a empty field at top, with a loading indicator

orangesnowfox: mm, regardless of UI silver just opened, which... uhh, means a lot of games that need to be played

PatrickMcGinnisII: blasterpoard wth, u wind way out of bounds

blasterpoard: PatrickMcGinnisII seems completely ok to me

HoriMiyamura: The default code submit doesn't seem to help me to Wood1

orangesnowfox: WAITing is... not a very good strat no

PatrickMcGinnisII: blasterpoard it literally loaded the shotgun

Wontonimo: HoriMiyamura there is a bunch of starter AI here https://github.com/CodinGame/SpringChallenge2022/tree/main/starterAIs

Wontonimo: it's the published starter kit. What lang are you competing in ?

PatrickMcGinnisII: wow, still jumping +/- 200 rank 18% in

HoriMiyamura: my colleague go to wood1 by default code, but I can't do the same. Where is the equality?

Wontonimo: it's equity these days, not equality

Wontonimo: ;)

HoriMiyamura: Thank Wontonimo, I don't notice the starter kit...

Default avatar.png sergod: Is there a difference in Silver league? I think it has the same contraints

HoriMiyamura: yeah equity

Wontonimo: using the starter code _and_ adding a sort to the monsters is a pretty good start

orangesnowfox: sergod: better opponents

HoriMiyamura: Thanks

geppoz: question: in "Action order for one turn" it is specified that CONTROL and SHIELD (2-3) are applied before mana generation (5), then WIND is applied (6); this means that WIND can be cast using the mana being generated in same turn ? :D

Wontonimo: then add a wind towards the enemy base if a bug is too close to your base, that'll give you another +200 ranks easy

orangesnowfox: ... geppoz, that's... lemme check, I want to know

Counterbalance: geppoz unfortunately no

HoriMiyamura: starter doesn't sp cpp :(

HoriMiyamura: I would use Java then

Wontonimo: meh, if you like cpp then just copy the ideas. it's simple enough

HoriMiyamura: haha, yeah

Wontonimo: java's garbage collection is a serious issue when all you have is 50ms imho

orangesnowfox: tbh, you can get away with *python* in this game

orangesnowfox: if you aren't simming

Wontonimo: anyone else have opinion on java (who has actually used java here)

Wontonimo: I'm using python atm (no sim)

geppoz: Counterbalance so the mana is consumed in step 1

orangesnowfox: :raised_hand: I had to use Java for a HS class once, that *sucked*

Nerchio: Wontonimo in hard calculation games you can't beat cpp but for everything its fine

orangesnowfox: wrote a neat CLI calculator tho

geppoz: and it run out in order of the 3 use

Nerchio: everything else*

orangesnowfox: ... That I ported from the same one I wrote in C++

HoriMiyamura: so you mean python is better than Java for performance?

HoriMiyamura: on CG platform?

Wontonimo: no, hell no HoriMiyamura

Default avatar.png aatj: HoriMiyamura: If you watch MathisHammel's intro video, he basically goes through the python starter with some additions.

PatrickMcGinnisII: Wontonimo , yup the kernel doesn't gaf . but you can gc

orangesnowfox: Yeah, that isn't what I was saying at all

orangesnowfox: ... *all

orangesnowfox: wait, I did say it right :facepalm:

orangesnowfox: But my point is that... If you're just doing heuristics (like myself) you don't really need to be all that fast...

Scarfield: there could easily be python bots in legend this tournament i think

Scarfield: "easily"

orangesnowfox: as easily as any other language

Wontonimo: I was just assuming that wanting to use cpp meant an interest in sim. Both java and python are probably poor choices for that, first java's GC within 50ms and python's slowness

avdg: hmm when I need a weak bot, I don't get any

orangesnowfox: @Wontonimo, it could mean more comfort in C++, like, I use Rust and I don't sim

Default avatar.png aatj: I used Python, but I think a language with functional features would be perfect to calculate on a lot of entities at once, avoiding too many loops.

Wontonimo: yeah, i assumed

PatrickMcGinnisII: the array filteering in java is a pain in the ass compared to PY and rust imo. albeit dropping the old for loop and doing it yourself can be faster

antiwonto: [auto] PatrickMcGinnisII be respectful and watch your language https://www.codingame.com/playgrounds/40701/help-center/code-of-conduct

Scarfield: you should add an easter egg bad word to antiwonto, and change it from time to time :p

orangesnowfox: aatj Kotlin is no joke fairly useful for compos if you like Javaesque languages

Wontonimo: *a pain i the bottom/rear

PatrickMcGinnisII: ass

antiwonto: [auto] PatrickMcGinnisII be respectful and watch your language https://www.codingame.com/playgrounds/40701/help-center/code-of-conduct

PatrickMcGinnisII: huh

Default avatar.png aatj: Yes, indeed. Thanks orangesnowfox

Default avatar.png aatj: Not allowed to talk about donkeys in here.

orangesnowfox: a pain in the back or neck, is my preferred one. 'specially because that's where the pain tends to manifest

Wontonimo: PatrickMcGinnisII , I like you but please don't encourage antiwonto and make it spam.

PatrickMcGinnisII: antiwonto use tinyurls, you are spamming

PatrickMcGinnisII: ^

MACKEYTH: 4% of silver battles done. This is gonna take some time

orangesnowfox: lmao, my bot computes the entire set of actions in 1-4 microseconds

orangesnowfox: Sometimes its randomly 15 tho

Scarfield: im at 27% but yea, ~200k games will have to take some time

_NikJ: Wontonimo, why don't I see you in the leaderboard? Hiding before a fake account before busting out a winning solution?

Scarfield: you can search for a name

_NikJ: I do, but it's not showing me any results

_NikJ: Maybe search died too

Butanium: if my hero has isControlled = 1

Scarfield: i find him when searching, 630 in silver, no idea _NikJ

Butanium: it will ignore my order this turn right ?

PatrickMcGinnisII: i think it's only 40k games and it's 25% done

cegprakash: https://www.codingame.com/share-replay/623740171 turn 110 monster 83 stuck?

MACKEYTH: Yes, Butanium

Aramang: i lost a match 748 to 736 wild mana lol

Butanium: thanks MACKEYTH

Scarfield: when a monster is inside a base area you cant push it out, i guess it stops at the border when you are pushing it cegprakash

Scarfield: i havent tested this myself yet though

cegprakash: RIP wind physics

Ketroc: @ceg likely a mechanic of trying to push a monster out of bounds in the base zone.

Scarfield: your wind would have to be along the x-axis to avoid this i bet

MACKEYTH: That's right. Monsters in a base attraction zone are immune to going out of bounds

Scarfield: i assumed it would still move the dx value, but seemingly not

_NikJ: You guys using "cooldowns" on spells?

orangesnowfox: Aramang how did you keep track of that?

Scarfield: its shows in the kill screen

PatrickMcGinnisII: ceg, looks like it clipped to wall because it was on the wall...1 px up and it shoulda worked fine

geppoz: cegprakash monster y is already 8999, your WIND vector has a component y positive = pushed into border

Aramang: orangesnowfox its in the output at the end of the match

orangesnowfox: presumably only when it's tiebroken off of wildmana?

Scarfield: yup

Aramang: yeah if it reaches turn 220

JackMc: Yeah seems the border in base zone is sticky

Scarfield: euler shared a replay where he would draw eith wild mana

PatrickMcGinnisII: push to 17630-15,8999-15 maybe

Butanium: is that intended JackMc ?

JackMc: I don't know, didnt write the harness :)

orangesnowfox: Aramang, the reason I asked is because I checked a game where I won on hearts (opponent took 1 damage) and I didn't see wildmana there lol

orangesnowfox: found it on a different match though

Scarfield: dang it, extra effort to my sim idea :/

jordonez: "Append text after any command and that text will appear above your hero" - how is this? i'm getting bad command :(

orangesnowfox: jordonez: `MOVE 0 0 your comment`

Aramang: did you rememebr to put SPELL before WIND?

jordonez: thanks!

cegprakash: submits stuck at 1 game zz :P

Default avatar.png LaurensD: @jordonez yeah, took a while to notice they ment it as after the command in the same line

Default avatar.png LaurensD: does make sense though after you know about it =P

Default avatar.png LaurensD: @cegprakash haha, mine at 70%

jordonez: hahaha

orangesnowfox: I personally wish they went with the `WAIT; SAY hi` style

_NikJ: For the past 15 minutes I've been banging my head why my code changes aren't improving the play. TURNS OUT, external editor plugin crashed and I kept replaying the same code...

orangesnowfox: but I get that you can only do one action, sooo

Default avatar.png LaurensD: @orangesnowfox WAIT; hallo my name -- I would prefer that

Default avatar.png LaurensD: with ';' as indicator end of command

cegprakash: _NikJ and in the process u broke the existing code as well :P

Kukiss: _Nikj copy/paste doesn't make such problems :D

Th1nhNg0: hey guy, is there anything new in sliver rank ?

Scarfield: nope Th1nhNg0

Th1nhNg0: thanks

Scarfield: same rules from bronze and upwards

Th1nhNg0: okay

orangesnowfox: Th1nhNg0 "better opponents"

Th1nhNg0: I will take my time to do some reinforcement learning xD

Scarfield: gl

Th1nhNg0: look like butcher2013 is not the bot any more =)))

Scarfield: the leaderboard has not stabalized since silver opened, he is likely still in the top i think

Th1nhNg0: oh

Th1nhNg0: let see :D

AlMualem: so now gold is open ?

HoriMiyamura: nooo

orangesnowfox: AlMualem, nope, silver

AlMualem: lols....and when gold will open?

orangesnowfox: no clue

Wontonimo: probly 2 days from now

orangesnowfox: yeah, at least two days, no more than 4

jrke: is everybody promoted to silver till the cut off or still few remaining?

Scarfield: between 10 seconds and 40 years

Wontonimo: i can't believe I've been coding python for 6 years and just now learn about math.hypot /flip

Scarfield: (╯°□°)╯︵ ┻━┻

Uljahn: i prefer numpy.linalg.norm though

AlMualem: guys at the moment i am about 65%-35% winning the silver boss....i dont see any difference with the bronze boss...am i blind or crazy or either? :P

AlMualem: *didnt make a single change to my code

therealbeef: which silver boss?

barbora: there is no silver boss yet

AlMualem: AI* Default* whatever you prefer

blasterpoard: AlMualem "default" is not the boss, just a random AI you can test agains, and it's the same in all the leagues above wood, bosses are copies of chosen players' bots

Scarfield: Ai default is wood boss

Eacaw: I'm getting this error: Warning: your code did not read all available input, does anyone know any typical causes? (JS)

AlMualem: ok thanks for clearing this up guys

AlMualem: much appreciated

Scarfield: you didnt read all the available input :p

Scarfield: have you changed the input reading loops or something?

JohnyDaison: blasterpoard I don't think bronze AI is the same as silver AI, at least it didn't feel like it

MACKEYTH: Eacaw possibly you outputted more than 3 commands last turn?

Scarfield: that could be the cause as well ^

Eacaw: Aye, that's what I am looking into now, it's entirely possible

avdg: he premoved?

Default avatar.png Magicson: Hmmm Boss 2 is trying to cast a spell without mana game ends and I get a lose. Is this a bug or a feature :p ?

avdg: The question is, how did you get lost?

MACKEYTH: I encountered that problem. Issue was an if where an else if should have been

Default avatar.png Magicson: I mean, I'm full HP and I get the following...Game Summary: Bad command BOSS 2 failed a WIND: Not enough mana

Miki09: share replay pls

Default avatar.png Magicson: https://www.codingame.com/replay/623754424

Miki09: Ohhh

Eacaw: Mackeyth, it was indeed that, have reordered my state transition logic and it's all sorted, cheers!

Miki09: you need to write "SPELL" before "WIND"

Default avatar.png Magicson: lmao, thanks!

Miki09: np :-)

Default avatar.png ex_nihil: What is 'wild mana'? Doesn't seem to be tied to the actual mana pool

Miki09: For every damage you deal outside base you get wild mana

Default avatar.png ex_nihil: Ok, thanks.

Miki09: np

Leeward: fml I was almost out of wood 2 on a puzzle, did some refactoring and my ranking went down :facepalm:

HoriMiyamura: wild mana doesn't showed up on UI is this correct?

eulerscheZahl: correct

struct: too much work

MACKEYTH: You could (laboriously) track your own wild mana, but your enemy's is a complete mystery.

HoriMiyamura: I think we don't need to care wild mana though

struct: you need in case of a tie

MACKEYTH: Yeah, just try to get as much as you can.

struct: But you dont know how much enemy has so

HoriMiyamura: so nothing to do with wildmana actually

Default avatar.png ex_nihil: It's basically to disincentivize pure Turtling strats.

HoriMiyamura: haha

JohnyDaison: So your ranking will drop every time you send the code into arena. That's because new code always starts at the bottom of the league and has to fight its way back up. And your rank is updated continuously as that happens.

struct: it wont drop if the bot is better

HoriMiyamura: yeah

JohnyDaison: It will temporarily.

Leeward: I meant my final rank after battles dropped

JohnyDaison: oh

Leeward: after effectively changing nothing

Default avatar.png LaurensD: The boss is rather stupid in reverse isn't he

Default avatar.png LaurensD: https://www.codingame.com/replay/623767767

JohnyDaison: have there been significantly less people in the league when you last submitted?

JohnyDaison: *fewer

avdg: hmm, no full heath stat has been given about monsters right?

Leeward: no just a few more

Wontonimo: http://chat.codingame.com/pastebin/634a1783-deeb-4e06-868f-fb8ccfce376e

Wontonimo: oops

MACKEYTH: No, just current health. You can see max health in the monster's tooltip, fwiw

Default avatar.png LaurensD: rank 97 bronze :3

Default avatar.png LaurensD: cmon where is my silver entry

iian: Hi! Anyone using some kind of simulation? I hardcoded a strategy, but it seems suboptimal...

avdg: yeah, I saw the full health in the tooltip

jacek: :upside_down:

JohnyDaison: LaurensD have you fought the boss yet?

ycsvenom: i am 1339th in silver :joy:

Westicles: this guy typed up 40 pages on how bowling works for a puzzle

ycsvenom: but nothing is new

Waffle3z: battle progress 30% already

Waffle3z: only took 2 hours

struct: mine is still at 10%

struct: 2478 computing

orangesnowfox: 10%? I'm still at 8 :p

avdg: that is a big queue

Waffle3z: Q

avdg: and I want to resubmit now... I guess I better wait

MACKEYTH: I've resubmitted like 4 times so far without ever getting beyond 30% of battles.

Default avatar.png BeGoodAgent: how do you pass the bot intro quest

MACKEYTH: (resubmitting changes, not to hammer the battle calc)

jacek: BeGoodAgent mad pod racing?

Default avatar.png BeGoodAgent: yes

struct: Ok, I'm going to try the contest, if I'm needed ping me

avdg: My bot now uses the 3 spells, though the spells that are not winds are used very rarely for now

jacek: there is something about checkpointY checkpointY. you need to change to X Y

Default avatar.png BeGoodAgent: I did that

Default avatar.png BeGoodAgent: was that all

MACKEYTH: Controlling enemy heroes away from monsters is really useful. My bot does quite a bit of it.

jacek: then click test in arena

jacek: BeGoodAgent be aware there is contest going on and servers are slow today

MACKEYTH: I've found controlling monsters at the enemy base to be less effective, tho

Default avatar.png BeGoodAgent: Ahh ok

Default avatar.png ataya-codam: what rank is the boss in bronze?

Waffle3z: 1

Default avatar.png ataya-codam: nah

Default avatar.png ataya-codam: you promote if you get a better rank than him

JohnyDaison: do you mean rank or score?

jacek: thats both

Default avatar.png ataya-codam: i mean what rank do you have to end with to advance to silver

DaNinja: 1

Default avatar.png ataya-codam: really?

Default avatar.png ataya-codam: I can see three people above the boss on the scoreboard

RafaelSan: 0.1

Scarfield: you have to rank above the boss when your submit has finalized

SNick123: You have to win like a number of games to make stabilize there

avdg: hmm gold in less than 45 hours

dbf: avdg where is a timestamp for gold start?

avdg: https://clist.by/standings/spring-challenge-2022-34341526/

avdg: well, I couldn't find a better one yet :D

Ekaon: Someone has a clue about this error : http://chat.codingame.com/pastebin/4df4e093-c280-4421-b216-ad74ff63fabd

Ekaon: I achieved to create the .jar of the game using maven, but I'm not able to execute it

jmpeg: Ekaon: I am not a java expert, but I managed it using the instructions in the brutaltester repository. My fork is here https://github.com/johnpage-agixis/SpringChallenge2022

jacek: http://www.quickmeme.com/img/d8/d87627f000e0c7f2263d0db0b60b01ddd535ee1cb8a98b15f55e28aac9f7b528.jpg

Alurian: battles still running slow huh

jacek: or you are running fast :thinking:

Ekaon: @jacek Lol

Ekaon: @jmpeg thank you i'll check this !

VizGhar: Alurian score of 2500 players is being recomputed... you need to wait 5+hours :P

jrke: 2.5k ongoing submissions what else we can expect!

jrke: atleast servers are responsing

jacek: is Automaton2000 responsive?

Automaton2000: depends on how much time do you think is a good summary

Alurian: shouldn't have run my new code in arena then >.<

jmpeg: Ekaon: if you remove the build section from the pom.xml in my repo, then you will get the error you mention. The build section alone isn't enough, you also need the CommandLineInterface class

Alurian: it looked like it was finished

Alurian: now i'm 1900 instead of 40 ;__;

ganbat24: what is new in silver leagues?

Alurian: nothing

avdg: only the silver leagues and the players that promoted to it

Alurian: just new boss

avdg: and less newbies

avdg: unless someone made a bug

ganbat24: oh

avdg: silver and higher don't have new game rules

JackMc: how do we know higher wont have different rules?

Alurian: Cause it's the same as previous events

JackMc: OK cool, not done any before :)

jrke: exact 2500 submissions!

jrke: https://prnt.sc/LRJFEq_884do

jrke: lets dance! :grimacing:

_Hunty: im now gold, gg

JackMc: ^^ king hunty

Wontonimo: JackMc and Alurian , it's actually because when you enter bronze there is a pop-up message saying that these are the final rules

Wontonimo: you probably dismissed it without reading

Alurian: true

Wontonimo: i almost did

avdg: I guess almost everybody know how annoying popups are... so people stop bothering reading them (and maybe only remember the visuals)

JackMc: ah right, guess I did dismiss that without reading :0

ganbat24: Does control also override the spell?

Wontonimo: it's in the rules on the left. scroll down and read the 'advanced rules' area to see all the edge cases

Wontonimo: it's iin the "Action order for one turn" and the "Technical Details"

Wontonimo: lastly, you can also read the code directly https://github.com/CodinGame/SpringChallenge2022

ClockSort: congrats eulerscheZahl for take 8th place in Google Code Jam Round 1B!! Very well done. https://codingcompetitions.withgoogle.com/codejam/round/000000000087711b

ganbat24: i got 3500 lol

avdg: ow I did missed that one

Wontonimo: better than 6+ billion people who didn't even try ganbat24

Psyho: oh cool, new league

Illedan: Cool indeed, but too many matches playing

Psyho: yeah, just realized that the number of people in silver league is like the number of people in bronze 2 days ago

Illedan: And all in progress

Runner87: any idea how to use the shield ?

MACKEYTH: Protect your defenders from control

Nerchio: run shielded bugs into his base

Runner87: yes maybe is usefull for attack

Runner87: but WIND has no effect on shielded bug? is correct?

Waffle3z: shield opponent heroes so you can wind monsters past them

ganbat24: id is 1 0 2?

MACKEYTH: I tried that but never got it working very well

LostDragon: is there a way to dump all the inputs of a game without coding that myself? i mean, if replays exist, than there should be a way to also dump what the players received and sent, right?

avdg: store all what you read in an array?

avdg: or put the reader in a wrapper

PatrickMcGinnisII: can't trust the referee for threat assessments

LostDragon: kind of counter to the hope of not coding that myself, but that is what i've done for the time being...

H1ggsb0s0n: do you guys know when the gold and legend leagues open? I can't find the schedule...

Alurian: tuesday 5pm gmt +2 and im guessing thursday 5pm

Alurian: https://clist.by/standings/spring-challenge-2022-34341526/

H1ggsb0s0n: ty

Jok55r: hi

madninjaskillz: whats the radius on the fog of war?

msumera: 6000 for the base, 2200 for hero

madninjaskillz: im starting to think my distance calculation is bollocks lol

nightwalkerinthedark: SUIIIIIIIIII

msumera: i just noticed that one of my distance calculation functions has a bug and always returns distance from 1st argument to itself => 0.0

msumera: hope fixing it will not make my bot worse

Default avatar.png ebdt3utrk74ki3l.: hi I am a girl btw

jacek: oO

Default avatar.png ebdt3utrk74ki3l.: ...

Default avatar.png ebdt3utrk74ki3l.: w-

Default avatar.png ebdt3utrk74ki3l.: h-

Default avatar.png ebdt3utrk74ki3l.: h-

Default avatar.png ebdt3utrk74ki3l.: hi

Wontonimo: hey ebdt3utrk74ki3l. , you have been given a short time ouut for spamming. You are welcome to come back but don't spam

Jok55r: hello guys

StarSkill3r: Hi :D

VizGhar: Wontonimo already have some sim ready? how much time will it take?

Wontonimo: honestly i haven't done any new code for 2 days, and just have an if/else

VizGhar: hmm same here

Wontonimo: if (and thats a big if) I get the motivation, I think I'll invest the time to get brutaltester going locally and optimize hyperparameters of my if/else

VizGhar: :thumbsup: your goal is at least legend?

Wontonimo: possibly make a pseudo-attention network to choose between different strats depending on current state

VizGhar: I'll stick with if/elses too most probably...quite busy week

Wontonimo: yeah, very busy for me. Tomorrow my son returns from uni, then Wednesday i'm flying to a funeral and not returning till Monday

VizGhar: uf...

ZarthaxX: funeral

ZarthaxX: ;(

ZarthaxX: a friend of yours?

Wontonimo: yeah, a really good guy. Known him for 25 years. He died of cancer after struggling for 4 years

ZarthaxX: noooo

ZarthaxX: so sorry wonto

KiwiTae: rip

AlMualem: may he rest in peace mate :/

ZarthaxX: hearing so many stories of people dying of cancer lately

ZarthaxX: what is going on with that type of disease :(

Wontonimo: thank thanks. All's good. It's a wake actually. Actual funeral was 3 months ago.

Wontonimo: ZarthaxX, i think it's more that "in the old days" deaths would be reported as "died of old age" where as now that just isn't a diagnosis

Wontonimo: also, people used to die a lot younger of things like simple infections

Astrobytes: sorry for your loss wonto

Wontonimo: oh, sorry everyone for dumping that here. Really, it's all good.

AlMualem: ZarthaxX apparently nothing...best you can do is to find it in a very early stage...thats why everyone should go for a check up quite often

Astrobytes: not a problem, we're just being respectful

ZarthaxX: Wontonimo yeah you got a point with the old days thing, true

Wontonimo: :grin:

ZarthaxX: AlMualem it's hard to get used to that routine of check up, but yeah

AlMualem: :/

AlMualem: yeah

AlMualem: Guys is anyone here NOT working as a dev?

Astrobytes: especially if your health service is in such a bad state you can't even get an appointment for being ill never mind a checkup...

Astrobytes: AlMualem: me

Wontonimo: A lot of people here are not devs

struct: me

MACKEYTH: Student, here

struct: But i cant code

Wontonimo: lol

Astrobytes: lol shut up :D

AlMualem: Astrobytes this is awful indeed and i leave in one of that type of country :/

AlMualem: struct ....suuuush! :P

Astrobytes: I believe everyone has a right to healthcare

Astrobytes: anyway. lets not dwell on such things

AlMualem: yes yes

Astrobytes: not many people here that aren't devs that aren't studying CS/related subject though

AlMualem: so...how about separating my strat to early and late game? you think that we get better results? I am thinking early strat more farming and late ultra abusing enemy's base

KiwiTae: try it

AlMualem: on it mate

Illedan: Validate everything

Bernard_Lowe: are battles are going slow for everyone else today?

_NikJ: Well, silver came out, so server was kinda under pressure :D

aCat: oh c'mon

Astrobytes: Yes. I think silver is still computing since about 4pm

_NikJ: yup, I'm at like 60% xd

_NikJ: 64% since 4pm today :D

Bernard_Lowe: Oh wow. Thanks. Just glad I'm not alone.

Astrobytes: and people just keep resubmitting, which is completely helpful of course

aCat: I'm in with just a few rules, and not interested in silver rank, but everything works so slow...

aCat: Astro you have some proper search algorithm :>?

Default avatar.png Abdi-29: is someone using cpp?

Astrobytes: Hell no, bunch of ifs :D

aCat: Aaaaa

aCat: anyone

Astrobytes: illedan does

aCat: All people are about ifology

aCat: no he does not ;p

aCat: His ifs perform better than sim ^^'

Astrobytes: oh lol really

KiwiTae: im debugging my sim

KiwiTae: currently can't target closest monster :joy:

Default avatar.png Abdi-29: if yes, did you use vectore? how did you sorted it?

Astrobytes: I plan to sim a few things but not a full sim/search

Wontonimo: me too

aCat: I rewrote engine, debugged it

KiwiTae: im still debugging :D

aCat: and now I have no idea what to do with it ;]

Astrobytes: :D

Astrobytes: I would use certain parts as required I guess

struct: do something simple aCat

aCat: https://imgur.com/a/FOrQYE4

struct: make an attacker or something

Astrobytes: seems rng and whatnot will get in the way with a lot of prediction

aCat: struct I have simple bunch of ifs to get me to silver :joy_cat:

Illedan: Nice img acat

aCat: you aim at proper algo struct?

Astrobytes: *way of

KReguieg: @Mods SUGGESTION: http://chat.codingame.com/pastebin/a2794e31-6210-4461-9847-1b211b6607b0

struct: my code is 2 or 3 ifs

aCat: My method of writing engine,

Illedan: 97 ifs in my whole code

Default avatar.png LaurensD: losing code is a b with working online lol

Illedan: but that is the engine too

Astrobytes: at least I have a version that actually stores everything I read today

Wontonimo: wait till they rollout pay-to-play KReguieg ;)

Default avatar.png LaurensD: when working online*

aCat: Download input from the replays, and generate bunh of images

aCat: and compare proper result with my prediction ;p

Illedan: Do you have full replay inputs?

aCat: myInputs

LostDragon: @Abdi-29 std::sort(begin(...), end(...), [&](auto a, auto b){//compare strictly less than})

Illedan: ah, yoiu error print it

aCat: I rewrite them on stderr and got program to parse and make my 'input.txt'

aCat: yep

Default avatar.png Abdi-29: ill try it

Default avatar.png Abdi-29: thanks lostdragon

avdg: hmm, bad idea to do 6000 * 6000 times distance calculations (wrong maths that caused big numbers)

KReguieg: @Wontonimo I would be fine with watching an ad or two as well. But i wouldn't pay to play at all. ^^

avdg: just basically timed out my bot

jacek: KReguieg by playing dice duel your gpu mines CG coins :v

Wontonimo: i think better would be a folding-at-home solution ... if you want to compete, you provide CPU.

simonmtr: Is there a way to set my base values when playing against the bot? For example that my base is in the bottom and not the top?

Wontonimo: yes, center bottom

Astrobytes: yes, use delete below the player avatars at the bottom and swap em

Wontonimo: click on the delete for both you and bot

Astrobytes: ^

Wontonimo: then click the [+] to add them

Wontonimo: first is top left, second is bottom right

simonmtr: Oooh nice you can also play against other players this way? :upside_down: Thanks!

Alurian: yes

Kukiss: and also you can play your IDE bot agains the one submitted to arena

Wontonimo: ^^ that!

simonmtr: wow thats so nice, I did not know that :)

jacek: and you can play yourself!

jacek: :no_mouth:

Wontonimo: approx 5,000 bots across all levels. That's a pretty good turn out.

struct: Doesnt silver feel to big?

Wontonimo: yes

Wontonimo: bronze is the new wood. wood is the new intro

jacek: meh new league should be at most 10%

IvesL: its always like that isnt it

struct: 57 battles done

struct: only 18%

PatrickMcGinnisII: people are resubbing alot during the full recalc, that's messed up

Wontonimo: maybe the new company that CG is part of want's to inflate placement in leagues

struct: https://www.codingame.com/replay/623863375

Wontonimo: if gold is going to be top 50% of silver then I'm already in

struct: This bot shouldnt have passed to silver

VizGhar: Brutaltester crashing with Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/logging/log4j/util/ReflectionUtil

VizGhar: any idea why? I compiled it using mvn package

Default avatar.png Bbrainstormer: When do I get promoted>

struct: it should take a while

struct: the servers are stuck

Default avatar.png Bbrainstormer: Alright

VizGhar: Bbrainstormer about 5 hours? :) arena is full

struct: you are optimistic

Default avatar.png Bbrainstormer: Just making sure there wasn't a button I needed to click or smth

struct: I would say 10 hours+

Waffle3z: we need more leagues if half of everyone gets promoted every time

Waffle3z: 33 should be enough for now

VizGhar: You still need reevaluate whole previous league

VizGhar: ah... with 33 it should be good :D

IvesL: take reference to the population in line racing

IvesL: spring 2022 gold+legend should have around 1000

VizGhar: after 5 years :)

Mateuszone: how i can print how much mana i have

Mateuszone: ?

_NikJ: mana is given as input

_NikJ: there are 2 mana readings per turn, first one is always your mana

GlaceCoding: base[0].mana

VizGhar: anybody can help me with brutaltester? java.lang.NoClassDefFoundError: ReflectionUtil

VizGhar: I've probably build it incorrectly?

avdg: hmm how to create a snippet, I've been playing with github copilot a bit :p

Mateuszone: print(base[0].mana) doesnt workj

Darleanow: hello every1

_NikJ: I just told you, Mateuszone, every turn, there will be 2 inputs regarding mana and hp, the first one is always yours

Mateuszone: but i dont know ho wto print it out

Mateuszone: im new to coding and i dim not sure if i understand it correctly

Mateuszone: that input think

Mateuszone: thing

_NikJ: paste the code here, I'll explain it

Ketroc: which they upped the game length. With spiders always rising in health, an extra 20ish frames would likely remove 90ish% of the draws.

madninjaskillz: VS2022 just auto suggested my new list should be called "EnemiesByRace" - should i be worried that my IDE is recommending ethnic cleansing?

Mateuszone: i just need some examples of debbuging prints

jacek: python?

Mateuszone: to see whats going on inside because at the moment i dont know how to do that

Mateuszone: in python

jacek: print("xxx", file=sys.stderr, flush=True)

Default avatar.png Glyptod0n: try the python starter kit

Default avatar.png Glyptod0n: https://github.com/CodinGame/SpringChallenge2022/blob/main/starterAIs/starter.py

Mateuszone: print("my_mana", file=sys.stderr, flush=True)

Mateuszone: it doesnt print the value

jacek: my_mana without "

Mateuszone: okey now i see

Mateuszone: so i can print like that every varaible yes?

Rikus: I have made two calculations, one one I was at 2% battles and another right now at 15% In both it gave me that it will take 24hs O_o Unless they decide to add moar servers

Mateuszone: we can imort every standard python library?

Wontonimo: I'm also trying to get the local brutaltest going and getting this

Wontonimo: java -jar -Dleague.level=3 ./spring2022.jar -p1 "python bronze195.py" -p2 "python bronze239.py" -d seed=122205825 -s no main manifest attribute, in ./spring2022.jar

Mateuszone: do you guys create classes?

Wontonimo: any ideas why "no main manifest" ?

Mateuszone: or everyone is doing it in functional way?

Wontonimo: meh, classes-ish

Wontonimo: certainly not industry coding. just hacking

SashaNukem: I am using CPP with classes and vectors

Mateuszone: how many lines you got?

Mateuszone: i have 137 xd

SashaNukem: ~415

SashaNukem: XD

SashaNukem: the classes take up ~ 200

Wontonimo: got it, i used https://github.com/johnpage-agixis/SpringChallenge2022 instead of the "official"

avdg: 1517 lines now, just added the last biggest chunk of new code

_NikJ: Ugh, my brilliant mind took into account target hp when choosing who to kill first. But in such a way that I always leave low hp monsters alone and they end up in the base :D

avdg: will switch to fine tuning, not sure how much code that can add

Mateuszone: do you use some special math coordnate functions?

avdg: for? I added some coordinates system that I don't use just now

_NikJ: What was the name of that chrome plugin which would automatically run tests for you?

avdg: pupeteer?

avdg: dunno

SashaNukem: does pastebin work in this chat

Mateuszone: i wanted to make one hero offensive and then created a ranges of coordinates on which he will walk

Mateuszone: but python seems to slow to use randint every time

Mateuszone: to choose random mvoe

Mateuszone: move

_NikJ: CG Spunk, there we go

struct: Does it even work anymore?

avdg: hmm my new chunk of code added 1 ms to my bot's execution time (which is at least double the run time of a round which gets added on top)

Mateuszone: and another weird thing is that i have checker if mana >10 before i use any spell and even with that i got an error out of mana

Mateuszone: and then i lose

Mateuszone: why is that?

struct: SashaNukem if what you are pasting has over 5 \n it should make a pastebin

Mateuszone: http://chat.codingame.com/pastebin/ce90f1ae-0317-480d-a379-e5654239e12a

struct: my_mana -= 10

struct: when you print a spell

struct: because currently you can have only 11 mana but you are going to try to use 2 spells

Mateuszone: http://chat.codingame.com/pastebin/b253a08c-b4e9-4b49-bcb0-7ad95d3dd604

Mateuszone: i have it now

Mateuszone: and i got the same error failed a wind not enough mana

struct: you dont check for mana here

KReguieg: phase of denial. :D

struct: if len(spiders_ranked) > i: http://chat.codingame.com/pastebin/5f2b3401-a118-44ab-9f6a-40388626606f

Mateuszone: why not here?

struct: in one of those ifs

Mateuszone: before casting a spell should be good

struct: you need to check for mana

struct: if spiders_ranked[i-1][1]['x'] < 800 and spiders_ranked[i-1][1]['y'] < 600:

                   print('SPELL WIND',opponent_base_x,opponent_base_y)

Mateuszone: if my_mana > 10:

                   print('SPELL WIND',opponent_base_x,opponent_base_y)
                   my_mana -= 10

struct: this if doesnt check for mana

Mateuszone: my_mana

struct: The if

struct: Needs to check your mana

MichExpatMatt: Just came home from a night out to find I got promoted to silver, yet my leaderboard score dropped by almost 15 pits:thinking:

Mateuszone: if my_mana > 10

Mateuszone: it is doing that

Mateuszone: it is checking my mana

struct: Well I dont see it

struct: check line 124

Mateuszone: http://chat.codingame.com/pastebin/8d2178f6-86da-49ee-9e90-99707c17364e

Mateuszone: ph

Mateuszone: you are right

Mateuszone: there is one checker missing

jacek: :upside_down:

Kukiss: MichExpatMatt The Silver launched 5-6 hours ago but the battles are still being processed. I am 54% battles in progress after me Submitting to arena around the silver launch.

That said, the statistics shown are not super reliable yet

Mateuszone: but this my_mana -= 10 might be unnecesarry

Mateuszone: because a game is taking care of that

IvesL: no it is for your next hero

MichExpatMatt: Okay, that was going to be my next question, I'm only at 59% battle progress, and I rebooted just wondering if clearing my browser cache wasn't enough

IvesL: if you have got only 10mana left, and you used a spell on hero 0, your hero 1 wont have enough mana but your current my_mana doesnt reflect until next turn

jacek: servers are slow. youll better go back tomorrow

Default avatar.png Tuo: i dont have mana-=10 either and it never crashes, but maybe hero will skip a turn?

MichExpatMatt: yeah, I was just thinking "guess I'll go play civ instead" or maybe some code clashes or something

Default avatar.png Abdi-29: is this the correct way to calculate distance? int distance = sqrt(pow(base_x - (*it).vx, 2)) + pow(base_y + (*it).vy, 2);

MichExpatMatt: not much point tweaking my algo repeatedly until I see how things end up

Rikus: sqrt(pow(base_x - (*it).vx, 2) + pow(base_y - (*it).vy, 2));

Rikus: sqrt if for the sum of both differences, and you were adding instead of sub on the Y part

MichExpatMatt: Abdi-29 unless you care about postive/negative vector direction, you may want to square the absolute value of the difference before before adding and taking the sqrt. At least I've been doing that to always get a raw distance value regardless of which side of the map I'm on

Default avatar.png Abdi-29: ah i see. i didn't see that. thanks

Default avatar.png Abdi-29: Ill take a look of that. thanks

Default avatar.png LaurensD: waw refactoring the bot pretty much whole and it does not have any smart functionality yet or whatever lol I don't know how I could win this lmao

Default avatar.png LaurensD: https://www.codingame.com/replay/623890855

Mateuszone: can i run it in my ide?

Mateuszone: like pycharm?

IvesL: you need a chrome add on

VociNur: Yes, in a game, on the left in Settings

Kukiss: Laurens. first thing I see, you could try to run to monster with a unit who the closest, to do not loose time. Turn ~11, you took the furtherst one ;)

Kukiss: the left a space if 'defense'

MichExpatMatt: @LaurensD wow. Looks like the default bots ran into a fog of war issue to run out across the map and let monsters overrun their base

Kukiss: the left a space in 'defense'

PatrickMcGinnisII: use distance constants, square them. example BASE_RADIUS=5000; Instead use 25000000... and don't even use a sqrt in your code. And a pow(-1,2) should still be 1...no abs required

jacek: no exercising no abs

MichExpatMatt: Is there a precision/optimization difference between sqrt vs using pow?

avdg: LaurensD I can't find your bot :/ But I guess my ai would crush you

PatrickMcGinnisII: numbers less than 9223372036854775807 shouldn't be a problem

MichExpatMatt: ohhhh gotcha

avdg: hmm surprisingly, 2nd position bot doesn't hurt me too much

avdg: http://chat.codingame.com/pastebin/c5336068-7b21-44a7-9574-16cafc29aca5

avdg: (and yeah, I managed to shave off that ms again, scraped a lot of ifs in hot loops)

Default avatar.png LaurensD: Know it's a bit early but when is gold league starting (estimate)?

avdg: less than 2 days

avdg: https://clist.by/standings/spring-challenge-2022-34341526/

Default avatar.png LaurensD: Thanks!

Mateuszone: ive installed extension for chrome and i still cant click on at externalsourceeditor

Mateuszone: external_source_editor option

avdg: did you downloaded the local java plugin?

avdg: at least, if you use cg local

Mateuszone: the one from chrome store

avdg: yeah, but you also need a jar file from github

Mateuszone: where i can read some manual about that?

avdg: because google disallowed plugins to have file system access

avdg: https://github.com/jmerle/cg-local-app I guess

Mateuszone: thanks

Default avatar.png thekindboy: hey guys what are the best websites you use to practice coding plz i am new

Mateuszone: so basically this game got some reserved names and if u give them input then game engine will provide a values for them?

Default avatar.png LaurensD: You are the controller that operates the actions of the heroes, it's pretty much that. Reading the console must be done in a specific order and you are expected to give a response also in a specific order (normal work flow)

Mateuszone: so i cant change anything from mathis hammel video?

Mateuszone: like for and while loops?

Default avatar.png LaurensD: while must be there because it must continue to give responses

Default avatar.png LaurensD: but other than that you can modify everything expect the order/requirements of the response

Mateuszone: what u mean by order/requirements of the response?

Default avatar.png LaurensD: reading data from console, that must be in order

Mateuszone: so basically all variables which are fro input function?

Default avatar.png LaurensD: there is also a 'for' loop through your hero's and that must also send one action for each hero

Mateuszone: this one for i in range(heroes_per_player):?

Default avatar.png Mamounedj: HELLO

Default avatar.png LaurensD: Yes

MrMoustach: is there an arena problem ?

Default avatar.png LaurensD: Go through those input() those must be in order

Default avatar.png LaurensD: and there must also be 3 times 'print("action")'

Uemu: Hi, was there no addition in silver league ?

struct: hi, no

Default avatar.png LaurensD: @MrMoustach, Nope it's just slow because there came a new rank

Uemu: Thanks

MrMoustach: oh thank you

Mateuszone: so is it a good idea to create classes with methods for heroes and spiders?

Default avatar.png LaurensD: it's your party, if you seem it fits your design sure why not.

Mateuszone: but python is not to slow to do that in class way?

Uljahn: python is mostly ok, just don't do deepcopy

Default avatar.png LaurensD: No experience with python, so can't give a response on that. But could be fine ~

Default avatar.png LaurensD: overcomplicating stuff also with c# at this point :/

Default avatar.png LaurensD: *yolo*

Mateuszone: http://chat.codingame.com/pastebin/5b46524f-10a4-4d42-b574-64f491f76720

KiwiTae: Mateuszone bad idea to post bot code during contest

Mateuszone: why in print with spiders_ranked it print to console only one (thread,spider) pair

KiwiTae: :joy:

Mateuszone: its a shitty code xd

Mateuszone: im a noob xd

avdg: do we have spiders in this game? I thought we only had monsters

Mateuszone: you are right but this shouldnt be the case that is just a name

Default avatar.png LaurensD: We got entities*

Mateuszone: for i in range(entity_count): http://chat.codingame.com/pastebin/cef18ab9-98bb-4827-96f5-331a5010a5ca

Mateuszone: and i append these entities to a different lists

Mateuszone: but when i do print(spiders_ranked, file=sys.stderr, flush=True) i got only 1 record in a list

Default avatar.png LaurensD: ah, perhaps because there are no spider in range at that time

Default avatar.png LaurensD: you can only see spiders that is within your see range (not inside those smoke)

Default avatar.png LaurensD: or you see that by default this way; perhaps you can try a count for this; not sure how it works with python though

Default avatar.png LaurensD: ```print(len(spiders_ranked), file=sys.stderr, flush=True)``` I guess

Default avatar.png ashiknur: can I see those spider attacking opponents base when my hero's are not in see range?

PatrickMcGinnisII: nope

Default avatar.png LaurensD: nope

MSmits: but you can abuse the symmetry

avdg: the symmetry can indeed reveal a lot

Default avatar.png LaurensD: only around hero (the clear part)

Astrobytes: wild MSmits appears :tada:

avdg: hehe, I thought he wouldn't show up

MSmits: hehe yeah, i only now started coding for real. well semi-real. I did what is in the video and improved a bit.

Astrobytes: video?

darkhorse64: 2625 submits rn, contest will end before we get a chance to submit again

Astrobytes: Oh the starter intro thingy

MSmits: yeah the introduction thingy, 20 mins

avdg: my ai can already track things

Astrobytes: didn't watch it

PatrickMcGinnisII: lol Astrobytes, like wild mana

avdg: now it's a matter to use it's info to the max potential

MSmits: it's ok, first 10 mins you can skip, second 5 mins or so tells you some logic to use. Pretty basic.

Default avatar.png LaurensD: mateuszone, congrats your bot can beat the default ai of silver: https://www.codingame.com/replay/623922463 :laughing::stuck_out_tongue_winking_eye:

Astrobytes: only today did I make a bot that kept more than a few variables as input

MSmits: isn't the default AI always the same?

Default avatar.png LaurensD: idk, there were multiple and some where good

Default avatar.png LaurensD: it changed since I got promoted to silver

ZarthaxX: SMITO

MSmits: hi ZarthaxX

avdg: if there is no ai assigned yet, the default will take it spot

ZarthaxX: howdy

Astrobytes: I think default AI defaults to previous league boss past the wood leagues

MSmits: ohh ok

MSmits: yeah then it's different

Astrobytes: zartho

ZarthaxX: astrobyto

ZarthaxX: :*

darkhorse64: It used to have a nice funny name also

Astrobytes: :hugging:

MSmits: I'll be in bronze when the submit is done at least... but....

ZarthaxX: submits have been going for hours by now lol

Astrobytes: The contests used to have names too darkhorse64 :(

Astrobytes: Am I still computing since 4pm or whatever it was?

Astrobytes: fking hell 82%

ZarthaxX: :D

PatrickMcGinnisII: like 5.5 hrs now

avdg: how to see how big the compute queue is?

ZarthaxX: final days gonna be hell

MSmits: I just got a message saying a cat is following me.

Illedan: 3 and 4 have crashed their progress too

darkhorse64: The current boss does not look smarter than the bronze boss. Yes, you are, 6+ hours submit for me

darkhorse64: avdg: score -> in progress

Astrobytes: so much of this is a complete joke, I'm just here for the atmosphere now tbh :D

MSmits: what is a joke besides the submit times?

Zandy156: my wood II submit from 3 days ago is at 22% progress in silver

Waffle3z: 28 have finished

Astrobytes: MSmits: you haven't been following chat I see

Default avatar.png HenroLST: ,agic

MSmits: no, i have not been very active the start of this contest

darkhorse64: What puzzles me if the number of submits keep on increasing

MSmits: been doing some vacation chores and relaxing

MSmits: finished season 15 of supernatural finally :)

Astrobytes: darkhorse64: people just keep resubmitting

Astrobytes: + new users

Illedan: :angel:

Astrobytes: :D

MSmits: the battles in the IDE are probably painful for the server as well

MSmits: and they get precedence

Illedan: Yeah, they are prioritized

Astrobytes: yeah but you don't get many nowadays

darkhorse64: resubmitting is useless without a basis to compare

Astrobytes: MSmits: did you watch Picard yet? 2nd series playing now. And did you check out BCS?

MSmits: BCS?

Astrobytes: Better Call Saul

avdg: if there was an inbrowser variant of the runner (meh, executables then have to be exported through wasm)

MSmits: I didnt watch the whole of picard 2 yet, it came 1 episode at a time

avdg: ofc, only works with code that doesn't need to be hidden

Astrobytes: Yeah I've not bothered with either, I will watch when they are complete

MSmits: if BCS has a new recently added season, i still have to watch it

Astrobytes: It oes

Astrobytes: *does

MSmits: oh cool

Astrobytes: only recently started I believe, this is the last one ofc

MSmits: oh ok

Astrobytes: (afaik)

Astrobytes: WHAT ABOUT KIM is all we want to knopw

MSmits: I am still hyped about the ending of supernatural. Man that show ran for 15 years. I only just graduated when it started

Astrobytes: Never got into that. Thanks for getting me into BCS though

MSmits: it's not bad, it has a road trip vibe, lots of humor and monster hunting

MSmits: target audience is guys around 20-30 i think

Astrobytes: I liked Grimm for humour and monster hunting, that was legit hilarious

Astrobytes: Proper b-movie-material series

MSmits: yeah Grimm is not that far from this, but the main character in Grimm is more of a family person. supernatural is about two brothers going cross country in an impala killing monsters. slightly different vibe

Astrobytes: maybe I'll give it another shot at some point

MSmits: But yeah BCS is cool. You just have to get over the fact that it's not breaking bad. It's its own show and good for other reasons

kelium: hello, people :) :grin:

MSmits: and in some parts of it, good for the same reasons

Astrobytes: It's slower paced and character-focused in a way BB isn't. I think it might even be better in some ways than BB. Hard to compare.

MSmits: yeah

MSmits: hi kelium

Astrobytes: Like El Camino, totally blew the end of BB out the water for me

Astrobytes: Far more interesting for a start

Astrobytes: Poor Jesse

PatrickMcGinnisII: vampire diaries into the Originals is better

PatrickMcGinnisII: then Legacies had potential

Default avatar.png apple124: e

PatrickMcGinnisII: BB is like Ozark

PatrickMcGinnisII: er other way around

Astrobytes: Wut. Only vampire things that are decent (imo) are the Anne Rice movie ones plus anything involving Salem's Lot

Astrobytes: Other way around PatrickMcGinnisII

PatrickMcGinnisII: queen of the damned suck imo

Astrobytes: didn't really follow ozark much though tbh, any good?

MSmits: i didnt either

Astrobytes: PatrickMcGinnisII: yeah, so did the book, nothing to worry about there

Default avatar.png pwahs: are the full rules for bronze available somewhere? I'm Rank 7 in Wood 1, but I guess it will take a few more hours until I can get promoted

PatrickMcGinnisII: There's a bunch of non-english series on netflix that kick butt, but it's hard to read them all the time

PatrickMcGinnisII: ozark after first couple of episodes starts to get good

MSmits: In a way I like that netflix got me trying so much stuff that I can now quickly tell the difference between Chinese, Japanese and South Korean content.

MSmits: a lot of it is SK btw, for some reason. Could be the algorithm thinking I like that

PatrickMcGinnisII: Amazon prime throws so many 1 star B movies in the mix, it's so frustrating

MSmits: netflix does too

PatrickMcGinnisII: they keep increasing prices, and are delaying series seasons on purpose...jerks

PatrickMcGinnisII: I like watching DUST on YT while on CG

Astrobytes: I er... try before buying so I don't waste money

PatrickMcGinnisII: that's why i need a new GF

Astrobytes: she doesn't like piracy?

PatrickMcGinnisII: I try and won't buy, lol

Astrobytes: shocking Patrick, just shocking :P

PatrickMcGinnisII: Last one I wed... well, she grew fangs

Astrobytes: Garlic, heard that works well

Astrobytes: Dude, you live in FL ffs, move :D

MSmits: oh, yeah in FL things have fangs

MSmits: I heard everyone has a pet alligator

MSmits: or something

PatrickMcGinnisII: pet mosquitos the size of cats, lol

Astrobytes: viruses don't exist, wrestling gators is a pastime and women have fangs. Correct.

MSmits: really small cats too... amazing

Astrobytes: "cats are small - but not as small as spiders" - My Mother

PatrickMcGinnisII: my ide code beats people in top 100, but i dare not submit

Astrobytes: wait for everything to stabilise, if it ever does

MSmits: has it ever been this bad, this far into the contest? I remember this on the first day or so

PatrickMcGinnisII: I've gotten stuck in silver b4 because i didn't, but i don't care anymore. going shopping. glhf.

MSmits: oh yeah and i guess on the last 1-2 days with massive submits

Astrobytes: for me, it's been heinous until they reduced the number of matches played in bronze

MSmits: hf PatrickMcGinnisII

PatrickMcGinnisII: some players are waiting to submit their legend bots, i can tell

MSmits: well i am with 740 people in wood1 and ranked 1 above boss at 51

Astrobytes: enjoy shopping PatrickMcGinnisII, remember to get a new GF when out shopping with the GF :D

struct: MSmits the problem is that they used the old way of promotion

struct: Where everyone that got promtoed resubmits

Astrobytes: yeah

MSmits: oh yeah that's not good

struct: instead of just making everyone next league and keep same elo

Astrobytes: they didn't just transfer like the last few times

MSmits: oh right, it's this bad because silver just opened?

struct: When the people that got promoted is aroudn 2k

struct: and the games you play are 100 again

struct: its too much

Astrobytes: 2246 in silver rn

MSmits: holy

MSmits: crazy

struct: I was promoted maybe 1 hour after silver opening

struct: my submit is at 23 %

Astrobytes: I think 100% are still computing

PatrickMcGinnisII: too many games going to 220 ... 153 matches at 89% now

PatrickMcGinnisII: ok, shop, c ya

Astrobytes: struct: yeah, I'm at 87%, not sure how long after opening it happened but that was a Long Time Ago

struct: 2,556 results found for «Score - Computing»

Astrobytes: 100% of silver I mean

Astrobytes: so yeah

struct: how can yours be at 87

struct: and mine at 23

struct: lol

Astrobytes: did I promote before you?

struct: probably

Zandy156: it looks like 120 in silver are stable

Astrobytes: even the promotion was strange, I attempted to go off and do codejam 1B but couldn't concentrate

Astrobytes: I suck at limited time contests, felt like an exam I never studied for lol

Astrobytes: (short time)

PythonPlusPlus: When does the Gold League start?

Astrobytes: christ silver just opened and already gold questions!

Astrobytes: probably about 2 days or so

Lysk: when computing is done then ;)

PythonPlusPlus: I'm itchin' to make it to the highest league. I was hoping that I could do it over the weekend, but that apparently wasn't possible

avdg: submission is faster now, got 10 from the start

Astrobytes: Lysk: :D

struct: avdg you always get 10

struct: and those 10 are prioritized I think

avdg: ah

avdg: but at least, they come through

PythonPlusPlus: I didn't get 10 when I submitted

Astrobytes: PythonPlusPlus: no but if you strive to be at the top now, chances are you will be promoted

Astrobytes: if good enough to stay up there

PythonPlusPlus: I'm thinking of rewriting my bots. My current strategy got me as far as 600th place, but it is really weak to shield campers

avdg: currently I have to move some code to libraries, so I have less code to move around, but a lot of code is already quite ordered well already

Astrobytes: i would recommend to do it asap while you can still get some games against top part of the league

Wontonimo: oh, that's good advice !

Wontonimo: haha, I left for a few hours and my bot which I submitted about 5 hours ago is still computing, only 89% done

Default avatar.png HenroLST: geez

avdg: luckily computers aren't doing everything in our world of today :-)

Astrobytes: same wontonimo, 89% and I hadn't submitted for a few hours

Wontonimo: oh! Another battle for me started !

Astrobytes: avdg: :grin:

geppoz: https://www.codingame.com/replay/623902548

Astrobytes: nice to see you around again btw avdg

geppoz: someone can explain the direction of the spider 83 in round 120 ?

avdg: I probably have to go around now, tomorrow work

geppoz: it was CONTROLLED toward enemy base, the WINDED a couple of times, then changed completely direction in SW ?

avdg: but yeah, I'm having a good start despite being busy with work

Astrobytes: all good, any spare moments and you know where to come :D

PythonPlusPlus: Any tips for dealing with shield campers? Currently my strategy is to stop them from crossing the half way divider, but that heavily drains mana. I'm thinking of maybe routing spiders around the enemy heroes

madninjaskillz: rerun code: no red in the timeline...is this it, can i finally beat Pierre31? no. theres no red on timeline because my code is bugged and i failed instantly. embrace depression.

Default avatar.png HenroLST: rip

Wontonimo: play the camper you don't like against someone higher and look at how they deal with it PythonPlusPlus

PythonPlusPlus: Good idea

avdg: I love how my ai defends

https://www.codingame.com/replay/623960595

Wontonimo: glad you like it

Default avatar.png HenroLST: burh why my code hate me:cry:

Wontonimo: that is a pretty good defence avdg

Astrobytes: because you do not love yourself HenroLST, therefore all your code will be against you :rofl:

avdg: oh rip that

Default avatar.png HenroLST: i feel like that's deep but at the same time

Default avatar.png HenroLST: ...

Astrobytes: it's a deep p*ss take yeah

Default avatar.png HenroLST: not me struggling in wood 2 :grinning:

Astrobytes: focus, you'll get there

Default avatar.png HenroLST: i had it working, then i changed to target the closest monster when none are targeting my base, and now it just randomly stops outputting MOVEs

Astrobytes: review your code, you've made an error somewhere. Screen-break, look at it again

Default avatar.png HenroLST: hmm, ill take a break and do my physics like i was originally planning to do :grimacing:

Astrobytes: that's a very good idea

avdg: I find it easier to work with versioning (backups, or using a version control system like git, or an editor that keeps track of history)

geppoz: well, there is a unsaid rule that a spider WINDED out the base are, picks a random new direction?

geppoz: *area

Astrobytes: geppoz: If a monster is pushed (with a WIND command) outside the radius of a targeted base, it will stop targeting and start moving in a randomly selected direction.

geppoz: oops it is not "unsaid" then :D

Astrobytes: geppoz: R T F S :D

Wontonimo: read the forbidden statement ;)

Wontonimo: *forgotten *fiendish

Astrobytes: at least not frobnicating

Astrobytes: we have had those in the past

Astrobytes: or frobnicated, delete according to your preference

Default avatar.png HenroLST: any idea why this might appear: Warning: your code did not read all available input before printing an instruction, your outputs will not be synchronized with the game's turns and unexpected behaviour may occur.

geppoz: you wrote more than 3 row in one turn

Jason_Down: Late to the party and had a couple hours this afternoon. I figured I could try to get up to bronze at least as a first go. It's been nearly 2 hours since I submitted my first attempt at Wood 2 and it's only 76% through the battles ugh :disappointed: There's 58 of us ahead of the boss, just let us through please :sob:

struct: you are either outputing before reading all inputs

struct: or you are outputing more than 3 times per turn

Default avatar.png HenroLST: ah, ok, thanks!

struct: It doesnt tell you if you output 4 times

struct: but the output will be queued into next turn

struct: which will make it go out of sync

Astrobytes: Jason_Down: the silver league opened and it's caused a huge backlog since there are wayyyy too many battles computing at the same time

Jason_Down: Yeah I figured it was bad timing on my part

Jason_Down: Should've started yesterday

Default avatar.png HenroLST: yay solved it, thanks struct!

Waffle3z: up to 83% after 7 hours

Jason_Down: damn

Astrobytes: and no chance of any action by staff since it's Sunday (or Monday in France and some other places)

Jason_Down: Need some autoscaling on the servers :)

Astrobytes: 96%!!!! :tada:

Jason_Down: noice

Astrobytes: 4:19PM

Waffle3z: or just switch everyone above a certain rank to the next league and don't recalculate over 2000 bots at the same time for the rest of the day

Jason_Down: I just jumped to 80%. Maybe I'll have a chance to get to Bronze before I need to call it a day.

Default avatar.png HenroLST: dang this opponent just sent 2 of his hero's to camp my base.

Astrobytes: Waffle3z: I don't know why they regressed to this way of doing it since the last few contests they just literally moved everyone into the next league

Jason_Down: I guess I'll check back in an hour. Good luck everyone.

Kukiss: I wonder, would it be better for server if Silver was smaller?

Or both leagues (silver and Bronze) were triggered to play all battles anyway?

Astrobytes: and to you Jason_Down

Astrobytes: Kukiss: see my previous comment

Wontonimo: would have been better if the referee was *faster* AND only 20 battles when the promotion first happened. No real need for accurate placement on initial drop

Astrobytes: They started to simply transfer the 'quota' as it were into the next league, and now for whatever reason are no longer doing this

Astrobytes: Perhaps it was an unnecessary expense

Wontonimo: really, is 160 battles necessary at this point?

Wontonimo: i don't think so

Astrobytes: it just seems careless tbh, the past 2 contests (3?) used the simple transfer to next league way

icecream17: Let's go I finished variable initialization! First submission! Rust is hard

Kukiss: I see, these decisions are indeed interesting

Astrobytes: icecream17: Rust is not hard, you are Rust-resistant. Let yourself rust

madninjaskillz: i just got beaten by someone who used the tags above heros to scroll the lyrics to rickroll. talk about rubbing salt into the wound.

icecream17: yeah I'm a beginner

Wontonimo: galvanized

Default avatar.png HenroLST: geez

icecream17: ooh that's awesome. I think I'll do that too

Astrobytes: icecream17: I know, hence my advice!

icecream17: nice pun

Astrobytes: It's a very different way of working

Astrobytes: lol wonto

Wontonimo: after you get comfortable with rust, move onto NNs

Wontonimo: just so you never get comfortable with one way of doing things

icecream17: I suspect my code isn't that rusty

c0r3dump: @icecream17 Fighting against the Rust borrow checker is super hard at first but after a while it's the best thing there is.

Astrobytes: NNs ofc being Nickel Nanomeshes

geppoz: anyway I think there is an error in the statement ;)

geppoz: in the step description it seems the CONTROL direction is calculated as first, before the spider moves

Wontonimo: because I hate myself, I'm resubmitting my bot with only a minor change

geppoz: instead it seems to me that is calculated after the spider moves (step 7)

Astrobytes: control is applied on the next turn

Astrobytes: well, is applied but effective on the next turn

geppoz: yes, it is effective next turn

geppoz: but the direction is calculated after the spider move, not before

Astrobytes: in the referee

Astrobytes: ?

geppoz: I'm not looking at the referee, just noticing in games

geppoz: yes, I should check that

Astrobytes: well, don't trust the viewer from turn to turn lol

Astrobytes: look at the statement, inputs/outputs and ref

geppoz: I dump the coordinates on stderr

Astrobytes: yeah, they don't match up with viewer frames usuallly

Astrobytes: well, not as nicely as they should rather

Astrobytes: but defo check the ref

Zhme: anyone using C++?

Astrobytes: nah, we're using python and pretending

Zhme: good stuff

Astrobytes: if you have a question just ask it

Astrobytes: people will try to help

Zhme: just wondering if anyone had a suggestion for a type to hold entity data

Zhme: never done this before

Astrobytes: a struct would be fine

icecream17: it seems like there's a limit of 98 monsters, is there?

Astrobytes: during these contests you don't need to get too hardcore with the 'proper way to do things' so making everything public isn't much of an issue unless you plan to send your code to someone else for review lol

Astrobytes: @Zhme

Zhme: thank you!

Astrobytes: You could have a vec2d struct, then inherit from that, or just use it in your entity struct

Astrobytes: etc etc

Astrobytes: use whatever is comfortable and works

Default avatar.png Tuo: vec2d class with overloads and you wont know where vector math ends and begins :D so much fun

Astrobytes: lol

Astrobytes: templates!

Runner87: monster shielded moves with WIND?

geppoz: no

Astrobytes: shield prevents effects of spells on the shielded unit

Default avatar.png ashiknur: testing in arena taking too much time.

Default avatar.png ashiknur: is the default AI of bronze and silver league is the same?

Astrobytes: ashiknur: it will presumably get faster at some point during Monday

Default avatar.png ashiknur: is the default AI of bronze and silver leagues the same?

Astrobytes: Opening of silver league was somewhat stressful on the servers

Astrobytes: I think the default AI of silver is the bronze boss

Default avatar.png ashiknur: that means we have to beat the same boss or will it change?

Astrobytes: and so on, down the leagues

Astrobytes: in silver?

Default avatar.png ashiknur: yeah

Astrobytes: A new boss will be chosen as it was in bronze, then you have to beat that to get to gold

Whatar: How is the boss chosen?

Astrobytes: wood bosses are premade, the bosses from bronze onwards are handpicked by staff

Whatar: cool

Astrobytes: as in handpicked from the users in the league

Djellowman: can i have multiple files?

Djellowman: i seem to only get 1 file

Astrobytes: you get one file. You can write or use an existing script to combine your files into a CG-friendly format

Djellowman: thank you

Astrobytes: np

Astrobytes: there are a few ready-to-go 'bundler' scripts around if you search the forum, depends on your language but there are a few

Djellowman: another type of question; do you think it makes sense to keep track of both players' wild mana?

Djellowman: since it seems to be a win condition if both players defended everything

Default avatar.png Glyptod0n: for the detail "its coordinates are truncated (when below halfway across the map) or rounded up (when above halfway across the map)"

Default avatar.png Glyptod0n: it's from perspective of your base right

Astrobytes: I would try to maximise mine and overall gain advantage elsewhere, that should prevent the need to keep track of what the opponent got in that respect, but don't take my word for that in any way, just a thought

Astrobytes: Glyptod0n: It's supposed to be symmetric so yes

PatrickMcGinnisII: seriously 92%... I went shopping...omg

Default avatar.png Glyptod0n: thanks

burnpanck: Djellowman you won't be able to track wild mana of the opponent - most of the time you don't see when the opponent fights a monster, and you can't tell from the opponents "normal" mana either because you don't see the spell use

Astrobytes: lol Patrick

Astrobytes: burnpanck: yeah, it's possible to make guesses but I feel it's a futile endeavour

Djellowman: ah i missed the fog mechanic

Djellowman: i had assumed full knowledge

PatrickMcGinnisII: 2 mobs spawn every 5 turns beginning on turn 3, their hp=potential mana. their hp starts at 10 and goes up by 1 every 10 turns

PatrickMcGinnisII: you can only guestimate

Astrobytes: Djellowman: it would not be CG without fog these days it seeems

Astrobytes: or seems

Djellowman: is it because games are too easy to solve with full knowledge?

PatrickMcGinnisII: yes the cpu grinders have a distinct advantage

Astrobytes: To a point

Astrobytes: I mean, there are parts of this game that are fully searchable, so expect it

Djellowman: why can i only see enemy output stream sometimes?

PatrickMcGinnisII: true, but not as bad as some previous combo finding games

Astrobytes: I like search-based, I like some heuristic + search based too

Jason_Down: Well then... came back to find things have sped up nicely. I moved to Wood 1 finally and am about to move to Bronze without any code changes. That makes up for the 3.5 hour wait :beers:

Djellowman: does the very first input line contain our mabna, health

Astrobytes: Jason_Down: :beers: nice one!

Djellowman: or our enemies mana, health

Djellowman: nvm

Astrobytes: @Djellowman: yeah sorry, first input is yours

Astrobytes: regardless if you are p1 or p2

Djellowman: just found it in docs. i was surprised because the default code actually ignores the 1st line and stores the second as health, mana variables

Astrobytes: in what lang?

Djellowman: python

Astrobytes: no it doesn't

Djellowman: for _ in range(2):

           health, mana = [int(j) for j in input().split()]

PatrickMcGinnisII: I like games needing a little intuition

Djellowman: default code

Djellowman: just overwrited the variables

Djellowman: overwrites*

Astrobytes: I know I'm looking at it. You have to store it, it's only reading it

Djellowman: i just found the 'starter kit'. would've saved me some boilerplate writing ;p

Djellowman: exactly the setup i went for

Jason_Down: Ooooh two more spells. I haven't even coded the wind spell yet

Default avatar.png Tuo: still not great default code, they could have done two lines one for own and one for opponent

Astrobytes: did they do a c++ starter this time around?

Astrobytes: Tuo they generally do it like this, kinda normal for CG

Djellowman: are monster spawn randomly? if i play my code i get differing results

Djellowman: do*

yhyoxx: yes

Astrobytes: I'm trying way hard not to just say RTFS rn

Astrobytes: but: Monsters will appear randomly, but symmetrically from the map edges outside of the player's bases. They appear with a random moving direction.

PatrickMcGinnisII: rtfs?

Astrobytes: manual play with the same seed should fix that if you need it

Astrobytes: Patrick: Statement not Manual

Astrobytes: RTFS vs RTFM

PatrickMcGinnisII: pos and dir only rnd

PatrickMcGinnisII: ahhh, yup

Djellowman: sorry, i did a ctrl+f for 'random', but apparently hadn't selected the manual window

Astrobytes: Read the <word beginning with F> <Readable Material>

Djellowman: wait i had a ctrl+f on 'spawn', thats why

PatrickMcGinnisII: lol, ... RTFD

Astrobytes: Djellowman: heh heh, it happens

PatrickMcGinnisII: <directions>

Astrobytes: I assumed that one Pat

Astrobytes: PatrickMcGinnisII: you prefer Patrick, Pat or Paddy?

Djellowman: sorry i never used this site before. but yeah it's all in the docs

PatrickMcGinnisII: Pat²

PatrickMcGinnisII: doesn't matter

Astrobytes: all the Patricks I know have a preference lol

Astrobytes: Djellowman: always best to check for sanity reasons, and welcome to CG :)

PatrickMcGinnisII: Pat jr. will make me fly to where you are and chastise you vehemently while drunk

Djellowman: Pat jr. it is

Astrobytes: PatrickMcGinnisII: :rofl: should be fun in Scotland :D

**PatrickMcGinnisII gathers his pipe b*mb materials, j/k

PatrickMcGinnisII: fixin' to be too hot here in FL anyways

Astrobytes: :rofl:

Astrobytes: hahaha

Astrobytes: they're needed in the homeland rn I believe mate

PatrickMcGinnisII: gonna start a gofundme for a pair of waverunners

PatrickMcGinnisII: 93%

PatrickMcGinnisII: gagh

Astrobytes: anyways, I gotta run, Past 1am here and I have stuff to do in the morning.

Astrobytes: Take care all

PatrickMcGinnisII: laterz

Djellowman: gn

Djellowman: i just realized the BM potential of appending text after commands

Djellowman: you can taunt enemy heroes as you control them around

madninjaskillz: ive been rickrolled twice with that text.

PatrickMcGinnisII: other people have quoted poetry, spit variables, etc.

yhyoxx: or advertise their website

yhyoxx: dude is even including 'https://'

Djellowman: spit variables?

yhyoxx: print a var content

yhyoxx: value*

PatrickMcGinnisII: spit eminem

Djellowman: would it work to just have all 3 of your heroes walk up to the monster the closest to the enemy base

Djellowman: and then triple wind them into the base. repeat 3 times..?

MACKEYTH: It's a risky strat, but there's at least one player I know of who did exactly that.

PatrickMcGinnisII: it only takes 2 to shotgun one into base

Djellowman: does it? it's 2200 units per wind. so i guess it depends on the distance

PatrickMcGinnisII: +300

Djellowman: you could keep one for defense perhaps

Djellowman: ah you're right. so 4700 total with 2 WIND casts. with the base being 5000 from the border

Default avatar.png Tuo: maybe you could go in the start when only few spiders, sling 1 - 3 in and then 3 hero defense

PatrickMcGinnisII: 4700+1280 for hero loc

Djellowman: it gets completely countered by anyone shielding enemies when opponent heroes are near

Djellowman: i don't see why you add the 1280?

PatrickMcGinnisII: wind radius

Djellowman: ah yes your hero can be farther away

Djellowman: if that's what you mean

PatrickMcGinnisII: er range

Djellowman: the monster has to be in 4700 range though

MACKEYTH: Just made another big commit. fingers crossed.

Default avatar.png erick.lee: i can't concentrate on my job because of this game :(

yhyoxx: you should quit

Default avatar.png erick.lee: ye.. i will quit to see more

MACKEYTH: Anyone know of a good resource that can show you the differences between 2 documents?

yhyoxx: online diff checker ?

MACKEYTH: Yeah

yhyoxx: google those 3 words

MACKEYTH: I know, i know. already done.

NinjaDoggy: I agree with yhyoxx, you should quit your job erick.lee :)

NinjaDoggy: :P

YiCao: Any differences between Silver League and Bronze League?

Default avatar.png Wizard-Dude: none other than the boss will be significantly harder

Default avatar.png Wizard-Dude: basically to weed out everyone other than the best for legend leauge

YiCao: OK, got it.Thanks for Wizard-Dude:grin:

yhyoxx: jobs give you a reason to wake up tho

yhyoxx: along with other things

Default avatar.png Skm11: I need help

yhyoxx: what's wrong ?

DollarAkshay: Do monsters move an aditional 400 units after wind command ?

NinjaDoggy: nope, monster don't move after getting pushed

DollarAkshay: TY

PatrickMcGinnisII: it's vector math

yhyoxx: they pick a random direction after being winded, right ?

PatrickMcGinnisII: if not in a base

DollarAkshay: Only if they are outside the base radius

yhyoxx: do we farm wild mana if monster is in enemy base ?

MACKEYTH: Doesn't matter where the monster is. You get wild mana if your hero hits a monster while outside your base

yhyoxx: nice

PatrickMcGinnisII: lline 568 of referee, u decide

PatrickMcGinnisII: looks like it

NinjaDoggy: i'm pretty convinced wildmana is a bait to track :/

NinjaDoggy: I don't think it's possible to survive in this game to 220

abt8601: You can blow the monster away from the base if there are too many

Default avatar.png MezNova: what language does this website teach?

EvModder: java.util.Random.... seed cracking time?

yhyoxx: @EvModder good question

EvModder: The seed is only really useful for knowing the starting vx,vy for all monsters

EvModder: but that's pretty useful

EvModder: the biggest barrier to cracking it is that the mob speed vector gets truncated, so we lose a LOT of double precision (meaning we have a LOT of candidate double values)

EvModder: however, perhaps with enough aggregate data... (search spaces is theoretically halved each time we see a new mob), we can get the number small enough to brute force the seed

ItsNotABug: Any top tips for someone just starting spring challenge?

PatrickMcGinnisII: direction is randomized on wind

EvModder: to crack the java.util.Random seed you literally just need to know a single result of nextDouble()

EvModder: yeah, but you can detect wind spells pretty easily and account for it

EvModder: even if outside your fog of war, by just watching opponent's mana

Aramang: what if they use control in fog?

abt8601: EvModder does java.util.Random use linear congruence generator?

EvModder: yes

EvModder: quick google search yields this: https://github.com/fta2012/ReplicatedRandom

EvModder: @Aramang control doesnt call random.next*(), and if i understand correctly it also doesn't permanently affect vx,vy, which is all we need to crack the random

Wontonimo: you don't need to put the @ infront of names EvModder

EvModder: Ah, wasn't sure how it worked because it doesn't highlight it for me when i tag someone else

EvModder: I think the hardest part of cracking the game seed is dealing with the truncation mob vx,vy... but even so

EvModder: am I allowed to create a 2nd account (for simulating only) that will stay at the bottom of wood league?

EvModder: I won't ever submit it, just in ide

EvModder: I want to test a few games without fog of war

EvModder: (alternatively, if anyone knows an option to disable fog of war in IDE...)

Default avatar.png AIonymuOS: Any tips on when to activate shield in Mad Pod Racing?

JulienKerlero: Any tips on how to farm multiple spiders ar once ?

Waffle3z: it's been 12 hours, is silver done computing yet?

abt8601: I see only 50 players whose scores are computing right now, so maybe we're close to done

Lysk: it's quite fast now

Waffle3z: still can't watch any replays, it's just blank

DollarAkshay: Check the forums someone was complaining about this

DollarAkshay: I think there might be a solution in the Forums

Waffle3z: nothing in the latest section

DollarAkshay: @Waggle3z https://forum.codingame.com/t/spring-challenge-2022-bugs-questions/195480/5

DollarAkshay: Is this the same problem ?

Waffle3z: yeah figured it was something that only started today due to load

Waffle3z: not firefox though

EvModder: what c++ version is codinggame using?

EvModder: the keyword "consteval" seems unrecognized

Lysk: g++ 10.2.1 mode C++17 => g++ 11.2.0 mode C++17

Lysk: (latest language update)

EvModder: booo

EvModder: give us c++20

EvModder: where do i formally complain lol

EvModder: who even uses c++17 anymore xD

EvModder: (joking, but not entirely)

Ketroc: java is still on 1.8 ;/

EvModder: damn

EvModder: well at least with java, you guys have a standard library that contains more than just dust and cobwebs

EvModder: c++ is kind of garbage without boost/absl libraries

EvModder: we can all envy the python guys who have a library for literally anything pre-built in

PaulBunyan: It's not the size of the libraries... it's what you do with them....

ItsNotABug: Just started, made my guys attack the closest enemy or closest thats a threat and rapid promotion :D

PaulBunyan: That should get you to Bronze very quickly. To get to Silver you have to start using spells.

ItsNotABug: Yeah, just want out of wood to start getting more rules. No point wasting effort before then

EvModder: PaulBunyan my counter argument is C. Imagine having to implement maps & dynamic arrays (vectors) yourself each time you needed them

EvModder: I want consteval, which is c++20 while website is c++17. Sure, I can do without, but why should I be forced to?

PaulBunyan: Joke dude.

EvModder: If Java is really 8 like Ketroc said (instead of Java18), imagine all the basic stuff they miss

EvModder: ah ok my bad lol

EvModder: hard to pick up on joke/sarcasm in text :)

PaulBunyan: No worries.

struct: They tried to add other java versions but it timed out randomly

struct: So they rolled back

EvModder: Ah ok

EvModder: I bet there's a JVM config setting they could tweak to fix that

EvModder: but probably requires some investigating so i get it

EvModder: c++20 is greatly missed tho :)

PatrickMcGinnisII: so your lazy, my codesize is 700 with OOP. And I'm hardly done, and left many things undone

Jerrasterix: I was in 1200th rank and I still got promoted to silver WTH ??

EvModder: my submitted code is ~200

Jerrasterix: mine is like 180

EvModder: ikr Jerrasterix, I was surprised too

EvModder: I haven't submitted code since day 1 xD

struct: Jerrasterix I was 1979

PaulBunyan: 116 lines of python and I'm in Silver.

EvModder: I've been stuck on something in IDE for last 2 days

struct: I think too many got promoted to silver

Jerrasterix: agreed struct

PatrickMcGinnisII: I agree struct, I was one of them

EvModder: oh struct you're a moderator

EvModder: can you answer a rules question for me..

struct: If I know it

struct: I'm just a chat moderator but I can try

EvModder: I think I know a way to crack the game seed from within the submission

EvModder: meaning i can predict monster movement vectors before actually seeing them

EvModder: however i haven't actually managed to get it working yet

EvModder: and it is not easy

struct: hmm, are you sure it's possible

EvModder: it's the reason i haven't submitted to arena in 2 days.. I'm deep in theory-land of double-precision

struct: I know it has been done before

Jerrasterix: I think some have already tried it but for other multis

struct: But they increased the seed to prevent this

struct: before seed was 32 bits now its 64

PatrickMcGinnisII: you can view the first two mobs easily, because you have 3 turns to get one hero on each edge

EvModder: java.util.Random, which is what the engine uses, gives away 48 bits of the seed when generating nextDouble()

EvModder: and you can bruteforce the last 16 bits very easily

PatrickMcGinnisII: seed starts as a long, but pulls doubles

BenjaminUrquhart: oh apparently I was good enough for silver

struct: I would say it's fair game if you manage to do it

BenjaminUrquhart: also what's this, trying to break java random?

EvModder: if you know a single double from rand.nextDouble(), you can predict all future doubles

EvModder: eg: https://github.com/fta2012/ReplicatedRandom

EvModder: the tricky part is the game doesn't tell you any exact double from nextDouble() -- it gets converted into vx and vy for 4 spiders spawned every 5 turns, so the search space depends on how much precision is lost in the truncation to int

PatrickMcGinnisII: I think you need 2, but you can see 6 on turn 3

PatrickMcGinnisII: 6 normalized doubles

EvModder: a single nextDouble() is all you need because internally nextDouble() calls nextInt() twice i believe, for upper and lower bits

PatrickMcGinnisII: turn 8 should give you the lower bits

PatrickMcGinnisII: it's easy to see where on the board is gonna be farm territory and vulnerable territory. Fog just kills running chess style sims

EvModder: mhm, gotta get rid of fog ;)

PatrickMcGinnisII: enemy hero prediction is what I'm talking about

EvModder: Oh yeah

PatrickMcGinnisII: early game farming is super important

EvModder: They will still be in the fog, cracking Random won't help with that

ItsNotABug: lol, my random bot that just goes after the nearest spider with all 3 beat wood 2, and went to 1st in wood 1 :D

EvModder: lol, yeah i think the boss difficulty is a bit off

ItsNotABug: Meh, works for me :D

PatrickMcGinnisII: wood is just to make sure you grasp basic game mechanics

ItsNotABug: As long as I can't beat bronze with it, then i'll be concerned

abt8601: Well, maybe gold league is where the real deal begins

Jerrasterix: ItsNotABug, mine still does it.... just added wind and I am in silver :confused:

EvModder: yeah lol

abt8601: same for me

PatrickMcGinnisII: my recommendation is to stay in top 600 when gold opens

Aramang: using all 3 on the same target is actually pretty good for defence in early leagues, a lot of people will try to manage them individually and come up with something elss effective

EvModder: my submitted code is ~1900, it just farms. only time it uses spells is if it can't kill spider in time, and it only does wind

ItsNotABug: I'll see where this lands, then just add wind if enemy gets too close

EvModder: <200 lines c++

abt8601: wow, that's short

EvModder: yeah Patrick, the top 600 are way better than what i have

ItsNotABug: So far i've added about 20 to the base python ;) I've started a side project with classes, but just wanted to get out of wood/bronze before I complicate it

EvModder: lines of code might not be a great measure for me, because my code is usually very dense lol

PatrickMcGinnisII: alot of people are sending attacker early, so defenses change. there's maybe 4 major strategies, they all rely on mana ... running out sucks

EvModder: E.g., this is one line: template<typename T> constexpr double length(pair<T,T> xy){return sqrt(xy.x*xy.x + xy.y*xy.y);}

ItsNotABug: Mine is literally just to track the closest threat and target it with everyone

EvModder: ah ok, mine is the same except limits 1 hero per threat

EvModder: so 2nd hero goes for 2nd closest threat

EvModder: (unless it needs 2 heros to deal with a threat)

ItsNotABug: Eventually I'll figure out a "threat level" and split my guys out to cover more ground, but this is going fairly high in bronze with no spells already :D

ItsNotABug: K.I.S.S

Hackinfo: Hello, who can help me to understand something in codinGame

EvModder: depends; we can try our best tho :)

PatrickMcGinnisII: there's like more than 15 people active

PatrickMcGinnisII: just FYI https://www.codingame.com/replay/624147369

EvModder: http://chat.codingame.com/pastebin/a15ac65e-1bc1-4aab-b50f-2d10e2c8e9f2

EvModder: not sure why that created a pastebin link, I guess the msg was too long

EvModder: i was asking how to disable fog in the OPTIONS tab (in IDE)

Jerrasterix: if it has too many new lines it does

EvModder: i tried these 2: {enable_fog=false, fog=false}

struct: you cant

EvModder: ah

EvModder: I want to test somthing without fog but I am too lazy to write a simulator so I think I'll just sign up with a new email lol

Default avatar.png MindBoggle: PatrickMcGinnisII , that replay looks like someone hardcoded for top left on part of their code.

PatrickMcGinnisII: ENABLE_FOG = false

PatrickMcGinnisII: don't know if it overwrites params

EvModder: doesn't seem to work :(

PatrickMcGinnisII: upper and lower case matters

Wontonimo: nice replay PatrickMcGinnisII

EvModder: I tried all upper and all lower

PatrickMcGinnisII: tx

PatrickMcGinnisII: no idea evM

EvModder: I also tried with and without spaces around =

Wontonimo: gn all :wave:

EvModder: and upper/lower false

EvModder: gn!

PatrickMcGinnisII: oh it parses as integer

EvModder: ahh

EvModder: let me try0

EvModder: still no luck

EvModder: i remember using parameters on the spring2020 contest but i guess it changed or i forgot how

PatrickMcGinnisII: I only hardcoded default locations depending on desired bot mode

Default avatar.png MindBoggle: I was looking at the opponent at the beginning but after watching the rest saw what you meant with them attacking

SashaNukem: gn