quadcopter_with_PID_controller
Quadcopter dynamics simulation with two proportional–integral–derivative (PID) controllers that adjust the motor speeds…
A digital twin of the city of Colombo, Sri Lanka, implemented in Cities: Skylines, based on real data. Nearly 1:1 in te…
git clone https://github.com/team-watchdog/colombo-skylines.gitteam-watchdog/colombo-skylinesby Nimesha Periyapperuma and Yudhanjaya Wijeratne
This repository contains Team Watchdog's simulation of the city of Colombo. This is an accurate topographical representation of Colombo, built with detailed land use and zoning based on official city development plans and data centered around 2020; over a million virtual citizens, simulating population dynamics that reflect large-scale, real-world demographics and human movement; public transport based on actual route data; and curated visual assets to better match Colombo's unique architectural style.
We've also set up a wiki to explain how we did it and how you can get this running on your own machine.
Note
Tested on Windows 11 and Pop OS 22.04 LTS. To make it easier to install, we've uploaded the full folder structure, including mod configs.
This project is built with the use of publicly available data from
In early 2024, we started working on something to help the general public better understand the city of Colombo and the impacts of various urban design interventions. Our goal was to create a more accessible and visual tool for citizens to comprehend urban problems and judge the impact of different decisions. This project was inspired by our previous work at Watchdog, where we spend months of research and ultimately wrote a monumental 13,000+ word collection on explaining Sri Lankan transport. Ultimately, what we realized was that there had to be some visual way to bridge the gap between professional expertise (often confined to academic papers and reports) and public understanding.
Our virtual city of Colombo serves as a crude "Digital Twin," offering a platform to:
Potential applications include:
While not a completely accurate simulation, this "toy universe model" provides a useful tool for visualizing and communicating urban development concepts. We present this tool in the hope that it will facilitate better communication and understanding of urban planning issues in Colombo.
We chose to use Cities Skylines, a 2015 video game, as our simulation platform. This choice was driven by several factors:
We focused on recreating the Colombo Municipal Council (CMC) area as of 2020. Key steps included:
The result was a highly accurate representation:
We extracted land-use data from the Colombo city development plan and mapped it to Cities Skylines' zoning categories:
We partitioned the city into 15 districts based on Colombo Municipal Council maps, allowing for more granular statistical observation and population calibration.

We implemented both public and private transport systems:
Public Transport:
Replicated three main railway lines:
Implemented six key bus routes:
Private Transport:
To improve visual accuracy:
The Skylines engine, even when modded to the hilt, has the following limits
So we have a few notable issues:
For detailed documentation on methodology, data sources, technical specifications and a guide on how to get this running on your own machine, please refer to our project wiki.
Cities Skylines, its logos, trademarks, and software are copyright © 2014 Paradox Interactive AB. All mods used here are similarly under their own lincenses. Our map (as a savefile, modlist and instructions) is presented under the MIT License -
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
This work was created by Watchdog Sri Lanka (Appendix) as a part of the project Building Tools to Strengthen Pluralist, Inclusive and Fact-based Public Discourse, conducted by LIRNEasia. LIRNEasia (www.lirneasia.net) is a pro-poor, pro-market regional digital policy think tank. The project is conducted in partnership with the Strengthening Social Cohesion and Peace in Sri Lanka (SCOPE) programme, co-funded by the European Union and German Federal Foreign Office. SCOPE is implemented by GIZ in partnership with the Ministry of Justice, Prisons Affairs and Constitutional Reforms.
Special thanks to Professor Amal Kumarage and Dr. Amila Buddhika Jayasinghe for data, research, and contributions, especially around the commuter flow across the main arteries that connect the CMC with the rest of the country. This project would not exist without the knowledge and hard work from immensely talented modding community around Cities: Skylines: Andreas Pardeike, boformer, kian.zarrin, FireController#1847, LinuxFan, Krzychu1245, leftbehind, Bloodypenguin, algernon, Chamëleon TBN, Simon Ryr and others listed in full in the mods section.
For questions or collaborations, please open an issue or contact the project maintainers directly.
more like this
Quadcopter dynamics simulation with two proportional–integral–derivative (PID) controllers that adjust the motor speeds…
A sandbox game created in C using raylib, featuring various types of falling pixels, such as sand or water. (more in th…
A crowd simulation and visualization demo implemented in Unity using Dijkstra Distance Field and simplified version of…
search projects, people, and tags