The Mantis Combat System

by Jules

Back to Mechanic's Corner.

Unknown2010-01-03 22:43:55
It was lots of versions ago when I changed this and may be fixed by now, but if you don't have the sipper set sipBalance (or some other needed variable) to 0 (or not 1, anyway) when you try to sip, then extra prompt lines between the sip and when your health was low will result in multiple sips being attempted, since it'll still have sip balance and be receiving the low health condition.
Jules2010-01-04 07:27:46
I uploaded Beta 4.2 to the website, which fixes quite a bit of these Autosipper problems, thanks in large part to help from Cern.
Jules2010-03-30 22:38:25
I am pleased to announce that after MANY months of coding, Mantis Beta Release 5.0 is officially ready to be released!

This version is not like any of the other's for one simple reason: it ACTUALLY works! Months of hard work, countless questions, and many long nights have culminated in this latest release. This release isn't so much an addition onto old features, but a re-write of those old ones, so they will now work properly as intended

The full feature list for 5.0 is thus:
  • Now uses 1 curing list and curing code to cure affliction. This code runs off the prompt, so it is guaranteed to fire and cure every affliction in the queue, all in the prioritized order.
  • The Autosipper has been redesigned as well, making heavy use on Mudlet's ATCP support. You no longer have to send SCORE when you first login, to get an accurate number for max values. Everything works right from the start!
  • All the system variables are now saved in one easy-to-read list. This list can be expanded upon easily: the layout was designed to be intuitive.
  • There's now a central "alert" output: mtell(). This will display a color echo'd message back to you, displaying anything you want. By default, Mantis utilizes this to tell you what afflictions are being added to the queue, what afflictions are being removed from the queue, and when the system is done initializing.
  • For the first time, a series of helpful Aliases have been added that automate a lot of simple tasks some people have, such as looking in your pack, leading pilgrims, and even sprinting! Take a look through them, and change them up as you see fit.


There are still a few more things that need to be done, namely:
  • Trigger optimization, and making sure we have all of the triggers saved.
  • A Def-Up alias, to automatically set up your personal defenses.
  • Wound curing. That's second on my list of things to do, right after trigger optimization.
  • Illusion control. Any ideas/help with this would be much appreciated!


There has also been a shift in the hosting of the source code and bug reports. Instead of utilizing Launchpad, Mantis now hosts all of its source code on Google Code. Here, you may submit bug reports, look through all of the code that makes up Mantis, and even submit your own clones of the system. More information can be found on the Mantis Website. Google Code uses Mercurial for it's source code uploads, so if you would like to submit your own changes to the code, simply download Mercurial, and run it through the command line. A very well written tutorial on how to use Mercurial can be found here.

Finally, I would like to give a HUUUUUGE thank you to everyone that helped me through every step of the way, namely Zarquan from the forums here, along with Demonnic (also here, but he's being counted on the Mudlet forums), Ixokai, Vadi, Heiko, and Oneymus, all from the Mudlet Forums. Without all of your valuable, and incredibly patient, help, I wouldn't be here today! Thank you guys!

Now, download Mantis, install it, and test it out, people!
Jules2010-03-31 03:24:36
EDIT: I've received a few complaints about not being able to import Mantis.xml into Mudlet. That has been fixed, and the fixed version has been added to the Google Code page! Feel free to download!
Jules2010-04-22 05:49:32
Mantis Beta Release 5.0.1 has been released! Check out the OP for details!
Acrune2010-05-03 21:18:51
You might want to check: http://forums.lusternia.com/index.php?act=...ost&id=2165 and http://forums.lusternia.com/index.php?act=...ost&id=2166. Lots of stuff you don't have yet (though keep in mind this is starting to get old).

A couple additional tips:
- You're probably going to want to track left and right afflictions separately. So, instead of brokenArm, you want to track both arms. Or possibly keep brokenArm for when you don't know what arm got broken, and track both arms on top of that.
- You need to be more careful with your regex. You have numerous places with his|her that should be (his|her), same with left|right and probably a few others. This minor error can lead to rather messy results. Also, make sure that every regex has a reference to 'you' or 'your', etc if at all possible, otherwise you try to cure stuff done to other people.

Would be nice to see a complete mudlet system available to everyone, so good luck to you.
Okin2010-06-18 13:39:47
Is this system still being developed/supported? Mudlet looks awesome, and I want it, but I've got zero hope of building a system from the ground up. sad.gif Also, I tried to download the latest version from the link at http://sites.google.com/site/mantissystem/home, but I got a 403 error.
Unknown2010-06-18 14:04:05
Mantis was/is only a very bare bones system, anyhow. From what I last saw, it didn't have triggers for most afflictions yet.
Unknown2010-06-18 14:15:25
QUOTE (Okin @ Jun 18 2010, 09:39 AM) <{POST_SNAPBACK}>
Is this system still being developed/supported? Mudlet looks awesome, and I want it, but I've got zero hope of building a system from the ground up. sad.gif Also, I tried to download the latest version from the link at http://sites.google.com/site/mantissystem/home, but I got a 403 error.


Site has switched, I believe. Check here: https://launchpad.net/mantissystem

Though I don't believe that has been updated in some time... check with Jules!

I love Mudlet. Mantis isn't bad but it does loop in heavy combat. So no, not quite a system from the ground up, but still requires work. Coding aliases and stuff in Mudlet is a pinch though.
Unknown2010-06-18 14:16:45
QUOTE (Zarquan @ Jun 18 2010, 10:04 AM) <{POST_SNAPBACK}>
Mantis was/is only a very bare bones system, anyhow. From what I last saw, it didn't have triggers for most afflictions yet.


Triggers are in, still looping. A few triggers still missing I think, but mainstream are there.
Jules2010-06-18 22:44:19
Mantis is still in development, don't worry. I recently got an internship at Fidelity Investments, working 9-5... SOOOOO my hands are a little tied!

I changed the site over to a new Google Code page: http://code.google.com/p/mantis-curing-system

I haven't uploaded a working version of the system *yet* because it's still in a pretty heavy development mode right now. I'm working on integrating wounds into the autosipper, and plus tweaking and refining the main system, so it doesn't loop in heavy combat. Mantis 5.2 is still usable, just not ready *yet*!
Okin2010-06-19 04:42:44
Could you possibly clarify "usable, but not ready"? smile.gif
Neos2010-06-19 05:14:27
QUOTE (Okin @ Jun 19 2010, 12:42 AM) <{POST_SNAPBACK}>
Could you possibly clarify "usable, but not ready"? smile.gif


I believe it can be used for hunting and such, but doesn't have the full capabilities of a full healing system like Treant.
Not sure, so don't quote me on this or anything, just what I think.
Okin2010-06-19 05:32:23
Also... I can't find anything downloadable at that link. Am I missing something?
Xavius2010-06-19 07:48:50
QUOTE (Okin @ Jun 18 2010, 11:42 PM) <{POST_SNAPBACK}>
Could you possibly clarify "usable, but not ready"? smile.gif

It's usable in the sense that you can install it, and you'll know it's properly installed by the way it breaks at the first sign of trouble. I love sparring people with Mantis. It makes me feel like I'm getting better at this whole warrior business.

It's got a loooong way to go.
Acrune2010-06-19 13:09:31
People actually fight with a unfixed version of mantis?
Unknown2010-06-21 13:21:00
QUOTE (Acrune @ Jun 19 2010, 09:09 AM) <{POST_SNAPBACK}>
People actually fight with a unfixed version of mantis?


I did.

Did being the operative word. Now I just use it for my alts (it means that I don't have to make more than one world in Mush) because I got really angry a couple of nights ago at 3am when Mantis forcefed me all the yarrow in my rift before I got to the off button.

I have high hopes that I can return to Mantis someday though, since I already know how to code pretty well in Mudlet. >.>
Unknown2010-06-21 13:32:13
FYI, no matter which client you use, you should have separate profiles/worlds for each character you play. Some scripts can be setup to be shared (Treant actually works well that way in MUSHclient), but the configurable options, aliases, macros, etc should be unique to each character.
Unknown2010-06-21 18:50:57
QUOTE (Zarquan @ Jun 21 2010, 10:32 AM) <{POST_SNAPBACK}>
FYI, no matter which client you use, you should have separate profiles/worlds for each character you play. Some scripts can be setup to be shared (Treant actually works well that way in MUSHclient), but the configurable options, aliases, macros, etc should be unique to each character.


...I didn't know how to do that in Mudlet, so my alts share everything.
Unknown2010-06-22 01:24:54
QUOTE (Kayte @ Jun 21 2010, 02:50 PM) <{POST_SNAPBACK}>
...I didn't know how to do that in Mudlet, so my alts share everything.


On the screen where you pick what profile to connect with, you have a 'new' option. Though if you do "Copy" you can copy a basic profile with mantis installed on it and then customize each one with the specific information for that alt. It does mean you have to upgrade each one come upgrade time, but it's still better to have one profile per character, regardless of what mud you play that character on. And I'd upgrade your "template" profile that you were copying from, so if you make any new alts you can clone off of that one and still get an up to date codebase to work from.

This is part of the reason I started working on setting up Stygian to load the actual Lua code from files, as it allowed the base functionality to be shared between profiles, and you could simply update the code portions if there was a code only upgrade. Of course updated triggers would have required the other, more normal mudlet upgrade procedure, but at least to get bug squashes and code updates you wouldn't have to deal with all that in every profile.