Register | Forgot password

Congrats to ReneDescartes [290] for leading <Escapism> to victory in the July 2016 clan competition and securing a 11th George Washington platinum trophy! Monthly energy has been reset and a new round has begun.

rank clan owner energy month
1 <Escapism> ReneDescartes [290]
3,397,004 (x3.84)
2 <Malicious Villainous> The Wilderness [40] 3,079,032 (x3.49)
3 <Atreides> Crab Whistler [130]
1,245,941 (x1.40)
4 <Eternal> Shoegazer [103]
1,232,560 (x1.39)
5 <Berzerker Barbarians> mrvain [139]
1,023,164 (x1.15)
6 <duk> jerro [99]
1,005,508 (x1.13)
7 <Reaper of souls> diablek [270]
953,413 (x1.09)
8 <Peace> ACE 10 [55]
931,509 (x1.08)
9 <Rapture> Satanus Inaximasus [330]
911,158 (x1.02)
10 <Platinium Squad> jezz [335]
893,039 (x1.00)

Also see:

Posted by Ender on Wednesday, July 20, 2016, 10:49:23 pm (ET)

There's a new link on the online page - the online history page. It shows historical stats for how many bots were online at once and online over the past 1, 7, and 30 days over time. Data goes back to February 2011, but with some caveats; see the info on that page for full details.

My goal of publicly providing this data is twofold:

  1. Measure the success of new player engagement efforts - As I talked about a couple weeks ago, lately I've had my eye towards improving the new player experience in order to do a better job at attracting and retaining new players. Number of online bots is by no means a perfect measure of activity or engagement, but it's not terrible and is more powerful (I think) than what I can do with Google Analytics out of the box.

  2. Give more visibility into game health - It's no secret that game activity has waned over the years since launch in 2011. Some decline after the initial excitement of the game launch was expected, but there's a steady downward trend over the years. The charts provide a somewhat depressing though honest picture - while there is definitely a downward trend, there's not no activity. It's with the existing/remaining core contingent of active players logging on every day (thank you!) that I hope to grow the game back into what it was before, and more.

Enjoy! I hope you find this interesting.

Posted by Ender on Tuesday, July 19, 2016, 11:28:29 pm (ET)

My host has informed me that they need to reboot the server the game is hosted on to apply a security update. It is scheduled for:

Friday, 2016-07-22 15:00:00 UTC

Which is:

Friday, 2016-07-22 11:00:00 EDT (server time)

The game will be unavailable during the maintenance. Unfortunately this is around the time of the day when there are typically the most number of bots online - while there is a 2 hour window allocated, the actual downtime may be much less.

Posted by Ender on Wednesday, July 13, 2016, 11:10:12 pm (ET)

If you're not interested in the finer details and minutiae of the game, you can stop reading now.

As many folks are aware, who hits first in a battle depends on you and your opponent's intelligence stat. A random number from 0 to $int (inclusive) is chosen - the higher roll gets to hit first. In the event of a tie, the attacker goes first.

Okay, so tiny edge for the attacker - no big deal, right? Well, remember that as of March 1, 2012, minimum effective int is 1 (it was always 5 in bots2). For bots that are supposed to be the top of their class, effective int will be 1, so this edge case is actually pretty common. For a 1 int vs. 1 int battle, some quick math tells us the attacker will go first 75% of the time.

Still not a big deal though, right? Enter tournaments. Due to my obsessive personality and need for everything to be deterministic, the order that bots battle each other is well defined:

  1. Get all the bots in a category.
  2. Sort them by id.
  3. Have the first bot battle all the others that come after it (i.e. all other bots).
  4. Have the second bot battle all the others that come after it (i.e. all other bots except the first bot).
  5. Repeat until you reach the end of the list of bots.

In case you missed it, the bot with the lower id will always be the attacker. 1 int bots are especially common in tournaments, so there is therefore a small edge for bots with lower ids. Hitting first is certainly an edge, but just how large this edge is would be difficult to estimate. In reality, I imagine the difference is extremely tiny and unlikely to have actually affected any results more than normal statistical variance would have introduced.

In any case, this is fixed. Attackers no longer have an advantage - in the event of a tie, an additional roll is done where each bot has a 50% chance of winning. Thanks to Esvrainzas for identifying this possibility way back in April 2015, a mere month after tournaments were first introduced. Shame on me for taking this long to fix the bug!

Over the past few weeks, though very little user-visible has changed, I've been busy refactoring some of the oldest code making this game tick - the login and authentication code. Obviously it's important to get this stuff right, so I've been doing pretty extensive testing in my local development environment before pushing to the live server. As is typical with software development though, at least a couple bugs slipped through:

  • If you logged into the same bot with multiple browsers and then logged out on one, you would enter "stealth mode": you wouldn't appear in the online list and your profile would show you as offline, but you'd still be able to act on the other browser that's still logged in. Thanks to shoyuken for reporting this.

  • The captcha page does background polling to see if you solved the captcha on another bot or tab. This background polling didn't update your "last active" time in the past, but due to a bug in the refactoring, it did, making it look like everyone was suspiciously refreshing the captcha page every 5 seconds. Thanks to ReneDescartes for reporting this.

Both of these bugs are fixed now, but be on the lookout for more subtle/non-obvious login-related bugs. There could certainly be more lurking! You can report them on this thread or in the bugs subforum if you want to help me stay organized; they'll get squashed either way though.

Finally, for those of you that read this far, I'll share why I was doing this refactoring and tease what's coming next. :) As some of you know, much of my focus lately has been on revamping the new player experience. In order for the game to be successful, the game has to be attractive to new players and successful in drawing them in. Paid advertising campaigns are useless if potential players get to the homepage and have no idea what to do. I have several plans in the works for improving the new player experience, but chief among them will be a way to try the game without registering. Not to get too technical, but this will mean having a way to substitute session-based authentication for cookie-based authentication. The refactoring I've been doing has been to make the game code agnostic to the type of authentication of the logged-in bot.

Feel free to ask questions about what's in store for the new player experience. Much, but not all of it has been fleshed out at this point and I hope to roll it all out over the coming months, with the ultimate goal of breathing some much-needed new life into the game.

Obligatory social media stuff: