Kill game

By Ganoderma on Jun 02, 2007

current version: (V 2.2)

This is a kill game i made myself.

Basically some1 writes !kill
then the script will choose wether you kill or not kill.
and for both, there are multiple messages given.

if the one using this script is an op in the channel, it will kick the killed person.
if the killed person is an op, he wont be kicked.

there is a 30 second delay before it can be used again to avoid spam.
also, 1 user cant use it twice without some1 else first using it.

it even keeps track on how many times some1 tried to attack, howmany times some1 has killed, howmany times some1 has been attacked and howmany times some1 has been killed.

its impossible to kill 'L' (op bot)
you can easily change this to Q if the channel uses Q (quakenet)

type !resetkill to reset all variables set by this game.
(lvl 100 user access needed)

if you look at the script, you can easily change the chance on a kill, kill messages etc.

place this in remote

CHANGELOG
(V2.2)
Added Kill/attack and killed/attacked ratio's
fixed bug where the variable's would be spammed with all names that dont exist.

(V2.1.5)
removed a little bug were something was said double.

(V2.1)
added a few extra things for better/less spammy use.
cut down the size on the whole code.

(V2.0)
First public version

on 1:text:!kill*:#: {
  if ( %killon == yes ) {
    notice $nick you cant use this command so fast after eachother. please wait a while longer. 
    halt
  }
  if ( %killlast == $nick ) {
    notice $nick Sorry, you cant use this command twice in a row. please wait untill somebody else used it. 
    halt
  }
  if ( $2 == $null ) { 
    notice $nick Please input a name to kill. 
    halt
  }
  if ( $2 == L ) {
    notice $nick You cant kill L. 
    halt
  }
  if ( $2 == $me ) {
    notice $nick You cant kill me.
    halt
  }
  if ( $2 == $nick ) {
    notice $nick You cant kill yourelf.
    halt
  }
  if ( %killtry [ $+ [ $nick ] ] == $null ) {
    set %killtry $+ $nick 0
    set %killsuc $+ $nick 0
  }
  if ( %killsuc [ $+ [ $nick ] ] == $null ) {
    set %killsuc $+ $nick 0
  }
  set %killon yes
  set %killlast $nick
  set %kill $rand(1,5)
  inc %killtry $+ $nick
  if ( $2- !ison $chan ) {
    msg $chan $nick searches for $2- $+ .
    timer 1 3 msg $chan but $2- isnt here at the moment.
    timer 1 4 msg $chan Murder attempt failed!
    timer 1 5 msg $chan $nick has tried to kill %killtry [ $+ [ $nick ] ] persons. %killsuc [ $+ [ $nick ] ] attempts were successfull. 
    timer 1 30 set %killon no
    halt
  }
  if ( %killedtry [ $+ [ $2 ] ] == $null ) {
    set %killedtry $+ $2 0
    set %killedsuc $+ $2 0
  }
  if ( %killedsuc [ $+ [ $2 ] ] == $null ) {
    set %killedsuc $+ $2 0
  }
  inc %killedtry $+ $2
  if ( %kill == 1 ) {
    set %kill2 $rand(1,5)
    inc %killedsuc $+ $2
    inc %killsuc $+ $nick
    if ( %kill2 == 1 ) {
      msg $chan $nick sneaks to $2 with a knife and silently slices his throat. 
      timer 1 3 msg $chan $nick hears police sirens but he manages to get away. 
    }
    if ( %kill2 == 2 ) {
      msg $chan $nick grabs a machine gun and shoots the hell out of $2 $+ .
      timer 1 3 msg $chan $nick dumps the gun and goes on with his life.
    }
    if ( %kill2 == 3 ) {
      msg $chan $nick plants a bomb in $2 $+ 's house.
      timer 1 3 msg $chan When $2 comes home, the bomb explodes. 
    }
    if ( %kill2 == 4 ) {
      msg $chan $nick sees $2 walking on the street.
      timer 1 3 msg $chan $nick grabs a gun and shoots $2 $+ .
    }
    if ( %kill2 == 5 ) {
      msg $chan $nick made the perfect plan to kill $2 $+ .
      timer 1 3 msg $chan $nick manages to execute the plan and kills $2 $+ .
    }
    timer 1 4 msg $chan Murder attempt successfull!
    timer 1 5 msg $chan $nick has tried to kill %killtry [ $+ [ $nick ] ] persons. %killsuc [ $+ [ $nick ] ] attempts were successfull. 
    timer 1 30 set %killon no
    timer 1 6 msg $chan $2 has been attacked %killedtry [ $+ [ $2 ] ] times. %killedsuc [ $+ [ $2 ] ] times he died.
    timer 1 7 msg $chan kill/attack ratio for $nick $+ : 1/ $+ $calc( %killtry [ $+ [ $nick ] ] / %killsuc [ $+ [ $nick ] ] ) (1/5 is normal, less is 'good' more is 'bad')
    timer 1 8 msg $chan killed/attacked ratio for $2 $+ : 1/ $+ $calc( %killedtry [ $+ [ $2 ] ] / %killedsuc [ $+ [ $2 ] ] ) (1/5 is normal, more is 'good' less is 'bad')
    if ( $2 isop $chan ) halt
    timer 1 10 kick $chan $2 You have been killed.
  }
  if ( %kill != 1 ) {
    set %kill2 $rand(1,10)
    if ( %kill2 == 1 ) {
      msg $chan $nick searches for $2- $+ .
      timer 1 3 msg $chan but $2 is dead already... 
    } 
    if ( %kill2 == 2 ) {
      msg $chan $nick grabs a machine gun and shoots the hell out of $2 $+ .
      timer 1 3 msg $chan $nick turns around and sees a police agent, wich arrests him.
    }
    if ( %kill2 == 3 ) {
      msg $chan $nick sneaks to $2 with a knife and silently slices his throat.
      timer 1 3 msg $chan when the person falls down, $nick notices that it isnt $2 $+ , but $nick($chan,$rand(1,$nick($chan,0))) $+ !!
    }
    if ( %kill2 == 4 ) {
      msg $chan $nick grabs a machine gun and shoots the hell out of $2 $+ .
      timer 1 3 msg $chan $nick leaves and a week later, the police arrests him for murder.
    }
    if ( %kill2 == 5 ) {
      msg $chan $nick plants a bomb in $2 $+ 's house.
      timer 1 3 msg $chan The bomb exploded, but $2 wasnt home. 
    }
    if ( %kill2 == 6 ) {
      msg $chan $nick plants a bomb in $2 $+ 's house.
      timer 1 3 msg $chan when $nick walks out of the house, noticing $2 calling the police. $nick gets arrested by the police.
    }
    if ( %kill2 == 7 ) {
      msg $chan $nick sees $2 walking on the street.
      timer 1 3 msg $chan $nick grabs a gun but is too scared to shoot.
    }
    if ( %kill2 == 8 ) {
      msg $chan $nick made the perfect plan to kill $2 $+ .
      timer 1 3 msg $chan However, $2 moved to another country and $nick doesnt know where he lives now.
    }
    if ( %kill2 == 9 ) {
      msg $chan $nick grabs a hand gun and shoots at $2 $+ 's chest. 
      timer 1 3 msg $chan However, $2 was wearing a bullet proof vest.
    }
    if ( %kill2 == 10 ) {
      msg $chan $nick walks over the streets searching for $2 $+ .
      timer 1 3 msg $chan The police notices $nick walking with a gun and arrest him because he doesnt have a permission to carry guns.
    }
    timer 1 4 msg $chan Murder attempt failed!
    timer 1 5 msg $chan $nick has tried to kill %killtry [ $+ [ $nick ] ] persons. %killsuc [ $+ [ $nick ] ] attempts were successfull. 
    timer 1 30 set %killon no
    timer 1 6 msg $chan $2 has been attacked %killedtry [ $+ [ $2 ] ] times. %killedsuc [ $+ [ $2 ] ] times he died.
    if ( %killsuc [ $+ [ $nick ] ] != 0 ) {
      if ( %killsuc [ $+ [ $nick ] ] != $null ) {
        timer 1 7 msg $chan kill/attack ratio for $nick $+ : 1/ $+ $calc( %killtry [ $+ [ $nick ] ] / %killsuc [ $+ [ $nick ] ] ) (1/5 is normal, less is 'good' more is 'bad')
      }
    }
    if ( %killedsuc [ $+ [ $2 ] ] != 0 ) {
      if ( %killedsuc [ $+ [ $2 ] ] != $null ) {
        timer 1 8 msg $chan killed/attacked ratio for $2 $+ : 1/ $+ $calc( %killedtry [ $+ [ $2 ] ] / %killedsuc [ $+ [ $2 ] ] ) (1/5 is normal, more is 'good' less is 'bad')
      }
    }
  }
}

on 100:text:!resetkill:#: {
  unset %kill*
  msg $chan !kill counts resetted.
}

Comments

Sign in to comment.
AztecRecords   -  Jul 30, 2009

FordLawnmower ..... i did work.. thank you so much!
but still the !resetkill doesnt work.. but im okay using the /unset %kill*

thank you

 Respond  
FordLawnmower   -  Jul 28, 2009

@AztecRecords type -->> /unset %kill*
From the bot to reset all the variables.
I just quickly looked at this script, but I think !resetkill is not working because users have to be added to the userlist at 100 or higher to use the command.
To add users: From the bot - type -->> /auser nickname 100

 Respond  
AztecRecords   -  Jul 28, 2009

nice script.. i love it and ppl in my chat 2.... but for some weird REASON after playing for a day.... now i get this message (you cant use this command so fast after eachother. please wait a while longer.)

and i tried using the !resetkill command and it doesnt work....
help ? lol....

 Respond  
Ghost-writer   -  Jul 27, 2009

seriously how do i unset the killion thing so i dont have to wait,eevryone in my chan is getting pissed lol but good script

 Respond  
Grant-   -  Jul 26, 2009

you can do something so much shorter..

  if ( $2 == $null ) {

not only can it be ($2 == $null), but it can be

 if (!$2) {
 Respond  
Ghost-writer   -  Jul 26, 2009

the killion is pissing me off..

 Respond  
T012m3n7oR   -  Jun 26, 2008

you could make it a LOT shorter other then that 7/10

 Respond  
SlimShadyGrimGravy   -  Jun 25, 2007
 Respond  
SyntaxIRC   -  Jun 05, 2007

I actually attempted to make a RPG engine like this, Counter-Strike form. I got bored of it, I posted the remains of it on the mIRC Scripting forums.

 Respond  
Ganoderma   -  Jun 04, 2007

there is a 30 second delay before you can use it again.
if it still doesnt work,
either use the reset command (!resetkill) with a level 100 user
or manually unset the variable %killon

 Respond  
bugyou   -  Jun 04, 2007

Now anytime I try to do any form of \"!kill\" i get a message like
(18:14:44) -CIS-BOT- you cant use this command so fast after eachother. please wait a while longer.

 Respond  
Ganoderma   -  Jun 04, 2007

UPDATE:
fixed a few bugs and added showing the kill/attack and killed/attack ratio.
(note that this is only if the persons with the info have killed or have been killed at least once.)

 Respond  
Ganoderma   -  Jun 04, 2007

Meli,
you got it right on the %kill2 ;)

might change the thing \'you notice it isnt $2\' to a random name ;)
though i wouldnt make it complete randm for now
(might add an option to make it random)

there is a kick in the snippet, look under %kill2 == 5 in sucessfull kill.

 Respond  
|MELIORITE|   -  Jun 03, 2007

Having %kill2 with two different random responses could be a difficulty, although I can see that one is successful and the other unsuccessful...

A good interactive game idea (a little brutal for me though ;P). You might consider a random reading of active nicks on the nicklist and the game once started, takes active nicks at random and has its own murder game running? Just an idea....

Linesftw, there is no kick in the snippet, so you don\'t have to worry about that...
SpotRedDog, you enter the nick manually from those already in the channel, as in !kill SpotRedDog :D ... no need for the menu option to play the game.

 Respond  
Ganoderma   -  Jun 03, 2007

M4g: yes, you must place this in remote.

SRD: i dont really know what you get,
you mean it should only work for a certain channel?
to do so: change the top line to: on 1:text:!kill:#yourchannel: {

AHBA: ill add that now, some delay for the messages.

 Respond  
AHBARAR   -  Jun 03, 2007

Its So nice and fun script but it can flood some time but typing 4 lines quickly u may fix tht by adding b4 the msg $chan:
.timer 1 3 .msg $chan $cl text
.timer 1 6 .msg $chan $cl text2
etc...
That way no flood can happen its like time msg >:) even so ur script still super to me.

 Respond  
SpotRedDog   -  Jun 03, 2007

any chance that you could add the nicklist,channel to this so you can get to it from your nicklist,channel or the other way around??? I really like this script and am a very poor script writer or rather major modifier so I am asking if there is anyway you can add a nicklist,channel or the other way around channel,nicklist but I am hoping you can just add the nicklistand channel just to the bottom of this thing cause it would be nice and yes I am rambling so Later I am out of here!!!

SpotRedDog
Find Me:
gamesurge: { #xplay #cops20 #tng20 #startrek20 #chekovslounge #duckpond #trekfansunite #g4tv #hsxchat }=={port:6667}=={OR: You may go to---> http://www.g4tv.com/ and click on the chat link if you don\'t have mIRC` or a Mirc or a IRC dlients

 Respond  
m4g3script   -  Jun 03, 2007

you place this in remote correct?

 Respond  
Ganoderma   -  Jun 03, 2007

UPDATE:
now you cant kill yourself.

 Respond  
Linesftw   -  Jun 03, 2007

awsome :D brilliant idae XD and kinda funny, but maybe make kick function only active if someone has been active last.. 5minutes? else afkers may get kickd

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.