Priority Curing

by Unknown

Back to Mechanic's Corner.

Unknown2007-07-18 02:10:15
I finally started working on my own curing system today, and I've been at it for several hours already. I have a variable for all the afflictions, and I'm currently working on an herbqueue.

I'm just wondering, what should be priority? I know things like aeon and anorexia get cured first, but out of all afflictions cured by eating an herb, what would you rank as the most important ones? Right now I have things like sensitivity and slickness near the top, but I'd like some other opinions.

I'm not much of a fighter, yet, which is the main reason I am making a system: I'm tired of watching other people have all the fun. But I'll need a little help with the strategic side of curing.

Also, how do you decide whether to cure something using an herb, or with an elixer? I can see how Aeon would make more since to be cured via elixer (prevents having to outrift something), but there are several other afflictions that have multiple cures.
Theomar2007-07-18 04:00:29
I do my priority like this:

Top priority goes to cure-hindering. Anorexia, aeon, slickness, etc.
Middle is combat hindering. Paralysis (this is on focus balance, but I put it here to help cement the concept), blindness (again, just to cement the concept).
Low is for things that don't affect me. Sun allergy, ablaze (which is a non-factor), hypochondria.

I change it up for different classes/archetypes, because weakness is rather important to cure as a warrior, but as, say a guardian, weakness doesn't really matter. Likewise, manabarbs may be one I would cure fast if I was a geomancer, but not if I was a warrior.

Edit: I forgot to mention, about double cures. I use herb balance over elixir, to keep it there for aeon. I also employ an intuitive function (well, I will be in my system) that, if I enable it, will use both.

Unknown2007-07-18 09:47:32
Thanks for the advice, but I'm wondering...

How do systems produced for the masses work? Like Ethelon's, Palisade, Acropolis on achaea, Whyte's on Imperian...If certain things are more important to cure for others, based on class/guild?

I think I see how to set up the double curing, though.
Unknown2007-07-18 10:49:58
Palisade uses a string list of afflictions per balance type. The order of the afflictions in the string list is the priority in which they're cured. In theory, this means that one could change priorities with simple aliases that replaced these string lists. In practice, I stick with the same list of priorities no matter whom I fight. The method in which the string lists are actually used is classified. (Okay, not really, since I used the same basic method in Acropolis. Heh heh.)
Unknown2007-07-19 01:08:38
Could you give me a brief explanation of how a string list would work? I've been looking around the zmud site, and through the help files, and this is all I found:

string

Syntax: %string(value)

converts value to a string. Quotes are added around the value.


And I'm not really sure how that is useful. Right now my queues are just a bunch of nested If-then statements. Maybe not the most elegant, or easy to change, but It was something I understood. I have an understanding of strings and such from the C++ class I just took (I'm a freshman CS major, still not too savvy), but I'm not sure how using strings would help with curing triggers.
Unknown2007-07-19 02:26:29
A string list is a list of strings (obviously) and the %string function has nothing to do with that. Look at the #ADDITEM and #DELITEM commands for how to manipulate a string list. Items in the string list are separated with a | by default, so you can create a variable with an entire list of strings easily.

CODE
#VAR herb_affs {sensitivity|shyness|stupidity}


In this case, sensitivity would be considered priority 1, shyness is priority 2, and stupidity is priority 3. My aliases check the afflictions that are in my afflictions data record variable (only the affs I actually have, as opposed to some which check for all possible afflictions no matter what) and use %ismember to locate each affliction's position in the priority list. The %ismember function returns the numbered position of the item in the string list, so %ismember("sensitivity", @herb_affs) would return 1 and %ismember("stupidity", @herb_affs) would return 3.
Talnar2007-07-19 12:41:10
Would it be possible to script a Priority curing thing for Nexus? I've been thinking of how to do it for some time, but the only idea that comes to mind may not work...

What I was thinking is setting the priority thing in variables, like having such-and-such affliction be one, then when I DIAG, it'll cure whichever's got the default 1 first, then go to 2, then 3, and so on.
Sylphas2007-07-19 13:11:26
The least complicated way is a huge nested if that checks each affliction in order, and either cures or moves on. I'm not sure that Nexus wouldn't just choke and die on something like that being called a lot, though, and I'm not fluent enough in Nexus programming to see what else you could do.

So I'd go with possible, yes, but perhaps not playable.
Talnar2007-07-19 13:36:44
Well, might as well find out. Thanks!