Updated World and files for 3.55 release. --Rumble

This commit is contained in:
Rumble
2008-01-16 23:19:50 +00:00
parent 453cbdaf0b
commit af18bd91b6
98 changed files with 7739 additions and 4409 deletions

View File

@@ -8,7 +8,7 @@ Non-attachable trigger~
Mob Tutorial Example Quest Offer - M14~
0 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A very basic 3 trigger receive quest. Trigs 1-3.
* Make sure the actor is a player first.
if %actor.is_pc%
@@ -30,7 +30,7 @@ end
Mob Tutorial Example Kill Ogre - 16~
0 f 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A very basic 3 trigger receive quest. Trigs 1-3.
say you got the best of me %actor.name%. But I'll be back.
* Load the wings to be returned to the questmaster.
@@ -42,7 +42,7 @@ say you got the best of me %actor.name%. But I'll be back.
Mob Tutorial Example Completion - 14~
0 j 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A very basic 3 trigger receive quest. Trigs 1-3.
* Check if this was indeed the right object.
if %object.vnum% == 1
@@ -64,7 +64,7 @@ end
Tutorial II Guard Greet - 24~
0 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A basic guard bribe trigger. Trigs 4, 5, 7, 8.
* This is a N S road so only greet players arriving from the south.
if %direction% == south && %actor.is_pc%
@@ -78,7 +78,7 @@ end
Tutorial II Guard Bribe 10 - 24~
0 m 1
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A basic guard bribe trigger. Trigs 4, 5, 7, 8.
* This is a comment. Always use amplifying comments to explain your Triggers!
* If actor gives 10 coins or more.
@@ -108,7 +108,7 @@ end
Obj Command Magic Eight Ball - O47~
1 c 2
shake~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Numeric Arg: 2 means in character's carried inventory.
* Command trigs do not work for level 32 and above.
* There are 20 possible answers that the Magic Eight Ball can give.
@@ -203,7 +203,7 @@ end
Tutorial II Guard Closes Gate - 24~
0 e 0
The gate is opened from~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A basic guard bribe trigger. Trigs 4, 5, 7, 8.
* This is required to close the gate after someone opens it from the other
* side.
@@ -216,7 +216,7 @@ lock gate
Tutorial II Guard Closes Gate 2 - 24~
0 e 0
leaves north.~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A basic guard bribe trigger. Trigs 4, 5, 7, 8.
* This is required to close the gate after the guard is bribed and someone
* leaves to the north.
@@ -229,7 +229,7 @@ lock gate
Tutorial Quest 1317 - Starter~
0 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Quest Trigs 9-12. If the player comes from the south and has not done the quest.
if %direction% == south
if %actor.varexists(solved_tutorial_quest_zone_0)%
@@ -247,7 +247,7 @@ end
Tutorial Quest 1317 - Accept~
0 d 1
yes~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Quest Trigs 9-12. If the player has not done the quest give them a hint.
if !%actor.varexists(solved_tutorial_quest_zone_0)%
wait 1 sec
@@ -261,32 +261,32 @@ end
Tutorial Quest 1317 - Completion~
0 j 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* Quest Trigs 9-12. If the player returns the right object reward them.
if !%actor.varexists(solved_tutorial_quest_zone_0)% && %object.vnum% == 1394
dance
wait 1 sec
say Thank you, %actor.name%.
nop %actor.exp(50)%
nop %actor.gold(50)%
say finally, now I can get some answers.
wait 1 sec
emote shakes the magic eight ball vigorously.
wait 1 sec
emote does not seem too pleased with his answer.
set solved_tutorial_quest_zone_0 1
remote solved_tutorial_quest_zone_0 %actor.id%
%purge% %object%
else
say I don't want that!
junk %object.name%
* By Rumble of The Builder Academy tbamud.com 9091
* Quest Trigs 9-12. If the player returns the right object reward them.
if !%actor.varexists(solved_tutorial_quest_zone_0)% && %object.vnum% == 1394
set solved_tutorial_quest_zone_0 1
remote solved_tutorial_quest_zone_0 %actor.id%
%purge% %object%
dance
wait 1 sec
say Thank you, %actor.name%.
nop %actor.exp(50)%
nop %actor.gold(50)%
say finally, now I can get some answers.
wait 1 sec
emote shakes the magic eight ball vigorously.
wait 1 sec
emote does not seem too pleased with his answer.
else
say I don't want that!
junk %object.name%
end
~
#12
Tutorial Quest 1441 - Load 8ball~
2 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Quest Trigs 9-12. Drop the 8ball on their head when they enter.
wait 1 sec
%echoaround% %actor.name% A magic eight ball drops from the sky striking %actor.name% on the head.
@@ -309,7 +309,7 @@ end
Restorative Comfy Bed 1401 - Heal~
1 b 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Healing Bed Trigs 13-15. Heals those who sleep on it.
set room_var %actor.room%
set target_char %room_var.people%
@@ -336,7 +336,7 @@ end
Damage Example~
2 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* First put a wait in so the echo waits for the player to get into the room.
wait 1 sec
%echo% As %actor.name% enters the room a bolt of lightning smites %actor.himher%.
@@ -410,7 +410,7 @@ end
Switch Echo Example~
2 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* put a wait in here so it doesn't fire before the player enters the room
wait 1
switch %random.3%
@@ -442,7 +442,7 @@ done
AT Example~
2 b 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* put a wait in here so it doesn't fire before the player enters the room
%at% 33 %echo% at'd to a room
%at% Rumble %echo% at'd to Rumble
@@ -451,7 +451,7 @@ AT Example~
Rumble's Spy~
0 d 100
*~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* put a wait in here so it doesn't fire before the player enters the room
* Arguments: * means all speech will trigger this.
* This will echo all speech to Rumble.
@@ -461,16 +461,13 @@ Rumble's Spy~
Transform Example~
0 g 100
~
* %transform% test
* as a greet trigger, entering the room will cause
* the mob this is attached to, to toggle between mob 1 and 99.
say Beginning transform.
if %self.vnum%==1
%transform% 99
else
%transform% -1
end
say Transform complete.
* By Rumble of The Builder Academy tbamud.com 9091
* As a greet trigger, entering the room will cause this mob to transform into
* a random mob vnum 100-199.
emote starts to twist and contort into something different.
eval number %random.100% + 99
%transform% %number%
say Transform complete to mob %number%.
~
#22
IF Example~
@@ -541,32 +538,7 @@ end
While Damage Example - Grenade O1301~
1 h 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* A small script to make a grenade go off 3 seconds after it is dropped.
* Set the rooms ID to a variable.
set room_var %actor.room%
wait 3 s
* Send a message when the bomb goes off.
%echo% The Grenade blasts into smithereens, striking everyone here.
* Target the first char.
set target_char %room_var.people%
* Now loop through everyone in the room and hurt them.
while %target_char%
%send% %actor% People: %target_char.name%
%send% %actor% Next_in_room: %self.next_in_room%
* Set the next target before this one perhaps dies.
set tmp_target %target_char.next_in_room%
* This is where the good/bad things are supposed to happen.
%send% %target_char% The explosion hurts you.
* Damage them... 30 hitpoints. To heal use -#.
%damage% %target_char% 30
* Set the next target.
set target_char %tmp_target%
* Loop back.
done
* After we go through everyone get rid of the grenade.
%purge% %self%
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A small script to make a grenade go off 3 seconds after it is dropped.
* Set the rooms ID to a variable.
set room_var %actor.room%
@@ -594,7 +566,7 @@ done
Room While Teleport Example~
2 b 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Target the first person or mob in the room.
eval person %self.people%
wait 1 sec
@@ -612,69 +584,98 @@ done
Command Example~
2 c 100
l~
* By Rumble of The Builder Academy tbamud.com 9091
* A command trigger to demonstrate basic usage. The Arg list 'l' will capture
* any 'l' word. We are looking specifically for the MUD command (all commands
* are listed under COMMANDS) 'look' with the abbreviated argument of 'window.'
if %cmd.mudcommand% == look && window /= %arg%
%echo% %actor.name% %arg% at the %arg%.
%echo% %actor.name% typed %cmd% to %cmd.mudcommand% at the %arg%.
else
* Without this return zero a player would be unable to look at anything else
* in the room, leave, list, etc.
return 0
end
~
#26
Blocks Mobs Not Following~
2 g 100
~
* This trigger blocks all mobs except those that are charmed, pets, etc.
Name: 'Blocks Mobs Not Following', VNum: [ 26], RNum: [ 26]
Trigger Intended Assignment: Rooms
Trigger Type: Enter , Numeric Arg: 100, Arg list: None
Commands:
* By Rumble of The Builder Academy tbamud.com 9091
* This trigger blocks all mobs except those that are following.
* If actor is a mob, !is_pc actually means not a PC.
if !%actor.is_pc%
* If the mob does not have a master than do not let it enter.
* If the mob does not have a master.
if !%actor.master%
* Return 0 prevents the mob from entering.
return 0
end
end
~
#27
Character Variables Example~
Actor Variables Example~
0 b 100
~
* Variables Example by Rumble
* Random trigger so we must define actor
* By Rumble of The Builder Academy tbamud.com 9091
* A listing and demonstration of all actor variables.
* Random triggers do not have actors so we must define one.
set actor %random.char%
* Make sure actor can be seen and is a player.
* Make sure the actor can be seen and is a player.
if %actor.canbeseen% && %actor.is_pc%
%echo% ACTOR.NAME: %actor.name%
%echo% AGE: %actor.age%
%echo% ALIAS: %actor.alias%
%echo% CANBESEEN: %actor.canbeseen%
%echo% CHARISMA: %actor.cha%
%echo% CLASS: %actor.class%
%echo% CONSTITUTION: %actor.con%
%echo% DEXTERITY: %actor.dex%
%echo% INTELLIGENCE: %actor.int%
%echo% STRENGTH/STRADD: %actor.str%/%actor.stradd%
%echo% WISDOM: %actor.wis%
%echo% ALIAS: %actor.alias%
%echo% ALIGN: %actor.align%
%echo% AFFECT: %actor.affect%
%echo% CANBESEEN: %actor.canbeseen%
%echo% CLASS: %actor.class%
%echo% DRUNK: %actor.drunk%
%echo% EXPERIENCE: %actor.exp%
%echo% FIGHTING: %actor.fighting%
%echo% GOLD: %actor.gold%
* %echo% HAS_ITEM: %actor.has_item(1300)%
%echo% ID: %actor.id%
%echo% INTELLIGENCE: %actor.int%
%echo% IS_KILLER: %actor.is_killer%
%echo% IS_THIEF: %actor.is_thief%
%echo% LEVEL: %actor.level%
%echo% HITPOINTS: %actor.hitp%
%echo% MANA: %actor.mana%
%echo% MOVEMENT POINTS: %actor.move%
%echo% MASTER: %actor.master%
%echo% FOLLOWER: %actor.follower%
%echo% MAX HITPOINTS: %actor.maxhitp%
%echo% MAX MANA: %actor.maxmana%
%echo% MAX MOVE: %actor.maxmove%
%echo% NEXT_IN_ROOM: %actor.next_in_room%
%echo% PRACTICES %actor.prac%
%echo% ROOM: %actor.room%
%echo% SEX: %actor.sex%
%echo% HISHER: %actor.hisher%
%echo% GOLD: %actor.gold%
%echo% HAS_ITEM: %actor.has_item(1332)%
%echo% HESHE: %actor.heshe%
%echo% HIMHER: %actor.himher%
%echo% INVENTORY: %actor.inventory%
%echo% HISHER: %actor.hisher%
%echo% HITPOINTS: %actor.hitp%
%echo% HUNGER: %actor.hunger%
%echo% ID: %actor.id%
%echo% INV: %actor.inventory%
%echo% IS_KILLER: %actor.is_killer%
%echo% IS_PC: %actor.is_pc%
%echo% IS_THIEF: %actor.is_thief%
%echo% LEVEL: %actor.level%
%echo% MANA: %actor.mana%
%echo% MASTER: %actor.master%
%echo% MAX HP: %actor.maxhitp%
%echo% MAX MANA: %actor.maxmana%
%echo% MAX MOVE: %actor.maxmove%
%echo% MOVE: %actor.move%
%echo% NAME: %actor.name%
%echo% NEXT_IN_ROOM: %actor.next_in_room%
%echo% POSITION: %actor.pos%
%echo% PRACTICES: %actor.prac%
%echo% QUESTPOINTS: %actor.questpoints%
%echo% ROOM: %actor.room%
%echo% SAVING_PARA: %actor.saving_para%
%echo% SAVING_ROD: %actor.saving_rod%
%echo% SAVING_PETRI: %actor.saving_petri%
%echo% SAVING_BREATH: %actor.saving_breath%
%echo% SAVING_SPELL: %actor.saving_spell%
%echo% SEX: %actor.sex%
%echo% SKILL BACKSTAB: %actor.skill(backstab)%
%echo% STRENGTH/STRADD: %actor.str%/%actor.stradd%
%echo% THIRST: %actor.thirst%
%echo% TITLE: %actor.title%
%echo% VAREXISTS: %actor.varexists(tba_greeting)%
%echo% VNUM: %actor.vnum%
%echo% WISDOM: %actor.wis%
%echo% WEIGHT: %actor.weight%
* Objects TSTAT 28, Rooms TSTAT 29, Text TSTAT 30, Special TSTAT 31.
*
@@ -693,9 +694,19 @@ end
Object Variables Example~
1 b 100
~
* By Rumble
* By Rumble of The Builder Academy tbamud.com 9091
* A listing and demonstration of all object variables.
%echo% CARRIED_BY: %self.carried_by%
%echo% CONTENTS: %self.contents%
%echo% COST: %self.cost%
%echo% COST_PER_DAY: %self.cost_per_day%
%echo% COUNT: %self.count%
%echo% HAS_IN: %self.has_in%
%echo% ID: %self.id%
%echo% IS_INROOM: %self.is_inroom%
%echo% NAME: %self.name%
%echo% NEXT_IN_LIST: %self.next_in_list%
%echo% ROOM: %self.room%
%echo% SHORTDESC: %self.shortdesc%
%echo% TIMER: %self.timer%
%echo% TYPE: %self.type%
@@ -704,44 +715,39 @@ Object Variables Example~
%echo% VAL2: %self.val2%
%echo% VAL3: %self.val3%
%echo% VNUM: %self.vnum%
%echo% CARRIED_BY: %self.carried_by%
%echo% NEXT_IN_LIST: %self.next_in_list%
%echo% WORN_BY: %self.worn_by%
%echo% WEARFLAG: %self.wearflag%
%echo% WEIGHT: %self.weight%
%echo% COST: %self.cost%
%echo% COST_PER_DAY: %self.cost_per_day%
%echo% CONTENTS: %self.contents%
%echo% IS_INROOM: %self.is_inroom%
%echo% ROOM: %self.room%
%echo% VNUM: %self.room.vnum%
%echo% WORN_BY: %self.worn_by%
%purge% self
~
#29
Room Variables Example~
2 b 100
~
* By Rumble
%echo% ID: %self.id%
%echo% NAME: %self.name%
%echo% NORTH: %self.north% %self.north(vnum)%
%echo% SOUTH: %self.south% %self.south(key)%
%echo% SOUTH: %self.south% %self.south(vnum)%
%echo% EAST: %self.east% %self.east(bits)%
%echo% WEST: %self.west% %self.west(room)%
%echo% UP: %self.up%
%echo% DOWN: %self.down%
%echo% VNUM: %self.vnum%
%echo% PEOPLE: %self.people%
%echo% WEATHER: %self.weather%
%echo% SECTOR: %self.sector%
%echo% CONTENTS: %self.contents%
* By Rumble of The Builder Academy tbamud.com 9091
* A listing and demonstration of all room variables.
%echo% CONTENTS: %self.contents%
%echo% NORTH: %self.north% %self.north(vnum)%
%echo% SOUTH: %self.south% %self.south(key)%
%echo% SOUTH: %self.south% %self.south(vnum)%
%echo% EAST: %self.east% %self.east(bits)%
%echo% WEST: %self.west% %self.west(room)%
%echo% UP: %self.up%
%echo% DOWN: %self.down%
%echo% ID: %self.id%
%echo% NAME: %self.name%
%echo% PEOPLE: %self.people%
%echo% RANDOM.DIR: %self.random.dir%
%echo% SECTOR: %self.sector%
%echo% VNUM: %self.vnum%
%echo% WEATHER: %self.weather%
~
#30
Text Variables Example~
2 d 100
*~
* By Rumble
* The Arguments: * means all speech will fire the trigger.
* By Rumble of The Builder Academy tbamud.com 9091
* A listing and demonstration of all text variables.
%echo% SPEECH: %speech%
%echo% STRLEN: %speech.strlen%
%echo% TRIM: %speech.trim%
@@ -749,38 +755,34 @@ Text Variables Example~
%echo% CDR: %speech.cdr%
%echo% MUDCOMMAND: %speech.mudcommand%
%echo% CONTAINS: %speech.contains(test)%
%echo% CHARAT 3: %speech.charat(3)%
~
#31
Special Variables Example~
2 d 100
*~
* By Rumble
* By Rumble of The Builder Academy tbamud.com 9091
* A listing and demonstration of all special variables.
%echo% SELF ID: %self.id%
%echo% HOUR: %time.hour%
%echo% DAY: %time.day%
%echo% MONTH: %time.month%
%echo% YEAR: %time.year%
%echo% PEOPLE: %people.1233%
%echo% PEOPLE: %people.3%
%echo% RANDOM NUM: %random.99%
%echo% RANDOM PC: %random.char%
%echo% SPEECH: %speech%
%echo% FINDOBJ: There are %findobj.1233(1300)% objects of vnum 1300 in room 1233.
%echo% There is %findobj.1233(1346356)% object of ID 1346356 in room 1233.
%echo% There are %findobj.1233(app)% objects of name app in room 1233.
%echo% There are %findobj.1233(apprehension)% objects of name apprehension in room 1233.
%echo% FINDMOB: There are %findmob.1233(1300)% mobs of vnum 1300 in room 1233.
%echo% There is %findmob.1233(64741)% mobs of ID 64741 in room 1233.
* not working
%echo% There are %findmob.1233(fried)% mobs of name fried in room 1233.
%echo% There are %findmob.1233(friedrich)% mobs of name friedrich in room 1233.
%echo% There are %findmob.self(fried)% mobs of name fried in room 1233.
%echo% There are %findmob.self(friedrich)% mobs of name friedrich in room 1233.
%echo% FINDOBJ: There are %findobj.3(33)% objects of vnum 33 in room 3.
%echo% There are %findobj.3(guide)% objects of name guide in room 3.
%echo% FINDMOB: There are %findmob.3(33)% mobs of vnum 33 in room 3.
~
#32
Mob Checks Player Inventory~
0 g 100
~
* By Jamie Nelson modified by Rumble* Checks if the actor is wielding the item
* By Rumble of The Builder Academy tbamud.com 9091
* This trigger has been replaced by the has_item variable. But this is still a
* good example. if %actor.has_item(1300)% does the same thing.
if %actor.eq(wield)%
eval wep %actor.eq(wield)%
if %wep.vnum%==1300
@@ -967,44 +969,41 @@ say %msg%
Switch Example~
0 g 100
~
* By Falstar
switch %random.6%
case 0
* By Falstar of The Builder Academy tbamud.com 9091
* Pick a random number 1-7, 7 is actually for the default case.
switch %random.7%
case 1
set book 'Creative cooking with human flesh'
break
case 1
case 2
set book 'Re-animating the Dead for Dummies'
break
case 2
case 3
set book 'How to teach your henchman to rob graves in 7 days'
break
case 3
case 4
set book 'An A-Z guide of Mage-induced maladies and mutations'
break
case 4
case 5
set book '101 Easy ways to rescue a damsel in distress'
break
case 5
case 6
set book 'Witch Hazel's Bumper Book of rare herbs and potions'
break
case 6
set book 'Arcane Artifacts made easy'
break
default
* this should be here, even if it's never reached
set book default reached
done
*
wait 1 s
%echo% Dr. Von Erhartz seems engrossed in reading a large leatherbound book through a battered pair
%echo% of reading glasses. The title reads: %book%.
%echo% The doctor looks up at you, seeming to notice you for the first time.
wait 1 s
say ah %actor.name%, I was wondering when you'd drop by.
set book 'Arcane Artifacts made easy'
done
*
wait 1 s
%echo% Dr. Von Erhartz seems engrossed in reading a large leatherbound book through a battered pair
%echo% of reading glasses. The title reads: %book%.
%echo% The doctor looks up at you, seeming to notice you for the first time.
wait 1 s
say ah %actor.name%, I was wondering when you'd drop by.
~
#35
Mob Room Wander Switch~
0 b 100
Mob Room Specific Speeches~
0 b 5
~
* By Rumble
* So we don't get problems if more than one is loaded.
@@ -1065,7 +1064,7 @@ done
Time Example~
0 b 1
~
* By Rumble w/help from Jamie Nelson on http://groups.yahoo.com/group/dg_scripts/
* By Rumble of The Builder Academy tbamud.com 9091
* A replica of the "time" command.
* Convert hour from 24 hour to 12 hour clock with am/pm
if %time.hour% > 12
@@ -1188,28 +1187,44 @@ eval months %%m%time.month%%%
%echo% The %time.day%%suf% Day of the %months%, Year %time.year%.
~
#37
Emote Copycat~
0 c 100
e~
if %cmd.mudcommand% == emote && %arg%
wait 2 sec
emote %arg%
Obj Command quarter flip example~
1 c 2
flip~
* By Rumble of The Builder Academy tbamud.com 9091
* Numeric Arg: 2 means in character's carried inventory
* does not work for level 32 and above.
if coin /= %arg% || quarter /= %arg%
%echoaround% %actor% %actor.name% flips a coin high up into the air.
%send% %actor% You flip the coin up into the air.
switch %random.2%
case 1
%echo% The coin falls to the ground, bounces, rolls, and ends up showing heads!
break
case 2
%echo% The coin falls to the ground, bounces, rolls, and ends up showing tails!
break
default
%echo% The coin falls on its edge and balances perfectly.
break
done
else
%send% %actor% flip What?
end
~
#38
Mob Receive and Assemble Example~
0 j 100
~
* Example by Aeon
wait 2 sec
* Check mob's inventory (this does not include equipped items)
* By Aeon of The Builder Academy tbamud.com 9091
* Check mob's inventory (this does not include equipped items).
if %self.inventory(16701)% && %self.inventory(16702)% && %self.inventory(16703)% && %self.inventory(16704)% && %self.inventory(16705)%
* Removing items from the mob
%purge% flour
%purge% salt
%purge% sugar
%purge% soda
%purge% egg
* Removing items from the mob.
%purge% %self.inventory(16701)%
%purge% %self.inventory(16702)%
%purge% %self.inventory(16703)%
%purge% %self.inventory(16704)%
%purge% %self.inventory(16705)%
wait 2 sec
* For roleplay sake
say Thank you %actor.name%! Now here is the cake.
* Give the reward
@@ -1222,7 +1237,8 @@ end
Mob Following Assist Master~
0 b 100
~
* By Rumble
* By Rumble of The Builder Academy tbamud.com 9091
* Make following mob assist.
if %self.master%
eval master %self.master%
if %master.fighting%
@@ -1233,33 +1249,65 @@ if %self.master%
end
~
#40
mfollow Example~
0 b 100
Random Equipment Scatter and Teleport~
2 g 100
~
* By Welcor
set actor %random.char%
mfollow %actor%
say I follow you now %actor.name%
say self.master: %self.master%
say actor: %actor%
eval follower %self.master%
say follower: %follower%
say follower.name : %follower.name%
* By Random of The Builder Academy tbamud.com 9091
* Scatter the player and all of their equipment randomly across the zone.
wait 1 sec
%send% %actor% You feel you must not have been worthy when a powerful force hurls you back through the gates.
wait 2 sec
eval stunned %actor.hitp% -1
%damage% %actor% %stunned%
eval num %random.99% + 20300
%teleport% %actor% %num%
while %actor.inventory%
eval item %actor.inventory%
if %item.type% == CONTAINER
while %item.contents%
eval stolen %item.contents.vnum%
%echo% purging %item.contents.shortdesc% in container.
%purge% %item.contents%
eval num %random.99% + 2300
%at% %num% %load% obj %stolen%
done
end
eval item_to_purge %actor.inventory%
eval stolen %item.vnum%
%purge% %item_to_purge%
eval num %random.99% + 2300
%at% %num% %load% obj %stolen%
done
eval i 0
while %i% < 18
eval item %%actor.eq(%i%)%%
if %item%
eval stolen %item.vnum%
eval item_to_purge %%actor.eq(%i%)%%
%send% %actor% You drop %item.shortdesc%
%purge% %item_to_purge%
eval num %random.99% + 20300
%at% %num% %load% obj %stolen%
end
eval i %i%+1
done
%force% %actor% look
~
#41
Hunt Example~
Memory and Mhunt Example~
0 o 100
~
* Mob must first have a memory trig, attach 74.
* By Rumble of The Builder Academy tbamud.com 9091
* Fires if player is in mobs memory via mremember and the mob sees the actor.
%echo% Sleeping for 10 secs, give %actor.name% a head start.
sleep
%echo% Targetting %actor.name%
wait 10 s
wake
stand
north
north
up
%random.dir%
%random.dir%
%random.dir%
%echo% Hunting...%actor.name%
mhunt %actor%
~
@@ -1380,15 +1428,13 @@ done
Rumble's Shotgun~
1 b 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* If the object is being wielded.
if %self.worn_by%
* This is a random trigger so actor has to be defined.
eval actor %self.worn_by%
* If the person wielding the object is fighting.
if %actor.fighting%
* Evaluate uniquely to this player.
context %actor.id%
* Count the shots.
eval shotgun_rounds %shotgun_rounds% + 1
* Remember the count for the next time this trig fires.
@@ -1500,7 +1546,7 @@ end
Eval and Set Example~
2 d 100
test~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* This is a speech trig @RHELP TRIGEDIT ROOM SPEECH@n, say 'test' to activate.
* There is much confusion about the difference between set and eval. So this is
* the simplest way I can think of to explain it (assume %actor.level% = 34):
@@ -1818,7 +1864,7 @@ Mob Entry Example~
* first find the room the mob is in and put the value in %inroom%
eval inroom %self.room%
* then check on the rooms vnum
if %inroom.vnum% == 1233
if %inroom.vnum% == 33
say I, %self.name%, declare this room Rumble's.
end
eval person %inroom.people%
@@ -1923,7 +1969,8 @@ done
Mob Memory Example Part 1~
0 g 100
~
* This must be set by another trigger first before the mem trigger can be used.
* By Rumble of The Builder Academy tbamud.com 9091
* mremember must be used before you can use the trigger type memory.
mremember %actor.name%
say I'll remember you now, %actor.name%
~
@@ -1931,6 +1978,8 @@ say I'll remember you now, %actor.name%
Mob Memory Example Part 2~
0 o 100
~
* By Rumble of The Builder Academy tbamud.com 9091
* Fires if player is in mobs memory via mremember and the mob sees the actor.
wait 4 s
poke %actor.name%
say i've seen you before, %actor.name%.

View File

@@ -443,7 +443,7 @@ end
Mob Act - 156 speaker greet~
0 e 0
has entered the game.~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Num Arg 0 means the argument has to match exactly. So trig will only fire off:
* "has entered game." and not "has" or "entered" etc. (that would be num arg 1).
* Figure out what vnum the mob is in so we can use zoneecho.
@@ -602,7 +602,7 @@ end
Thief Guildguard - 177~
0 q 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* This replaces stock guildguard spcial procedure that stops non-class members.
if %direction% == up
* Let the guildmaster pass to pawn players items. T137.
@@ -624,7 +624,7 @@ end
Thief Guildmaster Steals - M122~
0 b 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Idea taken from cheesymud.com
* Thief guildmaster steals from players who idle in his guild. Then pawns the
* item in the shop downstairs so player has to buy their equipment back :-P
@@ -665,74 +665,111 @@ end
Questmaster Greet - 3~
0 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* Simple quests, probably too simple so only let players earn 50 qp's doing this.
if %actor.is_pc% && %actor.questpoints% < 50
wait 2 sec
* Check to see if they are not on a zone 1 quest.
if !%actor.varexists(on_quest_zone_1)%
say Welcome %actor.name%, are you interested in a simple quest?
else
say How is your quest going %actor.name%, do you have a quest token or the quest mobs head for me?
end
* By Rumble of The Builder Academy builderacademy.net 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* A simple automated quest so only let players earn up to 50 questpoints.
if %actor.is_pc% && %actor.questpoints% < 50
wait 2 sec
* Check to see if they are not on a zone 1 quest.
if !%actor.varexists(on_quest_zone_1)%
say Welcome %actor.name%, are you interested in a simple quest?
else
*get the values from the player variable
extract day 1 %actor.on_quest_zone_1%
extract hour 2 %actor.on_quest_zone_1%
* Set this value to the number of mud hours in a mud day
set HOURS_IN_DAY 24
* Compare the values to the current time
* (Your hours per day and days per year vary on each mud.)
* (You may also want to check for 'time.year')
eval current_ticks (%time.day%/%HOURS_IN_DAY%)+%time.hour%
eval start_ticks (%day%/%HOURS_IN_DAY%)+%hour%
*find out the time difference in ticks
eval ticks_passed %current_ticks%-%start_ticks%
*check if 10 ticks (~10 mins) have passed
if %ticks_passed% > 10
rdelete on_quest_zone_1 %actor.id%
say Welcome %actor.name%, are you interested in a simple quest?
else
say How is your quest going %actor.name%, do you have a quest token or the quest mobs head for me?
end
end
end
~
#139
Questmaster Quest Assignment - 3~
0 d 1
*~
* By Rumble of The Builder Academy builderacademy.net 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* Don't let them do more than one quest at a time or earn more than 50 qp.
if %actor.varexists(on_quest_zone_1)% || %actor.questpoints% > 50
halt
end
* By Rumble of The Builder Academy builderacademy.net 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
if %actor.varexists(on_quest_zone_1)%
*get the values from the player variable
extract day 1 %actor.on_quest_zone_1%
extract hour 2 %actor.on_quest_zone_1%
* Set this value to the number of mud hours in a mud day
set HOURS_IN_DAY 24
* Compare the values to the current time
* (Your hours per day and days per year vary on each mud.)
* (You may also want to check for 'time.year')
eval current_ticks (%time.day%/%HOURS_IN_DAY%)+%time.hour%
eval start_ticks (%day%/%HOURS_IN_DAY%)+%hour%
*find out the time difference in ticks
eval ticks_passed %current_ticks%-%start_ticks%
*check if 10 ticks (~10 mins) have passed
if %ticks_passed% > 10
rdelete on_quest_zone_1 %actor.id%
else
halt
end
end
if %actor.questpoints% > 50
halt
end
* This loop goes through the entire string of words the actor says. .car is the
* word and .cdr is the remaining string.
eval word %speech.car%
eval rest %speech.cdr%
while %word%
* Check to see if the word is yes or an abbreviation of yes.
if yes /= %word%
say Very well %actor.name%. Would you like to find an object or hunt a mobile?
halt
end
* Pick a room from 100 to 365.
* word and .cdr is the remaining string.
eval word %speech.car%
eval rest %speech.cdr%
while %word%
* Check to see if the word is yes or an abbreviation of yes.
if yes /= %word%
say Very well %actor.name%. Would you like to find an object or hunt a mobile?
halt
end
* Pick a room from 100 to 365.
eval loadroom 99 + %random.265%
if mobile /= %word% || hunt /= %word%
* Load the mob in the random room picked above.
%at% %loadroom% %load% m 15
say Go kill the quest mob and bring me its head %actor.name%. You only have 10 minutes!
* Load an object on the player that counts down from 10 minutes.
%load% obj 16 %actor% inv
%send% %actor% Gives you the quest timer.
%echoaround% %actor% %self.name% gives %actor.name% the quest timer.
set on_quest_zone_1 1
remote on_quest_zone_1 %actor.id%
halt
elseif object /= %word% || find /= %word%
say Go find the quest token and return it to me. You only have 10 minutes %actor.name%!
%load% o 15
%at% %loadroom% drop quest_token_zone_1
%load% obj 16 %actor% inv
%send% %actor% Gives you the quest timer.
%echoaround% %actor% %self.name% gives %actor.name% the quest timer.
set on_quest_zone_1 1
remote on_quest_zone_1 %actor.id%
halt
end
if mobile /= %word% || hunt /= %word%
* Load the mob in the random room picked above.
%at% %loadroom% %load% m 15
say Go kill the quest mob and bring me its head %actor.name%. You only have 10 minutes!
* Load an object on the player that counts down from 10 minutes.
%load% obj 16 %actor% inv
%send% %actor% %self.name% gives you the quest timer.
%echoaround% %actor% %self.name% gives %actor.name% the quest timer.
set on_quest_zone_1 %time.day% %time.hour%
remote on_quest_zone_1 %actor.id%
halt
elseif object /= %word% || find /= %word%
say Go find the quest token and return it to me. You only have 10 minutes %actor.name%!
%load% o 15
%at% %loadroom% drop quest_token_zone_1
%load% obj 16 %actor% inv
%send% %actor% %self.name% gives you the quest timer.
%echoaround% %actor% %self.name% gives %actor.name% the quest timer.
set on_quest_zone_1 %time.day% %time.hour%
remote on_quest_zone_1 %actor.id%
halt
end
* End of the loop we need to take the next word in the string and save the
* remainder for the next pass.
eval word %rest.car%
eval rest %rest.cdr%
* remainder for the next pass.
eval word %rest.car%
eval rest %rest.cdr%
done
~
#140
Quest Timer - 16~
1 c 7
l~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* Let a player see how much time they have left.
if %cmd.mudcommand% == look && timer /= %arg%
@@ -747,7 +784,7 @@ end
Quest 10 min Purge - 15, 16, 17~
1 f 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* Attached to quest objects 15-17. Purges itself 10 minutes after loading if
* player does not finish the quest.
@@ -767,7 +804,7 @@ end
Quest Timer Random - 16~
1 b 10
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* If timer is being carried by a player, warn them every 2 minutes.
if %self.carried_by%
@@ -781,7 +818,7 @@ end
Questmaster Receive - 3~
0 j 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* Check if they are on the quest.
if !%actor.varexists(on_quest_zone_1)%
@@ -791,13 +828,13 @@ if !%actor.varexists(on_quest_zone_1)%
end
*
wait 1 sec
* If they have the head or the token.
* If they had the head or the token.
if %object.vnum% == 15 || %object.vnum% == 17
rdelete on_quest_zone_1 %actor.id%
say Well done, %actor.name%.
* Give them 50 gold and experience. Delete the on quest variable and purge.
nop %actor.exp(50)%
nop %actor.gold(50)%
rdelete on_quest_zone_1 %actor.id%
%purge% %object%
* Reward them with 1 questpoint. Cheap I know but these quests are not hard.
nop %actor.questpoints(1)%
@@ -812,7 +849,7 @@ end
Quest Mob Loads Head - 15~
0 n 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Part of a timed quest to kill a mob or find an object. Trigs 138-144.
* This is a load instead of a death trig because I want the head to purge 10
* minutes after loading.
@@ -913,7 +950,7 @@ emote %speech%
Angel Receives Treats - 207~
0 j 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A simple receive trig if you give the dog food she will eat it. If you give
* her dog treats she will follow you. Everything else she drops.
if %object.type% == FOOD
@@ -1007,14 +1044,20 @@ end
Check for treats - 207~
0 g 100
~
* By Rumble of The Builder Academy tbamud.com 9091
* My dog is looking if people have some beggin strips.
if %actor.has_item(164)%
wait 1 sec
emote sits down and stands up on %self.hisher% hind legs, then starts whining pitifully staring at %actor.name%.
%send% %actor% %self.name% sits down and stands up on %self.hisher% hind legs, then starts whining pitifully staring at you.
%echoaround% %actor% %self.name% sits down and stands up on %self.hisher% hind legs, then starts whining pitifully staring at %actor.name%.
* Or if they have her rubber chicken.
elseif %actor.has_item(172)%
wait 1 sec
emote sniff %actor.name%
wait 1 sec
growl %actor.name%
emote tries to get at something you are carrying.
%send% %actor% %self.name% tries to get at something you are carrying.
%echoaround% %actor% %self.name% tries to get at something %actor.name% is carrying.
end
~
#156
@@ -1163,7 +1206,7 @@ end
Cast spells on Greet - M135~
0 g 10
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Cast a random spell on players that enter. But, only if they are not already
* affected and only 10% of the time.
switch %random.12%
@@ -1236,7 +1279,7 @@ done
Mob Questshop Example~
0 c 100
*~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A questshop that uses questpoints!
* Command triggers do not work for level 32 and above.
if %cmd.mudcommand% == list
@@ -1878,7 +1921,7 @@ say %speech%
Confucius - 23~
0 b 10
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Confucius - M23 - T186 By Rumble
eval max %random.27%
set txt[1] Before you embark on a journey of revenge, dig two graves.
@@ -2131,7 +2174,10 @@ say The best advice for new builders is under @RHELP SUGGESTIONS@n.
TBA Welcome - 18~
0 e 1
entered reconnected~
* By Rumble of The Builder Academy tbamud.com 9091
* TBA mortal greet to fill out the application.
if %actor.is_pc% && %actor.level% == 1
context %actor.id%
wait 1 sec
if %actor.varexists(TBA_mortal_greeting)%
say Welcome back %actor.name%. Tell someone level 32 or above when you complete the application.
@@ -2140,7 +2186,9 @@ if %actor.is_pc% && %actor.level% == 1
wait 2 sec
say If you are interested in learning how to build, or want to teach others, then you have come to the right place.
wait 2 sec
say Please fill out the application at: http://tbamud.com/builderapplication
say Please fill out the application at: http://www.geocities.com/buildersacademy
nop %actor.thirst(-1)%
nop %actor.hunger(-1)%
set TBA_mortal_greeting 1
remote TBA_mortal_greeting %actor.id%
if !%actor.has_item(1332)%

View File

@@ -48,20 +48,29 @@ CAPITAL~
%send% %actor% @RSocrates tells you, 'Good job, that is correct. Be on the lookout for more of those.'@n
~
#1304
free~
0 g 100
Sanct check on enter~
2 g 100
~
wait 1 sec
say some more good advice may be found under @RHELP GRAMMAR@n and @RHELP REPORT@n.
if %actor.affect(SANCT)%
%echo% checked sanct
else
%echo% sanct check failed
end
~
#1305
TBA Greeting - 1301~
0 e 1
arrives entered appears~
* By Rumble of The Builder Academy tbamud.com 9091
* TBA start room greeting for anyone that enters, poofs, or is transferred.
* Simple remote to remember if this is a newbie or someone returning.
* Only fire on players.
if %actor.is_pc%
wait 1 sec
* If they have already been greeted welcome them back.
if %actor.varexists(TBA_greeting)%
say Welcome back %actor.name%. Read through these rooms whenever you need a refresher.
* First greeting, give them instructions.
else
say Welcome to The Builder Academy %actor.name%.
wait 1 sec
@@ -70,8 +79,11 @@ if %actor.is_pc%
say This zone is like a newbie zone, except for gods. All you have to do is walk through the zone and read every room description.
wait 3 sec
say Be sure to do everything the room descriptions tell you to do. You should read and comprehend everything contained within these walls.
* Now create a variable to remember they have been greeted.
set TBA_greeting 1
* Save it to the player file.
remote TBA_greeting %actor.id%
* Give them a trial vnum assigner if they don't have one yet.
if !%actor.has_item(1332)%
%load% obj 1332 %actor% inv
end
@@ -1486,7 +1498,7 @@ free~
Drop While Example - Grenade 01301~
1 h 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A small script to make a grenade go off 3 seconds after it is dropped.
* Set the rooms ID to a variable.
set room_var %actor.room%
@@ -1727,35 +1739,10 @@ while (%person%)
done
~
#1361
Postal Shotgun - 1392~
Free~
1 b 100
~
* if the object is being wielded
if %self.worn_by%
* a random trigger so actor has to be defined
eval actor %self.worn_by%
* if the person wielding the object is fighting
if %actor.fighting%
* evaluate uniquely to this player
context %actor.id%
* count the shots
eval shotgun_rounds %shotgun_rounds% + 1
* remember the count for the next time this trig fires
global shotgun_rounds
* double barrel shotgun, only has 2 rounds
if %shotgun_rounds% > 2
* detaching trig since gun is out of ammo.
detach 1361 %self.id%
halt
end
* have to define the victim
eval victim %actor.fighting%
* send the message and do the damage
%echoaround% %actor% %actor.name% points %self.shortdesc% at %victim.name% and pulls the trigger.
%send% %actor% You point %self.shortdesc% at %victim.name% and pull the trigger.
%damage% %victim% 10
end
end
* No Script
~
#1362
Deodorant Bottle - 1391~
@@ -2182,60 +2169,63 @@ if (%cmd.mudcommand% == bash || %cmd.mudcommand% == backstab || %cmd.mudcommand%
Rumble's Poofs~
0 e 0
has entered the game.~
* does not work for level 32 and above.
eval maxpoofin %random.24% -1
set poofins[0] appears with a strange wooshing sound and climbs out of a pneumatic air tube like they use at the bank.
set poofins[1] thinks himself into existence.
set poofins[2] soars into the room like a bird, and THWAP! right into a window.
set poofins[3] crawls out of the ground gasping for air.
set poofins[4] appears in a flash of blinding nothingness!
set poofins[5] falls from the sky above, screaming until he hits the ground. SPLAT! like a bug on a windshield.
set poofins[6] appears with a dulcet bang.
set poofins[7] appears with a sonic boom.
set poofins[8] wanders into the room while practicing omphaloskepsis.
set poofins[9] somersaults into the room.
set poofins[10] stumbles into the room, tripping over his own feet and falling flat on his face.
set poofins[11] dives into the room doing a two and a half tuck gainer, right into the dirt.
set poofins[12] runs into the room screaming and looking over his shoulder.
set poofins[13] steps out of your shadow.
set poofins[14] forms out of the very essence of your shadow to hang in the air before you.
set poofins[15] climbs out of your left nostril.
set poofins[16] has abandoned his search for truth and is now looking for a good fantasy.
set poofins[17] wishes he was a donut specialist.
set poofins[18] can resist everything but temptation.
set poofins[19] is searching for a near life experience.
set poofins[20] walks into the room fashionably early.
set poofins[21] hanglides into the room.
set poofins[22] parachutes into the room performing a perfect parachute landing fall, except for the fact that he landed backside first.
set poofins[23] does a cannonball into room, injuring himself on the hard ground.
set poofin %%poofins[%maxpoofin%]%%
eval poofin %poofin%
%force% %actor% poofin %poofin%
* By Rumble of The Builder Academy tbamud.com 9091
* To generate random poofs at login just set your loadroom to wherever this
* mob is. Does not work for level 32 and above.
eval maxpoofin %random.24%
set poofins[1] appears with a strange wooshing sound and climbs out of a pneumatic air
tube like they use at the bank.
set poofins[2] thinks himself into existence.
set poofins[3] soars into the room like a bird, and THWAP! right into a window.
set poofins[4] crawls out of the ground gasping for air.
set poofins[5] appears in a flash of blinding nothingness!
set poofins[6] falls from the sky above, screaming until he hits the ground. SPLAT! like a
bug on a windshield.
set poofins[7] appears with a dulcet bang.
set poofins[8] appears with a sonic boom.
set poofins[9] wanders into the room while practicing omphaloskepsis.
set poofins[10] somersaults into the room.
set poofins[11] stumbles into the room, tripping over his own feet and falling flat on his face.
set poofins[12] dives into the room doing a two and a half tuck gainer, right into the dirt.
set poofins[13] runs into the room screaming and looking over his shoulder.
set poofins[14] steps out of your shadow.
set poofins[15] forms out of the very essence of your shadow to hang in the air before you.
set poofins[16] climbs out of your left nostril.
set poofins[17] has abandoned his search for truth and is now looking for a good fantasy.
set poofins[18] wishes he was a donut specialist.
set poofins[19] can resist everything but temptation.
set poofins[20] is searching for a near life experience.
set poofins[21] walks into the room fashionably early.
set poofins[22] hanglides into the room.
set poofins[23] parachutes into the room performing a perfect parachute landing fall,
except for the fact that he landed backside first.
set poofins[24] does a cannonball into room, injuring himself on the hard ground.
eval poofin %%poofins[%maxpoofin%]%%
%force% %actor% set self poofin %poofin%
*
eval maxpoofout %random.20% -1
set poofouts[0] is chased out of the room by a barrel of rabid monkeys.
set poofouts[1] creates a pneumatic air tube, like they use at the banks, and steps in. He is sucked out of sight.
set poofouts[2] thinks himself out of existence.
set poofouts[3] walks out saying 'time to make the donuts.'
set poofouts[4] goes super critical and has a meltdown. Nothing remains but a pile of steaming radioactive mush.
set poofouts[5] disappears in a flash of blinding nothingness!
set poofouts[6] merges with his surroundings and vanishes.
set poofouts[7] morphs into millions of ants, which run off in all directions.
set poofouts[8] senses that everything is well, so he floats away.
set poofouts[9] goes to hell in a handbasket.
set poofouts[10] does somersaults out of the room.
set poofouts[11] dives out of the room doing three rotations in the jackknife position.
set poofouts[12] stumbles out of the room with a look of confusion on his face, must have forgotten where he parked.
set poofouts[13] steps into your shadow and disappears.
set poofouts[14] points behind you with a look of horror. While you turn away he disappears chuckling 'made you look'.
set poofouts[15] doesn't like saying goodbye, so he didn't.
set poofouts[16] completes an intricate spell of chantings and gestures that creates an inter-dimensional portal of space and time. Before he steps through it and disappears you notice a 'made in china' sticker on its bottom.
set poofouts[17] creates a huge rubber band, straps himself into the middle of it and stretches it back like a slingshot. With a wave he releases it and is hurtled out of sight.
set poofouts[18] straps an ACME rocket to his back and asks, 'got a light?' right before it explodes and sends him soaring.
set poofouts[19] puts on a helmet and climbs into the barrel of an ACME cannon. It explodes sending pieces of Rumble off into the distance.
set poofout %%poofouts[%maxpoofout%]%%
eval poofout %poofout%
%force% %actor% poofout %poofout%
eval maxpoofout %random.20%
set poofouts[1] is chased out of the room by a barrel of rabid monkeys.
set poofouts[2] creates a pneumatic air tube, like they use at the banks, and steps in. He is sucked out of sight.
set poofouts[3] thinks himself out of existence.
set poofouts[4] walks out saying 'time to make the donuts.'
set poofouts[5] goes super critical and has a meltdown. Nothing remains but a pile of steaming radioactive mush.
set poofouts[6] disappears in a flash of blinding nothingness!
set poofouts[7] merges with his surroundings and vanishes.
set poofouts[8] morphs into millions of ants, which run off in all directions.
set poofouts[9] senses that everything is well, so he floats away.
set poofouts[10] goes to hell in a handbasket.
set poofouts[11] does somersaults out of the room.
set poofouts[12] dives out of the room doing three rotations in the jackknife position.
set poofouts[13] stumbles out of the room with a look of confusion on his face, must have forgotten where he parked.
set poofouts[14] steps into your shadow and disappears.
set poofouts[15] points behind you with a look of horror. While you turn away he disappears chuckling 'made you look'.
set poofouts[16] doesn't like saying goodbye, so he didn't.
set poofouts[17] completes an intricate spell of chantings and gestures that creates an inter-dimensional portal of space and time. Before he steps through it and disappears you notice a 'made in china' sticker on its bottom.
set poofouts[18] creates a huge rubber band, straps himself into the middle of it and stretches it back like a slingshot. With a wave he releases it and is hurtled out of sight.
set poofouts[19] straps an ACME rocket to his back and asks, 'got a light?' right before it explodes and sends him soaring.
set poofouts[20] puts on a helmet and climbs into the barrel of an ACME cannon. It explodes sending pieces of Rumble off into the distance.
eval poofout %%poofouts[%maxpoofout%]%%
%force% %actor% set self poofout %poofout%
~
#1373
Present Unwrapping~
@@ -2962,7 +2952,7 @@ say 24
Random Rabbit Decapitates Mobs - M1307~
0 b 100
none~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* This is for any Monty Python Fans.
* First figure out what room you are in.
eval room_var %self.room%

View File

@@ -122,6 +122,63 @@ else
end
%echoaround% %actor% %actor.name% peers into %actor.hisher% gently glowing ring.
~
#206
Smelly Bum - M168~
0 i 100
~
* By Rumble of The Builder Academy tbamud.com 9091
* A trig to let people smell the bum from 1 room away.
* For the first move there is no from_room so set it.
if !%from_room%
eval from_room %self.room.vnum%
global from_room
halt
end
wait 1 sec
eval inroom %self.room%
*
%at% %from_room% %echo% %self.name%'s smell slowly dissipates with %self.himher%.
if %inroom.north% && %inroom.north(vnum)% != %from_room%
%at% %inroom.north(vnum)% %echo% You notice a nasty smell to the south.
end
if %inroom.south% && %inroom.south(vnum)% != %from_room%
%at% %inroom.south(vnum)% %echo% You notice a nasty smell to the north.
end
if %inroom.east% && %inroom.east(vnum)% != %from_room%
%at% %inroom.east(vnum)% %echo% You notice a nasty smell to the west.
end
if %inroom.west% && %inroom.west(vnum)% != %from_room%
%at% %inroom.west(vnum)% %echo% You notice a nasty smell to the east.
end
if %inroom.up% && %inroom.up(vnum)% != %from_room%
%at% %inroom.up(vnum)% %echo% You notice a nasty smell below you.
end
if %inroom.down% && %inroom.down(vnum)% != %from_room%
%at% %inroom.down(vnum)% %echo% You notice a nasty smell above you.
end
*
eval from_room %self.room.vnum%
global from_room
~
#207
Mob Blocks opening of chest~
0 c 100
o~
* By Rumble of The Builder Academy tbamud.com 9091
* does not work for level 32 and above.
* Make sure the command is open, check for any abbrev of chest
if %cmd.mudcommand% == open && chest /= %arg%
* findmob checks if the mob is in the room.
if %findmob.230(189)%
%echoaround% %actor% As %actor.name% tries to approach the chest %self.name% looks up.
wait 1 sec
say get away from there.
end
else
* If it doesn't match let the command continue.
return 0
end
~
#212
Phoenix Rising - 219~
1 c 4

View File

@@ -419,7 +419,7 @@ mkill %bad_guy%
Lieutenant Door Bribe - M23608~
0 m 1
~
* By Welcor of The Builder Academy builderacademy.net 9091
* By Welcor of The Builder Academy tbamud.com 9091
wait 1
* The price is 400 coins to pass. Player must 'give 400 coin leader.'
if %amount% < 400
@@ -440,7 +440,7 @@ end
Lieutenant Door Bribe 2 - M23608~
0 r 100
~
* By Welcor of The Builder Academy builderacademy.net 9091
* By Welcor of The Builder Academy tbamud.com 9091
* Allows more than one instance of this trigger to run.
context %actor.id%
* Checks a global variable to see if this mob has been bribed. TSTAT 23612.
@@ -466,7 +466,7 @@ end
Lieutenant Leave - 23608~
0 q 100
~
* By Welcor of The Builder Academy builderacademy.net 9091
* By Welcor of The Builder Academy tbamud.com 9091
* If the player is trying to leave to the East.
if %direction% == east
context %actor.id%
@@ -483,20 +483,16 @@ if %direction% == east
end
~
#23615
Check for Dwarf - 23610~
2 c 100
e~
if %cmd.mudcommand% == east
if %actor.race%==dwarf
%send% %actor% The door vanishes as if it was never there, and you step through.
%echoaround% %actor% As %actor.name% steps through the doorway, the door disappears for an instant.
%teleport% %actor% 23611
%echoaround% %actor% %actor.name% has arrived.
%force% %actor% look
return 1
else
return 0
end
FREE~
2 q 100
~
if %direction% == east
return 0
%send% %actor% The door vanishes as if it was never there, and you step through.
%echoaround% %actor% As %actor.name% steps through the doorway, the door disappears for an instant.
%teleport% %actor% 23611
%echoaround% %actor% %actor.name% has arrived.
%force% %actor% look
end
~
#23616

View File

@@ -399,7 +399,7 @@ done
Slipping on Marbles - 27147~
1 q 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* A leave trigger that checks for low dexterity.
if %actor.is_pc%
if %actor.dex% < 15

View File

@@ -203,10 +203,14 @@ quit~
%send% %actor% Powerful forces keep you here.
~
#315
Room Command - No Recall~
2 c 100
recall ~
%send% %actor% Divine forces prevent you from doing that.
Obj Command - No quit~
1 c 3
q~
if %cmd.mudcommand% == quit
%send% %actor% Divine forces prevent you from doing that.
else
return 0
end
~
#316
Mob Fight - generic poison~

View File

@@ -1,234 +1,240 @@
#3000
Mage Guildguard - 3024~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == south
* Stop them if they are not the appropriate class.
if %actor.class% != Magic User
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3001
Cleric Guildguard - 3025~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == north
* Stop them if they are not the appropriate class.
if %actor.class% != Cleric
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3002
Thief Guildguard - 3026~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == east
* Stop them if they are not the appropriate class.
if %actor.class% != Thief
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3003
Warrior Guildguard - 3027~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == east
* Stop them if they are not the appropriate class.
if %actor.class% != Warrior
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3004
Dump - 3030~
2 h 100
~
%echo% %object.shortdesc% vanishes in a puff of smoke!
%send% %actor% You are awarded for outstanding performance.
%echoaround% %actor% %actor.name% has been awarded for being a good citizen.
eval value %object.cost% / 10
%purge% %object%
if %value% > 50
eval value 50
elseif %value% < 1
eval value 1
end
if %actor.level% < 3
nop %actor.exp(%value%)%
else
nop %actor.gold(%value%)%
end
~
#3005
Stock Thief~
0 b 10
~
set actor %random.char%
if %actor%
if %actor.is_pc% && %actor.gold%
%send% %actor% You discover that %self.name% has %self.hisher% hands in your wallet.
%echoaround% %actor% %self.name% tries to steal gold from %actor.name%.
eval coins %actor.gold% * %random.10% / 100
nop %actor.gold(-%coins%)
nop %self.gold(%coins%)
end
end
~
#3006
Stock Snake~
0 k 10
~
%send% %actor% %self.name% bites you!
%echoaround% %actor% %self.name% bites %actor.name%.
dg_cast 'poison' %actor%
~
#3007
Stock Magic User~
0 k 10
~
switch %actor.level%
case 1
case 2
case 3
break
case 4
dg_cast 'magic missile' %actor%
break
case 5
dg_cast 'chill touch' %actor%
break
case 6
dg_cast 'burning hands' %actor%
break
case 7
case 8
dg_cast 'shocking grasp' %actor%
break
case 9
case 10
case 11
dg_cast 'lightning bolt' %actor%
break
case 12
dg_cast 'color spray' %actor%
break
case 13
dg_cast 'energy drain' %actor%
break
case 14
dg_cast 'curse' %actor%
break
case 15
dg_cast 'poison' %actor%
break
case 16
if %actor.align% > 0
dg_cast 'dispel good' %actor%
else
dg_cast 'dispel evil' %actor%
end
break
case 17
case 18
dg_cast 'call lightning' %actor%
break
case 19
case 20
case 21
case 22
dg_cast 'harm' %actor%
break
default
dg_cast 'fireball' %actor%
break
done
~
#3008
Death Trap~
2 g 100
~
* Near Death Trap stuns actor
eval stunned %actor.hitp%
%damage% %actor% %stunned%
%send% %actor% You are on the brink of life and death.
%send% %actor% The Gods must favor you this day.
~
#3009
Stock Cityguard - 3059, 60, 67~
0 b 50
~
if !%self.fighting%
set actor %random.char%
if %actor%
if %actor.is_killer%
emote screams 'HEY!!! You're one of those PLAYER KILLERS!!!!!!'
kill %actor.name%
elseif %actor.is_thief%
emote screams 'HEY!!! You're one of those PLAYER THIEVES!!!!!!'
kill %actor.name%
elseif %actor.cha% < 6
%send% %actor% %self.name% spits in your face.
%echoaround% %actor% %self.name% spits in %actor.name%'s face.
end
if %actor.fighting%
eval victim %actor.fighting%
if %actor.align% < %victim.align% && %victim.align% >= 0
emote screams 'PROTECT THE INNOCENT! BANZAI! CHARGE! ARARARAGGGHH!'
kill %actor.name%
end
end
end
end
~
#3010
Stock Fido - 3062, 3066~
0 b 100
~
eval inroom %self.room%
eval item %inroom.contents%
while %item%
* Target the next item in room. In case it is devoured.
set next_item %item.next_in_list%
* Check for a corpse. Corpse on TBA is vnum 65535. Stock is -1.
if %item.vnum% == 65535
emote savagely devours a corpse.
%purge% %item%
end
set item %next_item%
* Loop back
done
~
#3011
Stock Janitor - 3061, 3068~
0 b 100
~
eval inroom %self.room%
eval item %inroom.contents%
while %item%
* Target the next item in room. In case it is picked up.
set next_item %item.next_in_list%
* TODO: if %item.wearflag(take)%
* Check for fountains and expensive items.
if %item.type% != FOUNTAIN && %item.cost% <= 15
take %item.name%
end
set item %next_item%
* Loop back
done
~
$~
#3000
Mage Guildguard - 3024~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == south
* Stop them if they are not the appropriate class.
if %actor.class% != Magic User
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3001
Cleric Guildguard - 3025~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == north
* Stop them if they are not the appropriate class.
if %actor.class% != Cleric
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3002
Thief Guildguard - 3026~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == east
* Stop them if they are not the appropriate class.
if %actor.class% != Thief
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3003
Warrior Guildguard - 3027~
0 q 100
~
* Check the direction the player must go to enter the guild.
if %direction% == east
* Stop them if they are not the appropriate class.
if %actor.class% != Warrior
return 0
%send% %actor% The guard humiliates you, and blocks your way.
%echoaround% %actor% The guard humiliates %actor.name%, and blocks %actor.hisher% way.
end
end
~
#3004
Dump - 3030~
2 h 100
~
%echo% %object.shortdesc% vanishes in a puff of smoke!
%send% %actor% You are awarded for outstanding performance.
%echoaround% %actor% %actor.name% has been awarded for being a good citizen.
eval value %object.cost% / 10
%purge% %object%
if %value% > 50
eval value 50
elseif %value% < 1
eval value 1
end
if %actor.level% < 3
nop %actor.exp(%value%)%
else
nop %actor.gold(%value%)%
end
~
#3005
Stock Thief~
0 b 10
~
set actor %random.char%
if %actor%
if %actor.is_pc% && %actor.gold%
%send% %actor% You discover that %self.name% has %self.hisher% hands in your wallet.
%echoaround% %actor% %self.name% tries to steal gold from %actor.name%.
eval coins %actor.gold% * %random.10% / 100
nop %actor.gold(-%coins%)
nop %self.gold(%coins%)
end
end
~
#3006
Stock Snake~
0 k 10
~
%send% %actor% %self.name% bites you!
%echoaround% %actor% %self.name% bites %actor.name%.
dg_cast 'poison' %actor%
~
#3007
Stock Magic User~
0 k 10
~
switch %actor.level%
case 1
case 2
case 3
break
case 4
dg_cast 'magic missile' %actor%
break
case 5
dg_cast 'chill touch' %actor%
break
case 6
dg_cast 'burning hands' %actor%
break
case 7
case 8
dg_cast 'shocking grasp' %actor%
break
case 9
case 10
case 11
dg_cast 'lightning bolt' %actor%
break
case 12
dg_cast 'color spray' %actor%
break
case 13
dg_cast 'energy drain' %actor%
break
case 14
dg_cast 'curse' %actor%
break
case 15
dg_cast 'poison' %actor%
break
case 16
if %actor.align% > 0
dg_cast 'dispel good' %actor%
else
dg_cast 'dispel evil' %actor%
end
break
case 17
case 18
dg_cast 'call lightning' %actor%
break
case 19
case 20
case 21
case 22
dg_cast 'harm' %actor%
break
default
dg_cast 'fireball' %actor%
break
done
~
#3008
Death Trap~
2 g 100
~
* Near Death Trap stuns actor
eval stunned %actor.hitp%
%damage% %actor% %stunned%
%send% %actor% You are on the brink of life and death.
%send% %actor% The Gods must favor you this day.
~
#3009
Stock Cityguard - 3059, 60, 67~
0 b 50
~
if !%self.fighting%
set actor %random.char%
if %actor%
if %actor.is_killer%
emote screams 'HEY!!! You're one of those PLAYER KILLERS!!!!!!'
kill %actor.name%
elseif %actor.is_thief%
emote screams 'HEY!!! You're one of those PLAYER THIEVES!!!!!!'
kill %actor.name%
elseif %actor.cha% < 6
%send% %actor% %self.name% spits in your face.
%echoaround% %actor% %self.name% spits in %actor.name%'s face.
end
if %actor.fighting%
eval victim %actor.fighting%
if %actor.align% < %victim.align% && %victim.align% >= 0
emote screams 'PROTECT THE INNOCENT! BANZAI! CHARGE! ARARARAGGGHH!'
kill %actor.name%
end
end
end
end
~
#3010
Stock Fido - 3062, 3066~
0 b 100
~
eval inroom %self.room%
eval item %inroom.contents%
while %item%
* Target the next item in room. In case it is devoured.
set next_item %item.next_in_list%
* Check for a corpse. Corpse on TBA is vnum 65535. Stock is -1.
if %item.vnum% == 65535
emote savagely devours a corpse.
%purge% %item%
end
set item %next_item%
* Loop back
done
~
#3011
Stock Janitor - 3061, 3068~
0 b 100
~
eval inroom %self.room%
eval item %inroom.contents%
while %item%
* Target the next item in room. In case it is picked up.
set next_item %item.next_in_list%
* TODO: if %item.wearflag(take)%
* Check for fountains and expensive items.
if %item.type% != FOUNTAIN && %item.cost% <= 15
take %item.name%
end
set item %next_item%
* Loop back
done
~
#3012
Newbie Tour Guide~
0 e 0
has entered the game.~
%echo% This trigger commandlist is not complete!
~
$~

View File

@@ -2,7 +2,7 @@
Near Death Trap Mahatma - 6318~
0 g 100
~
* By Rumble of The Builder Academy builderacademy.net 9091
* By Rumble of The Builder Academy tbamud.com 9091
* Near Death Trap - Mahatma stuns actor and then takes all of their equipment.
wait 3 sec
say Here, have a quick trip to the Temple of Midgaard.