Well lets get really specific: we'll assume you are using "tinyfugue" MUD client so your scripts will be tinyfugue (tf) scripts; and we'll assume you went with the race known as Duergar and the profession known as artisan, because seeing in the dark lets you not have to do all the worrying about torches or lamp-oil that races without darkvision have to deal with if they want to work in caves or outdoors-at-night:
~/tf/aduergar:
################################ Aduergar ##########################################
/addworld -Ttelnet aduergar Aduergar MyAccountPassword mudgaard.knotwork.com 5555
/def ln = look north
/def le = look east
/def ls = look south
/def lw = look west
/def lu = look up
/def ld = look down
/def lne = look northeast
/def lse = look southeast
/def lsw = look southwest
/def lnw = look northwest
/def lc = look body
/def lac = look all.body
/def gcc = get coins all.body
/def gac = get all all.body
/set food mushroom
/set healingberry berries
/set weapon shiny newbie dagger
/set wandertask 0
/set berrytopackage berries
/def -waduergar -mglob -t"You package up 50 *erries." aduergar_packaged_berries = \
get all package %; n %; w %; w %; s %;\
s %; s %; s %; s %; s %; s %; s %; s %; s %; w %;\
drop all package %; e %; n %; n %; n %; n %; n %; n %; n %; n %; n %;\
n %; e %; e %; s %; say Berries packaged.
/def -waduergar -msimple -t"You say 'Berries packaged.'" berries_packaged = /nextaction
/def -waduergar packageberries = stand %; package 50 some %{berrytopackage}
/def -waduergar -msimple -t"All items in a package must be absolutely identical. Some here are not." \
aduergar_rotate_berries = get 50 some %{berrytopackage} %; drop all some %{berrytopackage} %; /packageberries
/def -waduergar crafttask = rest
/def -waduergar nextaction = mine
/def -waduergar butcher = /def -waduergar nextaction = butcher body %; butcher body
/def -waduergar cg = cast grow %{*}
/def -waduergar chop = /def -waduergar nextaction = chop %; chop
/def -waduergar ci = cast invisibility
/def -waduergar don = cast "clan donate" %{*}
/def -waduergar ehb = eat %{healingberry}
/def -waduergar fbf = get all "buffalo water skin" from bag %;\
fill buffalo water skin.1 fountain %;\
fill buffalo water skin.2 fountain %;\
fill buffalo water skin.3 fountain %;\
fill buffalo water skin.4 fountain %;\
fill buffalo water skin.5 fountain %;\
fill buffalo water skin.6 fountain %;\
fill buffalo water skin.7 fountain %;\
fill buffalo water skin.8 fountain %;\
fill buffalo water skin.9 fountain %;\
fill buffalo water skin.10 fountain %;\
fill buffalo water skin.11 fountain %;\
fill buffalo water skin.12 fountain
/def -waduergar fbw = get all "buffalo water skin" from bag %;\
fill "buffalo water skin.1" %;\
fill "buffalo water skin.2" %;\
fill "buffalo water skin.3" %;\
fill "buffalo water skin.4" %;\
fill "buffalo water skin.5" %;\
fill "buffalo water skin.6" %;\
fill "buffalo water skin.7" %;\
fill "buffalo water skin.8" %;\
fill "buffalo water skin.9" %;\
fill "buffalo water skin.10" %;\
fill "buffalo water skin.11" %;\
fill "buffalo water skin.12"
/def -waduergar forage = /def -waduergar nextaction = forage %; forage
/def -waduergar freshlantern = /stand %; hold lantern %; fill lantern oil
/def -waduergar gdig = /def -waduergar nextaction = gdig %; gdig
/def -waduergar hl = hold lantern
/def -waduergar makeberrypreserves = /stand %; /def -waduergar nextaction = /makeberrypreserves %;\
/def -waduergar -n1 -msimple -t"You are done making berry preserves." aduergar_berry_preserves_done = \
get all pot %%; put all burnt trash %%; e %%; e %%; open sw %%; sw %%; drop all preserves %%;\
ne %%; w %%; w %%; /nextaction %;\
get 15 berries %; put all berries pot %; foodprep pot
/def -waduergar makebloodwine = /stand %; /def -waduergar nextaction = /makebloodwine %;\
e %; e %; fill pitcher fountain %; w %; w %; get blood %; put blood pitcher %;\
get grapes %; put grapes pitcher %;\
/def -waduergar -n1 -msimple -t"You are done distilling blood wine." aduergar_wine_done = \
e %%; e %%; get all pitcher %%; put all wine tub %%; w %%; w %%; /nextaction %;\
distill pitcher
/def -waduergar maketorches = /stand %; /def -waduergar nextaction = /maketorches %;\
/def -waduergar -n1 -msimple -t"You are done carving a torch." aduergar_torch_done = /nextaction %;\
carve torch %; score
/def -waduergar mine = /def -waduergar nextaction = mine %; mine
/def -waduergar pol = remove lantern %; put out lantern %; fill lantern oil
/def -waduergar r = recall
/def -waduergar react_to_disarmed = get %{weapon} %; wield %{weapon}
/def -waduergar really_tired = rest%; sleep %; /repeat -0:5:0 1 /wakenrest %; /crafttask
/def -waduergar stand = wake %; stand
/def -waduergar wakenrest = wake %; rest
/def -waduergar -msimple -t"A buffalo water skin is empty." buffalo_water_skin_empty = \
put "buffalo water skin" in bag
/def -waduergar -msimple -t"A hooded brass lantern flickers and burns out." aduergar_hb_lantern_out = /freshlantern
#/def -waduergar -msimple -t"A roaring campfire is no longer burning." aduergar_campfire_faded = light fire
/def -waduergar -msimple -t"A torch flickers and burns out." aduergar_torch_out = hold torch
/def -waduergar -msimple -t"A waterskin is empty." water_skin_empty = \
put waterskin in bag
/def -waduergar -msimple -t"An oil flask is empty." oil_flask_empty = \
put oil flask in bag %; fill lantern oil
/def -waduergar -mglob -t"* disarms you!" aduergar_opponent_disarmed_me = /react_to_disarmed
/def -waduergar -msimple -t"Not while you are sleeping." aduergar_not_while_sleeping = wake
/def -waduergar -msimple -t"You are hungry." am_hungry = wake %; eat %{food}
/def -waduergar -msimple -t"You are sleeping!" aduergar_are_sleeping = wake
/def -waduergar -msimple -t"Huh?" aduergar_huh = /mine
/def -waduergar -msimple -t"You are thirsty." am_thirsty = wake %; drink water
/def -waduergar -mglob -t"You are done chopping*" aduergar_chopping_done = /nextaction
/def -waduergar -mglob -t"You are done digging out *" aduergar_digging_done = /nextaction
/def -waduergar -mglob -t"You are done foraging*" aduergar_foraging_done = /nextaction
/def -waduergar -mglob -t"You are done mining*" aduergar_mining_done = /nextaction
/def -waduergar -mglob -t"You are done skinning and butchering *" aduergar_butchering_done = /nextaction
/def -waduergar -msimple -t"You are now listed as AFK." react_to_afk = /crafttask
/def -waduergar -mglob -t"You continue digging out * completed). " aduergar_continue_gdig = smile
#/def -waduergar -msimple -t"You don't think this is a good place to forage." aduergar_not_good_forage = \
# /set nextaction butcher body %; butcher body
/def -waduergar -msimple -t"You don't think this is a good place to mine." aduergar_not_good_mine = /gdig
/def -waduergar -msimple -t"You can't seem to find anything worth digging up here." aduergar_cant_find_dig = /forage
/def -waduergar -msimple -t"You can't seem to find anything worth foraging around here." aduergar_cant_find_forage = /mine
/def -waduergar -msimple -t"You can't seem to find any game around here." aduergar_cant_find_game = /mine
/def -waduergar -msimple -t"You can't seem to find anything worth mining here." aduergar_cant_find_mine = /gdig
/def -waduergar -msimple -t"You don't have enough movement to do that. You are too tired." aduergar_no_mp = sleep
/def -waduergar -msimple -t"You need to stand up!" aduergar_need_to_stand = /stand
/def -waduergar -msimple -t"You stop yawning." aduergar_stopped_yawning = /wakenrest
/def -waduergar kill_opponent = /stand%; kill %{*}
/def -waduergar opponent_died = rest
/def -waduergar conditionals = \
/if /test %{wandertask} %;\
/then /def -waduergar -mregexp \
-t"You might try to the ([^ ]*)\.$$" aduergar_might_try_direction = say %%P1 %%; %%P1 %%; /nextaction %;\
/else \
/undef aduergar_might_try_direction %;\
/endif
/conditionals
################################ END OF Aduergar ###################################
~/tf/auto/aduergar:
/load tf/aduergar
/def -waduergar nextmission = /gomining
/def -waduergar crafttask = wake %; score %; /nextaction
/def -waduergar -msimple -n1 -h"PROMPT Account name: " aduergar_account_prompt = Aduergar
/def -waduergar -msimple -n1 -h"PROMPT Command or Name (?): " aduergar_name_prompt = aduergar %; /gohome
#/def -waduergar -msimple -n1 -h"PROMPT Quit -- are you sure (y/N)?" aduergar_quit_sure = yes
/def -waduergar -msimple -n1 -t"(You are asleep)" aduergar_asleep = wake %; look
#/def -waduergar -msimple -n1 -t"West wing room. " aduergar_in_bedroom = /nextmission
/def -waduergar -msimple -t"It's too wet to light a torch here." aduergar_too_wet = /gohome
/def -waduergar -msimple -t"You are famished! Eat something!" aduergar_famished = /gohome
/def -waduergar -msimple -t"You are parched! Drink something!" aduergar_parched = /gohome
/def -waduergar bathe = /bathe1
/def -waduergar bathe1 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed1 = /bathe2 %; bathe
/def -waduergar bathe2 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed2 = /bathe3 %; bathe
/def -waduergar bathe3 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed3 = /bathe4 %; bathe
/def -waduergar bathe4 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed4 = /bathe5 %; bathe
/def -waduergar bathe5 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed5 = /bathe6 %; bathe
/def -waduergar bathe6 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed6 = /bathe7 %; bathe
/def -waduergar bathe7 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed7 = /bathe8 %; bathe
/def -waduergar bathe8 = /def -waduergar -msimple -n1 -t"You bathe yourself." aduergar_bathed8 = /gotobed %; bathe
/def -waduergar chop = /def -waduergar nextaction = get all %%; /don bundle %%; /don bundle %%; /don bundle %%;\
/don pound %%;\ /don pound %%; /don pound %%; /don body %%; /don body %%; chop %%; score %; chop
/def -waduergar farm1 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed1 = /farm2 %;\
get all grapes %; drop grapes %; farm grapes
/def -waduergar farm2 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed2 = /farm3 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm3 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed3 = /farm4 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm4 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed4 = /farm5 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm5 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed5 = /farm6 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm6 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed6 = /farm7 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm7 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed7 = /farm8 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm8 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed8 = /farm9 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm9 = /def -waduergar -mglob -n1 -t"You are done planting Grapes." aduergar_farmed9 = /farm0 %;\
w %; get all grapes %; drop grapes %; farm grapes
/def -waduergar farm0 = /homefromfarm
#/def -waduergar forage = /def -waduergar nextaction = /don pound %%; /don pound %%; /don pound %%; /don pound %%;\
# /don pound %%; /don pound %%; /don pound %%; /don pound %%; /don pound %%; /don pound %%; /don pound %%;\
# forage %%; score %; forage
/def -waduergar forage = /def -waduergar nextaction = /forage %%; score %; forage %; score
/def -waduergar gdig = /def -waduergar nextaction = gdig %%; score %; gdig %; score
/def -waduergar getberries = e %; e %; u %; e %; e %; e %; e %; e %; e %; d %; s %; d %; get all berries %;\
u %; n %; u %; w %; w %; w %; w %; w %; w %; d %; w %; w %; drop all berries
/def -waduergar getlemons = e %; e %; u %; e %; e %; e %; e %; e %; e %; d %; s %; d %; get all lemons %;\
u %; n %; u %; w %; w %; w %; w %; w %; w %; d %; w %; w %; drop all lemons
/def -waduergar getolives = e %; e %; e %; e %; e %; e %; e %; e %; d %; s %; d %; get all olives %;\
u %; n %; u %; w %; w %; w %; w %; w %; w %; w %; w %; drop all olives
/def -waduergar getoranges = e %; e %; u %; e %; e %; e %; e %; e %; e %; d %; s %; d %; get all oranges %;\
u %; n %; u %; w %; w %; w %; w %; w %; w %; d %; w %; w %; drop all oranges
/def -waduergar go_manual = /def nextmission = /go_manual %; /undef aduergar_fatigued
/def -waduergar gochopping = /def -waduergar -msimple -n1 -t"You are fatigued." aduergar_fatigued = /gohome %;\
/set wandertask 1 %; /conditionals %; /stand %; hold torch %; /gotowoods %; /chop
/def -waduergar gofarming = /def -waduergar -msimple -n1 -t"You are fatigued." aduergar_fatigued = /homefromfarm %;\
/set wandertask 0 %; /conditionals %; /stand %; hold torch %; /gotofarm %; /farm1
/def -waduergar goforaging = /def -waduergar -msimple -n1 -t"You are fatigued." aduergar_fatigued = /gohome %;\
/set wandertask 0 %; /conditionals %; /stand %; /gotoforage %; /forage
/def -waduergar gohome = /def nextaction = rest %; w %; s %; sw %; /fbw %; /bathe
/def -waduergar gomakepreserves = /def -waduergar -msimple -n1 -t"You are fatigued." aduergar_fatigued = \
/def nextaction = /homefrompreserves %;\
s %; e %; n %; n %; n %; w %; w %; w %; d %; w %; w %;\
/getberries %; /getfruit %; /getlemons %; /getoranges %; /preserveberries
/def -waduergar gomining = /def -waduergar -msimple -n1 -t"You are fatigued." aduergar_fatigued = /gohome %;\
/gotomine %; /mine
/def -waduergar gopackaging = /def -waduergar -msimple -n1 -t"You are fatigued." aduergar_fatigued = /gohome %;\
/stand %; hold torch %; /gotoberries %; /packberries
/def -waduergar gopackberries = /def -waduergar nextmission = /gopackblackberries %;\
/set berrytopackage berries %; /gopackaging
/def -waduergar gopackblackberries = /def -waduergar nextmission = /gopackblueberries %;\
/set berrytopackage blackberries %; /gopackaging
/def -waduergar gopackblueberries = /def -waduergar nextmission = /gopackboysenberries %;\
/set berrytopackage blueberries %; /gopackaging
/def -waduergar gopackboysenberries = /def -waduergar nextmission = /gopackcranberries %;\
/set berrytopackage boysenberries %; /gopackaging
/def -waduergar gopackcranberries = /def -waduergar nextmission = /gopackraspberries %;\
/set berrytopackage cranberries %; /gopackaging
/def -waduergar gopackraspberries = /def -waduergar nextmission = /gopacksmurfberries %;\
/set berrytopackage raspberries %; /gopackaging
/def -waduergar gopacksmurfberries = /def -waduergar nextmission = /gopackstrawberries %;\
/set berrytopackage smurfberries %; /gopackaging
/def -waduergar gopackstrawberries = /def -waduergar nextmission = /gopackberries %;\
/set berrytopackage strawberries %; /gopackaging
/def -waduergar gotobed = /def -waduergar -msimple -t"You awake and stand up." aduergar_awakes = /nextmission %;\
stand %; ne %; drop all mushroom %; get 15 mushroom %; e %; sleep
/def gotoberries = s %; e %; n %; n %; n %; n %; n %; n %; n %; n %; e %; e %; s
/def -waduergar gotofarm = s %; e %; n %; n %; n %; e %; e %; e %; d %; s %; d %; get 9 grapes %;\
u %; n %; u %; w %; w %; w %; s %; s %; s %; s %; s %; s %; w %; w %; s %; s %; w %; w %; s %; s %;\
nw %; n %; n %; n
/def -waduergar gotoforage = /stand
/def -waduergar gotomine = /stand
/def -waduergar gotowoods = s %; e %; s %; s %; s %; w %; w %; n %; n %; n %; n
/def -waduergar homefromfarm = /stand %; cast clan home %; cast clan home %; cast clan home %;\
s %; e %; drop all torch %; get 25 torch %; w %; n %;\
n %; n %; n %; n %; e %; e %; e %; d %; s %; d %; drop all grape %; u %; n %; u %; w %; w %; w %;\
n %; n %; n %; n %; nw %; /bathe
/def -waduergar homefrompreserves = /def nextaction = rest %: e %; e %; u %; e %; e %; e %; n %; n %;\
/pol %; /hl %; n %; nw %; /bathe
/def -waduergar mine = /def -waduergar nextaction = mine %%; score %; mine %; score
/def -waduergar packberries = /def nextaction = /packageberries %%; score %; /packageberries %; score
/def -waduergar preserveberries = \
/def -waduergar -n1 -msimple -t"You are done making berry preserves." aduergar_preserve_berries_done = \
get all pot %%; put all burnt trash %%; e %%; e %%; open sw %%; sw %%; drop all preserves %%;\
ne %%; w %%; w %%; score %;\
/getberries %; empty pot %;\ get 15 berries %; put 15 berries pot %; foodprep pot
/def -waduergar preservelemons = \
/def -waduergar -n1 -msimple -t"You are done making lemon preserves." aduergar_preserve_lemons_done = \
get all pot %%; put all burnt trash %%; e %%; e %%; open sw %%; sw %%; drop all preserves %%;\
ne %%; w %%; w %% score %;\
/getlemons %; empty pot %; get 15 lemons %; put 15 lemons pot %; foodprep pot
/def -waduergar preserveoranges = \
/def -waduergar -n1 -msimple -t"You are done making orange preserves." aduergar_preserve_oranges_done = \
get all pot %%; put all burnt trash %%; e %%; e %%; open sw %%; sw %%; drop all preserves %%;\
ne %%; w %%; w %% score %;\
/getoranges %; empty pot %; get 15 oranges %; put 15 oranges pot %; foodprep pot
/def -waduergar sortoilflasks = drop all oil %; s %; get all oil bag %; e %; e %; e %; s %;\
drop all oil %; n %; w %; s %; s %; e %; get oil flask %; w %; n %; n %; w %; w %; n %;\
drop all oil %; get 8 oil
The command to start it up is "tf -ftf/auto/aduergar".
If the version of coffeemud being run at the MUD isn't the latest one that broke some stuff by trying to add weird nonstandard ansi codes to support some client that is a real problem-client nowhere near as important as tinyfugue in the coffeemud developer's scheme of things, this automatically logs in and does stuff that earns experience and keeps the character fed and bathed and watered, provided you gave the character at least one "buffalo hide waterskin" up front it can fill at the lake and drink from when thirsty.
The fact that the actual auto-logging-in currently is broken is actually in a way a feature not a bug, because an individual can easily just log in when they fire it up, whereas a botnet operator with thousands of zombies trying to do this now has thousands of zombies to log in to manually or has to hack up a patch to apply on each zombie with some kind of workaround for the login. Presumably being careful that it will still work as soon as the coffeemud developer reverts the crazy attempt to accomodate the neverending-source-of-trouble client he didn't really want to support anyway so that tinyfugue will work fine again as normal.
This is a really simplistic pair of scripts, for a race and character-class that is so far seemingly the simplest to deal with. Doubtless scripts will get way more sophisticated over time, but this one is simplistic enough people likely wouldn't be too concerned about just giving it away to anyone because doubtless their own customised version would outperform it.
Also it actually contains tons of pieces of script that it does not need, as examples, because it was made by being given a script by an elf who had a clanhouse to move around in with ovens and stoves and so on thus could make preserves and fun stuff like that. Those examples will come in handy for some duergar sometime who sculpts a stove, smiths some pots and pans and so on, and finds sources of fruit and so on.
It could be stripped down a LOT by chopping out all the stuff the current generation of Duergar at the Duergar starting-spot don't actually use yet.
The clanhouse is of a floorplan that one can buy ready-made, so actually if the Duergar manage to rack up enough capital they could in principle order such a clanhouse, or maybe even build one, put the oven etc in the same room of the kitchen area etc, and basically make a lot of those scripts work unaltered in a clanhouse of their own.
Most likely a newbie would in effect "get a job", whereby they create a race and profession of character the "employer" wants to "hire", and run scripts provided by the "employer" that include taking stuff to the employer's merchant/shop to sell and maybe even buying food and water there too, so they can focus directly on just their "job".
This particular group of Duergar that this individual Duergar is living with though are starting pretty much from scratch hoping to work their own way up to eventaully becoming ready to start "hiring".
This whole approach to "CPU mining" is still in the startup / early-adopter stage; by the time it gets really sophisticated these early characters will be level 91 artisans, stinking rich, living in a large complex of caves of their own instead of at the racial starting-spot, and maybe "hiring" all the newbie Duergar at a nice profit to themselves.
-MarkM-