I think the method of choosing host order could be a lot more fair and effective than "whoever got online first today"

The most fair way seems to be by giving priority to people based on how long it's been since they last hosted.
I would propose a function to rank people on priority. It could be something as simple as this:
Priority = 26 - M (+ 12)
M = "Months since they created a thread for their previous Mafia game (rounded up)"
(+ 12) = "Add 12 if their previous game was not hosted to completion."
M ≤ 25 (normally)
M = 26 if they have never hosted before.
Things that should be clear from this:
- The lower the number, the higher the priority.
- All people who haven't hosted within the last two years would have equal priority (it doesn't go below 1).
- All people with equal priority could then be determined by a random method instead of "first come, first serve".
- People who have never hosted a game would always have the highest priority.
It's basically "Whoever has gone the longest without hosting gets the highest priority in hosting the next game."
One benefit of this is that we would never have to keep track of any lists. When it's time to host a new game, the people who are actually interested in hosting at that time can say so. Whichever one of them has the highest priority can simply host (and ties can be broken by a random method). The people who have not hosted for a long time would still maintain their high priority; you would only ever lose your priority by hosting.
No lists, no switching spots, no rearranging order, no unnecessary commitments, no hassle (assuming each person is capable of looking at the last Mafia game they hosted to see how long ago it was). And, unlike these "first come, first serve" lists, they would always be current and relevant when it comes time to host a game, and even more importantly, they would be fair.
It might even be possible to incorporate something like this into a page which tracks the creation date for the last game we hosted (which we could simply update ourselves), allowing us to quickly look and see what priority each potential Mafia host is currently at. This isn't necessary by any means, but it would certainly be a possibility.
I personally think this would be the ideal method for determining host order, and any suggestions for altering the formula or taking other factors into account in determining a player's priority are welcome, as well as any other comments.
If you're interested, going by the formula above, the priorities (as of today) for the people in this thread would be (lower number means higher priority):
- Kame: 0
- Raitaki: 0
- BioAtk: 0
- poison: 1
- Demon: 22
- Inferno: 23
Of course, the only priorities that are actually relevant are the ones for people who want to host once it's actually time to host. If the only person who wants to host is Demon, then he'll host; only the people who want to host would actually have their priorities compared. This means that "giving up your spot" is as easy as simply not claiming rights to the next game, and you don't actually lose your spot, since your priority will never drop until you do host a game.
Well, like I said, let me know what you think.