Skip to content

meganm38/CityRevolution

Repository files navigation

City Evolution - Term Project for UBC CPSC 210

Some Screenshots

Source: pictures used in this application were taken from the web

Proposal

What will this application do?

This application is a simulation of building a 2-D city. Users/players act as the planner and leader of a city and build it from scratch. Players can choose to add a variety of 'contents' to a city such as hotels, restaurants, grocery stores and residents to build a successful town. Players will also implement the functionality of each content so that their cities ara almost like real!

Who will use this application?

  • Players interact with this application to build a city.

Why is this project of interest to me?

I have always been a fan of simulation games on Steam and enjoyed the immersive experience of building a life and living out many aspects of it, so I hope to design such a project where I can control what goes on behind the screens.

User Stories

  • As a user, I want to be able to create a city.
  • As a user, I want to be able to add contents to my city such as hotels and residents.
  • As a user, I want to be able to select a content that I have added to my city and manipulate its functionality. For example, with a hotel, I want to be able to hire residents as staff, create hotel rooms, book residents into hotel rooms, etc.
  • As a user, I want to be able to view all the contents that I have added to a city, and view the status of each content that I have created. For example, I want to be able to see information about each of my residents, or the room booking status of a hotel.
  • As a user, I want to be able to make my residents work at the businesses that I have created and earn money. Employees should automatically receive their wages in their bank accounts.
  • As a user, I want to be able to save all the contents of my city into a JSON file.
  • As a user, I want to be given an option to load a JSON file to restore all contents that I have created.

Phase 4: Task 2

Sun Mar 27 13:57:26 PDT 2022 The city of Vancouver has been created.

Sun Mar 27 13:57:32 PDT 2022 Resident Chandler has been added to city.

Sun Mar 27 13:57:39 PDT 2022 Resident Monica has been added to city.

Sun Mar 27 13:57:47 PDT 2022 Hotel ShangriLa has been added to city.

Sun Mar 27 13:57:54 PDT 2022 Hotel JW has been added to city.

Sun Mar 27 13:58:01 PDT 2022 Chandler is now working at JW.

Sun Mar 27 13:58:04 PDT 2022 10 new hotel rooms have been added to JW.

Sun Mar 27 13:58:15 PDT 2022 JW is open for business.

Sun Mar 27 13:58:19 PDT 2022 5 bookings have been created for Monica at JW.

Sun Mar 27 13:58:27 PDT 2022 Chandler is now working at ShangriLa.

Sun Mar 27 13:58:30 PDT 2022 20 new hotel rooms have been added to ShangriLa.

Sun Mar 27 13:58:33 PDT 2022 ShangriLa is open for business.

Sun Mar 27 13:58:36 PDT 2022 5 bookings have been created for Chandler at ShangriLa.

Phase 4: Task 3

If I had more time to work on this project:

  • I would create Exception classes to handle invalid user inputs inside model rather than checking them against constraints in the ui.

  • I would refactor additional repetitive code in my swing ui windows. Although they all currently extend the abstract class Window, I realized that there still existed some methods in the child classes which shared very similar implementations.

About

Simulation game of building a 2D city

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages