WoTMUD Archives

A player-run forum for the Wheel of Time MUD
It is currently Sun Dec 09, 2018 3:42 pm

All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 14 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Sun May 14, 2017 6:16 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
House of Medakan cMUD Scripts
Non-links are in the process of being converted from zMUD to cMUD
Any bugs, comments, or suggestions please mail Taziar here at Archives.

Installation Instructions for cMUD
Each character should have their own icon to connect to the mud.
Character name must be saved in the Name: field of the Auto Login tab.
These steps allow the %char variable to contain the name of the connected character.
Without the %char variable, many of the House of Medakan scripts will fail.


Table of Contents
    Characters [Updated: 9/29/2018]
    ClanChest
    Clumsy [Updated: 9/5/2018]
    Colors
    Comms [Updated: 8/25/2018]
    Doors [Updated: 8/26/2018]
    Five15 [Updated: 8/26/2018]
    Log [Updated: 8/26/2018]
    Map [Updated: 10/06/2018]
    MeleeRound
    Mounts [Released: 10/20/2018]
    Practice
    Pulse Timer (aka spinning timer) [Updated: 10/16/2018]
    Rent
    Sailing
    Scan
    ScoreStatTime [Updated: 8/31/2018]
    Source
    Statting [Updated: 8/26/2018]
    Target
    TicBar
    Tracking
    Vote
    WeaveClumsy

Custom cMUD Scripts (scripts written on request)
    none

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Last edited by Taziar on Sat Oct 20, 2018 9:32 pm, edited 32 times in total.

Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Sun May 14, 2017 6:20 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
May have issues with manual tracking

Quick version of Tracking script for cMUD per Club's request.
zMUD version and instructions located here: Tracking

Code:
#CLASS {Tracking}
#ALIAS helpTracking {
   #PRINT {""}
   #PRINT {" -----Tracking Help File-----"}
   #PRINT {""}
   #PRINT {" Places directional characters around direction word to aid in quick visualization of tracks."}
   #PRINT {""}
   #PRINT {"  Colors specific text in both auto track and manual track lines."}
   #PRINT {"  Type helpTrackColor for track color specific commands list."}
   #PRINT {""}
   #PRINT {"  Changes the upper and lower case of specific text in track lines."}
   #PRINT {"  Type helpTrackCase for caps specific commands list."}
   #PRINT {""}
   }
#ALIAS helpTrackColor {
   #PRINT {""}
   #PRINT {""}
   #PRINT {" -----Track Color Help File-----"}
   #PRINT {""}
   #PRINT {" Type trackColor <type> <color> to set color for specified track type."}
   #PRINT {" Note: trackColor entered without a type and color will display list of available types."}
   #PRINT {""}
   #PRINT {" Available types:"}
   #PRINT {"  bloody     -text color for bloody traces."}
   #PRINT {"  character  -text color of symbols that encompass track direction"}
   #PRINT {"  direction  -text color of the cardinal directions {north|south|east|west|up|down}"}
   #PRINT {"  dreadlord  -text color when tracking a dreadlord."}
   #PRINT {"  human      -text color when tracking a human."}
   #PRINT {"  mount      -text color when tracking a ridden mount."}
   #PRINT {"  myrddraal  -text color when tracking a myrddraal."}
   #PRINT {"  player     -text color when tracking player names."}
   #PRINT {"  seanchan   -text color when tracking a seanchan."}
   #PRINT {"  trolloc    -text color when tracking a trolloc."}
   #PRINT {""}
   }
#ALIAS helpTrackCase {
   #PRINT {""}
   #PRINT {""}
   #PRINT {" -----Track Case Help File-----"}
   #PRINT {""}
   #PRINT {" Type trackCase <type> to toggle the upper and lower cases for track types."}
   #PRINT {" Note: trackCase entered without a type will display list of available types."}
   #PRINT {""}
   #PRINT {" Available types:"}
   #PRINT {"  bloody     -toggle the upper and lower case of bloody traces."}
   #PRINT {"  direction  -toggle the upper and lower case of the cardinal directions."}
   #PRINT {"  dreadlord  -toggle the upper and lower case of dreadlord."}
   #PRINT {"  human      -toggle the upper and lower case of human."}
   #PRINT {"  mount      -toggle the upper and lower case of ridden mount."}
   #PRINT {"  myrddraal  -toggle the upper and lower case of myrddraal."}
   #PRINT {"  player     -toggle the upper and proper case of a players name."}
   #PRINT {"  seanchan   -toggle the upper and lower case of seanchan."}
   #PRINT {"  trolloc    -toggle the upper and lower case of trolloc."}
   #PRINT {""}
   }
#ALIAS trackColor {
   #PRINT {""}
   #PRINT {""}
   #IF (%null(%1)) {
      #PRINT {"  Usage: trackColor <type> <color>"}
      #PRINT {""}
      #PRINT {" Available types:"}
      #PRINT {"  bloody"}
      #PRINT {"  character"}
      #PRINT {"  direction"}
      #PRINT {"  dreadlord"}
      #PRINT {"  human"}
      #PRINT {"  mount"}
      #PRINT {"  myrddraal"}
      #PRINT {"  player"}
      #PRINT {"  seanchan"}
      #PRINT {"  trolloc"}
      #PRINT {""}
      #ABORT 1
      } {}
   #IF (%class(%concat("trackColor",%1))=-1) {
      #PRINT {%1 is an invalid type selection...}
      #ABORT 1
      } {
      #IF (%colorname(%2)=536870911 AND %color(%2)=0) {
         #VAR %concat("trackColor",%1) {}
         #PRINT {" "%2 is an invalid color. %concat("trackColor",%proper(%1)) variable cleared.}
         } {
         #IF (%len(%3)) {#VAR %concat("trackColor",%1) {%concat(%2," ",%3)}} {#VAR %concat("trackColor",%1) {%2}}
         #PRINT {"Color set: "@trackMXPcolor(%eval(%concat("@","trackColor",%1)),%1)}
         }
      }
   }
#ALIAS trackCase {
   #PRINT {""}
   #PRINT {""}
   #IF (%null(%1)) {
      #PRINT {"  Usage: trackCase <type>"}
      #PRINT {""}
      #PRINT {" Available types:"}
      #PRINT {"  bloody"}
      #PRINT {"  direction"}
      #PRINT {"  dreadlord"}
      #PRINT {"  human"}
      #PRINT {"  mount"}
      #PRINT {"  myrddraal"}
      #PRINT {"  player"}
      #PRINT {"  seanchan"}
      #PRINT {"  trolloc"}
      #PRINT {""}
      #ABORT 1
      }
   #IF (%class(%concat("trackCase",%1))=-1) {
      #PRINT {%-1 is an invalid type selection...}
      #ABORT 1
      } {
      #IF (%eval(%concat("@","trackCase",%1))) {#VAR %concat("@","trackCase",%proper(%1)) {0} {_nodef} "Tracking"} {#VAR %concat("@","trackCase",%proper(%1)) {1} {_nodef} "Tracking"}
      #IF (%lower(%1)="bloody") {
         #IF (@trackCaseBloody) {#PRINT {BLOODY TRACES are now upper case.}} {#PRINT {bloody traces are now lower case.}}
         #ABORT 1
         } {}
      #IF (%lower(%1)="direction") {
         #IF (@trackCaseDirection) {#PRINT {NORTH|EAST|SOUTH|WEST|UP|DOWN are now upper case.}} {#PRINT {north|east|south|west|up|down are now lower case.}}
         #ABORT 1
         } {}
      #IF (%lower(%1)="mount") {
         #IF (@trackCaseMount) {#PRINT {RIDDEN MOUNT is now upper case.}} {#PRINT {ridden mount is now lower case.}}
         #ABORT 1
         } {}
      #IF (%lower(%1)="player") {
         #IF (@trackCasePlayer) {#PRINT {PLAYER NAME is now upper case.}} {#PRINT {Player Name is now proper case.}}
         #ABORT 1
         } {}
      #IF (%eval(%concat("@","trackCase",%1))) {#PRINT {%upper(%1) is now upper case.}} {#PRINT {%lower(%1) is now lower case.}}
      }
   }
#VARFUNC trackMXPcolor {<color %1>%1</color> is now set as your <color %1>%proper(%2)</color> text color.}
#VARFUNC trackMXPcolorAuto {<color %1>%2</color> of a <color %3>%4</color> leaving <color %5>%6</color><color %7>%8</color><color %5>%6</color>}
#VARFUNC trackMXPcolorBloody {<color %1>%2</color><color %3>%4</color> tracks of <color %5>%6</color> leaving <color %7>%8</color><color %9>%10</color><color %7>%8</color>}
#VARFUNC trackMXPcolorManual {<color %1>%2</color> leaving <color %3>%4</color><color %5>%6</color><color %3>%4</color>}
#VAR trackCaseBloody {0}
#VAR trackCaseDirection {1}
#VAR trackCaseDreadlord {0}
#VAR trackCaseHuman {0}
#VAR trackCaseMount {0}
#VAR trackCaseMyrddraal {0}
#VAR trackCasePlayer {0}
#VAR trackCaseSeanchan {0}
#VAR trackCaseTrolloc {0}
#VAR trackCharacterDirectional {}
#VAR trackCharacterDown {--}
#VAR trackCharacterEast {>>}
#VAR trackCharacterNorth {^^}
#VAR trackCharacterSouth {vv}
#VAR trackCharacterUp {++}
#VAR trackCharacterWest {<<}
#VAR trackColorBloody {red}
#VAR trackColorCharacter {darkorchid}
#VAR trackColorDirection {steelblue}
#VAR trackColorDreadlord {firebrick}
#VAR trackColorHuman {steelblue}
#VAR trackColorMount {blue}
#VAR trackColorMyrddraal {firebrick}
#VAR trackColorPlayer {firebrick}
#VAR trackColorSeanchan {magenta}
#VAR trackColorTracks {}
#VAR trackColorTrolloc {red}
#VAR trackColorType {}
#VAR trackDirectionSub {}
#VAR trackManualTime {fresh|recent|fairly recent|almost day-old|day-old|two day-old|three day-old|half week-old|week-old}
#VAR trackManualType {obvious |clear ||faint |rather faint |very faint }
#VAR trackTracesSub {}
#VAR trackTypeList {dreadlord|human|myrddraal|ridden mount|seanchan|trolloc}
#VAR trackTypeSub {}
#TRIGGER "trackExitsTrigger" {^~[ obvious exits: * ~]$} {
   #T+ {trackAutoTrigger}
   #T+ {trackAutoPromptTrigger}
   } "" {case}
#TRIGGER "trackAutoPromptTrigger" {{*|o}{ R | | S }HP:} {
   #T- {trackAutoPromptTrigger}
   #T- {trackAutoTrigger}
   } "" {case|disable|nocr|prompt}
#TRIGGER "trackAutoTrigger" {^There are some ({tracks|bloody traces}) of a ({@trackTypeList}) leaving (%w).$} {
   #PRIORITY {
      #IF (%1="tracks") {
         #VAR trackColorTracks {}
         #VAR trackTracesSub {%1}
         } {
         #VAR trackColorTracks {@trackColorBloody}
         #IF (@trackCaseBloody) {#VAR trackTracesSub {%upper(%1)}} {#VAR trackTracesSub {%1}}
         }
      #IF (%2="ridden mount") {
         #IF (@trackCaseMount) {#VAR trackTypeSub {RIDDEN MOUNT}} {#VAR trackTypeSub {ridden mount}}
         #VAR trackColorType {@trackColorMount}
         } {
         #IF (%eval(%concat("@trackCase",%2))) {#VAR trackTypeSub {%upper(%2)}} {#VAR trackTypeSub {%2}}
         #IF (%ismember(%2,@trackTypeList)) {#VAR trackColorType {%eval(%concat("@trackColor",%2))}} {#VAR trackColorType {}}
         }
      #IF (@trackCaseDirection) {#VAR trackDirectionSub {%upper(%3)}} {#VAR trackDirectionSub {%3}}
      #VAR trackCharacterDirectional {%eval(%concat("@trackCharacter",%3))}
      #SUB {There are some @trackMXPcolorAuto(@trackColorTracks,@trackTracesSub,@trackColorType,@trackTypeSub,@trackColorCharacter,@trackCharacterDirectional,@trackColorDirection,@trackDirectionSub)}
      }
   } "" {case|disable}
#ONINPUT {^{tr|tra|trac|track}$} {
   #T+ {Tracking|TrackManual}
   #T+ {trackSomeTrigger}
   } "" {}
#CLASS 0
#CLASS {Tracking|TrackManual} {disable}
#TRIGGER {^Cancelled.$} {#T- {Tracking|TrackManual}} "" {case}
#TRIGGER {^You could find no tracks at all.$} {#T- {Tracking|TrackManual}} "" {case}
#TRIGGER "trackSomeTrigger" {^Some} {
   #T- {trackSomeTrigger}
   #T+ {trackManualPromptTrigger}
   } "" {case}
#TRIGGER {You can't track indoors or in cities.$} {#T- {Tracking|TrackManual}} "" {case}
#TRIGGER "trackManualPromptTrigger" {{*|o}{ R | | S }HP:} {
   #T- {trackManualPromptTrigger}
   #T- {Tracking|TrackManual}
   } "" {case|disable|nocr|prompt}
#TRIGGER "trackBloodyTrigger" {^Some ({@trackManualType}{@trackManualTime}) bloody traces of a ([A-Z]%w) leaving (%w).$} {
   #IF (@trackCaseBloody) {#VAR trackTracesSub {BLOODY TRACES}} {#VAR trackTracesSub {bloody traces}}
   #IF (%eval(%concat("@trackCase",%2))) {#VAR trackTypeSub {%upper(%2)}} {#VAR trackTypeSub {%2}}
   #IF (%ismember(%2,@trackTypeList)) {#VAR trackColorType {%eval(%concat("@trackColor",%2))}} {#VAR trackColorType {}}
   #IF (@trackCaseDirection) {#VAR trackDirectionSub {%upper(%3)}} {#VAR trackDirectionSub {%3}}
   #VAR trackCharacterDirectional {%eval(%concat("@trackCharacter",%3))}
   #SUB {Some %1 @trackMXPcolorBloody(@trackColorBloody,@trackTracesSub,@trackColorType,@trackTypeSub,@trackColorCharacter,@trackCharacterDirectional,@trackColorDirection,@trackDirectionSub)}
   } "" {case}
#TRIGGER "trackPlayerTrigger" {^Some ({@trackManualType}{@trackManualTime} tracks of) ([A-Z]%w) leaving (%w).$} {
   #IF (@trackCasePlayer) {#VAR trackTypeSub {%upper(%2)}} {#VAR trackTypeSub {%2}}
   #IF (@trackCaseDirection) {#VAR trackDirectionSub {%upper(%3)}} {#VAR trackDirectionSub {%3}}
   #VAR trackCharacterDirectional {%eval(%concat("@trackCharacter",%3))}
   #SUB {Some %1 @trackMXPcolorManual(@trackColorPlayer,@trackTypeSub,@trackColorCharacter,@trackCharacterDirectional,@trackColorDirection,@trackDirectionSub)}
   } "" {case}
#TRIGGER "trackRiddenTrigger" {^Some ({@trackManualType}{@trackManualTime} tracks of {a|an}) (*) ~(ridden~) leaving (%w).$} {
   #IF (@trackCaseMount) {#VAR trackTypeSub {%upper(%2)}} {#VAR trackTypeSub {%2}}
   #IF (@trackCaseDirection) {#VAR trackDirectionSub {%upper(%3)}} {#VAR trackDirectionSub {%3}}
   #VAR trackCharacterDirectional {%eval(%concat("@trackCharacter",%3))}
   #SUB {Some %1 @trackMXPcolorManual(@trackColorMount,@trackTypeSub,@trackColorCharacter,@trackCharacterDirectional,@trackColorDirection,@trackDirectionSub)}
   } "" {case}
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Wed Aug 23, 2017 11:31 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----Characters-----
    [Updated: 9/29/2018]
Each character should have their own icon to connect to the mud.
Character name must be saved in the Name: field of the Auto Login tab.
These steps allow the %char variable to contain the name of the connected character.
Without the %char variable, many of the House of Medakan scripts will fail.


Separating macros and alias for all of your characters can help manage different class play styles.
Characters script creates and enables individual character class folders on connection.

Inside #CLASS {Characters} adjust all common factors used by all of your characters (alias, macros, ect...)
All default assigned macros will need to be adjusted for each character's preferences.

Type helpCharacters to view help file in client.

Shared Keys (macros): DEC|KEY0|KEY1|KEY2|KEY3|KEY4|KEY5|KEY6|KEY7|KEY8|KEY9

F-Keys (macros): F1|F2|F3|F4|F5|F6|F7|F8|F9|F10|F11|F12
    Note: F-Keys are also shared across all characters.

Individual Character Keys (macros): ADD|DIV|END|HOME|MULT|PGDN|PGUP|SUB

Insert Key (INS): Displays zone page for the WoTMUD Wiki of the current zone in mapper.
    Note: this function is compatible only when using the WoTMUD Wiki zMap.
      Hint: browser defaults to main wiki page if WoTMUD Wiki Map is not installed.

This script may be the most in need of customization of all the HoM scripts to gain full benefit from it. Move macros and alias around as necessary.
Macros (#KEY) located in main class are for all characters to use, Macros created in the named class are individual per character.

Direct download link: CharactersCmud.txt

Active Triggers: 0/0
Events: onConnect
Code:
#CLASS {Characters}
#ALIAS helpCharacters {
   #PRINT {%crlf <color @charColorInfo>-----Characters Help File-----</color>}
   #PRINT {<color @charColorInfo>      [Updated: 9/29/2018]</color>}
   #PRINT { Characters script creates and enables individual character classes on connection.}
   #PRINT { Each character should have their own icon that they connect to the mud with.}
   #PRINT {  Note: character name must be saved in the Name: field inside the Auto Login tab of that icon.}
   #PRINT {}
   #PRINT { Default keypad macros are created in Characters class folder.}
   #PRINT { All macros in both the Characters class folder and individual character}
   #PRINT {  folders will need to be set to each individual character's preferences.}
   #PRINT {}
   #PRINT { To set a macro open the settings window, select Characters script.}
   #PRINT { Replace the '#PRINT {not defined...}' with command(s) of choice }
   #PRINT {  Note: individual character macros will be inside their corresponding folder.}
   #PRINT {}
   #PRINT { Shared Keys (macros): DEC|KEY0|KEY1|KEY2|KEY3|KEY4|KEY5|KEY6|KEY7|KEY8|KEY9}
   #PRINT {  Note: shared keys are used by all characters.}
   #PRINT {}
   #PRINT { F-Keys (macros): F1|F2|F3|F4|F5|F6|F7|F8|F9|F10|F11|F12}
   #PRINT {  Note: all F-Keys are shared and used by all characters.}
   #PRINT {}
   #PRINT { Individual Character Keys (macros): ADD|DIV|END|HOME|MULT|PGDN|PGUP|SUB}
   #PRINT {}
   #PRINT { Insert Key (INS): Displays zone page for the WoTMUD Wiki of the current zone in mapper.}
   #PRINT {  Hint: browser window will open the main wiki page if WoTMUD Wiki map in not installed.}
   #PRINT {}
   }
#VAR charColorInfo dodgerblue
#KEY DEC {notice}
#KEY INS {#URL %concat("http://wotmud.wikia.com/wiki/",%zonename())}
#KEY KEY0 {find}
#KEY KEY1 {where}
#KEY KEY2 {s}
#KEY KEY3 {d}
#KEY KEY4 {w}
#KEY KEY5 {look}
#KEY KEY6 {e}
#KEY KEY7 {flee}
#KEY KEY8 {n}
#KEY KEY9 {u}
#KEY F1 {#PRINT {not defined...}}
#KEY F10 {#PRINT {not defined...}}
#KEY F11 {#PRINT {not defined...}}
#KEY F12 {#PRINT {not defined...}}
#KEY F2 {#PRINT {not defined...}}
#KEY F3 {#PRINT {not defined...}}
#KEY F4 {#PRINT {not defined...}}
#KEY F5 {#PRINT {not defined...}}
#KEY F6 {#PRINT {not defined...}}
#KEY F7 {#PRINT {not defined...}}
#KEY F8 {#PRINT {not defined...}}
#KEY F9 {#PRINT {not defined...}}
#EVENT onConnect {
   #IF (%class(Characters|%char)=-1) {
      #CLASS {Characters|%char} {disable}
      #CLASS 0
      #KEY ADD {#PRINT {not defined...}} {Characters|%char}
      #KEY DIV {#PRINT {not defined...}} {Characters|%char}
      #KEY END {#PRINT {not defined...}} {Characters|%char}
      #KEY HOME {#PRINT {not defined...}} {Characters|%char}
      #KEY MULT {#PRINT {not defined...}} {Characters|%char}
      #KEY PGDN {#PRINT {not defined...}} {Characters|%char}
      #KEY PGUP {#PRINT {not defined...}} {Characters|%char}
      #KEY SUB {#PRINT {not defined...}} {Characters|%char}
      } {
      #T+ {Characters|%char}
      }
   }
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Last edited by Taziar on Sun Sep 30, 2018 1:42 am, edited 3 times in total.

Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Fri Jul 20, 2018 7:55 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----Statting-----
    [Updated: 8/26/2018]

Botting on WoTmud is against the rules, using triggers is not.
When using the automatic statting option you must stay at the keyboard, or you could be zapped for botting.

Use script at your own risk.

Must have at least 2 saplings in room as script targets 2.sapling

Records stats automatically: race class homeland STR INT WIL DEX CON SUM
(saves files in package folder of your cMUD program file as StatRecordNAME.txt)

Type setStats <STR> <INT> <WIL> <DEX> <CON> <SUM> to set statting minimums.

Type setLightContainer <lightSource> <container> to set light source and container.

Type autoStat to start statting automatically.

Direct Download Link: StattingCmud.txt

Active Triggers: 0/16

Code:
#CLASS {Statting}
#ALIAS helpStatting {
   #PRINT {%crlf %crlf "-----Statting Help File-----"}
   #PRINT {"     [Updated: 8/26/2018]"}
   #SHOW {" Botting on WoTmud is against the rules, using triggers is not."}
   #SHOW {"  When using the automatic statting option you must stay at the keyboard,"}
   #SHOW {"   or you could be zapped for botting. Use script at your own risk."}
   #SHOW {""}
   #SHOW {" Must have at least 2 saplings in room as script targets 2.sapling"}
   #SHOW {""}
   #SHOW {" Records stats automatically (for current character: "%concat(StatRecord,%char)".txt)"}
   #SHOW {"  Save format: race class homeland STR INT WIL DEX CON SUM"}
   #SHOW {"   Note: cMUD saves this as .txt file in the package folder in the cMUD folder"}
   #SHOW {""}
   #SHOW {" Type autoStat to start statting automatically."}
   #PRINT {" WARNING: Botting can lead to zapping, bot at your own risk..."}
   #SHOW {"  "Hint: keep @stattingLight in @stattingContainer for autoStat day/night triggers.}
   #SHOW {""}
   #SHOW {" Type setStats <STR> <INT> <WIL> <DEX> <CON> <SUM> to set statting minimums."}
   #SHOW {"  Example: setStats 15 19 19 18 15 82 to set individual requirements."}
   #SHOW {"   Script will trigger if all stats rolled is = or > ALL stat requirements."}
   #SHOW {"    Stat SUM will trigger any roll if SUM is = or > set number."}
   #SHOW {"     Hint: Type setStats without parameters to view current set stat minimums."}
   #SHOW {""}
   #SHOW {" Type setLightContainer <lightSource> <container> to set light source and container."}
   #SHOW {"  Example: setLightContainer mirrored pouch"}
   #SHOW {"   Sets light source keyword as mirrored and container keyword to pouch. "}
   #PRINT {"    (current keywords: "@stattingLight @stattingContainer")"}
   #SHOW {""}
   #SHOW {" Type stopStat to stop the automatic statting process."}
   #SHOW {""}
   }
#ALIAS autoStat {
   #IF (@stattingMinSum) {
      #T+ {Statting|Automatic}
      #T+ {stattingScoreTrigger}
      #T- {stattingSeedlingTrigger}
      stattingStart
      } {
      #PRINT {%crlf Minimum stat SUM must be set above zero, type: setStats}
      }
   }
#ALIAS stopStat {
   #BEEP 0
   #SENDRAW {disengage}
   #T+ {Statting|Automatic}
   #T- {stattingScoreTrigger}
   #T- {stattingRestatTrigger}
   #T- {stattingDisengageTrigger}
   #T- {stattingNotFightingTrigger}
   #T- {Statting|Automatic}
   #PRINT {%crlf "Automatic statting disabled."}
   }
#ALIAS setStats {
   #SHOW {""}
   #IF (%null(%1)) {
      #PRINT {%crlf " Current statting minimums: "STR:@stattingMinSTR INT:@stattingMinINT WIL:@stattingMinWIL DEX:@stattingMinDEX CON:@stattingMinCON SUM:@stattingMinSUM}
      #SHOW {""}
      #PRINT {" Usage: setStats <STR> <INT> <WIL> <DEX> <CON> <SUM> to set statting minimums."}
      #SHOW {"  Example: setStats 15 19 19 18 15 82 to set individual requirements."}
      #SHOW {"   Script will trigger if all stats rolled is = or > ALL stat requirements."}
      #SHOW {"    Stat SUM will trigger any roll if SUM is = or > set number."}
      #ABORT 1
      } {}
   #IF (%isnumber(%1)) {
      #VAR stattingMinSTR {%1}
      #PRINT {Minimum STR requirement set to %1}
      } {
      #PRINT {Minimum STR requirement number not recognized or missing...}
      #ABORT 1
      }
   #IF (%isnumber(%2)) {
      #VAR stattingMinINT {%2}
      #PRINT {Minimum INT requirement set to %2}
      } {
      #PRINT {Minimum INT requirement number not recognized or missing...}
      #ABORT 1
      }
   #IF (%isnumber(%3)) {
      #VAR stattingMinWIL {%3}
      #PRINT {Minimum WIL requirement set to %3}
      } {
      #PRINT {Minimum WIL requirement number not recognized or missing...}
      #ABORT 1
      }
   #IF (%isnumber(%4)) {
      #VAR stattingMinDEX {%4}
      #PRINT {Minimum DEX requirement set to %4}
      } {
      #PRINT {Minimum DEX requirement number not recognized or missing...}
      #ABORT 1
      }
   #IF (%isnumber(%5)) {
      #VAR stattingMinCON {%5}
      #PRINT {Minimum CON requirement set to %5}
      } {
      #PRINT {Minimum CON requirement number not recognized or missing...}
      #ABORT 1
      }
   #IF (%isnumber(%6)) {
      #VAR stattingMinSUM {%6}
      #PRINT {Minimum SUM requirement set to %6}
      } {
      #PRINT {Minimum SUM requirement number not recognized or missing...}
      #ABORT 1
      }
   }
#ALIAS setLightContainer {
   #VAR stattingLight {%1}
   #VAR stattingContainer {%2}
   #PRINT {%crlf Statting light and container set to: %1 and %2}
   }
#VAR stattingCON {0} {0}
#VAR stattingClass {} {}
#VAR stattingContainer {pack}
#VAR stattingDEX {0} {0}
#VAR stattingHomeland {} {}
#VAR stattingINT {0} {0}
#VAR stattingLight {lantern}
#VAR stattingMinCON {0} {0}
#VAR stattingMinDEX {0} {0}
#VAR stattingMinINT {0} {0}
#VAR stattingMinSTR {0} {0}
#VAR stattingMinSUM {0} {0}
#VAR stattingMinWIL {0} {0}
#VAR stattingRace {} {}
#VAR stattingSTR {0} {0}
#VAR stattingSUM {0} {0}
#VAR stattingWIL {0} {0}
#TRIGGER "stattingScoreTrigger" {You gain a level!$} {
   #IF (%null(@stattingRace)) {
   #T+ {stattingLevel3Human}
   #T+ {stattingLevel3Trolloc}
      } {
      #T+ {%concat(stattingLevel3,@stattingRace)}
      }
   #IF (%class(Statting|Automatic)=1) {
      #T- {stattingCryTrigger}
      #T+ {stattingContinueTrigger}
      } {}
   #SENDRAW {score}
   } "" {case|disable}
#TRIGGER "stattingLevel3Human" {^This ranks you as [A-Z]%w of (*) ~(Level 3~).$} {
   #T- {stattingLevel3Human}
   #T- {stattingLevel3Trolloc}
   #T+ {stattingCapture1}
   #T+ {stattingCapture2}
   #T+ {stattingRecordTrigger}
   #IF (%class(Statting|Automatic)=1) {
      #T+ {stattingDayTrigger}
      #T+ {stattingNightTrigger}
      #T+ {stattingOutTrigger}
      #T+ {stattingLightTrigger}
      }
   #VAR stattingHomeland {%1}
   #SEND {stat}
   } "" {case|disable}
#TRIGGER "stattingLevel3Trolloc" {^This ranks you as [A-Z]%w the (*) ~(Level 3~).$} {
   #T- {stattingLevel3Trolloc}
   #T- {stattingLevel3Human}
   #T+ {stattingCapture1}
   #T+ {stattingCapture2}
   #T+ {stattingRecordTrigger}
   #IF (%class(Statting|Automatic)=1) {
      #T+ {stattingDayTrigger}
      #T+ {stattingNightTrigger}
      #T+ {stattingOutTrigger}
      #T+ {stattingLightTrigger}
      }
   #VAR stattingHomeland {%1}
   #SEND {stat}
   } "" {case|disable}
#TRIGGER "stattingCapture1" {You are a %d year old {male|female} &%wstattingRace &%wstattingClass} {
   #T- {stattingCapture1}
   } "" {case|disable}
#TRIGGER "stattingCapture2" {^Your base abilities are: Str:&%dstattingSTR Int:&%dstattingINT Wil:&%dstattingWIL Dex:&%dstattingDEX Con:&%dstattingCON} {
   #T- {stattingCapture2}
   #VAR stattingSUM (@stattingSTR+@stattingINT+@stattingWIL+@stattingDEX+@stattingCON)
   #IF (%1>=@stattingMinSTR AND %2>=@stattingMinINT AND %3>=@stattingMinWIL AND %4>=@stattingMinDEX AND %5>=@stattingMinCON) {
      #BEEP 0
      stopStat
      #PRINT {%crlf "Minimum statting requirements met!"}
      } {
      #IF (@stattingSUM>=@stattingMinSUM) {
         #BEEP 0
         stopStat
         #PRINT {%crlf "Minimum stat sum requirements met!"}
         } {
         #IF (%class(Statting|Automatic)=1) {
            #T+ {stattingDisengageTrigger}
            #T+ {stattingNotFightingTrigger}
            #T+ {stattingRestatTrigger}
            #SENDRAW {disengage}
            } {}
         }
      }
   } "" {case|disable}
#TRIGGER "stattingRecordTrigger" {^You are subjected to the following effects:$} {
   #T- {stattingRecordTrigger}
   #FILE 1 %concat(StatRecord,%char,.txt)
   #WRITE 1 {@stattingRace @stattingClass @stattingHomeland STR:@stattingSTR INT:@stattingINT WIL:@stattingWIL DEX:@stattingDEX CON:@stattingCON SUM:@stattingSUM}
   #CLOSE 1
   } "" {case|disable}
#TRIGGER "stattingSeedlingTrigger" {A seedling firmly takes root and spreads its limbs to the sky.} {
   autostat
   } "" {case|disable}
#CLASS 0
#CLASS {Statting|Automatic} {disable}
#ALIAS stattingStart {
   #PRINT {%crlf "Botting can lead to zapping, bot at your own risk..."}
   #T- {stattingContinueTrigger}
   #T- {stattingLevel3Human}
   #T- {stattingLevel3Trolloc}
   #T+ {stattingStartTrigger}
   #SENDRAW {score}
   }
#TRIGGER "stattingContinueTrigger" {^This ranks you as * ~(Level (%d)~).$} {
   #T- {stattingContinueTrigger}
   #T+ {stattingCryTrigger}
   #IF (%1=1 OR %1=2) {#SENDRAW {kill 2.sapling}} {}
   #IF (%1=4) {
      #T+ {stattingDisengageTrigger}
      #T+ {stattingNotFightingTrigger}
      #T+ {stattingRestatTrigger}
      #SENDRAW {disengage}
      } {}
   } "" {case|disable}
#TRIGGER "stattingStartTrigger" {^This ranks you as * ~(Level (%d)~).$} {
   #T- {stattingStartTrigger}
   #T+ {stattingCryTrigger}
   #T+ {stattingContinueTrigger}
   #IF (%1=1 OR %1=2) {#SENDRAW {kill 2.sapling}} {}
   #IF (%1=3 OR %1=4) {
      #T+ {stattingDisengageTrigger}
      #T+ {stattingNotFightingTrigger}
      #T+ {stattingRestatTrigger}
      #SENDRAW {disengage}
      } {}
   #IF (%1>4) {
      #PRINT {%crlf Statting fail! Character level too high...}
      stopStat
      } {}
   } "" {case|disable}
#TRIGGER {They aren't here.$} {
   #T+ {stattingSeedlingTrigger}
   stopStat
   } "" {case}
#TRIGGER "stattingDisengageTrigger" {You disengage from the fight.} {
   #T- {stattingDisengageTrigger}
   #T- {stattingNotFightingTrigger}
   #SENDRAW {restat}
   } "" {case|disable}
#TRIGGER "stattingNotFightingTrigger" {But you're not fighting anyone!?} {
   #T- {stattingNotFightingTrigger}
   #T- {stattingDisengageTrigger}
   #SENDRAW {restat}
   } "" {case|disable}
#TRIGGER "stattingCryTrigger" {^Your blood freezes as you hear a stout young sapling's death cry.$} {
   #T+ {stattingContinueTrigger}
   #SENDRAW {score}
   } "" {case}
#TRIGGER "stattingRestatTrigger" {You feel dizzy as time seems to spin backwards...$} {
   #T- {stattingRestatTrigger}
   stattingStart
   } "" {case|disable}
#TRIGGER "stattingOutTrigger" {A * has gone out!$} {
   #SENDRAW {remove @stattingLight}
   #SENDRAW {drop all.@stattingLight}
   #SENDRAW {get @stattingLight @stattingContainer}
   #SENDRAW {grab @stattingLight}
   } "" {case}
#TRIGGER "stattingLightTrigger" {You could not light a *.$} {
   #SENDRAW {remove @stattingLight}
   #SENDRAW {drop all.@stattingLight}
   #SENDRAW {get @stattingLight @stattingContainer}
   #SENDRAW {grab @stattingLight}
   } "" {case}
#TRIGGER "stattingDayTrigger" {The day has begun.$} {
   #SENDRAW {remove @stattingLight}
   #SENDRAW {put @stattingLight @stattingContainer}
   } "" {case}
#TRIGGER "stattingNightTrigger" {The night has begun.$} {
   #SENDRAW {get @stattingLight @stattingContainer}
   #SENDRAW {hold @stattingLight}
   } "" {case}
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Last edited by Taziar on Sun Aug 26, 2018 1:33 pm, edited 2 times in total.

Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Sat Jul 21, 2018 1:56 am 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----ScoreStatTime-----
    [Updated: 8/31/2018]

Sends score, stat, and time commands on connection.

Saves score, stat, time, and equipment info in character notes.
    Note: also saves character's rent info if Rent script is detected.
      Hint: notes are shown in the sessions window of the cMUD character selection screen.

Saves estimated reroll date in character notess.
    Note: characters under level 30 will have their estimated deletion date instead.

Save character notes with the save command (or automatically when renting or quiting).

Type helpScoreStatTime to view help file in client.

Type showBMI to toggle BMI number at end of weight lines (on/off).
    Note: adds BMI number to end of weight line in stat command. (default: on)

Type showEXP to toggle EXP since last score command line (on/off).
    Example: You have gained 510 experience points since your last score command.
      Note: will not display line if experience gained is zero or less. (default: on)

Type showStatSum to toggle stat sum at end of stat line (on/off).
    Note: adds stat values and gives their stat sum at end of stat line in stat command. (default: on)

Type showTime to toggle times messages in time command output (on/off).
    Note: shows last time character connected to game, or typed the time command (in game time). (default: on)

Type showTotalDefense to toggle total defense at end of bonus line (on/off).
    Note: adds together your dodge bonus and parry bonus and shows at the end of the line the total defense in the stat command. (default: on)

Typing rent or quit will send time command first to save data then rent/quit.
    Note: also saves character notes file.

Type linkless to save time data and disconnect if linkless renting.
    Note: also saves character notes file.

Direct download link: ScoreStatTimeCmud.txt

Active Triggers: 0/54
Input Triggers: 6
Code:
#CLASS {ScoreStatTime}
#ALIAS helpScoreStatTime {
   #PRINT {%crlf " -----ScoreStatTime Help File-----"}
   #PRINT {"        [Updated: 8/31/2018]"}
   #SHOW {" Saves score, stat, time, and equipment info in character notes."}
   #SHOW {"  Note: also saves character's rent info if Rent script is detected,"}
   #SHOW {"   estimated reroll date, or character deletion date if under level 30."}
   #SHOW {""}
   #SHOW {" Type showBMI to toggle BMI:<BMI> at end of weight line (on/off)."}
   #SHOW {"  Note: BMI statistics shown are truncated."}
   #SHOW {"   Example: a BMI of 0.390059173107147 will show as BMI:0.39"}
   #SHOW {""}
   #SHOW {" Type showStatSum to toggle SUM:<statsum> at end of stats line (on/off)."}
   #SHOW {"  Example: Your base abilities are: Str:17 Int:11 Wil:6 Dex:19 Con:19 Sum:72."}
   #SHOW {""}
   #SHOW {" Type showTime to toggle time messages in time command output (on/off)."}
   #SHOW {"  Example: It has been 7 days, 17 hours since "%char" last connected. (game time)"}
   #SHOW {""}
   #SHOW {" Type showTotalDefense to toggle Total Defense:<defense> at end of bonus line (on/off)."}
   #SHOW {"  Example: Offensive bonus: 151, Dodging bonus: 82, Parrying bonus: 20, Total defense: 102"}
   #SHOW {""}
   #SHOW {" Type showEXP to toggle EXP since last score command line (on/off)."}
   #SHOW {"  Example: You have gained 510 experience points since your last score command."}
   #SHOW {"   Note: will not display line if experience gained is zero or less."}
   #SHOW {""}
   #PRINT {" Typing rent or quit will send time command to save data then rent/quit."}
   #SHOW {""}
   #PRINT {" Type linkless to save data and disconnect if linkless renting."}
   #SHOW {""}
   }
#ALIAS showBMI {
   #IF (@showBMI) {
      #VAR showBMI {0}
      #PRINT {%crlf "BMI information is turned off."}
      } {
      #VAR showBMI {1}
      #PRINT {%crlf "BMI information is turned on."}
      }
   }
#ALIAS showEXP {
   #IF (@showEXP) {
      #VAR showEXP {0}
      #PRINT {%crlf "EXP line function is turned off."}
      #T- {scoreEXPmath}
      } {
      #VAR showEXP {1}
      #PRINT {%crlf "EXP line function is turned on."}
      #T+ {scoreEXPmath}
      }
   }
#ALIAS showStatSum {
   #IF (@showStatSum) {
      #VAR showStatSum {0}
      #PRINT {%crlf "StatSum information is turned off."}
      } {
      #VAR showStatSum {1}
      #PRINT {%crlf "StatSum information is turned on."}
      }
   }
#ALIAS showTime {
   #IF (@showTimeDisplay) {
      #VAR showTimeDisplay {0}
      #PRINT {%crlf "Time message information is turned off."}
      } {
      #VAR showTimeDisplay {1}
      #PRINT {%crlf "Time message information is turned on."}
      }
   }
#ALIAS showTotalDefense {
   #IF (@showTotalDefense) {
      #VAR showTotalDefense {0}
      #PRINT {%crlf "TotalDefense information is turned off."}
      } {
      #VAR showTotalDefense {1}
      #PRINT {%crlf "TotalDefense information is turned on."}
      }
   }
#ALIAS timeSetPastData {
   #VAR timePastAMPM {@timeAMPM}
   #VAR timePastMonth {@timeMonth}
   #VAR timePastHour {@timeHour}
   #VAR timePastDay {@timeDay}
   #VAR timePastYear {@timeYear}
   #VAR %concat(%char,"AMPM") {@timeAMPM} {_nodef} {ScoreStatTime|%concat(sst,%char)}
   #VAR %concat(%char,"Month") {@timeMonth} {_nodef} {ScoreStatTime|%concat(sst,%char)}
   #VAR %concat(%char,"Hour") {@timeHour} {_nodef} {ScoreStatTime|%concat(sst,%char)}
   #VAR %concat(%char,"Day") {@timeDay} {_nodef} {ScoreStatTime|%concat(sst,%char)}
   #VAR %concat(%char,"Year") {@timeYear} {_nodef} {ScoreStatTime|%concat(sst,%char)}
   }
#ALIAS timeCalculations {
   #VAR timeEvalYears @timeYear*8736
   #VAR timeEvalMonths %ismember(@timeMonth,@timeMonthNames)*672
   #VAR timeEvalDays @timeDay*24
   #IF (@timeAMPM=pm)  {
      #VAR timeEvalHours @timeHour+12
      } {
      #VAR timeEvalHours @timeHour
      }
   #IF (@timeHour=12) {
      #IF (@timeAMPM=am) {
         #VAR timeEvalHours 0
         } {
         #VAR timeEvalHours 12
         }
      } {}
   #VAR timeCurrentTotal @timeEvalYears+@timeEvalMonths+@timeEvalDays+@timeEvalHours
   #VAR timeEvalPastYears @timePastYear*8736
   #VAR timeEvalPastMonths %ismember(@timePastMonth,@timeMonthNames)*672
   #VAR timeEvalPastDays @timePastDay*24
   #IF (@timePastAMPM=pm)  {
      #VAR timeEvalPastHours @timePastHour+12
      } {
      #VAR timeEvalPastHours @timePastHour
      }
   #IF (@timePastHour=12) {
      #IF (@timePastAMPM=am) {
         #VAR timeEvalPastHours 0
         } {
         #VAR timeEvalPastHours 12
         }
      } {}
   #VAR timePastTotal @timeEvalPastYears+@timeEvalPastMonths+@timeEvalPastDays+@timeEvalPastHours
   #VAR timeTotalHours @timeCurrentTotal-@timePastTotal
   #IF (@timeTotalHours > 8736) {
      #VAR timeDisplayYear %format(0,%float(@timeTotalHours/8736))
      #VAR timeTotalMonths @timeTotalHours-@timeDisplayYear*8736
      } {
      #VAR timeDisplayYear 0
      #VAR timeTotalMonths @timeTotalHours
      }
   #IF (@timeTotalMonths > 672) {
      #VAR timeDisplayMonth %format(0,%float(@timeTotalMonths/672))
      #VAR timeTotalDays @timeTotalMonths-@timeDisplayMonth*672
      } {
      #VAR timeDisplayMonth 0
      #VAR timeTotalDays @timeTotalMonths
      }
   #IF (@timeTotalDays > 24) {
      #VAR timeDisplayDay %format(0,%float(@timeTotalDays/24))
      #VAR timeDisplayHour @timeTotalDays-@timeDisplayDay*24
      } {
      #VAR timeDisplayDay 0
      #VAR timeDisplayHour @timeTotalDays
      }
   }
#ALIAS sstConnection {
   #T- {sstWelcomeTrigger}
   #T- {sstReconnectTrigger}
   #T- {sstAlreadyTrigger}
   #T+ {scoreTrigger}
   #IF (@showEXP) {#T+ {scorePointsTrigger}} {#T- {scorePointsTrigger}}
   #T+ {statTrigger}
   #T+ {timeTrigger}
   #T+ {ScoreStatTime|CharacterNotes|TimeNotes}
   #VAR timePastAMPM %concat("@",%char,"AMPM") {_nodef} {ScoreStatTime}
   #VAR timePastMonth %concat("@",%char,"Month") {_nodef} {ScoreStatTime}
   #VAR timePastHour %concat("@",%char,"Hour") {_nodef} {ScoreStatTime}
   #VAR timePastDay %concat("@",%char,"Day") {_nodef} {ScoreStatTime}
   #VAR timePastYear %concat("@",%char,"Year") {_nodef} {ScoreStatTime}
   #SENDRAW {score}
   #SENDRAW {stat}
   #SENDRAW {time}
   }
#ALIAS timeDisconnect {
   #T+ {timeTrigger}
   #T+ {ScoreStatTime|CharacterNotes|TimeNotes}
   #VAR showTimeMessage {0}
   #VAR showTimeDisconnect {1}
   #TEMP "disconnectTEMP" {^The official forums are now at * enjoy!$} {
      #VAR %concat(%char,"AMPM") {@timeAMPM} {_nodef} {ScoreStatTime|%concat(sst,%char)}
      #VAR %concat(%char,"Month") {@timeMonth} {_nodef} {ScoreStatTime|%concat(sst,%char)}
      #VAR %concat(%char,"Hour") {@timeHour} {_nodef} {ScoreStatTime|%concat(sst,%char)}
      #VAR %concat(%char,"Day") {@timeDay} {_nodef} {ScoreStatTime|%concat(sst,%char)}
      #VAR %concat(%char,"Year") {@timeYear} {_nodef} {ScoreStatTime|%concat(sst,%char)}
      } "ScoreStatTime" {case}
   #SENDRAW {time}
   }
#ALIAS linkless {
   #TEMP "linklessTEMP" {^~(Server: * EST, up for *~)$} {
      #DISCONNECT
      #IF (%class(Rent)=1) {saveRentNotes} {}
      saveCharacterNotes
      } "ScoreStatTime" {case}
   timeDisconnect
   }
#VAR scoreEXP1 {0} {0}
#VAR scoreEXP2 {0} {0}
#VAR scoreEXPresult {0} {0}
#VAR scoreLevel {} {}
#VAR scoreQP1 {0} {0}
#VAR scoreQP2 {0} {0}
#VAR scoreQPresult {0} {0}
#VAR serverCalTemp {}
#VAR serverDay {}
#VAR serverDisplayDay {}
#VAR serverDisplayDays {0} {0}
#VAR serverDisplayMonth {}
#VAR serverDisplayMonths {0} {0}
#VAR serverMonth {}
#VAR serverMonthDays {31|28|31|30|31|30|31|31|30|31|30|31}
#VAR serverMonthNames {Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec}
#VAR serverRerollMonth {}
#VAR serverRerollMonths {0} {0}
#VAR serverRerollYear {}
#VAR serverYear {}
#VAR showBMI {1}
#VAR showEXP {1}
#VAR showStatSum {1}
#VAR showTimeConnection {1} {1}
#VAR showTimeDeletion {0} {0}
#VAR showTimeDisconnect {0} {0}
#VAR showTimeDisplay {1}
#VAR showTimeMessage {0} {0}
#VAR showTotalDefense {1}
#VAR statAge {} {}
#VAR statBMI {} {}
#VAR statCON {} {}
#VAR statCarryWeight {} {}
#VAR statClass {} {}
#VAR statDEX {} {}
#VAR statDodge {} {}
#VAR statFeet {} {}
#VAR statGender {} {}
#VAR statHeightBMI {} {}
#VAR statINT {} {}
#VAR statInches {} {}
#VAR statOffensive {} {}
#VAR statParry {} {}
#VAR statRace {} {}
#VAR statSTR {} {}
#VAR statSUM {} {}
#VAR statTotalBMI {} {}
#VAR statTotalDefense {} {}
#VAR statTotalHeight {} {}
#VAR statWIL {} {}
#VAR statWeight {} {}
#VAR statWeightBMI {} {}
#VAR statWeightCondition {} {}
#VAR statWeightTotalBMI {} {}
#VAR statWornWeight {} {}
#VAR timeAMPM {}
#VAR timeCurrentTotal {0}
#VAR timeDay {0}
#VAR timeDeleteReroll {}
#VAR timeDisplayDay {0}
#VAR timeDisplayHour {0}
#VAR timeDisplayMonth {0}
#VAR timeDisplayYear {0}
#VAR timeEvalDays {0}
#VAR timeEvalHours {0}
#VAR timeEvalMonths {0}
#VAR timeEvalPastDays {0}
#VAR timeEvalPastHours {0}
#VAR timeEvalPastMonths {0}
#VAR timeEvalPastYears {0}
#VAR timeEvalYears {0}
#VAR timeHour {0}
#VAR timeMonth {}
#VAR timeMonthNames {Taisham|Jumara|Saban|Aine|Adar|Saven|Amadaine|Tammaz|Maigdhal|Choren|Shaldine|Nesan|Danu}
#VAR timePastAMPM {} {}
#VAR timePastDay {0} {0}
#VAR timePastHour {0} {0}
#VAR timePastMonth {} {}
#VAR timePastTotal {0} {0}
#VAR timePastYear {0} {0}
#VAR timeTotalDays {0}
#VAR timeTotalHours {0}
#VAR timeTotalMonths {0}
#VAR timeTotalYears {0}
#VAR timeYear {0}
#TRIGGER "sstWelcomeTrigger" {^Welcome to the Wheel of Time!  Type 'help' for information.$} {
   sstConnection
   } "" {case}
#TRIGGER "sstReconnectTrigger" {^Reconnecting.$} {
   sstConnection
   } "" {case}
#TRIGGER "sstAlreadyTrigger" {^You take over your own body, already in use!$} {
   sstConnection
   } "" {case}
#TRIGGER "scoreTrigger" {^This ranks you as [A-Z]%w * ~(Level &%dscoreLevel~).$} {
   #T- {scoreTrigger}
   } "" {case|disable}
#TRIGGER "scorePointsTrigger" {^You have scored &%dscoreEXP1 experience points and &%dscoreQP1 quest points.$} {
   #T- {scorePointsTrigger}
   #T+ {scoreEXPtrigger}
   #VAR scoreEXPresult @scoreEXP1-@scoreEXP2
   #VAR scoreEXP2 @scoreEXP1
   #VAR scoreQPresult @scoreQP1-@scoreQP2
   #VAR scoreQP2 @scoreQP1
   } "" {case|disable}
#TRIGGER "scoreEXPtrigger" {^You need * exp to} {
   #T- {scoreEXPtrigger}
   #IF (@scoreEXP2=@scoreEXPresult AND @scoreQP2=@scoreQPresult) {
      #PRINT {Current experience and quest points saved!}
      } {
      #IF (@scoreEXPresult>0 AND @scoreQPresult=0) {
         #PRINT {You have gained @scoreEXPresult experience points since your last score command.}
         } {}
      #IF (@scoreEXPresult=0 AND @scoreQPresult>0) {
         #PRINT {You have gained @scoreQPresult quest points since your last score command.}
         } {}
      #IF (@scoreEXPresult>0 AND @scoreQPresult>0) {
         #PRINT {You have gained @scoreEXPresult experience points and @scoreQPresult quest points since your last score command.}
         } {}
      }
   } "" {case|disable}
#TRIGGER "statTrigger" {You are a &%dstatAge year old &%wstatGender &%wstatRace &%w{statClass}.} {
   #T- {statTrigger}
   #T+ {statAbilitiesTrigger}
   #T+ {statBonusTrigger}
   #T+ {statBMITrigger}
   #T+ {statBMI2Trigger}
   } "" {case|disable}
#TRIGGER "statAbilitiesTrigger" {^Your base abilities are: Str:&%dstatSTR Int:&%dstatINT Wil:&%dstatWIL Dex:&%dstatDEX Con:&%dstatCON} {
   #T- {statAbilitiesTrigger}
   #VAR statSUM @statSTR+@statINT+@statWIL+@statDEX+@statCON
   #IF (@showStatSum) {#SUB {Your base abilities are: Str:@statSTR Int:@statINT Wil:@statWIL Dex:@statDEX Con:@statCON Sum:@statSUM}}
   } "" {case|disable}
#TRIGGER "statBonusTrigger" {^Offensive bonus: &%dstatOffensive, Dodging bonus: &%dstatDodge, Parrying bonus: &%dstatParry} {
   #T- {statBonusTrigger}
   #VAR statTotalDefense @statDodge+@statParry
   #IF (@showTotalDefense) {#SUB {Offensive bonus: @statOffensive, Dodging bonus: @statDodge, Parrying bonus: @statParry, Total defense: @statTotalDefense}}
   } "" {case|disable}
#TRIGGER "statBMITrigger" {^Your height is &%dstatFeet feet, &%dstatInches inches, and you weigh &statWeight lbs.} {
   #T- {statBMITrigger}
   #VAR statTotalHeight @statFeet*12+@statInches
   #VAR statHeightBMI @statTotalHeight*@statTotalHeight
   #VAR statWeightBMI @statWeight*10
   #VAR statBMI %float(@statWeightBMI)/%float(@statHeightBMI)
   #IF (@showBMI) {#SUB {Your height is @statFeet feet, @statInches inches, and you weigh @statWeight lbs. Base BMI:%copy(@statBMI,1,4)}}
   } "" {case|disable}
#TRIGGER "statBMI2Trigger" {^You are carrying &statCarryWeight lbs and wearing &statWornWeight lbs, &statWeightCondition.} {
   #T- {statBMI2Trigger}
   #VAR statWeightTotalBMI (@statWeight+@statWornWeight)*10
   #VAR statTotalBMI %float(@statWeightTotalBMI)/%float(@statHeightBMI)
   #IF (@showBMI) {#SUB {You are carrying @statCarryWeight lbs and wearing @statWornWeight lbs, @statWeightCondition Total BMI:%copy(@statTotalBMI,1,4)}}
   } "" {case|disable}
#TRIGGER "timeTrigger" {It is &%dtimeHour o'clock &%wtimeAMPM, on the &%d{timeDay}{st|nd|rd|th} day of the month of &%wtimeMonth, year &%dtimeYear.} {
   #T- {timeTrigger}
   #T+ {timeDisplayTrigger}
   #T+ {serverTrigger}
   timeCalculations
   timeSetPastData
   } "" {case|disable}
#TRIGGER "timeDisplayTrigger" {^The official forums are now at * enjoy!$} {
   #IF (@showTimeDisplay) {} {#ABORT 1}
   #IF (@showTimeMessage) {
      #PRINT {It has been %if(@timeDisplayYear>1,@timeDisplayYear years~," ","")%if(@timeDisplayYear=1,1 year~," ","")%if(@timeDisplayMonth>1,@timeDisplayMonth months~," ","")%if(@timeDisplayMonth=1,1 month~," ","")%if(@timeDisplayDay>1,@timeDisplayDay days~," ","")%if(@timeDisplayDay=1,1 day~," ","")%if(@timeDisplayHour>0,@timeDisplayHour hour,"0 hours")%if(@timeDisplayHour>1,"s "," ")since your last time command. ~(game time~)}
      } {}
   #IF (@showTimeConnection) {
      #PRINT {It has been %if(@timeDisplayYear>1,@timeDisplayYear years~," ","")%if(@timeDisplayYear=1,1 year~," ","")%if(@timeDisplayMonth>1,@timeDisplayMonth months~," ","")%if(@timeDisplayMonth=1,1 month~," ","")%if(@timeDisplayDay>1,@timeDisplayDay days~," ","")%if(@timeDisplayDay=1,1 day~," ","")%if(@timeDisplayHour>0,@timeDisplayHour hour,"0 hours")%if(@timeDisplayHour>1,"s "," ")since %char last connected. ~(game time~)}
      } {}
   #IF (@showTimeDisconnect) {#PRINT {%char's disconnection time has been saved.}}
   } "" {case|disable}
#COND {$} {
   #T- {timeDisplayTrigger}
   #IF (@showTimeDisplay) {} {#ABORT 1}
   #IF (@showTimeMessage) {#GAG} {}
   #IF (@showTimeConnection) {#GAG} {}
   #IF (@showTimeDisconnect) {#GAG} {}
   #VAR showTimeMessage 1
   #VAR showTimeConnection 0
   #VAR showTimeDisconnect 0
   }
#TRIGGER "serverTrigger" {^~(Server: %w &%wserverMonth { ||}&%dserverDay %d:%d:%d &%dserverYear EST, last rebooted} {
   #T- {serverTrigger}
   #VAR serverDisplayDays 0
   #VAR serverDisplayMonths 0
   #IF (@scoreLevel>29) {#VAR showTimeDeletion 0} {#VAR showTimeDeletion 1}
   #IF (@scoreLevel>19 AND @scoreLevel<30) {#VAR serverDisplayMonths 6} {}
   #IF (@scoreLevel>9 AND @scoreLevel<20) {#VAR serverDisplayMonths 3} {}
   #IF (@scoreLevel>4 AND @scoreLevel<10) {#VAR serverDisplayMonths 1} {}
   #IF (@scoreLevel>1 AND @scoreLevel<5) {#VAR serverDisplayDays 7} {}
   #IF (@scoreLevel=1) {#VAR serverDisplayDays 3} {}
   #IF (@serverDisplayMonths>0) {
      #VAR serverDisplayMonth @serverDisplayMonths+%ismember(@serverMonth,@serverMonthNames)
         #IF (@serverDisplayMonth>12) {
            #VAR serverDisplayMonth @serverDisplayMonth-12
            #VAR serverDisplayMonth %item(@serverMonthNames,@serverDisplayMonth)
            } {
            #VAR serverDisplayMonth %item(@serverMonthNames,@serverDisplayMonth)
            }
      #VAR serverDisplayDay @serverDay
      } {
      #VAR serverDisplayMonth @serverMonth
      }
   #IF (@serverDisplayDays>0) {
      #VAR serverDisplayDay @serverDisplayDays+@serverDay
      #IF (@serverDisplayDay>%eval(%item(@serverMonthDays,%ismember(@serverMonth,@serverMonthNames)))) {
         #VAR serverDisplayDay @serverDisplayDay-%eval(%item(@serverMonthDays,%ismember(@serverMonth,@serverMonthNames)))
         #VAR serverDisplayMonth %item(@serverMonthNames,(%ismember(@serverMonth,@serverMonthNames)+1))
         } {
         #VAR serverDisplayDay @serverDisplayDays+@serverDay
         }
      } {}
   #IF (@statAge<200) {
      #VAR serverCalTemp (200-@statAge)*10
      } {
      #VAR serverCalTemp (%concat(%eval(%copy(@statAge,1,1)+1),00)-@statAge)*10
      }
   #VAR serverRerollMonths @serverCalTemp/30
   #VAR serverRerollYear 0
   #WHILE (@serverRerollMonths>11) {
      #VAR serverRerollYear @serverRerollYear+1
      #VAR serverRerollMonths @serverRerollMonths-12
      }
   #VAR serverRerollMonth @serverRerollMonths+%ismember(@serverMonth,@serverMonthNames)
   #IF (@serverRerollMonth>12) {
      #VAR serverRerollYear @serverRerollYear+1
      #VAR serverRerollMonth @serverRerollMonth-12
      } {}
   #VAR serverRerollMonth %item(@serverMonthNames,@serverRerollMonth)
   #VAR serverRerollYear @serverRerollYear+@serverYear
   #IF (@showTimeDeletion) {
      #PRINT {%char will delete in %if(@serverDisplayMonths=1,@serverDisplayMonths month,%if(@serverDisplayMonths>1,@serverDisplayMonths months,@serverDisplayDays days)) on @serverDisplayMonth @serverDisplayDay if not logged in before this date.}
      } {}
   #IF (@scoreLevel<30) {
      #VAR timeDeleteReroll {%char will delete on @serverDisplayMonth @serverDisplayDay.}
      } {
      #VAR timeDeleteReroll {%char will reroll in @serverRerollMonth @serverRerollYear.}
      }
   } "" {case|disable}
#ONINPUT "sstQuitInput" {^quit$} {
   #TEMP "quitTEMP" {^~(Server: * EST, last rebooted *~)$} {
      #IF (%class(Rent)=1) {saveRentNotes} {}
      quitCharacterNotes
      } "ScoreStatTime" {case}
   timeDisconnect
   }
#ONINPUT "sstRentInput" {^{ren|rent}$} {
   #TEMP "rentTEMP" {^~(Server: * EST, last rebooted *~)$} {
      #IF (%class(Rent)=1) {saveRentNotes} {}
      saveCharacterNotes
      } "ScoreStatTime" {case}
   timeDisconnect
   }
#ONINPUT "sstSleepWellWake" {sleep well and wake} {
   #IF (%class(Rent)=1) {saveRentNotes} {}
   saveCharacterNotes
   }
#ONINPUT "sstSaveInput" {^{sav|save}$} {
   #IF (%class(Rent)=1) {saveRentNotes} {}
   saveCharacterNotes
   }
#ONINPUT "sstScoreInput" {^{sc|sco|scor|score}$} {
   #T+ {scoreTrigger}
   #T+ {scorePointsTrigger}
   #T+ {ScoreStatTime|CharacterNotes|ScoreNotes}
   }
#ONINPUT "sstStatInput" {^stat$} {
   #T+ {statTrigger}
   #T+ {ScoreStatTime|CharacterNotes|StatNotes}
   }
#ONINPUT "sstTimeInput" {^{ti|tim|time}$} {
   #T+ {timeTrigger}
   #T+ {ScoreStatTime|CharacterNotes|TimeNotes}
   }
#EVENT OnConnect {
   #T+ {sstWelcomeTrigger}
   #T+ {sstReconnectTrigger}
   #T+ {sstAlreadyTrigger}
   #VAR eqNotesList {}
   #VAR rentNotesList {}
   #VAR rentNotesTemp {}
   #VAR scoreNotesList {}
   #VAR statNotesList {}
   #VAR timeNotesList {}
   #IF (%class(ScoreStatTime|%concat(sst,%char))=-1) {
      #CLASS {ScoreStatTime|%concat(sst,%char)} {disable}
      #VAR %concat(%char,"AMPM") {}
      #VAR %concat(%char,"Month") {}
      #VAR %concat(%char,"Hour") {0}
      #VAR %concat(%char,"Day") {0}
      #VAR %concat(%char,"Year") {0}
      #CLASS 0
      } {
      #T+ {ScoreStatTime|%concat(sst,%char)}
      }
   }
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes}
#ALIAS saveRentNotes {
   #VAR rentNotesList {-----Available Rents for %char-----}
   #LOOP 1,%numitems(@rentRoomNumbers) {
      #VAR rentNotesTemp {%item(@rentRoomNumbers,%i)}
      #IF (%len(%eval(%concat("@",%char,@rentNotesTemp)))==0) {} {
         #VAR rentNotesList {%additem("lineBreak",@rentNotesList)}
         #ADDITEM rentNotesList {%item(@rentRoomZone,%i) - %item(@rentRoomNames,%i)}
         #LOOP 1,%numitems(%eval(%concat("@",%char,@rentNotesTemp))) {
            #VAR rentNotesList {%additem(%if(%len(%j)>1," ","   ")%j. %item(%eval(%concat("@",%char,@rentNotesTemp)),%j),@rentNotesList)}
            }
         }
      }
   }
#ALIAS saveCharacterNotes {
   #CALL {%charnotes(@timeDeleteReroll)}
   #CALL {%charcomment("Rent location: "%roomname() %crlf)}
   #CALL {%charcomment(%replace(@scoreNoteslist,"|",%lf) %crlf)}
   #CALL {%charcomment(%replace(@statNotesList,"|",%lf) %crlf)}
   #CALL {%charcomment(%replace(@timeNotesList,"|",%lf) %crlf)}
   #CALL {%charcomment(%replace(@eqNotesList,"|",%lf) %crlf)}
   #CALL {%charcomment(%replace(@rentNotesList,"|",%lf))}
   }
#ALIAS quitCharacterNotes {
   #CALL {%charnotes(@timeDeleteReroll)}
   #CALL {%charcomment("Quit location: "%roomname() %crlf)}
   #CALL {%charcomment(%replace(@scoreNoteslist,"|",%lf) %crlf)}
   #CALL {%charcomment(%replace(@statNotesList,"|",%lf) %crlf)}
   #CALL {%charcomment(%replace(@timeNotesList,"|",%lf) %crlf)}
   #CALL {%charcomment(Equipment notes for %char were deleted due to using the quit command! %crlf)}
   #CALL {%charcomment(%replace(@rentNotesList,"|",%lf))}
   }
#VAR eqNotesList {}
#VAR rentNotesList {}
#VAR rentNotesTemp {}
#VAR scoreNotesList {}
#VAR statNotesList {}
#VAR timeNotesList {}
#TRIGGER "eqNotesTrigger" {You are using:$} {
   #T+ {ScoreStatTime|CharacterNotes|EquipmentNotes}
   #VAR eqNotesList {}
   } "" {case}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|ScoreNotes} {enable}
#TRIGGER "scoreNote1" {(You have %d~(%d~) hit*movement points.)$} {
   #VAR scoreNotesList {}
   #VAR scoreNotesList %additem(%1,@scoreNotesList)
   } "" {case}
#TRIGGER "scoreNote2" {^(You have scored %d experience points and %d quest points.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote3" {^(You need %d exp to *.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote4" {^(You have acquired %d alt qps to date.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote5" {^(You have amassed %d Turn points to date.)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote6" {^(You have played %d days and %d hours ~(real time~).)$} {#VAR scoreNotesList %additem(%1,@scoreNotesList)} "" {case}
#TRIGGER "scoreNote7" {^(This ranks you as [A-Z]%w * ~(Level %d~).)$} {
   #T- {ScoreStatTime|CharacterNotes|ScoreNotes}
   #VAR scoreNotesList %additem(%1,@scoreNotesList)
   } "" {case}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|StatNotes} {enable}
#TRIGGER "statNote1" {(You are a %d year old *.)$} {
   #VAR statNotesList {}
   #VAR statNotesList %additem(%1,@statNotesList)
   } "" {case}
#TRIGGER "statNote2" {^(Your height is %d feet, %d inches, and you weigh * lbs.*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote3" {^(You are carrying * lbs and wearing * lbs, *.*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote4" {^(Your base abilities are: Str:%d Int:%d Wil:%d Dex:%d Con:%d*.*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote5" {^(Offensive bonus: %d, Dodging bonus: %d, Parrying bonus: *)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote6" {^(Your mood is: %w. You will flee below: %d Hit Points)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote7" {^(Your posture is: %w.)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote8" {^(You are wanted by:*)$} {#VAR statNotesList %additem(%1,@statNotesList)} "" {case}
#TRIGGER "statNote9" {^(Your armor absorbs about * on average.)$} {
   #T- {ScoreStatTime|CharacterNotes|StatNotes}
   #VAR statNotesList %additem(%1,@statNotesList)
   } "" {case}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|TimeNotes} {enable}
#TRIGGER "timeNote1" {(It is * day of the month of %w, year %d.)$} {
   #VAR timeNotesList {}
   #VAR timeNotesList %additem(%1,@timeNotesList)
   } "" {case}
#TRIGGER "timeNote2" {(~(Server: * EST, up for *~))$} {
   #T- {ScoreStatTime|CharacterNotes|TimeNotes}
   #VAR timeNotesList %additem(%1,@timeNotesList)
   } "" {case}
#CLASS 0
#CLASS {ScoreStatTime|CharacterNotes|EquipmentNotes}
#TRIGGER "eqNote1" {^(~<used as light>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote2" {^(~<held>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote3" {^(~<worn on finger>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote4" {^(~<worn on head>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote5" {^(~<worn around neck>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote6" {^(~<worn on body>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote7" {^(~<worn about body>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote8" {^(~<slung on back>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote9" {^(~<worn on arms>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote10" {^(~<worn on hands>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote11" {^(~<worn around wrist>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote12" {^(~<worn as shield>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote13" {^(~<wielded>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote14" {^(~<wielded two-handed>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote15" {^(~<worn about waist>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote16" {^(~<worn on belt>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote17" {^(~<worn on legs>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNote18" {^(~<worn on feet>*)$} {#VAR eqNotesList %additem(%1,@eqNotesList)} "" {case}
#TRIGGER "eqNotesPrompt" {^{o|*} * >} {
   #T- {ScoreStatTime|CharacterNotes|EquipmentNotes}
   } "" {nocr|prompt}
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Last edited by Taziar on Fri Aug 31, 2018 4:33 am, edited 3 times in total.

Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Sun Aug 26, 2018 2:21 am 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----Comms-----
    [Update: 8/25/2018]

Adds all communications to a new window named Communications.

Type: commsToggle to toggle capture mode to only globals and tells.
    Default: all communications

Type: commsGag to toggle gagging communications from the main screen.
    Default: is off

Direct download link: CommsCmud.txt

Active Triggers: 16/16 (10/16 with comms toggled)

Code:
#CLASS {Comms}
#ALIAS helpComms {
   #PRINT {%crlf " -----Comms Help File-----"}
   #PRINT {"     [Update: 8/25/2018]"}
   #SHOW {" Adds all communications to a new window named Communications."}
   #SHOW {""}
   #SHOW {" Type: commsToggle to toggle capture mode to only globals and tells."}
   #SHOW {"  Default: all communications"}
   #SHOW {""}
   #SHOW {" Type: commsGag to toggle gagging communications from the main screen."}
   #SHOW {"  Default: is off"}
   #SHOW {""}
   }
#ALIAS commsToggle {
   #IF (%class(Comms|CommsLocal)) {
      #PRINT {%crlf Communications window is set to capture only globals and tells.}
      #T- {Comms|CommsLocal}
      } {
      #PRINT {%crlf Communications window is set to capture all communications.}
      #T+ {Comms|CommsLocal}
      }
   }
#ALIAS commsGag {
   #IF (@commsGag) {
      #VAR commsGag {0}
      #PRINT {%crlf Main screen is set to show all communications.}
      } {
      #VAR commsGag {1}
      #PRINT {%crlf Main screen is set to gag all communications.}
      }
   }
#VAR commsGag {0}
#TRIGGER "commsChatTrigger" {You chat '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsNarrateTrigger" {You narrate '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsPrayTrigger" {You pray '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsReplyTrigger" {You reply to %x '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsTellTrigger" {You tell %x '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsAnswersTrigger" {%x answers your prayer '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsChatsTrigger" {%x chats '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsNarratesTrigger" {%x narrates '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsSpeaksTrigger" {%x speaks from the {Light|Dark} '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsTellsTrigger" {%x tells you '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#CLASS 0
#CLASS {Comms|CommsLocal}
#TRIGGER "commsBellowTrigger" {You bellow '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsHissTrigger" {You hiss '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsSayTrigger" {You say '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsBellowsTrigger" {%x bellows '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsHissesTrigger" {%x hisses '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#TRIGGER "commsSaysTrigger" {%x says '*'$} {
   #CAPTURE Communications
   #IF (@commsGag) {#GAG} {}
   } "" {case}
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Sun Aug 26, 2018 12:25 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----Log-----
    [Updated: 8/26/2018]

Type: logSet <path> to set path for logging.
Example: logSet C:\Users\Medakan\Desktop\WoTmud\Logs

Type: logOpen to open windows explorer to log destination folder.
Hint: can use command to verify correct file location.

Type: logRead to open current log in notepad.
Hint: can use command to verify log is recording.

Saves log under current character name and date.
File format: YearMonthDayCharacter.txt
Example: 20161114Taziar.txt

Direct download link: LogCmud.txt

Active Triggers: 0
Events: OnConnect
Code:
#CLASS {Log}
#ALIAS helpLog {
   #PRINT {%crlf %crlf "-----Log Help File-----"}
   #PRINT {"  [Updated: 8/26/2018]"}
   #SHOW {" Type: logSet <path> to set path for logging."}
   #SHOW {"  Example: logSet C:\Users\Taziar\Google Drive\Logs"}
   #SHOW {""}
   #SHOW {" Type: logOpen to open windows explorer to log destination folder."}
   #SHOW {"  Hint: can use command to verify correct file location."}
   #SHOW {""}
   #SHOW {" Type: logRead to open current log in notepad."}
   #SHOW {"  Hint: can use command to verify log is recording."}
   #SHOW {""}
   #SHOW {" Saves log under current character name and date."}
   #SHOW {"  File format: YearMonthDayCharacter.txt"}
   #SHOW {"   Example: 20161114Taziar.txt"}
   #SHOW {""}
   }
#ALIAS logSet {
   #IF (%null(%1)) {
      #PRINT {%crlf "Syntax example: logSet C:\Users\Taziar\Google Drive\Logs"}
      } {
      #VAR logPath {%1}
      #IF (%numparam()>1) {#LOOP 2,%numparam() {#VAR logPath %concat(@logPath," ",%param(%i))}} {}
      #IF (NOT %ends(@logPath,"\")) {#VAR logPath {%concat(@logPath,"\")}} {}
      logStart
      }
   }
#ALIAS logStart {
   #VAR logCurrentPath {%concat(@logPath,%time(yyyymmdd),%char,".txt")}
   #LOG @logCurrentPath
   }
#ALIAS logRead {#LAUNCH {notepad.exe %concat(~",@logCurrentPath,~")}}
#ALIAS logOpen {#LAUNCH {explorer %concat(~",@logPath,~")}}
#VAR logCurrentPath {}
#VAR logPath {}
#EVENT OnConnect {
   #IF (%null(@logPath)) {
      #PRINT {WARNING!! log path is not set, use logSet command to setup logging.}
      } {
      logStart
      }
   }
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Last edited by Taziar on Mon Aug 27, 2018 2:32 am, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Sun Aug 26, 2018 2:26 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----Doors-----

Type helpDoors to see help file in client.

Image

Direct download link: DoorsCmud.txt

Active Triggers: 9/9
Code:
#CLASS {Doors}
#ALIAS helpDoors {
   #PRINT {%crlf %crlf<C dodgerblue> -----Doors Help File-----</C>}
   #PRINT {<C dodgerblue>   [Updated: 10/20/2018]</C>}
   #PRINT { The ~@doorName variable is automatically filled with trigger events.}
   #PRINT {  Hint: set macros for open ~@doorName and close ~@doorName to spam a door.}
   #PRINT {}
   #PRINT {  Usage:<C dodgerblue> <command></C> to complete action:}
   #PRINT {    cd to close  ~@doorName}
   #PRINT {    kd to knock  ~@doorName}
   #PRINT {    ld to lock   ~@doorName}
   #PRINT {    od to open   ~@doorName}
   #PRINT {    pd to pick   ~@doorName}
   #PRINT {    ud to unlock ~@doorName}
   #PRINT {}
   #PRINT {  Usage:<C dodgerblue> <command> <direction></C> to use door name saved in map properties for that direction.}
   #PRINT {   Example: cd n to close ~%doorname north (~%doorName is door name saved in map properties)}
   #PRINT {}
   #PRINT { Recognized directions: <C dodgerblue>n e s w u d</C>}
   #PRINT {  Note: anything not a recognized direction will be ignored and <command> ~@doorName used instead.}
   #PRINT {   Example: cd sw (incorrect directional) will send command: <C dodgerblue>close ~@doorName</C>}
   #PRINT {}
   #PRINT { Usage:<C dodgerblue> showDoorExits</C> to toggle door name in exit line function on/off.}
   #PRINT {  Example: [ obvious exits: E W ] [ E: chamberdoor ]}
   #PRINT {   Current toggle: <C dodgerblue>%if(@showDoorExits,ON,OFF)</C>}
   #PRINT {}
   #PRINT { Usage:<C dodgerblue> setDoor <direction></C> to create ~@doorName in that direction on your map.}
   #PRINT {  Example: setDoor n to create a door north of current map location named ~@doorName.}
   #PRINT {}
   #PRINT { Usage:<C dodgerblue> setDoor <direction> <door name></C> to create door in direction with given name.}
   #PRINT {  Example: [setDoor s gate] to create a door south of current map location named gate.}
   #PRINT {   Note: the setDoor command sets door name the same on both sides of door,}
   #PRINT {    must manually adjust room properties for doors with different named sides.}
   #PRINT {}
   }
#ALIAS setDoor {
   #IF (%ismember(%1,@doorDirection)) {
      #MENU {Mapper|File|Map}
      #IF (%len(%2)) {#DOOR %1 %2} {#DOOR %1 @doorName}
      #MENU {Mapper|File|Follow}
      }
   }
#ALIAS cd {
   #IF (%ismember(%lower(%1),@doorDirection)) {
      #IF (%null(%doorname(,%1))) {
         #PRINT {%crlf Door name not saved in map properties for that direction... %crlf}
         } {
         #SEND {close %doorname(,%1) %item(@doorDirectionInput,%ismember(%lower(%1),@doorDirection))}
         #IF (@doorName=%doorname(,%1)) {} {
            #VAR doorName {%doorname(,%1)}
            #PRINT {%crlf doorName is now set as: <C dodgerblue>@doorName</C> %crlf}
            }
         }
      } {
      #SEND {close @doorName}
      }
   }
#ALIAS kd {
   #IF (%ismember(%lower(%1),@doorDirection)) {
      #IF (%null(%doorname(,%1))) {
         #PRINT {%crlf Door name not saved in map properties for that direction... %crlf}
         } {
         #SEND {knock %doorname(,%1) %item(@doorDirectionInput,%ismember(%lower(%1),@doorDirection))}
         #IF (@doorName=%doorname(,%1)) {} {
            #VAR doorName {%doorname(,%1)}
            #PRINT {%crlf doorName is now set as: <C dodgerblue>@doorName</C> %crlf}
            }
         }
      } {
      #SEND {knock @doorName}
      }
   }
#ALIAS ld {
   #IF (%ismember(%lower(%1),@doorDirection)) {
      #IF (%null(%doorname(,%1))) {
         #PRINT {%crlf Door name not saved in map properties for that direction... %crlf}
         } {
         #SEND {lock %doorname(,%1) %item(@doorDirectionInput,%ismember(%lower(%1),@doorDirection))}
         #IF (@doorName=%doorname(,%1)) {} {
            #VAR doorName {%doorname(,%1)}
            #PRINT {%crlf doorName is now set as: <C dodgerblue>@doorName</C> %crlf}
            }
         }
      } {
      #SEND {lock @doorName}
      }
   }
#ALIAS od {
   #IF (%ismember(%lower(%1),@doorDirection)) {
      #IF (%null(%doorname(,%1))) {
         #PRINT {%crlf Door name not saved in map properties for that direction... %crlf}
         } {
         #SEND {open %doorname(,%1) %item(@doorDirectionInput,%ismember(%lower(%1),@doorDirection))}
         #IF (@doorName=%doorname(,%1)) {} {
            #VAR doorName {%doorname(,%1)}
            #PRINT {%crlf doorName is now set as: <C dodgerblue>@doorName</C> %crlf}
            }
         }
      } {
      #SEND {open @doorName}
      }
   }
#ALIAS pd {
   #IF (%ismember(%lower(%1),@doorDirection)) {
      #IF (%null(%doorname(,%1))) {
         #PRINT {%crlf Door name not saved in map properties for that direction... %crlf}
         } {
         #SEND {pick %doorname(,%1) %item(@doorDirectionInput,%ismember(%lower(%1),@doorDirection))}
         #IF (@doorName=%doorname(,%1)) {} {
            #VAR doorName {%doorname(,%1)}
            #PRINT {%crlf doorName is now set as: <C dodgerblue>@doorName</C> %crlf}
            }
         }
      } {
      #SEND {pick @doorName}
      }
   }
#ALIAS ud {
   #IF (%ismember(%lower(%1),@doorDirection)) {
      #IF (%null(%doorname(,%1))) {
         #PRINT {%crlf Door name not saved in map properties for that direction... %crlf}
         } {
         #SEND {unlock %doorname(,%1) %item(@doorDirectionInput,%ismember(%lower(%1),@doorDirection))}
         #IF (@doorName=%doorname(,%1)) {} {
            #VAR doorName {%doorname(,%1)}
            #PRINT {%crlf doorName is now set as: <C dodgerblue>@doorName</C> %crlf}
            }
         }
      } {
      #SEND {unlock @doorName}
      }
   }
#VAR showDoorExits 1
#VAR doorName {}
#VAR doorExitsName {}
#VAR doorDirection {d|e|n|s|u|w}
#VAR doorDirectionInput {down|east|north|south|up|west}
#VAR doorRoomName {}
#TRIGGER "doorSeemsTrigger" {The &doorName seems to be closed.$} {
   #PRINT { doorName is now set as: <C dodgerblue>@doorName</C>}
   } "" {case}
#TRIGGER "doorHiddenTrigger" {You skillfully discover a hidden &{doorName}.$} {
   #PRINT { doorName is now set as: <C dodgerblue>@doorName</C>}
   } "" {case}
#TRIGGER "doorClosedTrigger" {The &doorName is closed.$} {
   #PRINT { doorName is now set as: <C dodgerblue>@doorName</C>}
   } "" {case}
#TRIGGER "doorOpenTrigger" {The &doorName is open.$} {
   #PRINT { doorName is now set as: <C dodgerblue>@doorName</C>}
   } "" {case}
#TRIGGER "doorObviouslyTrigger" {The &doorName is obviously open.$} {
   #PRINT { doorName is now set as: <C dodgerblue>@doorName</C>}
   } "" {case}
#TRIGGER "doorVisableTrigger" {The &doorName is quite visible.$} {
   #PRINT { doorName is now set as: <C dodgerblue>@doorName</C>}
   } "" {case}
#TRIGGER "doorExitsTrigger" {^(~[ obvious exits: *~])$} {
   #FORALL @doorDirection {
      #IF (%null(%doorname(,%i))) {} {#ADDITEM doorExitsName %concat(%upper(%i):," ",%doorname(,%i))}
      }
   #IF (%null(@doorExitsName)) {} {
      #SUB {%1 [ %replace(@doorExitsName,"|"," ") ]}
      }
   #VAR doorExitsName {}
   } "" {case|notrig}
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Last edited by Taziar on Sun Oct 21, 2018 12:28 am, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Sun Aug 26, 2018 4:51 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----Five15-----
    [Updated: 8/26/2018]

Type helpFive15 to view help file in client.

Type 515 to view current time waiting to reconnect.
    Note: automatically inputs 515 into command line on disconnection.

Renting and quitting both automatically start the 5/15 timer.
    Note: triggers on communication echo for: You say 'sleep well and wake'

20 minute linkless timer starts on any other disconnection.
    Note: Once linkless timer finishes the 5/15 timer will start.

Direct download link: Five15Cmud.txt

Active Triggers: 1/1
Input Triggers: 2
Events: OnConnect, OnDisconnect
Code:
#CLASS {Five15}
#ALIAS helpfive15 {
   #T- {five15Sleep}
   #PRINT {%crlf "-----Five15 Help File-----"}
   #PRINT {"    [Updated: 8/26/2018]"}
   #SHOW {" Type 515 to view current time waiting to reconnect."}
   #SHOW {"  Note: automatically inputs 515 into command line on disconnection."}
   #SHOW {""}
   #SHOW {" Renting and quitting both automatically start the 5/15 timer."}
   #SHOW {"  Note: triggers on communication echo for: You say 'sleep well and wake'"}
   #SHOW {""}
   #SHOW {" 20 minute linkless timer starts on any other disconnection."}
   #SHOW {"  Note: Once linkless timer finishes the 5/15 timer will start."}
   #SHOW {""}
   #T+ {five15Sleep}
   }
#ALIAS 515 {
   #SHOW {""}
   #IF (%alarm(fiveSameSideAlarm)>0) {#PRINT {" Sameside wait:" %eval(%alarm(fiveSameSideAlarm)/1000/60\1440)m %eval(%alarm(fiveSameSideAlarm)/1000\60)s}} {}
   #IF (%alarm(fiveCrossRaceAlarm)>0) {#PRINT {" Crossrace wait:" %eval(%alarm(fiveCrossRaceAlarm)/1000/60\1440)m %eval(%alarm(fiveCrossRaceAlarm)/1000\60)s}} {}
   #IF (%alarm(fivelinklessAlarm)>0) {#PRINT {" Time until linkless rented:" %eval(%alarm(fivelinklessAlarm)/1000/60\1440)m %eval(%alarm(fivelinklessAlarm)/1000\60)s}} {}
   #IF (%class(fiveSameSideAlarm)=-1 AND %class(fiveCrossRaceAlarm)=-1 AND %class(fivelinklessAlarm)=-1) {#PRINT { "Five15 timer not active..."}} {}
   }
#ALIAS five15TimerON {
   #PRINT {%crlf 5/15 minute countdown started... now. (%time(h:nn:ss))}
   #ALARM "fiveSameSideAlarm" {+301} {
      #PRINT {You may log on a sameside alt now!}
      #BEEP 0
      } "Five15"
   #ALARM "fiveCrossRaceAlarm" {+901} {
      #PRINT {You may log on a crossrace alt now!}
      #BEEP 0
      } "Five15"
   #INPUT 515 1
   }
#ALIAS twentyTimerON {
   #PRINT {%crlf 20 minute linkless countdown started... now. (%time(h:nn:ss))}
   #ALARM "fivelinklessAlarm" {+1200} {
      five15TimerON
      #BEEP 0
      } "Five15"
   #INPUT 515 1
   }
#VAR fiveSwitch 0
#TRIGGER "five15Sleep" {You say 'sleep well and wake'} {
   #VAR fiveSwitch 1
   #ALARM "fiveSwitchAlarm" {+3} {
      #VAR fiveSwitch 0
      } "Five15"
   } "" {verbatim}
#ONINPUT "five15QuitInput" {^{quit}$} {
   #VAR fiveSwitch 1
   #ALARM "fiveSwitchAlarm" {+3} {
      #VAR fiveSwitch 0
      } "Five15"
   }
#ONINPUT "five15RentInput" {^{ren|rent}$} {
   #VAR fiveSwitch 1
   #ALARM "fiveSwitchAlarm" {+3} {
      #VAR fiveSwitch 0
      } "Five15"
   }
#EVENT OnConnect {
   #IF (%class(fiveSameSideAlarm)=1) {
      #TEMP {Trigger {fiveSameSideAlarm} removed.} {#GAG} "Five15" {case|verbatim}
      #UNTRIGGER fiveSameSideAlarm
      } {}
   #IF (%class(fiveCrossRaceAlarm)=1) {
      #TEMP {Trigger {fiveCrossRaceAlarm} removed.} {#GAG} "Five15" {case|verbatim}
      #UNTRIGGER fiveCrossRaceAlarm
      } {}
   #IF (%class(fivelinklessAlarm)=1) {
      #TEMP {Trigger {fivelinklessAlarm} removed.} {#GAG} "Five15" {case|verbatim}
      #UNTRIGGER fivelinklessAlarm
      } {}
   #VAR fiveSwitch 0
   #INPUT {}
   }
#EVENT OnDisconnect {
   #IF (@fiveSwitch) {five15TimerON} {twentyTimerON}
   }
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Top
 Profile  
 
 Post subject: Re: HoM cMUD Scripts
PostPosted: Wed Sep 05, 2018 3:35 pm 
Offline

Joined: Tue Apr 07, 2015 8:24 pm
Posts: 132
Location: Seattle
-----Clumsy-----
    [Updated: 9/5/2018]

Script tracks individual character clumsy data across sessions.
    Note: must use bas or bash, kic or kick in command line or cMUD alias.
      WoTMUD alias will not activate bash or kick clumsy stats.

Type helpClumsy to view help file in client.

Type showClumsy to toggle session message on/off for all characters.
Type showClumsyOT to toggle over time message on/off for current character.

Type any of the following commands to show individual clumsy data:
    bashCount
    chargeCount
    clumsyCount
    kickCount
    stabCount
    throwCount
    throwCritCount
Type resetClumsy to reset data for current session only.
Type resetClumsyData to reset ALL data for current character.
    Note: Shows date (month/day/year) since resetting data.

Direct download link: ClumsyCmud.txt

Active Triggers: 3/18
Input Triggers: 2
Code:
#CLASS {Clumsy}
#ALIAS helpClumsy {
   #PRINT {%crlf "----Clumsy Help File----"}
   #PRINT {"   [Updated: 9/5/2018]"}
   #SHOW {" Script tracks individual character clumsy data across sessions."}
   #SHOW {"  Note: must use bas or bash, kic or kick in command line or cMUD alias."}
   #SHOW {"    WoTMUD alias will not activate bash or kick clumsy stats."}
   #SHOW {""}
   #SHOW {" Type showClumsy to toggle session message on/off for all characters."}
   #SHOW {" Type showClumsyOT to toggle over time message on/off for current character."}
   #SHOW {""}
   #SHOW {" Type any of the following commands to show individual clumsy data: "}
   #SHOW {"   bashCount"}
   #SHOW {"   chargeCount"}
   #SHOW {"   clumsyCount"}
   #SHOW {"   kickCount"}
   #SHOW {"   stabCount"}
   #SHOW {"   throwCount"}
   #SHOW {"   throwCritCount"}
   #SHOW {""}
   #SHOW {" Type resetClumsy to reset data for current session only."}
   #SHOW {" Type resetClumsyData to reset ALL data for current character."}
   #SHOW {"  Note: Shows date (month/day/year) since resetting data."}
   #SHOW {""}
   }
#ALIAS showClumsy {
   #IF (@showClumsy=1) {
      #VAR showClumsy 0
      #PRINT {Clumsy session message is turned on.}
      } {
      #VAR showClumsy 1
      #PRINT {Clumsy session message is turned off.}
      }
   }
#ALIAS showClumsyOT {
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #VAR %concat("show",%char,"OT") 0
      #PRINT {Clumsy over time message for %char is turned on.}
      } {
      #VAR %concat("show",%char,"OT") 1
      #PRINT {Clumsy over time message for %char is turned off.}
      }
   }
#ALIAS bashCount {
   #SHOW {%crlf "Bash Data:"}
   #IF (@clumsyTotalBash>0) {
      #PRINT {This session you've landed @clumsyLandBash out of @clumsyTotalBash bashes (@{clumsyPercentageBash}~% landed)}
      } {
      #PRINT {No current session data available...}
      }
   #IF (%expand(%concat("@clumsy",%char,"TotalBash"))>0) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandBash")) out of %expand(%concat("@clumsy",%char,"TotalBash")) bashes (%expand(%concat("@clumsy",%char,"PercentageBash"))~% landed)}
      } {
      #PRINT {No over time data available...}
      }
   }
#ALIAS chargeCount {
   #SHOW {%crlf "Charge Data:"}
   #IF (@clumsyTotalCharge>0) {
      #PRINT {This session you've landed @clumsyLandCharge out of @clumsyTotalCharge charges (@{clumsyPercentageCharge}~% landed)}
      } {
      #PRINT {No current session data available...}
      }
   #IF (%expand(%concat("@clumsy",%char,"TotalCharge"))>0) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandCharge")) out of %expand(%concat("@clumsy",%char,"TotalCharge")) charges (%expand(%concat("@clumsy",%char,"PercentageCharge"))~% landed)}
      } {
      #PRINT {No over time data available...}
      }
   }
#ALIAS clumsyCount {
   #SHOW {""}
   bashCount
   chargeCount
   kickCount
   stabCount
   throwCount
   throwCritCount
   }
#ALIAS kickCount {
   #SHOW {%crlf "Kick Data:"}
   #IF (@clumsyTotalKick>0) {
      #PRINT {This session you've landed @clumsyLandKick out of @clumsyTotalKick kicks (@{clumsyPercentageKick}~% landed)}
      } {
      #PRINT {No current session data available...}
      }
   #IF (%expand(%concat("@clumsy",%char,"TotalKick"))>0) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandKick")) out of %expand(%concat("@clumsy",%char,"TotalKick")) kicks (%expand(%concat("@clumsy",%char,"PercentageKick"))~% landed)}
      } {
      #PRINT {No over time data available...}
      }
   }
#ALIAS stabCount {
   #SHOW {%crlf "Stab Data:"}
   #IF (@clumsyTotalStab>0) {
      #PRINT {This session you've landed @clumsyLandStab out of @clumsyTotalStab stabs (@{clumsyPercentageStab}~% landed)}
      } {
      #PRINT {No current session data available...}
      }
   #IF (%expand(%concat("@clumsy",%char,"TotalStab"))>0) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandStab")) out of %expand(%concat("@clumsy",%char,"TotalStab")) stabs (%expand(%concat("@clumsy",%char,"PercentageStab"))~% landed)}
      } {
      #PRINT {No over time data available...}
      }
   }
#ALIAS throwCount {
   #SHOW {%crlf "Throw Data:"}
   #IF (@clumsyTotalThrow>0) {
      #PRINT {This session you've landed @clumsyLandThrow out of @clumsyTotalThrow throws (@{clumsyPercentageThrow}~% landed)}
      } {
      #PRINT {No current session data available...}
      }
   #IF (%expand(%concat("@clumsy",%char,"TotalThrow"))>0) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandThrow")) out of %expand(%concat("@clumsy",%char,"TotalThrow")) throws (%expand(%concat("@clumsy",%char,"PercentageThrow"))~% landed)}
      } {
      #PRINT {No over time data available...}
      }
   }
#ALIAS throwCritCount {
   #SHOW {%crlf "Critical Throw Data:"}
   #IF (@clumsyTotalThrow>0) {
      #PRINT {This session you've landed @clumsyLandThrowCritical critical throws out of @clumsyLandThrow total landed throws (@{clumsyPercentageThrowCritical}~% crits landed)}
      } {
      #PRINT {No current session data available...}
      }
   #IF (%expand(%concat("@clumsy",%char,"LandThrow"))>0) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandThrowCritical")) criticals out of %expand(%concat("@clumsy",%char,"LandThrow")) total landed throws (%expand(%concat("@clumsy",%char,"PercentageThrowCritical"))~% crits landed)}
      } {
      #PRINT {No over time data available...}
      }
   }
#ALIAS clumsyThrowTriggers {
   #IF (%1=on) {
      #T+ clumsyThrowLand
      #T+ clumsyThrowRip
      #T+ clumsyThrowCrit
      #T+ clumsyThrowDeflect
      #T+ clumsyThrowMiss
      } {}
   #IF (%1=off) {
      #T- clumsyThrowLand
      #T- clumsyThrowRip
      #T- clumsyThrowCrit
      #T- clumsyThrowDeflect
      #T- clumsyThrowMiss
      } {}
   }
#ALIAS clumsyKickTriggers {
   #IF (%1=on) {
      #T+ clumsyKickLand
      #T+ clumsyKickHit
      #T+ clumsyKickMile
      #T+ clumsyKickMiss
      } {}
   #IF (%1=off) {
      #T- clumsyKickLand
      #T- clumsyKickHit
      #T- clumsyKickMile
      #T- clumsyKickMiss
      } {}
   }
#ALIAS clumsyBashTriggers {
   #IF (%1=on) {
      #T+ clumsyBashLand
      #T+ clumsyBashTopple
      } {}
   #IF (%1=off) {
      #T- clumsyBashLand
      #T- clumsyBashTopple
      } {}
   }
#ALIAS resetClumsyData {
   #RESET Clumsy
   #VAR %concat("clumsy",%char,"LandBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"LandCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"LandKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"LandStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"LandThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"LandThrowCritical") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"MissBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"MissCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"MissKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"MissStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"MissThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"PercentageBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"PercentageCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"PercentageDisarm") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"PercentageKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"PercentageStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"PercentageThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"PercentageThrowCritical") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"RoundPercent") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"RoundTotal") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"TotalBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"TotalCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"TotalKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"TotalStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat("clumsy",%char,"TotalThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
   #VAR %concat(%char,"OT") {%time("m/d/20y")} {_nodef} {Clumsy|%concat(%char,ClumsyVariables)}
   #PRINT {Clumsy data for %char is now reset.}
   }
#ALIAS resetClumsy {
   #RESET Clumsy
   }
#VAR clumsyLandBash 0 0
#VAR clumsyLandCharge 0 0
#VAR clumsyLandDisarm 0 0
#VAR clumsyLandKick 0 0
#VAR clumsyLandStab 0 0
#VAR clumsyLandThrow 0 0
#VAR clumsyLandThrowCritical 0 0
#VAR clumsyMissBash 0 0
#VAR clumsyMissCharge 0 0
#VAR clumsyMissKick 0 0
#VAR clumsyMissStab 0 0
#VAR clumsyMissThrow 0 0
#VAR clumsyPercentageBash 0 0
#VAR clumsyPercentageCharge 0 0
#VAR clumsyPercentageDisarm 0 0
#VAR clumsyPercentageKick 0 0
#VAR clumsyPercentageStab 0 0
#VAR clumsyPercentageThrow 0 0
#VAR clumsyPercentageThrowCritical 0 0
#VAR clumsyRoundDisarm 0 0
#VAR clumsyRoundPercent 0 0
#VAR clumsyRoundTotal 0 0
#VAR clumsyTotalBash 0 0
#VAR clumsyTotalCharge 0 0
#VAR clumsyTotalKick 0 0
#VAR clumsyTotalStab 0 0
#VAR clumsyTotalThrow 0 0
#VAR showClumsy 1
#TRIGGER "clumsyBashLand" {^Your bash at * sprawling!$} {
   clumsyBashTriggers off
   #ADD clumsyLandBash 1
   #ADD %concat("clumsy",%char,"LandBash") 1
   #VAR clumsyTotalBash @clumsyLandBash+@clumsyMissBash
   #VAR clumsyPercentageBash @clumsyLandBash*100/@clumsyTotalBash
   #VAR %concat("clumsy",%char,"TotalBash") %expand(%concat("@clumsy",%char,"LandBash"))+%expand(%concat("@clumsy",%char,"MissBash"))
   #VAR %concat("clumsy",%char,"PercentageBash") (%expand(%concat("@clumsy",%char,"LandBash"))*100/%expand(%concat("@clumsy",%char,"TotalBash")))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandBash out of @clumsyTotalBash bashes (@{clumsyPercentageBash}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandBash")) out of %expand(%concat("@clumsy",%char,"TotalBash")) bashes (%expand(%concat("@clumsy",%char,"PercentageBash"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyBashTopple" {^As * your bash, you topple over and fall to the ground!$} {
   clumsyBashTriggers off
   #ADD clumsyMissBash 1
   #ADD %concat("clumsy",%char,"MissBash") 1
   #VAR clumsyTotalBash @clumsyLandBash+@clumsyMissBash
   #VAR clumsyPercentageBash (@clumsyLandBash*100/@clumsyTotalBash)
   #VAR %concat("clumsy",%char,"TotalBash") %expand(%concat("@clumsy",%char,"LandBash"))+%expand(%concat("@clumsy",%char,"MissBash"))
   #VAR %concat("clumsy",%char,"PercentageBash") (%expand(%concat("@clumsy",%char,"LandBash"))*100/%expand(%concat("@clumsy",%char,"TotalBash")))
   #IF (@showClumsy) {
      #PRINT {This session you've missed @clumsyMissBash out of @clumsyTotalBash bashes (@{clumsyPercentageBash}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've missed %expand(%concat("@clumsy",%char,"MissBash")) out of %expand(%concat("@clumsy",%char,"TotalBash")) bashes (%expand(%concat("@clumsy",%char,"PercentageBash"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyChargeTrigger" {You line up your charge...$} {
   #T+ {clumsyChargeLand}
   #T+ {clumsyChargeOops}
   #ALARM "clumsyChargeAlarm" +10 {
      #T- {clumsyChargeLand}
      #T- {clumsyChargeOops}
      } "Clumsy"
   } "" {case}
#TRIGGER "clumsyChargeLand" {^Chaaaaarrrge!! * bleeds profusely as you skewer * with *!$} {
   #T- {clumsyChargeLand}
   #T- {clumsyChargeOops}
   #ADD clumsyLandCharge 1
   #ADD %concat("clumsy",%char,"LandCharge") 1
   #VAR clumsyTotalCharge @clumsyMissCharge+@clumsyLandCharge
   #VAR clumsyPercentageCharge @clumsyLandCharge*100/@clumsyTotalCharge
   #VAR %concat("clumsy",%char,"TotalCharge") %expand(%concat("@clumsy",%char,"MissCharge"))+%expand(%concat("@clumsy",%char,"LandCharge"))
   #VAR %concat("clumsy",%char,"PercentageCharge") %expand(%concat("@clumsy",%char,"LandCharge"))*100/%expand(%concat("@clumsy",%char,"TotalCharge"))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandCharge out of @clumsyTotalCharge charges (@{clumsyPercentageCharge}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandCharge")) out of %expand(%concat("@clumsy",%char,"TotalCharge")) charges (%expand(%concat("@clumsy",%char,"PercentageCharge"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyChargeOops" {^Oops. Your lame efforts cause you to miss.$} {
   #T- {clumsyChargeLand}
   #T- {clumsyChargeOops}
   #ADD clumsyMissCharge 1
   #ADD %concat("clumsy",%char,"MissCharge") 1
   #VAR clumsyTotalCharge @clumsyMissCharge+@clumsyLandCharge
   #VAR clumsyPercentageCharge @clumsyLandCharge*100/@clumsyTotalCharge
   #VAR %concat("clumsy",%char,"TotalCharge") %expand(%concat("@clumsy",%char,"MissCharge"))+%expand(%concat("@clumsy",%char,"LandCharge"))
   #VAR %concat("clumsy",%char,"PercentageCharge") (%expand(%concat("@clumsy",%char,"LandCharge"))*100/%expand(%concat("@clumsy",%char,"TotalCharge")))
   #IF (@showClumsy) {
      #PRINT {This session you've clumsied @clumsyMissCharge out of @clumsyTotalCharge charges (@{clumsyPercentageCharge}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've clumsied %expand(%concat("@clumsy",%char,"MissCharge")) out of %expand(%concat("@clumsy",%char,"TotalCharge")) charges (%expand(%concat("@clumsy",%char,"PercentageCharge"))~% landed)}
      } {}   
   } "" {case|disable}
#TRIGGER "clumsyKickLand" {Your boots need polishing again -- blood all over...$} {
   clumsyKickTriggers off
   #ADD clumsyLandKick 1
   #ADD %concat("clumsy",%char,"LandKick") 1
   #VAR clumsyTotalKick @clumsyLandKick+@clumsyMissKick
   #VAR clumsyPercentageKick @clumsyLandKick*100/@clumsyTotalKick
   #VAR %concat("clumsy",%char,"TotalKick") %expand(%concat("@clumsy",%char,"LandKick"))+%expand(%concat("@clumsy",%char,"MissKick"))
   #VAR %concat("clumsy",%char,"PercentageKick") %expand(%concat("@clumsy",%char,"LandKick"))*100/%expand(%concat("@clumsy",%char,"TotalKick"))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandKick out of @clumsyTotalKick kicks (@{clumsyPercentageKick}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandKick")) out of %expand(%concat("@clumsy",%char,"TotalKick")) kicks (%expand(%concat("@clumsy",%char,"PercentageKick"))~% landed)}
      } {}   
   } "" {case|disable}
#TRIGGER "clumsyKickHit" {Your kick hits * in the solar plexus!$} {
   clumsyKickTriggers off
   #ADD clumsyLandKick 1
   #ADD %concat("clumsy",%char,"LandKick") 1
   #VAR clumsyTotalKick @clumsyLandKick+@clumsyMissKick
   #VAR clumsyPercentageKick @clumsyLandKick*100/@clumsyTotalKick
   #VAR %concat("clumsy",%char,"TotalKick") %expand(%concat("@clumsy",%char,"LandKick"))+%expand(%concat("@clumsy",%char,"MissKick"))
   #VAR %concat("clumsy",%char,"PercentageKick") %expand(%concat("@clumsy",%char,"LandKick"))*100/%expand(%concat("@clumsy",%char,"TotalKick"))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandKick out of @clumsyTotalKick kicks (@{clumsyPercentageKick}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandKick")) out of %expand(%concat("@clumsy",%char,"TotalKick")) kicks (%expand(%concat("@clumsy",%char,"PercentageKick"))~% landed)}
      } {}   
   } "" {case|disable}
#TRIGGER "clumsyKickMiss" {You miss your kick at * groin, much to * relief...$} {
   clumsyKickTriggers off
   #ADD clumsyMissKick 1
   #ADD %concat("clumsy",%char,"MissKick") 1
   #VAR clumsyTotalKick @clumsyLandKick+@clumsyMissKick
   #VAR clumsyPercentageKick @clumsyLandKick*100/@clumsyTotalKick
   #VAR %concat("clumsy",%char,"TotalKick") %expand(%concat("@clumsy",%char,"LandKick"))+%expand(%concat("@clumsy",%char,"MissKick"))
   #VAR %concat("clumsy",%char,"PercentageKick") %expand(%concat("@clumsy",%char,"LandKick"))*100/%expand(%concat("@clumsy",%char,"TotalKick"))
   #IF (@showClumsy) {
      #PRINT {This session you've clumsied @clumsyMissKick out of @clumsyTotalKick kicks (@{clumsyPercentageKick}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've clumsied %expand(%concat("@clumsy",%char,"MissKick")) out of %expand(%concat("@clumsy",%char,"TotalKick")) kicks (%expand(%concat("@clumsy",%char,"PercentageKick"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyKickMile" {Your beautiful full-circle kick misses * by a mile.$} {
   clumsyKickTriggers off
   #ADD clumsyMissKick 1
   #ADD %concat("clumsy",%char,"MissKick") 1
   #VAR clumsyTotalKick @clumsyLandKick+@clumsyMissKick
   #VAR clumsyPercentageKick @clumsyLandKick*100/@clumsyTotalKick
   #VAR %concat("clumsy",%char,"TotalKick") %expand(%concat("@clumsy",%char,"LandKick"))+%expand(%concat("@clumsy",%char,"MissKick"))
   #VAR %concat("clumsy",%char,"PercentageKick") %expand(%concat("@clumsy",%char,"LandKick"))*100/%expand(%concat("@clumsy",%char,"TotalKick"))
   #IF (@showClumsy) {
      #PRINT {This session you've clumsied @clumsyMissKick out of @clumsyTotalKick kicks (@{clumsyPercentageKick}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've clumsied %expand(%concat("@clumsy",%char,"MissKick")) out of %expand(%concat("@clumsy",%char,"TotalKick")) kicks (%expand(%concat("@clumsy",%char,"PercentageKick"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyThrowTrigger" {You throw * at *.$} {
   clumsyThrowTriggers on
   #ALARM "clumsyThrowAlarm" +10 {clumsyThrowTriggers off} "Clumsy"
   } "" {case}
#TRIGGER "clumsyThrowLand" {^* grunts in pain as * is struck by *.$} {
   clumsyThrowTriggers off
   #ADD clumsyLandThrow 1
   #ADD %concat("clumsy",%char,"LandThrow") 1
   #VAR clumsyTotalThrow @clumsyMissThrow+@clumsyLandThrow
   #VAR clumsyPercentageThrow @clumsyLandThrow*100/@clumsyTotalThrow
   #VAR %concat("clumsy",%char,"TotalThrow") %expand(%concat("@clumsy",%char,"MissThrow"))+%expand(%concat("@clumsy",%char,"LandThrow"))
   #VAR %concat("clumsy",%char,"PercentageThrow") %expand(%concat("@clumsy",%char,"LandThrow"))*100/%expand(%concat("@clumsy",%char,"TotalThrow"))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandThrow out of @clumsyTotalThrow throws (@{clumsyPercentageThrow}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandThrow")) out of %expand(%concat("@clumsy",%char,"TotalThrow")) throws (%expand(%concat("@clumsy",%char,"PercentageThrow"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyThrowRip" {^* rips through * guts as * collapses to the ground.$} {
   clumsyThrowTriggers off
   #ADD clumsyLandThrow 1
   #ADD %concat("clumsy",%char,"LandThrow") 1
   #VAR clumsyTotalThrow @clumsyMissThrow+@clumsyLandThrow
   #VAR clumsyPercentageThrow @clumsyLandThrow*100/@clumsyTotalThrow
   #VAR %concat("clumsy",%char,"TotalThrow") %expand(%concat("@clumsy",%char,"MissThrow"))+%expand(%concat("@clumsy",%char,"LandThrow"))
   #VAR %concat("clumsy",%char,"PercentageThrow") %expand(%concat("@clumsy",%char,"LandThrow"))*100/%expand(%concat("@clumsy",%char,"TotalThrow"))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandThrow out of @clumsyTotalThrow throws (@{clumsyPercentageThrow}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandThrow")) out of %expand(%concat("@clumsy",%char,"TotalThrow")) throws (%expand(%concat("@clumsy",%char,"PercentageThrow"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyThrowCrit" {^* spasms in excruciating pain as * is struck by *.$} {
   clumsyThrowTriggers off
   #ADD clumsyLandThrow 1
   #ADD clumsyLandThrowCritical 1
   #ADD %concat("clumsy",%char,"LandThrow") 1
   #ADD %concat("clumsy",%char,"LandThrowCritical") 1
   #VAR clumsyPercentageThrowCritical @clumsyLandThrowCritical*100/@clumsyLandThrow
   #VAR %concat("clumsy",%char,"PercentageThrowCritical") %expand(%concat("@clumsy",%char,"LandThrowCritical"))*100/%expand(%concat("@clumsy",%char,"LandThrow"))
   #VAR clumsyTotalThrow @clumsyMissThrow+@clumsyLandThrow
   #VAR clumsyPercentageThrow @clumsyLandThrow*100/@clumsyTotalThrow
   #VAR %concat("clumsy",%char,"TotalThrow") %expand(%concat("@clumsy",%char,"MissThrow"))+%expand(%concat("@clumsy",%char,"LandThrow"))
   #VAR %concat("clumsy",%char,"PercentageThrow") %expand(%concat("@clumsy",%char,"LandThrow"))*100/%expand(%concat("@clumsy",%char,"TotalThrow"))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandThrow out of @clumsyTotalThrow throws (@{clumsyPercentageThrow}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandThrow")) out of %expand(%concat("@clumsy",%char,"TotalThrow")) throws (%expand(%concat("@clumsy",%char,"PercentageThrow"))~% landed)}
      } {}
   } "" {case|disable}
#TRIGGER "clumsyThrowDeflect" {^* deflects * that was thrown at *.$} {
   clumsyThrowTriggers off
   #ADD clumsyMissThrow 1
   #ADD %concat("clumsy",%char,"MissThrow") 1
   #VAR clumsyTotalThrow @clumsyMissThrow+@clumsyLandThrow
   #VAR clumsyPercentageThrow @clumsyLandThrow*100/@clumsyTotalThrow
   #VAR %concat("clumsy",%char,"TotalThrow") %expand(%concat("@clumsy",%char,"MissThrow"))+%expand(%concat("@clumsy",%char,"LandThrow"))
   #VAR %concat("clumsy",%char,"PercentageThrow") %expand(%concat("@clumsy",%char,"LandThrow"))*100/%expand(%concat("@clumsy",%char,"TotalThrow"))
   #IF (@showClumsy) {
      #PRINT {This session you've clumsied @clumsyMissThrow out of @clumsyTotalThrow throws (@{clumsyPercentageThrow}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've clumsied %expand(%concat("@clumsy",%char,"MissThrow")) out of %expand(%concat("@clumsy",%char,"TotalThrow")) throws (%expand(%concat("@clumsy",%char,"PercentageThrow"))~% landed)}
      } {}   
   } "" {case|disable}
#TRIGGER "clumsyThrowMiss" {^* just misses * and falls to the ground.$} {
   clumsyThrowTriggers off
   #ADD clumsyMissThrow 1
   #ADD %concat("clumsy",%char,"MissThrow") 1
   #VAR clumsyTotalThrow @clumsyMissThrow+@clumsyLandThrow
   #VAR clumsyPercentageThrow @clumsyLandThrow*100/@clumsyTotalThrow
   #VAR %concat("clumsy",%char,"TotalThrow") %expand(%concat("@clumsy",%char,"MissThrow"))+%expand(%concat("@clumsy",%char,"LandThrow"))
   #VAR %concat("clumsy",%char,"PercentageThrow") %expand(%concat("@clumsy",%char,"LandThrow"))*100/%expand(%concat("@clumsy",%char,"TotalThrow"))
   #IF (@showClumsy) {
      #PRINT {This session you've clumsied @clumsyMissThrow out of @clumsyTotalThrow throws (@{clumsyPercentageThrow}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've clumsied %expand(%concat("@clumsy",%char,"MissThrow")) out of %expand(%concat("@clumsy",%char,"TotalThrow")) throws (%expand(%concat("@clumsy",%char,"PercentageThrow"))~% landed)}
      } {}   
   } "" {case|disable}
#TRIGGER "clumsyStabTrigger" {You silently approach your victim...$} {
   #T+ {clumsyStabLand}
   #T+ {clumsyStabOoops}
   #ALARM "clumsyStabAlarm" +10 {
      #T- {clumsyStabLand}
      #T- {clumsyStabOoops}
      } "Clumsy"
   } "" {case}
#TRIGGER "clumsyStabLand" {^* makes a strange sound as you place * in * back!$} {
   #T- {clumsyStabLand}
   #T- {clumsyStabOoops}
   #ADD clumsyLandStab 1
   #ADD %concat("clumsy",%char,"LandStab") 1
   #VAR clumsyTotalStab @clumsyLandStab+@clumsyMissStab
   #VAR clumsyPercentageStab @clumsyLandStab*100/@clumsyTotalStab
   #VAR %concat("clumsy",%char,"TotalStab") %expand(%concat("@clumsy",%char,"LandStab"))+%expand(%concat("@clumsy",%char,"MissStab"))
   #VAR %concat("clumsy",%char,"PercentageStab") %expand(%concat("@clumsy",%char,"LandStab"))*100/%expand(%concat("@clumsy",%char,"TotalStab"))
   #IF (@showClumsy) {
      #PRINT {This session you've landed @clumsyLandStab out of @clumsyTotalStab stabs (@{clumsyPercentageStab}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've landed %expand(%concat("@clumsy",%char,"LandStab")) out of %expand(%concat("@clumsy",%char,"TotalStab")) stabs (%expand(%concat("@clumsy",%char,"PercentageStab"))~% landed)}
      } {}   
   } "" {case|disable}
#TRIGGER "clumsyStabOoops" {^Ooops. Your clumsy execution broadcasts your intentions.$} {
   #T- {clumsyStabLand}
   #T- {clumsyStabOoops}
   #ADD clumsyMissStab 1
   #ADD %concat("clumsy",%char,"MissStab") 1
   #VAR clumsyTotalStab @clumsyLandStab+@clumsyMissStab
   #VAR clumsyPercentageStab @clumsyLandStab*100/@clumsyTotalStab
   #VAR %concat("clumsy",%char,"TotalStab") %expand(%concat("@clumsy",%char,"LandStab"))+%expand(%concat("@clumsy",%char,"MissStab"))
   #VAR %concat("clumsy",%char,"PercentageStab") %expand(%concat("@clumsy",%char,"LandStab"))*100/%expand(%concat("@clumsy",%char,"TotalStab"))
   #IF (@showClumsy) {
      #PRINT {This session you've clumsied @clumsyMissStab out of @clumsyTotalStab stabs (@{clumsyPercentageStab}~% landed)}
      } {}
   #IF (%expand(%concat("@show",%char,"OT"))) {
      #PRINT {Since %expand(%concat("@",%char,"OT")) you've clumsied %expand(%concat("@clumsy",%char,"MissStab")) out of %expand(%concat("@clumsy",%char,"TotalStab")) stabs (%expand(%concat("@clumsy",%char,"PercentageStab"))~% landed)}
      } {}
   } "" {case|disable}
#ONINPUT "clumsyKickInput" {^{kic|kick}} {clumsyKickTriggers on} "Clumsy" {}
#ONINPUT "clumsyBashInput" {^{bas|bash}} {clumsyBashTriggers on} "Clumsy" {}
#EVENT OnConnect {
   #IF (%class(Clumsy|%concat(%char,ClumsyVariables))=-1) {
      #CLASS {Clumsy|%concat(%char,ClumsyVariables)} {disable}
      #CLASS 0
      #VAR %concat("clumsy",%char,"LandBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"LandCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"LandKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"LandStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"LandThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"LandThrowCritical") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"MissBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"MissCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"MissKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"MissStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"MissThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"PercentageBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"PercentageCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"PercentageDisarm") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"PercentageKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"PercentageStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"PercentageThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"PercentageThrowCritical") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"RoundPercent") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"RoundTotal") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"TotalBash") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"TotalCharge") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"TotalKick") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"TotalStab") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("clumsy",%char,"TotalThrow") 0 _nodef {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat("show",%char,"OT") {1} {_nodef} {Clumsy|%concat(%char,ClumsyVariables)}
      #VAR %concat(%char,"OT") {%time("m/d/20y")} {_nodef} {Clumsy|%concat(%char,ClumsyVariables)}
      } {
      #T+ {Clumsy|%concat(%char,ClumsyVariables)}
      }
   }
#CLASS 0

_________________
House of Medakan zMUD Scripts: Table of Contents

House of Medakan cMUD Scripts: Table of Contents


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 14 posts ]  Go to page 1, 2  Next

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group