• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 04:40
CEST 10:40
KST 17:40
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL21] Ro24 Preview Pt2: News Flash10[ASL21] Ro24 Preview Pt1: New Chaos0Team Liquid Map Contest #22 - Presented by Monster Energy18ByuL: The Forgotten Master of ZvT30Behind the Blue - Team Liquid History Book20
Community News
Weekly Cups (May 30-Apr 5): herO, Clem, SHIN win0[BSL22] RO32 Group Stage1Weekly Cups (March 23-29): herO takes triple6Aligulac acquired by REPLAYMAN.com/Stego Research8Weekly Cups (March 16-22): herO doubles, Cure surprises3
StarCraft 2
General
Weekly Cups (May 30-Apr 5): herO, Clem, SHIN win Rongyi Cup S3 - Preview & Info Team Liquid Map Contest #22 - Presented by Monster Energy Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool What mix of new & old maps do you want in the next ladder pool? (SC2)
Tourneys
RSL Season 4 announced for March-April Sparkling Tuna Cup - Weekly Open Tournament StarCraft Evolution League (SC Evo Biweekly) WardiTV Mondays World University TeamLeague (500$+) | Signups Open
Strategy
Custom Maps
[M] (2) Frigid Storage Publishing has been re-enabled! [Feb 24th 2026]
External Content
The PondCast: SC2 News & Results Mutation # 520 Moving Fees Mutation # 519 Inner Power Mutation # 518 Radiation Zone
Brood War
General
ASL21 General Discussion so ive been playing broodwar for a week straight. [BSL22] RO32 Group Stage Gypsy to Korea Pros React To: JaeDong vs Queen
Tourneys
[Megathread] Daily Proleagues [ASL21] Ro24 Group F Escore Tournament StarCraft Season 2 [ASL21] Ro24 Group E
Strategy
What's the deal with APM & what's its true value Fighting Spirit mining rates Simple Questions, Simple Answers
Other Games
General Games
Stormgate/Frost Giant Megathread Starcraft Tabletop Miniature Game Nintendo Switch Thread General RTS Discussion Thread Darkest Dungeon
Dota 2
The Story of Wings Gaming Official 'what is Dota anymore' discussion
League of Legends
G2 just beat GenG in First stand
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread The Chess Thread Russo-Ukrainian War Thread NASA and the Private Sector Things Aren’t Peaceful in Palestine
Fan Clubs
The IdrA Fan Club
Media & Entertainment
[Manga] One Piece [Req][Books] Good Fantasy/SciFi books Movie Discussion!
Sports
2024 - 2026 Football Thread Formula 1 Discussion Cricket [SPORT] Tokyo Olympics 2021 Thread General nutrition recommendations
World Cup 2022
Tech Support
[G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
Loot Boxes—Emotions, And Why…
TrAiDoS
Broowar part 2
qwaykee
Funny Nicknames
LUCKY_NOOB
Iranian anarchists: organize…
XenOsky
FS++
Kraekkling
ASL S21 English Commentary…
namkraft
Electronics
mantequilla
Customize Sidebar...

Website Feedback

Closed Threads



Active: 19199 users

Mafia Votecount Tool

Forum Index > TL Mafia
Post a Reply
1 2 3 4 5 11 12 13 Next All
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 12:24 GMT
#1
Hello!

I've been working on an automated votecount tool for TL Mafia games (it only works for games on this forum) during the recent months with an old friend of mine. It's now basically functional and open for feedback / bug reports / suggestions / etc. here:

https://mafia-votecount.herokuapp.com

The idea is pretty simple. When you host a new game, you just click the button "Create New Game" and then enter the URL of the game thread as well as the names of the hosts. For example like this:

URL Address: http://www.teamliquid.net/forum/mafia/487695-ot-vs-the-mods-mafia
Host Name(s) (for example 'host1 line break host2'): yamato77
Onegu

(Note that the host names have to be separated by line breaks!)

The field "Players" is optional since it doesn't affect anything except the player listing at the top of the game view.

Now the Heroku application starts scanning the game thread - it goes through every post and checks if there's a vote/unvote in the post. If there is, it adds it to the database. Then the website reads the list of votes and displays it on the game view. Every 15 minutes after this the application scans any new posts in the same thread and adds any new votes to the database.

I've already done some amount of testing and everything seems to work fine so far. However, it's not 100% certain that everything works as intended That's part of the reason why I made this thread.

There are just a couple of restrictions for games that use this system. First of all, the votes/unvotes need to be in the standard format (##Vote X / ##Vote: X etc.). In addition, the Day/Night posts need to be in the standard format (starting with "Day X" etc., not some themed version of that). Finally, every Day/Night post needs to be made by a host/co-host (the players entered into "Host Name(s)" field).

But why make this website? Well, the main purpose is to reduce the need for separate voting threads and to make the hosts' jobs easier. Now you can just effectively create one thread for your game, insert your thread URL to this website and easily see who's voted for who throughout the game. No need for additional threads or having to go through a vast amount of posts in search of votes.

All the basic functionality of the website is already implemented, but no doubt there's an unlimited amount of new features that could be implemented. When you make suggestions, keep in mind that I've mainly worked on the front end (what's displayed to the user) of the application while my friend has been working on the back end (what happens in the background) of the application. I'm relatively busy at the moment, but my friend is probably a lot more busy, so suggestions for the front end (how the votes are displayed etc.) would be easier to implement for the time being.

Here are some ideas that I've been pondering to implement at some point in the future already (if I/we get around to it ):

1) The votes of the current day could perhaps also be displayed in the same format as the regular votecount posts on the forum. That way the host/co-host could simply always copy the most recent vote listing of this format to the thread when there's a need for another votecount post. However, there's a major problem with this idea: it's that many players vote with all kinds of "nicknames" or just misspell when they're voting. That causes huge difficulties for displaying votes neatly in such a format.

2) There could be some sort of an authentication system for creating new games. This way only actual hosts could create new games and there wouldn't be any need to worry about trolls ruining the website by spamming the "Create New Game" button. Hopefully there wouldn't even be a need for this, but...

3) It could be nice to be able to manually edit/remove games from the list. However, this would probably require the authentication system to be implemented first...

4) It could also be nice if "old" games (no new votes for 5 days or something like that) would be automatically deleted.

Well, good luck and let me know your thoughts!
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 12:42 GMT
#2
For some reason, it seems that it's not noticed when the day changes in the game [T][I]OT vs The Mods Mafia. Will investigate.
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 12:53 GMT
#3
It might be related to the unusual formatting of the Day 2 post ([B][blue]
Day 2
). Well, I guess I'll wait and see what happens from now on... Not going to change the scanning method right now.
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 13:56 GMT
#4
Or not... Those were closed off later in the same post...
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
raynpelikoneet
Profile Joined April 2007
Finland43270 Posts
Last Edited: 2015-07-06 16:55:14
July 06 2015 16:53 GMT
#5
That looks really good!

[...]... it's that many players vote with all kinds of "nicknames" or just misspell when they're voting.

Honestly this should not be a problem. People should check their spelling (if this was implemented) when doing the most important thing in a game of mafia.
table for two on a tv tray
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 17:22 GMT
#6
Haha, I guess so In any case, at least the current way of just showing the votes in a list is quite foolproof and doesn't require much effort from the hosts/players. The main purpose was to reduce required effort, after all.
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
raynpelikoneet
Profile Joined April 2007
Finland43270 Posts
July 06 2015 17:28 GMT
#7
If you just show a list of posts like that and not ACTUALLY do votecounts then the problem is kinda already solved.
As if i do ##Vote: Xata it would just show "raynpelikoneet voted for Xata". Then the hosts can do the votecounts based only on the voting posts.
table for two on a tv tray
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 18:06 GMT
#8
Yeah currently it works like that. I was just considering an actual votecount as a possible bonus feature, although it would be more uncertain if it would always work.

Here's an example of what it currently shows:

https://mafia-votecount.herokuapp.com/#487695-ot-vs-the-mods-mafia
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
raynpelikoneet
Profile Joined April 2007
Finland43270 Posts
July 06 2015 18:10 GMT
#9
Yeah i looked at it quickly.
tbh i don't find it hard for hosts to make the correct votecount in case you could "print" a list out and it said:

raynpelikoneet (2); Xatalos, marvellosity
rayn (1); HolyFlare

As host you can obviously tell which votes are meant to cast for real on what people and which are not.
table for two on a tv tray
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 18:22 GMT
#10
Hmm... That's a good idea actually :D
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
raynpelikoneet
Profile Joined April 2007
Finland43270 Posts
July 06 2015 18:32 GMT
#11
srsly you didn't think of that?
i thought that was the point of this thing in the first place.
table for two on a tv tray
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 18:34 GMT
#12
Well the original idea was to be an easily copy-pasteable votecount shower. Then it changed to a list of votes (kind of like an automatic voting thread) since there were difficulties with that approach. But I guess that's a reasonable compromise to add in the future.
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
batsnacks
Profile Blog Joined April 2014
United States4466 Posts
July 06 2015 20:33 GMT
#13
How are you fetching text from forum posts?
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 06 2015 21:04 GMT
#14
On July 07 2015 05:33 batsnacks wrote:
How are you fetching text from forum posts?


Hm? You basically just download the contents of the whole page and then go through the text searching for certain patterns such as posts and votes/unvotes.
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
batsnacks
Profile Blog Joined April 2014
United States4466 Posts
Last Edited: 2015-07-06 21:51:01
July 06 2015 21:50 GMT
#15
On July 07 2015 06:04 Xatalos wrote:
Show nested quote +
On July 07 2015 05:33 batsnacks wrote:
How are you fetching text from forum posts?


Hm? You basically just download the contents of the whole page and then go through the text searching for certain patterns such as posts and votes/unvotes.


I tried this before and I can't find where the posts are:
+ Show Spoiler +


[15-07-06 17:48:38:716 EDT] <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en" dir="ltr">
<head>
<title>Mafia Votecount Tool</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="csrf-token" content="nS1otfa1">
<meta name="viewport" content="width=1214">
<link rel="stylesheet" type="text/css" href="/mirror/v25/tla4.min.css">
<link href="//fonts.googleapis.com/css?family=Open+Sans:600" rel="stylesheet" type="text/css"><script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="/mirror/v15/functions4.min.js"></script>
<link rel="shortcut icon" href="/favicon.ico">
<link rel="canonical" href="http://www.teamliquid.net/forum/mafia/489506-mafia-votecount-tool"></head>
<body onload="resize_images2()">
<div id="navwrapper">
<div id="userpanel">
<ul>
<li><a id="top-login-button" href="/mytlnet/login">Log In</a></li>
<li class="guestlink"><a href="/mytlnet/register">Register</a></li>
<li class="guestlink"><a href="/mytlnet/siteprefs.php">Settings</a></li>
<li><a href="" id="up_drop" class="upicons tb-sprite toggle_link" title="Log In"></a></li>
</ul>
<div id="userpanelend"></div>
</div>
<div id="up_dropdown">
<div id="up_dropdown_content">
<div id="loginbox">
<form method="post" action="/mytlnet/login.php">
<input type="hidden" name="token" value="nS1otfa1">
<table>
<tr>
<td><label for="loginname">Username</label></td>
<td><input class="text" type="text" size="12" name="loginname" id="loginname" tabindex="1" required="required"></td>
</tr>
<tr>
<td><label for="loginpasswd">Password</label></td>
<td><input class="text" type="password" size="12" name="loginpasswd" id="loginpasswd" tabindex="2" required="required"></td>
</tr>
<tr>
<td>
<button id="loginsubmit" type="submit" tabindex="3">Log In</button>
</td>
<td>
<input type="checkbox" name="makeAcookie" id="makeAcookie" value="1" tabindex="4">
<label for="makeAcookie">Remember Me</label>
</td>
</tr>
</table>
<input type="hidden" name="stage" value="1">
<input type="hidden" name="back_url" value="/forum/mafia/489506-mafia-votecount-tool">
</form>
</div>
</div>
<div id="up_dropdown_end">
</div>
</div>
<div class="topmenubar">
<div class="top_menu right">
<span><a href="http://www.teamliquidpro.com/">TeamLiquidPro</a></span>
<span><a href="http://wiki.teamliquid.net/">Liquipedia</a></span>
<span><a href="http://www.liquidhearth.com/">LiquidHearth</a></span>
<span><a href="http://www.liquiddota.com/">LiquidDota</a></span>
<span><a href="http://www.liquidlegends.net/">LiquidLegends</a></span>
<span><a href="http://www.liquidpoker.net/">LiquidPoker</a></span>
<div>
<a href="https://www.facebook.com/teamliquidnet" class="topmenuicons" id="tb-facebook"></a>
<a href="https://twitter.com/teamliquidnet" class="topmenuicons" id="tb-twitter"></a>
<a href="http://www.youtube.com/teamliquidnet" class="topmenuicons" id="tb-youtube"></a>
</div>
</div>
</div>
<div id="tlverytopbanner" style="background-image:url(/staff/HawaiianPig/banner/lgbt3.jpg)">
<a href="/" id="homelink"></a>
<div id="stats">
<div id="timebar"><span>EDT</span> 17:48<br> <!--<span>•</span>--> <span>CEST</span> 23:48<br> <!--<span>•</span>--> <span>KST </span>06:48</div> <!--Active: 3069--><!--<span><a id="topstreamlink" href="/video/streams/">Stream viewers: </a></span>-->
</div>
<div id="countdown" style="width:300px"></div>
</div>
<div class="navbar tb-sprite" id="navwrap">
<ul class="smallnav">
<li><a style="padding:14px 15px 10px" href="/">Home</a></li>
<li class="tb-sprite spacer"></li>

<li class="tl-dropdown" id="forums-dropdown" data-dropdown="dropdown-menu-forums"><a href="/forum/">Forum <span class="sn_dropdown"></span></a></li>
<li class="tb-sprite spacer"></li>

<li><a href="/video/streams/">Streams</a></li>
<li class="tb-sprite spacer"></li>

<li class="tl-dropdown" id="lp-dropdown" data-dropdown="dropdown-menu-liquipedia"><a href="http://wiki.teamliquid.net/">Liquipedia <span class="sn_dropdown"></span></a></li>
<li class="tb-sprite spacer"></li>

<li class="tl-dropdown" id="features-dropdown" data-dropdown="dropdown-menu-features"><a href="/features/">Features <span class="sn_dropdown"></span></a></li>
<li class="tb-sprite spacer"></li>

<li class="store"><a style="padding:14px 15px 10px" href="/store/"><!--<img style="position:absolute;margin-left:-15px;margin-top:-7px" src="/images/store/store-new.png">--><img style="margin-bottom:-2px;width:16px;height:13px" alt="" src="/images/layout/cart.png"> Store</a></li>
<li class="tb-sprite spacer"></li>

<li class="wcs-portal"><a style="padding:12px 11px 10px" href="//wcs.liquipedia.net/"><img style="margin-bottom:-4px;width:17px;height:17px" alt="" src="/staff/R1CH/WCSPortalLogo.png"> WCS</a></li>
<li class="tb-sprite spacer"></li>

<li><a href="/plus/">TL+</a></li>
<li class="tb-sprite spacer"></li>
</ul>

<ul id="filters">
<li class="search">
<form id="searchbox" action="/forum/search.php" method="get" style="float: right; padding: 0px; margin-bottom: 0px; margin: 9px 10px 0px 10px; display: inline">
<div>
<a onclick="$('#searchbox').submit(); return false" href="/forum/search.php" style="position:absolute;z-index:5;width:18px;height:18px;" title="Search"></a>
<input type="text" maxlength="32" size="23" name="q" class="tb-sprite" id="searchicon">
</div>
</form>
</li>

</ul>


<ul id="rightnav">
<li class="tb-sprite smallnavend"></li>
</ul>
<div class="clear"></div>
</div>

<div class="navbar submenu" id="dropdown-menu-liquipedia" data-top-menu="lp-dropdown" style="display:none;position:absolute;left:141px;height:20px;z-index:10;background:#040f21;margin-top:-1px">
<ul class="smallnav subnav">
<li><a href="http://wiki.teamliquid.net/starcraft2/">StarCraft 2</a></li>
<!-- <li><a href="http://wiki.teamliquid.net/dota2/">Dota 2</a></li>-->
<li><a href="http://wiki.teamliquid.net/starcraft/">Brood War</a></li>
<li><a href="http://wiki.teamliquid.net/smash/">Smash</a></li>
<li><a href="http://wiki.teamliquid.net/heroes/">Heroes</a></li>
<li><a href="http://wiki.teamliquid.net/starcraft2/Portal:2015_WCS">WCS Portal</a></li>
</ul>
<div class="clear"></div>
</div>

<div class="navbar submenu" id="dropdown-menu-features" data-top-menu="features-dropdown" style="display:none;position:absolute;left:131px;height:20px;z-index:10;background:#040f21;margin-top:-1px">
<ul class="smallnav subnav">
<li><a href="/liquibet/">Liquibet</a></li>
<li><a href="/fantasy/">Fantasy StarCraft</a></li>
<li><a href="/tlpd/">TLPD</a></li>
<li><a href="http://wiki.teamliquid.net/starcraft2/Premier_Tournaments">Events</a></li>
<li><a href="/barcraft/">BarCraft</a></li>
</ul>
<div class="clear"></div>
</div>

<div class="navbar submenu" id="dropdown-menu-forums" data-top-menu="forums-dropdown" style="display:none;position:absolute;left:10px;height:20px;z-index:10;background:#040f21;margin-top:-1px">
<ul class="smallnav subnav">
<li><a href="/forum/?filter=starcraft2">StarCraft 2</a></li>
<!-- <li><a href="/forum/?filter=dota2">Dota 2</a></li>-->
<li><a href="/forum/?filter=broodwar">Brood War</a></li>
<!-- <li><a href="/forum/?filter=lol">League of Legends</a></li>-->
<li><a href="/blogs/">Blogs</a></li>
</ul>
<div class="clear"></div>
</div>

<div style="height:4px"></div>
<div id="main-left-sidebar"><div class="sidebar_block"><a class="block_header" href="/news/">News</a><div class="sbcontents block-news_left_mid"><div class="sbtitle"><a href="/news/">Featured News</a></div><a href="/forum/starcraft-2/489480-kespa-cup-season-2-2015-preview">[KeSPA Cup] Season 2 2015 Preview</a><a href="/forum/starcraft-2/489480-kespa-cup-season-2-2015-preview?page=last" class="comments">16</a><a href="/forum/starcraft-2/489319-spl15-round-3-grand-finals-preview">[SPL&#039;15] Round 3 Grand Finals Preview</a><a href="/forum/starcraft-2/489319-spl15-round-3

Holyflare
Profile Blog Joined November 2010
United Kingdom30775 Posts
Last Edited: 2015-07-06 23:45:33
July 06 2015 23:43 GMT
#16
On July 07 2015 03:10 raynpelikoneet wrote:
Yeah i looked at it quickly.
tbh i don't find it hard for hosts to make the correct votecount in case you could "print" a list out and it said:

raynpelikoneet (2); Xatalos, marvellosity
rayn (1); HolyFlare

As host you can obviously tell which votes are meant to cast for real on what people and which are not.


if it did ^ it would be perfect (and contain crossed out names too or something)
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 07 2015 10:59 GMT
#17
On July 07 2015 06:50 batsnacks wrote:
Show nested quote +
On July 07 2015 06:04 Xatalos wrote:
On July 07 2015 05:33 batsnacks wrote:
How are you fetching text from forum posts?


Hm? You basically just download the contents of the whole page and then go through the text searching for certain patterns such as posts and votes/unvotes.


I tried this before and I can't find where the posts are:
+ Show Spoiler +


[15-07-06 17:48:38:716 EDT] <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en" dir="ltr">
<head>
<title>Mafia Votecount Tool</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="csrf-token" content="nS1otfa1">
<meta name="viewport" content="width=1214">
<link rel="stylesheet" type="text/css" href="/mirror/v25/tla4.min.css">
<link href="//fonts.googleapis.com/css?family=Open+Sans:600" rel="stylesheet" type="text/css"><script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="/mirror/v15/functions4.min.js"></script>
<link rel="shortcut icon" href="/favicon.ico">
<link rel="canonical" href="http://www.teamliquid.net/forum/mafia/489506-mafia-votecount-tool"></head>
<body onload="resize_images2()">
<div id="navwrapper">
<div id="userpanel">
<ul>
<li><a id="top-login-button" href="/mytlnet/login">Log In</a></li>
<li class="guestlink"><a href="/mytlnet/register">Register</a></li>
<li class="guestlink"><a href="/mytlnet/siteprefs.php">Settings</a></li>
<li><a href="" id="up_drop" class="upicons tb-sprite toggle_link" title="Log In"></a></li>
</ul>
<div id="userpanelend"></div>
</div>
<div id="up_dropdown">
<div id="up_dropdown_content">
<div id="loginbox">
<form method="post" action="/mytlnet/login.php">
<input type="hidden" name="token" value="nS1otfa1">
<table>
<tr>
<td><label for="loginname">Username</label></td>
<td><input class="text" type="text" size="12" name="loginname" id="loginname" tabindex="1" required="required"></td>
</tr>
<tr>
<td><label for="loginpasswd">Password</label></td>
<td><input class="text" type="password" size="12" name="loginpasswd" id="loginpasswd" tabindex="2" required="required"></td>
</tr>
<tr>
<td>
<button id="loginsubmit" type="submit" tabindex="3">Log In</button>
</td>
<td>
<input type="checkbox" name="makeAcookie" id="makeAcookie" value="1" tabindex="4">
<label for="makeAcookie">Remember Me</label>
</td>
</tr>
</table>
<input type="hidden" name="stage" value="1">
<input type="hidden" name="back_url" value="/forum/mafia/489506-mafia-votecount-tool">
</form>
</div>
</div>
<div id="up_dropdown_end">
</div>
</div>
<div class="topmenubar">
<div class="top_menu right">
<span><a href="http://www.teamliquidpro.com/">TeamLiquidPro</a></span>
<span><a href="http://wiki.teamliquid.net/">Liquipedia</a></span>
<span><a href="http://www.liquidhearth.com/">LiquidHearth</a></span>
<span><a href="http://www.liquiddota.com/">LiquidDota</a></span>
<span><a href="http://www.liquidlegends.net/">LiquidLegends</a></span>
<span><a href="http://www.liquidpoker.net/">LiquidPoker</a></span>
<div>
<a href="https://www.facebook.com/teamliquidnet" class="topmenuicons" id="tb-facebook"></a>
<a href="https://twitter.com/teamliquidnet" class="topmenuicons" id="tb-twitter"></a>
<a href="http://www.youtube.com/teamliquidnet" class="topmenuicons" id="tb-youtube"></a>
</div>
</div>
</div>
<div id="tlverytopbanner" style="background-image:url(/staff/HawaiianPig/banner/lgbt3.jpg)">
<a href="/" id="homelink"></a>
<div id="stats">
<div id="timebar"><span>EDT</span> 17:48<br> <!--<span>•</span>--> <span>CEST</span> 23:48<br> <!--<span>•</span>--> <span>KST </span>06:48</div> <!--Active: 3069--><!--<span><a id="topstreamlink" href="/video/streams/">Stream viewers: </a></span>-->
</div>
<div id="countdown" style="width:300px"></div>
</div>
<div class="navbar tb-sprite" id="navwrap">
<ul class="smallnav">
<li><a style="padding:14px 15px 10px" href="/">Home</a></li>
<li class="tb-sprite spacer"></li>

<li class="tl-dropdown" id="forums-dropdown" data-dropdown="dropdown-menu-forums"><a href="/forum/">Forum <span class="sn_dropdown"></span></a></li>
<li class="tb-sprite spacer"></li>

<li><a href="/video/streams/">Streams</a></li>
<li class="tb-sprite spacer"></li>

<li class="tl-dropdown" id="lp-dropdown" data-dropdown="dropdown-menu-liquipedia"><a href="http://wiki.teamliquid.net/">Liquipedia <span class="sn_dropdown"></span></a></li>
<li class="tb-sprite spacer"></li>

<li class="tl-dropdown" id="features-dropdown" data-dropdown="dropdown-menu-features"><a href="/features/">Features <span class="sn_dropdown"></span></a></li>
<li class="tb-sprite spacer"></li>

<li class="store"><a style="padding:14px 15px 10px" href="/store/"><!--<img style="position:absolute;margin-left:-15px;margin-top:-7px" src="/images/store/store-new.png">--><img style="margin-bottom:-2px;width:16px;height:13px" alt="" src="/images/layout/cart.png"> Store</a></li>
<li class="tb-sprite spacer"></li>

<li class="wcs-portal"><a style="padding:12px 11px 10px" href="//wcs.liquipedia.net/"><img style="margin-bottom:-4px;width:17px;height:17px" alt="" src="/staff/R1CH/WCSPortalLogo.png"> WCS</a></li>
<li class="tb-sprite spacer"></li>

<li><a href="/plus/">TL+</a></li>
<li class="tb-sprite spacer"></li>
</ul>

<ul id="filters">
<li class="search">
<form id="searchbox" action="/forum/search.php" method="get" style="float: right; padding: 0px; margin-bottom: 0px; margin: 9px 10px 0px 10px; display: inline">
<div>
<a onclick="$('#searchbox').submit(); return false" href="/forum/search.php" style="position:absolute;z-index:5;width:18px;height:18px;" title="Search"></a>
<input type="text" maxlength="32" size="23" name="q" class="tb-sprite" id="searchicon">
</div>
</form>
</li>

</ul>


<ul id="rightnav">
<li class="tb-sprite smallnavend"></li>
</ul>
<div class="clear"></div>
</div>

<div class="navbar submenu" id="dropdown-menu-liquipedia" data-top-menu="lp-dropdown" style="display:none;position:absolute;left:141px;height:20px;z-index:10;background:#040f21;margin-top:-1px">
<ul class="smallnav subnav">
<li><a href="http://wiki.teamliquid.net/starcraft2/">StarCraft 2</a></li>
<!-- <li><a href="http://wiki.teamliquid.net/dota2/">Dota 2</a></li>-->
<li><a href="http://wiki.teamliquid.net/starcraft/">Brood War</a></li>
<li><a href="http://wiki.teamliquid.net/smash/">Smash</a></li>
<li><a href="http://wiki.teamliquid.net/heroes/">Heroes</a></li>
<li><a href="http://wiki.teamliquid.net/starcraft2/Portal:2015_WCS">WCS Portal</a></li>
</ul>
<div class="clear"></div>
</div>

<div class="navbar submenu" id="dropdown-menu-features" data-top-menu="features-dropdown" style="display:none;position:absolute;left:131px;height:20px;z-index:10;background:#040f21;margin-top:-1px">
<ul class="smallnav subnav">
<li><a href="/liquibet/">Liquibet</a></li>
<li><a href="/fantasy/">Fantasy StarCraft</a></li>
<li><a href="/tlpd/">TLPD</a></li>
<li><a href="http://wiki.teamliquid.net/starcraft2/Premier_Tournaments">Events</a></li>
<li><a href="/barcraft/">BarCraft</a></li>
</ul>
<div class="clear"></div>
</div>

<div class="navbar submenu" id="dropdown-menu-forums" data-top-menu="forums-dropdown" style="display:none;position:absolute;left:10px;height:20px;z-index:10;background:#040f21;margin-top:-1px">
<ul class="smallnav subnav">
<li><a href="/forum/?filter=starcraft2">StarCraft 2</a></li>
<!-- <li><a href="/forum/?filter=dota2">Dota 2</a></li>-->
<li><a href="/forum/?filter=broodwar">Brood War</a></li>
<!-- <li><a href="/forum/?filter=lol">League of Legends</a></li>-->
<li><a href="/blogs/">Blogs</a></li>
</ul>
<div class="clear"></div>
</div>

<div style="height:4px"></div>
<div id="main-left-sidebar"><div class="sidebar_block"><a class="block_header" href="/news/">News</a><div class="sbcontents block-news_left_mid"><div class="sbtitle"><a href="/news/">Featured News</a></div><a href="/forum/starcraft-2/489480-kespa-cup-season-2-2015-preview">[KeSPA Cup] Season 2 2015 Preview</a><a href="/forum/starcraft-2/489480-kespa-cup-season-2-2015-preview?page=last" class="comments">16</a><a href="/forum/starcraft-2/489319-spl15-round-3-grand-finals-preview">[SPL&#039;15] Round 3 Grand Finals Preview</a><a href="/forum/starcraft-2/489319-spl15-round-3



Hm... This is what I see: http://pastebin.com/wZtyhXga
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 07 2015 11:01 GMT
#18
On July 07 2015 08:43 Holyflare wrote:
Show nested quote +
On July 07 2015 03:10 raynpelikoneet wrote:
Yeah i looked at it quickly.
tbh i don't find it hard for hosts to make the correct votecount in case you could "print" a list out and it said:

raynpelikoneet (2); Xatalos, marvellosity
rayn (1); HolyFlare

As host you can obviously tell which votes are meant to cast for real on what people and which are not.


if it did ^ it would be perfect (and contain crossed out names too or something)


Okay, I'll look into it at some point
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 09 2015 11:33 GMT
#19
The tool seems to be working as intended for the ongoing games. At least from what I watched of the OT vs The Mods game.

I've been a bit busy with a Mafia game as well as a couple of other things. I started implementing the neater votecount thingy that rayn suggested though. We'll see how it goes. I hope I could make that as well as the automatic removal of old games in the nearby weeks.
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
Xatalos
Profile Joined January 2011
Finland9675 Posts
July 09 2015 11:34 GMT
#20
Hm... Although the D2 post is missed in the Gaiden game.
"The opportunity to secure ourselves against defeat lies in our own hands, but the opportunity of defeating the enemy is provided by the enemy himself." - Sun Tzu
1 2 3 4 5 11 12 13 Next All
Please log in or register to reply.
Live Events Refresh
Next event in 1h 21m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Codebar 58
StarCraft: Brood War
Aegong 483
Tasteless 374
Leta 146
Larva 115
Killer 71
actioN 64
Dewaltoss 61
Sharp 51
sSak 51
soO 30
[ Show more ]
HiyA 28
Sacsri 24
zelot 23
ajuk12(nOOB) 15
IntoTheRainbow 11
Backho 8
Hm[arnc] 3
Dota 2
XcaliburYe234
canceldota120
NeuroSwarm69
XaKoH 21
League of Legends
JimRising 527
Counter-Strike
olofmeister2705
Stewie2K2184
shoxiejesuss386
Other Games
Liquid`RaSZi660
ceh9606
m0e_tv346
Mew2King70
Organizations
Counter-Strike
PGL8230
Other Games
gamesdonequick879
BasetradeTV273
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 13 non-featured ]
StarCraft 2
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Lourlo1444
• Stunt623
• HappyZerGling84
Upcoming Events
Sparkling Tuna Cup
1h 21m
PiGosaur Cup
15h 21m
Replay Cast
1d
Kung Fu Cup
1d 3h
Replay Cast
1d 15h
The PondCast
2 days
CranKy Ducklings
2 days
WardiTV Team League
3 days
Replay Cast
3 days
CranKy Ducklings
4 days
[ Show More ]
WardiTV Team League
4 days
uThermal 2v2 Circuit
4 days
BSL
4 days
Sparkling Tuna Cup
5 days
WardiTV Team League
5 days
BSL
5 days
Replay Cast
5 days
Replay Cast
6 days
Wardi Open
6 days
Liquipedia Results

Completed

CSL Elite League 2026
RSL Revival: Season 4
NationLESS Cup

Ongoing

BSL Season 22
ASL Season 21
CSL 2026 SPRING (S20)
StarCraft2 Community Team League 2026 Spring
Nations Cup 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026

Upcoming

Escore Tournament S2: W2
IPSL Spring 2026
Escore Tournament S2: W3
Acropolis #4
BSL 22 Non-Korean Championship
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
uThermal 2v2 Last Chance Qualifiers 2026
RSL Revival: Season 5
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
CCT Season 3 Global Finals
IEM Rio 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.