Cool technologies

Since the competitive aspect of Terminal has become significantly smaller due to there being no more prize money, I might try making more technically complex algo (if I have the motivation). But before I try anything, I want to know what is at my disposal. Is it possible to:

  1. Make permanent changes to an algo AFTER it has been uploaded.

I’ve tried a long time ago and I wasn’t able to pull it off. I tried uploading the algo with a text file in it that I would open and write in. It didn’t work so I tried uploading the algo with a separate .py file and changing it but that didn’t work either. I presumed that Terminal made a copy of my file and used that to fight so I tried to look through the directory but because of security, I didn’t go far.

  1. Access the internet.

I first tried when trying to make permanent changes by using some external database. I read somewhere that they actually restricted network access but I don’t think I found a primary source. I tried sending an email with a built-in library and it didn’t work and it didn’t work so it is probably true (should’ve tried something simpler but I digress).

  1. Hijack the engine.jar mid-game to simulate moves faster.

I’ve never tried this one but if it can be done, that would be very interesting to develop turn simulators if there is a built-in one that can be used.

So that’s everything I could think of from the top of my head. If there is some other technology that would be interesting to use, I would like to hear about it. Thanks in advance!!

As far as I know, all these options are not possible. But, for option 3, it is possible to write your own turn simulator that is faster than engine.jar


Yeah haha, those options (especially the internet access) was banned after season 1 due to @16daystocode and their weird strategy.
You can read about it here:

But maybe we could activate it again, since it’s not as competitve as it used to be.

I recommend this line as well

We don’t have plans to restore internet access to algos

To be honest, I just added the 3rd one to be nice and rounded.

Time is irelevant.

  1. if you need to make a file change to adjust for something specific that just happened:
  • submit an algo
  • run a script to dowload all the algo replays (put it on a timer)
  • pars the replay, and if you find something important, adjust your algo settings and and report for reupload.

2.if you need a database of replay … just collect it locally, filter it minimize it and upload it with your algo. update it overtime.

  1. if you need a turn similator just use the default one, it gives you around 15 simple sims (in 6 sec),
    if you spend 2 hours optimizing it on it it can be optimized to do 50 sums.
    if you spend 200-2000 hours to build and optimize a real simulator 100-2000 full sims …
    Do you really have a strong usecase where you can get value from 100 full sims ?
    If not … there are more usefull tools you can put your time in.

There is a default turn simulator?

Simulators can go a little faster than that. I was curious so I timed mine just now. Mint_22 does 7778 attack simulations every turn, but the amount of time taken can actually vary a lot, depending on what happens in the simulation. In the one game I looked at (running on the actual servers) it took anywhere from 1-3s, which translates to 2600-7800 simulations/second.

1 Like

Damn that’s pretty fast.Mine only does around 200-300.
It can go even faster though, I remember @arnby doing up to 60000 simulations per turn (he was using C++ though)

My turn simulators were never that fast. My algos in the current season only do 5 or 6 simulations per turn. This shows that you don’t necessarily need a fast simulator to do well.

But I guess for very adaptiva algos like the ones from @acshikh it needs to be much faster to make such things possible.

1 Like

I compared my simulator’s speed to Max’s at one point earlier in the season and mine was twice as fast at that point. Yeah, I use it a ton! Although I’ve more recently been trying to give it more structures to lean on. My code’s biggest flaw in general has been being too dynamic and not specific enough for the meta of the top 10 or other specialized strategies.