bugs

Ender [1]
Administrator
2025-10-10 16:11:24 🔗
[5 days ago]

I'm starting this bug thread to have something to point at as a known issue tracker.

If you keep quickly refreshing a bot's profile page while they're fighting rapidly, you'll sometimes see their location become "trying to fight" mixed in with their actual battling. This may look like something nefarious going on, but it's actually a quirk of the game's code.

Details for those curious: At the top of the battle script, it sets your location to "trying to fight". This gets persisted into the database. Then, it does everything - makes sure you clicked the right link, makes sure you / the other bot aren't currently battling, level check, clan check, and of course performing the entire battle and saving the results into the clientside format for the battle to be rendered on your screen. Then, at the bottom of the script, if you make it there (as opposed to hitting an error case and aborting early), it changes your location to "fighting against ...". So there's an extremely brief (but non-zero) window where you're in the "trying to fight" state, so if you're constantly refreshing a bot profile page, there's a good chance you'll be able to see that while the battle script is working through other battle stuff.


 
Silencio [41]
2025-10-11 14:39:51 🔗
[5 days ago]

This may look like something nefarious going on, but it's actually a quirk of the game's code.

Ah, thanks for this. This has been raising red flags for me for a long time now.


 
Scabara [88]
2025-10-11 14:44:37 🔗
[5 days ago]

Can confirm I thought this was suspicious in the past too


 
Hgxfhbbb [148]
2025-10-11 15:03:52 🔗
[4 days ago]

I think it's even more suspicious now


 
Ender [1]
Administrator
2025-10-14 08:57:11 🔗
[2 days ago]

This is fixed now. There's no longer a brief moment where the error location gets set when there is no error. Please let me know if anyone still sees anything odd about bot location when battling.

Two fun facts:

  1. This bug affected the train case too, i.e. your location was "trying to train" for a brief moment at the start. Probably less noticeable since people don't monitor train activity as quickly, plus those battles are generally less rapid.

  2. While fixing this bug, I noticed another bug (which is now also fixed). Level 1 bots aren't meant to be able to fight, but the error case for this check actually wasn't properly terminating. The fight list doesn't render for level 1 bots, but since battle URLs are predictable, a clever person could manually construct the URL required to fight (using the train list page's URLs to get the correct random id). The battle also would properly not render, but it would incorrectly still take place on the server, award exp/kudos/trophies/etc. Not really a big deal and I can't think of how this could ever really matter (IIRC the limitation is more because the fight list page at level 1 would be insanely long (at least before the recent-ish change to cap its length) + wanting to guide new players towards training for the first couple battles), but still a mildly interesting bug.