
KotCity – an open-source city simulation game written in Kotlin - kotcity
https://github.com/kotcity/kotcity
======
guelo
> 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.

The JVM is fast enough for Minecraft, it should be plenty fast for this. But
if you ever do want to compile to native then Kotlin/Native would make a lot
more sense than a rewrite in a completely different language.

~~~
realusername
> The JVM is fast enough for Minecraft,

That's debatable, the requirements for running a Minecraft server are quite
big for what it does and it's very easy to make it lag.

~~~
peoplewindow
Well, "fast enough" is pretty vague. But bear in mind that Minecraft has never
seemed to care about optimisation. For the longest time it was still running
Java 7 even when Java 8 with the G1 collector had been out for a long time,
and improved performance quite a bit.

HotSpot has a pauseless GC these days from Red Hat and is getting another one
developed by the Java team itself, so even Minecraft's very heavy use of GC
should be ok (heavy, after the new devs "improved" Notch's code to use objects
everywhere instead of passing coordinates in separate parameters).

------
ckdarby
Not sure if you're aware of
[http://cityboundsim.com/](http://cityboundsim.com/) ?

They're much further along and it is probably worth combining development
resources towards that project instead.

~~~
kotcity
I am aware of it... we have somewhat divergent goals. I seek more of a re-
creation of "SC4-style" city simulator, without agents for all traffic and so
on. I think the big difference between this game and Citybound is that I'm
trying for more of a statistical / stochastic approach vs. an agent based
approach. I think the agent-based approach was one of the factors that led to
SimCity 2013 not being that fun.

Citybound is aiming more for the Cities: Skylines approach to traffic and
simulation.

I'm a big city-builder fan and have tried almost every one I can get my hands
on. Among myself and some others, there is the feeling that the SimCity series
peaked at SimCity 4 and I'm hoping to recapture that feel. It seems that
Citybound is going in a totally different direction, which is fine, but that's
not the aim of this project.

I hope to play Citybound when it is released but I do not think this project
is redundant.

~~~
crowbahr
I dig it. What are you guys looking for in dev involvement? How casual can I
be and still potentially contribute? I'm an Android dev who has been looking
at sinking his teeth into kotlin for a bit now.

~~~
kotcity
As casual as you want... this is a side project for all of us. One of our
other guys is an Android dev just using this for Kotlin practice. Drop on in,
check out our code, suggest ideas, whatever tickles your fancy!

If you want stop by our dev chat channel on
[https://gitter.im/kotcity/Lobby](https://gitter.im/kotcity/Lobby) and ask us
questions or reply here if that works best.

------
edem
Shameless plug: I'm working on a [Text GUI
library]([https://github.com/Hexworks/zircon](https://github.com/Hexworks/zircon))
which has the option for isometric projection [like
this]([https://cdn.discordapp.com/attachments/205245036084985857/41...](https://cdn.discordapp.com/attachments/205245036084985857/419246113242218497/GIF.gif)).
It is completely decoupled from the backend (the simulation engine in your
case) so if you are interested we can work together. I also work in Kotlin and
I'm eager to put in some work to create a fun game. It also supports tilesets
so you are not stuck with ASCII.

~~~
twic
Apologies for being a massive dweeb, but i think that's some variety of
oblique projection, rather than isometric:
[https://en.wikipedia.org/wiki/Oblique_projection](https://en.wikipedia.org/wiki/Oblique_projection)

~~~
edem
This is as far as you can get with square based grids. :) We call it "top down
isometric".

~~~
haggy
Who's "we"?

~~~
edem
My team and me.

------
Ethcad
Seems like bad news that the programming language it’s written in is one of
the main selling points...

~~~
muzani
People don't really need another city sim. But a lot of people want something
in Kotlin to mess around with.

~~~
kotcity
Since Maxis has more or less been gobbled up by EA I don't think we will ever
see SimCity4++, so I think we DO need another city sim.

There are a few in the works but I don't think any "carry the torch" of the
SC4-style game.

SimCity 4 has such staying power, new mods and lots are still being created to
this day! It outlived SimCity 2013 by far.

Cities: Skylines, Banished, Citybound are all fun in their own right but I
don't see any as a proper continuation of the SimCity series. (ignoring
SC2013)

As a bonus you can play around in Kotlin too!

~~~
muzani
What do you think SC4 has that Cities: Skylines etc doesn't?

------
aluhut
FYI: Kot in German = excrements

~~~
mixmastamyk
Ha, reminds me of a juice booth/startup the other day at the tech fair named
"Suja," which means dirty or obscene in Portuguese!

~~~
seba_dos1
My favorite example is a popular German light bulb brand, Osram, which is also
known in Poland. In Polish it means roughly "I'll put my excrement [on it]" :P

~~~
taneq
While we're at it, Italian cooking appliance brand Smeg invokes something
quite different in English.

------
muzani
This looks like a lot of fun to hack around with. I wonder if it can be ported
easily to Android.

~~~
kotcity
We've taken pains to keep the sim code separate from the view / presentation
layer. If you want to jump in and help us make it dual platform we'd be glad
to have you.

We are using JavaFX which has some kind of Android support via
([http://gluonhq.com/products/mobile/javafxports/](http://gluonhq.com/products/mobile/javafxports/))
or you could simply just ignore our UI and add a native Android one on top of
our simulator.

------
avar
From the README: "Happiness (available in separate branch)".

------
singularity2001
nice Kotlin demo! but calling a very basic 80s style simcity clone 'city
simulation' is a bit out of time. change title?

~~~
taneq
It may be no Cities: Skylines but it's still a simulation of a city. Seems a
fair title to me.

~~~
always_good
Yeah, bizarre criticism. Some of the most intricate games I've played are MUDs
over telnet and many of their mechanics have never been matched by modern
titles.

Doesn't mean they are less worthy games. The thought almost disgusts me, like
only well funded projects can qualify for something as straightforward as a
simulation.

