Mud Client Ideas: Difference between revisions
Line 15: | Line 15: | ||
When its time to prep for a run, get all spells from your bots, quaff a tankset, apply anything else, and then log off. Your guys is 100% ready to rock and offline. | When its time to prep for a run, get all spells from your bots, quaff a tankset, apply anything else, and then log off. Your guys is 100% ready to rock and offline. | ||
Have an alias to do all this for you, like have 'prep' do dispel all, say | Have an alias to do all this for you, like have 'prep' do dispel all, say whatever to trigger your spell bots, quaff all tank pots, apply all skills. Quit once its all complete. | ||
=Quick Reset= | =Quick Reset= |
Revision as of 15:40, 6 June 2022
So you think you're some kinda Power User huh? WTF does that even mean?!?!
Here's things the uber-nerds who play this game all day every day are doing, most of which is based in client-side scripting:
Quick Prep
Code your own spell bots and bring them with you to runs.
Have an alias to quaff a tank set.
Have an alias to apply any class-specific skills/spells you get.
When its time to prep for a run, get all spells from your bots, quaff a tankset, apply anything else, and then log off. Your guys is 100% ready to rock and offline.
Have an alias to do all this for you, like have 'prep' do dispel all, say whatever to trigger your spell bots, quaff all tank pots, apply all skills. Quit once its all complete.
Quick Reset
A full reset alias is helpful, that can be broken down into this component aliases you can fire individually if necessary as well:
repair - an alias to run you to your preferred repair mob, remove all, repair all, wear all, recall. refavor - an alias to run to a'enari/vl'aresch to refavor back to praised, and recall. restock - an alias to buy you heals/manas and restock tank pots from a donation shelf.
If you've done a kill on something and people say 'reset', its realllll nice to just type 'recall... reset' and then go get a drink while that all happens.
You can also get even more tricksy and make it recall you, reset you, and return you to wherever you were.
The restocking alias is the one that takes the most scripting. You'll need to establish a variable that keeps your desired stock levels of stuff, then, also set up a trigger that can be enabled when you examine your containers that will catch all the potion names and record how many you have into a 'current stock' variable. Then, the restock alias just uses some math to compare your desired levels to your actual current levels and gets the difference from your potion shelf.
MSDP
Use a modern client that can receive MSDP variables from the mud. You will automatically have variables for your hp, room names, stats, everything. It makes it very easy to script stuff based on all those values.
Autofight
You'll want to set up an autofight script. The basis of this should be a simple trigger that decides whether to hit the mob, or heal up to full. Does that, then repeats.
There are many ways to do this. You could trigger on your hit message, or on an arbitrary command message that you send to the game after every hit and full heal, etc. Basically you just need to fire a trigger every time your wait-state resolves and you are free to do an action.
Build that trigger out to check for everything you can think of:
- healing (heal to full or heal to a value you can specify on the fly by having an alias set a variable). Account for stomach fullness:
- Stomach fullness and spring drinking (also usage of spells like salinate, or custom spring names)
- truesight/blindness/cure-blindness
- poison/cure-poison
- mana potion quaffing
- blood feeding
- specific mob progs/reactions
- anything else you can think of
Specific runs might require specific fight scripts just for that mob. Get a good base fight script, and then modify as needed for specialized applications.
GUI
Build out an extremely helpful visual display in your client. The more you can 'see' the better.
Have alerts to show when you are disarmed/blinded/etc or when you are doing certain actions like hitting/healing or anything important happens. Have a way to see your current spells and ticks remaining, and potion counts.
Equipment Damage Tracking
To prevent equipment from scrapping in a fight, you'll want to set up triggers to track hits to your gear and auto-remove gear that is down to 2 or 3 hits remaining.
This can be done by creating a local client-side variable(s) that stores your eq names, keywords, and AC values. Then, a trigger on the 'gets damaged' message can be used to regex whatever got hit against your locally stored information and adjust the AC variable. Include an #IF check to consult that AC value and if < 3 remove the item.
Here's an example snippet of my 'eqlist' variable that includes all wear slots, here is what one individual wear slot looks like:
#var eqlist { {waist} { {ac} {10} {acMax} {10} {dam} {0} {key} {Girth} {name} {the Ice Girth} {survey} {superb} } }So then a trigger for {* get's damaged!!} does something like: foreach item in the 'eqlist' var regex that item name against the * that got hit, upon match, reduce the items AC by 1, and if AC is now < 3 remove the item by its key word.