Coders Strike Back : The future?

Didn’t read all stuff, sry if my post repeat what has already been said.

Got a lot of frustration from this new version of CSB, so I wanted to add my point of view.

I really like the league system. But here I feel like it can’t work that way.
Wood league is fine, it’s like a small tutorial and newbies might like it.

But then… I dont understand the progression…
Why would you add collision when essential informations are not in the inputs ?
To get out of silver, I had to save checkpoints coordinates, and calculate pods pseudo-speed… Knowing that these informations were provided in the original contest is so frustrating :frowning:

In my opinion, we might have :

  • Wood League : as it is, maybe skippable.
  • Bronze : full input ( speed, checkpoints, etc ) for one pod ; also keeping the wood inputs (nextCpAngle & nextCpDist)
  • Silver : add collision & shield
  • Gold : second pod

Ultimately, it would be great if a “gold pod” could run in bronze league.
Maybe by adding a few inputs like “podCount” “isShieldActivated” “isCollisionsActivated”.
So as an improvement it would be possible to fight a friend without being in same league, with the lower league rules.

1 Like

nah, they wanna simplify inputs for newbies, not to add more extras
it’d be better to move all the simplified rules to the wood league, and starting maybe even from the bronze league there’d be 2 pods and thrust=200
do u know that there’s gonna be max thrust=200 in the legend league? your selected constants are gonna become bad ones when thrust 200 will come

They don’t need to add the extra inputs later, though. The example of gtsbaka seems on-point to me: you can compute your speed and the list of checkpoints in silver. Why make it easier in gold league by giving this information for free?

Do you have any trusted source for that ? :o

saiksyApo said something like that
he listed features for every league before the CSB released

u anyway wasn’t gonna edit your AI to fit to the new max thrust 100 till the last league

I’m not gonna edit anything in my AI before the legend league. But i was wondering if the 200 thrust limit will come back or not. If we have a 200 thrust limit in the legend league it’s a good thing for everyone.

The boost feature is good thing too. Because anyone played the contest can keep his code from the contest and just add the boost feature in it. It’s something interesting to do.

Hello all,

I’m sorry we haven’t come back to you earlier on this. We’re really aware that this has been very much frustrating for some of you. Let me try to make things clearer.

The goal behind the new multi game Coders Strike Back - League is two-fold:

  • have a tutorial to AI games

  • explain the league system

We decided to use Coders Strike Back, because it was the most recent contest (we were working on this before Smash the Code) and a lot of you had asked to play it.

The main problem is that Coders Strike Back is a relatively difficult game and thus we have encountered a lot of issues trying to:

  • introduce the league system in it

  • make the tutorial simple and progressive

In particular we wanted to propose simple inputs in low leagues for the beginners not to be afraid of the complexity of such a game.
At the end of the day we still wanted to offer the game as it was during the contest, that’s why in gold we changed it for it to be very similar to CSB contest.

We’re still convinced about the need to make AI games more accessible, but we agree that we’ve made some mistakes on the road. We are really excited by the league system and we’re still tweaking it so that it gets better. Here’s what we have in mind for the future considering all of your remarks:

  • the league system will be added to other non-league current AI games, one at a time, regularly

  • the rules changes will be limited. For contests, it will be most likely possible to know them but for normal games, we’re willing to keep a bit of surprise to players

  • the inputs won’t change. This way, you won’t have to delete your own code and it will always be possible to compare your code to AIs of different leagues.

  • the CSB tutorial will most likely stay as it is now. Legend league will be added in the following days. We’re thinking of putting the thrust max at 200, and keeping the rest of the rules/inputs. What do you think about it?

I hope I’ve reassured some of you. Don’t forget that we’re still working on it and don’t hesitate to react to this post, we’re listening :slight_smile:

PS: @MadKnight @grandjeanrenald if that’s ok with you and as suggested by grandjeanrenald, I’ll delete your posts about PR in this thread, so it remains clear for everyone


PS: @MadKnight @grandjeanrenald if that’s ok with you and as suggested by grandjeanrenald, I’ll delete your posts about PR in this thread, so it remains clear for everyone

yea, delete it, that conv is already over

the inputs won’t change. This way, you won’t have to delete your own code and it will always be possible to compare your code to AIs of different leagues.

that idea for simplified inputs may be an ok idea only for a skippable tutorial such as wood league with very simple enemies, but then this wood league is the only good place for simplified rules too

and why didn’t u describe the physics engine in gold league just like in the CSB contest? it should be there already

I will also add some additional information:
CSB was created to eventually replace the current Onboarding. So we could not use the same inputs as the contest for the tutorial.

@MadKnight I already asked for the physics engine, still no response yet.

1 Like

The thrust max at 200 is a “must have”. Like pb4608 said one day, CSB is easy to handle but hard to master. With a thrust max at 100, it’s so much easier to master and it reduce the gap between a good AI and a very good AI.

The boost rule can stay. It’s fun. We can keep our code from the contest but we must add the boost rule in it. If you the add league system to others games, you should always do like this: Keep the same inputs, just add some minor rules.


Also max thrust at 200 would mean shorter races and less computation for CodinGame if I’m not mistaken :slight_smile:

By the way, please describe the physics better, I need to know if the angle change limit is still 18 degrees for example (can’t find it so far).

Good luck CodinGame team :slight_smile:

1 Like

Absolutely yes please. I don’t know if other values also would make sense, but 100 is definitely way too low for the highest league.

1 Like

You can always test it, but yes it is still a -18/18° limit.

But still, it’s been almost a week I work on reverse enginerring the physic engine so yes please do provide it. I actually found magus csb post-mortem somewhere in the forum that explain it well, But that shouldn’t be the main resource!

u could just ask me in the chat, i’d send u this

On each turn the pods movements are computed this way:

  1. Target: if the angle to the target exceeds 18 degrees, it is bounded.
  2. Thrust: the normalized vector between the position of the pod and its target is multiplied by the given thrust value. The result is added to the current speed vector.
  3. Movement: The speed vector is added to the position of the pod. If a collision would occur at this point, the pods rebound off each other.
  4. Friction: the current speed vector of each pod is multiplied by 0.85
  5. The speed’s values are truncated and the position’s values are rounded to the nearest integer.

Yup, the physic of this thing is absolutely abnormal ; if you push a thrust of 100 the first turn, you will end up with a distance travelled of 100 and a final speed of 85 (physically impossible, you can’t have travelled more than your final max speed starting from 0, that would mean you acquire a 100 speed immediately at the beginning, and at the end of the turn, it drops immediately from 100 to 85, leading to infinite acceleration and deceleration ; the thrust should be the acceleration, and friction cannot be just simulated by a reduction coefficient on the speed).

Thats why I dropped this contest.

just think of the speed vector as of a vector that shows the next traveled distance if u won’t accelerate

Thank you for your response.

You said the inputs wont change. But what about rules in bronze/silver/gold/legend? Will they change? Why? Can you give an example if so?

Only one boost in Legend !! Meh :frowning:

Please make it at least 1 per pod, or 2 global boosts ! :stuck_out_tongue:

1 Like

Rules changes will more likely affect wood and bronze leagues. For example in Smash the Code contest, from bronze to silver, the colours could be different, but the input had the same structure.
Changing a rule in a multiplayer game can be fun and challenging but it’s also a complex thing to do as it should not obliged players to revise their entire code. A rule change reflects the progression of difficulty and must be somewhat seamless.

1 Like

i’d suggest u to left simplified inputs only in wood leagues, and only if it’d be skippable

in wood u’d get 2 pods, then in silver - boost, in gold - shield, in legend - thrust 200