Commit Graph

25 Commits

Author SHA1 Message Date
Oskar Niesen
ef9965e218
Espionage Uniques, Buildings and Policy (#11401)
* Added OneTimeSpiesLevelUp, OneTimeGainSpy, SpyEffectiveness, EnemySpyEffectiveness and HiddenWithoutEspionage Uniques

* Spy effectiveness affects stealing tech and rigging elections

* Fixed HiddenWithoutEspionage

* Added Constabulary and Police Station

* Added cityFilter to SpyEffectiveness

* Added national Intelligence agency

* Added Great Firewall

* Fixed great firewall having a float value

* EspionageManager addSpy now returns Spy instead of name

* Added some simple espionage tests

* Fixed OneTimeSpiesLevelUp still wanting parameter

* Spy efficiency occurs after skill modifier

* Added another test

* Added Police State spy efficiency reduction unique

* Fixed "Hidden when espionage is disabled" wording

* Fixed "effectiveness" wording

* Changed "enemy spy effectiveness" unique to use negative matters

* Spy effectiveness only affect tech steal rate

* Changed "Gain an extra spy" and "Promotes all spies" uniques

* Removed Police State comment that is no longer accurate

* Changed spy effectiveness to be multiplicative
2024-04-09 23:12:21 +03:00
Jeremy Woo
928f0df01f
Added multi filter support for BuildingFilter !! (#11319)
* Fixed policies do not grant production bonus to wonders

* Added multi-filter and tech filter for buildingFilter

* Rectification of the uniques of monument to the gods and marbles

* Fixed mod checker issued warnings regarding the techFilter in Unit and Building Filters.

* Edit Unique-parameters.md

* Undo 'Fixed policies do not grant production bonus to Wonders
2024-03-17 23:12:40 +02:00
SeventhM
1744d1271f
Add gain stat modified by speed and improvement speed by filter uniques (#10443)
* Add gain stat modified by speed and improvement speed by filter uniques

* Fix rulesets

* Remove nonfunctional leftover resource text

* Reword improvement unqiue as suggested
2023-11-20 22:47:35 +02:00
Yair Morgenstern
34fbe9e9a2 AI: Better policy selection 2023-08-10 16:20:01 +03:00
Yair Morgenstern
d20f8a53f8 Validate unique parameters for mods 2023-01-01 15:55:41 +02:00
vegeta1k95
78c4f6de68
Big rework of Policy Picker UI, added new ninepatch RoundedEdgeRectangleSmall (#8218)
Co-authored-by: tunerzinc@gmail.com <vfylfhby>
2022-12-24 19:17:00 +02:00
OptimizedForDensity
1287eb2c05
Minor reweight of AI policy selection (#7252)
* Reweight AI policy selection

* Vanilla ideological weights updated

* Update science victory weights
2022-07-17 11:21:12 +03:00
OptimizedForDensity
c48c6df22a
Fix piety complete faith discount (#6961) 2022-05-27 00:44:16 +03:00
청하늘
84561e7ad4
Add Moddable Policy Priorities (#6390)
* Fixed G&K policy eras

Patronage should be Medieval and Freedom should be Industrial in G&K

* Added 'priorities' object to policy branch entries

* Fixed Vanilla policy eras

Also set testing priorities in advance

* Partial code formatting

* Reworked how the AI chooses a policy to newly adopt

* Removed debugging codes

* Update Civilization-related-JSON-files.md

Added Branch priorities

* Assigned actual priorities to each branch

Also fixed a debugging value in Ruleset.kt (-1 -> 0)
2022-03-25 17:33:42 +03:00
Xander Lenstra
984c4d9b2d
Unified & generalized a few uniques (#6379)
* Generalized trade route percent bonuses

* Unified two uniques using populationFilter; deprecated a deprecated uniq

* Made some renamings to improve clarity & fixed tests

* Fixed tests again

* Fixed typo
2022-03-21 21:05:20 +02:00
Yair Morgenstern
5b50f32505 Great Admiral movement removed from NAval Tradition - per #6131 2022-02-19 23:10:15 +02:00
Yair Morgenstern
e72dcc8b0d
Unified "X is only available under Y conditions" into a single unique (#6133)
* Unified "X is only available under Y conditions" into a single unique

There were a few problems with existing uniques - they weren't really composable, the offered things they didn't keep, etc

For example, "Incompatible with [policy/tech/promotion]", UniqueTarget.Policy, UniqueTarget.Tech, UniqueTarget.Promotion. In fact, promotions only checked promotion incompatibility, promotions - promotion incompat, etc

Additionally, with a few more changes, this could cover several other uniques - "Hidden until [amount] social policy branches have been completed", "Requires at least [amount] population", perhaps others

I have to say I think conditionals are the best thing ever and they make amazing composability possible :)

* Autoupdate correctly recognizes parameters
Updated ruleset jsons

* Deprecation texts should be allowed to forward to other deprecated uniques so we only need to change the leaves when introducing new uniques, not go through the whole tree
2022-02-12 19:03:30 +02:00
Yair Morgenstern
4fb4722e3a
Arbitrary conditionals can become timed conditionals! (#6134)
* Arbitrary conditionals can become timed conditionals!
triggerCivwideUniques is activated in 3 situations:
- Tech complete
- Policy adopted
- Building complete

So for each of the unique containers for these I added a catch saying 'if this unique is a temporary unique then don't save it yourself

This has been lying around in todos for a while and generalizes one of the nasty hardcoded messes that I hate about Civ V. Why would you introduce ONE timed effect in the whole game?! You can use them all the time like Humankind or never use them like Civ IV, but why have just one whyyy

One more thing in this PR, that needed to be solved by the by, is allowing parameters to have a '2' on the end so we can autoreplace multiple parameters of the same type.
Using a regex is slightly more inefficient, but since this is A. only used once per UniqueType.kt, and B. allows us to have as many 'amount's as we want which is important if we have a lot of conditionals, I feel this is justified.

* Fixed comments from PR
2022-02-12 19:03:11 +02:00
will-ca
824efcb1a9
Try to fix potential typos in stock rulesets. (#6028)
* Make mod checker pass status message translatable.

* Try to fix some possibly broken Uniques.

Move comma.
2022-01-26 22:36:24 +02:00
Xander Lenstra
39ed8bd269
Typed some uniques, added more examples for parameters in unique documentation (#6020)
* Typed some uniques, etc.

* Missed a few square braces

* Missed a parameter

* Missed another parameter

* Made a conditional, spelling, added check to `isStatRelated`

Co-authored-by: Yair Morgenstern <yairm210@hotmail.com>
2022-01-24 11:03:40 +02:00
will-ca
8461032a52
Try to fix a potentially miscapitalized/broken policy cost unique. (#6016)
* Try to fix a potentially miscapitalized/broken policy cost unique.

* Deprecate old capitalization.
2022-01-23 18:08:59 +01:00
Yair Morgenstern
f9c05997dd
Typified some building uniques (#6017)
* Typified some building uniques
I noticed that the code allows "[stats] from every [buildingFilter]" but the UniqueType was limited to "[stats] from every [buildingName]", so now that that's available we don't actually need the "[stats] from every Wonder" unique :)

* buildings-only unique moved to buildings section
2022-01-23 06:03:50 -08:00
Xander Lenstra
7cb58eb82d
Typed all policy uniques (#5955)
* Typed all policy uniques

* Reworded golden age length
2022-01-14 10:11:30 +02:00
Xander Lenstra
ee65adb5e4
Fixed a bug where all global unit discounts would always apply, despite only being for certain units (#5879) 2021-12-31 11:07:59 +02:00
Xander Lenstra
ecadfb53fa
Typed some uniques and fixed a policy not working (#5848)
* Typed some uniques, fixing a policy not working

* Repurposed an unused function to remove .unit in some places

* Fixed compilation errors
2021-12-25 17:55:14 +02:00
Xander Lenstra
defa25f254
Updated vanilla policies and fixed a few oversights from G&K policies (#5681) 2021-11-15 18:38:49 +02:00
Xander Lenstra
003f2434c1
Differentiating Vanilla & G&K (#5654)
* Fixed tests checking for mod correctness

* Update G&K jsons to current vanilla versions

* First pass over buildings & beliefs

* First pass over nations

* First pass over eras.json

* Fully updated tech tree

* First pass over units

* Second pass over buildings -- fixed techs

* Fixed last prerequisites and row numbers of tech

* Went through the entire tech tree and moved things to their correct spot

* Fixed tests
2021-11-09 06:23:30 +02:00
Xander Lenstra
ac2bc3a404
Second version of G&K / vanilla split (#5647)
* Copied files for Gods & Kings folder

* Added G&K and unified with mods in dropdown

* Split the baseruleset from the mods list in game parameters

* Mod links are checked again when selecting a mod

* The new map editor screen now also uses the base ruleset

* Updated the ruleset change dialog in the map editor; Fixed a crash

* Refactored some code and fixed some bugs
2021-11-08 22:57:09 +02:00
Xander Lenstra
4c053ddc99
Revert "Splitting of vanilla and gods & kings rulesets -- Part 1: Groundwork (#5577)" (#5585)
This reverts commit db6e588479.
2021-10-28 22:01:06 +03:00
Xander Lenstra
db6e588479
Splitting of vanilla and gods & kings rulesets -- Part 1: Groundwork (#5577)
* Copied files for Gods & Kings folder

* Added G&K and unified with mods in dropdown
2021-10-28 18:02:30 +03:00