GithubHelp home page GithubHelp logo

KotCity 0.49.4

Build Status Build Status

⚠⚠⚠ WARNING! WARNING! WARNING! ⚠⚠⚠

This is pre-alpha software with super obvious bugs, rough edges etc. In the spirit of "release early and release often", I am posting the code. This project is far from done but I prefer to get the code out there to be used by whomever. Disagree with the project? Fork it :)

Obligatory Screenshot

KotCity Screenshot

Gimme the Software!

Download pre-alpha builds for Windows, macOS and Linux.

Java 11+ is required. On Windows it will look for JRE and bring you to download page if you don't have it.

(note, on Ubuntu do "apt-get install openjfx")

New in this version

  • Fix for bad collision detection by @sabieber
  • Optimizations to pathfinding
  • Lots of new buildings :)

Known bugs

  • Railway navigation might be a little fluky, we are working on it.
  • All the other bugs :)

Unknown bugs

  • None

Next up!

  • Schools
  • Hospitals

What is KotCity?

KotCity is a city simulator written in Kotlin inspired by the statistical city simulators of old. This game aims to achieve a mark somewhere between SimCity (1989) and SC2000. Hopefully this mark will be hit and we can set our sights higher. The game will be fully supported on Windows, macOS, and Linux.

Quick Start

How can I change the code or work on the project?

View our Developer's Guide

API Documentation

Command line-flow

  • Install JDK 11+.
  • Clone the project.
  • Run Gradle using ./gradlew run.

It's easy to setting up the development environment. You can use either IntelliJ or other IDEs supporting Gradle, then import this as a Gradle project. Voilà, the project can be worked on.

The UI is done with FXML created with Gluon's SceneBuilder.

FAQ

Q: Why 2D?

A: This project is a lot of work already without having to worry about 3D modeling and so forth. One of my bottlenecks is art, so 2D is an easy way to sidestep that concern. Additionally, the actual "renderers" for the game are kept semi-separate from the simulation, so there's no reason why this couldn't turn into 3D later.

Q: Why Kotlin?

A: It has a lot of libraries (pick any random Java library...) It's pretty productive! Gee-whiz functional stuff baked in. Besides, if this project gets to a place where it's really awesome but just needs extra speed we can reach for that C++ or Rust book.

Q: Bedeutet "Kot" nicht 💩 in Deutsch?

A: Du hast Recht!

Q: Is it any good?

A: Yes!

Why Another City Simulator?

After many years of not seeing any new city builders descend that are satisfactory, I decided to take matters into my own hands. Why? SimCity 2013 was REALLY disappointing. Cities Skylines is fun, but it doesn't seem to scratch that itch that SimCity 4 does. Even though there are still patches and new content coming out for SimCity 4, it's definitely on life support. I looked around at a few of the city simulators available but it doesn't seem like anyone is really working on a modern version of SimCity.

Community

If you get stuck or want to suggest suggestions, you can discuss it in our topic on Simtropolis. Chat with the developers via Gitter.

Contribution

You can contribute buildings (see assets directory), ideas for the game, help with art and so on by creating issues or fork the repo and start to make pull requests.

Current Status

  • GPU accelerated graphics.
  • Map generation (simplex noise based).
  • "Perfect" A* pathfinding.
  • Zoning of residential, commercial, industrial, similar to SimCity.
  • Moddable buildings.
  • City saving and loading.
  • Data overlays for traffic, desirability, natural resources.
  • Multi-threaded engine that allows for speedy traffic / city calculations.
  • As-you-want map size (Can your PC handle 100km^2? Go for it!).
  • Power plants and coverage.
  • Dynamic economy where goods, services and labor are exchanged.

Future Plans

To make a game that "takes over" from SimCity 4. We have a loooooong way to go:

  • Bus stations.
  • Functioning rail :)
  • More types of power plant (hydro, wind, etc).
  • Create buildings that use resources under the ground (coal, etc).
  • Implement "module upgrade" system from SimCity 2013 (upgrades to power plants etc).
  • Improve graphics.
  • Obtain sound effects / music.
  • Add many, many additional types of buildings.
  • Add "mod manager" (think Steam workshop... SC4 has many mods but they really suck to obtain/install).

For a more detailed overview of whats planned see our roadmap.

License

This project is licensed with Apache License 2.0. This project includes icons by various graphic designers from the Noun Project.

kotcity's Projects

kotcity icon kotcity

KotCity, an open source city simulator

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.