View Single Post
  #64  
Old 06-01-2014, 10:45 AM
MattCaspermeyer MattCaspermeyer is offline
Approved Member
 
Join Date: Aug 2010
Posts: 553
Exclamation Critical Update Beta V2014-06-01 Available!

Please find attached a critical update for my HOMM3 Babies mod.

Note that I am no longer supporting Build 35,234 - I actually have provided the kb.exe for Build 35,396 here. I tried it out with my GOG version of the game and it seems to work okay - I hope it works for you, too!

There was a bug in the WotN code for the implementation of the Black Dragon - Dragon Power talent that caused issues when the AI used that talent. I've fixed the problem by having it use the WotN code if a human is controlling it or the original TL code if the AI is controlling the unit.

I've also added some more NPC trading options - Archmage Rezo can now convert mana potions to an increase in your mana and Shaman Karrakh (if you don't kill him) can do the same with rage potions. Also Chief Engineer Debat in Mehgard has a machine that can exchange runes - the rates are very favorable: 2 for 1, 3 for 2, and 4 for 3. Now you can exchange runes if you end up with excess with only a 50 to 25% penalty in the exchange (Debat is very happy about his machine as a Dwarven inventor).

Note that the mana / rage increase can be more than advertised if you have items that add %mana / %rage equipped on your hero. This was driving me crazy for a while as I didn't understand why I would sometimes get +2 rage instead of +1 for just one potion, but it was because the %rage increase item happened to be rounding up with just a +1 increase that would make it look like +2.

I've also gone through the spell powers and readjusted values based on the bonuses that are possible in the game. Now it should take a very high-level mage with very good spell bonuses to maximize the power of most spells.

You should now find that your spell power has decreased when applying this update.

I've also added the capability for Life Light to resurrect troops. I've been wanting to do this for a long time and finally added the capability. It works on all units except summons (Phoenix and Evil Book) and Demons and still damages the Undead. Spell mana cost has gone up 50% or higher to account for the fact that it is very similar to the Paladin Prayer ability in AP / CW. This spell makes it possible to resurrect a group of units in a 7-hex radius, but the resurrection power is low for the mana involved so it should not be overpowered.

As an example in my game, my Paladin has the best spell bonuses I've ever had @738% and with a base heal of 50 @level 1 the resurrection power @level 3 is 1485 per hex. So you'll be able to only res at most a few level 5 units per hex (still pretty awesome, though) and that is with a cost of 52 mana. You can combine it with Heal to make it more effective at lower levels if you have the turns and mana to do that.

It also does an incredible amount of damage now to the Undead due to the increase cost, although the damage / mana is only slightly better than it was before.

Mana / Crystals / Costs of a lot of spells have been updated to make them current with changes that I've made to the game since I initially devised these values. For example, Phoenix is now 20, 40, and 80 mana for Levels 1 through 3 since they have the ability to Sacrifice themselves to resurrect allies.

The difficultly level now also amplifies enemy hero spell power and spell duration and so you'll find enemy heroes even tougher now on Hard and Impossible difficulty levels.

I've also expanded the capability of the target's resistance to effect the duration of unit talents and Spirit abilities. For example, if a unit can cause stunning, the duration of the spell is lessened / amplified depending on the target's physical resistance.

I've also added some more resistances to certain mage ATOM's (see the detailed change list) as well as the Undead now have a magic damage vulnerability based on their level due to them being magical constructs and magic damage's ability to disrupt this energy and cause more damage.

There are also some other minor bug fixes - here is the detailed list:

Version Beta 2014-06-01
  • *.ATOM
    • BEHOLDER.ATOM - +15% Magic Resistance (since classed as a mage)
    • BEHOLDER2.ATOM - +20% Magic Resistance (since classed as a mage)
    • BLACKKNIGHT.ATOM - +25% Fire Resistance (similar to horseman and knight)
    • DRUID.ATOM - +25% Poison Resistance (familiar with poisons common in nature)
    • PRIEST.ATOM
      • Poison Resistance: +15 was 0 (being holy, they have personal fortitude to resist damage common with the Undead)
      • Magic Resistance: +20 was 10
    • PRIEST2.ATOM
      • Poison Resistance: +20 was 0 (similar to Priest)
      • Magic Resistance: +25 was 10
    • SHAMAN.ATOM
      • Poison Resistance: +25 was 10 (similar to Druid poison knowledge)
      • Magic Resistance: +20 was 0
    • Undead ATOM's - receive -50% magic resistance for level 1, half that for level 2, and so on (rounding to the nearest 5% where applicable) (except ghosts, which are -100% and Necromancers who are not affected):
      • -50%
        • ARCHER.ATOM
        • SKELETON.ATOM
        • SPIDER_UNDEAD.ATOM
      • -25%
        • ZOMBIE.ATOM
        • ZOMBIE2.ATOM
      • -10%
        • BAT.ATOM
        • VAMPIRE.ATOM
      • -5%
        • BAT2.ATOM
        • BLACKKNIGHT.ATOM
        • VAMPIRE2.ATOM
  • *.CHAT
    • 1183480135.CHAT (Archmage Rezo)
      • Now increases your mana limit based on the number of potions you give him (note that if you have an item that increases your mana limit it may appear that you get a larger increase, but this is actually due to the bonus):
        • +1 for 1 mana potion
        • +2 for 2 mana potions
        • +7 for 5 mana potions
        • +15 for 10 mana potions
    • 1195220771.CHAT (Chief Engineer Debat)
      • Added capability to exchange runes of different types for the other
      • Exhanges rates are very favorable:
        • 2 for 1
        • 3 for 2
        • 4 for 3
    • 1594798170.CHAT (Maria) - updated snaps to add more trading options if you want to exchange 1, 2, 5, or 10 Dragonfly Wings for Magic Crystals
    • 1986778263.CHAT (Shaman Karrakh) (if you don't kill him)
      • Now increases your rage limit based on the number of potions you give him (note that if you have an item that increases your rage limit it may appear that you get a larger increase, but this is actually due to the bonus):
        • +1 for 1 rage potion
        • +2 for 2 rage potions
        • +7 for 5 rage potions
        • +15 for 10 rage potions
  • *.LNG
    • CHAT's - added additional dialog for changes to *.CHAT indicated above
      • EN(G)_CHAT_0013319904_1594798170.LNG (Maria)
      • EN(G)_CHAT_1067500631_1183480135.LNG (Archmage Rezo)
      • EN(G)_CHAT_1957388512_1195220771.LNG (Chief Engineer Debat)
      • EN(G)_CHAT_2079420493_1986778263.LNG (Shaman Karrakh)
    • EN(G)_SPELLS.LNG - updated Life Light description to match changes in SPELLS.LUA & SPELLS.TXT
    • EN(G)_UNITS.LNG
      • Updated race Undead description to include changes to Undead ATOM's
      • Updated race Orc to add a description about additional resistances (which they've had for a long time)
      • Updated race Dwarf to add a description about additional resistances (which they've had for a long time)
    • EN(G)_UNITS_FEATURES.LNG - updated to include ATOM changes above
  • *.LUA
    • ARENA.LUA
      • Added changes to int_dur function calls to include new enemy hero bonus
      • Added damage time shift parameter (technically nil) due to res_dur function input list changes (see SPELLS_POWER.LUA)
      • ***BUG FIX*** Due to issues with how I had implemented the Critical Hit / Res All bonuses from your (enemy) Hero's Attack / Defense, I've now implemented these bonuses by modificators so that the standard LUA library functions will have the correct values (before these functions would return the unmodified parameter (like res_dur, for example), which was incorrect):
        • Critical Hit from your (enemy) Hero's Attack is applied as a modificator in the arena
        • Resistance from your (enemy) Hero's Defense is applied as a modificator in the arena
      • Commented out Attack.log messages for arena location type, time of day, and spell cast AI
    • COMBAT_LOG.LUA
      • Holy Rain hint updated to include changes in SPELLS.LUA and hint fixed to be formatted properly
    • LOGIC.LUA - total hints is now 167
    • SPECIAL_ATTACKS.LUA
      • ***BUG FIX*** the Black Dragon AI did not work with the WotN Dragon Power ability so now if it it controlled by a human I use the WotN code, otherwise I use the original code for the AI
      • The way I was doing the Shaman totem initiative resulted in too high of initiative bonuses for their totems, now it is the 1/5 power of their health (before the health was divided by 2000 specified in their ATOM)
      • Updated summoning functions to apply Hero Attack / Defense bonuses changed in ARENA.LUA & TEXT_GEN.LUA
      • ***BUG FIX*** When the Griffin uses its split ability, the split troop now receives the difficulty level bonus if the parent troop had this bonus applied previously
      • New function, tal_dur, that is the talent resistance duration check function similar to res_dur. The target's resistance can now affect the talent or effect duration
      • Added tal_dur check to many unit talents (usually self cast talents are not affected by target's own resistance) to increase / decrease talent duration based on target's resistance
    • SPECIAL_HINT.LUA
      • Updated Shaman totem hint per changes above in SPECIAL_ATTACKS.LUA
    • SPELLS.LUA
      • Added changes to int_dur function calls to include new enemy hero bonus
      • Updated all res_dur function calls to include damage time shift parameter
      • Holy Rain
        • Now resurrects targets
        • Targets include golems (Cyclops) and magic immune creatures (Black / Blue Dragons) (per the description)
        • Targets exclude special_summon_bonus (i.e. Phoenix and Evil Book) (and Demons still)
        • Heal and Undead Damage changed (see SPELLS.TXT changes)
      • Updated summoning spell functions to apply (enemy) Hero Attack / Defense bonuses changed in ARENA.LUA & TEXT_GEN.LUA
    • SPELL_EFFECTS.LUA
      • Updated all res_dur function calls to include damage time shift parameter
    • SPELLS_POWER.LUA
      • Enemy hero spell power is now increased by the difficulty level and map location bonus
      • Enemy hero infliction chance is now increased by the difficulty level and map location bonus
      • Enemy hero spell duration is now increased by the difficulty level and map location bonus
      • Function res_dur now accepts a damage time shift input to display the log text in the right sequence
    • SPIRIT_SLIME.LUA - added tal_dur to abilities whose duration is affected by the target's resistance
    • SPIRIT_THEROCK.LUA - added tal_dur to abilities whose duration is affected by the target's resistance
    • TEXT_GEN.LUA - with the changes to the (enemy) Hero Attack / Defense bonuses, these changes deal with display of the unit card
      • Function gen_unit_krit now only manually applies this bonus outside of combat
      • Function gen_unit_res now only manually applies this bonus outside of combat
    • UNIT_FEATURES.LUA
      • Added tal_dur check to many unit features, where applicable
      • Bowman cold arrow now uses common_freeze_attack for duration and common_freeze_im_vul for damage / rage gain
  • *.TXT
    • LOGIC.TXT - new "espell" parameter that SPELLS_POWER.LUA uses to scale enemy hero spell parameters based on difficulty level (set to same as eunit, but parameter is independent)
    • SPELLS.TXT
      • Spell power / mana / crystals rebalancing (due to the number of changes that have occured since these changes were originally made) - note that cost and level increases are changed per formula
      • Mana for level 1 has been determined by sorting the spells versus their mana cost and seeing if I'd be willing to spend more / less mana for spells higher / lower on the list
      • Dispel (spell_dispell) - mana for all levels is essentially the average of the spells it can dispell at the level
      • Helplessness (spell_defenseless) - power is now 5,10,10 (was 10,20,20) (this is to prevent maxing out power, except for only the highlest level spell casters with awesome power bonuses)
      • Stone Skin (spell_stone_skin)
        • Power is now 5,10,10 (was 10,20,20) (this is to prevent maxing out power, except for only the highlest level spell casters with awesome power bonuses)
        • Mana is now 5,8,40 was 4,7,35 (levels 2 and 3 via formula)
      • Enchanted Hero (spell_last_hero) - mana costs updated since it is the average of all the spells it can cast
      • Dragon Arrows (spell_dragon_arrow) - mana reduced from 10 to 7 for level 1 (other levels via formula)
      • Bless (spell_bless) - mana for level 1 reduced from 3 to 2 (other levels via formula)
      • Phoenix (spell_phoenix) - mana is now 20,40,80 was 15,30,60 (Phoenix has dramatically improved so these values are more representative of its power now)
      • Gift (spell_gift) - mana for level 1 is now 11 was 14 (other levels via formula)
      • Divine Armor (spell_divine_armor)
        • Power is now 3,6,9 was 5,10,15 (this is to prevent maxing out resist all, except for only the highlest level spell casters with awesome power bonuses)
        • Mana for level 1 is now 12 was 15 (other levels via formula)
      • Life Light (spell_holy_rain) - I've been wanting to add a resurrection ability to Life Light for a long time. It is, in essence, very similar to the Paladin Prayer ability in the newer KB games.
        • rephits is now 50 was 75
        • prc_damage is now 750 was 300 (matched with rephits decrease and mana increase so damage per mana is slightly higher than before)
        • Now that spell resurrects, mana for level 1 is now 15 was 10 (other levels via formula)
      • Precision (spell_accuracy) - mana for mass is now 2.5 times level 2 instead of 5 (so it assumes that only half of your troops out of 5 (the normal mass multiplier) are eligible)
      • Battle Cry (spell_reaction) - mana for level 1 reduced from 4 to 3 (other levels via formula)
      • Mana Spring (spell_mana_source) - mana for level 1 increased from 5 to 6 (other levels via formula)
      • Phantom (spell_phantom) - mana for level 1 changed from 15 to 14 (other levels via formula)
      • Pygmy (spell_pygmy)
        • Power is now 5,10,15 was 5,10,20 (this is to prevent maxing out power, except for only the highlest level spell casters with awesome power bonuses)
        • Mana for level 1 is now 15 was 10 (other levels via formula)
      • Blind (spell_blind) - mana for level 1 is now 13 was 15 (other levels via formula)
      • Hypnosis (spell_blind) - mana for level 2 and 3 has been updated to their proper values
      • Fear (spell_scare) - mana for level 1 is now 11 was 9 (other levels via formula)
      • Plague (spell_plague)
        • Power is now 5,10,15 was 5,10,20 (this is to prevent maxing out power, except for only the highlest level spell casters with awesome power bonuses)
        • Mana for level 1 is now 17 was 11 (other levels via formula)
      • Hell Breath (spell_fire_breath) - mana for level 1 is now 5 was 4 (other levels via formula)
      • Magic Shackles (spell_magic_bondage) - mana for level 1 is now 7 was 6 (other levels via formula)
      • Weakness (spell_weakness) - mana for level 1 reduced from 3 to 2 (other levels via formula)
      • Doom (spell_crue_fate) - mana for level 1 is now 9 was 8 (other levels via formula)
      • Sheep (spell_ram) - mana for level 1 reduced from 22 to 19 (other levels via formula)
      • Demon Portal (spell_demonologist) - mana for level 1 changed from 15 to 13 (other levels via formula)
      • Armageddon (spell_armageddon)
        • prc_damage is now 5,10,15 was 5,10,20 (this is to prevent maxing out damage reduction, except for only the highlest level spell casters with awesome power bonuses)
        • Mana for level 1 is now 25 was 20 (other levels via formula)
Okay, that's it!

I really feel like I've implemented everything that I want to implement here. The mod is really starting to feel complete to me.

So this may be my last update for a while unless there are some crashing bugs that I have not found or if other bugs are found or reported.

Don't forget if you don't have Build 35,396 of the game, you can download it here.

Thanks again for trying out my mod and providing comments!

Matt Caspermeyer

/C\/C\

Download here and don't forget to get Build 35,396 if you don't have it above:
Attached Files
File Type: zip mod_h3b_VBeta2014-06-01.zip (3.37 MB, 268 views)
Reply With Quote