Changeset 1084 for trunk


Ignore:
Timestamp:
08/28/10 19:46:27 (21 months ago)
Author:
james
Message:

updated stoplist for append plugin
added support for forcing female and male mixing (:malemixin and :femalemixin)
use ultraprefix for some plurals
more fixes in output_english
more stoplist for complex_spoonerism
stoplist for complex_ass
simple_calls plugin
simple_countries plugin
support for how much question types
fixed action_simple loading
a lot of abstract changes

Location:
trunk
Files:
1 added
13 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/abstract.tcl

    r1051 r1084  
    7373set BMOTION_MIXIN_NONE 2 
    7474set BMOTION_MIXIN_BOTH 3 
     75set BMOTION_MIXIN_FEMALE 4 
     76set BMOTION_MIXIN_MALE 5 
    7577 
    7678if { [bMotion_setting_get "abstractMaxAge"] != "" } { 
     
    435437                        } 
    436438                } 
     439                5 { 
     440                        if [bMotion_abstract_exists "${abstract}_male"] { 
     441                                bMotion_putloglev 1 * "mixing in male version of $abstract" 
     442                                set final_version [concat $final_version [bMotion_abstract_all "${abstract}_male"]] 
     443                        } 
     444                } 
     445                4 { 
     446                        if [bMotion_abstract_exists "${abstract}_female"] { 
     447                                bMotion_putloglev 1 * "mixing in female version of $abstract" 
     448                                set final_version [concat $final_version [bMotion_abstract_all "${abstract}_female"]] 
     449                        } 
     450                } 
     451 
    437452                default { 
    438453                        putlog "bMotion ERROR: unknown mixin type $mixin_type for abstract $abstract" 
  • trunk/modules/abstracts/en/abstracts.tcl

    r1082 r1084  
    392392        "on the desk" 
    393393        "in a book" 
    394         "Devon" 
    395         "Amsterdam" 
     394        "in Devon" 
     395        "in Amsterdam" 
    396396        "a cheese shop" 
    397         "America" 
    398         "Mars" 
     397        "in America" 
     398        "in Mars" 
    399399        "the USS Enterprise" 
    400         "north pole" 
     400        "at the north pole" 
    401401        "in a field" 
    402402        "under a book" 
    403403        "on top of the telly" 
    404404        "in the toilet" 
    405         "Chippenham" 
    406         "New York" 
    407         "%OWNER{%ruser} house" 
    408         "hidden." 
     405        "in Chippenham" 
     406        "in New York" 
     407        "at %ruser{:owner} house" 
    409408        "in the coffee pot" 
    410409        "down the local shop" 
     
    414413        "next to %ruser" 
    415414        "in bed with Madonna" 
    416         "%VAR{cities}" 
     415        "in bed with %ruser{like}" 
     416        "in %VAR{cities}" 
    417417} 
    418418bMotion_abstract_register "answerWellbeing" { 
     
    451451  "%NUMBER{10}.%NUMBER{10}" 
    452452  "zero" 
     453} 
     454 
     455bMotion_abstract_register "answerHowmuch" { 
     456        "just enough" 
     457        "too much" 
     458        "too little" 
     459        "the right amount" 
    453460} 
    454461 
     
    10091016 
    10101017bMotion_abstract_register "bodypart_female" { 
     1018        "front lumps" 
    10111019        "vagina" 
    10121020        "fanny" 
     
    13181326} 
    13191327 
     1328bMotion_abstract_add_filter "ranjoins" "%VAR\{food\}" 
     1329 
    13201330bMotion_abstract_register "food" { 
    13211331        "honey" 
     
    13231333        "marmite" 
    13241334        "bovril" 
    1325         "chocolatespread" 
     1335        "chocolate spread" 
    13261336        "nutella" 
    1327         "peanutbutter" 
     1337        "peanut butter" 
    13281338        "marmalade" 
     1339        "potato croquettes" 
     1340        "bacon" 
     1341        "toasted sandwich" 
     1342        "pizza" 
     1343        "corn flakes" 
    13291344} 
    13301345 
     
    31273142        "well blow me down" 
    31283143        "well i'll be a monkey's uncle" 
     3144        "well shut me up" 
    31293145        "yikes" 
    31303146        "cor" 
     
    48314847        "carrots" 
    48324848        "turnips" 
     4849        "pizza" 
     4850        "corn flakes" 
    48334851} 
    48344852 
     
    57185736} 
    57195737 
     5738bMotion_abstract_register "rooms" { 
     5739        "bathroom" 
     5740        "lounge" 
     5741        "kitchen" 
     5742        "bedroom" 
     5743        "living room" 
     5744        "basement" 
     5745        "cellar" 
     5746        "walk-in wardrobe" 
     5747} 
     5748 
     5749bMotion_abstract_register "musicalinstruments" { 
     5750        "piano" 
     5751        "trombone" 
     5752        "trumpet" 
     5753        "tuba" 
     5754        "xylophone" 
     5755        "harp" 
     5756        "flute" 
     5757        "clarinet" 
     5758        "oboe" 
     5759        "french horn" 
     5760} 
     5761 
     5762bMotion_abstract_register "pluralprefix" { 
     5763        "a bunch of" 
     5764        "a load of" 
     5765        "a lot of" 
     5766        "a metric fucktonne of" 
     5767        "an imperial fuckton of" 
     5768        "a buttload of" 
     5769} 
     5770 
    57205771bMotion_abstract_add_filter "_all" "\{strip\}\}" 
    57215772bMotion_abstract_add_filter "_all" "\}\{strip\}" 
  • trunk/modules/abstracts/en/randomstuff.tcl

    r1082 r1084  
    66### Used when the channel is not 'active' (default > 300s since last line) 
    77bMotion_abstract_register "randomStuff" { 
     8        "i have a MIGHTY NEED to use the %VAR{rooms}" 
    89        "help! my %VAR{bodypart:plural} are escaping!" 
    910        "%REPEAT{7:7:ring }%VAR{fruits} phone" 
     
    260261        "i hope you won't think it \"evil\" of me to ask how you got that stylish headwound" 
    261262        "getting my brain out was the easy part. the hard part was getting my brain out%|muwahahahahaha" 
     263        "getting my %VAR{bodypart} out was the easy part. the hard part was getting my %VAR{bodypart:prev} out%|muwahahahahaha" 
    262264        "they're all like, stop spraying me with ink, %me, stop eating the garbage, %me" 
    263265        "Meanwhile in Universe A, %me A heads towards the Sun%|A." 
     
    302304        "I didn't touch it." 
    303305        "my zipper's stuck %VAR{unsmiles}" 
     306        "my %VAR{clothes}'s stuck %VAR{unsmiles}" 
    304307        "my %VAR{bodypart} is hurting %VAR{unsmiles}" 
    305308        "my %VAR{bodypart} is %VAR{sillyVerbs:presentpart}" 
     
    328331        "How do you make %ruser{enemy} laugh on Friday? A: Tell him a joke on Monday!" 
    329332        "my knees feel lovely %VAR{smiles}" 
     333        "my %VAR{bodypart:plural} feel lovely %VAR{smiles}" 
    330334        "that was a fucking rough game up yours" 
    331335        "very flickable considering its length and bulk" 
     
    346350        "if he's good enough for %ruser, he's good enough for me" 
    347351        "here's a photograph of my fist" 
     352        "here's a photograph of my %VAR{bodypart}" 
    348353        "i've had a fiddle with it but never used it properly" 
    349354        "I often walk about with someone elses dick in my arse                                  " 
     
    354359        "Dodongo dislikes %VAR{sillyThings}" 
    355360        "%ruser needs food, badly! %VAR{unsmiles}" 
    356         "%ruser has shot the food! %VAR{unsmiles}" 
     361        "%ruser needs food, badly! %VAR{unsmiles}%|/gives %ruser{prev} some %VAR{foods}%|/helped." 
     362        "%ruser has shot the food! %VAR{unsmiles}%}%BOT[noooo my %VAR{foods}]" 
    357363        "%ruser has shot the potion! %VAR{unsmiles}" 
    358364        "%ruser now has reflecting shots! %VAR{smiles}" 
     
    397403### Mixed in with list above 
    398404bMotion_abstract_register "randomStuff_male" { 
    399         "I always thought the most sensual part of a woman was the %VAR{bodypart:revmixin}" 
     405        "I always thought the most sensual part of a woman was the %VAR{bodypart:female_mixin}%|mmm... %ruser{female}%VAR{bodypart:prev,plural}" 
    400406        "Looks like the squirrel's been showing everyone where he keeps his nuts." 
    401407        "You wanna see some stuff I'm not supposed to show anyone?" 
     
    430436 
    431437bMotion_abstract_register "randomStuff_female" { 
     438        "I always thought the most sensual part of a man was the %VAR{bodypart:male_mixin}%|mmm... %ruser{male}%VAR{bodypart:prev,plural}" 
    432439        "i'm so fat i broke %NUMBER{100} toilets %VAR{unsmiles}" 
    433440        "i'm so fat i broke %NUMBER{100} toilets %VAR{unsmiles}%|%BOT[at once]" 
     
    612619        "i don't know what you're talking about" 
    613620        "do we have any solaris 9 boxes with solaris 9 on?" 
    614         "that's not chocolate anyway %ruser{enemy}" 
     621        "that's not a %VAR{fruits} anyway %ruser{enemy}" 
    615622        "Yeah, I was up that" 
    616623        "yeah, keep it open until I'm sure" 
     
    620627        "didn't you just pump it out on the ground" 
    621628        "er, not that far in, would be really painful at this time of night" 
     629        "er, not that far in, would be really painful at this time of %daytime" 
    622630        "shouldn't be a problem unless you keep re-using the same tissue" 
     631        "shouldn't be a problem unless you keep re-using the same %VAR{sillyThings:strip}" 
    623632        "push the stinky dribbling fuck into the sea            " 
    624633        "mount them so you can alter their thrust                                                                               " 
     
    633642        "and now what?" 
    634643        "but is it art?" 
    635         "why don't i just jump out of a plane with a piano glued to my face" 
     644        "why don't i just jump out of a plane with a %VAR{musicalinstruments} glued to my face" 
    636645        "i want mine with sprinkles" 
    637646        "now back to Reducto's to enlarge myself!" 
    638647        "%ruser is under some kind of spell. that's why i don't have to cover my mouth fully while i talk" 
    639648        "who... does... number... two... work... for?" 
     649        "who... does... number... %NUMBER{50}... work... for?" 
    640650        "you show that turd who's boss" 
    641651        "i've been to some conventions like that" 
     
    652662        "I'll take the case!" 
    653663        "That means in the future I'm going to have sex! With a woman!" 
     664        "That means in the future I'm going to have sex! With %VAR{sillyThings}!" 
    654665        "Oooh that's hot! Say it again!" 
    655666} 
  • trunk/plugins/action_simple.tcl

    r726 r1084  
    2020 
    2121# now autoload the rest from plugins/action_simple_*.tcl 
    22  
    23 set files [glob -nocomplain "$bMotionPlugins/action_simple_*.tcl"] 
     22set currentlang $bMotionInfo(language) 
     23set files [glob -nocomplain "$bMotionPlugins/$currentlang/action_simple_*.tcl"] 
    2424foreach f $files { 
    2525        set count [llength [array names bMotion_plugins_action_simple]] 
  • trunk/plugins/en/action_simple_general.tcl

    r936 r1084  
    1515bMotion_plugin_add_action_simple "moo" "^(goes |does a )?moo+s?( at %botnicks)?" 40 [list "%VAR{moos}"] "en" 
    1616 
     17bMotion_plugin_add_action_simple "calls" "calls %botnicks \[a-z\]" 100 [list "r" "%VAR{smiles}" "well slap my ass and call me that thing you said!" "that's not my name!"] "en" 
     18 
  • trunk/plugins/en/complex_ass.tcl

    r936 r1084  
    2121 
    2222        if [regexp -nocase {([a-z]+)[- ]ass ([a-z]+)} $text matches 1 2] { 
    23                 bMotionDoAction $channel "" "$1 ass-$2" 
     23                if {![regexp -nocase "so" $2]} { 
     24                        bMotionDoAction $channel "" "$1 ass-$2" 
     25                } else { 
     26                        return 0 
     27                } 
     28        } else { 
     29                return 0 
    2430        } 
    2531} 
  • trunk/plugins/en/complex_invader.tcl

    r1082 r1084  
    9595        "MADNESS%colen" 
    9696        "have you the brain worms?" 
     97        "have you the %VAR{bodypart} worms?" 
    9798        "you won't make a fool of this Irken invader" 
    9899        "I'll just have to wait for the skin to grow back on my eyeballs" 
     
    114115        "say, you're full of organs aren't you? and you wouldn't notice if you were missing a few?"     "evaluation: PATHETIC%colen" 
    115116        "Evaluation: LEMON FRESH%colen" 
     117        "Evaluation: %VAR{fruits:caps} FRESH%colen" 
    116118        "surely that was no human bee!" 
    117119        "when the repairs are done i shall hunt down that evil death bee." 
     
    202204        "activate the shrinky self-destruct!" 
    203205        "you dare insult the pants of %me%colen" 
     206        "you dare insult to %VAR{clothes:plural} of %me%colen" 
    204207        "get off of me! you smell like human!" 
    205208        "%ruser... analysis: moron!" 
     
    240243        "doo dee doo dedo deee do" 
    241244        "i got chocolate bubblegum!" 
     245        "i got %VAR{fruits} bubblegum!" 
     246        "i got %VAR{vegetables} bubblegum!" 
    242247        "hooray for earth!" 
    243248        "weee hehehehehehehehe" 
     
    257262        "i like TV" 
    258263        "aw... i wanted to explode" 
     264        "aw... i wanted to %VAR{sillyVerbs}" 
    259265        "I'm guarding the house" 
    260266        "thank you... i love you." 
     
    313319 
    314320# "zim" plugin responds to "invade or invasion" "zim" "mwahahaha or hahaha" "victory for" "how dare" "you dare" 
    315 bMotion_plugin_add_complex "invader(zim)" "zim|inva(de|sion)|((mwa)?ha(ha)+)|(victory for)|((you|how) dare)" 20 "bMotion_plugin_complex_invader_zim" "en" 
     321bMotion_plugin_add_complex "invader(zim)" "zim|inva(de|sion)|((mwa)?ha(ha)+)|(victory for)|((you|how) dare)" 15 "bMotion_plugin_complex_invader_zim" "en" 
    316322 
    317323# "gir" plugin responds to "gir" "whooo or wooo" "chicken" "doom" "piggy", now with new improved "finally! 
  • trunk/plugins/en/complex_questions.tcl

    r1060 r1084  
    454454proc bMotion_plugin_complex_question_much { nick channel host } { 
    455455    bMotion_putloglev 2 * "$nick how much question" 
    456   bMotionDoAction $channel [bMotionGetRealName $nick $host] "%VAR{answerHowmanys}" 
     456  bMotionDoAction $channel [bMotionGetRealName $nick $host] "%VAR{answerHowmuch}" 
    457457  return 1 
    458458} 
  • trunk/plugins/en/complex_spoonerism.tcl

    r1082 r1084  
    7272 
    7373        if [regexp -nocase {([a-z]+)less ([a-z]+)\M} $text matches one two] { 
    74                 if [regexp -nocase "(un|use|b)" $one] { 
     74                if [regexp -nocase {^(un|use|b|regard)$} $one] { 
    7575                        return 0 
    7676                } 
    7777 
    78                 if [regexp -nocase "(one)" $two] { 
     78                if [regexp -nocase {^(one|of|n)$} $two] { 
    7979                        return 0 
    8080                } 
  • trunk/plugins/en/complex_sucks.tcl

    r1079 r1084  
    1717        global botnicks 
    1818 
     19        set stoplist "^(t|teh|the|that|you|which|that|it|what|they)$" 
     20 
    1921        if [regexp -nocase {([a-z0-9]+) (all )?suck[.!]*$} $text matches item] { 
    20                 bMotionDoAction $channel $item "%VAR{sucks}" 
    21                 return 1 
     22                if {![regexp -nocase $stoplist $item]} { 
     23                        bMotionDoAction $channel $item "%VAR{sucks}" 
     24                        return 1 
     25                } 
    2226        } 
    2327 
    2428        if [regexp -nocase {^([a-z0-9]+) sucks} $text matches item] { 
    25                 if [regexp -nocase "^(teh|the|that|you|which|that|it|what)$" $item] { 
     29                if [regexp -nocase $stoplist $item] { 
    2630                        return 0 
    2731                } 
  • trunk/plugins/en/output_VAR.tcl

    r1082 r1084  
    2525        bMotion_putloglev 4 * "bMotion_plugin_output_VAR $channel $line" 
    2626        global BMOTION_MIXIN_NONE BMOTION_MIXIN_REVERSE BMOTION_MIXIN_DEFAULT BMOTION_MIXIN_BOTH 
     27        global BMOTION_MIXIN_MALE BMOTION_MIXIN_FEMALE 
    2728         
    2829        set line [string map { "%noun" "%VAR{sillyThings}" } $line] 
     
    5960                        bMotion_putloglev 1 * "mixin type for $abstract is both" 
    6061                        set mixin_type $BMOTION_MIXIN_BOTH 
     62                } elseif {[lsearch $options_list "malemixin"] > -1} { 
     63                        bMotion_putloglev 1 * "mixin type for $abstract is male" 
     64                        set mixin_type $BMOTION_MIXIN_MALE 
     65                } elseif {[lsearch $options_list "femalemixin"] > -1} { 
     66                        bMotion_putloglev 1 * "mixin type for $abstract is female" 
     67                        set mixin_type $BMOTION_MIXIN_FEMALE 
    6168                } 
    6269 
     
    131138                                        bMotion_putloglev 1 * "pluralising $replacement" 
    132139                                        set replacement [bMotionMakePlural $replacement] 
    133                                         putlog $replacement 
     140                                        if {[rand 100] > 90} { 
     141                                                set replacement [bMotion_strip_article $replacement] 
     142                                                set replacement "%VAR{pluralprefix} $replacement" 
     143                                                if {[lsearch "strip" $options_list] > -1} { 
     144                                                        set replacement [bMotion_strip_article $replacement] 
     145                                                } 
     146                                        } 
    134147                                } 
    135148                                "owner" { 
  • trunk/plugins/en/output_append.tcl

    r1082 r1084  
    1515 
    1616proc bMotion_plugin_output_append { channel line } { 
    17         putlog "running append plugin" 
    1817        set length [string length $line] 
    1918        set n [rand 100] 
  • trunk/plugins/en/output_english.tcl

    r1049 r1084  
    3737  } 
    3838 
    39         #"a an" and "an a" are wrong 
    40         regsub -nocase -all "(a an|an a) " $line "" "a" 
    4139 
    4240  #"a" before a vowel needs to be "an" 
     
    4846        # a(n) before a number is wrong more often than it is right 
    4947        regsub -nocase -all {an? ([0-9]+)} $line {\1} line 
     48 
     49        #"a an" and "an a" are wrong 
     50        regsub -nocase -all "(a an|an a) " $line "" "a" 
    5051 
    5152  if {[rand 100] > 60} { 
     
    6061  } 
    6162 
     63        regsub -all "an? some" $line "some" line 
     64 
     65        regsub -all "you is " $line "you are " line 
     66 
     67        regsub -all "the an?" $line "the" line 
     68 
    6269        #fix double (or more) spaces 
    6370        regsub -all "  +" $line " " line 
     
    6875        regsub -all {\myou is\M} $line "you are" line 
    6976 
     77        #fix gap before full stop 
     78 
     79        #TODO: fix 
     80        regexp -all { +\\.} $line "." line 
     81 
    7082        # fix american spellings 
    7183        # TODO: make this an option or US bots can talk wrong english and UK bots can talk right english 
Note: See TracChangeset for help on using the changeset viewer.