Commit Graph

723 Commits

Author SHA1 Message Date
Why-not-now
54afc5c350
Modders wiki updating (#10688)
* xpForNewUnits is not used anymore

* Adding links to json files

* Redid some tables (TODO)

* Deprecate cannotBeBuiltWith

* Update 2-Civilization-related-JSON-files.md

Standardised uniques link and description
Miscellaneous changes to grammar to be consistent

* First round of amendment

Fixed up some links
Made grammar more consistent
Removed deprecated `effect` from ModOptions.json
Added CityStateTypes.json

* Second round of amendment
Made grammar more consistent
Changed `Optional` header to `Default`
Removed tabs from json code
Changed all stats to a `<stats>`

* Undid accidental replacement

* Undid accidental replacement

* Made list more consistent

* Rewrote policy branch and turns in eras.json

* Third round of amendment

Split stats
Fixed a couple of stuff idk tbh

* Added stats

* Added nationFilter

* Final amendment

* Adding markdown table format based on suggestion

* Fixed errors/suggestions based on reviews

changed building.cost default to be -1
added footnotes for improvements instead of list
removed faith from unit.hurryCostModifier
removed assosciation of nationFilter with civFilter
2023-12-28 22:06:40 +02:00
Yair Morgenstern
f09700396c Scenario list renders correctly 2023-12-23 23:46:35 +02:00
Yair Morgenstern
bdd7239e8c Added scenario page to wiki 2023-12-23 23:43:40 +02:00
Yair Morgenstern
c3d592393e Added experimental scenarios! 2023-12-23 23:36:14 +02:00
SomeTroglodyte
f529d969f0
Mod declarative compatibility - a little more (#10751)
* Mod compatibility - update declarations

* Mod compatibility - logic and UI changes

* Mod compatibility - flag some invalid use patterns

* RulesetValidator - lint until Studio shuts up

* Fix isBaseRuleset test in ModRequires validation

---------

Co-authored-by: Yair Morgenstern <yairm210@hotmail.com>
2023-12-22 09:59:38 +02:00
SomeTroglodyte
d3ac2c5ede
(UI) Politics overview diagram: Add legend popup (#10451)
* Refactor Battle damage shadowed Label into reusable WidgetGroup

* Make Politics Overview "Grid header" fixed and some linting

* Add a Legend popup explaining line colors in the Politics Overview Diagram: Click inside

* Missing translation template

* Final decision on background didn't make it in properly

* Remove unused png - those are now in the Construction atlas

* Smaller background image

* Color and shadow choices

* Redo atlas to include both 10505 and this
2023-12-22 09:37:47 +02:00
Yair Morgenstern
851ab2e7b8 Separate higher-level autosave functions from lower-level file functions 2023-12-19 23:45:12 +02:00
PLynx
cde26d325e
Add the remove unit promotion unique (#10759)
* Added the remove unit promotion unique

* Moved two lines of code inside if
2023-12-17 22:03:52 +02:00
Yair Morgenstern
a61e9658ea 4.9.9 2023-12-15 11:55:50 +02:00
PLynx
87b02e49cd
Add resource support to stat gamespeed conditional (#10677)
* Tweaked the stat gamespeed conditional

Tweaked the stat gamespeed conditional to accept the resources

* Changed some names

* Fixed a double limit bug
2023-12-10 22:59:22 +02:00
Oskar Niesen
4282cdb626
Better Frigate and Ship of the Line sound (#10693)
* Added a frigate cannon fire volley sound with crashing

* Changed the frigate and ship of the line to use shipCannonVolley.mp3

* Added proper credits

* Renamed "Volly" to "Volley"
2023-12-10 22:59:12 +02:00
Yair Morgenstern
2ffec93ae8 invokeUnitAction will take the first *actionable* action, instead of the first one that exists, which may not be actionable 2023-12-08 12:17:07 +02:00
Will Allen
8363078371
Connect roads automation (#10631)
* Start on road connect feature.

* Rough UI and tile highlighting

- Highlight visible tiles for selected unit red
-- Maybe change this to all explored tiles
- Move action firing inside WorldMapHolder
- Set begin and end tiles

* Serialize Vector2 instead of Tile

* Add road icon

* Much better UI handling

- Tile highlights go away after choosing a tile
- Added restrictions to allowed tile destination choices.
    - Explored
    - Land
    - Passable
- Added two-tap button

* Refactor part of `onTileClicked` for readability

* Band-aid fix null pointer error

* Add RoadConnection icon

* Tentatively working connect road feature

* AStar search implementation

* AStar connect road automation

* Fix worker getting stuck in city tiles

* Heuristic should be between tiles

* Add heuristic to road connect, remove maxSize limit

* Fix predicates

* Cancel automation when worker is force moved off path

* Change valid/highlighted tiles to be friendly or neutral

* Put log back the way it was

* Fix behavior when kicked off path

* Worker no longer wastes movement points

* Workers will progress multiple tiles at a time towards the next build destination.

* Respect civs with certain tiles as roads

* Refractor ForceAutomateRoadConnection -> AutomateRoadConnection

* Connect road UI button only shows for units with UniqueType.BuildImprovements

* Connect road UI button only show when road tech is unlocked

* Add wagon sound

* Fix destination icon, add KeyboardBinding to 'c'

* UI highlight connect road path tiles orange

* Downsample wagon.mp3

* Apply migration patch, idiomatic sequence processing

* Add notifications on success and failure

* Extract movement cost function to be reusable

* Refactor road pathfinding into MapPathing.kt

* Make pathing calls more general for future extendability

* Add UI road connection tile path preview

* Keep road path highlighting when routing to a city tile

* Adjust road pathing cost function

* Path includes pillaged roads

* Repair pillaged roads along path

* Valid road path tiles now include all passable tiles (open borders)
2023-12-07 09:15:12 +02:00
Yair Morgenstern
662c4c219b 4.9.5 2023-12-03 22:28:45 +02:00
SomeTroglodyte
5061b29197
Notification for "Policy branch unlocked" clickable (#10655)
* Ruleset-validate some Unique amounts to be positive

* Add TechAction for tech gained from Ruins

* Allow PolicyPickerScreen to highlight a Policy

* Add the 'PolicyAction' NotificationAction

* Use the new PolicyAction
2023-12-03 22:12:26 +02:00
Yair Morgenstern
afae9a1e96 4.9.4 2023-11-30 19:51:36 +02:00
PLynx
6617504c05
Stats per Stat unique (#10591)
* Added Stats per Stat unique

* Applied the suggestions of @yairm210
2023-11-30 19:12:39 +02:00
Yair Morgenstern
5b29a0234b Slight cleanup of translation docs 2023-11-29 19:51:40 +02:00
Yair Morgenstern
915cc45b35 Better order for translation documentation 2023-11-29 19:48:58 +02:00
Will Allen
b4b73336b3
Fix typo (#10608) 2023-11-28 12:09:47 +02:00
SomeTroglodyte
b61c9de39e
Comment unique (#10575)
* Comment Unique

* Comment Unique translations

* Comment Unique more descriptive documentation

* New languages
2023-11-25 20:11:30 +02:00
Why-not-now
8c7fa24123
Fixed typo (#10572)
* Fixed typo

* Fixed typo

* Fixed typo

* Update 5-Miscellaneous-JSON-files.md
2023-11-25 20:08:51 +02:00
SomeTroglodyte
8c0693c998
Latin reboot (#10573)
* Reboot Latin

* Reboot Latin - 002

* Reboot Latin - 003

* Reboot Latin - atlas
2023-11-25 18:22:23 +02:00
Why-not-now
3ddeb874c7
Standardise using enum instead of string (#10571)
* Standardise using enum instead of string

* Standardise enum instead of string

* Standardise enum instead of string
2023-11-25 18:07:30 +02:00
Why-not-now
d4cd102613
Fixed typo (#10568)
* Fixed typo

* Fixed typo
2023-11-24 16:17:04 +02:00
Why-not-now
ba5e658c9e
Standardise using enum instead of string (#10570)
* Standardise using enum instead of string

* Standardise enum instead of string
2023-11-24 16:16:49 +02:00
SomeTroglodyte
b7823e0b39
"Fixed" Rusyn language (#10561)
* Rusyn.properties

Translation on Rusyn language (ISO-code "rue")

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Update Rusyn.properties

* Add a flag for Rusyn

* LocaleCode for Rusyn to use Ukrainian Collator but still write separate fastlane files

* Update Rusyn language files

* Redo atlas

---------

Co-authored-by: KotDivuar <148721627+KotDivuar@users.noreply.github.com>
2023-11-24 14:22:24 +02:00
Yair Morgenstern
8dc0db49e7 4.9.0 2023-11-20 23:15:39 +02:00
PLynx
e67fd6a28b
Add the SellBuilding Unique (#10514)
* Restored the SellBuilding Unique

* Rephrased SellBuilding unique
2023-11-20 22:47:47 +02:00
Sergey
4adbd2e634
Add a TriggerUponDiscoveringTile unique type (#10523)
* Add a TriggerUponDiscoveringTile unique type

* Add a check for trigger presence
2023-11-20 22:47:17 +02:00
SomeTroglodyte
08c3f97f82
Support for Leader voices (#10395)
* Prepare Leader Voices: Framework

* Leader Voices: Hooks and corresponding text field comments

* Leader Voices: wiki

* Leader Voices: oops, comments

* Decouple voice play calls to make global modification easier

* Move voices to own folder and give them a separate volume setting

* Oops, template needed too

* Oops, wiki needed too
2023-11-20 22:21:30 +02:00
Yair Morgenstern
fb1e57668e Added tests for parameters for complex filters, fixed nested complex filter returning 'possible filtering' when it should have been known 2023-11-19 00:06:34 +02:00
Yair Morgenstern
92d181d282 Better formatting for general filter rules v2 2023-11-18 22:56:26 +02:00
Yair Morgenstern
b55c4497d0 Better formatting for general filter rules 2023-11-18 22:54:39 +02:00
Yair Morgenstern
167f25cacd Modding: Added "non-[filter]" and multi-value filtering to Tile filter 2023-11-18 22:34:04 +02:00
Yair Morgenstern
dc6413d707 Modding: Added "non-[filter]" filtering for unit filters
Cleaned up unit filter validations to match actual filters
2023-11-18 22:16:43 +02:00
SomeTroglodyte
2847f7a8c1
Rivers... Moddable Stats and Civilopedia (#10424)
* River yields moddable and Civilopedia entry

* Improve text and better fresh water explanations

* Map editor exclusion as Unique, for River and previously hardcoded Improvements

* Map editor brush to Civilopedia link, starting locations cleaned

* Some SeventhM input applied

* Reword River/Lakes/Oasis civilopediaText and comments again
2023-11-13 22:18:25 +02:00
Yair Morgenstern
7e35e41bc3 typo fix for enhanced religion city filter 2023-11-10 10:27:20 +02:00
Yair Morgenstern
78a4c3a963
Added Human and AI filters, separated civFilter from nationFilter (#10446)
* Added Human and AI filters, separated civFilter from nationFilter (very similar and yet slightly different)

* Changed "Human" and "AI" to "Human player" and "AI player"
2023-11-10 09:57:49 +02:00
SomeTroglodyte
fb30f610be
Mix of issue fixes around diplomacy and trade (#10462)
* Fix "AskForAssistance" Quest notification untranslatable

* Extend DiplomacyAction to allow showing the TradeTable of the other civ

* Make "trade ends" notifications clickable

* Make entries in Trade page of Empire Overview clickable

* Highlight selected civ in DiplomacyScreen, moddable

* A little proactive comment
2023-11-10 09:57:07 +02:00
Yair Morgenstern
6c6fe3de1b docs: Added more documentation for uniques 2023-11-05 23:21:51 +02:00
SomeTroglodyte
652b3c9159
Potpourri of RekMod-inspired little updates (#10390)
* RekMod-inspired: StatPercentFromReligionFollowers does work on FounderBelief target

* RekMod-inspired: Make StatPercentFromReligionFollowers check correct Religion

* RekMod-inspired: Prep: flags on ImprovementBuildingProblem

* RekMod-inspired: Don't offer e.g. Kampong Ayer to non-Brunei Workboats

* Update "filtering Uniques" documentation
2023-11-03 00:09:34 +02:00
SomeTroglodyte
9970549543
Allow modders to hide individual Uniques from Civilopedia (#10394)
* Allow hiding individual Uniques from Civilopedia via a conditional-type modifier

* Fix oversight

* Fix another oversight
2023-11-03 00:09:11 +02:00
Yair Morgenstern
d51b6a679d Tile generation condition parameters converted to fractions, to avoid errors 2023-10-30 12:44:34 +02:00
SomeTroglodyte
cf2ff124cf
Fix Mod checker crash on RekMod (#10349)
* Verbose exception for the original RekMod's Civilian crash

* Make ConstructImprovementInstantly validation gameInfo-agnostic

* Helpers to encapsulate repetitive Conditional test patterns, eliminating ruleset(), all ruleset access guarded

* Make ConditionalFirstCivToResearch actually work on Policies - ???

* Linting

* Revert params accessor helpers and reduce ConditionalFirstCivToResearch to tech only

* Implement ConditionalFirstCivToAdopt for nicer symmetry
2023-10-29 19:00:09 +02:00
Yair Morgenstern
8d0853f0a9 4.8.14 2023-10-23 10:23:47 +03:00
PLynx
2dfac21004
Added five new uniques (#10311)
* Added two new Conditional Uniques

These are:
- <when above [amount] gold>
- <when below [amount] gold>

* Added Remove Building unique

It has two parameters: buildingFilter and cityFilter

* Minor example update

* Applied the corrections proposed by SomeTroglodyte

* Update uniques.md

* Slightly changed an unique text

Removed "in" word from the unique

* Updated the Stat Conditional to support more stats

Now supports more stockpileable Stats
- Gold
- Faith
- Culture
- Science

* Added the game speed-adjusted conditionals

Now there are 5 uniques in my pull request

* Integrated the Stat and Resource Conditionals

Requested by @yairm210

* Applied the suggestions of @yairm210

* Applied the suggestions of @yairm210 again

I hope my PR is ready to merge
2023-10-23 10:02:42 +03:00
SomeTroglodyte
c6f820b0f2
Remove UniqueTarget.Terrain from UniqueType.Stats as there is no implementation (#10321)
* UniqueType.Stats has no implementation for Terrain, remove UniqueTarget

* Generated Docs
2023-10-15 18:03:30 +03:00
SomeTroglodyte
5db8489bcb
Tweak FasterUIDevelopment to offer normal Scene2D debugging, and some linting (#10263) 2023-10-07 21:58:19 +03:00
SomeTroglodyte
815df1bcc4
Some religion stuff (#10242)
* Enable HiddenWithoutReligion to work directly on a Tutorial

* Remove religious units from Vanilla

* Fix limited uses of Missionary and Prophet
2023-10-05 10:23:25 +03:00
Yair Morgenstern
701b8c3a52 Updated tech schema to answer modder questions 2023-10-04 21:49:26 +03:00
SomeTroglodyte
9e7fd9b067
Update build documentation (incl FasterUIDevelopment run config) (#10234) 2023-10-04 12:47:22 +03:00
Yair Morgenstern
ec1451c9e9 chore: Separated Air Interception logic into separate object 2023-10-03 12:40:42 +03:00
Yair Morgenstern
ffd77c82d8 4.8.9-patch1 2023-10-01 13:52:00 +03:00
Yair Morgenstern
ffc3a66707 Converted "May enhance a religion" unique to a UnitAction 2023-10-01 12:11:52 +03:00
Yair Morgenstern
6dbf240899 Converted "May found a religion" unique to a UnitAction 2023-10-01 12:01:54 +03:00
Yair Morgenstern
6a2b483640 4.8.9 2023-10-01 10:17:19 +03:00
SomeTroglodyte
8f7acf37d2
Pedia pixel units (#10187)
* Display Pixel Unit Art in Civilopedia

* Pixel Unit Art in Civilopedia - Setting UI

* Change FormattedLine.extraImage sizing to apply to longer coordinate

* Pixel Unit Art in Civilopedia - better centering using 'crop to content'
2023-10-01 09:45:02 +03:00
SomeTroglodyte
0f75947d18
City overview restore fixed header (#10197)
* More SortableGrid comments

* Fix City Overview header row

* CityOverviewTab minor lint

* Documentation for the 'Gdx Scene2D debug' option

* Lint - TabbedPager sort imports and some spaces
2023-10-01 09:43:53 +03:00
Yair Morgenstern
6d6dc51bea
Get rid of old religion style actions!!! (#10192)
* Giant refactoring - get rid of old religion style actions!!!

* Added special promotion to replace Great Mosque of Djenne ability

* removed double promotion added my mistake

* Added AI recognition of cities with bonus spread religion charges

* Added "disallowed for pantheon" filtering to new unit actions

* merge unit action changes with religion action changes

* Use new invokeUnitAction function for simplicity

* revert inquisitor unique change used for tests

* separate modifier side effects from old-style side effects

* Use canUSe shorthand for clarity
2023-10-01 09:43:26 +03:00
Yair Morgenstern
46dd1cfc19 Added unitTypes json schema 2023-09-24 12:24:41 +03:00
Yair Morgenstern
f13bb7990f Added techs json schema 2023-09-24 12:15:22 +03:00
Yair Morgenstern
daafa5104f Added tileImprovement json schema 2023-09-24 12:05:00 +03:00
Yair Morgenstern
fc02ac8825 Added nations json schema 2023-09-24 11:55:54 +03:00
Yair Morgenstern
1447056d23 description testing on vscode showed we should remove pattern descriptions 2023-09-22 11:25:43 +03:00
Yair Morgenstern
3ebb96e7a9 Added link to unique list :D 2023-09-22 11:22:37 +03:00
Yair Morgenstern
79b54484e5 Added descriptions for some fields 2023-09-22 11:14:59 +03:00
Yair Morgenstern
08816c7f6b Double patterns for uniques, for square brackets as well 2023-09-22 10:55:43 +03:00
Yair Morgenstern
1891a37c66 Added pattern to uniques to catch bugs 2023-09-22 10:47:56 +03:00
Yair Morgenstern
8ccee2e862 civilopediaText.json array-ized, since it's common *as an array* 2023-09-22 10:36:51 +03:00
Yair Morgenstern
8678e4eeda Added units.json and separate schemas for uniques and civilopediaText, for sharing 2023-09-22 10:31:45 +03:00
Yair Morgenstern
ae18b6d7ad specialistSlots and greatPersonPoints are specifically maps to numbers 2023-09-22 10:17:00 +03:00
Yair Morgenstern
8913b667c8 Buildings schema references stats schema, so it's reusable from other places 2023-09-22 10:13:35 +03:00
Yair Morgenstern
c7775412c7 Documentation: Validate json using online tool 2023-09-21 23:54:56 +03:00
Yair Morgenstern
ecb88ea10d Documentation: Validate json using online tool 2023-09-21 23:48:14 +03:00
Yair Morgenstern
94a7d3afa8 update documentation since latest schema works on both! 2023-09-21 23:39:59 +03:00
Yair Morgenstern
38e0d6bd38 Add stats as separate schema 2023-09-21 23:38:00 +03:00
Yair Morgenstern
cb27d13723 Remove anyOf, because technically it requires matching all subschemas - just redeclare the stats values... 2023-09-21 23:34:24 +03:00
Yair Morgenstern
5dbdf630ab Consistent indendation 2023-09-21 23:23:38 +03:00
Yair Morgenstern
ba2a9e7127 Instructions for setting up schemas on Visual Studio 2023-09-21 23:21:30 +03:00
Yair Morgenstern
ab3a04f50f Instructions for setting up schemas on AS 2023-09-21 23:00:57 +03:00
Yair Morgenstern
14c5d9eb17 Better schema for checking field names 2023-09-21 22:41:32 +03:00
Yair Morgenstern
da28d275be Test - Added building schema.json to docs 2023-09-21 21:56:38 +03:00
Yair Morgenstern
bdd3af9a43 docs: linting - List for victory illustrations to be shown as list 2023-09-14 09:09:53 +03:00
Yair Morgenstern
55809c9b22 Unique deprecation - "Receive free [unit] when you discover [tech]" replaced with trigger + condition, tested 2023-09-13 11:11:37 +03:00
Yair Morgenstern
9e557c8890
Update Privacy-Policy.md 2023-09-07 18:23:33 +03:00
Yair Morgenstern
96f957c52b 4.8.1 2023-09-04 15:18:46 +03:00
Yair Morgenstern
1e027199a6 4.7.19 2023-08-31 00:04:19 +03:00
Brian
a6142ec482
"Jump To Destination" Unit Action Button for units that are moving (#9955)
* Added "Jump To Destination" UnitActionButton for moving unit

This commit also fixes the situation where the player is unable to open the Show More unit actions list while the unit is moving and out of moves for the turn. Previously, clicking Show More in this scenario would jump to the next active unit.

* Added Jump To Destination to translation file

* Changed Jump to Destination to Show Unit Destination, updated icon, credits
2023-08-30 23:39:16 +03:00
SomeTroglodyte
4d068d7b20
Some wiki documentation for declarative mod compatibility (#9990) 2023-08-28 13:05:55 +03:00
SomeTroglodyte
96292cbf4d
Fix Permanent Audiovisual toggle and start on declarative Mod Compatibility (#9970)
* Fix Mod Manager not offering "Permanent Audiovisual" for audio-only mods

* Beginnings of declarative Mod Compatibility
2023-08-28 10:51:14 +03:00
SomeTroglodyte
4851865bce
Victory illustrations (#9934)
* Victory Screen Illustrations page

* Fix WorldReligion victory disclosing random player count

* Victory screen icons and Victory types get their separately moddable path

* Merge fix and nicer wiki text

* VictoryScreenIllustrations debug run

* Fix Image sizing and some polishing

* Fix white squares on some Victory Screen Cultural milestone buttons
2023-08-21 18:17:13 +03:00
SeventhM
6e3d4d99e0
Add "Improvement" as an improvement filter (#9906)
* Add "Improvement" as an improvement filter

* Update docs, change from non road improvement to all improvement
2023-08-16 17:59:54 +03:00
Oskar Niesen
548b536818
Add Defensive pact (#9900)
* Defensive Pacts can now be offered.

* Signing a defensive pact now makes the Civs join all defensive wars. Any future defensive wars will force the other civ to join.

* Removed Popup Alert Defensive Pact.

* Defensive pact and Research pact now are only on the trade screen.

* AI now offers defensive pacts.

* Added AI evaluating sending and receiving Defensive Pact offers.

* Reverted some temporary changes

* Reduced the chance an AI offers a defensive pact

* Starting an offensive war now cancels all Defensive Pacts with other civilisations.

* Removed extra requirements before an AI will sign or offer a defensive pact.

* Added Defensive Pacts to the Civilopedia.

* Fixed the AI counter offering with treaties.

* Fixed a test using the old method of checking if a civ is at war.

* Fixed a previous refactor error.

* Deleted commented out Research Agreement button code.

* Fixed some spelling errors and remnant debugging code.

* Removed signing a defensive pact brings both Civ's into each others previous defensive wars.

* Refactored setFriendshipBasedModifier to look better

* Starting an offensive war now removes the defensive pact form both sides.

* Reverted changes to DiplomaticStatus

* Removed extra technology check to sign a defensive pact.

* Removed DiplomacyManager.isAtWar() completely.

* Moved setting defensivePact flags from  TradeLogic.transferTrade() to DiplomacyManager.signDefensivePact.

* Changed diplomatic modifiers related to Defensive Pacts to be less extreme.

* Fixed canceling Defensive Pacts when declaring war and notifying other Civs.

* Updated the Defensive Pact entry in the Civilopedia and fixed some spelling.

* Fixed Defensive Pact behavior while attacking and defending.

* Changed a variable to a more readable name.

* Improved readability of setFriendshipBasedModifier().

* Moved the important onWarDeclared functionality to their own functions.

* Added a notification for the attacking Civ when a Civ joins war through a Defensive Pact.

* Refactored setDefensivePactBasedModifier() to be more readable.

* Increased DeclinedDefensivePact time.

* Deleted old commented code that removed the research agreement button.

* Fixed having reverting changes errors in UnitMovementTests.

* Refactored breaking treaties when declaring war.

* Removed unnecessary semicolons.
2023-08-16 17:59:41 +03:00
Yair Morgenstern
5956f0ceb6 4.7.12 2023-08-03 13:17:31 +03:00
SomeTroglodyte
bcb26b6d2a
Treat remaining untyped Uniques in default rulesets (#9763)
* Treat remaining untyped Uniques in default rulesets, make unit test catch them

* Change untyped filtering Uniques check to Validation by inclusion in GlobalUniques instead of UniqueType.AircraftMarker

* Wiki for untyped filtering Uniques

* Re-include the "Who knows" of Future Tech on the Tech picker
2023-08-03 11:38:50 +03:00
SomeTroglodyte
b838d8ec5a
Overhaul NUKE code to behave closer to original (#9797)
* Overhaul NUKE code to behave closer to original

* Separate garrison protection of Bomb Shelter to its own Unique

* Reduce code duplication: getNukeBlastRadius

* Disallow nuking unknown civs

* Don't show Nuke attack table when the Nuke has just been selected

* World map display of nuke blast radius and friendly fire
2023-07-30 17:39:28 +03:00
SomeTroglodyte
443bf3afdb
Local mod folder names preserved. (#9844)
* Reduce conversion of local mod folder names to treat only ending spaces/dashes

* Wiki entry for GlobalUniques

* Missing originRuleset coverage

* Nicer RulesetValidator messages when name or originRuleset are missing
2023-07-30 17:38:33 +03:00
SomeTroglodyte
b992144ecd
Fix a few now flagged but working Unique targets (#9845)
* Allow a few working UniqueType-UniqueTarget combos in RulesetValidator

* RulesetValidator checks GlobalUniques

* Alternate Settlers and Workers recognized via Unique - same rules in RulesetValidator and GameStarter, wiki clarification
2023-07-30 17:38:26 +03:00
itanasi
73e06a114f
Update SDK Platforms text. Update photos (#9848)
* Update SDK Platforms text. Update photos

* Try to fix link for Markdown Screenshots

* Revert to docs link

* Try Unciv in file path
2023-07-29 23:12:16 +03:00
Yair Morgenstern
2d499703d7 Resolved #9840 - targetSdk set to 33
Due to the upcoming Google Play deadline (see https://support.google.com/googleplay/android-developer/answer/11926878)
We're upgrading the target SDK and build tools for Unciv.

What this means for you, is that you need to download BOTH the new Android SDK AND the new build tools to compile to Android
If you're only doing Desktop development, this will not affect you

In Android Studio:
- Double-click shift (for search)
- "SDK manager"
- Go to SDK platforms tab, select Android 13 (Tiramisu) - this will lead to an SDK download
- Go to the SDK Tools tab
- Click 'show package details' at bottom-right
- Click 33.0.2 - this will lead to a Build Tools download
2023-07-24 10:41:08 +03:00
SomeTroglodyte
a29cdc91e8
Unique target compliance test v2 (#9802)
* Split off some UniqueType helper classes, make regions work in Android Studio and linting

* Fix wrong UniqueType.Stats target

* Fix two Pantheon uniques

* BeliefType a little nicer to read

* More linting

* Implement UniqueTarget validation

* Validation of UniqueTypes allowed as conditionals
2023-07-15 22:06:12 +03:00
Yair Morgenstern
ee092a5851
City-level resources (#9774)
* City-level resources are...
- Not displayed in civ top bar
- Not considered civ-level resources (for trade, non-city conditionals, etc)
- Are explicitly treated in city conditionals
- ARE considered for constructing buildings requiring resource
- ARE NOT considered for construction units requiring resource

* getCityResources separates resources by origin so we need to sum them - kudos @SeventhM

* CR fixes

* Added new Civilization.getResourceAmount function

* More usages of civInfo.getResourceAmount()

* Don't add city resource table if it's empty
2023-07-10 16:24:50 +03:00
Yair Morgenstern
103234a6b8 Keep track of what mod each ruleset object comes from, for debug and civilopedia purposes 2023-07-05 21:55:57 +03:00
Yair Morgenstern
7ebd116a61 awesome-pages wiki modding folder reorg 5 2023-07-02 23:49:29 +03:00
Yair Morgenstern
7c0af0c015 awesome-pages wiki modding folder reorg 4 - sections as list 2023-07-02 23:46:15 +03:00
Yair Morgenstern
d30bf4cb87 awesome-pages wiki modding folder reorg 3 - sections 2023-07-02 23:45:07 +03:00
Yair Morgenstern
2c23dc6e32 awesome-pages wiki modding folder reorg 2 2023-07-02 23:43:10 +03:00
Yair Morgenstern
6e0dbea6d4 awesome-pages wiki modding folder reorg 2023-07-02 23:42:07 +03:00
Yair Morgenstern
d83c14af03 awesome-pages test 2.1 2023-07-02 23:22:55 +03:00
Yair Morgenstern
cf1be27e3c awesome-pages test 2 2023-07-02 23:21:30 +03:00
Yair Morgenstern
c26837fdd7 Step-by-step instructions to create a new Civilization mod 2023-07-02 18:10:09 +03:00
Yair Morgenstern
f7295884e6 Improved mod overview documentation 2023-07-02 17:13:57 +03:00
Yair Morgenstern
48ca477699 More modder documentation clarity 2023-07-02 16:59:11 +03:00
Yair Morgenstern
7b0aac007a Reorg modding pages
PAge order is determined by file name - but link text is determined by title
2023-07-02 16:49:39 +03:00
Yair Morgenstern
76ad2d8e7a mkdocs awesome-pages plugin 2023-07-02 16:35:41 +03:00
Yair Morgenstern
df87f203b2 Reorganize modders documentation files 2023-07-02 16:20:37 +03:00
Yair Morgenstern
0edfa4841e Better image documentation for modders 2023-07-02 02:42:36 +03:00
Yair Morgenstern
bb22b1de72 Actually generated unique type documentation 2023-07-02 01:36:28 +03:00
SomeTroglodyte
a8ec8f84ec
Architectural update - Make animated menu reusable (#9685)
* Extract AnimatedMenuPopup from UnitUpgradeMenu to make its basic idea reusable

* Rebase UnitUpgradeMenu onto AnimatedMenuPopup

* Add SoundPlayer.playRepeated for future reusability

* Move UnitUpgradeMenu to popups package

* Reuse playRepeated in PromotionPickerScreen

* Reuse playRepeated in PromotionPickerScreen - clean up imports
2023-06-28 12:05:04 +03:00
SomeTroglodyte
c45d3ecb7c
Promotion picker allowing picking chains in one go (#9655)
* Try to allow chained promotion picking

* Reorg PromotionPickerScreen into own package

* Draft for new PromotionTree

* Change PromotionPickerScreen to use new tree (picking still not done)

* Finish new PromotionPickerScreen - code

* Finish new PromotionPickerScreen - assets and linting

* Finish new PromotionPickerScreen - polish positioning and lines

* Finish new PromotionPickerScreen - fix sound

* Finish new PromotionPickerScreen - little optimization

* Finish new PromotionPickerScreen - emphasize line along path

* Finish new PromotionPickerScreen - merge fix

* Finish new PromotionPickerScreen - address comments

* Finish new PromotionPickerScreen - fix sort and update wiki
2023-06-28 10:49:35 +03:00
Yair Morgenstern
330fa6593b 4.7.4 2023-06-25 10:07:17 +03:00
Yair Morgenstern
b6aa177311 4.7.3 2023-06-23 09:39:54 +03:00
ymorgenstern
fd56581f21
Update Building-Locally.md (#9631)
* Update Building-Locally.md

Updated build documentation with links, clearer language, and better installation structure

* Update docs/Developers/Building-Locally.md
2023-06-23 08:53:09 +03:00
SomeTroglodyte
ff54bcd493
Prevent mod conflicts better (#9586)
* Tighten mod check severity and selectivity for unit-producing triggered Uniques

* Prettify display of mod check results by suppressing dupes and hiding conditionals from tr()

* Extra confirmation to play with errors, colors, improved handling of mod checkboxes

* Tweaks to improved mod checking in new game
2023-06-19 19:02:09 +03:00
Yair Morgenstern
e987bbbaad Added new unique - "Automatically built in all cities where it is buildable" 2023-06-19 15:40:21 +03:00
Yair Morgenstern
4107e081bd 4.7.2 2023-06-18 18:29:55 +03:00
SomeTroglodyte
123a51a6ef
Publish new mod category workflow (#9606) 2023-06-18 18:15:13 +03:00
Xander Lenstra
639d34e28d
Reordered the region of other global uniques and wrote a few unique tests (#9611) 2023-06-17 20:59:51 +03:00
SomeTroglodyte
46a84c23b0
Make mod categories curated in Json (#9542)
* Dynamic mod categories from online query

* Move Working string to Constants

* Move Mod categories to json

* Move Mod categories to json - UI

* Move Mod categories to json - initial json
2023-06-14 09:12:24 +03:00
Yair Morgenstern
02d7325576 UnitFilter also matches TechFilter for that unit 2023-06-12 23:13:47 +03:00
Yair Morgenstern
e5232494a0 Improved AI city location picking
Done by ignoring tiles already belonging to another civ / within work range of another city
2023-06-12 10:27:26 +03:00
SomeTroglodyte
3187f49e91
UiElementDocsWriter improvement to cope with BorderedTable (#9506) 2023-06-11 14:45:59 +03:00
SomeTroglodyte
7fb8bae251
Fix translated sorting (#9563)
* Fix translated sorting

* Minor linting, missing pedia icon, missing tooltip template

* Wiki on icons for Beliefs
2023-06-11 12:37:25 +03:00
SeventhM
c506331dcc
Pantheon Mod Constants (#9562)
* Religion Mod Constant

* Update mistake in wiki
2023-06-11 12:36:41 +03:00
Yair Morgenstern
4dad953db9 bugfix: AI evaluation of ButItemsDiscount no longer crashes 2023-06-11 11:10:33 +03:00
SomeTroglodyte
13619d18a1
Upgraded music player popup (#9514)
* Popups get the ability to scroll only the content without the buttons

* Centralize LoadingPopup

* Split non-WorldScreenMenuPopup classes off from that file

* Linting

* Nicer music playback dialog

* Translation templates
2023-06-04 11:53:56 +03:00
SomeTroglodyte
fcd309781d
Upgrading from Unit overview improved (#9485)
* Unit upgrade tooltip in overview

* Unit upgrade tooltip in action table

* Unit upgrade tooltip in action table - colored Key

* Unit upgrade in Overview - reselect

* Fix merge problems and FormattedLine color markup ability

* Relax MarkupRenderer.render lines parameter type

* Skin has a getColor shortcut - use it

* Unit overview upgrade icons now open a menu instead of upgrading immediately

* Unit Overview upgrade - "Mid" buttons

* Unit Overview upgrade - reorg
2023-05-31 18:41:57 +03:00
alexban011
0b51fcdb92
docs: added documentation for running detekt (#9443)
* docs: added documentation for running detekt

* docs: added note for windows users
2023-05-23 23:15:24 +03:00
SomeTroglodyte
5f60c887f7
Next-Turn Progressbar (#9409)
* Next-Turn Progressbar

* Next-Turn Progressbar - doc

* NextTurnProgress: Rethink max on first turn
2023-05-22 17:59:28 +03:00
Yair Morgenstern
280025fa10 Resolved #9416 - failure to get preview image no longer causes crash 2023-05-21 12:35:57 +03:00
SomeTroglodyte
1de866c7ed
Local and/or jpg mod previews (#9394)
* Allow mod preview image to be a jpg

* Allow preview images from WIP mods lacking github url

* Wiki preview.jpg

* Allow mod preview image to be a jpg - review
2023-05-16 13:00:44 +03:00
Yair Morgenstern
5bbd8bce53 Allow mods to contain a "preview.png" file for visual indication 2023-05-14 14:36:46 +03:00
Skekdog
a3ef6fa314
Add May not annex cities unique (#9314)
* Add `May not annex cities` unique, following same behaviour as Civ5 Venice. Hopefully this time I won't need to re-install windows.

* Add `May not annex cities` unique, following same behaviour as Civ5 Venice. Hopefully this time I won't need to re-install windows.

* Fix raze button being unavailable in city screen

* Fixed raze button being available in city screen, as per civ5

* Corrected indentation

* mayAnnex instead of canAnnex, hasUnique rather than getMatchingUniques

* AI will follow rules

* Replaced getMatchingUniques with hasUnique, for real this time
2023-05-09 23:02:19 +03:00
vermontbail
bd3081f276
Changes to landing page FIXED (#9337)
* Updated Building-Locally.md

While the underlying steps haven't changed, some of the options now have slightly different names in Android studio.

* Update index.md

* Revert "Updated Building-Locally.md"

This reverts commit e3772dad78.

* Revert "Revert "Updated Building-Locally.md""

This reverts commit e1f5960a2e.

* Update Building-Locally.md
2023-05-07 08:09:14 +03:00
Yair Morgenstern
0b0a400f65 docs: Closer cropped icon for better viewing 2023-04-25 18:19:30 +03:00
Yair Morgenstern
c2ae308622 Custom icons for mkdocs 2023-04-25 18:10:15 +03:00
Yair Morgenstern
cb626861df docs: better unique parameter documentation 2023-04-25 17:45:40 +03:00
Yair Morgenstern
079c237547 terrainFilter now accommodates nationFilter for owner 2023-04-25 17:45:40 +03:00
Yair Morgenstern
95ee35d301 Testing: Damage animations on damaged units 2023-04-24 17:07:55 +03:00
caffidev
4dc6d50cde
fix: fix a typo in Civilization-related-JSON-files.md (#9225) 2023-04-19 19:35:41 +03:00
SomeTroglodyte
8f7db469b9
Little documentation cleanup (#9226) 2023-04-19 19:33:34 +03:00
Yair Morgenstern
32191bd57d 4.6.4 2023-04-19 11:52:57 +03:00
Yair Morgenstern
4d63f0542f Avoid font-related crash 2023-04-19 11:26:11 +03:00
Yair Morgenstern
2f25ed3053 Replaced hardcoded embarked sight with configurable
"Normal vision when embarked" replaced by "[+1] Sight <for [Embarked] units>"
2023-04-19 11:12:21 +03:00
Yair Morgenstern
ab1d823477 4.6.2 2023-04-16 15:01:43 +03:00
Yair Morgenstern
28f5043fcb 4.6.1 2023-04-13 16:26:43 +03:00
SomeTroglodyte
e0533e994f
Fix startBias regional assignments (#9171) 2023-04-13 15:38:19 +03:00
SomeTroglodyte
0500f73770
Victory screen and victory detection use VictoryData (#9175)
* VictoryScreen uses VictoryData

* Victory detection no longer circumvents VictoryData
2023-04-13 11:54:11 +03:00
Yair Morgenstern
a363edaa6a 4.6.0 2023-04-09 18:15:53 +03:00
Yair Morgenstern
adb51d9264
Resource stockpiles! (#9147)
* Resource stockpiles!

* toString extension including sign (+/-)

* Trigger uniques to provide/consume stockpiled resources

* Fixed build

* Display 'per turn' for stockpiled resources that are consumed per turn

* "Costs [amount] [resource]" works!

* Stockpile unique costs are displayed in construction button

* Added unique to prevert certain resources from being traded
2023-04-09 18:01:26 +03:00
itanasi
892a1bc4cc
Attempt to re-add screenshots to help new Android Studio setups. Check if rendering properly (#9144) 2023-04-09 08:35:48 +03:00
vermontbail
06ce25d87e
Updated Building-Locally.md (#9141)
While the underlying steps haven't changed, some of the options now have slightly different names in Android studio.
2023-04-09 01:47:17 +03:00
Yair Morgenstern
711655c786 Better wrapping for long construction item names 2023-04-09 01:20:17 +03:00
Yair Morgenstern
0d9cff0922 "<for [nationFilter]>" conditional added 2023-04-08 22:46:49 +03:00
Yair Morgenstern
243efa3988 chore: inspection performance improvements 2023-04-08 22:03:22 +03:00
SomeTroglodyte
6b084f0e6b
Victory screen score charts (#9121)
* VictoryScreen with Charts by WhoIsJohannes

* VictoryScreen with Charts by WhoIsJohannes - atlas

* VictoryScreen with Charts by WhoIsJohannes - lost icon attribution
2023-04-08 21:38:27 +03:00
Yair Morgenstern
cb20d91822 Battle table displays bonuses according to tile that unit will attack from, not the current tile it's on 2023-04-08 21:34:55 +03:00
SomeTroglodyte
ca06d7e54a
Main menu background map changes infrequently (#9133) 2023-04-07 16:22:46 +03:00
SomeTroglodyte
36667d9d18
Random Nations game starter - reactive UI (#9127)
* Random Nations game starter - reactive UI

* Random Nations game starter - reactive UI continued

* Random Nations game starter - reactive UI - patch
2023-04-07 09:53:04 +03:00
SomeTroglodyte
a4c4c5f93e
Music player controls (#9087)
* Music controls cleanup

* Music controls cleanup - assets

* Music controls cleanup - fix incorrect attribution
2023-04-01 22:06:46 +03:00
SomeTroglodyte
45d66f0580
Civilopedia Welcome, moddable (#8940) 2023-03-31 14:58:07 +03:00
Yair Morgenstern
837833e450 4.5.13 2023-03-26 21:55:23 +03:00
SomeTroglodyte
09cff6e55f
TechPickerScreen colors - skinnable and prettier Future Tech (#9033) 2023-03-25 21:34:49 +03:00
letstalkaboutdune
60a0a856ab
Add AbsoluteUnits license info (#9034) 2023-03-25 21:32:02 +03:00
Yair Morgenstern
4c694be94b 4.5.11 2023-03-21 14:51:53 +02:00
Yair Morgenstern
e5452f5605 modding: 'Only available when' applies to beliefs 2023-03-20 22:19:00 +02:00
Yair Morgenstern
f66076c2a4 4.5.10 2023-03-19 19:00:26 +02:00
Yair Morgenstern
20e1b9b978 Tilesets: Separated unexplored tiles from not visible tiles 2023-03-17 12:06:15 +02:00
Yair Morgenstern
f89765354a Resolved #8901 - Modding: Units from triggers respect "limited to [amount] per civilization" limits 2023-03-15 19:19:35 +02:00
SomeTroglodyte
db08c30363
Make City center minimum tile yields moddable (#8804)
* Slight cleanup of TileStatFunctions

* Make City center minimum tile yields moddable

* Make City center minimum tile yields moddable - patch1

* Make City center minimum tile yields moddable - patch1
2023-03-13 17:02:08 +02:00
Yair Morgenstern
cd8b68253b All units can be automated
Modders can choose which units get it as a primary action
2023-03-13 16:55:50 +02:00
Yair Morgenstern
22da4b29c8 4.5.6 2023-03-11 20:37:35 +02:00
SomeTroglodyte
793d3387bf
Custom key bindings (#8802)
* Configurable key bindings - linting

* Configurable key bindings - move keyboardAvailable

* Configurable key bindings - separate KeyShortcutDispatcher

* Configurable key bindings - framework

* Configurable key bindings - save and load

* Configurable key bindings - activation

* Configurable key bindings - UI

* Configurable key bindings - more linting

* Configurable key bindings - Separate SettingsSelect

* Configurable key bindings - translation tested

* Configurable key bindings - disclaimer

* Configurable key bindings - disclaimer
2023-03-11 20:12:00 +02:00
Yair Morgenstern
d3c084f89f Added 'additional times' to limited actions 2023-03-05 20:03:54 +02:00
Yair Morgenstern
8c24926476 Modding: global alert available as triggerable for all objects 2023-03-05 12:53:02 +02:00
SomeTroglodyte
c40b6159df
Better Religion info and some moddability (#8807)
* Make maximum number of religions moddable

* Explain remaining religion count in Empire Overview
2023-03-04 19:20:23 +02:00
Yair Morgenstern
253c669ba9 Added 'after which this unit is consumed' for units whose only purpose is limited actions 2023-03-03 16:37:11 +02:00
Yair Morgenstern
608e0dfb71 Added limited usage for actions! 2023-03-03 14:47:50 +02:00
Yair Morgenstern
c3a4a18bba Replace unit action for timed golden ages with a generic triggered unique
Triggered uniques display side effects
2023-03-03 14:13:00 +02:00
Yair Morgenstern
06fa2c2378 Added 'for [amount] movement' unit action modifier 2023-03-02 21:02:34 +02:00
Yair Morgenstern
5e85c3ca72 "by consuming this unit" is better 2023-03-01 16:35:06 +02:00
Yair Morgenstern
ae501c3750 'create improvement' action, <consuming this unit> and <as an action> modifiers 2023-03-01 16:09:44 +02:00
Yair Morgenstern
66faeb0d15 Preparation for unit action modifiers 2023-03-01 15:26:54 +02:00
SomeTroglodyte
3d84297da1
Better control over debug messages (#8748)
* Better control over debug messages

* Better control over debug messages
2023-02-27 11:13:34 +02:00
Yair Morgenstern
44399e770c Added triggered uniques to grant specific tech / policy 2023-02-27 10:58:08 +02:00
Yair Morgenstern
8361d68452 Added 'upon ending turn in tile' unit trigger 2023-02-26 23:41:09 +02:00
Yair Morgenstern
86a63ac578 'upon conquering' is a condition not a triggered unique 2023-02-26 22:33:00 +02:00
Yair Morgenstern
c1df32b4e7 Add new uniques to wiki 2023-02-26 22:15:15 +02:00
Yair Morgenstern
090c421f9b Introduced "upon defeating [unitFilter] unit" trigger 2023-02-26 20:31:13 +02:00