For a lot of users, Beta 2-B is going to feel like several steps backwards in terms of playability and fun. We apologize in advance for that.
I myself have found the pre-beta 2b builds to be really painful and unfun so you have been warned.
The beta should be up tonight for those users already in the beta group.
Here are some of the things we’re looking for from the beta group:
- Suggestions and ideas on how you would like to manage spells. We’re working on this internally but we’ve love to hear your ideas.
- Suggestions and ideas on how you would like magical spells that stay in effect (do you want to require a mana cost or just have it be free? I’d rather see it be free otherwise players will have to run around dispelling things and that’s just tedious).
- Requests for types of quests you would like to see.
- Any other feedback you’d like to provide is welcome, particularly on things that make Magic and Adventuring a viable alternative to “mundane” strategies.
---------------------------------------------------
----------------- Beta 2B Change Log -------------
---------------------------------------------------
****************
* Gameplay Tweaks *
+ Changed all improvements to start with a sensor range of 1, to be updated on completion to whatever value the improvement type uses
+ New map for beta 2B
+ Beta 2A map renamed Dragon
+ New spells added
+ New resource: Wild Garden
+ More balance to units
+ Added a player ability A_SpellPointCapBonus that gives a bonus to the max spell point cap of a faction
+ Added Administrative bonus to the city cost (primarily for the Civilized bonus)
+ Implemented the "StartingCity" tech for civilized (will cast the ground spell and create a city)
+ Added the "StartingCity" tech for Civilized
+ Changed RestoreGarden to place a wild garden instead of a fertile land resource hoard
+ Automatically unlocking resource hoard types is now data-driven, instead of listing resource types in CWorld::CreatePlayer to get them to be available off the bat
+ New Realm descriptions for Empires/Kingdoms from the Hiergamenon
+ Fixed references to Telescope in Wild Goose Chase quest
+ Changed IceSpellbook to WaterSpellbook for consistency
- in NewCity(), commented out the code that was giving cities a starting population of 10. The city hub changes its tile design based on certain population thresholds, and by setting it to 10 right from the get-go, some of them were getting skipped
+ Created new Magic Resources
+ Hooked up Temples to Technologies
+ Uncommented Basic Garden, renamed Display name to Basic Garden
+ Can now put defending unit game modifiers in tile design xmls, and if that tile design is used for a world prop, when a unit is on top of that world prop they will get the stat bonuses specified in the modifier
+ NPC's ability stats more properly balanced.
+ Lots of new goodie huts and question destinations
+ Lots of new quests
+ Several new monster units
+ New Spell: Summon Imp
+ New Spell: Summon Familiar
+ New Spell: Summon Wilding
+ New Spell: Summon Minor Elemental (earth, air, fire, water)
+ New Spell: Summon flowers (cosmetic spell)
+ New Spell: Summon mushrooms (cosmetic)
+ New Spell: Summon meadow (cosmetic)
+ New Spell: Beautify Land (cosmetic)
+ New Spell Book: Book of Restoration
+ New Spell Book: Book of Summoning
+ New Tech: Spell Control
+ New Tech: Technologies can give player access to spell books
+ Several new magical items players can get during higher level quests
+ Beta map is now sprinkled with bits of revived land
+ Normal size on units is now slightly smaller
+ Wolf is nerfed
+ New Spell: Brilliance. +1 to all research buildings and is part of the base spellbook
+ New Spell: Productive. +1 to all material producing buildings and is part of the base spellbook
+ Added UnlockAchievement(pPlayer->GetPlayerID(), ELEMENTAL_ACHIEVEMENT_ID_CAPTURED_A_CITY);
+ Added UnlockAchievement(ulKillerPlayerID, ELEMENTAL_ACHIEVEMENT_ID_MONSTER_KILLER);
+ Added UnlockAchievement(ulKillerPlayerID, ELEMENTAL_ACHIEVEMENT_ID_DEFEATED_ARMY);
+ Changed Iron(WeaponName) internal names to just (WeaponName) for consistency
+ Hooked up new Icons to Ancient Ruin Quest Tiles
+ Created Experienced Unit Quality Type
+ Fixed some NPC Backstory/Quote spelling errors
+ Spawn System Changed. There are now spawn levels for:
- The world's monster spawn level.
- The world's goodie hut spawn level.
- The world's NPC spawn level.
- The world's quest spawn level.
- The player's individual goodie hut level
- The player's individual NPC recruiting ability
- The player's individual quest level
+ When a player researches a technology that increases goodie hut or quest spawn level, it now checks to see if their level is equal to the world's. If it isn't, then it doesn't increment the world's spawn level.
+ Several new quests added
+ Adventure technologies updated to support the new spawn rating system.
+ Fixed the hedge wall, fort wall and fortress wall to provide +2, +4 and +8 defense respectively.
+ Created Stronger versions of existing potions
+ Renamed InternalNames for Book Of Experience for consistency
+ Created Archivist unit unlocked through Archiving technology
+ Moved all the improvement tiles that were in the core tiles directory into the improvements sub-directory
+ Moved all the quest tiles that were in core tiles to the quests sub-directory
+ Updated the beta map to have a lot more resources and goodie huts. WIP.
+ New resources added:
- Old Growth Forest. Build a lumber mill on this and you can get lots of materials. WIP.
- Pumpkin Patch. Build a farm on this to get food out of it. WIP.
- Enriched Land. Build a farm on this to get 500% more food.
+ AI updated to be more effective at building cities.
+ Familiar now uses bandit animation
+ Core Tiles loading now takes place in the XMLData load thread to speed up initial loading.
+ Added environment type short name to the terrain and environment draggable info card in the main game wnd
**********
* Bug Fixes *
+ Fixed bug where if game was saved while unit was playing an attack animation, it would play attack animation when game was loaded even though attack wasn't happening
+ Added call to UpdateFOW in StartConstruction
+ Added code to update sensor range to be same as improvement type's sensor range upon completion, with a min of 1
+ Fixed bug where Improvement was not updating FOW after being placed
+ Added check in DestroyImprovement which prevents the walls from being re-calculated unless the destruction leaves a tile completely empty
+ Added code in DestroyImprovemetn to mark the ZOC as dirty
+ Fixed GetBuildTownHallEssenceCost to actually get the essence cost from the spells instead of just setting it to 1
+ Fixed bug where IsActionAvailableToUnit would never let the negotiate action be available, because it would skip the logic for it
+ If no death flyback animations, units will play a regular death animation
+ In ApplyGameModifier_Map, fixed a crash if a CreateResourceHoard was given a non-existent resource type for a resource hoard, from a missing null pointer check
+ Fixed bug from the forums where experience books would not give experience points, but would instead adjust the experience stat of the unit that used them
+ Checked in elite catapult that Paul gave me before with the basic catapult, but that I didn't add at the same time
+ Found the inconsistency between how loaded improvements were built and how loaded "under construction" improvements were built. The under construction ones would upgrade correctly but the built ones would not. Changed the code in City.cpp::LoadImprovementAndCreate() to fix the problem. Also updated the savegame version to 135 in Elemental.cpp.
+ BuildAllowedSubtileList() function wasn't taking into account the fact that resource hoards can now be created with spells and thus wasn't allowing improvements to be built on them. Fixed.
+ Made IsTileEmpty more efficient
+ If an improvement requires a resource hoard, we no longer test for correct terrain after finding the hoard since the terrain is irrelevant.
+ If an improvement requires that another improvement already be built we do not list it in the improvement list since we've no way to express to the user why it's greyed out. (Example, the granary, which you can only build after building a farm, wheat farm, apiary or orchard.)
+ Fixed FindPath bug where the server wouldn't send the path if it was already calculated
+ Fixed bug where path tiles were not being saved in CEventData_UnitBuildTownHall
+ Fixed bug where resources would remain hidden if you uncovered them while in cloth map
+ Fixed bug where the riders on mounted units would always use their idle animation in a unit cutscene, no matter what the unit's animation was set/changed to
+ Made the city radius system check the actual XML to determine the build radius and made it more flexible.
+ Improved the EndTurn function so that it does not iterate through the player list multiple times
- Combined similar code for calculating the population changes
+ Restored improvements showing up greyed out if the city is not of the appropriate level yet.
+ Fixed a case where a pointer to an improvement might be null before it is used, causig a crash.
+ Added CImprovement* GetImprovementUnderConstructionByID( ULONG ulID );
+ Fixes to DestroyImprovement
+ Added call to apCopiedImprovements.reserve to optimize allocation time
+ Changed calls to apCopiedImprovements.insert to insert at end instead of beginning, which will use less copying
+ Changed loop that was adding other improvements not in same list as pImprovementToDestroy to use a call to std::find_if to find the improvement, and then used iterator arithmetic to do inserts, thus eliminating the need to do another find
+ Eliminated extra loop to search for improvement that we've already found
+ Found the inconsistency between how loaded improvements were built and how
loaded "under construction" improvements were built. The under construction
ones would upgrade correctly but the built ones would not.
+ Missing Horse quest will now give a mounted unit that can be equipped (i.e. horse riding).
*****
* UI *
+ Flags in city and city wall gfx now display the correct team color
+ Fixed bug where if you equip/unequip items on champions in an army, the army's gfx wouldn't update
+ Improved the path and position of the "arrow" effect when using archers or other ranged units
+ Edge scroll speed now goes from 0 - 400, with 5 notches. Max value + num notches are stored in prefs so that users can knock themselves out
+ Fixed color of flags (they were using the smart colors)
+ Added "No Scaling" unit scale option
+ Added call in SetOwner to update stats that go on the subwnd and tooltips (otherwise you have to end the turn to take effect
+ Added some new text for the spellbook
+ Added an entry on the page for the spell type
+ Added code to SetOwner to update EmpireTree
+ Added code in UpdateStats to update FOW if current sensor range has changed
+ Fixed bug where city wasn't updating empire tree if it wasn't the capital
+ Updated ImpulseReactor and overlay binaries, including new achievements screen
+ Checked in changes to catapult, adding annotations so elite catapults and both fallen catapults can launch projectiles when attacking
+ Added cooldown time and range to the spell info card
+ Made the "Mana:" text disappear when Mana is 0
+ Changed the "Cost" icon to the Spellbook (as is used elsewhere). Changed "Spellbook" icon to the wisdom icon to avoid confusion
+ Updated intro lore book text
+ A few changes to the build list - improvements will no longer show up if the city is not of the appropriate level. They also won't show up in the list if the improvement requires a previous improvement that isn't built yet.
+ World prop bonuses will show up in the terrain info box, below any terrain bonuses
+ Added ability to set faction config metal color with <UnitMetalColor> tag, and added a metal color entry to the customize faction wnd
+ In the create sovereign wnd, the color swatch lets you set the metal color instead of the clothing colors
+ Removed metal color overrides from base sovereign and soldier unit types so that new units made during the game will be affected by the metal color of the faction
+ Updated Research Wnd
- Updated the OnBreakthroughSelected function to handle the new page format
- Updated the MSG_CUSTOM_LISTBOX_ENTRY_HIGHLIGHTED Callback to deal with now having 2 listbox's with highlighting
- Removed functions FillTechUnlockIconList and FillTechLeadsToIconList for FillTechPossibleList responsible for everything+ Gave new unit types in the create sovereign screen a default metal color of light grey, instead of black
+ Fixed bug where when you cast the create garden spell, the garden would not show up until FOW update
+ Overlay Fixes
- When in windowed mode having an overlay dialog open no longer stops you using the titlebar buttons or moving the window using the titlebar.
- The achievements option is back in the main menu (now that we have achievements)
- The achievements which have yet to be achieved now have grey text to better match the greyed out icons
- The mouse wheel is working again in the achievements window.
+ Changed citybuilding so that you can no longer destroy an improvement that would
make your city non-contiguous. This shoud fix all of our city weirdness,
including broken walls.
+ Improvement.h/.cpp - removed the internal check for contiguity since this needed
to be done at the city level.
+ Added a new function CheckImprovementContiguityList() that takes a list of improvement
pointers and checks to see if the defined city is contiguous.
+ Changed DestroyImprovement() to build a improvement list without the improvement to
be destroyed and to check if the city would still be contiguous. If not, a message
box pops up telling the user that they cannot destroy the improvement.
+ Elemental.str - added strings for the new messagebox popup.
* MISC *
+ Added a spawn rating to CGoodieHutType, which defaults to -1. Currently, there is no spawn rating data set for any of the
goodie huts.
+ Can now place random goodie huts in the map editor. As with NPCs, creatures and quests, you can specify if these random goodie
huts are spawned at the start of the game, or when the goodie hut spawn rating level hits the appropriate value. A Spawn
rating between 1 and 10 must be selected. When the map is loaded into a new game, it randomly selected which huts are placed
at those locations. Only a goodie hut with a corresponding spawn rating will be placed; if one cannot be found, nothing will
appear at that tile.
The random selection is weighted using the rarity value in the goodie hut type; a value between 0 and 100, it determines how
likely it is that any given goodie hut will be chosen. A higher value makes a goodie hut more likely to be selected, while a
rarity of 0 means it will never been selected.
Goodie huts with the “spawn on level reached” option set get placed on the map when the goodie hut spawn rating reaches that
level. As with the NPC, creature and quest spawn rating, this value is incremented with an “update spawn rating” game modifier
is applied. These modifiers are identical to the NPC, creature and quest update spawn rating modifiers, only with the StrVal
set to GOODIEHUT. Currently, there are no update spawn rating modifiers for goodie huts in any of the XML data.
- Cities start with population of 2 instead of 10.
+ Added game modifier for placing a world prop at a given tile (and here's an example):
<GameModifier InternalName="Fortify">
<ModType>Map</ModType>
<Attribute>CreateWorldProp</Attribute>
<StrVal>P_Fortify_01</StrVal>
</GameModifier>
+ Automatically unlocking resource hoard types is now data-driven, instead of listing resource types in CWorld::CreatePlayer to get them to be available off the bat
+ Setting <NeedsToBeUnlocked> to 0 in the resource type xml will make it show up at the start of the game without needing a tech or anything to see it
+ To keep the same behavior as before, resource types default to TRUE for NeedsToBeUnlocked, so put <NeedsToBeUnlocked>0</NeedsToBeUnlocked> in any new resource hoard that you don't want the player to need a tech to see.
+ Can now permanently block off tiles from movement in the map editor using the “Blocked Tile” tool. Tiles blocked off appear
with a red ‘X’ graphic. Once blocked off, no units will be able to enter that tile for the duration of the game.
+ Added the ability to specify a wander radius for NPCs and creatures in the map editor. When set to the default value, NPCs and
creatures behave normally, but when overridden with a wander radius, that NPC/creature will patrol around their tile of origin
within that radius. If set to 0, the NPC/creature will not move from their spawn tile.
+ If you turn down a quest after being offered one from a quest location, it removes it from the map.
NEXT WEEK
Next week begins the Beta 3 series!
With that all the technology trees get enabled, the Imperial factions get enabled, the minor factions get enabled, tactical battles will get enabled (beta 3A), and tons of other stuff get enabled.