Changeset 1082


Ignore:
Timestamp:
08/26/10 11:32:47 (18 months ago)
Author:
james
Message:

reduced lolcats chance
added output to "and then"
trigger fixes for r, luggage combination and look robot
fix priority on typos plugin
new "triplet" macro filter which gets a const-vowel-const triplet from the word
new "pretriplet" macro filter to use with "triplet"
fixed output_append to actually fire
make "cool" a stopwor for spoonerism
more grammar nazism
fix broken output being sent to IRC
adjust lower friendship limit slightly
many updates to abstracts
fix queue not adding last output to cache
guard code in interbot

Location:
trunk
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/abstracts/en/abstracts.tcl

    r1077 r1082  
    647647bMotion_abstract_register "randomReplies" { 
    648648        "You are a bottomless pit of questions." 
     649        "fuck your riddles, you gigantic mystic arsehole!" 
    649650        "You can lead a horse to water, but you are the one asking all the stupid questions!" 
    650651        "%ruser" 
     
    10161017        "wab" 
    10171018        "nipple" 
     1019        "labia" 
    10181020} 
    10191021 
     
    31223124        "well slap my ass and call me susan" 
    31233125        "well slap my ass and call me %me" 
     3126        "well slap my %VAR{bodypart} and call me %me" 
    31243127        "well blow me down" 
    31253128        "well i'll be a monkey's uncle" 
     
    31283131        "%VAR{hermes}" 
    31293132        "%VAR{ulysses}" 
     3133        "shocking" 
     3134        "wtf" 
    31303135} 
    31313136 
     
    31983203        "removing my enemies from the timeline" 
    31993204        "trimming my toenails" 
     3205        "intimate time with my %VAR{fruits}" 
    32003206} 
    32013207 
     
    33323338        "grape" 
    33333339        "banana" 
     3340        "pear" 
     3341        "apricot" 
     3342        "cherry" 
     3343        "peach" 
     3344        "plum" 
     3345        "blackberry" 
     3346        "raspberry" 
     3347        "blueberry" 
     3348        "cranberry" 
     3349        "gooseberry" 
     3350        "grapefruit" 
     3351        "lemon" 
     3352        "lime" 
     3353        "orange" 
     3354        "tangerine" 
     3355        "avocado" 
     3356        "lychee" 
     3357        "passion fruit" 
     3358        "strawberry" 
     3359        "coconut" 
     3360        "kiwi" 
    33343361} 
    33353362 
     
    35253552        "%SETTING{complex:attacks:who:_:_} is immune to '%SETTING{complex:attacks:item:_:_}'" 
    35263553        "%SETTING{complex:attacks:who:_:_} absorbs the damage and gains %SETTING{complex:attacks:score:_:_} HP!" 
     3554        "%SETTING{complex:attacks:who:_:_} casts a Spell of %VAR{sillyThings:strip} and takes only %SETTING{complex:attacks:score:_:_} damage!" 
    35273555} 
    35283556 
     
    35823610        "\[%%\] I love %ruser%|%VAR{wrong_infoline}" 
    35833611        "\[%%\] Just call me %VAR{sillyThings}%|%VAR{wrong_infoline}" 
    3584         "%ruser: what do you mean you put it in a melon?" 
     3612        "%ruser: what do you mean you put it in a %VAR{fruits}?" 
    35853613} 
    35863614 
     
    45374565        "a plague of locusts" 
    45384566        "breezes" 
     4567        "a hurricane" 
     4568        "a tornado" 
    45394569} 
    45404570 
    45414571bMotion_abstract_register "compass" { 
    45424572        "north" 
     4573        "northwest" 
     4574        "northeast" 
     4575        "southwest" 
     4576        "southeast" 
    45434577        "south" 
    45444578        "east" 
     
    45904624        "good %daytime" 
    45914625        "%daytime" 
     4626        "%daytime all" 
     4627        "/powers up" 
     4628        "/fails to resume from hibernated state and reboots" 
     4629        "/boots" 
    45924630        "r" 
    45934631        "mmm toast" 
     4632        "mmm breakfast" 
    45944633        "/eats breakfast" 
    45954634        "/awakens from a nightmare about %VAR{nightmare}" 
     
    46624701        "Operation Undercover" 
    46634702        "The Secret Assignment" 
     4703        "The Heat Thickens" 
    46644704} 
    46654705 
     
    48984938        "shorts" 
    48994939        "jacket" 
     4940} 
     4941 
     4942bMotion_abstract_register "clothes_female" { 
     4943        "knickers" 
     4944        "tights" 
     4945        "stockings" 
     4946        "bra" 
     4947        "skirt" 
     4948        "thong" 
     4949} 
     4950 
     4951bMotion_abstract_register "clothes_male" { 
     4952        "Y-fronts" 
     4953        "braces" 
     4954        "top hat" 
     4955        "cummerbund" 
     4956        "bowtie" 
     4957        "tie" 
    49004958} 
    49014959 
     
    56165674        "panther" 
    56175675        "pig" 
     5676        "bear" 
     5677        "zebra" 
     5678        "horse" 
    56185679} 
    56195680 
  • trunk/modules/abstracts/en/randomstuff.tcl

    r1054 r1082  
    66### Used when the channel is not 'active' (default > 300s since last line) 
    77bMotion_abstract_register "randomStuff" { 
     8        "help! my %VAR{bodypart:plural} are escaping!" 
     9        "%REPEAT{7:7:ring }%VAR{fruits} phone" 
     10        "/puts the %VAR{sillyThings:strip,triplet} in %VAR{sillyThings:prevtriplet}" 
     11        "Putting the %VAR{sillyThings:strip,triplet} in %VAR{sillyThings:prevtriplet} since 1%NUMBER{9}%NUMBER{99}" 
     12        "Achievement unlocked: %VAR{sillyVerbs:past} %VAR{sillyThings}! (%NUMBER{5}0G)" 
    813        "%VAR{adjective} %VAR{sillyThings:strip} is %VAR{adjective:prev}" 
    914        "%VAR{nice_adjective} %VAR{sillyThings:strip} is %VAR{nice_adjective:prev}" 
     
    425430 
    426431bMotion_abstract_register "randomStuff_female" { 
     432        "i'm so fat i broke %NUMBER{100} toilets %VAR{unsmiles}" 
     433        "i'm so fat i broke %NUMBER{100} toilets %VAR{unsmiles}%|%BOT[at once]" 
     434        "someone help me, i have lost my shirt and am terribly horny!" 
     435        "someone help me, i have lost my %VAR{clothes} and am terribly horny!" 
     436        "oils her %VAR{bodypart}" 
     437        "i often walk about with someone else's dick betwixt mine silken buttocks" 
    427438        "most men are imtimidated by the fact that i can kill them with a flick of my %VAR{bodypart}" 
    428439        "excuse me, i need to go powder my ... nose" 
     
    528539### Used when the channel is 'active' (default < 300 sec since last line) 
    529540bMotion_abstract_register "activeRandomStuff" { 
     541        "%ruser really puts the %VAR{sillyThings:strip,triplet} in %VAR{sillyThings:prevtriplet}!" 
     542        "and in the game" 
     543        "and now I shall part your %VAR{bodypart:bothmixin}" 
     544        "looks like i picked the wrong week to quit smoking" 
     545        "looks like i picked the wrong week to quit amphetamines" 
     546        "looks like i picked the wrong week to quit sniffing glue" 
    530547        "Mr %ruser{male}... are those your UNDERPANTS?!" 
    531548        "try to stay with the crowd so noone notices how crummy you look" 
  • trunk/modules/friendship.tcl

    r937 r1082  
    137137        set friendship [getFriendship $nick] 
    138138        bMotion_putloglev 2 * "friendship: friendship for $nick is $friendship" 
    139         if {$friendship < 35} { 
     139        if {$friendship <= 40} { 
    140140                return 0 
    141141        } 
  • trunk/modules/interbot.tcl

    r1058 r1082  
    154154        bMotion_putloglev 2 * "interbot: My score is $myScore" 
    155155 
    156         if {$myScore > $bMotion_interbot_nextbot_score($channel)} { 
     156        if {(![info exists $bMotion_interbot_nextbot_score($channel)]) || ($myScore > $bMotion_interbot_nextbot_score($channel))} { 
    157157                bMotion_putloglev 2 * "interbot: Actually, I have highest score on $channel, sending out reply" 
    158158                set bMotion_interbot_nextbot_score($channel) $myScore 
  • trunk/modules/output.tcl

    r1075 r1082  
    161161                                                if {$result == ""} { 
    162162                                                        bMotion_putloglev d * "macro: [lindex $plugin 0] returned nothing, aborting output" 
    163                                                         return 0 
     163                                                        return "" 
    164164                                                } 
    165165                                        } 
    166166                                        if {$result == ""} { 
     167                                                return "" 
    167168                                                incr current_pos 
    168169                                                continue 
  • trunk/plugins/en/complex_invader.tcl

    r1061 r1082  
    167167        "soon they'll all be after my delicious guts" 
    168168        "i have had enough of your smelly mouth filled with corn" 
     169        "i have had enough of your smelly mouth filled with %VAR{fruits:plural}" 
    169170        "as soon as my skeleton stops being broken i will destroy you" 
    170171        "when will the lies end?!" 
     
    212213        "the giant flesh-eating demon squid has escaped! security! protect your master! GIR! Defensive mode!" 
    213214        "ah yes... uh... %ruser! and how is the happiness probe in your brain doing today, FILTHY HUMAN?" 
    214         "stay right there... we're sending someone over to beat you up for playing jokes in the FBI!" 
     215        "stay right there... we're sending someone over to beat you up for playing jokes on the FBI!" 
    215216        "no more waffles, GIR. No really, I'm starting to feel sick. *retch*" 
    216217        "AARGH! The hideous mutant squid has escaped again and has created an army of cyborg zombie soldiers to do its evil bidding!" 
  • trunk/plugins/en/complex_nazi.tcl

    r979 r1082  
    1414 
    1515bMotion_plugin_add_complex "nazi-your" "^your (a|the) \[a-z\]+$" 60 bMotion_plugin_complex_nazi1 "en" 
    16 bMotion_plugin_add_complex "nazi-regexp" "^s/\[^/\]+/\[^/\]+$" 80 bMotion_plugin_complex_nazi2 "en" 
     16bMotion_plugin_add_complex "nazi-regexp" "^s/\[^/\]+/\[^/\]+$" 30 bMotion_plugin_complex_nazi2 "en" 
     17bMotion_plugin_add_complex "nazi-meand" "\\mme and \[a-z\]+" 60 bMotion_plugin_complex_nazi3 "en" 
     18bMotion_plugin_add_complex "nazi-meand2" "\[a-z\]+ and me\\M" 60 bMotion_plugin_complex_nazi4 "en" 
    1719 
    1820proc bMotion_plugin_complex_nazi1 {nick host handle channel text} { 
     
    3941} 
    4042 
     43proc bMotion_plugin_complex_nazi3 {nick host handle channel text} { 
     44 
     45        if [regexp -nocase "\\mme and (\[a-z\]+)( \[a-z\]+)?" $text matches other verb] { 
     46                if {$verb == ""} { 
     47                        if {![bMotion_interbot_me_next $channel]} { 
     48                                return 0 
     49                        } 
     50                        bMotionDoAction $channel $nick "%%: %2 and me" $other 
     51                        return 1 
     52                } else { 
     53                        regsub -nocase "me and $other" $text "$other and me" text 
     54                        return [bMotion_plugin_complex_nazi4 $nick $host $handle $channel $text] 
     55                } 
     56                return 0 
     57        } 
     58} 
     59 
     60proc bMotion_plugin_complex_nazi4 {nick host handle channel text} { 
     61        if {![bMotion_interbot_me_next $channel]} { 
     62                return 0 
     63        } 
     64         
     65        #TODO: extend this list 
     66        if [regexp -nocase "\\m(\[a-z\]+ and \)me\\M (were|did)\\M" $text matches other verb] { 
     67                bMotionDoAction $channel $nick "%%: $other I" 
     68                return 1 
     69        } 
     70        return 0 
     71} 
     72 
     73 
    4174bMotion_abstract_register "nazi1" 
    4275bMotion_abstract_batchadd "nazi1" [list "%%: \"you're\"" "their what?" "s/your/you're/"] 
  • trunk/plugins/en/complex_spoonerism.tcl

    r1046 r1082  
    5656 
    5757        if [regexp -nocase {([b-df-hj-np-tv-xz]+)(([aeiou])\3)([b-df-hj-np-tv-xz]+[.!?]?)} $text matches 1 2 3 4] { 
     58                if {$matches == "cool"} { 
     59                        return 0 
     60                } 
    5861                bMotionDoAction $channel $text "$1%REPEAT{2:10:$2}$3$4" 
    5962                return 1 
  • trunk/plugins/en/output_VAR.tcl

    r1053 r1082  
    110110                                        set replacement [bMotion_plugins_settings_get "output:VAR" "last" $channel "$abstract"] 
    111111                                } 
     112                                "prevtriplet" { 
     113                                        set replacement [bMotion_plugins_settings_get "output:VAR" "last:pretriplet" $channel $abstract] 
     114                                } 
    112115                                "strip" { 
    113116                                        set replacement [bMotion_strip_article $replacement] 
     
    139142                                        set replacement [string toupper $replacement] 
    140143                                } 
     144                                "triplet" { 
     145                                        bMotion_plugins_settings_set "output:VAR" "last:pretriplet" $channel $abstract $replacement 
     146                                        set temp [bMotion_find_triplet $replacement] 
     147                                        if {$temp == ""} { 
     148                                                putlog "triplet is blank" 
     149                                                return "" 
     150                                        } 
     151                                        set replacement $temp 
     152                                } 
     153                                         
    141154                        } 
    142155                        bMotion_putloglev 1 * "current replacement is $replacement" 
     
    160173} 
    161174 
     175proc bMotion_find_triplet { word } { 
     176  set start 0 
     177        if {[string length $word] < 3} { 
     178                return "" 
     179        } 
     180 
     181        set results [list] 
     182 
     183        while {[regexp -start $start -nocase -indices {([^aeiou ][aeiou][^aeiou ])} $word matches a]} { 
     184                lappend results [string range $word [lindex $a 0] [lindex $a 1]] 
     185                set start [lindex $a 1] 
     186        } 
     187 
     188        if {[llength $results] == 0} { 
     189                return "" 
     190        } 
     191 
     192        return [pickRandom $results] 
     193} 
    162194 
    163195bMotion_plugin_add_output "VAR" bMotion_plugin_output_VAR 1 "en" 3 
  • trunk/plugins/en/output_append.tcl

    r992 r1082  
    1515 
    1616proc bMotion_plugin_output_append { channel line } { 
    17         if {([string length $line] > 10) && ([rand 100] > 90)} { 
     17        putlog "running append plugin" 
     18        set length [string length $line] 
     19        set n [rand 100] 
     20        bMotion_putloglev d * "output_append: length=$length, n=$n" 
     21        if {($length > 10) && ($n > 90)} { 
     22                bMotion_putloglev d * "output_append: doing!" 
    1823                set line [string trim $line] 
    1924                # make sure the line ends with a letter (other than D) 
     
    2328                        if [regexp -nocase {[a-ce-z]$} $line] { 
    2429                                append line "%VAR{appends}" 
     30                        } else { 
     31                                bMotion_putloglev d * "output_append: not appending to this line as it may end in a smiley" 
    2532                        } 
    2633                } else { 
    27                         if {![regexp {^[:;=/]} $line} { 
     34                        if {![regexp {^[:;=/]} $line]} { 
    2835                                # don't do this for /me type lines and smilies 
    2936                                return $line 
     
    3138                        set line "%VAR{prepends} $line" 
    3239                } 
     40                bMotion_putloglev d * "output_append: preprocessed line is $line" 
    3341 
    34                 set line [bMotionDoInterpolation $line "" "" $channel] 
     42                set line [bMotion_process_macros $channel $line] 
     43                regsub -all "%space" $line " " line 
    3544 
     45                bMotion_putloglev d * "output_append: postprocessed line is $line" 
    3646        } 
    3747        return $line 
     
    5767        ", i think" 
    5868        "%spaceor something totally different perhaps" 
     69        "%spacein the butt" 
     70        "%spacein a vagina" 
    5971} 
    6072bMotion_abstract_add_filter "appendslist" "^ " 
     
    8698bMotion_abstract_add_filter "narfs" {^[^ ]} 
    8799 
    88 bMotion_plugin_add_output "append" bMotion_plugin_output_append 1 "en" 1 
     100bMotion_plugin_add_output "append" bMotion_plugin_output_append 1 "en" 11 
  • trunk/plugins/en/output_typos.tcl

    r961 r1082  
    192192} 
    193193 
    194 bMotion_plugin_add_output "typos" bMotion_plugin_output_typos 1 "all" 15 
     194bMotion_plugin_add_output "typos" bMotion_plugin_output_typos 1 "all" 99  
  • trunk/plugins/en/simple_general.tcl

    r1061 r1082  
    4949bMotion_plugin_add_simple "coffee2" "\[a-z0-9\]+ ?> ?coffee" 90 [list "what" "%VAR{unsmiles}" "%VAR{kills}" "/%VAR{smacks} %%" "traitor!" "you li%REPEAT{1:5:e}!%|YOU LI%REPEAT{4:10:E}%REPEAT{3:5:!}%colen"] "en" 
    5050bMotion_plugin_add_simple "coffee3" "coffee (is |=+ )?(teh |the )?(suck|rubbish|fail|horrible|horrid)" 90 [list "what" "%VAR{unsmiles}" "%VAR{kills}" "/%VAR{smacks} %%" "traitor!" "you li%REPEAT{1:5:e}!%|YOU LI%REPEAT{4:10:E}%REPEAT{3:5:!}%colen"] "en" 
    51 bMotion_plugin_add_simple "lolcats" "i can has " 90 [list "no you fucking can't%|not until you learn to use english right, anyway" "what" "i can has grammar plz" "i has a bucket%|I have placed it over your stupid head." "no you fucking can't" "shut up" "everyone look at %%, they're up to date on all internet memes!%|for example, <%%> all your base are belong to us%|fantastic."] "en" 
     51bMotion_plugin_add_simple "lolcats" "i can has " 60 [list "no you fucking can't%|not until you learn to use english right, anyway" "what" "i can has grammar plz" "i has a bucket%|I have placed it over your stupid head." "no you fucking can't" "shut up" "everyone look at %%, they're up to date on all internet memes!%|for example, <%%> all your base are belong to us%|fantastic."] "en" 
    5252 
    5353bMotion_plugin_add_simple "centipedes" {[a-z]+\? in my [a-z]+\?} 70 [list "it's more likely than you think"] "en" 
     
    5858bMotion_plugin_add_simple "likea-catch" "i do love a good (.+)" 40 [list "me too %VAR{smiles}" "same!" ] "en"  
    5959bMotion_plugin_add_simple "secretcatch" "(secret|sekrit)" 40 [list "we all know %ruser likes to %VAR{dVerbs} themselves with a %VAR{dNouns} %VAR{smiles}" "it was %ruser!" "%VAR{ididntresponses}" ] "en" 
    60 bMotion_plugin_add_simple "andthan-catch" "and( then| than)" 10 [list "and then a bear came" "and then my %VAR{bodypart} %VAR{fellOffs}" "and thaaan?"] "en" 
     60bMotion_plugin_add_simple "andthan-catch" "and( then| than)" 10 [list "and then a %VAR{animals} came" "and then a bear came" "and then my %VAR{bodypart} %VAR{fellOffs}" "and thaaan?"] "en" 
    6161bMotion_plugin_add_simple "choose" "choose (.+)" 30 [list "Choose Life." "Choose a job." "Choose a career." "Choose a family." "Choose a fucking big television" "choose washing machines" "choose cars" "choose compact disc players" "choose electrical tin openers" "Choose good health" "choose low cholesterol" "choose dental insurance" "choose fixed interest mortage repayments" "Choose a starter home." "Choose your friends." "Choose leisurewear and matching luggage." "Choose a three-piece suite on hire purchase in a range of fucking fabrics." "Choose DIY and wondering who the fuck you are on a Sunday morning." "Choose sitting on that couch watching mind-numbing, spirit-crushing game shows, stuffing fucking junk food into your mouth." "Choose rotting away at the end of it all, pishing your last in a miserable home, nothing more than an embarrassment to the selfish, fucked up brats you spawned to replace yourself." ] "en" 
    6262bMotion_plugin_add_simple "the-r" "^r$" 30 [list "%VAR{theRs}" ] "en" 
    63 bMotion_plugin_add_simple "answerR" "r$ %botnicks" 50 [list "%VAR{greetings}" "%VAR{theRs}" ] "en" 
    64 bMotion_plugin_add_simple "lookrobot" "(look robot|look, robot)" 100 [list "I've seen it before, it's rubbish" ":o" "omg" "^_^" ] "en" 
     63bMotion_plugin_add_simple "answerR" "\\mr %botnicks" 50 [list "%VAR{greetings}" "%VAR{theRs}" ] "en" 
     64bMotion_plugin_add_simple "lookrobot" "(look robot|look,? robot|%botnicks look|look,? %botnicks)" 100 [list "I've seen it before, it's rubbish" ":o" "omg" "^_^" ] "en" 
    6565bMotion_plugin_add_simple "inokunfu" "(i know kungfu|i know kung fu)" 100 [list "Show me%|hmh.. your style is un-impressive" "Show me%|hmh.. your style is impressive" ] "en" 
    6666 
     
    7070bMotion_plugin_add_simple "nicecar2" {^nice [^ ]+s!?$} 40 [list "wanna show me what they can do?"] "en" 
    7171 
    72 bMotion_plugin_add_simple "luggage" {^[0-9 -]$} 40 [list "amazing, that's the same combination as my luggage!"] "en" 
     72bMotion_plugin_add_simple "luggage" "^\[0-9\]{5}$" 40 [list "amazing, that's the same combination as my luggage!"] "en" 
     73 
     74bMotion_plugin_add_simple "letme1" "(%botnicks.? let me know when)|(let me know when.? %botnicks)" 100 [list "r" "will do" "sure" "np" "ok"] "en" 
Note: See TracChangeset for help on using the changeset viewer.