C2C SVN Changelog

8991
  • Hostile Units, even when not seen, can now capture cities.
  • Some adjustments to Standout Status.
  • A few tweaks to the Battlefield promotions to disallow promos with some negative values.
  • Removes prereq of Bark on Ecstasy Lab.

8992
  • Feline Review:
    • Trained Cat Edited
    • War Cat Edited
    • Guard Cat Edited
    • Police Cat Edited
    • Feline Superior Edited
  • Edited Hellsmouth Dogs to fit the Canine Review (had been overlooked.)
 
8993
  • New Tech Tree Screen

  • Fix tales of sharks and subdued caimen units so they build the correct buildings

8994
  • Remove reference to Platyping's Dynamic Civ Names mod from config init file

  • Add Crab stories etc
 
8995
  • Healing Unit Review:
    • Wise Woman edited
    • Healer Edited
    • New Unit Medicine Man added
    • Apothecary Edited
    • New Unit Doctor (UNIT_DR) added
    • Surgeon Edited
    • Medic Edited
    • Ambulance Edited
    • Modern Ambulance Edited
    • Medevac Edited
    • Modern Medevac Edited
    • New Unit Medical Lab Technician Added
    • Medevac Dropship Edited
    • Monk Edited
    • Shaolin Monk Edited
    • Florence Nightingale Edited
    • Shepherd Edited
    • Vet Edited
    • Field Vet Edited
    • Medical Vet Edited
    • Merlin Edited
    • Park Ranger Edited
    • Ecologist Edited
    • Cartwright Edited
    • Siege Engineer Edited
    • Gear Mechanic Edited
    • Machinist Edited
    • Mechanic Edited
    • Motorpool Edited
    • Auto Electrician Edited
    • Replication Mechanic Edited (major bugs were in these last 2)
    • Service Droid Edited
    • Aviation Technician Edited
    • Flight Technician Edited
    • Jet Technician Edited
    • Astronautic Technician Edited
    • Programmer Edited
    • Software Developer Edited (can now alternatively upgrade to a Hacker unit which should be interesting.)
    • Systems Analyst Edited

I may need to further review the nano healers but for the most part, this completes the Unit stage.

There's a few debugs hanging around that I should be now able to get to tomorrow.

@Art guys: The new units are now all in place and there won't be more coming for this version so if and when you can address them, it's all there.

EDIT: Actually... that might be a lie. There could be a new line of units to contend with that would need only very slight repainting and perhaps a new button style. I may be able to get that new line in place fairly soon as well. But of the categories so far worked on, the units are complete. Scratch that... I've figured out how to address the need that was prompting a new unit line with a new promotionline instead. Will make more sense ultimately but may be a little tricky for AI arranging. Still... easier than doing a new line of units!


8996
  • Ensures that units that cannot be attacked due to Amnesty rules are only protected while under a Rite of Passage or Open Borders agreement, freeing up units in your territory to be attacked if such agreements don't exist.
  • Fixes a problem with the AI sometimes not making any research selection.


8997
  • Repairs DCM Stack Attack option. (You can use Archer Bombard with this too but it is not advised. Some additional playtesting could be useful. I cannot be 100% sure that there won't be some small bugs but it tests out fine so far as I can see.)

Thanks again for the original CvUnit.cpp file Joe!

Finding the little tweak between the normal updateCombat and updateStackCombat, I found that it makes sense but was very frustrating that the original programmer felt it was necessary to do an entirely new function for it rather than a small 'ignore this next part if we're using DCM stack combat' exception line which was, after some analysis, all I needed to add to the normal updateCombat function.

If this plays out as well as it did in the short playtest I ran, then I can eventually completely remove rather than simply comment out the updateStackCombat function which will save quite a bit of text space on our CvUnit.cpp file which is REALLY a good thing since we're probably getting close to overloading that file's maximum amount of lines as it is and this is a significant chunk.


8998
  • Fixed some general gameplay slowdown.

  • If a unit cannot attack, it cannot arrest or ambush.

  • Discovered a bug in visibility and fixed it (Hopefully that was the last one that was throwing things off there requiring a vision recalc every round - that's now been disabled so be watching for oddness in visibility rules not being adhered to.)

  • If a city is at minimum defense level, its defense value now appears red.

  • Should have fixed the vote overflow issue and some related potential overflows but in the effort, it certainly shows we have some absolute limitations here where total population can overflow and at that point, the ability to further track asset and power values for a player becomes capped so late late game will tend to show many players being completely maxed out on these measurements and there's little to nothing we can do about that.

    @Snofru: If you still have the game that was showing an overflow on votes, this could be tested to ensure that the fix works properly. Should be capable of working even after it had a previous flaw. However, one overflow can cause other problems in the code later so it's not 100% reliable that it WILL work once the problem has shown up.

  • Moved setQualifiedUnitCombatTypes to the load sequence rather than game initiation so that valid unitcombats for a promo can now be seen in the pedia without having to start a game first.

  • Fixed some display problems with flank attack listings.

  • Investigation checks now gain the benefit of an additional 5% of the total investigation from all units present in the city aside from the one selected to be the primary investigator. After adding so much Insidiousness to crime buildings, this becomes necessary to ensure the potential for successful investigations.

  • New python reported Unit Type check for isQualifiedPromotionType(iPromotion) for the unit page in the pedia.

    @DH: use this in the same way as you did the validation for unitcombats on a given promotion but you'll instead check if the promotion is valid for the unit.

    There will be exceptions to the display in that units may get promotions that add new unitcombats that then open up access to additional promotions but this is for the basic pedia display so didn't take those into consideration.

  • A few adjustments to criminal units to eliminate an unnecessary tag usage.

Also: @Joe: I did some testing of the extra costs on the new units and they didn't seem prohibitive so far. Obviously more testing will be necessary on harder settings perhaps but on Immortal/Normal (yeah I was testing Normal gamespeed which is unusual for me) and not getting too far into the game, I was able to support 2 healers and a watcher and still be at +2 gold/round on 100% research. This was easily controlling crime and disease. I'm thinking that if these kinds of measures are taken early on, which they really should be by players who care to control their properties, then as long as units are added only as necessary, a budget can be maintained while keeping control. If you let it go for too long before taking control measures it would start costing a lot to turn the tide back. That was kinda the design goal anyhow. But again, some further testing, and perhaps some deity level testing, should be necessary to completely confirm that it's manageable.

@DH: You were talking a while back about having a selected unit information display screen... with the new complexities being added to units along unitcombat information platforms, some units are getting to the point where I'm unfortunately going beyond the amount of information that the help hover can show, even after the hotkey hover pages have isolated different categories of info. AKA, that project would be a very desirable addition.

@DH: I LOVE the new tech tree screen! The larger icons may show a little more pixelation but they're still brilliant! You can see what they are now! Woohoo! Excellent addition there - finally saw it during some playtesting this evening.


8999
  • Edited the protocols for ordering property control units to be built by the AI.
  • For the above purposes, added new tags for properties (iTargetLevel and TargetLevelbyEraTypes) whcih establish where the AI feel it is optimal to 'be' in their cities.
  • Edited the protocols for property control units to be sent to cities that need their help.
  • Edited the protocols for property control promotions to be selected.
  • Edited the protocols for property control units to seek safety which should keep them from ejecting cities that are threatened.
  • Edited the protocols for the establishement of the Quick March status which should now keep hunters from running around on quick march status among other possible similar issues.
  • One more point: Even positive properties should now be fully considered by unit AI - therefore if the AI needs it enough, it should even be able to now build and best utilize storyteller units to educate a city in need. There's a few conditions I may not have met to fully enable this but I THINK it should currently work right. Testing to confirm this kind of thing is nearly impossible.

@All including playtesters: Please watch the property control units and if they seem to be doing anything less than optimal at this point, please let me know. They SHOULD be functioning MUCH better at this point. The problems with them were fairly game-breakingly critical on v36 stock and up to now, making it very difficult for the AI players to compete at all. At this point, they very well should be better than even the most micromanaging player at controlling their properties now.

Truly hoping these changes will help your games as much as I think they will.


9000
  • Fixes a crash reported in bugs and crashes.

Woohoo! We've made it to 9000! 1k more to go and we'll be looking at 5 digits here.


9001
  • Major review and audit on the AI willingness to slave off population. Should be much more reluctant now. Should also take more appropriate steps when encountering unhappiness in its cities.
  • Hunters given Assassination so they can tangle with animals in cities.
 
9002
  • Montreal Biodome requires coast

  • New Breeding Pair for canines.

8998
  • New python reported Unit Type check for isQualifiedPromotionType(iPromotion) for the unit page in the pedia.

    @DH: use this in the same way as you did the validation for unitcombats on a given promotion but you'll instead check if the promotion is valid for the unit.

    There will be exceptions to the display in that units may get promotions that add new unitcombats that then open up access to additional promotions but this is for the basic pedia display so didn't take those into consideration.

There may be a problem here the current function isPromotionValid is used in a number of the Python files already. If I have to change one then I will need to change all. It is heavily used in the Revolutions code.

edit also I get a syntax error if I try and use it in the same way as teh other - need to check I did sync so I have an up to date dll.:blush:

Looks better than before but there is still some strangeness. Why can the A-Bomb heal Naval units and why can the wild aardvark get Berzerker promotions?
 
9003
  • The AI should want a few more city defenders at minimum now.
  • Hostile units inside a city (in the rare legal case this can happen) won't stop the city from working its own tile.
  • New tags bNoInvisibility (for units) and iNoInvisibilityChange (for UnitCombats and Promotions) - these only work on Hide and Seek and I gave them no AI consideration but tacked them onto Law Enforcement Unitcombats (and a -1 to Felines to counter this for LE felines) and Fortify and Set for Charge Buildups.
  • Makes each turn a unit is Fortified count as a reason to not be invisible of any kind.


Looks better than before but there is still some strangeness. Why can the A-Bomb heal Naval units and why can the wild aardvark get Berzerker promotions?
This will certainly help to point out major imperfections in access rules won't it? Now that it will be so visible, some work on that front will be very desirable. Some units can't get promos at all... I suppose I may also need to cut out all promos for those if I can find that determination can be made (I'm not quite sure where it IS made without looking at the code) at the unit info level.

There may be a problem here the current function isPromotionValid is used in a number of the Python files already. If I have to change one then I will need to change all. It is heavily used in the Revolutions code.
Shouldn't have to. isPromotionValid checks the unit in the game, not the underlying unit info. isQualifiedPromotionType is purely checking the promotion and promotionline unitcombat prereqs against the base unit type's values.

HOWEVER, that IS potentially disturbing considering that isPromotionValid does NOT check all qualifications to get a promotion. It checks a solid set of sweeping conditions. If you want an honest check on if a promotion can be obtained by a unit, including ALL prerequisites, you'd need to call on canAcquirePromotion. There are a LOT of parameters for that check, not all of which are exposed to python. Shouldn't be a problem to call though given that most of those parameters have default values, but bypassing this check and going straight to only isPromotionValid is going to a small percentage of the qualifications for a promo. So we may want to discuss those calls individually anyhow.

Even free promos in the code usually call to canAcquirePromotion to ensure validity. (There's a parameter to bypass a few checks that would deny the unit the ability to currently take the promo as a skills promo but still be valid to accept the promo as a free one - bFree.)
 
Did someone repair sanitize action from worker? Because sanitize not working. The game crash after i push sanitize button.
 
9006
  • Numerous fixes to Property Control AI's.
  • Adds an iTrainReluctance tag to PropertyInfos for above fixes.
  • Some fixes for Hunter AI's.
  • Fix for an odd crash involving Prophets initiating a religion.

The Property Control AI is not rigged for speed at the moment but should be much more accurate to its intentions now. A 'next step' will be to cache some of the calls being made there so as to speed it up a bit. Bear with me on this. At the moment I'm just wanting to be 10000% sure that it's working entirely as intended before trying to streamline it. According to my testing, it is now.

SVN 8999 had serious issues that would lead the AI to make very very bad decisions (exactly the opposite of what they were supposed to be doing with property control units) that could have had a very detrimental effect on games. If you have played on revisions between 8999 and now, it would be beneficial to go back to an earlier save before this point if you can. It's not 100% necessary to do this but it would improve the AI's game a LOT if you do.

I'll try to include a warning to back up saves before any major AI updates like these. Live and learn right? My apologies for all inconveniences this problem has caused.

Watch the AI closely here... there's a number of things I'd like to have verified by in-play observations:
1) Property Control units are being trained when needed.
2) Property Control units are going to cities that need them. And that they aren't all going en masse to a city in need... there should be some reluctances built in so that as units are responding to need, others will hold off since the need is being responded to.
3) Property Control units are using property control promos and buildups, the latter at least being used when the city they are in does need some control.

Note that many LE units are considered to be city defenders so won't act in the above manner. But shouldn't necessarily be ALL of them, at least not as games progress from here.


9007
  • Removes numerous unnecessary ForceObsoleteTech tags on recently reviewed units.
  • Severs the ability of recently reviewed units to upgrade to AI type unitcombat units that do represent improvements in the line. Such units will need to be built independently. (There's a nasty plan to make the Transhuman to Galactic eras VERY interesting shaping up in this adjustment.)


9008
  • Speed and quality improvements to Property Control AI.
These refinements should improve both behavior and performance considerably. This COULD be pretty much it for further work in this area. (Hoping so.) Again, if all is going properly here, the AI's game should be improved tremendously overall. And it's always nice to have it running a bit faster. Hope it made the impact I expect it will.
 
9009

--Adjustment to Siege Rams and Tower to stop AI using them as City defenders. Designed to reduce Hand, Battering, and Siege Ram overbuild.
-- Copper, Bronze, and Iron Spearman and Axe strengths up from 5 to 6 and 5 to 7,respectively. Early Chariot strength upped from 4 to 5. Addresses weakness for using these early units.
 
9010
  • Remove second Andean worker as normal workers can now do the function when the wonder is built.

  • Finish review of Bison Rider. Main change is that you can't build the wonder if you don't have the bonus. You need the bonus for the units so it is only reasonable that you also need it for the wonder.
 
9011

-- Adjust Chariot Archer str up 1. Reduce strengths of Hand Ram (-1), Battering Ram(-1), Siege Ram(-2), and Siege Tower(-2). This to further reduce AI Ram overbuilding.
 
It reduces the AI's penchant to use them as Defensive fodder, which it not what theywere designed for. They are still only programmed to attack City. How many Battering or Siege Rams in Ancient or Early Classical does it take to reduce a 100% to 200% City down to 60%? 5? 10? The AI has been building stacks of 20 plus Rams Just to defend the tiles around it's own cities.

This is just a partial xml fix. The real problem is, "why are these stacks not actually attacking your cities?" Clearly it is because the AI values the relatively High str Siege units (in comparison to actual fighting units str) as defensive fodder more than taking down city walls (as they were designed to do originally). Reduce their str and they are less desirable as defenders.

Ram Spam is being looked at from many directions. This is but a part of it.

And this question and discussion belong in the Discussion thread.;)

JosEPh
 
9011

-- Adjust Chariot Archer str up 1. Reduce strengths of Hand Ram (-1), Battering Ram(-1), Siege Ram(-2), and Siege Tower(-2). This to further reduce AI Ram overbuilding.

Probably a good idea considering how incredibly capable rams are now after some of the recent tweaks. Not sure Siege Towers should be reduced that much since they're supposed to also be the Classical-Medieval version of a machine gun (defensive siege) but given what they'll soon become with next revision, this role is probably better diminished a little anyhow. Besides, during these eras, having siege be such a tough defense to tackle seems a little silly since things like swords and axes and spears should be much stronger at holding ground imo.

And yeah, this should be discussed elsewhere. I know.
 
After upgrade from some mid-December version to something more recent (Jan. 11) I noticed a strange thing. All existing City Guards turned out to be extremely weak: Str. 3.33 -> Str. 0.01, max HP 1 (I play with Size Matters, Seek&Hide and so on). I think I need to disband and rebuild them now because Crime raised dramatically, but it was enough to build 1-2 newely built City Guards (they are very expensive now!) to make it to drop from 200+ increasing about 7/turn to about 140 (and still decreasing).

One more thing I noticed was that the cost of HN units dramatically increased - Bandit Riders are more expensive than much stronger Irish Inskillings (also HN).

S.
 
After upgrade from some mid-December version to something more recent (Jan. 11) I noticed a strange thing. All existing City Guards turned out to be extremely weak: Str. 3.33 -> Str. 0.01, max HP 1 (I play with Size Matters, Seek&Hide and so on). I think I need to disband and rebuild them now because Crime raised dramatically, but it was enough to build 1-2 newely built City Guards (they are very expensive now!) to make it to drop from 200+ increasing about 7/turn to about 140 (and still decreasing).

One more thing I noticed was that the cost of HN units dramatically increased - Bandit Riders are more expensive than much stronger Irish Inskillings (also HN).

S.

Not sure how the strength issue was a problem but I do know that in a SM environment, changing the base unit strength can have odd results. So it's not THAT surprising I suppose.

The costs of units, particularly mid-game range ones like the ones you mention, have long been extremely under-set for game balance. Buildings as well. Doesn't match Production inflation very well. So as units are being reviewed, you'll see some of them appear to be very expensive. Once the rest of the units and buildings are reviewed in light of more recently established cost analysis, the game should get some of its intended balance restored. So yeah, they would be quite a bit more 'expensive' at this point.
 
Back
Top Bottom