Open-source Android/Desktop remake of Civ V
Go to file
Framonti 538330db87
Test/refactor target helper and test it (#10048)
* ♻️ merge together two branches executing same code

* ♻️ swap if-else chain with when to improve readability

* ️ swap conditions to first check the lighter computationally-wise

* ♻️ extract method to increase readability

* 💚 add some tests for TargetHelper

* 💡 add comment explaining how Unciv grid system works using a graphical example

* 💚 add other tests

* ♻️ change method name to better reflect what it does

* 🐛 fix import after rebase

* 🔥 remove parameter when value is the default and use static field for Vector2(0f, 0f)

* ♻️ split setTileTerrainAndFeatures in two different methods

* ♻️ update older tests to use the new functions
2023-09-05 22:25:28 +03:00
.github Resolve #9854 - update Windows JDK to Adoptium JDK 11 2023-08-02 15:50:55 +03:00
.idea/inspectionProfiles chore: inspection performance improvements 2023-04-08 22:03:22 +03:00
android 4.8.2 2023-09-05 19:14:04 +03:00
buildSrc Version rollout (#10065) 2023-09-05 19:10:29 +03:00
core Test/refactor target helper and test it (#10048) 2023-09-05 22:25:28 +03:00
desktop Consistent UTF-8 where possible (#9927) 2023-08-21 18:17:21 +03:00
detekt/config Fixed more warnings (#9401) 2023-05-18 10:12:33 +03:00
docs 4.8.1 2023-09-04 15:18:46 +03:00
extraImages AbsoluteUnits - Unique Triremes (#8354) 2023-01-11 09:16:24 +02:00
fastlane/metadata/android 4.8.2 2023-09-05 19:14:04 +03:00
gradle/wrapper Gradle update, offerButton.isEnabled = false in initial (#8600) 2023-02-06 14:21:46 +02:00
ios Save compatibility handling (#7255) 2022-07-01 09:34:41 +03:00
server Update UncivServer.kt (#9742) 2023-07-04 20:14:45 +03:00
tests Test/refactor target helper and test it (#10048) 2023-09-05 22:25:28 +03:00
.dockerignore Added running unciv in docker (#7031) 2022-06-01 22:21:56 +03:00
.editorconfig Combat java.util.star-import (#9382) 2023-05-13 21:50:55 +03:00
.gitattributes
.gitignore ci: improved detekt configuration and ci (#9380) 2023-05-14 21:55:36 +03:00
build.gradle.kts Fixed broken build 2023-06-23 09:26:53 +03:00
changelog.md 4.8.2 2023-09-05 19:14:04 +03:00
debug.keystore
docker-compose.yml Added running unciv in docker (#7031) 2022-06-01 22:21:56 +03:00
Dockerfile Adding docker build and push workflow, fixing docker build (#9508) 2023-06-03 23:30:44 +03:00
gradle.properties
gradlew Build warnings cleanup (#6827) 2022-05-19 02:12:18 +02:00
gradlew.bat Build warnings cleanup (#6827) 2022-05-19 02:12:18 +02:00
keystore.jks
LICENSE
mkdocs.yml awesome-pages test 2 2023-07-02 23:21:30 +03:00
README.md Fix docker badge (#9946) 2023-08-20 09:18:13 +03:00
settings.gradle.kts Fixed a couple warnings reported by code analysis (#9364) 2023-05-10 11:43:53 +03:00

Unciv - Civ V remake for Android & Desktop

Google Play F-Droid itch.io Flathub AUR pi-apps macport

Build status Discord

What is this?

An open source, mod-friendly 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:
  • Finishing off Vanilla mechanics - mostly done!
  • G&K mechanics - espionage, small other changes (see #4697)
  • BNW mechanics - trade routes, world congress, etc.

Contributing

How can I help?

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?

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!

There's a lot left to implement, so it's hard to give an estimation of when exactly each feature will be added, but we're constantly improving!

If not, then the feature won't be added until we've finished all the features from the original Civ - as mentioned, this will take a while!

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

This is a subject that I've heard a lot of hearsay on but no solid sources of law.

From what I gather, it is illegal:

  • To use the Civilization name
  • To impersonate the Civ games (so calling yourself civi|zation with a similar logo, for instance)
  • To use any assets from the original game (images, sound etc) - they belong to Firaxis

From what I understand, intellectual property rights apply to names, characters and settings. They do not apply to mechanics - as I'm sure you know, there are a billion Flappy Bird knockoffs

If anyone has any real legal sources, or can shed some light on the limits of what is and is not allowed, I'd be happy to hear!

Run with Docker 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

Credits and 3rd parties