Season VII

Congratulations to unknownsoldier for winning Season VI! Season VI came right down to the wire — unknownsolider snatched victory at the last minute!

Season VII will take place on the Heavy Earth map. This is a bigger map than Medium Earth. Combined with smaller neutrals, this allows for a lot more expanding than what we’ve seen before.

The three territories that you start with all begin with just 1 army instead of the normal 4. This makes cluster-picking less effective, so spread out those picks!

The luck percentage is still 16%, but this time on straight round. This makes it so the attacks against neutrals are guaranteed, but when you’re fighting opponents you’ll have a small amount of variation. Also, the order priority and order delay cards are missing this time to change it up a bit.

Check out the exact settings with this template: multi-player, single-player.

We’ll kick things off on January 2nd and it will end on March 3rd. Good luck!

Website outage

The WarLight.net website is experiencing an outage (EDIT: It’s back up!). I’m working on getting it back up as fast as possible. More details will be posted soon. Sorry for the inconvenience.

UPDATE 10pm GMT-8: The main WarLight database has suffered a hardware failure. Rackspace engineers are currently working to recover the data onto a new server. As a backup plan, I am also restoring the latest database backup onto a fresh server, just in case Rackspace is unable to restore the old server. The latest backup I have was taken about 4 hours before the outage, so I’m hoping it does not need to be used.

UPDATE 5am GMT-8: I’m really mad at Rackspace. For the last ten hours all they’ve given me is “We can’t give you an ETA” over and over. Finally, they tell me it’s 95% done being restored and will be up within 2 hours.

UPDATE 6:49am GMT-8: The website is now functional again. Unfortunately, there was a few hours rollback in the database. Hopefully players who happened to commit turns within that period will be respectful and try to commit the same orders they played the first time. I’m going to be taking steps to ensure this can’t happen again.

Additionally, for the next several hours, booting in all games will be disabled (you’ll get an error message if you try to boot.) This will allow players who couldn’t take their turn before the boot timer to get it in before getting booted.

WarLight’s database has had hardware failures before, however Rackspace typically will automatically move your server to a fresh machine with only a few minutes of downtime. This has happened several times, actually, and it’s never been a problem before now. This time it didn’t work for some reason, and to make matters worse, their support personnel were very unhelpful. I had gotten complacent on relying on Rackspace’s automated failover. Unfortunately, when the failover finally did happen after several hours, the database was corrupt beyond repair and I had to go with my own backup anyway.

To ensure this can’t happen again, I am going to set up a continuously streaming backup system that will backup the database several times per minute. This way, if there’s another failure, I don’t have to rely on waiting for Rackspace’s failover and I can restore from my own backup without significant data loss. Previously, the backup was only made every few hours, so this is a significant jump in reliability.

I realize the problems that outages cause, and I’m probably more disappointed by this than any of you. I take this very seriously as it’s my full-time job and I am going to take several steps to ensure this can’t happen again.

UPDATE: As mentioned above, booting is temporarily not allowed in any games. This gives a chance for players who are over the boot time in their games and couldn’t play due to the outage to take their turns. I realize this makes it difficult to play new real-time games, but please bear with me as we get everything back to working normally.

UPDATE: Booting is now re-enabled.

Announcing Custom Ladders/Tournaments framework (CLOT)

I’m pleased to announce the availability of the CLOT framework! CLOT stands for Custom Ladder Or Tournament. This is a way that players can create their own automated ladders or tournaments that far exceed the capabilities of WarLight’s built-in ladders and tournaments.

How it works

Each CLOT is hosted as its own website, separate from WarLight.net. This website manages the ladder/tournament — it has full control over how games are created, the game’s map and settings, how players are ranked, how the ranks are presented, etc. Players who want to join can go to this website to sign up with their WarLight account.

CLOT is an open-source framework that contains everything needed to create a CLOT website. The player creating a CLOT must be a WarLight member, but there are no restrictions on who can join and play in it.

It’s expected that the player creating a CLOT should know how to code, as the framework provided is just a skeleton example to get you started. Players who want to create a CLOT website will extend the framework to meet their needs. The framework is written in Python, but it could be ported to any language if you want to work in something else. It works by communicating to WarLight through the public APIs to create games and get updates on them.

Examples

Since the CLOT framework is an open-source programming tool, it can be used to create all sorts of different types of ladders and tournaments. It’s only limited by your imagination! Here are some examples of things you can create with it:

  • Clan battles: WarLight gives you access to the name and tagline of players joining, so you can parse out what clan they’re in by looking for clan tags. Then you could make a system that invites players to battles based on their clan, and show rankings of how well each clan is doing.
  • Promotion/relegation league: These leagues that have been popular on the forums can now be completely automated.
  • Vote-who-will-win tournament: You could make a single-elimination tournament where, before it starts, players can view the tournament bracket and cast votes for who they think will win. You can even allow players who aren’t participating in the tournament cast votes. Then when it ends, you can not only display the winner, but also who voted most accurately.
  • Real-time ladders: You could make a scheduling system that allows ladders made up of real-time games to take place. For example, players could tell your website when they’re on-line and ready to receive games, or you could work out a scheduling system where players input what times of the day they’re available.
  • Anonymous tournaments: You could make tournaments that don’t reveal who’s participating until the tournament ends.
  • Best-of tournaments: Like a single-elimination tournament, except each match is a best-of-3 or best-of-5.
  • World domination: Using custom scenarios, you could make a tournament where each round moves up to a bigger region of the world until the championship is on a world map. For example, say you get the first round as an FFA on a Italy map. If you win on Italy, then you go onto the second round, which is on the Europe map and you start with Italy. If you win on Europe, then you go up to the championship which is on the world map and you start with Europe.
  • Seasonal ladder followed by playoffs.
  • Ladders with rotating settings or maps.
  • Ladders with your own rating algorithms or settings, such as a 3v3 ladder or FFA ladder.
  • Choose-your-team tournaments: There’s nothing stopping you from creating pages on your CLOT website that input extra information for each game. For example, say you’re making a 5v5 tournament. You could pick 10 random players for each game, and elect a captain for each team who alternate choosing players for their team.

Getting Started

Check out the Getting Started guide on the wiki for instructions on how to get started using CLOT here. If you get stuck, there’s a new forum section for CLOT development, so feel free to ask questions!

Site update 1.15.5: Small update

WarLight was just upgraded to version 1.15.4! This is a just small update to fix a few bugs, but real-time tournaments also snuck in.

Real-time tournaments

It’s now possible to make tournaments real-time, which will allow the same boot times that real-time games do.

If a real-time tournament doesn’t start (i.e. fill up with players) within one hour, it will be automatically deleted. This is done as a safety mechanism to ensure that slow-filling tournaments don’t end up starting long after the majority of the players have already left who will then just have to be booted.

The primary intent of real-time tournaments are for players who organize their tournaments outside of the game (such as by announcing them ahead of time on the forums). Just creating a real-time tournament and expecting it to full up on its own is unlikely to work out well.

Teammate Card Fix

There’s a change in this update that should fix a problem that sometimes came up in real-time team games that involved lots of cards.

If a team has two copies of the same type of card (say, two order priority cards), it can sometimes be difficult to split the two cards between two teammates in real-time games. If teammate A tries to play the first card, and teammate B tries to play the second card, and they take their turns at the same time, there’s a chance that they might both try to play the same card which will cause the second committer to get a message telling them that they’re playing a card their teammate played.

This didn’t typically happen in multi-day games since WarLight is smart enough to see what cards your teammate has played, and pick the one in the stack that your teammate didn’t play. However, this can’t happen when both teammates play simultaneously since the game doesn’t know what your teammate has played yet.

In this update, there’s a much better fix to this issue. Now, when the second teammate commits their orders, the server will silently change their orders to use the available card instead of the one their teammate used. Essentially, it will “just work” without either teammate even knowing there was a conflict.

Misc Changes

– Fixed a bug when creating a game from a template that caused the boot drop-downs to not default to the value stored in the template.
– Fixed a bug that caused an error if you clicked Play Card on a surveillance card, opened the (more info) link on a territory, and then clicked a bonus worth 0 armies per turn.
– Fixed a timing bug that occurred if someone declined a tournament at the exact moment that tournament was starting.
– The attack-teammate and diplomacy confirmation dialogs now close when changing phases.
– Fixed a bug that caused the check-boxes on the Statistics->Graphs page to not enable after a game ended.
– Fixed a bug that sometimes caused Facebook signups to fail.