I have a points system for my Twitch channel where viewers earn 1 point every hour. I recently added a guessing game system and now my bot will not add the hourly points. Can anyone see where my error is? Thanks in advance:

alias -l addPoints {
if ($1 !isnum) { echo 2 -st $1 is not a number. It needs to be a number. | halt }
var %topic $+($chan,.,$nick)
var %points $calc($readini(Points.ini,%topic,Points) + $1)
writeini -n Points.ini %topic Points %points
return %points
}

alias -l lookUpPoints {
var %topic $+($chan,.,$nick)
var %points $readini(Points.ini,%topic,Points)
return %points
}

alias doaddpoints {
if ($3 !isnum) { echo 2 -st $3 is not a number. It needs to be a number. | halt }
var %topic $+($1,.,$2)
var %points $calc($readini(Points.ini,%topic,Points) + $3)
writeini -n Points.ini %topic Points %points
echo -a Added points for %topic
}

alias dorempoints {
var %topic $+($1,.,$2)
remini -n Points.ini %topic Points
echo -a Removed points for %topic
}

on *:text:!tickets:#:{
if ((%floodpoints) || ($($+(%,floodpoints.,$nick),2))) { return }
set -u10 %floodpoints On
set -u30 %floodpoints. $+ $nick On
msg # $nick has $readini(Points.ini,$+(#,.,$nick),Points) tickets.
}

on $*:text:/!tickets (add|remove)/Si:#:{
if ($nick isop #) {
if ($0 < 3) { msg # Insufficient parameters: Use !points <add|remove> <user> [number] | return }
writeini -n Points.ini $+(#,.,$3) Points $calc($readini(Points.ini,$+(#,.,$3),Points) $iif($2 == add,+,-) $iif($4 isnum,$4,1))
{ msg $chan $3 now has $readini(Points.ini,$+(#,.,$3),Points) tickets. }
}
else { msg $chan This command is only available to moderators. }
}

on !*:join:#:{
$+(.timerpoints.,#,.,$nick) 0 3600 add.pts $+(#,.,$nick)
add.pts $+(#,.,$nick)
}

on !*:part:#:$+(.timerpoints.,#,.,$nick) off
alias -l add.pts {
writeini -n Points.ini $1 Points $calc($readini(Points.ini,$1,Points) + 1)
}

on *:text:!check *:#:{
if ($nick isop #) {
msg # $2 has $readini(Points.ini,$+(#,.,$2),Points) tickets. }
else { msg $chan This command is only available to moderators. }
}

on *:TEXT:!start:#: {
if ($nick isop #) {
if (%gameinprogess == 1) { msg # Guessing is already open. Use !stop to end guessing. | return }
set %whatToGuess
msg $chan Guess what place ViP3R22 will finish in! Use the command !guess <number> to make a guess for extra tickets.
startbetting
}
else { msg $chan Only moderators can start a new round. }
}

on *:TEXT:!stop:#: {
if ($nick isop #) {
endbetting
msg $chan Guessing is now locked.
}
else { msg $chan Only moderators can stop guessing. }
}

on *:TEXT:!guess &:#: {
if ($2- !isnum) { msg # FailFish Wrong use, you need to place a guess with: !guess <number> | return }
if (%lock == 0) {
if ($readini(Guesses.ini, n, Voters, $nick) != 1) {
msg $chan Thanks for your guess $nick
writeini -n Guesses.ini Guesses $nick $2
writeini -n GuessNumbersToUsers.ini Correlation $calc(%guesscount + 1) $nick
writeini -n Guesses.ini Voters $nick 1
/inc %guesscount
}
else {
msg $chan ERROR ERROR $nick you have already guessed! Too bad, so sad, no changies!
}
}
else { msg $chan Placing guesses is currently disabled. }
}

on *:TEXT:!result &:#: {
if (%lock == 0) { msg # Guessing is still enabled. Use !end to close guessing. | return }
if (%gameinprogress == 0) { msg # There is currently no active game. | return }
var %guessnumberToCompute = 1
var %winnercount = 0
while (%guessnumberToCompute <= %guesscount) {
var %currentUser = $readini(GuessNumbersToUsers.ini, n, Correlation, %guessnumberToCompute)
if ($checkPlayerGuess(%currentUser, $2) == 1) {
msg $chan %currentuser guessed correctly, hallelujah.
var %topic $+($chan,.,%currentUser)
if ($readini(Points.ini, n, %topic, Points) == $null) {
writeini -n Points.ini %topic Points 1
}
else {
writeini -n Points.ini $+(#,.,%currentUser) Points $calc($readini(Points.ini,n, $+(#,.,%currentUser),Points) + 1)
}
/inc %winnercount
}
/inc %guessnumberToCompute
}
if (%winnercount == 0) { msg $chan Noone guessed correctly. Good luck next time. }
if (%winnercount == 1) { msg $chan That's it, we had only 1 winner this time. }
if (%winnercount > 1) { msg $chan That's it, we had %winnercount winners this time. }
/remini Guesses.ini Guesses
/remini GuessNumbersToUsers.ini Correlation
/remini Guesses.ini Voters
set %gameinprogess 0
set %lock 1
}

on *:TEXT:!restart:#: {
if ($nick isop #) {
if (%gameinprogess == 0) { msg $chan There's nothing to restart. | return }
/remini Guesses.ini Guesses
/remini GuessNumbersToUsers.ini Correlation
/remini Guesses.ini Voters

msg $chan Lets start this all over again. All guesses got deleted and the timers reset.
startbetting
msg $chan You can now use the command !guess <number> again, to make a guess.
}
else { msg $chan Only moderators can restart guessing. }
}

alias -l startbetting {
set %lock 0
set %guesscount 0
set %gameinprogess 1
}

alias -l endbetting {
set %lock 1
}

alias -l checkPlayerGuess {
if ((%whatToGuess != 3) && (%whatToGuess != 4)) {
if ( $readini(Guesses.ini, n, Guesses, $1) == $2 ) {
return 1
}
else {
return 0
}
}
else {
var %tempStorage $readini(Guesses.ini, n, Guesses, $1)
if ( (%tempStorage <= $calc($2 + 25)) && (%tempStorage >= $calc($2 - 25)) ) {
return 1
}
else {
return 0
}
}
}

Last edited by vip3r22; 25/05/15 01:58 AM.