Caster of Magic for Windows - v1.2.0 Update

Master of Magic Classic

Master of Magic is a classic, one of the most popular strategy games of the 90s. It is a 4X fantasy strategy game that allows you to play as an extremely powerful wizard, leading your troops and overcoming your magical opponents.

We're releasing a new update for[b] Caster of Magic for Windows[/b]. It contains a truly extensive list of fixes and improvements. You can find the full changelog below: Please let us know what you think of the changes listed below, as usual your feedback is important to us. [b]WARNING: [/b]Save files from previous versions are not compatible, as changes were needed to support the new modding features, which require additional data to be stored. [b]Bug fixes, gameplay, general changes:[/b] • Fixed bug: The game crashes when the player attempts to move a unit outside the map area. • Fixed bug: Rare and Very Rare spells can be found in treasure when it shouldn't be possible and cannot be found when it should be possible. • Fixed bug: Armageddon and Doomsday cast by the human player doesn't increase unrest in AI cities. • Fixed bug: Nightshade has twice the intended effect on Cathedrals • Fixed bug: When Darkest Hour is cast by the human player, it doesn't reduce enemy research and power. • When multiple opponents have cast Darkest Hour, the effect will be merged to one displayed line in the resource detail view. • Fixed bug: Doomsday cast by the human player doesn't cause AI cities to shrink when exceeding maximal population. • Multiple instances of Doomsday enchantments will now show the total population growth reduction as a single line in the detailed view. • Racial resistance modifiers now apply to settler units. • Fixed bug: the Leave Me Alone setting also forces the AI to build at 6 distance from their own or other AI cities in addition to the human player's. • Fixed bug: Starting a new game with "I am the Boss" and very high player count can freeze in an endless loop. • Adjusted the AI's "need casting skill" strategy flag to depend on difficulty level. • Adjusted how the AI's "need troops" strategy flag depends on the number of owned cities per land size setting. • Fixed bug: Resistance removed by Eternal Night does not display a grey icon. • Fixed bug: Animate Dead doesn't grant +1 thrown or breath attack strength. • Fixed bug: When the AI casts Spell Ward, a different city enchantment is applied to the city instead. • Fixed bug: Scoring screen shows item looted from the final battle. • The AI will not cast Stasis during Time Stop anymore. • Fixed bug: The human player could target heroes with Animate Dead even though they were invalid targets. • Smallest map size is now forced to be 15x15 tiles. Any settings that would result in smaller maps will raise the size to this number. This was necessary because on smaller maps, the game sometimes freezes due to not finding valid locations for objects, such as nodes. • Fixed more spell descriptions in the documentation. • Fixed bug: Mystic Surge fails to add Adamantium and Mithril to units. • Fixed bug: Animated status fails to set resulting undead effects until the unit's data is recalculated twice. • Fixed bug: End of turn healing caused by Regeneration is applied on the wrong unit. • Fixed bug: Eternal Night reduces the resistance of the owner's units even though it should only apply to enemies. • Fixed bug: Floating Island can appear in combat on land if it gains Flying. • Fixed bug: Angels had Exorcise +1 instead of -1. • Fixed bug: Focus Magic didn't convert thrown attacks to ranged. • Fixed bug: AI and "Random" wizard starting spell selection doesn't clear selection slots 11 and above or any very rare spell slots. This could lead to incorrect spells when starting a new game after winning/losing another one, or when cancelling a previous selection and returning to the previous page(s). • The AI will prioritize targeting enemies during war higher when targeting a Raise Volcano spell. • The AI will prioritize players in range for a war declaration (adjacent empires) higher when targeting a Raise Volcano spell but lower than targets they are already at war with. • The AI is now allowed to send a magic spirit to any nodes regardless of distance if they already have troops guarding it. • Fixed bug: Raise Dead and Animate Dead couldn't be used in sea combat. • The AI will reduce tax rates during the first 40 turns of the game if necessary to get rid of unrest and aims to have no rebels at all to maximize production output. • Fixed bug: In Automatic Combat, army ammo is sometimes considered zero when ranged units and non-ranged units fight together. • Fixed 1.1.1 bug: Normal Caster units don't have the Fireball Spell in their spellbook. • Reduced the AI's chance to build Amplifying Tower in the early game. • Fixed bug: Doom Gaze is applied once per figure instead of once per unit attacking. • Fixed bug: Carrack consumes 1 food even though boats should not have upkeep costs. • Fixed bug: Spell Lock didn't protect units from Great Unsummoning • Fixed bug: Death Immunity didn't protect units from Final Wave • Fixed bug: Mithril/Adamantium is now visible on units in the list view. • Default Tower Budget multiplier for I Am the Boss score modifier is now 70% instead of 50%. • Fixed 1.1.2 bug: AI starting race selection only sets the city race but fails to set the AI's home race variable. This can lead to poor AI decisions and incorrect unrest values during the game. • Ice Bolt will no longer freeze Non-Corporeal or Immolating units. • The AI will not add additional priority to the Ice Bolt spell based on the freezing effect if the target cannot be frozen. • Casting Wraith Form on a unit will now instantly remove the effects of the Web spell from the unit. However, movement points will not be refilled until the start of the next turn. • Cities on the minimap will now glow for better visibility. • Adjusted Shore/River/Lake/Swamp/Hill pixel colour on the minimap. • Adjusted Myrran Forest pixel colour on the minimap. • Fixed bug: Monster Invasion event sometimes fails to generate monsters. • Rivers now have a greatly reduced chance to turn in the same direction twice in a row. • Changed the score modifier for Plane of Earth to 80% from 50%. • Added new scoring option: "Standardized". This causes all opponents to use default wizards. Normal difficulty level does not have this effect by default anymore, but Easy does force using this option. • Added new scoring option: "Plane of Water". This option increases the Sea to Land ratio, the opposite of the effect of "Plane of Earth". • Fixed bug: "Mixed" continent size option works incorrectly and generates only continents of one random size on the Myrran plane. • Slightly increased the default size of continents on Average and Large continent size settings. • Fixed bug: Stream of Life effect is applied before Chaos Rift damage instead of after. • New Feature: Pressing Ctrl+1 to 9 saves the current location on the map. You can reset your view to the saved location by pressing 1-9 afterwards. Starting a new game or loading a save file clears these saved locations. • The AI will not cast the Fire Elemental and Construct Catapult spells if the enemy has Entangle in effect • Fixed a few bugs that could cause the AI to cast direct damage spells on undesirable targets. • Scoring: Size multiplier is now based on the number of land tiles in the game, instead of the plane's width. • "No Overlap" score modifier is now worth 70% instead of 100%. Fewer cities/land tile makes the size modifier overestimate the difficulty compared to the default. • Clarified in game help and documentation: Ruler of Heaven protects all of the caster's enchantments from dispel, not just global enchantments. • Darkest Hour now has an additional effect: The caster's city enchantments are 100% harder to dispel. • When the player starts on Arcanus, the maximal amount of Myrran wizards rolled is now only 1 higher than the minimal required amount instead of allowing all but one wizards to roll the Myrran retort and start there with extremely bad luck. • Added new scoring option: "Inverted Worlds". This swaps the number of Arcanus and Myrran wizards with each other. • Adjusted the amount of ships AI players intend to have in play. • Fixed bug: The scoring screen sometimes displays the wrong score multiplier value (applied value was correct). • Fixed bug: "Rebuild All" option doesn't remove then readd Housing/Trade Goods to the queue, resulting in invalid queue data. • When neutral monsters spawn, the nearest city will be displayed instead of any city within a valid range. • Heroes in a wizard's fortress now contribute 20% of their Caster ability instead of 1/6th. • Fixed bug: Ships enchanted by Water Walking or Wraith Form can move on land. • Fixed bug: The AI prioritizes targeting Warships with Wraith Form even when the new modding option to enable these units to fight on land is not enabled. • Fixed bug: The AI uses 375 more MP on disjunction sliders than needed. • Fixed bug: Windwalking units in the unit list view do not show "flying" as their movement type. • Fixed bug: WindWalking units in combat can move outside the "wind" area over sea as if they had sailing movement. • Fixed bug: Great Unsummoning and Final Wave is added to the monthly report twice for each cast. • Fixed bug: Clairvoyance fails to show invisible enemy units in the list view. • Fixed bug: The AI fails to use the additional slider cost on combat spells. • Reports added during the human player's turn will now always force showing the report scroll, instead of waiting for the next turn. • Fixed bug: Only 10% of the calculated bonus priority based on expected damage from combat direct damage spells was applied to the spell priority. This resulted in the AI failing to pick the best (highest damage) direct damage spell to cast. • Improved the AI's decision on using spells vs shooting with Magician or similar units. Actual expected damage is now used instead of spell priority. • Fixed intro playing speed not matching sound. • UI improvement: Clicking one mutually exclusive retort unselects all the other ones instead of sometimes itself. • Fixed bug: Heroes gain their level-up resistance and ranged attack bonus 1 level later than intended. • Right Clicking on the minimap now has the same effect as Left Clicking it. • Neutral units (garrisons in neutral cities) can now gain 1 experience per turn like units controlled by wizards. • Fixed bug: When a unit dies to wall of fire, it doesn't get unselected. • Fixed bug: When the AI's unit died to wall of fire when moving to perform a melee or ranged attack, it didn't abort the attack sequence. • Fixed bug: When scrolling on the Cartographer, the validity of the Y display position isn't checked • Fixed bug: When leaving the Cartographer, the displayed map area is a few tiles off-center of the cartographer map. • Fixed bug: Raise Dead and Animate Dead sets the animation frame of the unit wrong. • Fixed bug: Starting capitals use Barbarian city names instead of the correct race. • Fixed bug: Settlers enchanted by Destiny were malfunctioning, possibly leading to crashes. Settlers are no longer a valid target for the Destiny spell. • Fixed bug: Buying an item while autosaving for a turn does not save the received item but saves the paid price. Autosaving is now delayed until the item is stored. • Fixed bug: After fleeing from a fortress battle, banishment animation doesn't play and the surrender choice isn't displayed. • Adjusted the click areas of city buildings on the city view. • Fixed bug: Chaos Surge failed to increase breath attacks strength. [b]Modding[/b] • Animation Frame count and Vizier priority is now moved to Buildings.INI • The game will no longer freeze when there are too many buildings to display in a city (as a consequence of modding building data). However, it's still recommended to use the "replaced by" feature to reduce the number of possible simultaneous buildings to an amount where this doesn't happen. Excess buildings that cannot be drawn will be impossible to sell for the player, as they cannot click on the building. • It is now possible to change the amount of building types in Modding.INI, to add new buildings. • Added "Iswall" parameter. This determines whether a building should be displayed in the "city wall" area instead of this being hardcoded. • Added "OnShore" parameter. This determines whether a building should be displayed in the "shipyard" area instead of this being hardcoded. • Added EcoSkill.CAS script to calculate the base, combat and overland skill of players. This can be used to add new buildings, spells, or other effects that change casting skill. Changing the base skill formula is not recommended. • Added many new script commands and functions, see Scripts.txt for details. • Tax table is now external in Tax.INI and it is now possible to change the number of different tax levels. • Added EcoUnrest.CAS script to calculate the unrest of cities. • Optimized the script engine to run about 50% faster. Please remember that running scripts is still significantly more computationally expensive than running an equivalent hardcoded function. Avoid making scripts that are too complex or you may experience FPS drops or slow turn times especially on scripts that are frequently used. • Fixed bug: %F and %I have each other's effect in scripts • Fixed bug: Space characters in scripts get removed from within string constants as if they were code. • Fixed bug: Characters in scripts get turned to uppercase in string constants as if they were code. • City economy data (unrest, gold, research, power, etc) calculated will be stored and will only be recalculated when something happens in the game that might cause a change in the result. This should reduce the number of calls done to these scripts and improve performance overall. • Added EcoGold.CAS script to calculate the gold of cities. • Added EcoProd.CAS script to calculate the production of cities. • Added EcoPower.CAS script to calculate the power generated by cities. • The scripts now support using <> for "not equal". • Fixed bug: For/Next loops in scripts fail to run for the last value in the loop. • Added EcoResearch.CAS script to calculate the power generated by cities. • Added EcoFood.CAS script to calculate the power generated by cities. • Added EcoMaxPop.CAS script to calculate the maximal population of cities. • Removed Waterwalking, Windwalking, Forestwalk, Flying, etc script commands, and added a generic GETSTAT script command instead to get any unit stat or ability. • Added Settler.CAS script to set the base stats and abilities or settlers from various races. • The data tables used by the AI to decide which race they prefer to build settlers from are now external in AIRacepref.INI • Spells.INI now contains AIWaterMove flag to mark which spells allow the AI to not prioritize early game shipyards. • Added AIProd.CAS script for the AI's city production decision • Added AIBuilding.CAS script for the AI's building priority decision • Script error: "Variable does not exist" will now show the missing variable's name. • Fixed bug: "Call" keyword in scripts does not work. • Added Earth Lore area size to MODDING.INI • Added AI maximal spirit distance and spirit exception parameters to MODDING.INI • Fixed bug: Offensive stats and abilities had no effect on Shield, Plate and Chain Mail type items. • Added debug mode logging of AI building priority, mandatory building decision, and unit/building decision. • Added debug mode logging of Automatic Combat army stats • Shift-H in debug mode now also shows AI city production and income data. This can be useful for debugging related scripts. • Added AIPreHousing script to decide which buildings the AI buys before starting to build Housing in a new city. • AI resources bonus values and other difficulty parameters are now external in DIFFICULTY.INI. • The unit ID of the starting units (swordsmen) is now included in RACES.INI • Added the maximal number of races to MODDING.INI. This allows adding new races to the game. • RACES.INI now contains the name of each race and their home plane. • RACES.INI now contains data fields to mark races as playable, or valid as neutrals. (Setting a system race such as Chaos Realm as a playable race will cause the game to crash.) • Increased the maximal amount of disallowed buildings supported on races to 100. • Added food upkeep field to Units.INI • Conversion rate of excess food to gold can be set in MODDING.INI • To Defend cap and cap effect can now be changed in MODDING.INI • The AI spell rerolling feature can now be disabled or the difficulty level required to activate it can be changed in Modding.INI • The spell table used for the AI rerolling feature is now external in AIReroll.INI • Combat movement costs of each tile type and relevant special movement ability is now in Modding.INI • Overland movement costs of each tile type and relevant special movement ability is now in Modding.INI • Road movement costs are in MODDING.INI • Added a parameter in MODDING.INI to adjust the chance of a river turning in the same direction twice in a row. • Added a setting to MODDING.INI that disables the secondary effect of control changing spells (Confusion, Possession, Creature Binding) where they irrecoverably kill the unit. Disabling this feature might lead to unwanted side effects, such as Raise Dead reviving units to fight for the enemy side. Use this option at your own risk. • Added FORTLIG.CAS script to calculate fortress lightning strength and duration. • Added logging of the fortress lightning strength and duration during debug mode. • Score modifier names, display order and score value are now external in SCORING.INI • It is now possible to add new score modifiers by raising the maximal amount in SCORING.INI • Calculated map size is capped at 200x200. This should prevent any crashes caused by raising map size related values in the modding.ini file too high. • Added debug mode logging of dispel effect strength and resistance when Dispel Magic, Dispelling Wave, Disillusionise, Disenchant Area, or Disjunction is cast. • Item power data is now external in ITEMPOW.INI • Maximal house type ID is now in MODDING.INI • Increased several data structure sizes to make it possible to implement modding for related features in the future without losing save game compatibility in those updates. (such as maximal number of spells) • Added "ForceDebug" option to Modding.INI to make the game always start in debug mode. • The rate of hero caster ability to wizard skill is now in Modding.INI. • Added an option to MODDING.INI to enable non-corporeal ships to enter land and combat on land. When this option is enabled, the AI should recognize these units as being able to carry their stack on land tiles, however it will not actively pursue using this as a strategy by prioritizing boats as the targets for the Wraith Form spell. • EXP gain per turn for neutrals feature can now be disabled in MODDING.INI • When Earth Lore AOE is changed, the targeting will now show the correct area instead of the default. • Added Modding.INI setting for number of city names in citynames.ini