• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 18:31
CET 00:31
KST 08:31
  • 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
ByuL: The Forgotten Master of ZvT24Behind the Blue - Team Liquid History Book16Clem wins HomeStory Cup 289HomeStory Cup 28 - Info & Preview13Rongyi Cup S3 - Preview & Info8
Community News
Weekly Cups (Feb 9-15): herO doubles up2ACS replaced by "ASL Season Open" - Starts 21/0226LiuLi Cup: 2025 Grand Finals (Feb 10-16)46Weekly Cups (Feb 2-8): Classic, Solar, MaxPax win2Nexon's StarCraft game could be FPS, led by UMS maker16
StarCraft 2
General
ByuL: The Forgotten Master of ZvT Kaelaris on the futue of SC2 and much more... How do you think the 5.0.15 balance patch (Oct 2025) for StarCraft II has affected the game? Nexon's StarCraft game could be FPS, led by UMS maker Weekly Cups (Feb 9-15): herO doubles up
Tourneys
PIG STY FESTIVAL 7.0! (19 Feb - 1 Mar) How do the "codes" work in GSL? Sparkling Tuna Cup - Weekly Open Tournament LiuLi Cup: 2025 Grand Finals (Feb 10-16) Master Swan Open (Global Bronze-Master 2)
Strategy
Custom Maps
Map Editor closed ? [A] Starcraft Sound Mod
External Content
Mutation # 513 Attrition Warfare The PondCast: SC2 News & Results Mutation # 512 Overclocked Mutation # 511 Temple of Rebirth
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ ACS replaced by "ASL Season Open" - Starts 21/02 [ASL21] Potential Map Candidates Tik Tok Parody about starcraft Ladder maps - how we can make blizz update them?
Tourneys
Small VOD Thread 2.0 [Megathread] Daily Proleagues Escore Tournament StarCraft Season 1 KCM Race Survival 2026 Season 1
Strategy
Simple Questions, Simple Answers Fighting Spirit mining rates Zealot bombing is no longer popular? Current Meta
Other Games
General Games
Nintendo Switch Thread ZeroSpace Megathread Path of Exile Diablo 2 thread Battle Aces/David Kim RTS Megathread
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
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
TL Mafia Community Thread Mafia Game Mode Feedback/Ideas Vanilla Mini Mafia
Community
General
US Politics Mega-thread Canadian Politics Mega-thread Russo-Ukrainian War Thread Ask and answer stupid questions here! Things Aren’t Peaceful in Palestine
Fan Clubs
The IdrA Fan Club The herO Fan Club!
Media & Entertainment
[Req][Books] Good Fantasy/SciFi books [Manga] One Piece Anime Discussion Thread
Sports
2024 - 2026 Football Thread Formula 1 Discussion TL MMA Pick'em Pool 2013
World Cup 2022
Tech Support
TL Community
The Automated Ban List
Blogs
Inside the Communication of …
TrAiDoS
My 2025 Magic: The Gathering…
DARKING
Life Update and thoughts.
FuDDx
How do archons sleep?
8882
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2360 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 30m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
JuggernautJason251
NeuroSwarm 79
ProTech4
StarCraft: Brood War
Artosis 449
Rock 18
Dota 2
monkeys_forever171
420jenkins171
canceldota77
League of Legends
goblin19
Counter-Strike
taco 92
Super Smash Bros
PPMD54
Heroes of the Storm
Khaldor160
Other Games
summit1g8211
Grubby2429
FrodaN2025
shahzam384
C9.Mang0231
ToD180
Liquid`Hasu147
Trikslyr31
KnowMe10
Organizations
StarCraft 2
angryscii 16
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 19 non-featured ]
StarCraft 2
• musti20045 37
• Reevou 6
• davetesta1
• Kozan
• Migwel
• sooper7s
• AfreecaTV YouTube
• intothetv
• IndyKCrew
• LaughNgamezSOOP
StarCraft: Brood War
• RayReign 31
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• masondota21577
League of Legends
• Doublelift3779
• TFBlade1315
Other Games
• imaqtpie1485
• Shiphtur212
Upcoming Events
Replay Cast
30m
PiG Sty Festival
9h 30m
Clem vs Percival
Zoun vs Solar
Escore
10h 30m
Epic.LAN
12h 30m
Replay Cast
1d
PiG Sty Festival
1d 9h
herO vs NightMare
Reynor vs Cure
CranKy Ducklings
1d 10h
Epic.LAN
1d 12h
Replay Cast
2 days
PiG Sty Festival
2 days
Serral vs YoungYakov
ByuN vs ShoWTimE
[ Show More ]
Sparkling Tuna Cup
2 days
Replay Cast
3 days
Replay Cast
3 days
Wardi Open
3 days
Monday Night Weeklies
3 days
Replay Cast
4 days
WardiTV Winter Champion…
4 days
Replay Cast
5 days
WardiTV Winter Champion…
5 days
The PondCast
6 days
Liquipedia Results

Completed

Proleague 2026-02-18
LiuLi Cup: 2025 Grand Finals
Underdog Cup #3

Ongoing

KCM Race Survival 2026 Season 1
WardiTV Winter 2026
PiG Sty Festival 7.0
Nations Cup 2026
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
eXTREMESLAND 2025
SL Budapest Major 2025

Upcoming

Escore Tournament S1: King of Kings
[S:21] ASL SEASON OPEN 1st Round
[S:21] ASL SEASON OPEN 1st Round Qualifier
Acropolis #4 - TS5
Jeongseon Sooper Cup
Spring Cup 2026: China & Korea Invitational
[S:21] ASL SEASON OPEN 2nd Round
HSC XXIX
uThermal 2v2 2026 Main Event
Bellum Gens Elite Stara Zagora 2026
RSL Revival: Season 4
BLAST Rivals Spring 2026
CCT Season 3 Global Finals
FISSURE Playground #3
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League Season 23
ESL Pro League Season 23
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.