New Content - Implemented Zombie Skills, Horde as MP, Combat/Noncombat, etc.

Veracity

Developer
Staff member
charsheet says:

Zombie Horde: 1

(non-compact) charpane has a large image labeled Horde: 1

api.php says this:

"mp":"1"
"maxmp":1

... when I have a Horde of 1 zombie. Reasonable, I guess, since your Horde is your MP replacement for using various zombie skills.

I have all the skills in classskills.txt (although we obviously don't know some things yet; the +item, +combat, and -combat skills give you the effect "for a while" - presumably because they give you an effect of some sort, like a buff.)

We need to track horde count from charpane/charsheet/api.php, recognize when it increases, recognize when it decreases, and, presumably, not show MP: 0/0 in the green side pane. Horde: 5 will suffice in its place
 

lostcalpolydude

Developer
Staff member
Mafia expects to find MP in the charpane, so it fails to update anything when that loads. The best I can think of is separate regex patterns to go with CharPaneRequest.compactMiscPattern and CharPaneRequest.expandedMiscPattern, but maybe there's a better way to handle that. Maybe not using a single regex for everything there? I don't really know what makes most sense.
 

Veracity

Developer
Staff member
I changed the charsheet parser to not look for MP in Zombiecore. Presumably, the charpane needs something similar.
Presumably, both of them need to look for Horde, instead.
 

Veracity

Developer
Staff member
You can buy skills with "zombie points". I guess we should track those, much as we do Boris points. The borisPoints setting is the number of extra borisPoints you get upon ascension. We don't know yet how that works in zombieCore. 1/2 points for Normal/Hardcore, as in Boris? Something else? setting = zombiePoints

(Over on G-D, Socco (tcoop) has started some preemptive whining; apparently the 20-page whinefest that he started and kept going about skill accumulation in Boris was just a warmup. He has already stated "Oh, and this is where I hope/pray that either the increase in starting points is higher or nonexistent on this path." What a wanker.)

It might be additionally useful to track unspent zombie points in a setting, too: availableZombiePoints

- On ascension, you get 1 + accumulated zombie points
- When you buy a skill, you lose one
- When you eat a hunter brain, you gain one.

Visiting your grave:

campground.php?action=grave

[You have 1 zombie points.]

Buying a skill:

campground.php?pwd&whichtree=Hunger&preaction=zombieskill
campground.php?pwd&whichtree=Anger&preaction=zombieskill
campground.php?pwd&whichtree=Master&preaction=zombieskill
 

Veracity

Developer
Staff member
When we parse api.php, we read mp and maxmp and store those values.

Revision 11395 parses the charpane, compact or expanded, for Horde and stores that count in mp & maxmp. The Green sidepane in Zombiecore shows Horde: xxx rather than MP: xxx/yyy. And when we parse the charsheet, we no longer look for MP if we are in Zombiecore.

We do not (yet) track things which increase or decrease the size of your Horde. When you use a Zombie skill that consumes zombies, we use the skill cost from classskills, which is actually expressed in terms of zombies, not MP, and decrease MP - which has the effect of decreasing your Horde. Of course, when the charpane refreshes, we update then, too.

I am sure this is not sufficient. The Zombie Maestro skill decreases zombie cost by 1 - just like Mana Cost Reduction. But, Mana Cost Reduction items do NOT reduce zombie cost.

This will take a while to work out correctly, I expect.
 

Veracity

Developer
Staff member
It should. However, that depends on us tracking it correctly.

I just filed a bug report: api.php is reporting my mp & maxmp as 24 when my actual Horde is 6. Both the charpane and charsheet report 6.

Until/if they fix this, I might have to disable reading MP from api.php if you are in Zombiecore
 

Darzil

Developer
Not entirely sure which of the Zombie threads this fits in, but I think like Boris, Zombie Master starts with 20 fullness, can increase it 5 with Lasagne of Steel and 5 with Ravenous Pounce. Seems like Mafia currently thinks it's 15 base, but recognises the rest.

Was actually good for me, as it just meant I didn't accidentally eat to full !
 

lostcalpolydude

Developer
Staff member
Not entirely sure which of the Zombie threads this fits in, but I think like Boris, Zombie Master starts with 20 fullness, can increase it 5 with Lasagne of Steel and 5 with Ravenous Pounce. Seems like Mafia currently thinks it's 15 base, but recognises the rest.

Was actually good for me, as it just meant I didn't accidentally eat to full !

On turn 0 of your first run, you have 15 full. That was also true in Boris. You can't get Ravenous Pounce without getting Insatiable Hunger, which is +5 full that you didn't mention. 11394 through 11396 would recognize Ravenous Pounce but not Insatiable Hunger.
 

Veracity

Developer
Staff member
I noticed today that we weren't recognizing that Stomach of Steel works in Zombiecore. 11415 fixes that.
 

Lilac

Member
"Devour Minions" not working from CLI

When one attempts to "cast devour" or similar, Mafia can't find the skill. I suspect this has something to do with it being classified as type 7 in classskills.txt ("Combat/Noncombat"); I changed it to 2 ("Noncombat healing") and it worked in my build. Presumably that will mess with its use in CCS and stuff, but I only needed it outside of combat, so...

Anyway. There you go, my first formal Mafia bug report. :)
 

Veracity

Developer
Staff member
Yes. I invented type 7 for this case - combat/noncombat - but nobody has (yet) added the rest of the support for it. And, yes - Lasagna Bandages should become type 7, too.

This should probably get merged in with the "New Content - Zombiecore skills" thread, since that's really what this is about: we don't support combat/noncombat skills, yet, and Zombiecore has a number of those.
 

Veracity

Developer
Staff member
Merged. And I will rename the thread to make it clear(er) that this is the place to report any issues with Zombie skills.
 

lostcalpolydude

Developer
Staff member
Mafia knows that Scavengers Scavenging is obtained by casting Scavenge, and that it gives +20% item, but the maximizer doesn't suggest it until I check "effects with no direct source", where it is shown with "learn to cast 1 Scavenge". Mafia knows that I have the skill, and when I do "cast scavenge" it is cast with no problems. A quick look at MaximizerFrame doesn't show anything.
 

Veracity

Developer
Staff member
Revision 11421 fixes that. The issue was that the skill name and the resulting effect name were different and UneffectRequest needs to have the mapping added to its EFFECT_SKILL table.
 

heeheehee

Developer
Staff member
The interface for Lure Minions has changed slightly, i.e. there's now an additional field that can be specified, quantity. As such, it's no longer a constant +1/2/3/6 (quoth the wiki, makes sense regarding quality of boss brains) horde or a -1 brain count (but rather multiplied by "quantity").
 

ungawa

Member
Thanks again for all the hard work. When trying to chain runs, the fact that so much is already implemented is a life saver.

I've come across a strange issue that's reoccurred a few times. My mood contains Zombie chow and A-grave-ation, and it mostly works.

Then, when I use Meat Shields, I get the 1 turn buff that lets my horde absorb some attacks. At the end of combat, something gets messed up, and mafia thinks the 0 turns of Meat Shields is my Zomg WTF buff. It will then cast A-grave-ation before every turn, thinking there's 0 turns left. This continues until I remove A-grave-ation from my mood. At that point, the 0 turns of Meat Shields disappears from the relay browser, but I have to re-log to get mafia to recognize the ML from Zomg WTF. My skills were 5/0/9 when this happened. Lemme know if I can provide more info. No debug reports have been made yet.

edit: oh yea, running r11427

MoodBug.jpg
 
Last edited:

Lord_Kobel

Member
Just had mafia burn off all my horde casting Scavenge 77 times when I was trying to automate the war. Sure this didn't happen last ascension.
I would say that the burn %mana doesn't work for this path, as there is no max horde that we're aware of, so the buffing recasting should probably be disabled?
 
Top