VotingBot - Page 2
 

News:

29 December 2022 - PtokaX 0.5.3.0 (20th anniversary edition) released...
11 April 2017 - PtokaX 0.5.2.2 released...
8 April 2015 Anti child and anti pedo pr0n scripts are not allowed anymore on this board!
28 September 2015 - PtokaX 0.5.2.1 for Windows 10 IoT released...
3 September 2015 - PtokaX 0.5.2.1 released...
16 August 2015 - PtokaX 0.5.2.0 released...
1 August 2015 - Crowdfunding for ADC protocol support in PtokaX ended. Clearly nobody want ADC support...
30 June 2015 - PtokaX 0.5.1.0 released...
30 April 2015 Crowdfunding for ADC protocol support in PtokaX
26 April 2015 New support hub!
20 February 2015 - PtokaX 0.5.0.3 released...
13 April 2014 - PtokaX 0.5.0.2 released...
23 March 2014 - PtokaX testing version 0.5.0.1 build 454 is available.
04 March 2014 - PtokaX.org sites were temporary down because of DDOS attacks and issues with hosting service provider.

Main Menu

VotingBot

Started by (=CyberPimp=), 24 February, 2004, 22:54:21

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

(=CyberPimp=)

Works perfectly now.
Great script, great job and tanx for all your hard work.
I preceate it.

This script is done !!  :D  :D  :D

Skyhawk

First of all this IS a great script!

But i discovered that it is still possible to cheat. I don't know how but some of my users managed to vote at least twice.

Could it be possible for you to add a better kind of check to prevent cheating?

I am thinking of a 3rd text file were the name and voting poll number is stored and backcheked if a user tries to vote again.

Can you do this?

I would really need a reliable voting script since i have some important issues to resolve within my hub...

looking foreward to your answer and or your enhanced script.

Keep up the good work!

nErBoS

Hi,

Yes it?s possible to do that, i will make a update in this script when got some free time.

Best regards, nErBoS
--## nErBoS Spot ##--

Skyhawk

First of all thanks for your quick reply. I really appreciate your effort.

I know this might sound a bit pressing matters, but can you give me an approimate ETA of this update i requested/you announced?

Thank you very much,

nErBoS

Hi,

Well i will try this night if i don?t get home tired or tomorrow in the morning.

Best regards, nErBoS
--## nErBoS Spot ##--

(=CyberPimp=)

This is in icelandic :o) and I did some look improofments
Bot = "(=K?nnun=)"

vt = {}
nr = {}

votetext = "votepoll.txt" --Ver?ur b?in til sj?lkrafa ? script m?ppuni
oldpolls = "oldpolls.txt" --Ver?ur b?in til sj?lkrafa ? script m?ppuni

function Main()
frmHub:RegBot(Bot)
end

function NewUserConnected(user, data)
if (vt[user.sName] == nil) then
vt[user.sName] = 0
end
if (nr[user.sName] == nil) then
nr[user.sName] = 0
end
end

function DataArrival(user, data)

if (strsub(data,1,1)=="<") or (strsub(data,1,5+strlen(Bot))=="$To: "..Bot) then
	data=strsub(data,1,strlen(data)-1)
	s,e,cmd = strfind(data,"%b<>%s+(%S+)")
		
                     if (cmd=="+votehelp") then 
			local msg = ""
			if (user.iProfile == 0) then
			msg = msg.."Skipanir K?nnunar scriptsins:\r\n"
			msg = msg.."\r\n"
			msg = msg.."+createvote  \tB?r til k?nnun (nr = n?mer sem ?? gefur k?nnuninni) (spurning = Spurning k?nnunarinnar)\r\n"
			msg = msg.."+stopvote \t\t\tLokar k?nnun \r\n"
			msg = msg.."+showvote  \tS?nir ?tkomu konnunar (old = gamlar kannanir) e?a (new = Kannanir sem eru ? gangi)\r\n"
			msg = msg.."+svmain  \t\tS?nir st??u k?nnunar ? main (old = gamlar kannanir) e?a (new = Kannanir sem eru ? gangi)\r\n"
			msg = msg.."+votelist\t\t\t\tS?nir allar gamlar kannanir\r\n"
			msg = msg.."+votefor\t\t\t\tS?nir hva?a kannanir eru ? gangi sem ?? getur greitt atkv??i ?\r\n"
			msg = msg.."+vote  \t\t\tTil a? kj?sa (nr = n?mer k?nnunar)(y = j?) e?a (n = nei)\r\n"
			msg = msg.."+delvote \t\t\tEy?ir loka?ri k?nnun (nr = n?mer k?nnunar)\r\n"
			msg = msg.."\r\n"
			user:SendPM(Bot, msg)
			else
			msg = msg.."Skipanir K?nnunar scriptsins:\r\n"
			msg = msg.."\r\n"
			msg = msg.."+votefor\t\t\tS?nir hva?a kannanir eru ? gangi sem ?? getur greitt atkv??i ?\r\n"
			msg = msg.."+vote  \t\tTil a? kj?sa (nr = n?mer k?nnunar)(y = j?) e?a (n = nei)\r\n"
			msg = msg.."\r\n"
			user:SendPM(Bot, msg)
			end
			return 1
		elseif (cmd=="+createvote") then
			if (user.iProfile == 0) then
			local s,e,number,question = strfind(data,"%b<>%s+%S+%s+(%S+)%s+(.*)")
			if (tonumber(number) == nil) then
				user:SendPM(Bot, "Villa, +createvote  , nr ver?ur a? vera tala.")
else
number = tonumber(number)
if (question == nil or question == "") then
user:SendPM(Bot, "Villa, +createvote  , ?? ver?ur a? hafa spurningu.")
else
if (CreatePoll(user, number, question) == 1) then
user:SendPM(Bot, "Kosningarse?ill hefur veri? b?inn til.")
else
user:SendPM(Bot, "kosningase?ill nr: "..number.. "var til, ekki er h?gt a? nota sama n?mer")
end
end
end
else
user:SendPM(Bot, "?? hefur ekki leyfi til a? nota ?essa skipun.")
end
return 1
elseif (cmd=="+stopvote") then
if (user.iProfile == 0) then
local s,e,number = strfind(data,"%b<>%s+%S+%s+(.*)")
if (tonumber(number) == nil or number == "") then
user:SendPM(Bot, "Villa, +stopvote , nr ver?ur a? vera tala.")
else
number = tonumber(number)
if (OldPoll(user, number) == 1) then
user:SendPM(Bot, "K?nnuninni hefur veri? loka? og vista? ? Old Polls.")
else
user:SendPM(Bot, "?a? er engin k?nnun til me? n?merinu "..number..".")
end
end
else
user:SendPM(Bot, "?? hefur ekki leyfi til a? nota ?essa skipun.")
end
return 1
elseif (cmd=="+showvote") then
if (user.iProfile == 0) then
local s,e,number, opt = strfind(data,"%b<>%s+%S+%s+(%S+)%s+(%S+)")
if (tonumber(number) == nil) then
user:SendPM(Bot, "Villa, +showvote  , nr ver?ur a? vera tala.")
else
number = tonumber(number)
if (opt == "old") then
if (CheckPoll(user, number, oldpolls) == "") then
user:SendPM(Bot, "?a? er enginn k?nnun til me? n?merinu "..number..".")
else
user:SendPM(Bot, CheckPoll(user, number, oldpolls))
end
elseif(opt == "new") then
if (CheckPoll(user, number, votetext) == "") then
user:SendPM(Bot, "?a? er enginn k?nnun til me? n?merinu "..number..".")
else
user:SendPM(Bot, CheckPoll(user, number, votetext))
end
else
user:SendPM(Bot, "Villa, +showvote  ,ver?ur a? vera (old = loku? eldri k?nnun) e?a (new = k?nnun sem ekki er b?i? a? loka)")
end
end
else
user:SendPM(Bot, "?? hefur ekki leyfi til a? nota ?essa skipun")
end
return 1
elseif (cmd=="+svmain") then
if (user.iProfile == 0) then
local s,e,number, opt = strfind(data,"%b<>%s+%S+%s+(%S+)%s+(%S+)")
if (tonumber(number) == nil) then
user:SendPM(Bot, "Villa, +svmain  , nr ver?ur a? vera tala.")
else
number = tonumber(number)
if (opt == "old") then
if (CheckPoll(user, number, oldpolls) == "") then
user:SendPM(Bot, "?a? er enginn kosningase?ill til me? n?merinu "..number..".")
else
SendToAll(Bot, CheckPoll(user, number, oldpolls))
end
elseif(opt == "new") then
if (CheckPoll(user, number, votetext) == "") then
user:SendPM(Bot, "?a? er engin k?nnun til me? n?merinu "..number..".")
else
SendToAll(Bot, CheckPoll(user, number, votetext))
end
else
user:SendPM(Bot, "Villa, +svmain  , ver?ur a? vera (old = loku? eldri k?nnun) e?a (new = k?nnun sem ekki er b?i? a? loka)")
end
end
else
user:SendPM(Bot, "?? hefur ekki leyfi til a? nota ?essa skipun")
end
return 1
elseif (cmd=="+votelist") then
if (user.iProfile == 0) then
(readfrom(oldpolls) == nil or ReadPoll(user, oldpolls) == "") then
user:SendPM(Bot, "?a? eru engar kannanir b?nar")
else
user:SendPM(Bot, ReadPoll(user, oldpolls))
end
else
user:SendPM(Bot, "?? hefur ekki leyfi til a? nota ?essa skipun")
end
return 1
elseif (cmd=="+votefor") then
if (readfrom(votetext) == nil or ReadPoll(user, votetext) == "") then
user:SendPM(Bot, "?a? er engin k?nnun ? gangi")
else
user:SendPM(Bot, ReadPoll(user, votetext))
end
return 1
elseif (cmd=="+vote") then
local s,e,number,opt = strfind(data,"%b<>%s+%S+%s+(%S+)%s+(%S+)")
if (tonumber(number) == nil) then
user:SendPM(Bot, "Villa, +vote  , nr ver?ur a? vera tala.")
else
number = tonumber(number)
if (opt == nil or opt == "" or opt ~= "n" and opt ~= "y") then
user:SendPM(Bot, "Villa, +vote  , ver?ur a? skrifa (y = J?) e?a (n = nei).")
else
					if (Vote(user, number, opt) == 1) then
user:SendPM(Bot, "atkv??i ?itt hefur veri? skr??")
						vt[user.sName] = 1
						nr[user.sName] = number
elseif(Vote(user, number, opt) == 2) then
user:SendPM(Bot, "?? varst b?inn a? kj?sa ? ?essari k?nnun")
else
					user:SendPM(Bot, "?a? er engin k?nnun til me? n?merinu "..number..".")
end
end
end
return 1
elseif (cmd=="+delvote") then
if (user.iProfile == 0) then
local s,e,number = strfind(data,"%b<>%s+%S+%s+(%S+)")
if (tonumber(number) == nil) then
user:SendPM(Bot, "Villa, +delvote , nr ver?ur a? vera tala.")
else
number = tonumber(number)
if (DelOldPoll(user, number) == 0) then
user:SendPM(Bot, "?a? er enginn g?mul k?nnun me? n?merinu "..number)
else
user:SendPM(Bot, "G?mlu k?nnuninni hefur veri? eytt")
end
end
else
				user:SendPM(Bot, "?? hefur ekki leyfi til a? nota ?essa skipun.")
end
return 1
end
end
end

function CreatePoll(user, number, question)
local tmp = ""
local time = 0

   readfrom(oldpolls)
   while 1 do
      local line = read()
      if (line == nil) then 
break
else
local s,e,num = strfind(line,"Nr:%s+(%S+)%s+")
if (tonumber(num) ~= nil and tonumber(num) == number) then 
time = 2
else
end
end
end
readfrom()

readfrom(votetext)
while 1 do
 local line = read()
if (line == nil) then 
if (time == 2) then
break
else
tmp = tmp.."Nr: "..number.." "..question.." Yes: 0 No: 0 Active: Yes\r\n"
 time = 1
break
end
else
local s,e,num = strfind(line,"Nr:%s+(%S+)%s+")
if (tonumber(num) ~= nil and tonumber(num) == number) then 
tmp = tmp..line.."\r\n"
time = 2
else
tmp = tmp..line.."\r\n"
end
end
end
readfrom()
writeto(votetext)
write(tmp)
writeto()
return time
end

function OldPoll(user, number)
local tmp = ""
local tmp2 = ""
local time = 0
readfrom(votetext)
while 1 do
local line = read()
if (line == nil) then 
break
else
local s,e, num, question, ny, nn = strfind(line,"Nr:%s+(%S+)%s+(.*)Yes:%s+(%S+)%s+No:%s+(%S+)%s+Active:")
if (tonumber(num) ~= nil and tonumber(num) == number) then 
tmp2 = tmp2.."Nr: "..number.." "..question.." Yes: "..ny.." No: "..nn.." Active: No\r\n"
time = 1
else
tmp = tmp..line.."\r\n"
end
end
end
readfrom()
writeto(votetext)
write(tmp)
writeto()
if (time == 0) then
else
appendto(oldpolls)
write(tmp2)
writeto()
end
return time
end

function CheckPoll(user, number, file)
local tmp = ""
   readfrom(file)
   while 1 do
      local line = read()
      if (line == nil) then 
      break
      else
	 local s,e, num, question, ny, nn = strfind(line,"Nr:%s+(%S+)%s+(.*)Yes:%s+(%S+)%s+No:%s+(%S+)%s+Active:") 
    if (tonumber(num) ~= nil and tonumber(num) == number) then 
    tmp = tmp.. " \r\n"
    tmp = tmp.."\r\n<>===================>> K?nnun <<===================<>\r\n" 
    tmp = tmp.."       K?nnun Nr: "..num.."\r\n" 
    tmp = tmp.."       Spurningin: "..question.."\r\n" 
    tmp = tmp.."<>=================================================<>\r\n" 
    tmp = tmp.. " \r\n"
    tmp = tmp.. "\t\t\t  J? svara: "..ny.."\r\n" 
    tmp = tmp.. "\t\t\tNei svara: "..nn.."\r\n" 
    tmp = tmp.. " \r\n"
    tmp = tmp.."<> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -<> \r\n"
 if (tonumber(ny) > tonumber(nn)) then 
    tmp = tmp.."\t\t\t J? er a? vinna.\r\n"
    tmp = tmp.."<>=================================================<>\r\n" 
 elseif (tonumber(ny) < tonumber(nn)) then 
tmp = tmp.."\t\t\tNei er a? vinna.\r\n"
tmp = tmp.."<>=================================================<>\r\n" 
 elseif (tonumber(ny) == tonumber(nn)) then 
tmp = tmp.."\t\t\t?a? er jafnt.\r\n" 
tmp = tmp.."<>=================================================<>\r\n"
     
end 
break
else
end
end
end
readfrom()
return tmp
end

function ReadPoll(user, file)
local tmp = ""
readfrom(file)
while 1 do
local line = read()
if (line == nil or line == "") then 
break
else
local s,e, num, question, ny, nn = strfind(line,"Nr:%s+(%S+)%s+(.*)Yes:%s+(%S+)%s+No:%s+(%S+)%s+Active:") 
    if (num == nil) then 
    else 
    tmp = tmp.."\r\n<>===================>> K?nnun <<===================<>\r\n" 
    tmp = tmp.."       K?nnun Nr: "..num.."\r\n" 
    tmp = tmp.."       Spurningin: "..question.."\r\n" 
    tmp = tmp.."<>=================================================<>\r\n" 
    tmp = tmp.. " \r\n"
    tmp = tmp.. "\t\t\t  J? sv?ru?u: "..ny.."\r\n" 
    tmp = tmp.. "\t\t\tNei sv?ru?u: "..nn.."\r\n" 
    tmp = tmp.. " \r\n"
    tmp = tmp.."<>=================================================<>\r\n"
(file == oldpolls) then
tmp = tmp.."G?mul k?nnun, ekki h?gt a? kj?sa\r\n"
elseif (file == votetext) then
tmp = tmp.."      Ger?u +vote   t.d. <+vote 1 y>"
end         
end
end
end
readfrom()
return tmp
end

function Vote(user, number, opt)
local tmp = ""
local time = 0
if (vt[user.sName] == 1 and nr[user.sName] == number) then
   time = 2
else
   readfrom(votetext)
   while 1 do
      local line = read()
      if (line == nil) then 
      break
      else
local s,e, num, question, ny, nn = strfind(line,"Nr:%s+(%S+)%s+(.*)Yes:%s+(%S+)%s+No:%s+(%S+)%s+Active:")
if (tonumber(num) ~= nil and tonumber(num) == number) then 
 if (opt == "y") then
ny = tonumber(ny) + 1
elseif (opt == "n") then
nn = tonumber(nn) + 1
end
tmp = tmp.."Nr: "..number.." "..question.."Yes: "..ny.." No: "..nn.." Active: Yes\r\n"
time = 1
else
tmp = tmp..line.."\r\n"
end
end
end
readfrom()
writeto(votetext)
write(tmp)
writeto()
end
return time
end

function DelOldPoll(user, number)
local tmp = ""
local time = 0
   readfrom(oldpolls)
   while 1 do
      local line = read()
      if (line == nil) then 
      break
      else
local s,e, num, question, ny, nn = strfind(line,"Nr:%s+(%S+)%s+(.*)Yes:%s+(%S+)%s+No:%s+(%S+)%s+Active:")
if (tonumber(num) ~= nil and tonumber(num) == number) then 
time = 1
else
tmp = tmp..line.."\r\n"
end
end
end
readfrom()
writeto(oldpolls)
write(tmp)
writeto()
return time
end

(=CyberPimp=)

[15:10:30] <(=K?nnun=)>
- <>===================>> K?nnun <<===================<>
       K?nnun Nr: 2
       Spurningin: ? a? h?kka min shere ? 50GB
- <>=================================================<>
 
           J? sv?ru?u: 12
         Nei sv?ru?u: 18
 
- <>=================================================<>
      Ger?u +vote t.d. <+vote 1 y>


I like this look :o)........don?t know about you

(=CyberPimp=)

argg  X( .... did not come out right, center the q and nr and y and n, thats how it looks....... hehe

Skyhawk

Hi there  didn't you say you would add this logging feature i proposed toi your voting bot?


I really need it and fast... :-)


Thx for your efforts

nErBoS

Hi,

I have been had lot of work and some achool problems :P. I will try to catch up tomorrow.

Best regards, nErBoS
--## nErBoS Spot ##--

Skyhawk

you're the man

nErBoS

Hi,

Made a tiny vote poll HERE  i will start to updated this one with some functions i made on that one.

Best regards, nErBoS
--## nErBoS Spot ##--

Skyhawk

???


I don't understand.  This bot here is great. I just want you to add a verification to check if a user has already voted.  The nick/voteinfo should be saved in a 3rd file.

DON'T ABANDON THIS BOT  it's too good to abandon it.


Please just update it!

nErBoS

Hi,

I didn?t said that, i said i was going to update this BOT with somethings that i made to the other.

Best regards, nErBoS
--## nErBoS Spot ##--

nErBoS

#39
Hi,

I have made a complety re-write to this Bot, check it HERE

Best regards, nErBoS
--## nErBoS Spot ##--

SMF spam blocked by CleanTalk