Mini-Bomb Game (v.2)

By Kirby on Jan 13, 2009

This is one of the scripts I found that I made a few months ago on my cute bot.
I originally took the idea from FunBots on Quakenet and decided to script one of their games just for kicks.
It's just a small, but fun, bomb game where you can leash a bomb on yourself or another person, and that person has only 30 seconds to defuse the bomb by choosing one of the following:

  • RED
  • YELLOW
  • GREEN
  • FEARTo start the game, type .bomb .
    The bot also counts how many times someone has defused or exploded the bomb, which you can check through .stats.

  • Don't choose wire FEAR though! :) :) :)
  • 15 seconds until next game
  • Put this into your bot's remotes, not yours!

Updates:

  • Mon Mar 2, 9:10 PM - Made the script multi-channel + bomb stats.
    Here's a picture:
    Image

Enjoy! :D

alias -l bomb { set %bombs $reptok(%bombs,$gettok(%bombs,2,58),$calc($gettok(%bombs,2,58) + 1),1,58) | .msg $1 *BOOM* Fear. You're dead $+(,$gettok(%b. [ $+ [ $1 ] $+ ] .info,3,32),,!) $chr(91) You have been bombed by $+(,$gettok(%b. [ $+ [ $1 ] $+ ] .info,2,32),) on $+(,$gettok(%b. [ $+ [ $1 ] $+ ] .info,1,32),) $chr(93) | .msg $1 (10 seconds till next bomb) | set -u15 %bomb. [ $+ [ $1 ] ] disabled | unset %b. [ $+ [ $1 ] $+ ] .* }

on *:text:.bomb*:#: {
  if (!%bombs) { set %bombs 0:0 }
  if (!%bomb. [ $+ [ $chan ] ]) {
    if (!$2) { .notice $nick You must select a nick. | halt }
    if ($2 ison $chan) && ($2 != $me) { set %b. [ $+ [ $chan ] $+ ] .wires RED YELLOW GREEN FEAR | set %b. [ $+ [ $chan ] $+ ] .nick $2 | set %bomb. [ $+ [ $chan ] ] on | set %b. [ $+ [ $chan ] $+ ] .info $chan $nick $2 | var %x RED|YELLOW|GREEN | set %b. [ $+ [ $chan ] $+ ] .wire $gettok(%x,$r(1,3),124) | .timer 1 1 .msg $chan INCOMING!: Bomb has been planted!!! You have 30sec to defuse the Bomb! Engi: $2 $+ . | .timer 1 2 .msg $chan Wires Are: 4RED - 8YELLOW - 9GREEN - 1FEAR | .timer 1 3 .msg $chan Use: ".wire <color here>" | .timer 1 4 .notice $2 YOU have been bombed by $+(,$nick,) on $+(,$chan,,!!!) | .timerbwarn. [ $+ [ $chan ] ] 1 20 .msg $chan 10 Seconds Remaining... Come on $+(,$2,,!) It's gonna BLOW!!! | .timerbomb. [ $+ [ $chan ] ] 1 30 bomb $chan }
    elseif ($2 == $me) { .notice $nick You can NOT bomb me! }
    else { .notice $nick $2 is NOT on $+(,$chan,,.) }
  }
}

on *:text:.wire*:#: {
  if (%bomb. [ $+ [ $chan ] ]) && ($nick == %b. [ $+ [ $chan ] $+ ] .nick) {
    if (!$2) { .notice $nick You must select a wire. }
    elseif (!$istok(%b. [ $+ [ $chan ] $+ ] .wires,$2,32)) { .notice $nick Wires Are: 4RED - 8YELLOW - 9GREEN - 1FEAR }
    else {
      if ($2 == fear) { set %bombs $reptok(%bombs,$gettok(%bombs,2,58),$calc($gettok(%bombs,2,58) + 1),1,58) | .msg $chan $nick *BOOM* Don't be afraid... It's only a virtual bomb $+(,$chr(91),$gettok(%bombs,2,58),$chr(93)) - (15 seconds till next bomb) | set -u15 %bomb. [ $+ [ $chan ] ] disabled | unset %b. [ $+ [ $chan ] $+ ] .* | .timerbwarn. [ $+ [ $chan ] ] off | .timerbomb. [ $+ [ $chan ] ] off }
      elseif ($istok(%b. [ $+ [ $chan ] $+ ] .wires,$2,32)) {
        if ($2 == %b. [ $+ [ $chan ] $+ ] .wire) { set %bombs $reptok(%bombs,$gettok(%bombs,1,58),$calc($gettok(%bombs,1,58) + 1),1,58) | .msg $chan WP $+(,$nick,) you got it right! \o/ $+(,$chr(91),$chan,$chr(93),) $+($chr(91),$gettok(%bombs,1,58),$chr(93)) - (15 seconds till next bomb) | set -u15 %bomb. [ $+ [ $chan ] ] disabled | unset %b. [ $+ [ $chan ] $+ ] .* | .timerbwarn. [ $+ [ $chan ] ] off | .timerbomb. [ $+ [ $chan ] ] off }
        else { set %bombs $reptok(%bombs,$gettok(%bombs,2,58),$calc($gettok(%bombs,2,58) + 1),1,58) | .msg $chan *BOOM* You chose the false wire $+($nick,...) The correct wire was: $+(,%b. [ $+ [ $chan ] $+ ] .wire,) $+($chr(91),$gettok(%bombs,2,58),$chr(93)) - (15 seconds till next bomb) | set -u15 %bomb. [ $+ [ $chan ] ] disabled | unset %b. [ $+ [ $chan ] $+ ] .* | .timerbwarn. [ $+ [ $chan ] ] off | .timerbomb. [ $+ [ $chan ] ] off }
      }
    }
  }
}

on *:text:.stats:#: { var %x $gettok(%bombs,1,58), %y $gettok(%bombs,2,58), %z $calc($gettok(%bombs,1,58) + $gettok(%bombs,2,58)) | .msg $chan Total number of defusions: $+(,%x,) rounds.. $+($chr(40),$round($calc(%x / %z),2),$chr(37),$chr(41)) $chr(124) Total number of explosions: $+(,%y,) rounds.. $+($chr(40),$round($calc(%y / %z),2),$chr(37),$chr(41)) }

Comments

Sign in to comment.
chachin   -  Sep 28, 2012

how do i add all 15 colors to the script and make it mixed colors everytime you do !bomb nick because it aint fun if its always the same colors

 Respond  
Ghost-writer   -  Jul 27, 2009

your picture looks messed up o.o

 Respond  
Aucun50   -  Mar 02, 2009

Nice beats mine

 Respond  
Kirby   -  Mar 02, 2009

Made some changes.
Have fun.

 Respond  
Kirby   -  Jan 15, 2009

Thanks Bluepower. :O

 Respond  
Bluepower10   -  Jan 15, 2009

This is very nice. It gets users active in the channel. :)

 Respond  
BackoffJackson   -  Jan 15, 2009

You folks have got to be kidding me. You're still playing with this? I posted the original one ages ago. Ach veil. Keep up the good work fellows.

 Respond  
Kirby   -  Jan 14, 2009

I think I should change $nick to $address($nick,2)...I wouldn't assume anybody changing their nick when they're bombed.
I'll try work a little more on this, thanks for the comments napa.

 Respond  
napa182   -  Jan 14, 2009

no not continuously just if they hop or part to advoid the bomb when they come back they get kicked once with the message "So you think you can out smart the BOMB..BOOOOOOOOOOOOOOOOOOOOOOOOOM!!"

as for the nick changing part all it does is keep the countdown going for the newnick.

 Respond  
Kirby   -  Jan 14, 2009

Good idea there napa :>

 Respond  
Kirby   -  Jan 14, 2009

Oh, I thought by > so if they tried to hop the chan or part and come back after the timer it would still get them same goes for if they changed their nick., you meant by kicking them continuously.

 Respond  
napa182   -  Jan 14, 2009

no not really cuz i keep score of wins and kicks, and they all want to get the best score.

 Respond  
Kirby   -  Jan 14, 2009

That's pretty interesting to add kicking after bombing, but to my interest, wouldn't that get annoying? (for the people who were bombed).

 Respond  
napa182   -  Jan 14, 2009

well on the quit and part it would reset the code. i put the join cuz on mine i made it kick the user i bomb.
so if they tried to hop the chan or part and come back after the timer it would still get them same goes for if they changed their nick.

 Respond  
Kirby   -  Jan 14, 2009

napa said:

They should add a few events like..* on part

  • on join
  • on quit
  • on nick

Well, it was initially made for a small game. I wouldn't see where you would implement the idea of "bombing" into those events. xD

 Respond  
napa182   -  Jan 14, 2009

Aucun50 Wrote:
this is that super adv version of it with everything that you could think of!

well not really..
They should add a few events like..

  • on part
  • on join
  • on quit
  • on nick
    i made one of these awhile back they are fun for a few minutes, but all in all nice work 4/10
 Respond  
Aucun50   -  Jan 14, 2009

I had a !blowup and !defuse in my Game Bot, this is that super adv version of it with everything that you could think of! Nice work.

 Respond  
Firstmate   -  Jan 14, 2009

There was another script similar to this but this one looks pretty nifty. I'll be sure to give it a try tomorrow when I get time.

 Respond  
Kirby   -  Jan 13, 2009

This is random but what sort of theme/addon do you use.
I'm using the Devil's Client of mIRC on Wine (on Linux).
I am using the AlArabiya Regular Size 6 font with mIRC's Monochrome State theme.

 Respond  
Firstmate   -  Jan 13, 2009

This is random but what sort of theme/addon do you use.

 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.