Switching from cMUD
Posted: Fri Jan 27, 2023 6:50 pm
At the risk of sounding like a broken record
I have a decent amount of aliases and triggers in cMUD that work as intended. I have no idea how they would look written into something Mudlet would understand.
I won't bother you guys with the full set. If you could show me how to make it mudlet friendly, that would be amazing!
"seamermana" is fairly simple. It does a full outfit exchange and utilises values stored in @variables - so @wristdam is treated as "put 'angel wristband' hole". And so forth. The 'manaeq' tag at the end is the name of the class the alias belongs to, so if I'm not in fight mode (I toggle between peaceful and pissy), running the command "seamermana" is pointless - it's inactive. The shield line - this particular target is known to carry an axe, and axes split shields, perm destructing them. If the script knows I'm fighting lich it skips the shield swap, and if I'm not fighting Lich it swaps +mana shield/+dam shield.
This fight script is a little more interesting, I think. @bodyparts and @damages contain arrays of known damage messages and body parts. @fightcounter counts how many times a particular spell/kick has been sent in a row, cuz at 20 repeated commands you get disconnected. The delay is to reduce the amount of times one action is triggered, in cmud the alarm is just re-started if it's appended before it casts. And if we get to 15 consecutive attacks, and our hp is lower than max, we throw in a cure critical. If we're fully healed, we're sending a kick. Thus, the fight counter is reset intelligently.
And finally, I followed the setup on Edru's adjustable tabbed windows page and got the layout. What's the easiest way to funnel information to those tabs? (https://github.com/Edru2/AdjustableTabWindow). I know how to capture it, I just don't know how to display it where I want it.
Sorry to ask the same old questions.. sometimes I just need to have it explained like I'm 5
I have a decent amount of aliases and triggers in cMUD that work as intended. I have no idea how they would look written into something Mudlet would understand.
I won't bother you guys with the full set. If you could show me how to make it mudlet friendly, that would be amazing!
Code: Select all
#ALIAS seamermana {
get all hole;
wear @neckmana;
rem @neckdam;
wear @neckmana;
put all.@neckdam hole;
wear @headmana;
put @headdam hole;
wear @legsmana;
put @legdam hole;
wear @handsmana;
put @handdam hole;
wear @waistmana;
put @waistdam hole;
wear all;
wear @heldmana;
#if (@target == lich) {} {wear @shieldmana;put @shielddam hole};
put @helddam hole;
wear @aboutmana;
put @aboutdam hole;
#2 rem '@wristdam';
#2 wear '@wristmana';
#2 put '@wristdam' hole;
wear @armsmana;
put @armsdam hole;
wear @lightmana;
put @lightdam hole;
#VARIABLE eq {0};
#VARIABLE mood {peaceful}
} "manaeq"
Code: Select all
#TRIGGER {Your (%*) {@damages} (%*)'s {@bodyparts}(*)} {
#IF ( @fightcounter > @fight) {
#IF (@hp < @maxhp) {
#VARIABLE fightcounter 0;
cast 'cure critical' self
}
else {
gore;
#VARIABLE fightcounter 0
}
}
#if (@mana > 100) {
#IF ("%1" == "blast of lightning") {
#alarm "fightcounter" +0.75 {
cast 'lightning breath';
#add fightcounter 1
};
#ABORT 1
};
#IF ("%1" == "blast of acid") {
#alarm "fightcounter" +0.75 {
cast 'acid breath';
#add fightcounter 1
};
#ABORT 1
};
#IF ("%1" == "blast of flame") {
#alarm "fightcounter" +0.75 {
cast 'fire breath';
#add fightcounter 1
};
#ABORT 1
};
#IF ("%1" == "blast of frost") {
#alarm "fightcounter" +0.75 {
cast 'frost breath;
#add fightcounter 1
};
#ABORT 1
};
#IF ("%1" == "blast of gas") {
#alarm "fightcounter" +0.75 {
cast gas;
#add fightcounter 1
};
#ABORT 1
}
};
#if ("%1" == "divine power") {
#abort 1
};
#if ("%1" == "flaming bite") {
#abort 1
};
#if ("%1" == "Kick") {
#if (@fightcounter < 15) {
#alarm "fightcounter" +0.5 {
Kick
};
#add fightcounter 1
}
};
#if ("%1" == "gore") {
#if (@gore < 15) {
#alarm "fightcounter" +0.5 {
gore
};
#add fightcounter 1
}
else {
#add fightcounter 1;
gore;
#abort 1
}
};
#if ("%1" == "bash") {
#if (@bash < 15) {
#alarm "fightcounter" +0.5 {
bash
};
#add fightcounter 1
}
else {
#var fightcounter 0;
bash;
#abort 1
}
}
} "fight" {case}
And finally, I followed the setup on Edru's adjustable tabbed windows page and got the layout. What's the easiest way to funnel information to those tabs? (https://github.com/Edru2/AdjustableTabWindow). I know how to capture it, I just don't know how to display it where I want it.
Sorry to ask the same old questions.. sometimes I just need to have it explained like I'm 5