how to do you make it turn from the middle of the map. can you please give me an example code?
to turn the pod towards the middle of the map you just choose the middle of the map as the target so: print(â8000 4500 thrustâ). I do this like 2500 from the next checkpoint away if the angle towards the current checkpoint is low.
I have a pretty nice optimal path for my pod (using bezier curves), but with collisions, itâs pretty random if i win or not.
A tip how to use the enemy position to counter that?
Hope someone can help with this. Inputs are refreshing late. When my bot arrived to a checkpoint it did not receive the new values for the next checkpoint. The new values arrive like 1000 units distance later. That results in my bot late modified the value thrust to 0 and turns late.
Make sure the turn youâre looking at in the output is the same turn youâre looking at on the replay. Check your position versus the position on the graphical screen to verify.
Thanks for your reply. My position is the same with the graphical screen position no problem with that. What I have noticed is when Boss3 arrived to a checkpoint his angle line in red immediately change to the next Checkpoint thats not happen to my bot. Here my code:
Module Player
' Auto-generated code below aims at helping you parse
' the standard input according to the problem statement.
Sub Main ()
Dim count as Integer = 0
Dim inputs as String()
' game loop
While True
Dim x as Integer
Dim y as Integer
Dim thrust as Integer
Dim nextCheckpointX as Integer ' x position of the next check point
Dim nextCheckpointY as Integer ' y position of the next check point
Dim nextCheckpointDist as Integer ' distance to the next checkpoint
Dim nextCheckpointAngle as Integer ' angle between your pod orientation and the direction of the next
inputs = Console.ReadLine().Split(" ")
x = inputs(0)
y = inputs(1)
nextCheckpointX = inputs(2)
nextCheckpointY = inputs(3)
nextCheckpointDist = inputs(4)
nextCheckpointAngle = inputs(5)
Dim opponentX as Integer
Dim opponentY as Integer
inputs = Console.ReadLine().Split(" ")
opponentX = inputs(0)
opponentY = inputs(1)
if nextCheckpointAngle > 90 or nextCheckpointAngle < -90 then
thrust = 0
else
thrust = 100
end if
if count < 1 and nextCheckpointDist > 5000 and nextCheckpointAngle = 0 then
Console.WriteLine(nextCheckpointX & " " & nextCheckpointY & " " & "BOOST")
count = count + 1
end if
if nextCheckpointDist < 1500 then
thrust = 0
end if
Console.WriteLine(nextCheckpointX & " " & nextCheckpointY & " " & thrust)
End While
End Sub
End Module
When printing boost you print two lines (the boost one and the normal one) for one set of input, so after that point your input / output are out of sync.
What he said. Also, the red line doesnât tell you the next checkpoint, it tells you where the bot is currently trying to aim (i.e. your previous output).
Replay Settings -> Debug ON gives you some debuging outputs, is that what you are looking for?
I am trying to implement a better algorithm for this game than the one I have currently and I try to follow the advices from Magus on his page: http://files.magusgeek.com/csb/csb.html
But what is strange is that Magus seems to be aware of some information I canât find in the description of the rules. For example:
- where does this limit of rotation of 18d max is coming from? I canât see it anywhere in the description.
- How did he guess the logic about collision? There are no explanation neither in the description.
So where can I find these information?
Thanks for your help.
NB: --*-
The pod will pivot to face the destination point by a maximum of 18 degrees per turn and will then accelerate in that direction.
Thatâs from the gold/legend league rules. I reversed these 18° myself while being in silver
The physics are poorly described.
The formulas are from reverse engineering or asking the staff, I donât know. Magus himself writes
The collisions in this contest are perfect elastic collisions with a half-momentum of 120. You didnât understand? Me neither. Frankly I wouldâve never found this code without the help of Neumann and pb4608.
Mean Max is the first contest, where you finally get real code for the physics engine and didnât have to guess cornercases yourself, until you got the same values.
Ok, thanks for the answer.
I am In Wood league 2 and canât figure out how to switch between
thrust = 100 and
thrust = 0
( Javascript )
Hereâs the code:
if (nextCheckpointAngle) 90; (nextCheckpointAngle) -90;
thrust = 0;
thrust = 100;
Any help would be appreciated!
Is that the actual code or did you mistype?
Itâs not valid syntax. I suggest reading a javascript tutorial to educate yourself on how valid javascript code looks like.
When I try to code, screen didnât load, it stopped loading after few second between 1% and 50% and just didnât load. I have internet connection 3 Mb/s
Iâm agree tooâŚ
Or perhaps can we imagine that we validate the passage to an upper leagues?
I didnât really understand why my code is running automatically in above leagues⌠without an action from meâŚ
I am in Bronze and need some help.
I would like to only run a code once and have tried multiple things such as putting the code out of the loop
If I put the code outside of the loop it ignores the code.
Using Javascript and would appreciate any response.
My goal is to boost into an enemy at the very beginning of the game.
// Init
// ---- Read Input ---
var turn = 0;
// game loop
while (true) {
// ---- Read Input ---
if(turn === 0) {
// Boost into enemy during the first turn
} else {
// Win the race
}
turn++;
}
Wat is the solution for the wood 2 league- Iâm putting the right thing, but it says its wrong