sizeofcat / Civitas
Programming Languages
Projects that are alternatives of or similar to Civitas
Civitas
Description
Civitas is a free-to-play strategy empire-building browser game written in Javascript with the help of the jQuery library. Players develop and maintain their settlement from initial village to a fully grown metropolis, influencing and conquering the neighbouring settlements.
There is no set goal, game is played on an infinite-round basis and there is a server component planned. The focus of the game is to manufacture and trade resources in order to raise the level of your city.
Features
- [x] Over 80 types of buildings, each intertwined in the chain of production.
- [x] Custom climate zones, each with specific buildings.
- [x] Global market, player can trade goods with other settlements.
- [x] Army! Navy! Soldiers! Ships!
- [x] Fame system that allows your city to level up via trades, conquers and special buildings.
- [x] Prestige system that affects diplomacy.
- [x] Each city in the game world is linked via an influence system that needs to be maintained for diplomacy to work.
- [x] Random events that can change your diplomacy status with the other cities, give you coins or random resources.
- [x] Espionage, influence cities, destroy buildings, sabotage.
- [x] Ranking screen, where cities get ranked according to their status in the world.
- [x] Declare war, propose alliances and pacts, ask other settlements to join your city, propose cease fire.
- [ ] Heroes, unique classes and items, attributes.
- [ ] Server component, no actual data is saved externally, only in your browser's localStorage.
- [ ] Jailer component that assures game data integrity (no cheating).
- [ ] Any player interaction since no data is transmitted to the server component.
- [ ] Artificial Intelligence (AI) for computer-controlled cities.
Playing
You can play the game here but be aware of the fact that it's not synced to the latest git changed.
In development, Civitas is using several assets that are copyrighted by Bluebyte, so I cannot redistribute them with the game. In the future, the game will have a brand new set of graphics but for now those will be enough for testing. You can find a link to the said assets here (extract the contents of the civitas-assets.zip
file into your dist/images/
directory). All the other game resources are freely distributed under the GPLv3 license, same as the code.
1. With Docker
$ docker-compose up --build
And point your browser to http://localhost
(or even better, add the line below to your /etc/hosts
file and browse http://civitas.test
.
127.0.0.1 civitas.test
2. Local
Choose an archive format from below, download and uncompress it. Point your browser to dist/index.html
, you don't need a game server to play.
Development
Start by installing all the prerequisites:
$ npm install
Run the main script that will load gulp and open http://localhost:8080
in your web browser.
$ npm start
Releases
- bleeding edge version - GitHub .zip - GitHub .tar.gz - Gitee .zip
- 0.3 (June 11, 2019) - GitHub .zip - GitHub .tar.gz - Gitee .zip
- 0.2 (April 30, 2017) - GitHub .zip - GitHub .tar.gz - Gitee .zip
- 0.1 (January 20, 2017) - GitHub .zip - GitHub .tar.gz - Gitee .zip
License
Civitas is written by sizeof(cat) and distributed under the GPLv3 license.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
Contributing
Pull requests are always welcome!
I am always thrilled to receive pull requests, and do my best to process them as fast as possible. Not sure if that typo is worth a pull request? Do it! I will probably appreciate it.
If your pull request is not accepted on the first try, don't be discouraged! If there's a problem with the implementation, hopefully you received feedback on what to improve.
Always sign your commits and make sure you read the Coding Style and the Code of Conduct.
Source code
Civitas is written using Javascript, has ~22000 lines of code (including comments and whitespace), ~290Kb minified and can be downloaded from GitHub.com, Gitee.com or by using git to clone the repository:
GitHub:
$ git clone [email protected]/sizeofcat/civitas.git
Gitee
git clone [email protected]/sizeofcat/civitas.git
Dependencies
- jQuery 3.4.1
- jQuery UI 1.11.2
- jQuery Tipsy 1.0.0a
- jQuery scrollTo 1.4.14
- CryptoJS 3.1.9
- simplex-noise.js
- PRNG.js
Thanks
The music/track1.mp3
song is named Glandula Pinealis by Shantifax.
Screenshots
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |