9cd531c8cf
* hasAtLeastMotivationToAttack now takes uses City.neighboringCities * Changed attack pathing to use Astar * Made the base force higher * Declare war checks for total population instead of number of cities * MotivationToAttackAutomation takes into account denunciation * Set up DeclareWarTargetAutomation.kt * Added logic for Civs to try and gang up on other Civs * Added logic for civs to try and join an ally civ in their war and to declare war directly * Added declineJoinWarOffer flag * Reduced the likelyhood of declaring war a little * Civs don't try to join wars against city-states * Removed calculating targets with 0 motivation * Relative production is not calculated against city-states * Improved getAttackPathsModifier to only calculate the best path per city * Refactored filter statements * AI now tries to execute planned wars by default * Culture Civs can now declare war, AI can declare multiple wars * AI won't gift gold to city-states that it wants to attack * Changed motivation from combat * Changed AI aggression towards city-states * Civs don't want to sign a DOF with the only nearby major civ as much * City.neighboringCities filters out cities that are not visible * Fixed some conditionals in tryJoinWar * Fixed some war plan types breaking instead of continuing * Civs are more likely to sign open borders if they haven't seen their cities * Changed far away cities to have less of a value * Fixed neighboringCities and getNeighboringCivilizations * Other fixes * Reduced motivation to attack from relative strength * Added more to motivation to attack * Added extra friendship modifiers * Moved war evaluation to WarPlanEvaluator * Added comments and re-named preparingWarPlan * AI Team wars require neutral relations to send * Added a team war notification * Added evaluation of join war trades * Tweaked MotivationToAttackAutomation * Improved peace deal offers * AI peace deals wait until 10 turns after declaring war * Made the AI declare war a little less * AI builds more military units * AI keeps at least 2 great generals to not build citadels with * AI TeamWar is more specialized for fighting stronger Civs * Removed extra line * Added more comments * Improved unit tryPrepare logic * Minor respelling and style improvements * Changed MotivationToAttackAutomation HashMap to be a list * Added a heuristic for the Astar search * TeamWarPlan focuses more on relative force and fighting stronger civs * MotivationToAttackAutomation takes into account planned wars and can target stronger civs * Added logic for AI's to request other civs to join their war * Fixed some WarDeclaration TradeEvaluation logic and reduced costs * Added some extra safety against extreme force values in DeclareWarPlanEvaluator |
||
---|---|---|
.github | ||
.idea/inspectionProfiles | ||
android | ||
buildSrc | ||
core | ||
desktop | ||
detekt/config | ||
docs | ||
extraImages | ||
fastlane/metadata/android | ||
gradle/wrapper | ||
server | ||
tests | ||
.dockerignore | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
build.gradle.kts | ||
changelog.md | ||
debug.keystore | ||
docker-compose.yml | ||
Dockerfile | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
keystore.jks | ||
LICENSE | ||
mkdocs.yml | ||
README.md | ||
settings.gradle.kts |
Unciv - Civ V remake for Android & Desktop
What is this?
An open source, moddability-focused Android and Desktop remake of Civ V, made with LibGDX
Is this any good?
Depends what you're looking for. If you're in the market for high-res graphics, amazing soundtracks, animations etc, I highly recommend Firaxis's Civ-V-like game, "Civilization V".
If you want a small, fast, moddable, FOSS, in-depth 4X that can still run on a potato, you've come to the right place :)
What's the roadmap?
In this order:
- Polish! As you may have noticed, Unciv is fully functional but rough around the edges. This means:
- UI+UX improvements (suggestions welcome!)
- Better automation, AI etc. in-game
- G&K mechanics - espionage, small other changes (see #4697)
- BNW mechanics - trade routes, world congress, etc.
Contributing
Programmers start here!
Translators start here!
Modders start here!
You can join us in any of the open issue, or work on improving anything you want - once you're finished, issue a pull request and it'll go into the next version!
If not, you can help by spreading the word - vote for Unciv where you can, mention it on Reddit or Twitter etc, and help us with new ideas of how to get the word out!
FAQ
How do I install?
- Android - Google Play or F-droid
- Windows/Linux - itch.io, Flatpak via Flathub, or AUR
- Raspberry Pi - Pi-apps
- MacOS - Install with this guide
- Jars, APKs and Windows/Linux builds also available in Releases (run jar with
java -jar Unciv.jar
) - not recommended since we update frequently and you will quickly become out-of-date - Build from scratch if that's your thing
How about IOS?
I'm not planning on it. It means paying money to Apple, yet another release path, and since I don't have an IOS device it means I can't test it properly.
Steam release?
Steam has decided that they don't want to host Unciv, they probably don't want to risk legal issues with Firaxis (although those should be non-existent, see below)
Will you implement {feature}?
If it's in the original Civ V, then yes!
If not, then the feature won't be added to the base game - possibly it will be added as a way to mod the game, which is constantly expanding
Why not? This is its own game, why not add features that weren't in Civ V?
Having a clear vision is important for actually getting things done.
Anyone can make a suggestion. Not all are good, viable, or simple. Not many can actually implement stuff.
As an open source project, this stuff is done in our spare time, of which there isn't much.
We need a clear-cut criteria to decide what to work on and what not to work on.
Will you implement Civ VI?
Considering how long it took to get this far, no.
How can I learn to play? Where's the wiki?
All the tutorial information is available in-game at menu > civilopedia > tutorials
All the information is included in the amazing Civ V wiki
Since this is a Civ V clone, you can search Google for how to play Civ V and there are loads of answers =)
Alternatively, you could join us on Discord and ask there =D
Aren't you basically making a Civ V clone? Is that even legal?
According to the US Copyright Office FL-108, intellectual property rights do not apply to mechanics - as I'm sure you know, there are a billion Flappy Bird knockoffs
It is definitely illegal:
- To use any assets from the original game (images, sound etc) - they belong to Firaxis
It is probably illegal (no solid sources on this):
- To use the Civilization name
- To impersonate the Civ games (so calling yourself civi|zation with a similar logo, for instance)
Interestingly, Civilization is a registered trademark, but it looks like it's only that particular logo which is trademarked, so technically you could make another game called "Civilization" and it'll stick. In any case we're not going there :)
Run with Docker
If you have docker compose installed:
$ docker compose build && docker compose up
and then goto http://localhost:6901/vnc.html?password=headless
If just docker:
$ docker build . -t unciv && docker run -d -p 6901:6901 -p 5901:5901 unciv
Or just use our already built one:
$ docker run -d -p 6901:6901 -p 5901:5901 ghcr.io/yairm210/unciv
and then goto http://localhost:6901/vnc.html?password=headless