Written in Java by Jeff Taylor-Chang - 2017
The simulation is of an infection outbreak from a single person in a specified country of origin. The user selects symptoms from a small list (small due to time restraints), and these symptoms have varied effectiveness by region (ie some symptoms might be more effective in hotter regions like desert regions in Africa rather than the icy terrain of Greenland). I added as many countries as possible, and my concept of "Location" is a Country of which there are two main types: LandLocked and Coastal. They behave differently in how they spread the infection and how they handle things like closing their borders due to the impending threat of the infection. Various properties of countries are given, for instance a rating on the heat, dampness, and wealth, as well as the total population. These factors help determine how fast the infection will spread as well as the fact for instance that a wealthy country is more likely to close their borders early. Once the user has chosen their origin country, a single person will be infected and now the user can hit enter to advance the time one day. Holding enter will run it as fast as possible. All modifications are made to the initial state and from then on the user can only view information by calling the info command followed by a country name to get the number of infected people vs the total population. As for visually representing the simulation data, I have two methods. The first is to render a series of bars for infected countries that show the percentages infected sorted highest to lowest percent. Followed by that is a render of a map I created out of text characters. It changes appearance to represent the infection by character density. The simulation terminates once every person in the world has been infected.