√
Proposed Updates/Changes: [Experimenting/(Partially implemented)] Separate lists for single player and multiplayer dungeon artifact spoils.
[Experimenting] Implementing a spell safe-guard release, so that on Hard Mode spells will not cancel and fizzle upon incorrectly targeting a friendly unit with a spell that would otherwise reduce stats (i.e. casting Stone Skin on your Faerie Thief). Hard Mode will disable this preventative measure and will allow you to potentially weaken your own units in this manner. [ON HOLD] Modifications to 'gs/FORMPC5.gs': Adjusted some code, cleaning it up to my most recent "style" of coding. Also, added variables for simplicity, since some numbers are used in multiple placed.
Effective change in some numbers, which will have small increases in total effective barter values in regards to all unit, and furthermore those who have ranged attacks. The value '3.164' used in defensive values and values of offensive range has been increased to 'square root of 3 * 2', or simply '3.464'.
Additionally, wizard mana up to 150% maximum value (i.e. 15 out of 10 mana) will be recognized in calculating a Wizard class champion's effective barter value (over all worth and power). This is factored in conjunction with spells known, and having the mana to cast the spell. A wizard who has all spell knowledge and maximum mana will have an effective barter value that is better than a wizard who has all spell knowledge but only enough mana to cast spells which cost 2 mana or less.
Fix made in 'gs/dlg/ext_options.gs': Commented out old "Live Auto-calc" reference. This had been removed, since players can simply "Right-Click" the Auto-calc button for a Live Auto-Calc. Left-clicking the Auto-Calc icon gives the traditional return to world with results. This old way of setting the auto-calc behavior for Left-Clicking is no longer used.
Fix made to Shimmer Veil's spell conditions, so the spell will actually work.
* * *
GS5R3 Updates:Download Latest Update[Primary Download location (2022-12-18)] [Secondary Download location (2022-12-18)] - Unless other tertiary download location specified.
12/18/2022 - Build 3240 Cloak of Flames health issue fixed.
In 'gs/dungeons/wilderness_land.gs': Fixed a unit reference to Ogres (crcr2 to chcr2).
6/22/2022 - Build 3239 or [AWS] Adjustments made to artifacts identified as helmets/crowns, armors, cloaks, swords, axes, staves: their ability to be equipped together should function better than before: That being, Not being equipped together and not leaving or removing stats improperly.
3/25/2022 - Build 3238 [Alt] Modifications/Corrections made to Shields, Sword, Axes, Cloaks and certain headgear: Fixed the order of coding in artifacts that controls artifact removal for double equipping (i.e. wearing two cloaks, or wearing two helmets, etc.).
2/23/2022 - Build 3237 [Alt] Corrected a reference to the Electron Staff in the Cloud Staff artifact file.
Corrected a value reference in the Legendary Spirit Bow artifact.
12/31/2021 - Build 3236 (Compiled on 9/1/2021, made available this 12/31/2021)
Axe of Annihilation experience value reference fixed.
Helmet of Stone may now be placed in either hand of champion. Changed from left.
Warlord's Helmet, Helmet of Stone, Crown of Kings and Noble Crown cannot be equipped together. Two of a kind equipped also not possible.
Dragonscale Armor may now only be placed in the left hand of champion. Changed from either.
Ebony Plate, Coral Shield, Shield of Righteousness, and Shield of Quality may be equipped to either hand. If any other shield is worn at the time of equipping of any other (i.e. Ebony Plate followed by Ebony Plate, or Quality Shield followed by Coral Shield), one will be removed from the champion's hands. Two of a kind equipped also not possible.
Feather Chain Mail, Obsidian Armor, Dragonscale Armor, Elven Chain Mail, Armor of the Archons and Urakian Armor may not be equipped together. Two of a kind equipped also not possible.
Earth Warriors may not wield Shields as chest plates if they're wearing any other suit of armor (mentioned above).
Windbreaker, Thunder Blade, Dark Blade, Soulstealer, Burning Blade, Sword of Flames, Sword of Quality, Crusader Blade, Ice Sword, Wave Blade, and Sword of Enlightenment may not be equipped together. Two of a kind equipped also not possible. However, the Spectral Sword may be equipped with any other sword.
Axe of the Orcs, Great Axe, Axe of Annihilation, Swift Axe and Lode Axe may not be equipped together. Two of a kind equipped also not possible.
Raiment of Spirits, Cloak of the Lich, Cloak of the Wyrm, Cloak of the Eternal Flame and Cloak of Justice may not be worn together. Two of a kind equipped also not possible.
For all Staves: two may not be equipped together simultaneously. On the other hand, some daggers may be equipped together. Amulets and Rings may be used with other amulets and/or rings.
Death spell 'Poison' added to the spell books, as an offensive spell. This spell cannot be researched normally in the library, but may be acquired through a scroll or conferred by artifacts.
Modifications to 'gs/ACTIONB5.gs' and 'gs/ARTFTOOL5.gs': Artifact spell icons will now always show in the command line. They will be "greyed out" where appropriate. Ergo, with zero charges or zero artifact mana remaining, the spell icon will display greyed out instead of invisible, so you can still observe that command button and tooltip information.
12/31/2020 - Build 3235 Water Elemental description fixed for Water faith damage.
Blizzard and Locust overland attack spells will function as a direct invoke spell, instead of functioning as a projectile spell, if the casting party has a tile distance less than or equal to 1. Ergo, these spells are guaranteed to have no "impact" issues when the casting party is right next to the target on the overland map.
STORY5.gs broken up into 4 documents.
SPELTOOL5.gs broken up into 4 documents.
NEWBUILD5.gs broken up into 3 documents.
Fix to 'gs\SCENARIO5.gs' in regards to AI player names properly registering.
Modification to 'gs\STORY5.gs': The 'random_title' generated in conjunction with 'encounter_title_array' are removed. This is in regards to AI dialog and Champions making up title (i.e. Verminslayer), which isn't really needed anymore since many champions' second names would fill this role.
Modification to 'gs\dlg\NEWBUILD5.gs' and 'gs\dlg\pre_NEWBUILD5.gs': Expanded the 'load_building_text' function to further include references to height and width. Issues with special buildings and text colors.
Modification to 'gs\dlg\NEWBUILD5.gs': Borders are now colorized on building panels.
Quick Silver and Swiftness provide effective immunity against Slow and Headwind, as well as remove/dispelling those spells if a unit actively has them.
12/22/2020 - Build 3234 More fixes to 'gs\STORY5.gs' since the revising of the document. Appears to be all tied up and finished.
Modifications to 'gs\dlg\BART_DLG5.gs': Buildings and sprites horizontal size reduced from 96 to 80, including for their text boxes, to help these from blocking the arrow buttons to move left or right.
12/19/2020 - Build 3233 -
A critical Fix for the last update 'gs\STORY5.gs' recreated from scratch, AGAIN. Fixed an important issue that was breaking the game, causing it to crash.
12/18/2020 - Build 3232 Spectral Sword changing of the spell fixed.
Fire Giant Strength now provides +4 (Ranged) Attack and +4 Strength to Fire units, and -3 (Ranged) Attackk and Strength to Water units, and +3 (Ranged) Attack and Strength to non-Water units.
Another rollback on 'gs\STORY5.gs' in regards to buttons. They have been removed from their individual stack that also clears with closing dialogs. Issues were arising with buttons not appearing with the correct type for the dialog panels. Additionally, in regards to some sprites that appear in dialogs. 'gs\STORY5.gs' recreated from scratch. Document is more efficiently coded, less clutter.
12/13/2020 - Build 3231 - Third update today, because I made many boo-boos.
Rolled back a change in 'gs\LEVLMODS5.gs' in how it relates to palettes.
Made a fix to 'gs\dlg\BART_DLG5.gs' increasing a dict size back to 40.
Fix made to 'gs\scenario\default.gs': A variable was being defined as an array, which it was changed to pull from an array instead.
12/13/2020 - Build 3230 Fixed an anomalous issue with certain Marauders casting Curse, when they shouldn't be able to. This has to do with the 'token_insane' invisible artifact.
12/13/2020 - Build 3229 Modifications to 'gs\STORY5.gs': Rolled back button related changes.
Modifications to 'gs\logs\spell_mods.gs': Fixed an issue relating to checks. Missing 'eq'.
12/13/2020 - Build 3228 Modifications to 'gs\STORY5.gs': Created a 'b_stack' and 'g_stack' for buttons and graphics, so their likelihood of over stuffing game memory with graphics/dialogs is limited.
Adjustments to 'gs\STORY5.gs': Meeting dialogs between players will now use colorized borders, except for Marauders or dungeon encounters.
Adjustments to 'gs\dlg\PANELS5.gs': Borders are now colorized for panels relating to Diplomatic dialogs when approaching an unoccupied building owned by other players, except for Marauders.
Adjustments to 'gs\dlg\BART_DLG5.gs': Marauders, if you somehow open Parley with them, will not display colorized borders.
Unfortunate to note within this document, however, at this time I have been unable to find a way from keeping dialog/graphics issues over stuffing game memory. Approximately after 27 times of entering barter with a player, there game will reach dialog/graphics limits, will generate errors, and may break the game causing it to crash.
Modifications to 'gs\dlg\THIEF.gs': Thief dialog panels are now dynamic to the use of transparent dialog checks.
Modifications to 'gs\encountr.gs' and 'gs\STORY5.gs': The generating of 'combat.log' entries and the effective automatic saving features (combat.lom, barter.lom, autosave.lom) have been moved out of 'gs\STORY5.gs' and dynamically controlled within 'gs\encountr.gs', except for things relating directly to Great Temple or Dungeon combats.
Adjustments to 'gs\SCENARIO5.gs': Scroll of Sages and Chalice of Chaos set spell on loading the game will be different among the spells they can cast, based on a modular of the current turn number and the spells available to them. So, if it's the same turn that you're reloading to, it will reload to the same spell. However, for Chalice of Chaos, it still randomizes to a new spell at the start of the player's turn.
Adjustments made to Map Editor, in terms of functionality and interface layout.
The different "zoom" view buttons are consolidated. Each click of the zoom button for either world or combat map view will cycle through each view one at a time.
The raise/lower elevation buttons have a new look. Additionally, the buttons will control the elevation directly, rather than adjusting the elevation of the entire map by the value set. The "Adjust" button is what will adjust the elevation of the entire map. Also, if a user wants to set the actual elevation by entering a number, that user may right-click either the plus or minus buttons to set it to an positive or negative value.
Modifications to 'gs\LEVLMODS5.gs', 'gs\SCENARIO5.gs' and 'gs\PLACEDNG5.gs': The 'extra_strong?' variable has effectively been nullified. Games generated with "insane mode" turned on will create "token_insane" invisible artifacts on armies generated at the start of the game, as well as prisoners who are rescued from towers/temples. Any time a saved game is loaded, it will check to see if this "token_insane" artifact exists on any unit, and once it finds that it exists on at least one unit, it will stop the check and set the 'insane_mode?' variable to true. The 'extra_strong?' variable, now nullified, is replaced in checks for giving extra stats to AI controlled units (though not marauders).
Now, ONLY games with Insane Mode set should yield AI controlled players with boosted stats.
Previously saved games, before this update, will be unaffected. Only games created in this update, or after, will know to generate the tokens at game generation.
Modifications to 'gs\dlg\bart_dlg.gs': All dialogs/buttons/graphics are fully dynamic to use the 'usetransdlg?' bool. Additionally, buttons fixed in the center dialog table to load last in order, which keeps other graphics from making the buttons inaccessible. Also, many buttons were re-sized and relocated. Champion names also appear in front and center above/below respective party.
Additionally, 'gs\dlg\bart_dlg.gs' is now 'gs\dlg\BART_DLG5.gs'.
Modifications to 'gs\dlg\BART_DLG5.gs': Barter value of armies only display under certain conditions: (a) if you're the owner of the unit, (b) if the unit is directly involved in the parley, or (c) if your army in parley has a thief, and the unit is within the sight radius of that thief.
Modifications to 'gs\dlg\BART_DLG5.gs': Improved/fixed checks on city Buildings and their trade eligibility between players.
Modifications to 'gs\dlg\BART_DLG5.gs': Building and Terrain sprites allocation for sprite graphic and text allocation adjusted. Building full names should appear, with their barter values. Additionally, the text descriptions for buildings and sprites should appear over the graphic, instead of underneath.
Blind Rage fix: Players may now cast on their own army, regardless of level conditions. Previously was only set to allow for it to be cast regardless of level if the target and caster were the same unit. Now, so long as it is a unit you control, it will proceed.
Modifications to 'gs\dlg\CRES_DLG5.gs': Added an additional layer to the translucent style dialog. This layer goes above the background page, but under everything else. This will effect the appearance of outlines (drawn boxes), as they're considered apart of the background, which basically gives them a segmented/dashed appearance.
Additions to 'gs\stone.gs': 'boldoutline' which utilizes the border style as seen on unit info icons, as well as 'goldoutline2' and 'goldoutline2' utilizing border styles as seen in barter windows.
Fixed coding on sword artifacts that kept certain warriors from wielding them.
11/30/2020 - Build 3227 At game generation, entering any champion name or starting lord name including a "?" symbol will automatically rename and generate that champion with a randomized name.
Modifications to 'gs\SCENARIO5.gs': Insane Mode now provides all buildings and capital buildings of AI players as Level 3.
Fixes to 'gs\dlg\CRES_DLG5.gs': Artifact display information in combat resolution dialog moved into its own stack of elements. Also, other elements were set into their own stack of elements as well. This should prevent the combat resolution dialog from having issues of too many graphics loading and making that dialog panel fail or generate errors over time.
Combat log will now display the current turn number of when a combat encounter takes place.
Modifications made in 'gs\COMBAT5.gs': Added variables 'post_invoke_equation', 'post_invoke_to', 'post_invoke_from', 'post_invoke_spell' and 'pre_invoke_equation', 'pre_invoke_to', 'pre_invoke_from', 'pre_invoke_spell'. The 'pre' set occurs before damage, and the 'post' set occurs after damage. This is an alternate way to invoke spells on attack or defend, and only one spell will be invoked for each.
'pre_invoke_equation' and 'post_invoke_equation' are not directly set, but they are checked if they exist. If these are defined, they will be used, otherwise they are expected to proceed, so long as all other variables are properly set.
May not be perfect for every application, but provides an additional method with a little more control, especially with the 'post_invoke_spell', where 'damage' or 'magic_damage' can be factored into the equation.
Additions to 'gs\COMBAT5.gs': 'pre_damage_mods' and 'post_damage_mods'. These are two functions that, if known, will execute after damage calculations, but [BEFORE/AFTER] actual combat damage is handled. These are a more broad handling of extra combat functions that can be controlled from artifact attack/defend procs.
Fix to 'gs\COMBAT5.gs' in regards to life stealing. Had to remove braces for 'leech' and 'leech_pct' in order for things to work exactly as intended. Also, 'leech_pct' is now controlled as a whole value, instead of converted to a percentage first. It is converted to a percentage when the 'leech' amount is determined.
Additions to 'gs\COMBAT5.gs': 'leech_bonus' variable added. This allows for a bonus to be applied to the leech amount. The base 'leech_pct' amount is 25, but can be directly boosted, or reduced, through this new variable.
Life Stealing Dagger now only randomizes life leech for ranged attacks.
Additions to 'gs\stone.gs': 'goldoutline', which uses the two line border from "pat1" file.
Variables 'text_mod_counter' and 'usetransdlg?' added to 'gs\GAMEUTIL5.gs'.
This just pre-sets 'usetransdlg?' to false, before the scenario file is set.
The 'text_mod_counter' is continuous and shared between Artifact Info Panels and Building Info Panels. This counter will last until the game is closed.
Modifications made to 'gs\dlg\ARTINFO5.gs': Internal Data sorted according to type. Also, better handles text changes with 'text_mod_counter'. Additionally, switching fonts/colors continuously up to 32 times, when the 32nd time is met, the Artifact Info dialog will automatically close.
Modifications made to 'gs\dlg\NEWBUILD5.gs' and 'gs\dlg\pre_NEWBUILD5.gs': Better handles text changes with 'text_mod_counter'. Switching fonts/colors continuously up to 32 times, when the 32nd time is met, the Building Dialog will automatically close.
Fix made to Regenerate Army spell viability. AI was trying to calculate it's use outside of combat.
Fix made to Fury Fire and Blades of Fury.
Modifications made to 'gs\turnai\ai_spells.gs': More overland attack spells are considered by the AI.
Potion spells updated. Their tooltip text will now accurately display potion effects, based on charges, in the icons for command buttons.
Overland attack spells: 'viability' fixed for AI to not attempt to multicast these spells.
Life spell Turn Undead will now instead reduce the chance by which an enchanted unit may perform life stealing, instead of directly effecting the percentage amount a unit may convert. Vampires and Liches, who have natural life stealing, have a 100% natural chance to steal life on attacks. The aforementioned spells each reduce this chance by half. Visage of Horror and Unturn Undead will each double their chances, but anything over 100% is redundant.
Defenders enchanted with Bless and Holy Visit each reduce an attacker's chance to steal life by half.
Life Stealing chance is no longer reduced by how much health the attacker has. Instead, the percentage of damage converted to health is reduced by a factor of 2 for each: 100, 150, 200, 250, 300 health. Having 300% health means the base percentage of 25% damage inflicted converted to health is cut in half 5 times, which in melee would result in less than 1% conversion. At that point, an attacker would have to do 100 damage to gain 1 health.
Undead Attackers having the Visage of Horror buff double the base percentage of 25 to 50. Visage doubles the chance and percentage for Undead units only. Visage (still) grants Life Stealing to Undead units who are not naturally able to do so.
11/19/2020 - Build 3226 Several modifications to dialogs made, including 'gs/dlg/SYSDLG5.gs', 'gs/dlg/FILESEL5.gs', 'gs/dlg/NEWBUILD5.gs', 'gs/buttons.gs', 'gs/fonts.gs'. Dialogs will now better handle the check for translucent dialogs.
Fixes made to 'gs\dlg\NEWBUILD5.gs', 'gs\dlg\buy_potion.gs' and 'gs\dlg\village_trade.gs' in regards to graphics with 'g_dynamic' and 'dynamic_g_stack' combined with 'free_g_stack' functions, and a separate set for 'buttons' (including arrows) Graphics should now be better handled when dumped from memory. Issues were arising, breaking graphics on display, where accessing the same building dialogs would overflow limits. It does a lot to alleviate breaking of dialogs and graphics during normal game play.
Additionally, the buy potion panel and village trade panels were fixed to use the 'set_building_dialog_size' which did effectively tied up dialog issues for buildings. A lot of code was reorganized.
New file created: 'gs\dlg\pre_NEWBUILD5.gs': This runs within 'gs\dlg\NEWBUILD5.gs', at the top. All variables, strings, text boxes were moved into this document. Additionally, most functions were moved into this document, as well as most graphics definitions which includes buttons. All buttons were made to be apart of their own stack of graphics, including their strings.
Document defines the following, in order: variables, strings, edit boxes, graphics\buttons, functions.
Fix made to Fire Heal. Spell buff was remaining on unit, outside of combat.
Created shorthand reference in 'gs/SCENARIO5.gs' to 'fix_wildmen_costs'. Is used also in 'gs/dlg/NEWBUILD5.gs'.
Fix made in 'gs/scenario/default.gs' for checking for whether or not the leader is the Orc Warlord or Witch Lord.
Change in 'gs/encountr.gs': When a foreign party enters into one of your buildings, it will center on that building so it is brought to the player's attention. Unlike when a village is taken over, this will not display a message regarding to its capture.
11/13/2020 - Build 3225 - ZOMG, FRIDAY THE FERTEENFTH!
Villages and City Buildings may now be bartered for. For villages, they must be relevant to the player. For buildings, the player must own the parent building (i.e. city, village or great temple). If the player has no stake in the building, it cannot be traded. Therefore, you cannot capture Fire's special building and then attempt to trade it to Death when Death does not own the corresponding city.
Subdue equation reverted. If the Thief has less Strength than the target, it once again reduces the base chance of subdue, which is 50%, in half. A single point difference in Strength can mean a 25 point impact.
Thief Steal equation modified. The Stealth of the Thief is subtracted from his level, and half the target unit sight radius is added to its level. A level 8 Thief with 5 Stealth would make its effective Stealing Level 3. A Level 8 Thief with -1 Stealth has an effective Level of 9. Additionally, one-third the value of the target Sight Radius is added to the target's level. Therefore, a Level 5 unit with 9 Sight Radius is treated as being Level 8 when comparing its level to a Thief. Decimal values are dropped.
Having Stealth values in the negatives basically boosts the Thief's effective level. The Thief Level and Stealth value are significantly more important than Luck or Dexterity, as a potential 25 points are at stake.
When Stealing, only the stats of the highest level Thief in the party matter. It does no good to have additional units with a Thief, or two Thieves stealing.
Parties who are detecting Thieves guaranteed to reduce a Thief's success by half.
Spy equation modified. Functions basically identical to the Thief steal equation, except Spying on cities is a little easier than stealing from them.
When Spying, only the stats of the highest level Thief in the party matter. It does no good to have additional units with a Thief, or two Thieves spying.
Parties who are detecting Thieves guaranteed to reduce a Thief's success by half.
Changes to 'gs/dlg/bart_dlg.gs': Increased sizes of asset selection bars, also re-aligned some of the assets appearing in that window. Additionally, translucent panels are now used.
11/9/2020 - Build 3224 Fix to Death Cave 'tilesets'. Improper reference.
Air Thieves may now wear the Elven Chain Mail.
Fix reference for "empathy" text.
Fury Fire and Blades of Fury spell data rolled back.
11/7/2020 - Build 3223 Modifications to 'gs/DUNGEONS5.gs', 'gs/BRAIN5.gs' and 'gs/armysays.gs' changing reference from 'currntspr' to 'sprite_id' to match what's in 'gs/CURSOR5.gs'. This allows for dynamic naming of sprites, as all documents will look for the same reference ID.
Modifications to 'gs/DUNGEONS5.gs': Added reference check for 'mapfiles' and 'tilesets'. When a dungeon encounter loads in a non-multiplayer game, it will check for these definitions if they're set in the dungeon dictionary files and it will use these over 'mapfile' and 'tileset'.
"Cave Encounters" for all faiths modified to use dynamic dungeon mapfiles and tilesets. Also, dungeon names for these encounters will change for certain sprite types (i.e. A Mushroom Patch or Barrow for Earth, depending on the sprite type selected). Also, Gold Mines, Crystal Mines, Brewery and Statue encounters all use their own defined randomized 'mapfiles' and 'tilesets'. These are only in single player games.
Phoenix, or units with the Grace of the Phoenix spell buff, will no revive if the corpse of the unit has been the target of a Raise creature spell, Animate Dead or was the target of Embrace of Golgoth.
Water, Life and Chaos Chalice artifacts will now provide double armor to the holder against creatures opposite in faith to artifact. This doubled armor value is displayed in artifact stat icons. Artifact text descriptions slightly tweaked.
Orc, Troll, Witch Tower, Cyclops Cave encounters all have had their armies re-worked.
Neutralize now averages the target's magic resistances.
Alchemy now makes a sound when a potion is created.
Addition to 'gs/ENC_TOOL5.gs: 'give_level_exp_adj'. This will essentially work the exact same as 'give_level_exp', except it will check to see if the unit type data to see if the unit has a squad size equal to 1, where if it does, it would double the expected level experience. This is mainly to be used for non-champion "military group" units (any non-champion unit).
The chief purpose is for units, say for an example Ogres or Unicorns, who can gain levels and are solo units. Most units who are in squads of 2 or 3 are typically leveling units. These units can all be added to the same pool for random army selection for dungeons, and dynamically adjust levels for units like Ogres and Unicorns who typically require more experience points for their levels. So, if in a Level 8 dungeon, expected non-champion experience would be 4.25, a unit such as an Ogre can be granted a theoretical 8.50 levels of experience, even when its maximum level is only 6. (The maximum enforced levels of experience would be 7.00 for an Ogre through this function).
Adjustment made in 'gs/GAMEUTIL5.gs' to 'give_unittype_level_exp'. The maximum allowed remainder above maximum level is now 1.0. So, even if a unit whose maximum level is 10 is given 12.00 or perhaps 14.00 levels of experience, it will have Level 10 experience plus a remainder of 1, which will take the maximum level experience value and multiply that by the remainder and add it on top of the maximum level experience.
So, if a unit whose maximum level is 10 and experience to reach that level is '22500', setting the level to 11 or greater will make the provided experience effectively '45000'. If the level were set to 10.25, it would take 0.25 * '22500' (5625) and add it on top of that maximum level experience value of '22500' for a total of '28125' points of experience.
Previously setting the same unit to level 13.00 would cause it to have '22500' * 3, plus '22500' for '90000' total experience points on that unit. The limit is now effectively 11 levels of experience (45000) for that level 10 unit, regardless of the set value, when set by these functions (primarily for game generation or generated armies).
Additions to 'gs/SPELTOOL5.gs': 'delayed_modifications' and 'expire_modifications' added. These will function in the same way that 'delayed_mods' and 'expire_mods' will, except that these newer additions function just like the 'temporary_modifications' and 'permanent_modifications' do, and are an alternate way to perform the same functions as 'delayed_mods' and 'expire_mods'.
Both will respectively adhere to the 'delayed_time' and 'expire_time'.
Both of these added functions are one shot. Multiple/repeated effects is still handled by 'repeat_modifications', and the delayed modifications could still be handled with 'repeat_modifications', but this may allow for some things to be handled separate and perhaps more clearly.
'delayed_modifications' will clear with the spell duration. 'expire_modifications' may end up being permanent until dispelled.
Modifications to 'gs/SPELTOOL5.gs': The 'delayed_mods' and 'expire_mods' may now be effected in how much their delay time occurs and include the caster's referential data for army and unit numbers. Respectively, a spell may set 'delay_time' and 'expire_time' in ticks, to adjust how long to wait after invocation or expiration of the spell. If these times are not defined in a spell's data, they will default to a value of 1 (1 tick after initial invocation, or 1 tick after spell expiration). This gives both functions a little more utility, supposing even that the 'expire_time' could be set to a negative number, or zero.
Dungeon encounters reorganized in the 'dungeons' folder. All quest encounters moved into respective faith 'quest' folder.
Kraken, now once again, has a ranged attack, though there is no associated projectile (like the Demon of Fire). Ranged attack is 3, which means the attack extends 3 tiles out. Gives Krakens a small range to attack units on coasts.
Modifications to 'gs/DIPLO5.gs' and related documents: Changed the dictionary reference names for political attitudes to remove confusion on names in script and names in game. They now match up, with dictionary reference names starting with a prefix of "diplo_" before the actual reference name. This way, it helps to avoid potential cross reference mishaps with word like "Hatred" or "Neutral" mentioned in dialog texts.
Definitely eases the struggle of dealing with different names for the same thing. (i.e. 'hatred' in code was 'loathing' in game, 'misunderstood' in code was 'neutral' in game).
Modifications to 'gs/PLACEDNG5.gs': Great Temple prisoners rescued that would be Lord Class champions will now check if the player already has assigned heirs. For each assigned heir, it will disqualify the same number of rescued prisoners from the Great Temples from being Lord Class.
If you play a Custom Game where you add an extra Lord Class unit, that unit is designated as an heir. And as such, when you rescue prisoners from the Great Temple, that means one prisoner will NOT be a Lord Class unit and one will. This will help to keep a player from getting excessive Lord Class units in one game, and keeping the maximum to 3.
As with a previous update, in order to rescue Lord Class Champions from the Great Temples, the game must be on Hard difficulty and the Great Temple's Level of placement must be 9 or greater.
Modification in 'gs/GAMEUTIL5.gs': The 'regen_health_function' will now include looking for a boolean value. This boolean value is tied to the randomization of health associated with the regenerate function. If true, the health is randomized between the set value and zero. If false, no randomization will occur.
Thieves who are in Stealth mode will always have their regenerated health randomized, so long as the value is greater than zero.
Trollhide Belt health regeneration is randomized. 0 to 2 health for Chaos Warriors, 0 to 1 for all others.
Ring of the Elements, Ring of Arcana, Ring of Embers, may be worn by any champion now, except Fire ones. Adds Thieves and Warriors to who can equip.
Immolation may now be effectively used as an offensive spell. When cast on an enemy, it will spark a flame to other enemies surrounding that target. It won't affect unit owned by the casting player. However, when use in such an offensive manner, the sparked flames will not be fatal; defensively, they may still be fatal if the unit receiving the Immolation enchantment is on the same side as the caster.
Additionally, Immolation will now inflict up to 1 damage until a unit achieves at least 50% Fire Resistance. Before, having ANY fire resistance at all would save a unit from any damage.
Hotkey modifications. In combat, pressing the Space bar when Info Panels open will no longer unpause the game. Instead, pressing the Space bar in combat with inventory open will close Info Panels only, requiring an addition press of the Space bar to unpause/pause combat. Additionally, in combat, pressing the Escape key with these Info panels open will force them closed.
Four new timed functions added to 'gs/SPELTOOL5.gs': 'delayed_mods', 'expire_mods', 'delayed_repeat_mods' and 'expire_repeat_mods'. The expire mods will basically run 1 tick after the spell finishes. Delay mods will run 1 tick after starting. The repeat functions work the same way, but the delay repeat mod runs 1 tick after the first repeat effect, and expire repeat mods run 1 tick after the final repeat effect. These effectively replace previous iterations that performed this effects, if they existed previously.
These delayed effects may work better, in some cases, than the 'post_mods' does.
Effective sequence of spell function execution: (stage 1) pre_mods > actual spell modifiers > invoke/missile/lightning effects > post_mods > (stage 2) delayed mods > (stage 3) expire mods.
'pre_mods' because they run before conditions and actual modifiers. May be used to pre-emptively dispel an effect, perhaps the spell itself, before the basic spell effects.
'invoke/missile/lightning' effects may be used as an alternate way to execute spell mods, or additional effects.
'post_mods' can be used for additional effects, such as dispelling a spell after the current spell takes hold.
Delayed effects can be used after the spell fully clears all previous effects, with these effect beginning completely after in an "almost separate" way. These effects happen the moment after.
Expire effects is after the spell's duration has expired, not before, not at the same time, but the moment after.
Two new simple procedures added to 'gs/GAMEUTIL5.gs': 'count_tiles_in_radius' and 'check_terrain_type_in_radius'. One counts the number of tiles in a given area. The other returns a number for the number of matches in terrain type in a given area. Using the two together would give a percentage of an area covered in a particular terrain type.
Lava Flow terrain spell may affect Snow, but turns it into the faceless dirt terrain. A Snow covered area requires two effective casts to change into Lava.
Snow terrain spell may affect Lava, but turns it into the faceless dirt terrain. A Lava covered area requires two effective casts to change into Snow.
Light Rain modified. The spell will remove Heat Metal from an affected unit, and it will also replenish the health of that unit. Additionally, units under the effect of Light Rain may not be the target of Heat Metal, except if Heat Metal is being cast on a friendly Fire unit.
Light Rain will also do full intended damage now, but will do a 'kill check'.
Heat Metal spell modified. It may no longer target enemy units under the effects of Light Rain. For friendly Fire faith units, Heat Metal may target a qualifying unit to remove Light Rain. Additionally, Friendly Fire faith units with Heat Metal are immune to the effects of Light Rain.
Heat Metal will also do full intended damage, but will do a 'kill check'.
Death Spell 'Respawn Cave' slightly modified. It will now actively change the observed Dungeon Level.
Fixes to artifact provided regenerations. Was missing 'combattime' from the start functions, which caused anomalous errors.
Fixes with Dragon's Breath spell. It should basically function more the way it should.
Fixes in 'gs/SPELTOOL5.gs': For spells that modify magic resistances and have durations effected by magic resistances are fixed. They're subtracting, instead of adding now, which is what needs to be done to give accurate spell durations.
Chain Lightning, Lightning II, Lightning and Balkoth's Word have been fixed or otherwise adjusted. Each of these spells may technically accumulate their spell effects, even though they just deal damage. Also, the spells each have a set duration. This just basically ensures that their aura effects truly appear where they need to, especially in the case of Balkoth's Word. And while these spells may have a short duration, it won't stop spell casters from repeat effects. Each spell uses a dummy modifier to modify 'fame_to_build' which no unit is capable of using, and affected units are always already "built"/hired/trained anyway.
Additionally, maybe spells were updated to include 'fame_to_build' modifiers, to ensure the spell effects proceed, without attempt to modify other stats unnecessarily. This also appears to help with Lightning bolt spells locking the caster and attempting free additional bolt strikes on targets already hit.
Chain Lightning spell data updated to send the second wave of lightning, spell 'Lightning II', on a delay. The spell shoots the 'Lightning II' spell 9 ticks after Chain Lightning does its thing.
Certain terrain sprites (such those which appear to be Water faith buildings), like Water Rocks, may now be employed as dungeons over water terrain. Previously, dungeons which laid solely on water terrain could not be approached. Bridges, water rocks, and certain water faith type sprites may be used for encounters over water. And while boats and such may interact with them, and leave them after the combat's conclusion, it may not look quite right for a boat to be in most dungeon combats.
Two new placeable encounter types: 'Wilderness' and 'Briny Deep'. Each of these encounters will not be "inside" dungeons, so much as they will use the overland terrain types. Briny deep is best used on coast, or fully surrounded by water. Wilderness is an encounter best used on a coast, or any land area.
New Earth spell, though not yet fully implemented, Spawn Mushroom. On the overland map, the spell will create a Mushroom sprite on any land area not presently occupied. The spite will disappear at the beginning of the fourt turn following it's creation. The Mushrooms spawned by this spell can be used as an inside rest area. If there is an army inside the Mushroom when it expires, it will be booted out.
If combat is engaged for this spawned mushroom environment, it will be the same as a 'Wilderness' area, where the overland map terrain will be used for combat.
All spells now have localized tooltip and spell descriptions defined. Additionally, each spell now has a 'long' version spell descriptions which can be seen by clicking on spell icons in the Intelligence Report dialog, or they may also be seen when viewing a spell scroll's description directly as an artifact.
Gift of Life may now be potentially fatal to a caster. If the caster health remaining equal to 'half or less than half' of the spell's health cost, then the caster may be permitted to die.
The spell requires a total health cost of 8 to revive a unit. If the caster has less than 4 health remaining and targets a corpse to revive it, the spell would cost 8 health points total for this effect, and so the caster may die. So with 1 to 3 health remaining on the caster, it can die reviving a corpse, otherwise with 4 to 8 health, the caster is just reduced to 1.
The spell requires only 4 total health cost to convey healing to another unit. If the unit has 2 to 5 health remaining, it will only be reduced to 1 health. If the caster has but one health remaining and conveys healing to a living target, then it may be permitted to die.
If the caster has insufficient mana for the extra mana cost, this mana is instead taken from health.
Meteor Shower does half expected damage for armies on snow terrain. After the spell is cast, the underlying terrain at the location of the target army is melted and changed into faceless dirt.
Blizzard and Flood spells do half expected damage for armies on lava terrain. After the spell is cast, the underlying terrain at the location of the target army is cooled and changed into faceless dirt.
Overland attack spells will no longer effect units who have 100% resistance or more of the spell's origin faith.
Overland Attack Spells 'Locust', 'Blizzard' and 'Meteor Storm' now do double damage to flying units.
Overland Attack spell 'Flood' may no longer affect flying units and may no longer affect aquatic units occupying Water terrain.
Overland Attack spells 'Blizzard' and 'Flood' do half their damage against parties standing upon Lava terrain.
Overland Attack spell 'Earthquake' may no longer affect aquatic units occupying Water terrain.
All faith Detect Army spells updated. All spell effects consolidated from one procedure in 'gs/SPELTOOL5.gs' and will detect armies properly. In combat, they will reveal hiding thieves without modifying their stats. Thieves which qualify under the conditions will be revealed instantly, again after 3 seconds, and one last time after 6 seconds. Three reveals over a span of 6 seconds.
All Seer spells updated. These spells will no longer detect any qualifying army if it is located over terrain for which the spell cannot reveal.
Seer spell effects consolidated and localized in 'gs/SPELTOOL5.gs'.
Water seer spell may detect any elemental faith unit over any terrain, except desert, lava or impassable terrain.
Air seer spell may detect any elemental faith unit, or any unit capable of flight, over any terrain, except lava, water or impassable terrain.
Whisper of the Waves only reveals water terrain, but will now detect any unit in or touching water.
Earth Seer spell may detect any earthbound units, but not over water or impassable terrain.
Make Land spell can no longer target tiles which are occupied by armies or sprites. The spell also can no longer target Lava terrain, at all; Lava is immune from becoming water terrain (you'll just have to change it to something else before trying to make water of it). Land changed to Water will only be for one tile per cast. Additionally, when the spell changes Water into Land, it will be only the faceless "dirt" terrain.
Modifications made to 'gs/SPELTOOL5.gs': Changes to how terraform spells are handled and executed. Also included default values for spell definitions 'mps_cost' and 'health_cost' to be used for spells.
Terraforming spell effects consolidated and localized in 'gs/SPELTOOL5.gs'.
Modifications made to 'gs/dlg/artinfo5.gs': Artifact text can now be changed a few times, cycling between colored fonts and uncolored. User may switch between color and uncolored white font text with a left click, and may switch between two similar but different fonts with a right click. Artifact must have a variable 'colorizetext?' defined as true.
Modifications made to 'gs/ARTFTOOL5.gs', 'gs/dlg/artinfo5.gs' and some artifacts: Artifacts may now utilize a boolean variable, defined locally in each artifact file, called 'colorizeborder?'. If set to true, the border for that artifact may be colorized when showing the translucent style dialogs (basically hard mode).
Document 'gs/dlg/intel.gs' is now 'gs/dlg/INTEL5.gs'.
Modifications made to 'gs/dlg/intel.gs': Left-clicking on any Spell icon in the Intelligence report window will now display the corresponding spell in an artifact window, as if it were a scroll. This will give players access to expanded, localized, spell descriptions if they are available.
Modifications made to 'gs/ACTION5B.gs', 'gs/ARTFTOOL5.gs' and 'gs/dlg/artinfo5.gs': All command buttons and artifact spell icons have been adjusted to look for text/tooltip descriptions in a spell's dictionary. If the dictionary reference exists, it will override text that comes from 'gs/spells/spelhtxt.gs'.
This changes will allow for spell text to be localized, and opens up spell scrolls to having more complete and descriptive spell text in future updates. Rather than relying on brief tooltip descriptions on the command buttons for these spells, players may examine artifact spell scrolls for the "long version" of spell description if it is defined.
Also, command button tooltips for spells will now display mana cost right next to the spell name, rather than on a second line. This will free up some vertical space, and perhaps make the tooltip text a little bit wider.
Combat buttons and hotkey for Stealth, among other commands, now properly update after they've been activate. For example, when as a Thief in combat, when you issue a Stealth command, it will now properly update buttons to allow Subdue command.
Multi-Shot spell should discontinue chain casting.
Trollhide Belt, Adventurer's Ring, Sword of Enlightenment, Noble Crown, Jester's Cap, Boots of Stealth and Gloves of Quickness modified slightly, and stat bonuses will now increase with turns passed (35/70).
Experience scrolls now have simplified coding. They will also have extended benefits for champions beyond their maximum level. They also have maximum values set. Greater now has barter value of 2000. Ultimate now has barter value of 4000. Experience provided by these scrolls shall not exceed that of 5X barter value.
Shield of Balkoth may now display more than just "mysterious writing" for any who is wise enough to comprehend the lore. However, even the wisest will have trouble.
Staff of Enlightenment now provides +3 Mana and Wisdom.
Immolation (Fire Spell) now costs 3 mana, up from 2 mana, and duration is now 60 seconds, up from 30.
Elven Chain Mail now provides +3 Armor, +3 Hit Recovery and +3 Dexterity instead of just +5 Armor and Hit Recovery.
Many artifacts info panels updated to use the new variable handlers. Such that if an artifact provides 1/3X Attack, it will update to display the actual amount in the artifact stat icons. This value is based upon the unit whose inventory for which the artifact belongs.
Modifications to 'gs/dlg/riscsys.gs: The numbers for fame, gold, etc. will appear in the smaller sized number fonts when their values exceed 10,000.
Modifications to 'gs/PLACEDNG5.gs: Several adjustments made. All of the scrolls which bestow stat bonuses, except experience scrolls, and some of the more unique artifacts (Scroll of Sages, Chalice of Chaos) have been separated into a different artifact spoils list. All artifacts in this new list can be found, and they're guaranteed to be found at the player's 3rd and 4th highest dungeons nearest to the capital. Scroll of Diplomacy, Scroll of Sages, Scroll of Faith and Chalice of Chaos may never be spoils in multiplayer games. Additionally, all stat scrolls may be obtained twice per game as spoils, except for The Scrolls of Strength, Dexterity, Wisdom, Health and Mana which instead may be obtained three total times each per game.
While the 3rd, 4th and 5th highest level dungeon are guaranteed to bestow one of these unique artifact spoils, other dungeons may have a chance at dispensing these items (3 per region guaranteed: 24), the remainder (1) shall be randomly scattered.
Also, Talisman list is separate from spell scroll spoils list. Talismans are not yet available for use or implemented (though some code has been prepared for them). Talismans are intended to be artifacts that cast a single spell once, then break.
Hand of Fate and Prismatic Hand spells modified. These spells will evaluate a kill check as part of whether or not it is allowed to be fatal (like Justice, Flame Arrows and other "Big Ticket" spells). If the target is greater or equal to the caster in level, both spells will have their base chance cut in half; this is not a change, just a note. However, the damage inflicted is no longer reduced by 20% if the target is considered a "unique" unit; instead, if the target is greater or equal to the caster in level, then it will trigger a kill check. The kill check makes the spell not cause fatal damage, unless half of the expected damage is greater than the target's remaining health.
In order for these spells to be able to kill a target with 20 health whose level is greater or equal to the caster, the expected spell damage would have to be 40. If that spell damage is less than 40, then the target will only be reduced to one health and not killed by the spell.
Modification to 'gs/dlg/ARTINFO5.gs': Any blank area of the artifact panel may be clicked to toggle between the transparent background and a blanked out background.
Modification to 'gs/dlg/ARTINFO5.gs': The font color and size of the numbers in the artifact stat icons will dynamically adjust to the string length. If the string consists of 3 items or less (for example "+10"), it will display large numbers (ergo, "+100" text would be displayed in smaller sized). If the string contains a "-" then it will recolor the numbers in red.
Modification to 'gs/dlg/ARTINFO5.gs': The font coloring of numbers in the Barter Value artifact stat icon now register in green font color.
Modification to 'gs/dlg/ARTINFO5.gs': The font coloring of numbers in the Artifact Mana and Artifact Charges artifact stat icons now register in white font color.
Modification to 'gs/dlg/ARTINFO5.gs': The 'description_table' may now directly handle non-non-string type data. Such that, in coding rather than something like '/articon_attack"+3"' being entered, a number, variable or equation may be used like so: '/articon_attack{3 wielder_level 7 idiv add}'.
If the variable equation returns a positive number, a '+' sign is automatically registered in front of it.
Entering information in such a way that uses a variable, will display information to the player in how it relates to the current army and unit possessing the artifact. So, if it's a Level 15 champion who has the artifact in his inventory, then it will display "+5" as the text in that artifact stat icon.
Scroll of Diplomacy re-worked and fixed (I'm positive this time, trrrrrrrust me).
Scythe of Balkoth will now degrade relations between the wearer and all other faiths by one value each turn when it is equipped, except every 7h turn. This is changed from degrading relations by a value of 10 every 7th turn.
The Wave Blade may only reduce armor of a defender if it has more than zero armor. Also, the duration of effect for the Wave Blade armor reduction function is cut in half if the defender's armor value is less than or equal to the defender's level or the attacker level.
Standard duration of the effect is 18 seconds.
If a defender level is 10 and attacker level is 10, this would mean the duration of the armor reduction, is cut in half twice once the defender has 10 armor or less. This means the defender might have 10 armor or less, but only very briefly.
If a Level 5 Dwarven Infantry is the defender and the attacker is a Level 15 Amazon Princess, the Dwarven Infantry already have 5 points of armor without spell or rally buffs. 5 points of armor is equal to (or less than) the unit's Level of 5. This would mean, any armor reduction this unit faces from the Wave Blade will generally always be cut in half. On top of this, the attacker level is presumably going to be more than 5 most of the time. So this 5 armor may be reduced by 1, and will typically always last for 4.5 seconds in game.
Wielders will typically see the longest lasting benefit of this effect when the defender has very high armor.
The Warlord's Helmet will improve its chances of providing temporary defense bonuses when the wearer has 11/33/66 percent health remaining. The value increase is a random '0 to 5', and stacks. So, with 10% health remaining, or less, a random '0-5' is added 3 times. When an attacker has 25/50/75 percent health remaining, it reduces the chance to provide the wearer with defense bonuses by a random '0 to 5', stacking in the same manner (random '0-5' chance reduction, up to 3 times). So an attacker with 25% health remaining will have a range of minus '0 to 15' chance of the wearer receiving defense bonuses. The wearer with 11% health remaining will have a range of plus '0 to 15' chance of the wearer receiving defense bonuses.
Each time the wearer succeeds in receiving defense bonuses from this artifact, it will deplete the artifact's mana by a random value '0 to X' where 'X' equals '5 minus (defender level/5)' (basically '0 to 2' for a Level 15 wearer). However, unlike other Warrior armors, the Warlord's Helmet will still continue to provide this random chance for defense bonuses, but the chance and duration of these bonuses is reduced by half (i.e. instead of a 12 second duration, it's a 6 second duration and instead of a 20% chance, it is a 10% chance).
Chalice of Chaos, after equipped, will now show what stat modifiers were made. Therefore, if you equip the artifact, it will tell you what resistances are being modified by. If you unequip it, it will not update these stat icons inside the artifact dialog. Only when the item is equipped, or refreshed by changing of turn, will it display what modifications were made. Also, stat modifying code within the artifact was simplified.
Luckstone will now show what bonuses a unit will receive in the artifact stat icons.
Modifications made to spells 'Locust' and 'Blizzard': Both spells have a missile lifespan of 6 seconds. In some rare occasions, because of angle or elevation or hotspots, these spells will never reach their destination. This would cause these spells to literally break the game, not allowing turns to change to the next player, because the missile never resolves and is constantly flying forever.
Modifications made to 'gs/SPELTOOL5.gs': The 'do_kill_check' instead of just doing a simple level check, the level is checked AND it compares the expected damage versus remaining health. If big ticket spells (i.e. Cone of Cold, Justice, Chain Lightning, Flame Arrow) are cast, they will run a check against units. If the target is greater or equal to caster in level, then the expected spell damage is checked. If half expected damage is greater than or equal to the health remaining on the target unit, then it will be allowed to die. Otherwise, damage is adjusted so that remaining health would be 1.
This allows big ticket spells to kill units sometimes even when the caster's level is not greater than the target's level.
If the caster level is less than the target level (Level 1 vs Level 3), and the target has 4 life left, this would mean in order for that spell to be fatal, it must do 8 damage.
If the caster level is less than the target level, then half the spell damage must be greater than or equal to health remaining for it to be fatal. This allows all big ticket spells to eventually be fatal, rather than saving units from death all the time.
Certain specific translucent dialogs will now have colorized borders, where applicable.
[PREVIEW] Modifications made to 'gs/dlg/INFOPAN5.gs': Enabled the colorization and font adjustments for these windows. This colorization depends on the faith of the player.
[PREVIEW] Modifications made to 'gs/dlg/cres_dlg.gs': Clicking on any empty space in the dialog will toggle between transparent and a plain background.
Modifications made to 'gs/dlg/artinfo5.gs': Implemented ways for artifacts to display variable based numbers in the artifact icon windows. Up to 26 different variables can be defined in any artifact's code (var_A, var_B, var_C... var_Z). When the artifact icon has a "A" "B" "C" … "Z" plugged in, instead of a static number, it will search to see if the corresponding "var_@" is known and defined within the artifact's data. If it is known and defined, it will display that number in place of "A" "B" "C" … "Z". For example, if "var_A" is to be used in a Ring of Strength, the Ring of Strength provides a +3 base of strength, and will increase +3 at turn 35, and +3 again at turn 70 for a total of +9. Ordinarily, an equation/variable could not be used to display the current applicable value. Now, instead of inserting "+3" or "+3/35", one may simply insert "A" and define 'var_A' to display a dynamic text of "+3", then later show "+6", then later show "+9". Also, any of the 'var_@ 'may also be set as a string in artifact data (i.e. "+1/5").
'gs/dlg/PIKFAITH5.gs' now replaces 'gs/pikfaith.gs'. Implemented a pseudo difficulty modifier, labeled "Insane." This pseudo difficulty modifier only effects games at the time they are first generated. This "Insane" button will appear next to "Hard" and may be used on any difficulty level.
"Insane" Difficulty is not intended to be an entirely new difficulty level. "Insane Mode" is a difficulty enhancer, to make EASY, MEDIUM or HARD more difficult.
"Insane Mode" causes all faiths to be Active, starting with their Great Temples and Security forces.
"Insane Mode" causes all faiths to start with two heirs.
"Insane Mode" causes Death to always be Balkoth, when Death is controlled by AI.
"Insane Mode" causes AI players to start with all of their spells up to a research costs 128.
"Insane Mode" causes relations between AI players to be no less than "Neutral." Also, AI players relations to human players will be no greater than "Aversion." If Death is an AI player, then its relation with all faiths will be "Hostility."
'gs/MAKEARMY5.gs' now replaces 'gs/makearmy.gs'. Completely revamped how auto-generated dungeons with no preset encounter army generates armies and experience. Armies generated through this revision will provide level equivalent experience for the generated army instead of setting army experience and using a multiplier based on dungeon level. The new system roughly is equivalent to: 'Dungeon Level' minus one, plus a random '0.25 to 1.75', if unit consists of a squad of more than one (a pack) then divide by 2, then a '1 in 4' chance (based on difficulty) to receive an additional 0.25 levels of experience.
Example: Level 3 dungeon would mean experience Level ranges 2.5 to 4 for solo units, 1.375 to 2.125 for pack units.
Example: Level 9 dungeon would mean experience Level ranges 8.5 to 10 for solo units, 4.375 to 5.125 for pack units.
All champions and creatures such as Golem, Ogre, Rock Troll, Spirit Warrior, Hounds/Scouts are considered "solo" unit squads. Dryads, Archers, Wolves, Sprites, Lions, Knights et al are all considered "pack" squads (contains 2-3 units per squad).
In the mod, this change effects all dungeons with undefined armies, marauder armies generated as "village security forces," any army that spawns over map for marauders, and armies for caves Respawned via Death spell.
See a table by Dungeon Level. This modification indirectly addresses the sought change to: ["Cave" encounter types have been modified with an additional "Wild Card"
type creature/unit.] Except not for caves, only dungeons with undefined armies.
'gs/DUNGEONS5.gs' now replaces 'gs/dungeons.gs'. This accompanies the changes above, with 'gs/MAKEARMY5.gs'. Additionally, some data before added to 'gs/dungeons.gs' is moved to 'gs/dungeons_ext.gs'
"Cave" encounter types have been modified with two additional "Wild Card"
unit slots. "Wild Card" army unit slots may be repeats of neutral faith units, opposite faith units, same faith units (least likely), or an entirely different faith unit. Most of the time, the "Wild Card" slots are for "Wild Man" units (i.e. Orcs, Trolls, Centaurs, Wolves, Zombies, et al).
NOTE: The consistent significant difference now between "Cave" encounters and dungeons with these newly random army setups is "Cave" encounter armies will generate Thief champions at encounter levels 5 and lower. The fully random encounters (i.e. mines, statues, breweries, et al) will assign champion types randomly up until level 8, where it's guaranteed at least one champion in the dungeon is going to be a wizard. There may be some other discrepancies, but this is the most notable.
Modifications to 'gs/COMB_RES5.gs': AI controlled players will receive experience from combat equal to barter value of defeated party, point for point, no difficulty modifier. Human controlled players will still have a 'difficulty modifier' at a rate of 75%/66%/50% by difficulty, of defeated party's barter value converted to experience points gained from combat.
Addition to 'gs/GAMEUTIL5.gs: Added 'regen_health_function'. This function is intended to be used in replacement of individual artifact regenerate health functions. Also, this function includes checks to see that the unit is not dead and the player's army (in combat) is not completely dead. This function looks for 'army_id' 'unit_num' and 'val', which targets a specific army, unit and regenerates for a specified value. Repeat intervals have to be defined outside of this function at the time of execution.
Units who are stealthed will instead have a difficulty mode (Easy/Medium/Hard) chance of receiving no health regeneration.
In EASY mode games, stealthed units will be able to regenerate health 75% of the time; in MEDIUM mode games, 50%; in HARD mode games, 25%.
Most 'regen_health_functions' have a set maximum number of times they can be executed.
This applies only to artifacts giving regeneration powers, not spells.
Chaos Warriors, Infantry, Cavalry and Missile units (not including Orcs or Goblins) will now receive +1 Elemental (Air, Earth, Fire Water) Resistance per unit level.
Modifications made to 'gs/SCENARIO5.gs': Created a scenario boolean variable called 'extra_strong?'. If set in a scenario file to true, it will provide AI controlled units extra stat bonuses, including Marauders.
Modifications made to 'gs/SCENARIO5.gs': Created a scenario numeric variable called 'phyz_res_cap?'. If 'phyz_res_cap?' is set in a scenario file, then references to 'phyz_res_cap?' recognize that established number. If 'phyz_res_cap?' is not set in a scenario file, then references to 'phyz_res_cap?' will generate a default value of 100. So it will always be 100, unless set otherwise.
If physical resistance of any unit were ever above 100, it would serve no purpose. Combat calculations are already set in such a way to limit damage to a minimum zero value. This just centralizes where this mechanism is configured. Additionally, it will allow for Legends scenarios to play with fewer modifications (non-legend normal game would have a cap of 75 set).
Modifications made to 'gs/LEVLMODS5.gs': Units of AI controlled players will have their primary (STR/DEX/WIS) increased with the difficulty level of the game (+0/+1/+2 for EASY/MED/HARD), plus additional +1 after certain number of turns passed. The corresponding primary stat for the champion type (i.e. STR for Warrior) is doubled. Additionally, if the opposite player for an AI controlled faith is a human player, there is an additional +1 bonus. Further more, if the human player is playing as Death, then every AI controlled player receives double the bonus.
Modifications made to 'gs/LEVLMODS5.gs': Units of AI controlled players have their health, mana and movement increased with the difficulty level of the game. Additionally, if the opposite player for an AI controlled faith is a human player, there is an additional bonus. Further more, an additional bonus is given if Death is controlled by a Human player. There is also an additional bonus based on the champion type.
Modifications made to 'gs/LEVLMODS5.gs': Non-Champions of AI controlled players will have their Attack, Armor and Ranged Attacks boosted with the difficulty level of the game. +0/+1/+2 Attack, Armor and Ranged Attack are provided to AI controlled non-champion units. Additionally, if the opposite player for an AI controlled faith is a human player, there is an additional +1 bonus. Further more, an additional +1 bonus is given if Death is controlled by a Human player.
Modifications made to 'gs/LEVLMODS5.gs': Units controlled by AI players will have increased magic resistance, physical resistance and health recovery rates which are modulate with the difficulty level. Additionally, if the opposite player for an AI controlled faith is a human player, there is an additional +1 bonus. Further more, an additional +1 bonus is given if Death is controlled by a Human player.
Chalice of Chaos will now provide regeneration at a rate of 1 hp/18 seconds.
Amulet of the Wisp now provides +50% physical resistance, instead of +25%, but only for Air Thieves. Also, this amulet will regenerate 1 health per 30 seconds of combat, and replenish all health after combat. In addition to making the defender's armor zero versus Wisps, the defender (wearing this amulet) will have zero Air Resistance versus Wisps in combat (means the Wisp's Air damage will be most effective).
Ghostly Pendant fixed: now recharges one charge per 3 turns.
Fixes to 'gs/GAMEUTIL5.gs: Ghostly Pendent will no longer transform a unit who has passed into a doorway, in a multi level dungeon.
All Warrior Armor (i.e. Ebony Plate, Warlord Helmet, et al) all have reduced artifact mana, from 1000 to 100. While each armor may cast a Dispel Magic spell, they require artifact mana (not charges) to do so. Each Warrior Armor that has as a spell or effect that takes place upon being attacked, this armor will consider how much artifact mana the armor has remaining on it. Artifact mana for this Warrior Armors may diminish by 1 point per effect, or it may diminish by the mana cost of the spell that the armor casts when the wearer is attacked.
Warlord's Helmet no longer provides +5 Armor versus Order Creatures and -5 Armor versus Chaos creatures. Instead, the wearer's Luck as a Defender will be modified by <0 to 5> where favor may go to the wearer if an Attacker is an Order creature, and the wearer has zero effective luck as a defender versus Chaos Creatures.
Inferno spell now induces a red palette effect on all affected units. The intensity of palette effect increases as the spell reaches it's half way point, and then slowly reduces back to no palette effect.
Freeze, Icy Coffin, Turn to Stone and Petrify will now display graduated palette shading with the spell duration. The target will gradually increase in colorized intensity up until spells halfway duration, and will gradually decrease intensity as the spell reaches completion.
Modification made to 'gs\SPELTOOL5.gs': Spells with repeating effects will now properly allow for targets under the effects of certain "stun" spells (i.e. Freeze, Turn to Stone) to die, where once their health reaches zero the spell effects are removed.
Axe of Annihilation no longer provides +5 Attack versus Order Creatures and -5 Attack versus Chaos creatures. Instead, the wielder's Luck as an Attacker will be increased by a random value '0 to 5' versus Order Creatures, and will have zero effective Luck versus Chaos Creatures (reduced to zero, overriding the Luck stat value).
Staff of Turmoil casts Prismatic Hand instead of Hand of Fate, and Ice Comet instead of Icy Coffin when it casts random spells on Attack.
Aqua Dagger now provides double Attack versus Fire creatures and half Attack versus Water creatures.
Amulet of the Serpent now provides +3 Dexterity.
Potion of Power interval of increase is at 35 turns passed, instead of 70.
Rings of Strength, Wisdom and Dexterity slightly changed. Each ring will give +3 of their respective stat types to start, and will increase the value provided by +3 after turns 35 and 70. Each ring will now effectively yield a stat potion's equivalent, as long as it is worn, but still does not provide the combat abilities that the potions do.
Ring of Power provides +3 Wisdom, Strength and Dexterity and will increase these values by +1 after turns 35 and 70.
Modifications made to 'gs/dlg/intel.gs' and 'gs/player.gs': Spell and artifact knowledge that gets shared between players is now modular between difficulties. Rather than knowledge being shared with both players having a level of "Pact" between them, it goes to mutual Empathy/Trust/Kinship on Easy/Medium/Hard.
Mutual relations of Pact or Devotion will increase the rate of which shared spell and artifact knowledge occurs. Typically, it is every 7th turn, but with Pact it may become every 6th turn, and with Devotion it may occur every 5th turn.
Modifications made to 'gs/dlg/buy_potion.gs': Figured a multiplayer compatible way to have all player computers to communicate properly updates to resources with potions being purchased in such a way now that the types of potions are not necessarily limited: 'processgamemessages' function. This opens up the options for adding additional stat potions, such as the Potion of Luck that was long since created.
Potions of Luck are once again sold by village merchants. 30 crystals and 10 gold per charge provided. Charges come to 2 charges at the start, and max charge increment by 1 charge per 35 turns passed, maximum of 6 charges.
6/8/2020 - Build 3222 On Hard Mode, single player only, the player's opposite faith now comes with reinforcements to their Lord: two heirs.
On Hard mode, single player only, if the player chooses Death, then all other faiths will come with reinforcements to their Lords: two heirs.
AI Lords who have at least one heir, on hard mode, are then recognized with the title of "Supreme" Lord/Lady, or if the AI player is Death.
Removed redundant texts when meeting parties of other faiths that inform you of their "Attitude Toward You:."
Animate Dead will remove all other spell buffs from the target corpse immediately after animating it.
Addition to 'gs/SPELTOOL5.gs': Added and implemented 'fail_mods'. If this is defined within a spell, it will execute 'fail_mods' instead of fizzling out a spell when spell conditions are not met. This won't execute for spells which effect more than a single target.
Modifications to 'gs/dlg/comb_res.gs': Now dynamically displays as a transparent dialog, with matching conditions. Re-arranged resource spoils and artifact spoils. Artifact spoils may now show up to 7 artifact portraits on the results screen now.
Fix made to 'gs/dlg/NEWBUILD5.gs': Corrected the scenario setting references.
Erosion, Rust and Minor Rust may be cast on non-Water units with Water Resistance above 100. Only Water units with 100+ Water Resistance are immune to its effects.
Adjustments made to Water's Hypothermia spell: Water Resistance will now reduce the amount units are penalized in Hit Recovery. 50% water resistance means -5 hit recovery, instead of -10. However, the minimum value these can be reduced are effected by the caster's luck. If a caster has 5 Luck, then the spell effects shall not be reduced to less than 5. They also will not ever provide a bonus, unless caster Luck is somehow negative.
Death Spell, Lower Resistance, modified: Radius is now 1 + 1/5X from being 1/3X, mana reduced to 8 from 10.
Stone Touch spell will now target a unit, instead of cast only on caster. Back fire for this spell only triggers on attacking.
Earthquake spell will now factor target Earth Resistance into how much the affected units attack and hit recoveries are penalized. However, the minimum value these can be reduced are effected by the caster's luck. If a caster has 5 Luck, then the spell effects shall not be reduced to less than 5. They also will not ever provide a bonus, unless caster Luck is somehow negative.
Tremor will now factor target Earth Resistance into how much the affected units attack and hit recoveries are penalized. However, the minimum value these can be reduced are effected by the caster's luck. If a caster has 3 Luck, the spell effects cannot be reduced to less than 3 on the hit and attack recovery penalties.
Animate Dead should now properly return mana or artifact charges when the spell fizzles. Animate Dead spell text updated to inform users that the corpse must not be Undead. Also, Animate Dead will apply a light palette effect to the animated corpse.
Death Touch will no longer insta-kill on failed cast. Also, it will no longer Insta-kill. It will either reduce defender health by up to a quarter of the maximum health, or reduce it to 1. When the effects on attack backfire, the attacker loses up to a quarter health, or is reduced to 1 health.
A target can be instantly reduced to 1 health under certain conditions (i.e. attacker is a champion and level is greater than the target).
Life units may now be the target of this spell, but backfires more frequently than with other faiths, and then some for Life creatures.
Combat.log printout of damage now does more math for you: Shows combined physical and magical damages as a whole number (integer).
5/29/2020 - Build 3221 Fixes made to 'gs/ENC_TOOL5.gs' and 'gs/story5.gs: Fixed broken dialogs for Legends quests as a result of changes/improvements made to dialog windows.
Additions to 'gs/SCENARIO5.gs': 'limit_trained_experience?'. This effectively makes experience caps only for scenario files which have a value set. Without a scenario having this set, default vlaue is 'false' (off). Default scenario, a normal game, has this set to true. Modifications made to relating effective files.
New Marauder quotes added. Also, the phrase "Marauding Party" has been removed from their speech. "Marauding Party" now replaced the party name text for Marauders.
Ray of Hope tweaked. Blindness spell invoked with it's casting and the ray of hope target effect aura seem to be causing conflict that would make neither one happen.
Adjustments made to Balkoth's power.
The AI leader of faith opposite to the player will have a small bonus to their stats.
Balkoth's heirs are now equipped with their Legendary artifacts, to bolster their power.
Visage of Horror will now double the leech percentage of any Death unit, not just Undead. This was done, because Bless, Holy Visit and Turn Undead will each reduce any unit's leech percentage by half. However, only Undead with Visage of Horror can do life stealing.
Correction made to some dungeon army datas.
5/20/2020 - Build 3220 Fixes in code for 'gs/SPELTOOL5.gs': 'pre_mods', 'post_mods', 'invoke_effects', 'missile_effects', 'lightning_effects' and 'repeat_invoke_effects' have all been thoroughly tested, re-tested and correctly implemented.
Sequence of spell effects follows:
1. pre_mods
2. Standard modifications.
3. Invoke / Lightning / Missile 'effects'
4. post_mods
5. repeat_invoke_effects, runs each time for standard repeat modifications.
New additions in 'gs/SPELTOOL5.gs': Added functions and references 'end_repeat_term_spell_mods', 'end_repeat_term_mods', 'end_term_spell_mods', and 'end_term_mods'.
'end_term_spell_mods' executes 'end_term_mods' from spell data, if it exists, and it executes 1 tick after the spell's duration.
'end_repeat_term_spell_mods' executes 'end_repeat_term_mods' from spell data, if it exists, and will trigger it 1 tick after the last standard repeat modification occurs.
Spell data referenced from the spell file, even though it exists in the spell file itself, will have to be referenced externally, as if it did not exist inside of the spell file. For example, spell shorthand code functions define in the file.
(More) Modifications made to 'gs/SPELTOOL5.gs': Re-assembled conditions for spells utilizing repeating modifications.
(More) New additions in 'gs/SPELTOOL5.gs': Added 'casterlink?' and 'repeatondead?', implementing both. When 'casterlink?' is true, the caster must be alive for the effects to proceed. When 'repeatondead?' is true, it will allow effects to continue even if a target is dead.
Fix in 'gs/stroy5.gs': Dialog text fix for when army approaches player for barter.
Adjustment in 'gs/GAMEUTIL5.gs': Chaos Barbarian special building will now provide an experience bonus equal to 2/3 of value required for next level. This experience is in addition to, not merely increasing experience 2/3 of the way to the next level. This may now actually push experiences over into the next level of experience, if you have 1/3 of the experience bar filled for a level up.
Additions to 'gs/GAMEUTIL5.gs': Shorthand codes added to grab reference unit current and next level experience point values.
After combat, Goblins will recover health equal to the average of their health recoveries. Basically, Goblins now in a manner of speaking "feast" upon the corpses from combat victories.
Fix made in 'gs/COMBAT5.gs' regarding regard Siegfried evolution.
Siegfried Evolution will now provide some reduced experience for the new form. Difficulty level will dictate new form experience: old form experience value divided by 5/10/15 (easy/medium/hard).
Yeoman Lord Level 15 experience points divided by 5/10/15 equals Cavalier Lord starting experience.
Cavalier Lord Level 15 experience points divided by 5/10/15 equals Kreuzritter starting experience.
5/14/2020 - Build 3219 Modifications made to 'gs\PLACEDNG5.gs': Original placement level of Great Temples must be level 9 or greater to receive Lord Class rescued prisoners. Conditions must still also include being Hard Mode and Single player game.
Several minor tweaks to dialogs. Added new dialog screen called "Mod Help" which gives the user insightful information about the mod.
Mod Information dialog (accessible through CTRL M hotkey) updated to provide access to special menu options. These special options include: 'Mod Help', 'Console', 'Browse' interface graphics, 'Graphics' of party member roster sprites (requires a party selected), 'Party Info' (requires a party selected), 'Cheat' code menu (originally just CTRL C), 'Hotkey' menu, and Toggle 'Shroud' (single player only).
This menu can only be accessed in Single Player mode.
Hotkey 'C' now displays a brief acknowledgement on screen showing the status of Patery Center Move setting ON or OFF.
5/12/2020 - Build 3218 (MAJOR) Modifications made to 'gs/placedng5.gs': Orc Warlord and Witch Lord in games may receive a Witch and Orc Warrior instead of Beast Rider and Shaman when liberating your Great Temple.
(MAJOR) Modifications made to 'gs/placedng5.gs': On Hard Mode, instead of getting just Champions, you now get Lord Class champions who will be heirs to your primary Lord. This is not true of multiplayer mode. Single player and Hard mode only.
Additional fixes to 'gs/story5.gs': It's really difficult to work with, complex stuff for real. Appears to be resolved.
Further modifications made to expand the utility of the 'usetransdlg?' variable, in that more dialogs styles are affected by what it is set to.
Clicking on an artifact in the Intelligence report window will open an artifact dialog detailing the stats as if you opened it from your own inventory. Artifacts cannot be manipulated from this window. This was something I was wanting to do for a long, long time.
5/9/2020 - Build 3217 Major Modifications made to 'gs/STORY5.gs': In-game dialogs now include "top," "bottom," and "sub-main" texts areas, in addition to renaming existing references for original text areas to "main." Rather than faith attitude and Power Estimates being condensed into the same text area as the "greet" dialogs, they're separate. Additionally, the sub-main text and bottom text appear in the smaller "tooltip" plain text font. The top area dialog font comes in the yellow type variety.
This really goes far to clean up some dialogs and provide extra bits of info.
Dialogs that provide information, dubbed "OK" Dialogs, and Yes/NO Choice dialogs will provide bottom text area hints that inform the player that "Enter for Yes" and "Escape for No" hotkeys may be used. OK dialogs, such that only have one option for closing/dismissing the dialog window, will state that Escape or Enter may be used to dismiss the dialog.
Buttons for most dialog windows vertically moved upwards to allow room for bottom text areas.
This should help with some instances of text spilling over, but it may not help in all instances.
Modifications to 'gs/story5.gs': Both army/dungeon encounter and Building dialogs will use the 'usetransdlg?' from 'gs/scenario/*.gs' file references to determine if the scenario should use translucent dialogs.
5/8/2020 - Build 3216 Additional string references added to 'gs/standard.gs': 'val_string' and 'data_name_string'.
Modifications made to 'gs/SPELTOOL5.gs': Combat log will now reference all targets effected by spells. Additionally, spells which modify the stats of targets will now populate in the log, stating who was effected, the modifier amount, the stat (raw index name) and for how long. The only stats that will not populate and display in the log are real value stats, and terrain cost/delay stats.
Fixes for Quick Silver and Swiftness, re-done. Last fix didn't make it in to the update unfortunately.
(MAJOR) In Single Player on Hard Mode, once again the AI player Lord of Death is always Balkoth; however, he now comes with solid reinforcements. Balkoth is accompanied by an Executioner and Murderer who are his heirs.
Modifications made to 'gs\SCENARIO5.gs': Changes made to entourage starting experiences. No longer "pops" to zero then adds difficulty variable level. Now simply just adds difficulty variable level, and multiplies by two if the entourage unit is a champion. This can safely be done, now that the 'give_unittype_level_exp' will return an experience value for levels exceeding a unit's max (i.e. attempting to set a Champion level above 10, such as 12, it will set experience value to the level 10 value, then multiply this by the remainder, which still makes the unit level 10, but with effectively 3 times the experience needed for level 10).
Modifications made to 'gs\GAMEUTIL5.gs': 'give_mod_level_exp' now simply and directly refers to the 'give_unittype_level_exp' function.
Arrow Hotkeys in combat should be restored. Now, no longer creates issues of spell projectiles moving during paused combat. Arrow hotkeys will be somewhat more limited now in their distances moved, but will behave more smoothly.
(No Longer On Hold) Randomized army setups for "Cave" encounters have their army setups consolidated. With modifications made to 'gs\dungeons.gs' by adding a single consolidated function called 'generate_cave', all Cave encounters simply reference this function instead of each file having a fully listed army setup. Each file will still have to have reference data setup for the different reference index arrays (i.e. FIT_GEN, THF_GEN, WIZ_GEN, etc.). Additionally, the 'generate_cave' function will dynamically handle arrays with difference index ranges, if they are different between files.
Fix made to Staff of Light.
Fixes made to Holy Visit. No longer uses repeat modifiers, but uses an independent repeating function. This way, the spell won't dispel itself after already being in effect, then re-apply effects over again; instead it will dispel a previous Holy Visit spell buff and will restart the spell duration fresh over, as intended.
5/2/2020 - Build 3215 Blizzard and Locust missile flags set. This should help stop the spells from not working in some instances.
Fixes in coding for Quick Silver and Swiftness, again.
Fixes to coding in Feather Sword.
Adjustments made to 'gs\ACTONB5.gs': Extended string length from 300 to 320. Seems to have helped in errors relating to button texts, particularly with extra long spell descrptions (i.e. Feather Sword spell).
5/1/2020 - Build 3214 Modifications made to 'gs/CURSOR5.gs', 'gs/GAMEUTIL5.gs', 'gs/TEXTDICT5.gs': Capital Cities will now show the active spell buffs on them for the owners of the city. Or, if a non-owning player has a Thief within sight radius of the Capital, such player may observe the spell buffs active on that city.
Village Trade can now be incremented by 100s with a right-click of the up/down arrows.
Fixes in coding for Quick Silver and Swiftness.
4/23/2020 - Build 3213 Rolling back some modifications made to dialogs. Things ended up being more complex than initially figured.
Overland spells fixed.
Modifications made to 'gs/dlg/bart_dlg.gs: Added barter values for spells, artifacts and buildings. Additionally, the icon and text placement in barters have been arranged so text is more visible.
Modifications made to 'gs/dlg/INFOPAN5.gs: Some text areas for stats have been adjusted, such that texts will not overlap or spill outside a stat box with regards to health and health recoveries.
Modifications made to 'gs/barters.gs: Adjusting how barter values for resource producing buildings is calculated.
Modifications made to 'gs/CURSOR5.gs: Tooltip over resource producing buildings now displays the building's calculated Barter value, if is a resource producing building.
4/20/2020 - Build 3212 New unit added: Valkyrie Lord.
An extraneous unit reference to the Orc Warlord CHLD1 was removed. This will break previously saved games.
Valkyrie champion may now only obtain Level 10 and levels for the same experience as an Orc Warrior. Water Resistance is now 50, instead of 75, along with other minor stat adjustments.
Modifications made to 'gs/LEVLMODS5.gs': Special Champions as Lords and Leaders have their effect palettes modified.
Frenzy spell now slightly shades target red.
Modifications to 'gs/pal_fx.gs': Added additional palette to references.
Reincarnation all fixed up.
Casting Embrace of Golgoth on friendly units will now permanently mark that unit, coloring the corpse purple (like Raise Shade, Skeleton or Zombie), and will disqualify that corpse from revival or casting a Raise Undead spell on it.
Gift of Life will do a soul check, and fizzle and return mana if it doesn't. Undead units and units with Raise spell buffs cannot be revived. The spell also properly fizzles and returns mana when it detects the target unit doesn't qualify for the spells effects.
Balkoth's Shield will cast Poison on attackers, instead of Golgoth's Gift.
Modifications made to 'gs/COMBAT5.gs': [1] Simple adjustments to checks involving spells and using an array with a 'forall' function. [2] Additionally, damage bonuses for units with blunt type weapons against Skeleton now includes magical damage, instead of just physical damage. [3] Also, Cyclops and Stone Giant have a +10 Crushing Blow bonus, instead of +5.
Modifications made to 'gs/GAMEUTIL5.gs': Several modifications made in regards to the giving experience to a unit based on the units level. The most significant change is if a level value is greater than the maximum attainable level, the the maximum attainable level is cut off the top and the rest is considered a remainder. Therefore, if we're taking a max Level 15 Executioner and the level is being set to 17.50, the Executioner gets experience equal to Level 15, which is 63000, plus an additional 63000 multiplied by (17.50 - 15) 2.5, for a total of 220500 set experience. This modification also prevents issues of experience level value not conforming to unit maximum experience level.
New Life Spell: Grace of the Phoenix. Costs 16 mana and grants a target auto-resurrection powers that the Phoenix has, however it either revives the unit in combat or at the end of combat, and only does so once per casting of the spell. The spell follows the same parameters. This is not a researchable spell and presently no artifact offers this spell.
Balkoth's Scythe may now only stun defenders of equal or greater level, instead of having a vorpal effect. If both the wielder of the Scythe and the defender are the same level, it will temporarily stun the defender instead of killing it.
All Potion artifacts and related spells updated. Artifacts that are potions will now have a boolean set by 'breakable?', where if a Potion spell is cast by a Potion artifact, the artifact will break after it is cast. Additional, non-Potion artifacts can potentially be set (later) to be destroyed upon casting of their spells. What this effectively does for now, is that if a non-Potion artifact suddenly can cast a Potion spell, it will not destroy that artifact.
All transformation spells (i.e. Polymorph Other/Self) can now effectively be dispelled. Rather than their revert functions executing just once, they will execute multiple times and will check to see if the unit still has the spell buff for that transformation. If it does have that spell buff, the spell continues; otherwise the revert function executes in short order.
All transformation spells (i.e. Polymorph Other/Self) updated to have the revert flash warning start with six seconds remaining on the spell duration, instead of four.
Roulette modified. The spell becomes more fixed as the level of the caster increases. Every 4 levels of the caster, the spell minimum increases. The normal range is -1 to +1 is subtracted from the enemy army, meaning a -1 subtraction is actually a bonus. The minimum value increases by 1 for every 4 levels of the caster; so the -1 becomes 0 at Level 4, which means the spell will never benefit the enemy army. At level 8, the minimum of -1 becomes 1; a random value of 1 to 1 is always going to be 1, which means at Level 8, a caster will always negatively impact the enemy army. Still, Roulette effects Order creatures with an additional +1 modifier, such that Order creatures can receive up to -2 stats and will never see a bonus. Only order creatures can ever see -2 stats.
Ghostly Amulet now provides the ability to cast Vampyric Transformation once per day, 3 max charges, recharges one charge per 3 turns. The amulet will not be able to transform a slain unit into one of the Undead if under the effects of a transformation spell (polymorph, et al). The duration of those spells will have to first expire before the unit can be revived and Transformed into the Undead.
Ghostly Amulet will now revive a fallen wearer as a Lich if the Champion's level is 13 or greater. This is typically Special Champions and Lords only. Lich, not Dread Lich. Additionally, Undead Champions cannot be revived through this amulet.
Coding regarding Ghostly Amulet transformation moved from COMBAT5 to GAMEUTIL5. A unit will not transform if expected damage output is greater than the unit's health. Instead, the unit will be allowed to be slain as normal, and will be revived within an expected time window of 6 seconds. This way, the unit may revive if slain through spells instead of only combat damage.
Gamble modified. The spell becomes more fixed as the level of the caster increases. Every 4 levels of the caster, the spell minimum increases. Normal range is -1 to +1 stats added, meaning a -1 addition is actually a penalty. The minimum value is increased by 1 for every 4 levels of the caster; so the -1 becomes 0 at Level 4, which means the spell will never negatively impact the caster's army. At level 8, the minimum -1 becomes a 1; a random value of 1 to 1 is always going to be 1, which means at Level 8, a caster will always positively impact friendly units. Still, Gamble effects Chaos creatures with an additional +1 modifier, such that Chaos creatures can receive up to +2 stats and will never see a penalty to their stats.
Life Stealing Blade will now wait until the 3rd second of combat before invoking Visage of Horror.
Gloves of Quickness will automatically switch to the other available spell if it detects the current Faith of wearer and spell would not be compatible.
Modifications to Life spell "Holy Visit": The health recovery offered by the spell will now process 1 Hp per 1 second of time upon when the spell is cast.
Modifications to Life spells "Heal" and "Cure Wounds": In combat, these spells will no longer heal their amount immediately, but will instead heal targets their respective amounts quickly over a short period of time. No effective change, just makes their combat effects slightly drawn out.
Modifications to Life spells "Heal" and "Cure Wounds": In combat, both spells will allow for up to 200% health. Outside of combat, the spells will fizzle and return mana if a target has current health greater than or equal to maximum health. In combat, if the unit has current health less than or equal to (100+CL)% maximum health, it can be targeted and get healed. A Level 10 caster would mean a unit in combat can be targeted if it has 22/20 health, but if it has 23/20 health it will fizzle and return mana.
Modifications made to 'gs/GAMEUTIL5.gs': Units in combat whose current health exceeds maximum health will degenerate that health in a modular fashion now. Previously, it was every 6 seconds during combat, if a unit had 1 point above maximum health, it would degenerate at a rate of 1 health every 6 seconds until that unit's current health no longer exceeded the maximum health value.
Rate of Degeneration is modular. Base rate of degeneration is 6 seconds of combat time. For every whole amount of current health being 25% above maximum health, the rate is increased by 1 second. Such that, having (25-29)/20 health will mean degeneration rate is 5 seconds. Having (30-34)/20 health will mean degeneration rate is 4 seconds. Having (35-39)/20 health will mean degeneration rate is 3 seconds. The rate of degeneration will never be less than 1 whole second (10 ticks).
Degeneration Value is modular. Base rate of degeneration is 1 point of health. If a unit's maximum health is 20, every 150% of that number in current health, it will increase the degeneration value by 1. (21-29)/20 health means the hp degeneration value is 1 point. (30-39)/20 health means the hp degeneration value is 2 points. (40-49)/20 health means the hp degeneration value is 3 points.
A unit with 80/40 health will degenerate 3 health every 2 seconds. Then that may change to degenerating 2 health every 3 seconds, or 4 seconds as the units health decreases back down to its maximum health value.
The rate of degeneration and the value of degeneration are modular and will adjust as the current health of the unit is adjusted.
Trolls may now exceed maximum health with their natural regeneration. However (if you see above), their values exceeding their maximum will last at most 18 seconds in combat. Their regeneration rate is +3 health every 30 seconds. Their first in-combat regeneration hits at 15 seconds into combat, then at 30 seconds, and then every 30 seconds thereafter (+3 Health at 15 seconds into combat, +3 health at 30 seconds into combat, +3 health at 60 seconds into combat). Uninjured Trolls could have +3 health over maximum at 15 seconds into combat, then have -1 health at 18 seconds into combat, -1 health at 24 seconds into combat, -1 health at 30 seconds into combat, but then also receive +3 health at that 30 second mark, they would go back to +3 over maximum at that point. Their health over maximum would decrease every 6 seconds, but have a +3 boost every 30. So after 30 seconds into combat, Trolls could end up having health over maximum for the better part of a combat encounter if they are never injured.
Wizards whose current mana is greater than twice the value of their maximum mana will degenerate 1 point of mana every 6 seconds. If a wizard has 41/20 mana, it will degenerate 1 mana. If a wizard has 40/20 mana, it will not degenerate any mana. There are only a few ways Wizards can get more mana than their maximum.
Modifications made to 'gs/GAMEUTIL5.gs': Consolidated items (troll regen, dead thief unstealth, health over maximum degeneration) into "combat_repeat_fun."
Legendary Phoenix will now automatically resurrect in combat, granted that the player's army has not been annihilated. The Legendary Phoenix corpse will reset to zero hit points. It will regenerate 1 health every 3 seconds of combat time. Once the Phoenix reaches half of its maximum life in this manner, it may spontaneously resurrect itself. The actual resurrection of the Phoenix occurs on a 30 second counter, so it may be possible the Phoenix will not revive until a full 60 seconds after its corpse regenerates to a qualifying value of health. The Phoenix already automatically resurrects after combats when it was slain. The same circumstances apply, where the Phoenix does not resurrect in combat (or after combat) if the entire party with which the Phoenix resides has been killed.
Possession and Confusion slightly modified. For every 20% health missing from a target, these spells will consider one less level advantage. Such that, a target level 10 would require the caster to be level 12. If the target has 60% health remaining, a Level 10 caster could Possess or Confuse the Level 10 target. Additionally, units with over 100% of their max HP will be credited one additional level. Ergo, a Warrior with 21/20 HP will need a Wizard with 3 Levels over that Warrior to Possess/Confuse it.
New "cheat code" added: "debuff" removes all spell buffs from selected army.
New "cheat code" added: "antivalor" sets health to 10% of maximum.
Modifications made to 'gs/CURSOR5.gs': Thieves in Stealth Mode who are detected will now show a tooltip on that Thief party which player has detected him. It will use a simple 1 Letter for each faith that has detected the Thief party.
Iron Skin fixed to provide proper physical resistance.
Modifications made to 'gs/COMB_RES5.gs': Combat resulting in a capital city defender losing will result in half of the placed initiates becoming unplaced, added to the pool of unplaced initiates. The unplaced city initiates is divided by 4.
Modifications made to 'gs/GAMEUTIL5.gs': Bonus initiates which are achieved by "fame through actions" (combat victories) is now modular with the game difficulty. Fame from actions divided by 50/100/200 (Easy/Med/Hard) instead of a static 50. Therefore on Hard Mode, a player will have to achieve 200 fame from actions to receive bonus +1 initiates.
Modifications made to 'gs/GAMEUTIL5.gs': The base initiates received by player fame value changed to {128 256 512 1024 2048 4096 8192 16384 32768 65536}. Such that, for each value in the table, if the player has more fame than that value, the base initiates that can be expected is +1. With 3000 fame, a player can expect 5 base initiates per city.
Modifications made to 'gs/GAMEUTIL5.gs': The base initiates is now effectively reduced by 1 for ever 70 turns passed. Therefore, on turn 200 with 30000 fame, a player will have base expected (8 - 2) 6 initiates. If a player has only 200 fame on turn 200, he will expect zero base initiates. By turn 700, base initiates per city is eliminated. A player will never receive negative base expected initiates.
3/9/2020 - Build 3211 Fix made to 'gs/barterai.gs': Fixed an error with separating code, where a variable name was made incomplete.
Additions to 'gs/SCENARIO5.gs': Added variable 'usetransdlg?' to be used for quest games. What it presently does is control whether or not a scenario will use the old stone dialogs or the new translucent dialog boxes. Only applies to army meet dialogs relating to 'gs/story5.gs'.
Additions to 'gs/story5.gs': Added some new string variables and boxes, all to be used later, in separating Thief estimate texts and faith attitude texts.
Modifications made to 'gs/COMB_RES5.gs' and 'gs/dlg/cres_dlg.gs': The value of resources for non-Marauder player adjusted to be according to a tenth the value of the resource cost of the unit, times the upkeep value of that unit, times a multiplier of one plus an interval of 35 turns passed. Fame from combat will also increase every 35 turns.
Also, a player who loses combat in his primary capital city will lose 80% of their resources to the attacker, and up to 40% for a non-primary capital city. Additionally, total resources lost from combat (city or otherwise) cannot exceed 80% of the player's treasury. Additionally, a player cannot lose more than 40% of the treasury from a single army being defeated. Also, losing primary capital city will yield 80% reduction in fame, plus the calculation of fame from the fight. The victorious army does not receive any of the 80% fame lost, which simply disappears from the player for losing such an important fight. Losing a Level 3 non-primary capital city will cost 40% of a player's fame; Level 0 non-primary capital costs 10% of a player's fame.
Barbarian Warriors (Beast Rider) now have a higher "shame" penalty for wearing suits of armor. 10 times the Champion Level is how much will be lost each turn, and additional fame lost after combat. Armors include Feather Chainmail, Dragonscale Armor, Obsidian Armor, Archon Armor and additionally Urakian Armor. Helmets, non-Warrior armors, and shields do not cause harm to fame.
Modifications made to 'units/easyunit.gs' and 'gs/dlg/NEWBUILD5.gs': Restructured code in regards to the costs of Orcish units, moving from one script to the other. Some data remains in regards to building level requirement, which may get scrapped if I can manage a work around.
Change made to 'gs/dlg/NEWBUILD5.gs': Orc Warlord and Witch Lord may train Centaurs and Trolls in their respective faith buildings (i.e. Trolls can be Trained from Earth Barracks at the Earth Capital), but only for the one whose Leader is of the two. If you're controlling an Orc Warlord as a leader and overtake Earth's capital, you can make Trolls from that capital's Barracks. Village created buildings function same as before.
Modifications made to 'gs/selarmy2.gs': Organized some data, and did some prep work for getting combat summon spells to have extra room for summons, possibly-maybe.
Modifications to 'gs/barterai.gs': Inserted code to try to help prevent AI players from attempting to barter with a thief, who is in stealth mode, who has been detected. If a Thief on the overland map is in stealth mode, and is detected by the player it could barter with, then it disqualifies that thief party. It may still occur where a Thief is not detected until the final tile, but this may help to prevent trouble.
Modifications to 'gs/primary.gs', 'gs/explore.gs', and 'gs/BRAIN5.gs': Coding has been added to certain AI "brain" scripts to help remove these "brains" if it is determined that the owner of the unit that has a "brain" is not an AI controlled player. So, if you use the spell "Mind Control," which grants permanent ownership of a unit, it will no longer continue to operate with existing AI brains.
Modifications to Lost Soul: Spell now inflicts pure damage of 2X Caster Level plus 2X Target Level. Damage inflicted is direct, non-resistable damage. The Ghost now loops Vampire walking SFX, and makes an impact sound unique to Lost Soul, per intended unmodded LOMSE (though it was never corrected to actually play the impact sound in the unmodded game). Spell is not fatal unless Caster Level > Target Level.
Modifications to Dark Shadow: Spell now inflicts pure damage of 1X Caster Level plus 1X Target Level. Damage inflicted is direct, non-resistable damage. The Ghost now loops Shade walking SFX, and makes an impact sound unique to Dark Shadow, per intended unmodded LOMSE (though it was never corrected to actually play the impact sound in the unmodded game). Spell is not fatal unless Caster Level > Target Level.
Spell descriptions updated for many spells, particularly Mass offensive spells, which informs the player it will not inflict fatal damage (kill target) unless Caster Level > Target Level.
New reference code added to 'gs/GAMEUTIL5.gs': 'level_doremovespellbuff' will work to remove the matching spell id, with consideration for the original caster's level, at or less than, a specified level. Therefore, if this code is executed and its specified level value is 5, then it will remove that spell buff if the original caster was level 5 or less.
Modifications to 'gs/GAMEUTIL5.gs': 'hasspellbuff?', 'spellbufflevel?', and 'doremovespellbuff' now have comments. 'doremovespellbuff' and 'level_doremovespellbuff' will first look to make sure that the unit has the spell buff on it before going further.
All faith overland recovery spells (i.e. Purify Wounds) modified to reset the spell modifier with each casting. What this does is ensures that all military squads who have a unit revived through turn recovery can have the buff re-applied without a full dispel. If, for example, you have a military group of Knights, where 2/3 of the squad is alive (one Knight perished), where you cast First Aid on it one turn and the next turn that third Knight is revived. That third Knight of the group being revived will actually lower the average Health Recovery of the group, since that third unit of the squad does not actually have the First Aid spell buff.
Basically, recovery spells do a self removal (dispel) and re-applies itself so that all units in the party may have the spell buff.
There is one unavoidable pitfall of this (there is not yet known a way to fix this), is that if you have cast it on Turn 5, and the spell lasts for 3 turns, any re-cast after the spells original cast won't reset the turn count. Ergo, a re-cast on turn 7 won't push the spell expiration to turn 10; it will still be turn 8.
2/29/2020 - Build 3210 Gift of Life spell data and effects updated and modified. Gift of Life will now convey 6 seconds of physical combat invulnerability (100% melee and ranged attack resistance). Additionally, Gift of Life when cast on a non-deceased target can receive health beyond its maximum, but only up to 1X Caster level additional points. Ergo, if a Level 15 caster targets a friendly Champion with 20 maximum health, then that unit can be healed up to 15 points over 20, for a total of 35 current health. Additionally, the spell has been fixed to adjust the location and reset movement if the target is deceased unit upon revival. There was an issue with units revived by this spell being invulnerable until they moved off of the tile they were revived on.
Entangle may no longer effect water based units, unless they can also walk over land.
Meteor Shower will now set ale upkeep of units in the affected army by [Caster Level/3], instead of merely doubling the ale upkeep.
Modifications made to 'gs/SCENARIO5.gs': Made changes in how coding is laid out for he player's entourage army in the case of Balkoth being Lord. Also, setting up code to optimize transformed leaders (i.e. getting Dread Lich as a Lord, Balkoth as a Lord, Witch Lord, Siegfried, Orc Warlord etc.).
Modifications made to 'gs/dlg/NEWBUILD5.gs' and 'gs/sel_bldg.gs': Thieves have another Thiefly ability!
Players who have an army containing a Thief within sight radius plus 2 tiles of an unoccupied building (Village, Barracks, Guild, Tower, etc.; not a City or Great Temple), may now observe the details of that building.
Players who are not in proper ownership (i.e. also owns the Capital City or Village from which the building serves) will not be able to access the up/down arrows or the "OK" button when observing a unit's build page.
Buttons for building actions will be on display, however, if the building is not controlled by the player viewing the building, these buttons will perform no actions.
Also, players who have ownership of the building may observe the full information of buildings, including Great Temple, but may not have full actions available (i.e. you still cannot train/hire units if you are not the owner of the parent building, which would either be the Capital City or Village).
Additional functions added to 'gs/ARTFTOOL5.gs': 'restore_value_mana', 'restore_percent_mana', 'restore_percent_health' and 'restore_value_health'. These are shorthand codes which will execute mana/health restoration based upon the value placed before each define function. Neither will execute if the unit has more current mana/health than maximum. Additionally, these new shorthand codes replace all previous types used in artifacts. Typically used for artifact pre-combat and post-combat procedures, where an artifact would replenish full, half or partial health or mana (i.e. Energy Stone).
Modifications made to Amulet of Poison. Amulet will degenerate health of wearer 3 HP per 18 seconds, now includes Death champions; but Life champions lose 1 health per seconds; health cannot be reduced to zero in this way. Life champions additionally suffer -50% Death Resistance. Chance to poison defenders is 66%, half in ranged combat, half if wearer is Life. Chance to poison attackers is 20%, half in ranged combat, half if wearer is Life. 25% chance to perform a Vampyric attack (one out of four probability), for randomized zero to quarter damage inflicted (one eighth if ranged). Dealing 4 non-magical melee damage would mean 0 to 1 health restored; dealing 8 non-magical ranged damage would mean 0 to 1 health restored. Before and After combat, the wearer replenishes 3 health; Life champions will instead replenish 1 health in this way.
Crusader Blade and Wave Blade will double their chances of life stealing when the attacker has half health or less remaining.
Modifications made to 'gs/COMBAT5.gs': Added additional dictionary references for the same data such as 'attacker_maximum_hit_points' is now a reference that simply links to 'attacker_maximum_health'. This gives modders additional ways to reference combat data. Additional expanded references also applied to attacker/defender unit type, mana points and experience points.
Modifications made to 'gs/COMBAT5.gs': Added additional dictionary references to find percentage of health for attackers and defenders. Returns the value as a whole integer number 0-100.
Modifications made to 'gs/COMBAT5.gs': Added additional ways to reference the attacker and defender unit. No real application implemented at this time.
Modifications made to 'gs/dlg/PANELS5.gs' and 'gs/textdict5.gs': Added verbiage to 'gs/textdict5.gs'. This verbiage is used in 'gs/dlg/PANELS5.gs' in how it relates to the 'ally_warning' dialog box. The 'ally_warning' now displays the effective current owner's name (i.e. Air, Chaos, Death... et al), as well as dynamically handles the text in regards to the political relations to the owning player. Additionally, there is now text displaying that provides Hotkey tips: 'Escape' pushes the 'No' option and 'Enter' pushes the 'Yes' option. Text either shows that the current relations are considered "favorable" or "contentious" with the current owner of the building.
2/2/2020 - Build 3209 Modifications made to 'gs/turnai/produce.gs': The function '/build_legendary_creature?' will now check to see if that AI controlled player has a living Legendary creature, and if it does, it will not produce a second Legendary. This is basically the same check that occurs for human players attempting to build a second Legendary creature, where if one is living on the map, another one cannot be produced. This check is for AI building of Legendaries.
Modifications made to 'gs/SCENARIO5.gs' and 'gs/scenario/default.gs': Implemented a scenario check "max_legendary_creatures?" where it will check to see how many Legendary creatures are allowed per faith. This is used in 'gs/turnai/produce.gs' directly to check current scenario configuration with what the AI can build.
Modifications made to 'gs/turnai/mercs.gs': The 'mercenary_invasion' function is now handled a little more dynamically as far as calculations go, based on current turn and difficulty. On Hard Mode, a Mercenary Invasion is more likely to happen earlier on. This may result in AI on AI warfare early on, which can result in AI player elimination.
Additions to 'gs/spell_tables.gs': Added a table for listing certain spells. Different tables include: 'physical_spell_list', 'sabre_spell_list', 'move_spell_list', 'summon_spell_list', and 'potion_spell_list'. Not yet fully implemented, but added for now.
New Chaos Spell added: Bolt of Fury. Launches a projectile which varies by turn number, which determines the effective spell faith projectile and damage. Similar to a "Winds of Change" type spell, but instead with an attack spell. The faith effective damage and type is randomized by turn. Costs 2 mana, does same basic damages as the standard bolt spells, but the projectiles travel slower and will damage any unit in their path, sometimes effecting the same unit in combat more than once. No radius of effect with this spell.
The Maiden Spear now casts Bolt of Fury, instead of Multi Shot. Limit 1 cast per turn, 3 max charges, recharges 1 charge per 3 turns. The Maiden Spear also provides +1/5X stats, instead of +1/4X stats, except Attack Speed is now +1/3X, and provides Luck at +1/5X. Each stat, except for Luck, will always provide at least +1. The Maiden Spear invokes Icy Coffin at a new rage of 1% + [Attacker Level]/3, before Luck. In ranged attack, Maiden Spear will provide the ability to perform a Multi Shot at a base rate of 10%, only improves with Luck.
Modifications made to 'gs/COMBAT5.gs' and 'gs/GAMEUTIL5.gs': Temporary combat modifiers should get better removed, especially as they relate to transformation spells and their palette flashing effects nearing the end of spell duration. In some cases, nearing end of spell, if a player auto-calcs the palette effect may remain permanent. Now, it should no longer last more than another combat encounter.
Modifications made to 'gs/SCENARIO5.gs': Balkoth is no longer the exclusive Lord of Death on Hard Mode, though Balkoth is mathematically the Lord 50% of the time. However, whomever does spawn as the Lord of Death (Hard mode only) will start with a Death Legendary Artifact.
Modifications made to 'gs/BRAIN5.gs': Changed how difficulty-based equations layed out, no effective change.
Modifications made to 'gs/PLACEDNG5.gs': The 'monstergenerator' procedure now adjusted for each difficulty, regarding the turn threshold for army levels as well as maximum marauder armies.
Drowning spell will now play a sound effect for each moment damage is inflicted.
Modifications made to 'gs/MAKEARMY5.gs': Potions generated for Marauders in encounters have their charges adjusted by difficulty level. These adjustments will increase difficulty of in-combat fights, as well as greater rewards with unused potions granted as spoils.
Potions of Strength, Dexterity and Wisdom will have 3/6/9 charges (easy/medium/hard).
Potion of Resistance will have 10/20/30 charges.
Potion of Power will have 2/4/6 charges.
Potion of Health will have 12/18/24 charges.
Potion of Mana will have 8/12/16 charges.
Dungeons below and equal to level 7/6/5 by difficulty, will have chances cut in half to generate a potion for champions. Ergo, Dungeons of Level 7 and less have half their normal chance to generate stat boosting potions or health/mana potion.
Potion of Rejuvenation spell effects fixed.
Modifications to 'gs/dlg/bart_dlg.gs': The left and right scrolling buttons will now advance cycle by a factor of four, instead of two. This will allow a player to scroll through units, spells, artifacts and resource buildings twice as fast.
The Spectral Sword will now invoke the Sabre Spell after 3 seconds into combat, instead of 1 second.
Gloves of Quickness will invoke its selected spell after 3 seconds into combat, up from 2 seconds.
Staff of Light will invoke Holy Visit at the 3 second mark, instead of 1 second after the start of combat.
Noble Crown will invoke its selected spell after 3 seconds into combat, instead of 1 second.
Ring of Luck will invoke Trick 3 seconds after the start of combat, instead of 1 second.
Modifications to 'gs/dlg/bart_dlg.gs': If a unit is a legendary creature or designated as a special champion, only the controlling player has the option to offer that unit for trade. A player who does not have possession will be unable to put it into barter.
If Earth controls a Legendary Worm, and you (Fire) enter into barter with Earth, then adding the Legendary Worm into a trade is not possible for you (Fire).
Likewise, another player (Earth) cannot put your Legendary Dragon into barter.
Player A cannot request Player B's Legendary Creature or Special Champions; but each player may offer their own units in a trade (i.e. Earth offering Legendary Worm to Fire for 5000 gold).
All Enchant Weapon Spells (Sabre Spells) modified to effect any unit within radius of the caster, if the caster is NOT a champion (i.e. creature). Additionally...
Non-Champion caster will have spell radius effect of Level / 3, max of 3 tiles; Champions unchanged with Level / 5, max of 3 tiles. I.E. A Level 5 Ogre will have 1 radius of effect, and a Level 8 Pegasus Rider will have 2 radius of effect.
Non-friendly units will not have their magic resistances effected by these spells.
Friendly Units in radius beyond the caster will receive half resistance, instead of a set 10 resistance. Effective change is +2.
Friendly Creatures of the same faith as the sabre spell will receive double the effective resistance bonus (50 for caster, 25 for units in radius).
Friendly Creatures of the same faith as the sabre spell, beyond the caster, will instead receive +2 Attack (whereas any other nearby friendly unit receives +1 Attack).
Pegasus Riders, who can self cast Holy Sabre when attacking, will now effect nearby enemies with these changes.
Creatures who cast spells on attack or being attacked have reduced chances of casting spells when the attacker or defender have respective faith sabre spells active (i.e. Golemn versus any attacker, where Golem has Diamond Sabre or when the attacker has Diamond Sabre, reduced chance a Golemn to have Stone Skin cast on him).
Adjustments made to 'gs/combat5.gs': Shortened combat conditions with the use of a collective list and 'forall' operation. No effective changes in how things work.
Modifications to 'gs/dlg/THIEFdlg5.gs: Execution of POW will instead provide a quarter of the POW experience to the capturing party, down from half. This amount is then divided equally among units in the party.
Modifications to 'gs/dlg/THIEFdlg5.gs: Freeing a POW will now bestow experience to the holding party equal to 1/20 of the captured party's experience value.
12/15/2019 - Build 3208 [IMPORTANT] Fix made to 'gs/COMBAT5.gs' and 'gs/logs/damage.gs': There were strange errors occurring in combat, with the misapplication of combat abilities such as Biting Attacks, Shocking Attacks or Burning Attacks where they did not belong. Additionally, the use of the "total_damage" variable is less needed.
[IMPORTANT] Fix made to 'gs/logs/damage.gs': Tied to the 'gs/COMBAT5.gs' fix above, the reason combat magic damages were not properly applying is because this document (for generating logs) was using a ill-conceived method to properly display magical damages in the log. This has been rectified. This is also the reason the "total_damage" variable is less needed.
[IMPORTANT] Fix made to 'gs/GAMEUTIL5.gs' with the 'handle_artifacts_by_turn' function: There were some artifacts that were not ever recharging due to an error in detecting invisible artifact types. This error would cause some artifacts (which could be different artifacts between games) to never recharge properly.
Modification made to 'gs/cursor5.gs': In multi-level encounter combat, the doorway to the second level will now display the Level Strength of the dungeons of the connected level.
Modification made to 'gs/dlg/thiefdlg5.gs': Executing a Prisoner will now provide experience points to the party holding the prisoner. Experience conferred is equal to half of the Prisoner's Experience value, and is divided evenly among all units in the holding party.
Modification made to 'gs/dlg/PLACEDNG5.gs': Dialog following victory in a Tower encounter will now specify the champion rescued, rather than a generic message.
Changes made to how creatures invoke spells in combat. Minor equation changes. Ogres will be more likely to go into Blind Rage versus tougher opponents. Stags and Spirit Warriors can potentially cast Heroic Demise on themselves if their spell conditions trigger and they have life less than or equal to their current level. This also eliminates any further casting of spells. Creatures summoned into combat always have a 50% less likely change of casting spells on attacking or defending. Ogre will not cast Blind Rage on himself if the unit is under the effects of Polymorph spells (such that Leaders won't Blind Rage themselves into their demise).
Ogres who cast Chaos Sabre on themselves will effect nearby enemy units. This is similar to how the Golem works. They cast Chaos Sabre on themselves, effects nearby enemies, and thereby the Ogre resists the attacks of nearby melee units even better on account of Chaos Resistance being so high. The zero armor of Blind Rage will be less of an issue versus enemies under the effects of Chaos Sabre. Also, verse most defenders, Chaos Resistance is on the weaker end, thus empowering the Ogre more against defenders with high melee resistance.
Ring of Concentration charges increased to 6, from 3. Neutralize limited to 2 casts per turn. Recharges 3 charges on every third turn. Provides +8 health, +4 health recovery, +4 dexterity, +4 sight, +4 movement and Luck to any champion, and +4 improved attack speed and hit recovery for Order champions.
Scouts now receive an additional +2 Movement and +1 Sight Radius with each level up.
11/28/2019 - Build 3207 Legendary Creature counter will now refresh for all Great Temples owned by each player when the turn arrives. Previously, the counter for any faiths Great Temple would only get reset when it became that faith's turn. So, as the human player, if you own the Great Temple of Life it will reset the counter for the Life Legendary Creature when it's your turn. So before, if a player was eliminated, i.e. Life, then the Legendary creature counter for Life would never get reset. This also means if a Marauder party takes a great temple before it turns to turn 140, that faith's Legendary Creature counter will not get reset.
Additionally, the Lich will now follow the limitation of one on the map at a time.
Various artifacts which provide regeneration will no longer reduce a wielder's health to the maximum when it has over the maximum. An example: having a Lich casting Leeches but wearing an Energy Stone.
Demon's Torch now provides +4 Luck and casts Demonic Transformation up to twice per turn with 3 charges. Also the range attack and missile range bonuses modified slightly.
Mage Tower Library Research is now improved by the addition of the following factors: [Wizard Wisdom / 10] and [Wizard Luck]. If two Wizards are researching with 28 wisdom and 22 wisdom, these will add together to 50, and contribute an additional 5 days of research time. This remainder portion will add together before it is reduced to an integer value (without decimal values).
Modifications to 'gs/SCENARIO5.gs': AI players opposite in faith to Human players who have a Wizard for a Lord will now have their Library Buildings appropriately upgraded to the same level as the Wizard's Tower.
Modification made to 'gs/dlg/riscsys.gs': The initiates expected will now display the number of turns left (out of 7) before the new initiates will come.
Scroll of Diplomacy will now properly update relations between faiths and the player using the scroll, immediately.
Modifications made to ['gs/player.gs' and 'gs/turn_ai.gs']: Units owned by AI Controlled players will be endowed with extra experience every 7th turn, instead of every turn.
AI Controlled Armies would receive a fixed value experience bonus per turn, in the original game. Now, this has been adjusted to every 7 turns, and the effective value increased. The amount of experience endowed is 100/200/300 by difficulty, plus current unit's Wisdom, then multiplied by 2 for Champions.
Additionally, AI Controlled buildings at each city will boost in their conferred experience as well (new thing); the amount added in this manner to buildings is 10 exp per turn number (turn 140 confers +1400 experience).
Modifications to 'gs/SCENARIO5.gs': AI Controlled faiths opposite to the human player, as well as Death, will start with a variable level Capital city and the unit production building that corresponds to class of the Leader. On Easy mode, Capital and building corresponding to the leader's class will be Level 1 for the player's opposite faith and Death. On Medium, Level 2; on Hard, Level 3.
Modifications to 'gs/SCENARIO5.gs': AI unit production buildings starting experience changed. The building corresponding to the Class of the Faith's Leader will receive 1/10th the experience that the Lord starts with plus 525. The other buildings will receive [500 + (1000/2000/3000 by difficulty), or half that value if the AI faith does not start with a Great Temple, plus 25].
Easy Mode will yield about 1785 experience to the primary building. Up to 1525 experience for the other buildings.
Medium Mode will yield about 3825 experience to the primary building. Up to 2525 experience for the other buildings.
Hard Mode will yield about 6825 experience to the primary building. Up to 3525 experience for the other buildings.
Modifications to 'gs/SCENARIO5.gs': Human players will start with 0/1/2 followers available in their Capital at the start of a new game (Easy/Medium/Hard difficulty).
11/17/2019 - Build 3206 Modification made to 'gs/scenario5.gs': The Sacred Knight, aka Lancelot, will no longer spawn as a possible AI Controlled Lord.
AI Controlled players, who are active with their Great Temples pre-liberated, will once again spawn with Legendary Creatures. However different from before, the Legendary Creatures an AI player starts with will now work as an active body guard to the Leader. In multiplayer games, AI players will not spawn with Legendary Creatures.
Modifications made to ['gs/dlg/NEWBUILD5.gs' 'gs/SCENARIO5.gs' 'gs/scenario/default.gs']: In 'gs/SCENARIO5.gs' a new reference for scenarios 'legendary_refresh?' which will be filled with an integer value relating to turns passed. Also 'legendary_counter?' which will be filled with a integer value, which will control how many of a particular Legendary creature can exist. Both reference values are designed with the allowance of changing how many times a Legendary creature from any particular faith can be summoned. The limit of allowing only one legendary of a particular faith existing on the map of one time will remain. A Legendary creature may be summoned once, plus one additional time for every 140 turns. This will allow for players to summon one, even if the AI had previously summoned one. Water Legendary creatures are exempt from the counter and refresh intervals, however there is a limitation of how many that can be in play.
Except for Arachnids, only one Legendary Creature may exist on the map at one time, regardless of who owns it. If, for example, Life summons and controls a Legendary Air Dragon, then no other player can summon that Legendary Air Dragon. If that Legendary is dead, and no other Legendary of that type exists, then it can be summoned again after passing turns divisible by 140 (140, 280, 420, etc.).
Each player may produce as many as Six Arachnids, allowing up to 42 to exist on the map.
If a previously loaded saved game is already passed a turn divisible by 140, it will not count towards refreshing the ability to summon it.
Fix made to 'gs/COMBAT5.gs': Fixed an issue with dispensing additional combat damage against Skeletons from units who wield blunt-type weapons (i.e. Rock Hurlers ranged attack, Elven Staffmen and Elven Riders, etc.).
Modifications made to 'gs/COMBAT5.gs': Added 'leech_pct' variable, to control the percentage of leeching attacks. Setting variable to 100 through an artifact would guarantee a 1:1 ratio of damage dealt to life replenished. Capped at 100%.
Modifications made to 'gs/COMBAT5.gs': Skeletons, Zombies and Shades under the effects of Visage of Horror activate their ability to Life Steal. Default percent is 25%, but Visage of Horror will double life steal percentage for all undead units. The amount they effectively steal in life is randomized between 0 and the percentage of damage inflicted. If a Skeleton deals 2 damage, '0 to 1' health restored. If a Zombie deals 4 damage, '0 to 2' health restored.
Life Steal cannot be performed against Undead units.
Life Steal only applies to physical combat damage, not any magical combat damage.
Ranged attacks steal 50% less life from Defenders.
Any Attacker will steal 50% less life from Defenders under the effects of "Bless."
Any Attacker will steal 50% less life from Defenders under the effects of "Holy Visit."
Attackers under the effects of "Turn Undead" will steal 50% less life from defenders.
Undead Attackers under the effects of "Unturn Undead" double their Life Steal percentage. Undead units can only get this buff if they fell under the effects of Turn Undead first, and the spell is reversed with Unturn Undead (rather narrow circumstances).
'Visage of Horror', 'Bless', 'Holy Visit' and 'Turn Undead' modified: These spells will not slow the movement of creatures unless the Caster's Level divided by 2 is greater than or equal to the Target Affected unit's level. Such as, a Level 9 Enchantress can reduce combat speed of Level 4 Skeletons, but cannot slow down Level 5 Skeletons with Bless, Holy Visit or Turn Undead. A Level 10 Enchantress can slow down Undead units up to level 5 with any of these spells. The other effects of these spells will effect
Turn Undead still requires the caster to be at least 2 Levels above an Undead unit to be able to reduce Health by 50%, Attack by 2 and Life Resistance by 50.
Turn Undead will credit the caster +2 levels when calculating a combat speed reduction against Undead enemy targets. A Level 10 caster will be able to reduce combat speed of Undead enemies up to level 6. A Level 15 caster will be able to slow down enemy Undead units up to Level 8 (Vampires).
Modifications and additions made to 'gs/textdict5.gs': Fixed an issue with Chaos opening dialog story, where it would cause the game to crash on Easy or Medium modes. Also, text added to this document in regards to player feedback on trying to summon Legendary Creatures. Generally all opening dialog stories have been shortened on easy and medium modes.
Encounter setups for Cave encounters have now been fixed and will properly randomize champions of different faiths. Previously, the randomization was never taking place and a set number was always picked.
11/4/2019 - Build 3205 Modifications made to ['gs/dlg/NEWBUILD5.gs' 'gs/SCENARIO5.gs' 'gs/scenario/default.gs']: The enforced maximum unit types, maximum units and minimum units have been moved to 'gs/scenario/default.gs'. Also, new variables added to each document for assign and reference purposes. If they are not actively defined, such as with Legends of Urak scenario setups in the 'scenario' folder, they will be set to much larger numbers (i.e. 900).
Modifications made to ['gs/dlg/NEWBUILD5.gs' 'gs/SCENARIO5.gs' 'gs/scenario/default.gs']: Localized control of training of "Wild Men" units for Orc Warlord and Witch. Still elusive, is getting the recognition of the leaders being modified at the startup (Building Dialogs don't seem to recognize the change in unit type at launch).
Modifications made to ['gs/SCENARIO5.gs' 'gs/COMBAT5.gs' 'gs/scenario/default.gs']: Localized control of Yeoman/Cavalier/Kruezritter evolution in non-legends scenario games. Combat5 looks to see if evolution is permitted, and Default scenario allows it. So, Yeoman/Cavalier/Kruezritter will still evolve to their respective levels.
Modifications made to ['gs/SCENARIO5.gs']: Different difficulties will provide variations of City Guards and Temple Guards for AI. Hard Mode will yield larger armies with greater strength, the same is somewhat true for medium mode, and easy mode is mostly unchanged.
New code added to 'gs/GAMEUTIL5.gs': 'give_mod_level_exp', which allows for modular levels and more reflects the games original "give_level_exp" function in certain documents. So for example, inserting 4.5 for a level will now set the experience to the unit to be level 4, with half experience to level 5.
Modifications made to 'gs/SCENARIO5.gs': Added new scenario references, such as '/body_guard?', which is used to determined if a scenario will add additional body guards to AI lord starting parties.
Modifications made to 'gs/SCENARIO5.gs': Capital Guards and Great Temple Guards adjusted/increased, depending on difficulty.
Modifications made to 'gs/SCENARIO5.gs': AI Faith starting Leaders now have a list of additional increased body guards. Their AI is set to use the "bodyguard_brain" AI scripts, meaning the AI will try to keep them in the main party with the Lord and will not likely trade them except when they're offered to a player.
Modifications made to 'gs/SCENARIO5.gs': AI Controlled players will receive knowledge of spells with research values less than or equal to: 32 (Warrior), 64 (Thief), 96 (Wizard) plus an additional 8 for Medium difficulty and 16 for Hard difficulty. On Hard Mode, AI controlled players with a Warrior for a leader will have spell knowledge for spells of their own faith with research values less than or equal to 48. 80 for Thieves under these conditions. 112 for Wizards under these conditions.
3/15/2018 - Build 3204 Fix made to 'gs/COMBAT5.gs': Total damage amounts were not properly being combined in the end resulting damages. Used new variable: 'total_damage' to dump at the end to properly combine and handle final combat damages.
Also to note is that Vampyric Life Stealing does not steal life for damage inflicted as magical damage.
Undead units (Death creatures) can no longer steal life from other undead (i.e. Vampire lifestealing from Zombies).
Desperation bonuses no longer added to physical combat abilities when the attacker is dead. Before, the final projectile of a Thief who dies after launching his final strike usually proved to be deadly as a final gambit. So now, the final ranged blow of a slain Thief is no longer benefiting the dead more so than the living.
Many equations adjusted in syntax in 'gs/combat5.gs', without effective changes to their function.
2/19/2018 - Build 3203 Staff of the Unholy on-attack invoke of Leeches fixed. Was missing part of the parameters.
2/19/2018 - Build 3202 (yes, 3201 was skipped, as a buffer)
New variables in 'gs/combat5.gs'. These new variables are to more dynamically control what percentage of magic damage a unit does. The range will be from 0 to 100 percent. So, rather than having a static value of 50% magic damage for certain creatures (i.e. Fire/Water/Air Elementals).
Multiple Sabre spells can now exist simultaneously, and units with a natural magical attack (i.e. Fire Warriors) can benefit from Sabre Spells as well. However, if a Fire Warrior has Lava Sabre cast upon him, his 20% Fire Damage just gets bumped up to 66%. If it is the Lawful Sabre on the Fire Warrior, Order and Fire magic damage, plus the physical melee damage, are all inflicted. When stacking multiple magic damage types in combat, it mainly just divides the magic damage between each other and mostly leaving the physical aspects in tact. So with each sabre spell added to the mix, each converting 66% physical damage to magical: the 66% portions will be combined then divided evenly. Ergo, two sabre spells will translate into physical damage being converted to 33% of one, and 33% of the other, maintaining a 66% conversion. Dryads in ranged combat, who normally will do 75% life damage and 25%, will instead do 70.5 magic damage (half Life damage, half other) and 29.5% physical.
Shield of Balkoth casting Golgoth's Gift on being attacked corrected, and now includes some proper checks to avoid repeated fizzle sounds.
12/27/2017 - Build 3200 Modifications made to the infectious spreading of Minor Rust, Pixies and Erosion. If the accompanying units within a party are less than 2X of the level of the original target for the spell, the spells effects will spread to the accompanying units. For example, if a Level 5 Ogre is the target of Erosion being cast, any unit in his party (at the beginning of the next turn or whenever a unit joins/leaves the party) that has a level less than (but not including) 10 will become infected. Maximizing infection means targeting units level 8 or more. For Pixies and Water Elementals to cast their spells on attack in combat gets more challenging with the higher level defender they attack.
Crown of Kings may now be commanded to cast Blessed Armor once again. Blessed Armor was going to be made an auto-cast spell for combat, but it was determined that Blessed Armor could be helpful versus enemy Death units such as Vampires or Lich in lowering their armor and Life Resistance. The artifact will now recharge 3 charges upon every third turn.
Fire Spell 'Explode' will now consider the target Fire Creature's maximum health instead of current health when inflicting damage to nearby enemies. Additionally, damage inflicted by Explode based on the health of the fire creature extends to 5 tiles from the Fire creature and will do at least 1.25 damage (reduces to 1), then consider fire resistances. Within one tile, 1/2 Fire Creature's Maximum Health converted to damage inflicted by Explode. Each tile beyond the first, up to five tiles, will be halved. 1/2, 1/4, 1/8, 1/16, 1/32 Fire Creature's maximum health by tile. Hypothetically, if a Fire creature has 96 health, units five tiles out will take 3 damage. If a Fire creature has less than 32 health, units at five tiles out will always experience at least 1.25 Fire damage (reduces to 1), unless resistance reduces it below 1 point at which point it reduces to zero. The 1.25 basically requires a unit have over 20% resistance to avoid taking damage (having 20% fire resistance reduces 1.25 to 1.0, which means at least 1 damage is done).
Gloves of Quickness should once again be providing automatic Swiftness/Quickness spell (depending which is active as the primary spell).
6/4/2017 - Build 3199 Gloves of Quickness fixed to provide the Dexterity bonus it should have been receiving. Also, these gloves will self invoke the spell for the first two combat encounters, instead of just one. Also, the automatic invocation is delayed an additional 1 second from the start of combat, now at 2 seconds after the start.
Air Sprites will now once again invoke Pixies on attack, as they should be.
Infectious properties of Pixies, Minor Rust and Erosion modified. These spells will continue to spread to other units where an infected unit is a party member (unchanged). Erosion will now reduce to zero armor, instead of 1; Minor Rust can now reduce Water Resistance to -150 (from -100); Pixies will effectively work the same, but the spell will check every turn if the unit's sight is below 1, and then set it to 1 if it is less than 1. Erosion and Minor Rust will do the same, where each turn if the unit is detected to have less than the amount it can be reduced to, it will be set to that amount. Also, even though Sight Radius may read 0 or less, Sight Radius will always be at least one in real time on the overland map.
5/8/2017 - Build 3198 All artifacts updated to include and utilize "category" dictionary reference.
Quest artifacts now include dictionary reference: '/questonly? true def'. This reference is looked at from the Lord Editor. If the game see's that this dictionary reference is known and defined, it will then pull that info.
The Lord Editor will no longer display Quest Only artifacts.
The Lord Editor has been fixed to no longer attempt to display data beyond the last known artifact. The last scroll that should be available is the "Scroll of Shaken."
Erosion can now be cast on certain units. Erosion will have no effect on units with 100 Water resistance or more.
In combat, equations for Creatures which invoke spells on Attack/Defend modified. The order by which equations generally go: Attacker/Defender LEVEL, LUCK, DAMAGE CHECK (damage less than one, or greaterthan or equal to 1; whichever applies), Attacker/Defender LEVEL DIFFERENCE, MISSILE CHECK (if applicable), ANYTHING EXTRA (if applicable), and lastly Attacker/Defender HEALTH PROPORTIONS/PERCENTAGES. So, the Base chance is now the attacker/defender level instead of a static number.
> In instances of an attacker casting an offensive spell effecting another unit (Water elemental invoking Minor Rust), chances will be... doubled if no damage is inflicted on a defender, and reduced as the defender health decreases and chances will be boosted as the attacker health decreases.
> In instances of an attacker casting a defensive spell effecting itself (Air Elementals invoking Swiftness), chances will be... doubled if damage is inflicted by the attacker, and reduced as the defender health decreases and increases as the attacker health decreases.
> In the instances of a defender invoking a defensive spell (Pegasus invoking Blessed Armor), chances will be... doubled if damage is inflicted, and chances will boosted as the defender health decreases and reduced as the attacker health decreases.
> Shades, who invoke Poison on defenders, have their chance to invoke Poison doubled if no damage is inflicted for the Attack Made. Previously, a Shade had a base chance of 10% to invoke Poison. Shades are Level 5, so when they do not inflict combat damage, their chance to Poison defenders is better, or at least the same as it used to be. The chance for a Shade to Poison a defender is halved if the attack is by ranged combat. Basically, a Shade inflicting no damage in ranged combat has the same chance as a Shade inflicting damage in melee combat; a Shade's best chance to invoke Poison is when it does not inflict damage in melee combat.
In combat, Ogre's on-hit casting of Blind Rage or Shimmering Veil adjusted. Base chance is now the defender level (previously 10) and will now consider proportions of attacker and defender health in boosting/reducing chances. If the Ogre receives damage, this will double the base chance (after Luck). If the attacker is opposite in faith to the Ogre (Order), the chance is doubled. Then the difference in level between the Ogre and the Attacker is factored: Attacker Level minus Ogre's Level. If the attack is ranged based, it reduces the equation. If the Ogre has a Blind Rage buff, the chance doubles. If the Ogre has Shimmering Veil, the chance doubles. Last part of the equation is modified by health proportions of the attacker and defender. The Ogre will benefit from each instance of Shimmering Veil, where the spell resets its duration and applies bonuses normally (including the 'creature_hp_bonus'). Blind Rage never gets invoked if the attacker level is less than the Ogre, or if the attack was ranged based, or if an Ogre has Shimmering Veil cast on it. This stands to mean that Blind Rage only happens in melee against an attacker who is higher in level than the Ogre.
Changes to 'gs/dlg/NEWBUILD5.gs': Colorized texts in buildings can now be "decolorized" for easier viewing by clicking the text area.
Changes to 'gs/GAMEUTIL5.gs' with additional variables used to calculated expected followers outside of the actual 'initiate_arrival_equation' as found in 'gs/initiate.gs'. And as a result of these variables adde to 'gs/GAMEUTIL5.gs', some of the lines of the 'initiate_arrival_equation' in 'gs/initiate.gs' were changed, so that the variables in 'gs/GAMEUTIL5.gs' also actually control more of the calculations outside of the 'initiate_arrival_equation'. This means if future changes to how fame and fame acquired through actions effect the calculations of how (extra) followers are determined, the changes would have to be to the new variables in 'gs/GAMEUTIL5.gs' and not in 'gs/initiate.gs'.
<< Base initiates acquired each turn are determined by the Level of the Capital, for each capital >>
<< A player's current fame value can add initiates, but in order to receive this "extra" initiates you have to own a capital and its respective Great Temple. Then, you gain 1 additional initiate (or "followers") if your total fame is greater than {100 300 900 1800 3600 7200 14400 28800 56600 125000}. If you have 100 fame, you'll receive +1 follower for each capital where you also own the Great Temple. Where your fame is... 300, +2 initiates; 900, +3 initiates; 1800, +4 initiates; and so on down the line. >>
<< A player's "fame through actions" is any fame you have acquired through combat (or possibly other factors, i.e. thief failure to spy, or thief failure to interrogate). This amount of fame is divided by 50 and is used to determine "extra followers." >>
(May not be perfected) The game will now display how many followers you are expected to gain before they arrive. This information will be displayed in the bottom right-hand corner where resources and expected gains/losses show. Remember, that since followers arrive every 7th turn, it may display a +X amount below your available follower amounts, but you do not gain this amount each turn as with other resources displayed.
Buying other potions while owning 6+ Potions of Movement should no longer prompt a player with a dialog.
Changes made to artifacts: Three new dictionary reference variables: 'rechargeable?', 'rechargequantity?', 'rechargeonturn?'. Rather than using the '/begin_turn_proc' to handle recharging of artifacts, the three aforementioned dictionary entries for each artifact will help to control how many charges and how often artifacts are recharged through 'handle_artifacts_by_turn' as found in 'gs/GAMEUTIL5.gs'. Checks will be made to see if these variables are declared; if not declared, there are default values. This also helps in controlling potions, as they can be manually set not to recharge, rather than having to specifically reference each potion. And with this change, artifacts will recharge regardless as to whether or not they are equipped. Scroll of the Sages is handled separately. Also spell scrolls have been adjusted accordingly, and will recharge as they have before, either equipped or not. Additionally, the every artifact being recharged 1 charge every 7th turn has been scrapped, as all now recharge as they should whether equipped or not.
4/18/2017 - Build 3197 - Second Update
Fixed more issues with definitions/references unwittingly changed in a mass text change to '/articon_' from '/displaying_'. Fixes took place in 'gs/dlg/NEWBUILD5.gs', 'gs/dlg/buy_potion.gs', 'gs/dlg/village_trade.gs', and 'gs/dlg/questdlg.gs'
4/18/2017 - Build 3196 Fixed issue with Army Roster not showing information correctly. This issue was linked to changing the '/displaying_...' text for artifacts to start as '/articon_'. Same issue was had with the 'gs/dlg/NEWBUILD5.gs' in the previous update.
4/16/2017 - Build 3195 Fixed an issue in 'gs/dlg/NEWBUILD5.gs': corrected erroneous references that were changed as part of a mass text change.
Noble Crown cannot be manually cast in combat anymore (it auto-casts).
4/16/2017 - Build 3194 Adjusted index names of some artifacts that were missed in the previous update. This causes no effect on actual game play. Also correct a few artifact names that were mistakenly changed.
Changes made to 'gs/GAMEUTIL5.gs', 'gs/dlg/ARTINFO5.gs', 'gs/dlg/INFOPAN5.gs', 'gs/dlg/ARTFTOOL5.gs' to facilitate the displaying of artifact alternate spell details.
Artifacts can effectively have a single alternate spell, or an array of alternate spells. The spells will all have to be defined in the artifact's dictionary (file). By defining in an artifact '/alt_spell_id' for a single alternate spell, or '/alt_spells_id' for an array of spells, editors can effectively allow for multiple spells on artifacts pretty simply.
In artifact data, when there is an 'alt_spell_id' defined and a has both '/articon_castspell""' and '/articon_alt_spell""' present in the 'description_table', right-clicking the first icon to change the artifact's primary spell will swap the icon locations. With artifact 'Noble Crown', if a player right-clicks the default "Leadership" spell icon, it will change the primary spell to "Protection" (which is set as the alt_spell_id) and will swap Protection to the 'articon_castspell' slot and move Leadership to the 'articon_alt_spell' slot. Only the full spell description will display for the primary spell icon, where the alternate spell names will show up in their respective icons.
In artifact data, when there is an 'alt_spells_id' array defined and the 'description_table' has multiple '/articon_alt_spells""' listed, it will display the icons and names of the spells in the 'alt_spells_id' array. This serves as showing a player the total list of spells available for an artifact with one or more spells. The number of spells shown is limited to what the player sets. In the event that more '/articon_alt_spells""' are listed than the artifact has spells in the 'alt_spells_id' array, it should wrap back around.
Change made to 'gs/dlg/ARTINFO5.gs': For colorization of artifact text, it will now check to see if an artifact's dictionary has 'colorizetext?' variable defined. If it is not defined, by default, an artifact will have colorized text. If it is defined, it would have to be defined false in order to prevent text from being colorized. Players may still click on the artifact description text to clear colorization of text (make text white).
Change made to 'Gloves of Quickness.' Artifact will now display alternate spell icon.
Change made to 'Noble Crown.' Artifact will now display alternate spell icon.
Change made to 'Scroll of the Sages': All spells it can cast are now defined in the artifact dictionary.
Change made to 'Chalice of Chaos': All spells it can cast are now defined in the artifact dictionary. However, Chalice of Chaos can not be manipulated by the player in the artifact panel.
4/15/2017 - Build 3193 Scabbard of Swords changed to "Spectral Sword."
Cloak of the Spirits name changed to "Raimant of the Spirits."
Ring of Strength now provides +6 Strength, nothing else.
Ring of Dexterity now provides +6 Dexterity, nothing else.
Ring of Wisdom now provides +6 Wisdom, nothing else.
Artifact 'Noble Crown' default spell changed to Leadership, from Protection, and artifact mana increased to 6. This artifact may toggle to Protection as an alternate spell. At the start of combat, this artifact will automatically invoke the selected spell up to three times each turn.
'Adventure Ring' modified to provide: "Any Champion may wear this ring to receive +2 Health and +2 Movement. Additionally, Wizards receive +2 Mana. Warriors will instead receive +4 Health and Thieves will instead receive +4 Movement."
New Artifact: 'Gloves of Quickness'. Provides +3 Rate of Attack, or +6 Rate of Fire for ranged champions; At the start of combat, once per turn these gloves will automatically invoke Swiftness or Quicksilver, whichever the player selects. To toggle the spell cast, the player will have to right-click the spell icon in the artifact window.
New Artifact: 'Lucky Ring'. Provides +1 and (X/5) Luck. At the start of the first three combat encounters each turn, this ring will automatically invoke Trick on the wearer.
New Artifact: 'Ring of Power'. Provides +3 Strength, +3 Dexterity and +3 Wisdom.
All internal index names for artifacts have been revamped. This doesn't effect game play.
4/13/2017 - Build 3192 Updates made to 'gs/dlg/INFOPAN5.gs': (1) In the Unit Information Panel, the spell buff icon tooltip will now read three spell buffs per line, then return text to a new line. (2) The spell buffs icon changed to an 'S' box, from a '?' box.
Change made in 'gs/dlg/NEWBUILD5.gs' and 'gs/GAMEUTIL5.gs': The ORDER special building callback function will now check for footmen or knights level 5 OR GREATER, instead of just level 5. Also fixed an issue where Knights were not properly upgrading to Holy Knights in some situations.
Sword of Enlightenment will now automatically cast Holy Sabre spell at the start of combat, and will re-cast it again after one expiration. Artifact's mana increased to 15, to allow for up to three automatic invocations per turn (three combat encounters). Each start of combat will drain 5 artifact mana from the artifact (the mana cost of Holy Sabre). If the artifact does not have any mana, the spell will not be invoked at the start of combat. The spell will re-cast itself one time after about 90 seconds.
Archon Armor "Backlash" damage changed. Backlash damage on attacker is now equal to [1 + (DL+AL)/10].
Archon Armor chance to perform Backlash on attackers has slightly changed.
- 25 Base percent chance;
| + Defender Luck;
| 2X chance, if attacker inflicts damage on wearer;
| multiplied by (1 + (1 - current hp / max hp));
| | Used to be double chance if wearer has quarter health remaining.
| If attacker is at quarter health or lower, backlash chance reduced to zero.
Dragonscale Armor will now spark attackers with a bonus proportional to the wearer's remaining health (multiplied by: 1 + (1 - current hp / max hp)). Additionally, attackers with quarter health or less will no longer be burned for damage, rather than having a reduced chance of being burned.
In 'gs/dlg/ARTINFO5.gs', I have setup the precedent of expanding the right clicking of the artifact spell icon in the Artifact Info panels. Some data has been moved to 'gs/GAMEUTIL5.gs'. Also, rather than exclusively looking for the Scroll of Sages spell icon being right clicked, right clicking any Artifact Window will trigger the new 'right_click_artifact_spell_icon' from 'gs/dlg/ARTINFO5.gs' as defined in 'gs/GAMEUTIL5.gs'. From there, in 'gs/GAMEUTIL5.gs' the 'artifact_spell_callback' handles the rest, wherein Scroll of Sages, or other defined artifacts, will be controlled.
Blade of Swords changed to "Scabbard of Swords." Also, like the Sword of Enlightenment, it will cast its sabre spell at the start of the first three combat encounters of each turn. The spell can longer be cast manually by the artifact, but will display the icon in the artifact window.
Scabbard of Swords spell can now be manually toggled by the player. Every right-click of the spell icon in the artifact window will cycle the available sabre spells. This spell will be the one automatically cast on the wielder at the start of combat.
3/5/2017 - Build 3191 Â Â Â Â Â Corrections to 'gs/autocalc5.gs': Infantry vs Cavalry factors were not included in Team Point accumulation for auto-calc equations. The absence of this actually made Infantry a more of a penalty than a benefit.
     In 'gs/dlg/COMB_DLG5.gs' the tooltip description on the Surrender button is expanded to detail what Surrender will do if clicked three times.
     Updates made to text in 'gs/textdict5.gs' for consolidated/dynamic start game text (the story dialog that opens in a new game).
     Updates made to 'gs/dlg/panels5.gs' pointing to the newer dynamic start game text.
5/26/2016 - Build 3190 Change made in 'gs\dlg\newbuild5.gs': A player may relinquish a Great Temple to the owner of the Capital City, regardless of the capital city's faith of origin. Ergo, if Death has captured the Fire Capital from Fire, and you capture the Fire Great Temple from Fire, then you may relinquish the Great Temple to Death who is in control of the capital of Fire.
New shorthand code added to 'gs\gameutil5.gs': 'ownsfaithcity?'. This will find the owner of a particular city, based up on the faith origin of the city. (i.e. DEATH ownsfaithcity? will return the player who owns the Death capital)
New shorthand codes added to 'gs\combat5.gs': 'aut' and 'dut'. These are shorthand codes to return the attack/defender 'unit type'.
Biting Attack equation re-worked.
(REVIEW) Most units capable of performing a Biting Attack have a 10% chance to do so.
(NEW) Biting Attack chance reduced by portion of attacker's health (current health divided by maximum health, then multiplied into the base).
(NEW) Biting Attack chance reduced by portion of defender's health (current health divided by maximum health, then multiplied into the base).
(REVIEW) Biting Attack chance is reduced by half if the attacker level is less than the defender level.
(MODIFIED) Biting Attack chance is reduced by half if the attacker has less attack than the defender has armor.
3/26/2015 - Build 3189 Ring of Strength, Dexterity and Wisdom updated. They now provide variable bonuses based on level.
Staff of Drowning now properly shows Attack Rate bonus.
Various spelling corrections.
8/22/2015 - Build 3188 Buying any potion from village with maximum allowed Potions of Movement will no longer keep a player from buying other potions. (Fixed ge => gt).
Touch of Death will now properly reduce unique targets to 1 health on fail.
7/21/2015 - Build 3187 Thief Interrogate and Torture equations modified.
(Review) In Torture, if Thief Strength is less than or equal to Prisoner Strength, the base (50) is reduced by half (25).
(Review) In Interrogate, if the Thief Wisdom is less than or equal to Prisoner Wisdom, the base (50) is reduced by half (25).
(New) In both cases, if Thief Level is less than or equal to Target Level, then the base (50) is reduced by half (25).
In both cases, any Health the Thief or Prisoner is missing, the base (50) is modified. A Thief with 24/30 Health means the base (50) is reduced by six (44). A Prisoner with 18/20 Health means the base (50) is increased by two (52).
[Used to be that if a Thief's Health was less than half, then base was cut in half; and if the Prisoner's Health was less than half, then the base (50) would be doubled. With this in mind, a low health prisoner always squealed much easier.]
(New) In both cases, one-third of the Thief's Dexterity is now added to the base (50). If a Thief's Dexterity is 21, then (21 / 3) seven is added to the base (50) to become 57.
(New) In both cases, Thief Luck added to base.
[Thieves are presented with a challenge on Interrogating or Torturing units of higher level, Torturing units with higher Strength, and Interrogating units with higher Wisdom. Dexterity and Luck only present minor benefits, but will now do so. Also, rather than a rigid increase or loss based on Health, it scales point for point, where a full Health Thief performs his best and a healthy prisoner resists better. Factoring in Dexterity at one-third will provide low-strength or low-wisdom Thieves with high dexterity a chance at having fun with prisoners. Non-Thief Champions may perform these functions, but do so with the base (50) further reduced by half (25). It wouldn't be beneficial to Interrogate a Mage, or Torture a Warrior, or leaving the dirty work to a non-Thief.]
[(Dice Roll is 0-99). If the Interrogate/Torture calculates to 60, then the worst case scenario is anything over 120, followed by 91-120 for negative results, 61-90 for less negative results, less than 60 for success. A roll over 120 yields worst results (ramifications, hurt prisoner bad, no info); between 91-120 yields negative results (ramifications, hurt prisoner little, no info); between 61-90 yields least negative results (no ramifications, no damage, no info). A roll from 0-60 would mean for a success.] The calculated base sets the precedent for how the results are determined.
Spying and Freeing a POW changed.
(Review) In Spy/Steal/Free POW, some checks are made against each unit, and the combined value between each unit is averaged for a Thief and the Target party to have a fair chance against the other.
Base¹ is in the per-unit check base.
Base² is after the per-unit check is combined and averaged.
(Review) In Spy/Steal/Free POW, if a Non-Thief unit is performing (if you managed to cause this to happen), then base² is reduced by half.
(Review) In Spy/Steal/Free POW, if Thief Level is less than or equal to Target Level, then base¹ (50) is reduced by half (25).
(Review) In Spy/Steal/Free POW, base¹ (50) is reduced by Target Dexterity.
(New) In Spy/Steal/Free POW, Thief Dexterity is added to base² instead of base¹. Basically works the same as before and offers virtually no change.
(New) In Spy/Steal/Free POW, base¹ (50) is reduced by one-half Target Sight Radius.
(New) In Spy/Steal/Free POW, one-third Thief Sight Radius is added to base².
(New) In Spy/Steal/Free POW, base¹ (50) is reduced by any Health a Target is missing.
(New) In Spy/Steal/Free POW, base² is reduced by any Health a Thief is missing.
(New) In Spy/Steal/Free POW, Thief Luck is added to base².
(New) In Spy/Steal/Free POW, three minus Thief Stealth is added to base².
(New) In Spy/Steal/Free POW, if Target is using "Detect Thief," then base² is reduced by one-half.
(Review) Subdue considers Level and Strength of the Thief, where if it is less than or equal to the Target's, then it will halve the base (50) in both situations, for a possible 12.5% calculated base.
Subdue now considered Target and Thief's lost Health modify in the others' favor. Luck from Thief is added, and 1/3 Thief's Dexterity.
Energy Stone health regeneration in combat fixed. Also, this artifact will not penalize a player of any artifact mana if the Champion had full mana after combat.
Jester's Cap now provides +2 Sight Radius and +2 Health Recovery. Also, non-Fire Thieves will suffer a hit penalty of 4.
3/16/2015 - Build 3186 - Use Secondary Download Location
Consolidated and changed the Natural Magic Damage and Sabre magic damages. The two are handled in the same equation, rather than two separate ones. This also meant some minor changes to coding involved.
In 'gs\combat5.gs' some equations/functions were consolidated to handle both melee and ranged equations/functions. These consolidations require the use of the 'attackismissile?' check I added years ago. The following items were all consolidated because they could be, and because it makes references simpler since an attack can only be melee OR ranged, never both.
Equations 'melee_calc' and 'missile_calc' were consolidated into 'combat_calc' where the former were handled separately. Only minor differences between the two, and they're now dynamically in one calculation.
The references 'melee_attack' and 'missile_attack' were consolidated into 'combat_attack'. These were really simple references to subtract a defender's armor from the attacker's (ranged) attack value. They were combined.
Dryads no longer cast 'Regenerate' on Undead units. But, Dryads do 50% Life damage in Ranged Attacks.
Phoenix now does 50% Life damage in Ranged Attacks.
Air Elementals now do 50% Air Damage, different from a Wisps' 75%.
Water Serpent now does 50% Water damage in Ranged Attacks. And no longer invokes Icy Coffin.
Ring of Strength, Dexterity and Wisdom provide +12 to their primary stat, but -3 to the others, instead of reducing them by a third. Their barter value has been upped to 1200 from 500.
Potion of Resistance may now attain 40 maximum charges. Starting at 10 max charges, the rate of max charges increases by 1 charge every 7 turns. That's a possible +40 physical and magic resistance upon turn 210.
Village Trade adjusted for Fame. The minimum Fame you can trade down to is now (10 * currentturn * C * difficultylevel), where C equals number of Cities owned. Difficultylevel is represented by 1 for Easy, 2 Medium, 3 Hard.
Jester's Cap will now completely negate the Stealth Armor penalty.
Overland attack spells which projectile missiles (mainly Locust) will now work properly on the overland map. Projectiles on the overland map previously did not use the sight radius +2 range rule.
3/3/2015 - Build 3185 Unicorns can now perform 'Piercing Attacks', unless it's a 'unique target'. They will perform Piercing Attacks with a +25% bonus against Undead units.
Army Meet Dialog Box now properly displays name when it's you that is being approached by the AI.
Fix made to Dragonscale Armor's autocalc combat script.
New shorthand added to 'gs\GAMEUTIL5.gs': 'playercitycount?' will count the number of cities a player owns.
Unit limit imposed. A Human player can no longer produce units if he currently owns 99 (per Capital) units. A new bonus for having multiple Capitals under your control.
A Human Player can no longer produce more than 9 Champions per type, per faith (i.e. 9 mages, 9 thieves, 9 warriors). All other units are limited to 18 of any kind (Scout, Military, etc.).
A Human Player can no longer produce more than 9 (per Faith) CR3/tier 3 units. A player could produce a Pegasus Rider, even if he owns 9 Vampires and 9 Stone Giants.
Consolidated data in 'gs\dlg\newbuild5.gs' with the 'TRAIN/HIRE UP ARROW'. It now dynamically handles both Mercenary Hiring and Follower Training into one set of code, rather than it be spread out based on each type.
2/24/2015 - Build 3184 - Use Secondary Download Location
Champion names and Faith, now displayed above the unit sprites in an army meet dialog.
2/15/2015 - Build 3183 - Use Secondary Download Location
Stat Potions (STR/DEX/WIS) will now provide 6 charges with a Level 3 building (unchanged) and will now provide 6 charges to Villages if the player owns a Level 3 Building (Barracks:STR, Guild:DEX, Wizards Tower:WIS). Also, at turn 70 these stat potions can achieve +9 charges. Villages can produce +9 charges on Turn 140+, or at turn 70+ with ownership of a Level 3 Building.
Added Restriction: Players can no longer buy a Potion of Movement if they own 6 or more.
Two new shorthand codes added to 'gs\gameutil5.gs': 'countplayerartifacttype?' and 'playerhasthisbuildinglevel?'.
The first will count up the the number of artifacts the referred player has based upon the referred artifact.
The latter will count up the number of the referred type of buildings of the referred level integer.
Meet dialog boxes will now display current attitude, below text or below Thief estimate texts.
1/17/2014 - Build 3182 New Champion names, sur names and combo names added.
Some creature on-attack abilities adjusted. Was not properly adjusting equations for other units dead within group. Combat views each unit as it's own army, effectively.
11/15/2013 - Build 3181 Fix made to stat potion descriptions.
Fix made to Scroll of Faith.
8/23/2013 - Build 3180 Potion of Mana can now incrementally achieve 24 charges. Reaches 24 charges at turn 168. The potion starts with 12 max charges and increases by 2 charges every 28 turns. At turn 84 (28 * 3), a Potion of Mana can have [12 + 2 * (84 / 28) = (18)] 18 charges.
In combat, Mana potions can immediately replenish up to 12 mana immediately. The remaining amount (based on charges) will be replenished at a rate of +1 (Wizard) Mana per 3 seconds.
Units under the control of AI Players (non-Human) will replenish full health or mana from Health and Mana potions. No effects are provided over time.
8/21/2013 - Build 3179 Players can now turn off colorized texts in the artifact info panel by clicking on the Artifact's description. This adjustment is temporary until the next time the info panel is opened.
Potions of Strength, Dexterity, and Wisdom can now achieve 9 charges (for +9 to their respective stat) upon reaching turn 140. Villages only.
Potion of Power can now achieve 6 charges upon reaching turn 140. Villages only.
8/19/2013 - Build 3178 Potions set back to their previous state.
Potion of Power charges come in 2's, and maxes out at 4. Max charges can be bought at turn 70.
Potion stat icons in the artifact window will no longer display a number if it is less than 1.
8/16/2013 - Build 3177 Potion of Movement's artifact stat icon has been fixed to reflect the change in the last update.
The manner in which most stat potions function has been changed. The potions of Power, Strength, Dexterity, Wisdom and Movement charges now increment by 1, but the effects multiplied based on charges.
I.e. a Potion of Dexterity with 1 charge will provide +3 Dexterity.
I.e. a Potion of Wisdom with 2 charges will provide +6 Wisdom and (Wizard) Mana.
Potions of Movement can achieve up to 3 charges, for up to +4 movement bonus with 3 charges and +2 movement with 2 charges. The potion with 1 charge or more will negate the terrain penalties of the user, but do not provide any bonus movement.
Potions of Power can achieve up to 2 charges, where the bonuses received will be multiplied by 2. With 2 charges, the potion will provide +4 Strength, Dexterity and Wisdom and +4 Health and (Wizard) Mana.
Potions of Health, Mana, Luck, Rejuvenation, and Resistance have not been changed.
The second LILDR reference has been removed from the game.
8/8/2013 - Build 3176 Potion of Movement changed. The potion will always negate terrain penalties. However, movement bonuses are not provided until the more than 2 charges are acquired. Movement bonus provided by Potion of Movement is now Current Charges - 2. The potion will not ever reduce movement.
Cheat "bingo" fixed.
8/1/2013 - Build 3175 Potion of Power changed. For every 2 charges, the potion will now provide +1 Strength, Dexterity and Wisdom. Additionally, Potion of Power may still reach a maximum of of 6 charges. Two charges can be purchased any time, four charges at turn 35, six charges at turn 70 and beyond.
Potion artifact data for description modified slightly. Was otherwise causing errors when printing artifact data.
7/16/2013 - Build 3174 New code added: 'convert_exp_to_level', which will return a value of for the units level, up to two decimal places, based on the experience points of the unit.
New code added: 'convert_exp_to_unittype_level', which will take a value of experience, a unit type, and find the level (up to two decimal points) of the unit type. One example use for this can be used to convert the experience of one unit type and find the relative level of another unit type.
Spill over life for Heal re-worked. Also, the spell is set back to variable 1-4X CL health (it was previously set to a static 2X value for testing, but was not set back). Units can achieve up to 2X maximum health, but any health provided above the unit's maximum is severely diminished.
Balkoth's Word, Fireball and Ice Comet viabilities tweaked: damage calculated independently from "spell_damage" variable.
Silver Dagger's re-mod function on-attack fixed. When Silver Dagger detects that the wielder has a range higher than 1, it will reduce it down to 1.
Spell buff icon in the unit information panel will no longer display if displayed while in combat.
The + and - hotkeys in combat perfected (now work seamlessly).
The 'P' and 'p' hotkeys will now show/hide overland pathball indicators.
The 'C' and 'c' hotkeys will now toggle center on movement.
Holy Visit, Visage of Horror, Bless, Morale, Leadership, Protection, Crusade and Change of Fate viabilities enhanced, so now the AI will more intelligently use them.
AI will now properly use Turn Undead and Unturn Undead.
Unturn Undead added to AI list of castable spells.
The Lord Editor now scales purchases of units, artifacts and spells, rather than offset them by set amounts. Also, units, artifacts and spells of different faiths than your own are now more delicately controlled. This means these items from other faiths will not be completely outrageously priced, and even items of the opposite faith are no longer unobtainable.
Other faith items are priced 2X base.
Opposite faith items are priced 3X base.
7/6/2013 - Build 3173 Rocksling and Sands of Sleep viability fixed.
Updates made to viability of various spells.
Fixes made to Staff of the Unholy, Orb of Wind and Staff of Light coding.
Confusion and Possession spells more intelligently used by AI.
7/4/2013 - Build 3172 Spell fixes, including viability for AI castability.
6/24/2013 - Build 3171 Fixes to spell damage for Balkoth's Word, Fireball and Ice Comet in regards to their radius damages.
Changes made to Balkoth's Word. Instead of cutting radius damage in half for each tile away from the original target, it will instead subtract 4 damage for each tile from the original target. This means 2 tiles away from the original target will receive 8 less damage than the original target.
Changes made to Fireball and Ice Comet. Instead of halving damage for each radius of effect, it will now reduce damage by 25% for each radius, before factoring resistance.
Bolt Spell viabilities modified. Base viability is 75, down from 100. Additionally, viability is automatically set to 125 if the Wizard can terminate the target with the bolt spell. This is done by using the current mana of the wizard, dividing by the mana cost of the spell, and multiplying it by the calculated damage amount. If the calculated damage is greater than or equal to the target's health, it will set the viability to 125. Generally more potent spells have a high viability potential (i.e. Locust Swarm's max viability is 300).
6/16/2013 - Build 3170 Fury Fire spell viability fixed. Also, other various spell viabilities tweaked.
Ring of Leeches, Staff of the Unholy and Chakram of Entropy will now sound the invocation sound when each artifact invokes Leeches on attack.
6/4/2013 - Build 3169 Rename Dialog changed. The size of the dialog is much larger (300 pixels to 400), the dialog shows all characters in the name string and there is a new button. The new button is for random name generation (champions only).
Attempting to rename non-Champions with a random name variable will give the unit just that name (i.e. renaming a Hound with "*" will make the Hound have a name of "*").
Desync Dialog should now close with the pressing of the "Enter" key.
Right-Clicking the Auto-Calculate symbol in combat with the mouse cursor will now initiate a Live, In-Combat, Auto-Calculate. However, the option to set a Live Auto Calculate as the default In-Combat auto-calculate still exists.
Ashes of Infestation barter value increased to 1250 from 750.
Any Champion, except for Air Champions, may now wear the Cloak of the Worm. However, only Wizards receive the full benefits of the Cloak. +3 Strength, +3 Armor and +33% Air Resistance are the universal bonuses provided by this artifact.
Ring of Leeches will now provide +33% Life Resistance to the wearer, but Death Champions will instead receive +50% Life Resistance.
Body and Spirit spell fixed. Will now provide the health bonus from mana.
Leeches fixed. Was referring to missing/removed coding.
6/2/2013 - Build 3168 Fix made in 'gs\gameutil5.gs'. The 'enemies_in_radius', 'friends_in_radius' and 'any_in_radius' and their conditional counterparts, were lacking the 'xy_to_x_y' function to properly retrieve the target's location.
5/22/2013 - Build 3167 Modifications made to 'gs\FORMPC5.gs' to keep certain stats from returning negative values in calculations.
Adjustments made in code for Pixies, Erosion and Minor Rust in attempt to make fixes regarding their effects.
5/9/2013 - Build 3166 Coding for infectious spells tightened up.
Disabled data in 'gs\player.gs' in regards to repeat spell effects for infectious spells. This was added as an alternate method, but is not needed and was also creating double effects.
Fix made to Riptide spell.
Legendary Water Spitter on-attack properties fixed.
5/8/2013 - Build 3165 Three New functions added to 'gs\gameutil5.gs': 'enemies_in_radius', 'friends_in_radius' and 'any_in_radius'. Radius is centered on the target.
Each will count the number of units in a radius around the unit.
Example: [source_army_id 3 army_id enemies_in_radius] will find enemies of the source_army_id within 3 tiles of the target army_id.
Three New functions added to 'gs\gameutil5.gs': 'enemies_in_radius_by_condition', 'friends_in_radius_by_condition' and 'any_in_radius_by_condition'. Radius is centered on the target.
Each will count the number of units in a radius around the unit with specific conditions.
Example: [source_army_id 3 army_id spellcondition?{true}{false}ifelse enemies_in_radius_by_condition] will find enemies of the source_army_id within 3 tiles of the target army_id which match a spell's condition for doing its effects.
Fixes made to Water Spitter. Was not providing proper stats.
5/4/2013 - Build 3164 - Update #2
Golgoth's Gift should now spread again, as it has before. It will spread to units in the same manner as Erosion, where the original caster level must be greater than or equal to the uninfected unit.
5/4/2013 - Build 3163 - Update #1
Corrected an issue where Minor Rust and Pixies were causing Erosion spell buffs to show up.
Removed duplicate button in desync dialog.
5/3/2013 - Build 3162 - Update #2
Fix made to 'unit_max_level?' and 'unittype_max_level?'. They were calling just 1 level short of the actual maximum for units.
Made fixes to infectious spells (Pixies, Erosion, Minor Rust).
Minor Rust will now put -1 Water Resistance each turn.
Erosion will only spread infection if the caster level is greater than the target not yet infected.
Pixies and Erosion will repeat their infectious effects once every third turn.
Desync dialog texts adjusted. Also, the Ignore Warning and End Game button have switched possitions.
5/3/2013 - Build 3161 - Update #1
Helmet of Stone's barter value changed to 1000, up from 750. Also the text is correct and will no longer show an icon for zero artifact charges.
Changes made to what resources an AI player focuses on with extra initiates in city.
Changes made for AI players in how much it costs to produce Trained/Summoned units, but only if the AI player has less than or equal to 500 of a given resource.
Ring of Necromancy may be worn by any class. Still cannot be worn by life champions though.
Ashes of Infestation will now provide +3 Strength, Armor and Luck. The Attack bonus was removed (non-weapon artifact).
Amulet of Poison will now provide +3 to Strength, Armor and Stealth. The Attack bonus was removed (non-weapon artifact). Also, Thieves wearing the amulet will receive +3 improved Rate of Fire.
Ring of Leeches now provides +3 Strength and Armor. Also, the wearer now receives a 1% chance to invoke Leeches on defenders.
Rusted Dagger now provides +3 Attack, +3 Rate of Attack, +3 Stealth and +3 Ranged Attack (Death Thieves).
4/30/2013 - Build 3160 - Update #2
Fix made in 'gs\speltool5.gs' regarding default 'viability' for spells.
4/30/2013 - Build 3159 Fix made in 'gs\speltool5.gs' regarding 'tiledistance?' referencer.
Fix made to Turn Undead's viability check.
Changes made in spell regarding how distance checks are made. Explode and Tunnel unchanged.
4/29/2013 - Build 3158 Potion of Health confirmed fix. Was not providing regeneration effects in combat, or not working at all.
Fix made in 'gs\speltool5.gs' regarding 'tiledistance?'. It was trying to reference the location of the target twice, instead of caster and target.
In combat Stealth button now displays tooltip informing the player than Stealth mode makes the Thief's armor count for half in combat calculations.
Leeches and Potion of Health now utilize the 'repeatwithoutbuff?' check. This allows for spells to not have a buff present but still repeat it's effects.
Two new references in 'gs\gameutil5.gs': 'unit_max_level?' and 'unittype_max_level?'. Just basically returns the unit's maximum level.
Coding in 'gs\comb_res5.gs' now utilizes the new max level referencers.
Earth Meld will no longer create a retreat point, but will move the target to the retreat point automatically and force retreat. Also, the spell will fizzle and return mana if target is not of the player's army.
4/28/2013 - Build 3157 Tweaks made to viability of some spells.
Frozen Shade is now considered Undead again.
Staff of the Unholy now provides Attack and Armor equal to +[3 & (1/7X)], instead of +1/3X.
4/26/2013 - Build 3156 Adjustments made to Life Stealing Blade, Crusader Blade and Staff of Light regarding their auto-cast spells. They will each repeat up to 2 times in combat. Also, each artifact will auto-cast in the first 6 encounters each turn.
Any combination of 6 combats on your own turn, or on another player's turn. Auto-casts subtract 1 artifact mana from each artifact per auto-cast. When there is zero artifact mana, no auto-cast can be performed. At the beginning of a player's turn, artifact mana is fully replenished.
4/22/2013 - Build 3155 Riptide spell fixed. Water creatures and water-based units were not getting any bonus at all.
Desync message box changed in dimensions. It's a little wider and shorter now. Also, pressing the Escape key will close the window now, but will not use the ignore option. Closing the box with the ignore option is done with the Enter key.
Life Stealing Blade, Crusader Blade and Staff of Light confirmed fixed now with respect to their auto-cast spells at the start of combat.
4/18/2013 - Build 3154 Spell data of Potion of Health simplified and updated. Also, there should not be any extra healing for overland military groups.
Artifacts which cast spells at the start of combat tweaked in their data a little bit.
4/9/2013 - Build 3153 'Spark' effect is now a combat effect which damages units surrounding a target for one fire damage.
The 'Spark' combat effect will consider 3 variables: 'source_army', 'faith', 'target_army'.
Source army: Where the spark's origin comes from will determine who gets sparked. Anyone who is not of the origin's army will be sparked.
Faith: If the faith is FIRE, it will spark for Fire damage. If it is not FIRE, it will spark for damage equal to the faith, but will launch an electro sound and aura.
Target army: Where the spark will be centered on. Can be centered on the attacker's origin within 1 tile, or the target's origin within 1 tile.
Sword of Flames no longer invokes the "Sparks" spell. It instead uses the 'Spark' combat effect. It's sparks centers on the attacker.
Flint Dagger no longer invokes the "Sparks" spell. It instead uses the 'Spark' combat effect. It's sparks centers on the attacker, unless a Death thief is attacking in ranged, then it will center on the defender. Death Thieves have half of the 33% chance to do the spark in ranged combat.
Flamethrower crossbow will invoke Sparks instead of execute a burning attack. It will invoke Sparks at the defender's origin.
Fixes made to artifacts which invoke spells at the start of combat (Life Stealing Blade, Crusader Blade, Staff of Light, Cloak of Flames).
Multi-Shot will now launch even if the striking blow is kills the unit. However, Multi-Shot itself now excludes the original target (the unit upon which the spell is cast). Multi-Shots will not launch multi-shots.
Not striking the original target will keep the game from doubling up missiles on the defender.
More artifacts with special inclusions/exclusions, similar to Shield of Righteousness, have had their codes updated.
4/7/2013 - Build 3152 Fixes made to Orb of Wind (spell enabled) and Chalice of Life (hidden armor bonus removed).
Code in Righteous Shield tweaked for less code regarding equippability.
Ring of the Worm changed to Cloak of the Worm. Also, the ring will provide +3 Strength, Armor and Mana, +25% Magic Resistance, +25% Physical Resistance and +33% Air Resistance. Additionally, will recharge 1 charge each turn, if equipped.
Crystal Amulet now provides +3 Dexterity instead of +3 Strength.
4/6/2013 - Build 3151 Fix made in 'gs\dlg\artinfo5.gs' regarding the display of certain artifact data from the Lord Editor. Should now show proper charges for each artifact.
Artifact, Eternal Flame, has been replaced with Cloak of the Eternal Flame. Any faith can wear it, and any champion can use it for +5 Armor and may cast Frenzy. Except Fire Champions receive +10 max health and +3000 experience bonus. Also fire Champions can regenerate in combat and recover quarter health at the end of combat.
Cloak of the Eternal Flame will invoke Immolation upon the caster in combat 9 seconds into combat. It will do so again 60 seconds later, and again 60 seconds again afterwards. The spell will be invoked in combat up to 3 times.
Chaos artifact Amulet of the Spirits has been changed to Cloak of the Spirits. Same exact artifact stats, no changes except for graphical on the surface and index and file name on the interior.
Crusader Blade, Staff of Light and Life Stealing Blade will now invoke their at-start spells and will repeat them again one more time in combat at a later interval.
Many spells have their "viability" updated. The AI will be much smarter in how many offensive spells are used. Also mass defensive spells such as Leadership, Protection, Crusade, Morale, etc. will be used depending on how many units are present in combat.
Scroll of the Sages has now been given an icon other than the Question box icon.
Crystal Amulet and Ring of the Worm will no longer provide an Attack bonus, but will instead provide Strength for the same amount.
Orb of Wind changed to do +3 Attack and now casts Sky Sabre with 3 maximum charges, and recharges 1 charge per turn if equipped.
4/3/2013 - Build 3150 Changes made to 'gs\artftool5.gs' and 'gs\speltool5.gs'. Changed how the data is read for retrieving artifact and spell icons. No surface differences, just an internal re-working.
Code added to 'gs\dlg\artinfo.gs' to better handle artifact deleting that should update in multiplayer games.
Internal changes to how Righteous Shield will remove itself from improper wielders.
Poison Cloud changed. Instead of reducing Vision and Missile Range to 25%, it will instead reduce to 33% for a two-thirds loss.
Decay and Poison Cloud internal data adjusted. The variable 'viability' has been adjusted to help AI players on when to use them. For example, Poison Cloud will only reduce the health of a target to a value equal to his level (if level 5, cannot reduce health below 5). The AI should be smarter in this regard, and not cast Poison Cloud on a unit whose health is less than or equal to their level.
Relatively new data added to 'gs\speltool5.gs' regarding 'invoke_effects'. The 'invoke_effects' variable will now properly function, separate from 'repeat_invoke_effects', where the latter will repeat with each repeating effect and the prior will execute as a one shot at the beginning of the effects.
Ray of Hope will now display an aura at the start of the spell on the targets.
New variable added to 'gs\speltool5.gs' called 'number_of_targets'. This new variable will dynamically count units that would be effected by radius effect spells (such as Slow, or Sands of Sleep). This new variable is used in conjunction with spells and their "viability," which the AI uses to determine when to cast a spell.
Sands of Sleep, Slow and Headwind will now count units and the AI won't cast these spells unless it is feasible. Also, other large damage radius spells (i.e. Justice, Flame Arrow) will not be cast on small armies.
3/23/2013 - Build 3149 Ring of Elements description fixed. Should now show that it provides +5 mana, not +3 mana.
Fire spells which unfreeze upon contact will now completely unfreeze/de-ice units effected by Ice Comet.
You can no longer trade away fame
in Villages unless you have at least [2500 * (current turn / 35)].
At turn 1, cannot exchange fame to under 71; at turn 35, you cannot exchange fame to under 2500; at turn 140 you cannot exchange fame to under 10,000. Capped at 10,000 at turn 140 (at turn 200, you cannot exchange fame under 10,000).
Fix made to artifacts which cast spells at the beginning of combat. Previous code was causing glitching after combat in multiplayer.
Changes made in 'gs\combat5.gs' regarding multi shot attacks. Multi shot equation is now handled in the document but can be modified through artifact 'attack_proc'.
All Thief Legendary weapons will provide +25 multi shot bonus, regardless. However, only the appropriate Thieves will be able to perform a multi shot with a proper weapon. If, for example, if a Thief is wielding an improper weapon and a proper one (i.e. Death Thief holding the Chakram of Entropy and Life Stealing Blade), then the multi shot chances will stack (+25 from Chakram of Entropy and +25 from Life Stealing Blade, for a total of 50% chance).
Multi shots are processed after damage. Additionally, it will never proc if it is a killing strike (unit has 0 or less life after strike), or if the attacker is in stealth mode. The attack made must be a missile attack.
3/22/2013 - Build 3148 - Second update.
New Thieving equations fixed for multiplayer: replaced 'gamerand' with 'singlerand'.
3/22/2013 - Build 3147 Stats provided on Legendary Bows fixed: Bad reference.
3/21/2013 - Build 3146 All GS files with the name ending in '5R3.gs' have been changed to just being '5.gs'.
New gs file 'gs\textdict5.gs'. This file is used to supplement any changes to text references that may be required. Ergo, if you want to overwrite any existing textdict references, or create new ones, here is the place to do so.
New gs file 'gs\cursor5.gs'. Just renamed the present file and replaced the old file.
Changes made in 'gs\cursor5.gs' with handling verbage for leaders, heirs and champion texts. The cursor will now read situations when an heir is escorting the leader, when a champion is escorting an heir.
Prisoners freed from Towers will now be randomized faith selection determined by the faith of the encounter type (not the sprite itself, but the encounter data). Ergo, a Death tower encounter, when set as such, will yield: Life, Death, Order or Chaos champions (though Death champion will be twice as likely as the others at 40% chance). Another example would be a Fire tower: Fire, Water, Air or Earth champion.
Previously, the faith of the Player was all that mattered in the randomization of the rescued prisoner's faith.
Champion name randomization feature has been adjusted from "gamerand" to "singlerand" which fixes it from creating sync issues in multiplayer. Also the right-click quick rename champion with a random new name has been restored in multiplayer.
'best_level_thief_in_army?' variable call will now correctly find the best level thief in the army, whereas before the best level would be overwritten by the unit reference number.
Spy, Steal and Free POW (Prisoner of War, i.e. captured champion), Interrogate and Torture calculations all revamped. The roll for each feat is 1 to 100. Thieves start with a base of 50% chance, which is modified from there on.
Factors which may modify each attempt are: Thief HP (half or less), Thief Dexterity, target party Dexterity, Thief Strength, target party Strength, Thief Wisdom, target party Wisdom, target party Sight Radius, Thief Stealth Noise factor.
Calculations for Interrogate and Torture revamped. Interrogation will exercise a Thief's Wisdom, which will be less useful against Wizards. Torture will exercise a Thief's Strength, which will be less useful against Warriors.
Additionally, if the prisoner has half health or less, success rate doubles. If the Thief has half health or less, success rate is halved. Also, if the one interrogating or torturing a unit is not a thief, the success rate is halved. Although, a Warrior may do better than a Thief to Torture in some situations and a Wizards may do better than a Thief to Interrogate in some situations.
3/13/2013 - Build 3145 Certain data will no longer print to the thief log if the setting has been set to OFF.
When subduing a target, information will print to the combat log, if combat log is set to ON. Detailed subdue information will print to the thief log, if thief log is set to ON.
Thief Subdue equation changed. Thief log starts with a base chance of 50%, then modified by the following factors: Thief Level less than or equal to Target level (divide base by 2); Thief health at 50% or less (divide base by 2); Target health at 50% or less (multiply base by 2); Thief Strength less than Target Strength (divide base by 2); add Thief Dexterity; subtract Target dexterity; target is heir or leader (reduce to 0, impossible).
Target and Thief health percentage now make big differences and can shift a subdue attack greatly.
While being able to subdue is vastly changed, Warriors are not easily subduable due to a Strength comparison.
Thieves who are outmatched or equal in level will not easily subdue.
It's now considerably harder for a Faerie Thief to subdue anything due to low strength, but their Dexterity will often give them a great boost; Faerie Thieves are meant to assail from a distance anyway.
Fire Warriors, who have low Dexterity, will no longer be pushovers due to Strength comparison.
3/11/2013 - Build 3144 - Update 3.
A fix made in 'gs\story.gs' where a closing bracket was removed accidentally.
3/11/2013 - Build 3143 - Update 2.
Fix made for engaging Marauders with Thief party. The new estimate feature was previously causing desyncs in multiplayer when a player's Thief party engages marauder forces but then closes the interaction window (cancels engagement). All fixes were made by changing the random number generation from "gamerand" to "singlerand." The actual significant difference is suspected to be one is meant for strings and the other is meant for numbers.
3/11/2013 - Build 3142 - Update 1.
AI players will now always generate a city guard, even if the player is not an active participant.
AI players who are not active participants will turn control over security forces to Marauders.
AI players who are not active participants will automatically turn control of their cities and sprites over to Marauders. This will prevent the "Great Temple was taken over by Marauder forces."
Thief estimate text in encounter window will now provide more verbage on whether or not an encounter is "more than" un/favorable or "extremely" un/favorable.
Heal spell fixed. The conditions variable for the spell was improperly named to 'spellconditions?', when it should have been 'spellcondition?'. Additionally, 'heal.gs' file removed: it was creating confusion since I had previously changed the file reference to 'heal_life.gs'.
3/8/2013 - Build 3141 Fix made to 'gs\cursor.gs' regarding Thief Estimate Power feature. Using a Thief in multiplayer should no longer cause desynchronization. Double tested.
3/6/2013 - Build 3140 Fix made in 'gs\story.gs' regarding multi level encounters and the Estimate Power feature for Thieves.
3/5/2013 - Build 3139 Fix made to the Estimate feature in both encounter dialogs and cursor tooltip. There should no longer be any desync issues caused by the new feature.
3/1/2013 - Build 3138 - Second Update.
Fixes made to 'gs\story.gs' regarding Marauder quotes being interrupted with the previous fix involving thieves feature of estimating power.
Changes made in 'gs\GAMEUTIL5R3.gs'.
The checks that look to see what a unit's level is shall not ignore creatures who have no leveling capability that use a different method of level setting. When checking for max levels, it will always return a logical integer response.
The maximum allowed level will now check to see if the level the unit is being restricted to, experience wise, requires a positive value. For instance, an Ogre can now be trained with more than 0 experience before turn 70. Previously, it wouldn't get any experience to start with.
3/1/2013 - Build 3137 The "Estimate Power" feature for Thieves expanded to dungeon tooltip display. For dungeons you have approached, either by scout or by any other army, the estimated power will display for unconquered dungeons within the sight radius of the selected army with which there is a Thief.
Simply put, if your current selected party has a thief, and a dungeon is within the sight radius of the thief, you can estimate the power of the army inhabiting the dungeon if you have visited/approached the sprite.
AI players who are alive and playing now have adjusted resources. They will start with more, basically. In multiplayer, those AI faiths who are not playing will start with 10 of each resource.