Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvement(+related UI) fixes, balance tweaks, and organization #760

Merged
merged 26 commits into from Dec 11, 2020

Conversation

dzfischer
Copy link
Contributor

@dzfischer dzfischer commented Dec 1, 2020

Stronger support for FeatureChange tag; it will not remove all improvements on the tile by default (only prevents itself from leaving an empty improvement), slightly better UI tooltip.
Need to add 3d art from beacon/lighthouse improvements to the features, though.
Likely needs a bit more testing.

Stronger support for FeatureChange tag; it will not by default remove improvements on the tile,  slightly better UI tooltip.
Need to add 3d art from beacon/lighthouse improvements to the features, though.
@github-actions github-actions bot added dll A C++ issue python A Python related issue text Text or localization xml Related to the XML data labels Dec 1, 2020
@dzfischer
Copy link
Contributor Author

dzfischer commented Dec 2, 2020

Figuring out how to teach the AI to use this is tricky. Unless I'm mistaken, the meat is in AI_bestPlotBuild which in turn compares all improvements to determine which is best for each plot. There is an "aiDiffYields" calculated, so tossing in improvements whose corresponding build has FeatureChange or TerrainChange with a large multiplier ought to teach the AI to use it properly, but... AI_bestPlotBuild is something of a monstrosity, not gonna lie, don't think I'm quite capable of doing it without serious/slow investigation 😓
The tooltip is easier, just about finished making adjustments so that it reads from the feature change rather than dummy entries in the improvement yield (which are incorrect depending on current plot terrain/features, ofc, and won't properly work for AI anyway based on the compare-all-improvements method used...).
There's another issue where "Requires Dummy Tech" is visible to the player in certain circumstances due to the Feature Struct implementation (not introduced by these changes); will add that to git issues when I finish with further detail.

@Thunderbrd
Copy link
Contributor

It's all fun until it comes down to having to get the AI to work with it. lol.

Also organized the shit out of civ4buildinfos because it annoyed me. Few balance/sanity adjustments.
Actually fixed |Dummy Tech text
Fixed/introduced radio towers
Added reclaim land ability
Organized the **** out of improvementinfos and buildinfos
Removed unused bLSystem tag
Improvement cost rebalances
Smarter ordering of improvements for workers
Rocky terrain is +2 H; part of stable terraforming loop with plains, grassland, and lush
Merged Submerged Town and Submerged Town (Deep)
Misc fixes & balance tweaks to improvement
@dzfischer dzfischer changed the title Changed beacons/lighthouses from imps to direct feature changes Improvement(+related UI) fixes, balance tweaks, and organization Dec 5, 2020
@dzfischer
Copy link
Contributor Author

Old organization of worker actions was pretty darn random:
image
New should be much improved:
image

@dzfischer
Copy link
Contributor Author

dzfischer commented Dec 9, 2020

Juuuust about done.

I managed to break "Requires Irrigation!" UI warning and I don't know how.... after fixing that and a bit more testing, will merge with master tomorrow.

Requires more refactoring than I want to do at this point...
Also filled in plot terrain prereq xml
@dzfischer dzfischer merged commit 630a2e3 into caveman2cosmos:master Dec 11, 2020
@dzfischer dzfischer deleted the FeatureChange-edits branch December 11, 2020 02:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dll A C++ issue python A Python related issue text Text or localization xml Related to the XML data
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants