Wizardry 8 - Mod to Remove Enemy Scaling?
I've been playing Wizardry 8 on and off for years, and am prepping for another playthrough, but like many others, the enemy scaling (including the "scaling" both of enemy types and numbers of mobs at higher levels... I'm looking at you, Arnika road) is my only major complaint with the game. A quick internet search found where Dodd the Slayer initially seemed to disagree with this being an issue back in 2007 on the Codex (http://www.rpgcodex.net/forums/index...s.21517/page-2), but later came to his senses and noted in 2013 on the GOG forums (http://www.gog.com/forum/wizardry_se..._ruin_the_game) - posting as "Lexigon5" - that he was planning a mod that "removes" level scaling, "the most complained about aspect of Wizardry 8."
So long story short, I've started to dig through descriptions of Dodd's mod here, but would appreciate it if someone could point me to a mod (if any exists - and of course if Dodd himself is still around, his input would be great) that removes enemy scaling, while making essentially no other changes to the game. If Dodd or others are no longer working on such a mod, any tips on how I could do something similar myself by using the Cosmic Forge editor would still be helpful, though I doubt I have the skills and patience to do the job properly myself.
I'm looking forward to any tips/suggestions - cheers!
Welcome to the board Mikus!
I dont know a Wiz8 mod which removes enemy scaling, probably there is no one.
Level scaling, local and global, is the way to balance things in many if not most open world games.
You can remove it with with the cosmic forge editor by adjusting all encounter tables,
e.g. replace all higher lvl encounters with the lowest lvl ones from the top of the chart, but keep the entries in the "lvl" column.
However such a primitive "mod" would have massive impact on gameplay,
since Wiz8 favours learning by doing instead of getting all advancement from points at lvl ups,
and lvls will also suffer as you get less XP from the low lvl entries.
Compared with a "scaled" party, the loss of skill and exp increases over time,
making the late "unscaled" game quite difficult unless you trick out a big part of random & fixed encounters, leading to even less skill/xp.
As a sidenote, a "balanced" Wiz8 mod which removes scaling would probably take more time than playing the game at least 10 times, with scaling.
townlu - thanks for the welcome and quick reply! I appreciate your thoughts. I probably should've mentioned in my initial post that I was looking for a mod created by someone more expert at both the game and the CF than I precisely because I knew if I were to attempt something similar on my own, the balancing would likely suffer. Over the years, I've become pretty intolerant of RPGs that use any form of enemy scaling as a balancing tool, as a carefully crafted game doesn't need to rely on the "crutch" of scaling to produce a balanced game, and doesn't suffer from the resulting reduced sense of party development and environmental immersion (IMO). Wizardry 8 is one of those few older gems that relied on scaling that I still return to occasionally for its otherwise solid gameplay.
Anyway (since I'm not interested in starting yet another internet forum discussion about scaling in RPGs!), as apparently Dodd or others haven't actually released a mod of the kind I'm looking for, I might try to mess around with the encounter tables and monster generators a bit. I'd seen an idea on another forum about a mod that would keep the vanilla game's scaling and spawn frequency mostly intact in the more "out-of-the-way" maps in order to allow for the XP gathering you mention by visiting those areas in a way that's more at the player's discretion, while toning down the insane hordes of leveled plants and monsters a mid-/higher-level player has to slog through in the more infamous "central" maps (like the Arnika-Trynton road areas). Again, it's been years since I last played or looked at the editor, but your tips have at least given me something to start with. Thanks again for the reply!
I've started looking through the CF a bit more. Apparently (from reading Dodd's old posts linked above) there is a way in the CF to remove scaling from monster encounter tables, but when looking at an actual table in the editor, I don't see the trigger(s) that result in the level scaling in the first place. For example, MonGen007 in the Lower Monastery location pulls from the "Slimes (id6)" encounter table, which includes a Level 1 Green Slime as the weakest monster and a Level 14 Flesheater Slime as the strongest. I assume one way to "de-level" a location (which would of course require a lot of time and greatly affect the existing overall XP balance, as noted above) would be to edit this table to include only the Level 1 (or the Level 3, or the Level 7, etc.) slimes at 100% "chance"; then, the generators connected to this table would only ever spawn monsters of that specific type and level, regardless of your party's level.
However, what I don't understand is how the game somehow knows from this table alone to only generate the weaker slimes from the table when your party's level is lower, and the stronger slimes from the table when you're stronger - i.e. what and where exactly are the parameters in the CF that tell the game to scale the enemies within each encounter list to the range of your level? Thanks again for any help!
Although I cannot give you a solution, here are few thoughts:
Keep in mind that this might actually require changing the game code rather than data (and I would bet on it if forced to bet on something).
1. MonGens have some unknown values.
2. MonGen tab in the location editor has some unknown values apparently applied to all mongens somehow.
3. Every encounter table has an unknown value called 'nParam'.
4. Every entry of encounter table has an unknown value in the 'Unknown' column.
Now, if one has some time to make tests and knows what he is doing can try figuring out what is going on.
Since complaints have mostly been on the Monastery-Arnika road and nowhere else (correct me if I'm wrong), then maybe worth looking at it.
Level up in the monastery to level 5/6 and save BEFORE going to the road. That would be a starting save.
More some mongens in the Road closer to the monsatery entrance so to check what has been generated quickly.
Do some tests by loading the save game and exiting the monastery, writing the results - collect some statistics in other words.
Now, change Unknown values in the encounter tables from 2 to 1 and then to zero, making tests after each change.
Note that it might worth exiting the game after each change in case it caches something.
Next, change the values on the MonGen tab in the location editor to be the same as at some other location (which is never heard of producing tough monsters). Do testing again.
Next, change the values on the MonGens themselves in the location editor to be the same as at some other location (which is never heard of producing tough monsters). Do testing again.
Now, some more notes:
It might be beneficial to leave only two mongens on the level to simplify tests (preferably the ones that use different encounter tables).
The chance column in encounter tables is dodgy - only values 3/7/20/70 are present, why? Actually I'm not sure this is chance column at all - it is just a guess, since 3+7+20+70 is 100. But how they are connected and calculated? Maybe the same way as the loot drop - every item has a weight X and the chance of it to drop is basically X out of the sum of weights of all items. But it also should be affected by the party level here somehow and maybe the 'level' column.
Anyway, if you can shed some light on this problem, that would be really good.
mad god - thanks for taking the time to post your suggestions; it's great to have the man behind the CF here for guidance! I'm very new to both this playthrough and the editor (it's been probably 5 years since my last Wiz 8 run), so it will take me some time to do the testing you've suggested, but I plan to post back here with my results and any further questions. Later!
mad god - I just spent 4 hours testing many location, encounter table, and monster generator variables by following your basic plan: for convenience, I first moved two monster generators in the Arnika Road location - MonGen001 ("Starter Arnika General") and MonGen005 ("Crabs") - to positions next to the entrance teleport from the Upper Monastery. Then, for each test, I changed one and only one target variable in the CF for each of the two generators or encounter tables (or for the location itself, in some cases), and loading from a clean save in the Upper Monastery near the exit to the Arnika Road, entered Arnika Road dozens of times to collect data. I did about 100 such tests, so I'm not going to provide all the statistics for every instance (thousands altogether). Still, I'm confident in the below conclusions based on this testing. If you choose to do similar testing, I'm sure you'll come to the same conclusions.
Although I'm glad to contribute to the CF (on which you've done an amazing job already), I'm frankly looking to spend more time having fun than testing and modding, so this will probably be the last time I do any such extensive testing. Still, I'd really like to hear what you make of my below conclusions. If your feedback doesn't indicate you're any closer to solving the level-scaling mystery yourself, I'll probably do some crude editing of the more annoying monster generators in and around Arnika, but would still be interested in your thoughts. Thanks again.
1) Within the Encounter Tables, an "Unknown" variable of either "0" or "2" has the effect of "activating" the listed monster as a possible spawn, while a variable of "1" completely "deactivates" the listed monster - i.e. it will never spawn, no matter what. I tested this extensively with different combinations of monsters at the same/varying levels and with the same/varying "Unknown" variables. "0" and "2" seem to be functionally identical in this regard.
2) Within the Encounter Tables, the "Chance" variable is about as you'd already expect - although I can't be sure "70%" equates exactly to a 70% relative spawn chance, a value of "70%" will make the monster much more likely to appear than a value of "20%," with "7%" and especially "3%" resulting in fairly rare spawns. However, different "Chance" values don't quite appear additive (and/or some other factor is preventing a 100% total spawn chance), as a single monster with four instances in one Table, with the four assigned Chance values of 70%, 20%, 7%, and 3%, still won't spawn 100% of the time. (This is true even with both the "Own Respawn Chance" and "Default Location Respawn Chance" set to "100%" in the Monster Generator window.) Also, a monster with many instances in one Table, each of which is assigned a particular Chance value, will not spawn more or less frequently than a monster with only one instance in one Table assigned that same Chance value.
3) Within the Monster Generator window, the "Unknown parameters" "Flag0" and "Flag5" each appear to deactivate the generator completely. The effects of "Flag1," "Flag2," and "Flag4" are unclear.
4) Within the Location Editor window, the effects of the "Min/Max Unknown" general parameters are unclear (even with tested values ranging from 0 to 100 in each of the Min and Max fields).
5) No matter which of the above four sets of variables were changed during testing, the generators consistently spawned those monsters in the Encounter Tables which were closest in level to the average level of my party. E.g. with my party of four level 7 and two level 6 characters, if an Encounter Table contained only one level 1 monster, that monster would always spawn (when a spawn was generated at all). However, if the Table contained the level 1 monster (no matter how many instances of the monster were listed) and at least one level 5, 6, 7, or 8 monster, a group of one of the higher level monsters would always spawn (when a spawn was generated at all). So, the level-scaling mystery (i.e. which parameter(s) force the game to scale spawned monsters to the range of the player's party) remains unsolved. I'm beginning to suspect this scaling parameter is somehow hard-coded in the game, and thus can't be influenced by the CF, but I'd like to hear your thoughts.
While i dont question your results, some conclusions appear to be incorrect
1) e.g. the Swamp has no horses (night/fright/etc-mare) as placed monsters,
encounter tables Rynjin(id29) crocs(id15) and harrass* (id 62,63) do not contain any horses,
and the horses in Swamp general(id10) have unknown value 1.
Since i remember exactly to have met a lot of *mares in the swamp during uncountable playthroughs,
also confirmed by watching other Players fighting them in lets plays etc,
there must be a condition which allows enc table entries with unknown = 1 to be activated.
3)Similar here, the (in)famous Harrass* mongens, which btw are partially invisible in the entity viewer,
they have Flag5 set but you can meet the monsters although they are no placed
or appear in another mongen/encounter table combination at the specific location.
So the question is what triggers those inactivated monsters to appear in the game?
The harrass* mongens probably rely on game progression, and i would not be surprised if it is similar for unknown = 1.
As a sidenote, runnung the game with cmwz8tr will give some instant feedback on mongens
without the need to check them out manually. some screenshots
townltu - thanks for the info; I guess my conclusion "1)" was off somewhat, but the others should be accurate (as far as my testing went, at least). And this is the first I've heard about cmwz8tr; good to know! But I'd still be interested in mad god's or others' thoughts on this, since it seems we're no closer to figuring this out.
That is understandable that you don't want to spend time on testing, so it is fine.
Originally Posted by Mikus MacFrenchy
Thank you for running this trial - I never thought you would do it so quickly.
I believe that the algorithm is better to be amended in the code, rather than in the data. But this requires locating the code, understanding it and patching it if possible. Which requires a considerable time investment and the result is not guaranteed of course, though usually it is possible to do something.
On the other hand the parameters might give us just enough flexibility as well if we understood them.
1. I suspect this parameter is a bitmask with two bits possibly being set: bit 0 (resulting in 1) and bit 1 (resulting in 2). 0 means no bits were set. What puzzles me is that there is no 3 (means bit 0 and bit 1 are both set). So your conclusion might be correct that bit 1 deactivates the entry. However, townltu noted about the nightmares in the Swamp. Not sure about it. There are two nightmare kinds that have value 2, not 1. Maybe this parameter can be something like "have no monster with suitable level, the use me!", unlikely though since you've reported it looks like disabled entry. Maybe this parameter is "use me only when you have no other choice!"?
2. As I said, I don't expect the chance to be the Chance in pure sense. For instance, having 4 entries with 70, 70, 20 and 7, you've got 167 in total. That might mean that the 1st one has 70 out of 167 to be spawned, the second is the same, the 3rd is 20 out of 167 and the last one is 7 out of 167 (kind of unlikely). But this is not considering the level parameter. When is it considered, after or before? Not sure. Now the question is the following: suppose we have 4 entries of monster A with 70% and one entry of monster B with 70%, both monsters are of the same level and have parameter 2. Will monster A be spawned 4 times more often than monster B?
3. MonGen flags (Flag0 and Flag5 and others). CF has "Miscellaneous->Entity Viewer" menu command, where you can check the list of different entities in the game, including the MonGens. Apparently all Mongens using harrassment tables have their flag 5 set. It might be that it is a hardcoded flag indicating that the mongen should only be activated when you have the orb or something. Only three mongens have Flag 2 set and all of them in the upper monastery. I wonder if this is the "spawn ALWAYS if not spawned" flag which means that this mongen will always spawn a monster group no matter what... What makes me think so? Don't know, a guess? Not sure why I didn't exposed flag3, but there are plenty of mongens with flag3 set.
5. If mongens spawn monsters according to the level, then I don't see any problem here. Maybe the problem is that some monsters' level is way too low? Also the question is this: which level is considered: monster's level or the Level in the corresponding Encounter Table's entry?
mad god - thanks for the quick and detailed feedback! As for conclusion (1), I have no recent personal experience with the nightmare enemies townltu mentioned, but a value of "1" consistently disabled all generated encounters in the Arnika Road area per my testing. On conclusion (2), I believe I did several tests of the situation you describe (a generator table including several monster A entries with 70% chance, and only one monster B entry also with 70% chance), and monster A still didn't spawn noticeably more frequently than monster B - but don't quote me on that. And in my final conclusion (5), the "mystery"/problem I'm referring to is the question of what parameter(s) are forcing the level-scaling behavior of the encounter tables, as these parameters don't appear to be available to manipulate in the CF. From the perspective of the developers of course, there is no "problem," since level-scaling was their intention... but it's not mine. That said, even if there is some magic "trigger" to de-level-scale all encounter tables, since you might then randomly encounter any monsters from level 1 all the way up to level 40 even at party level 5 (for example), it might be more dangerous/annoying than the current system considering the way the tables were structured.
So, my personal "solution" was to simply disable certain monster generators and remove a few higher-leveled enemies from the remaining generators in the Monastery, Arnika Road, Arnika-Trynton Road, and Arnika areas, as I remember from my last playthrough how incredibly annoying I found it to slog through hordes of low/mid-leveled monsters every time I traveled through those connecting areas (and the problems I had when I accidentally leveled too much in the Monastery at the beginning of the game and then started exploring the roads with my crappy starting equipment). So I think I'm probably good to go for my playthrough, but again, if the above helps you answer any questions you've had in the CF, I'd be really interested to hear what you determine - it's an excellent and extremely useful tool, one I know I'll be returning to often. Cheers!
1) there are more encounter tables which contain monsters with unknown =1 that appear in game,
incl bandits(id9) which has all entries unknowns set to 1
"use only if no other choice" also appears unlikely even if the bandits table is messed up,
because some tables have other choices and their unknown = 1 entries also appear in game.
btw choice aka 5) i am rather sure the game considers the lvl entry from the encounter tables,
e.g. because in Dwarven Country of Reforged Mod the Insane dwarf(lvl18) and monodrone(lvl40)
have both lvl 18 in the encounter table(id76) and appear both for parties < lvl 20.
townltu - I did notice that the "level" variable in the encounter table didn't always match the monster's actual level, so you may be on to something there.
Also, random question for the experts that I didn't want to start a whole new thread for: does armor class help against ranged physical attacks (bows/spit etc.) as well as against melee physical attacks? I've seen conflicting info on the net.
And in addition to the AC vs. ranged question above (the game manual simply says AC protects against "physical attack"(s), so I'm hoping the answer is yes), one last random question: I've read that unlike the player's magic spells, enemies' spells aren't limited by range, and that enemies' ranged physical attacks ignore the player's party formation to easily hit members in the back row(s). Are either of these glitches fixed as of game version 1.2.4, or if not, is there some way to fix them using the CF? Thanks again.
AC is divided into 2 components, evasion and penetration, the latter relies on protection from armour,
Originally Posted by Mikus MacFrenchy
i think incl AC bonus from magical items, armorplate spell and also stealth & race modifiers,
while evasion is modified by related attributes and skills.
It could be that the evasion ac does not count against ranged attacks, they appear to hit more despite same attack values for close combat,
would be reasonable because its quite difficult to spot an incoming missile, calculate the precise target and move accordingly before it hits.
Dont believe anything somebody writes on the internet,
Originally Posted by Mikus MacFrenchy
they are either wrong, they lie, or they reply in the wrong thread.
most likely a reply in wrong thread;)
Originally Posted by Mikus MacFrenchy
there is no difference between enemy and player spells, although monsters appear to have quite a number of spp.
Enemies ranged attacks indeed dont care about formation, its a feature, not a glitch, unfixable,
everybody deserves the right to get hurt.
I had been working on something, but have not had time to continue it. A massive project that involves not only removing level scaling but removing just about all spawning, other than those that are event driven at various stages of the game.
This would mean removing nearly all mongens from the game and having lots of caves and lairs that contain monsters that are high level form the start of the game so that you can have your butt handed to you, or have to run your ass off at any level if you don't know the area you are wondering into.
there would have to be placed monsters at varying levels from one location to the next to allow for smooth level progression.
Obviously you don't want players running out of winnable battles during character building from levels 1 to about level 30.
Now the problems here are obvious.
Without spawns there is the problem of enough available XP for leveling.
There are a few ways around this.
As I already mentioned you can have some event driven spawns which creates a logical reason to suddenly have higher level enemies running around in a certain location, but these would not be mongen released. so that once they ae dealt with they don't come back.
For this Lua scripting is needed and a monster spawn trigger that works just once.
Example A Pirate invasion that is triggered aftr a certain quest is completed......and so on. you have lots of triggered events that give one off spawns.
There are two more things that i did actually get around to finishing.
1. multiply the experience that you get from killing monsters by roughly a factor of 10 so that more XP is gained from all kills.
This compensates for the fact of having fewer battles due to there being no random spawns everytime the player enters a new location.
So early game is a little like the deathstalker mod early to mid game where everything is very intense from all the placed monsters in each area, except for the fact that very high level encounters will be available in places that you don't have to go, in order to leave lots of battles to come back to later in the game.
You would level very quickly to begin with until you hit those higher levels where it takes many battles to go up one level.
I can offer you my XP chart for the amount of xp ranges for each monster level that i am using.
2. I have a training center where you can buy tickets to go into an arena and fight tough battles at 3 different levels of difficulty.
The harder the battles the more xp.
With this addition there is always something to fight, should there be a shortage of winnable location battles to climb levels for the next quest that you are not yet high enough level to conquer.
This is not true level scaling because you are choosing the event and the levels for a specific purpose as opposed to a world where everything levels just because you do, which is a major complaint from all those who would be wiz 8 fans based on the gameplay if it were not for level scaling and endless spawns.
This is certainly not a new idea for rpg's.
Might & magic 6 to 9 works this way and probably all that series though i have only played 7 & 8.
The only difference between my idea and the Might & Magic series is that in Might & Magic all the placed monsters can respawn after a set number of months or years in game time.
So there are some ideas to chew on, and ask for more detail if there is anything you don't understand.
Although you're writing on the internet, I'll make an exception and trust you (but nobody else!). Thanks for the feedback on my questions about those "glitches"/"game features" (ha). And re: ranged attack AC, I think you're saying:
--Penetration AC = Armour AC + Race Modifier + Stealth Skill Modifier + Shield/Magic Items Modifiers + Magic Spells Modifier
--Evasion AC = Armour AC (?) + Speed Modifier + Stealth Skill Modifier (?)
Also, it's not confirmed which of the two types of AC - if either - apply to ranged attacks. Right?
Glad to see you're still around; thanks for the detailed response! What you describe is definitely something I'd be interested in playing - although I'm sure it's a hell of a lot of work, hopefully you'll be able to finish it and let us all know about your second great mod.
More random questions:
Sorry to keep straying from the thread topic here, but I almost promise this is the last time (and thanks to all for their help and patience). I'm afraid the answers to both of the below is "no," but it's worth a shot:
1) Is there any reliable and safe (i.e. won't mess up a save file) way to edit/redistribute character attribute points (STR, INT, etc.) - including both increasing and decreasing attributes - on an existing game version 1.24 save? The readme included with "cm-wz8tr" indicates it requires the original version 1.0 game .exe, and version 1.24 saves aren't compatible, and it also only has an option to increase (not decrease attributes). I want to decrease a couple attributes by the same amount I increase others to simulate what I feel I "should" have done at prior level-ups, without just cheating and adding more points.
2) Is there any fix/workaround for the NPC merchant inventory overflow glitch (where you have to buy and combine the trader's smaller ammo stacks just to free up space in their trader inventory and allow new goods to appear in the shop list)? Pretty annoying little bug. Thanks!
I'd really like a copy of the old save game "Simple Editor" - it sounds like exactly what I'm looking for - but of course the links on Wolfie's restored page (http://www.zimlab.com/wizardry/recov...downloads.html) are broken for all the save editors, and I can't find it anywhere else. I can find a site with a link for the editor by Jonathan Flanigan (gameguru.box.sk/cheat.php3?cheat=4065), but it gives me virus messages up to wazoo, so I'm not going to touch it. So, anybody still have an install .exe for either of these editors they'd be willing to send me, or at least a working and virus-free link?
I have Wizardry 8 Editor Version 1.0 which is the editor I used back when I was playtesting. It is only one 76 kb file and it allows you to edit name, class, level, race, experience, gold, hit points, abilities, spell points, skills, magic realms, and spellbook. http://s000.tinyupload.com/index.php...33864593247394
I also have the Simple Editor for Wizardry 8 Version 1.0.8, which is more advanced(most notably allows you to edit inventory) than the other editor, but it is not as "smooth" of a program. I only used it when I needed to edit a characters inventory. http://s000.tinyupload.com/index.php...10827374972130
While I am at it, I might as well upload wizfast in case you don't have it. I don't know how much I would play Wizardry 8 without it, honestly. http://s000.tinyupload.com/index.php...38708509325238
They are all compatible with Wizardry version 1.2.4.
Last edited by Sirius; 10-03-2015 at 08:50 PM.
Sirius - awesome, thanks so much! I've been using wizfast already, as well as the faster combat animation mod (http://www.rpgcodex.net/forums/index...cements.79581/ - I'm only using the "faster combat" standalone component files); the vanilla animations feel even slower than the monster movement for me, but with both tweaks, battle speeds are a lot more tolerable.
But I really appreciate those editors; it'd be nice if the zimlab site could also be updated with the working downloads, but I'm not sure if the administrator's still working on those pages. Cheers!
Last edited by Mikus MacFrenchy; 10-04-2015 at 03:44 AM.
Sorry to keep double-posting like this, but if anyone also knows of a mod/other fix for the merchant inventory bug I mentioned above, I'd still appreciate it.
You can adjust the traders shop inventory incl resupply rate with CF -> NPC editor,
as far as i know there is no mod to "fix" this,
keep in mind that ranged combat focused parties rely on such a high number of projectiles,
e.g. sometimes i rest several days to get enough mystic arrows and death stars for the next battles.
Sorry for being unprecise regarding evasion/penetration AC,
also keep in mind its only a guess based on the fact that wiz8 monsters have both kinds of AC assigned,
and on my experiences when playing and playtesting.
Penetration AC should be armour, armourplate spell(the "Vs Penetration" entry)
dwarven and monk dmg resistance(if you count it as kind of AC),
probably stealth and magic items and "Defensive Action",
while AC from speed, fairie AC bonus and Reflexion skill are probably linked to evasion,
like also penalties for encumbrance, low stamina and conditions like blind, paralyzed etc.
town - thanks for the tip on using the CF to edit trader inventories; I might try that for a couple vendors. What I was hoping for was a fix to the underlying issue - the fact that traders' visible inventory lists/slots are limited, causing the lists to eventually be "filled" (usually with a lot of small ammo bundles) - but I guess there's no such fix out there.
As for AC, thanks again for the details and no problem; I'm just trying to figure this out in my crazy obsessive-compulsive way. So from your notes, the game manual, and some basic in-game testing, the below seems like a good guess (organized based on the player "Armor Class Modifiers" window):
Damage Absorption = up to 30% from Iron Skin, up to 10% from Dwarven race, flat 9% from Monk profession
(Damage Absorption is effective in consistently reducing damage received from successful melee and ranged attacks (?).)
Penetration AC = Equipped Armour AC + "Shield" AC + "Magic Items" AC* + "Vs Penetration" AC* + "Defensive Action" AC
(Penetration AC is effective in increasing the probability of completely eliminating damage received from successful melee and ranged attacks (?).)
(*NOTES: "Magic Items" = cloaks and accessories; "Vs Penetration" = Body of Stone/Armorplate/Armormelt (for melee)/Missile Shield (for ranged) spells; "Damage Absorption = up to 30% from Iron Skin, up to 10% from Dwarven race, flat 9% from Monk profession)
Evasion AC = "Race" AC* + "Speed" AC* + "Stealth Skill" AC* + "Magic Spells" AC* + "Encumbrance"/"Conditions"/"Fatigue" AC (penalties) + "Reflextion Skill" AC*
(Evasion AC is effective in increasing the probability of completely avoiding melee attacks. There is no way to increase evasion against ranged attacks (?).)
(*NOTES: "Race" = +2 AC from Faerie race; "Speed" = +4 AC at 100 stat; "Stealth Skill" appears to be evasion and not penetration component; "Magic Spells" = Superman/Bless/Hex; "Reflextion Skill" = +6 AC at 100 skill)
Last edited by Mikus MacFrenchy; 10-04-2015 at 10:49 AM.
As for NPC's inventory overfilling with some items:
There is a possibility of 'fixing' the problem using LUA
function DepopulateTraderItem(NPCID, itemID, number)
if cfa.w8.npcHasItemInTradeInventory(NPCID, itemID) then -- only manage the item if it is in the inventory in the first place
cfa.w8.npcRemoveItemFromTradeInventory(NPCID, itemID) -- remove all instance of the item first
cfa.w8.npcAddItemToTradeInventory(NPCID, itemID, number, 0) -- add the number of instances requested
Call this function in the "onLocationLoaded()" handler as many times as you need to cover all combinations of trader/item:
DepopulateTraderItem(80, 125, 4) -- make sure Burz (id 80) has no more than 4 of "bundle of arrows" items.
DepopulateTraderItem(80, 132, 4) -- make sure Burz (id 80) has no more than 4 of "Bullet Stones" items.
DepopulateTraderItem(57, 125, 4) -- make sure Ferro has no more than 4 of "bundle of arrows" items.
DepopulateTraderItem(57, 132, 4) -- make sure Ferro has no more than 4 of "Bullet Stones" items.
DepopulateTraderItem(57, 137, 4) -- make sure Ferro has no more than 4 of "Bundle of Quarrels" items.
While I haven't tried exactly this method myself, I would expect it to work.
mad god - thanks for the tip! I don't think I'm advanced enough at your editor and LUA scripting to correctly pull off what you're suggesting, and I've already instead done the crude "fix" of simply disabling all vendors' ammo supplies in the CF's NPC trader editor (it only affects 10 NPCs total, and my current party relies almost exclusively on melee and magic, so it hasn't been an issue). But I really appreciate the advice.
It's great to see such an active core player community here, considering the game's 15 years old. Like any RPG, it definitely has its flaws, but there's something about it that keeps me coming back over the years - looks like I'm not the only one. Too bad we may never see a Wizardry 9...
Thanks - I might take another look then. Your solution would definitely be better than mine, and you laid it out very clearly. It seems like it's pretty tough to permanently "break" a savegame using the editor, anyway, as most changes can simply be reversed with no harm done, so I'm probably just being too shy about it.