Food Force 2: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
{{OBX activity |[[Image:Foodforce.jpg|42px]]|extra|Solve world hunger.}}
[[Category:Health]]
<includeonly>{{#if:{{{1|}}}||[[Category:Missing activity icon|{{PAGENAME}}]]}}[[Category:Activities|{{PAGENAME}}]] </includeonly><noinclude>{{-}}
[[Category:Nutrition]]
[[Category:Software]]
[[Category:Games]]




'''Food Force''' was one of the first "serious games" produced, describing the work of members of the World Food Program and some of the situations they experience in their work around the world. When it was released, there was an entire campaign around it, including badges and banners linking to it from other sites.


== FoodForce2 ==
A version of the Food Force game, currently only available on [[http://www.food-force.com/index.php/game/downloads/ Windows and Mac]] platforms, is being considered for the XO. Related games, such as a trading game that teaches about the importance and relative value of different foods, are also in progress.
[[Image:Foodforce.jpg|thumb|right|Screenshot]]


FoodForce 2 has been designed to educate and motivate people to solve world hunger. Since the laptop reaches out to the developing and third-world countries, it also educates children and teachers in a village on how to acheive self sustenance in a fun and non-intrusive way. It also provides awareness about the work WFP has been doing for the past many decades to abate the problem of world hunger.
Some ideas :
* [[Media:FF-EP.doc|FoodForce.doc]] (early design doc)


Since an XO has limited computing power, the game has a relatively smaller footprint as compared to the first version of FoodForce and is aimed at both XOs and Windows.
== Design considerations ==


The original game is built in Macromedia Director and has a very large amount of video, 3D animation, and voice acting. It's too big to run on the laptop (over 200 MB download), which is why a rewrite is being considered.


Some constraints that need to be considered:


== Building Blocks ==
* The OLPC laptop is not fast by modern standards, but is similar to standards when FF1 first came out. However, we want to limit storage space for widely-distributed activities -- so video should be limited and reserved for situations that require it. Video could be preserved in animated slides preserving audio.
* Any language in the game must be translatable -- thus, sound and text associaed with an image or video, should be available separately for localization. A single instance of an activity need not contain material for all languages. However, an ideal game would function without speech, and with only sound effects. Speech could be available as a downlodable add-on in the target language.
* Short time frame -- delivery in early fall
* Python/Pygame development environment


The basic building blocks of the game are:
Several of us at OLPC looked at the existing game and talked about how to structure a game that we felt could be completed in the time available. It's not exactly a port, but it would reuse the same design structure, story and gameplay -- and target the same goals of educating its audience (where possible, for the core audience of the laptops; itself slightly different from the original audience). See [[Food_Force/Design_Document]].
# Resources
# Facilities
# Indicators


== Resources which can be reused from the existing game ==


=== Resources ===
''text'':
* Transcriptions of speeches and instructions are helpful.


* Resources are required to setup facilities and are also consumed constantly by the people of the village.
* Resources can be traded in the market
* The price of each resource is dependent on the market forces
* The different resources present are:
** Building Material
** Tools
** Medicine
** Books
** Water
** Food : It is further divided into
*** Rice
*** Wheat
*** Beans
*** Sugar
*** Salt
*** Oils


''code'':
* Source code for sections of the game
*: Formulas to calculate the scores during the missions and others formulas used in the missions like formula to manipulate the nutrients.


=== Facilities ===


* Facilities are installations which serve the villagers.
''images'':
* Resources are required for building facilities.
* Faces of characters
* Once the facilities have been built they consume certain resources for their functioning and also produce some the resources.
* UI Components like: buttons, objects (helicopter, truck, ...), backgrounds, etc.
* Facilities can also be upgraded once they have been built.
* Screens/screenshots from different points in the game, to serve as detailed backgrounds
[[Image:FoodForce2_Workshop_Construction.png|thumb|right|FoodForce2 Construction of workshop in progress]]
* The different facilities present are:
** House
** Hospital
** School
** Workshop
** Farm
** Fountain




=== Indicators ===
''audio'':
* Sound effects, background sounds, sound effects and speeches used in the movies separately, i.e. two different audio files for each movie.


* Indicators are a measure of the development of the village.
* The value of indicators depend on the number of facilities and their level.
* Indicators also depend on the manpower distribution of the village.
* The different indicators present are:
** Housing
** Health
** Nutrition
** Education
** Training


''video:''
* Short video clips for the start and end of the game


== Design Document ==


== Game-play ==
Modified Design Document Version 1.0 can be viewed from here. [http://wiki.laptop.org/go/Food_Force/Design_Document]


The aim of the player is to make a village self-sustenant in terms of nutrition, housing, health, education and training by consistent production and trading of resources with the help of necessary infrastructure. There are three major aspects of the game:
# Construction
# Upgrading
# Trading


== Contributors ==


=== Construction of Facilities ===
Project Manager: Deepank Gupta


[[Image:FoodForce2_Setup_Window.png|thumb|right|FoodForce2 Setup Window]]
Software Developers: Atul Aggarwal, Mohit Taneja


* Some of the facilities like houses and hospitals are already built at the start of the game.
Art-work by Silke Buhr and a team of artists from World Food Programme.
* Constructing new facilities such as houses, schools, workshops, farms and wells requires some resources.
* Once the facilities have been built they start producing appropriate resources and also increase the indicators.
* Facilities also affect the manpower distribution of the village by providing employment.
* Facilities also consume resources for functioning, e.g Hospitals consume medicines.
* If the village doesn't have enough resources to run a facility the facility is temporarily stopped.
** The functioning of the facility resumes when there are enough resources with the village to run it again


Special thanks to Muriel Godoi for his contribution in the past.


=== Upgrading Facilities ===
==== Project Co-ordinators from WFP and OLPC ====


[[Image:FoodForce2_Villagers_and_Houses.png|thumb|right|Houses after upgradation]]
Silke Buhr and [[User:Manu|Manusheel Gupta]]


* Once a facility has been built it can be upgraded to produce more resources.
== External links ==
* Upgrading of facilities uses some of the resources of the village, mainly building material and tools.
* [http://food-force.com Food-Force.com]
* Various upgrades like brick and mortar, functional upgrades and electricity are provided for each facility.
* Every upgrade costs resources, but an upgraded facility will be more efficient and effective.
* Upgrading a facility also increases the value of the indicators



* [http://www.wfp.org/english/?ModuleID=137&Key=2807 Food Force to become children's book]
=== Trading of Resources ===

[[Image:FoodForce2_Market.png|thumb|right|FoodForce2 Market in the village]]

* The final cornerstone of play is trading which is crucial to a village's success.
* For trading, every village is provided with a market, which is visited by traders from neighboring villages for trade.
* The price of the resources is determined by market forces.
* A village cannot effectively grow without a smart trader, timely trades can give your village a leg-up and help it attain prosperity over time.


== Implementation ==

The game has been implemented in Pygame using an MVC (model-view-controller) model.

The model file acts as the file which maintains the records for resources, facilities and indicators. It also maintains the record of manpower distribution.

The controller file acts as a midway between the view and the model, the controller takes the input from the user and makes appropriate changes in the model, and corresponding changes are reflected in the view.

The view file acts as the user interface all, the changes made by the controller are reflected in the view.

The files corres ponding to model, view and controller are:
* Model : model.py
* View : Foodforce2.py
* Controller : threades.py



==Features==

# The game has been designed in Python and Pygame and is very portable and can be run on different operating systems such as Windows, Linux and Mac.
# The game has a very small footprint and is thus easily deployed on an XO.
# The code base has been made efficient and speedy to deliver the best performance to the user.
# Extensible Design which allows easy modifications and extensions over the current game structure with total independence of Model, View and Controller.



==Code Base and Status Updates==

'''Pre-Alpha version of the game has been released. Please check the download section at : http://code.google.com/p/foodforce/downloads/list. '''

Relevant Files :
# FoodForce.xo : For installing on olpc. Copy the file in Activities folder and unzip.
# FoodForce for windows.zip : For installing in Windows. Unzip and run Foodforce2.exe to play the game.
# src.zip : To view the source files.

==Credits==

#Developer : Mohit Taneja (mohitgenii AT gmail DOT com)
#Co-Developer : Peeyush Kumar (peeyush.hsuyeep AT gmail DOT com)
#Project Manager : Deepank Gupta (deepankgupta AT gmail DOT com)
#OLPC Project Co-ordinator : Manusheel Gupta
#Artwork Lead : Silke Buhr
#Artwork : WFP Artists from Italy
#Contributors: Atul Aggarwal




[[Category:Health]]
{{Activity page
|icon=Foodforce.jpg
|genre=Games
|short description=FoodForce 2 has been designed to educate and motivate people to solve world hunger by educating children and teachers in a village on how to acheive self sustenance in a fun and non-intrusive way. It also provides awareness about the work WFP has been doing for the past many decades to abate the problem of world hunger.
|long description=Pre-Alpha version of the game has been released.
|contact person=[User:MohitTaneja]
|activity source=http://code.google.com/p/foodforce/downloads/list
|language=English
|team=[User:Deepankgupta]
|bundle URL=http://code.google.com/p/foodforce/downloads/list
|activity version=0.4
|devel status=2. Pre-Alpha
}}
{{Activity bundle
|bundle URL=http://code.google.com/p/foodforce/downloads/list
|activity version=0.4
|devel status=2. Pre-Alpha
}}

Revision as of 19:08, 7 December 2008

Foodforce.jpg
Solve world hunger.



FoodForce2

Screenshot

FoodForce 2 has been designed to educate and motivate people to solve world hunger. Since the laptop reaches out to the developing and third-world countries, it also educates children and teachers in a village on how to acheive self sustenance in a fun and non-intrusive way. It also provides awareness about the work WFP has been doing for the past many decades to abate the problem of world hunger.

Since an XO has limited computing power, the game has a relatively smaller footprint as compared to the first version of FoodForce and is aimed at both XOs and Windows.


Building Blocks

The basic building blocks of the game are:

  1. Resources
  2. Facilities
  3. Indicators


Resources

  • Resources are required to setup facilities and are also consumed constantly by the people of the village.
  • Resources can be traded in the market
  • The price of each resource is dependent on the market forces
  • The different resources present are:
    • Building Material
    • Tools
    • Medicine
    • Books
    • Water
    • Food : It is further divided into
      • Rice
      • Wheat
      • Beans
      • Sugar
      • Salt
      • Oils


Facilities

  • Facilities are installations which serve the villagers.
  • Resources are required for building facilities.
  • Once the facilities have been built they consume certain resources for their functioning and also produce some the resources.
  • Facilities can also be upgraded once they have been built.
FoodForce2 Construction of workshop in progress
  • The different facilities present are:
    • House
    • Hospital
    • School
    • Workshop
    • Farm
    • Fountain


Indicators

  • Indicators are a measure of the development of the village.
  • The value of indicators depend on the number of facilities and their level.
  • Indicators also depend on the manpower distribution of the village.
  • The different indicators present are:
    • Housing
    • Health
    • Nutrition
    • Education
    • Training


Game-play

The aim of the player is to make a village self-sustenant in terms of nutrition, housing, health, education and training by consistent production and trading of resources with the help of necessary infrastructure. There are three major aspects of the game:

  1. Construction
  2. Upgrading
  3. Trading


Construction of Facilities

FoodForce2 Setup Window
  • Some of the facilities like houses and hospitals are already built at the start of the game.
  • Constructing new facilities such as houses, schools, workshops, farms and wells requires some resources.
  • Once the facilities have been built they start producing appropriate resources and also increase the indicators.
  • Facilities also affect the manpower distribution of the village by providing employment.
  • Facilities also consume resources for functioning, e.g Hospitals consume medicines.
  • If the village doesn't have enough resources to run a facility the facility is temporarily stopped.
    • The functioning of the facility resumes when there are enough resources with the village to run it again


Upgrading Facilities

Houses after upgradation
  • Once a facility has been built it can be upgraded to produce more resources.
  • Upgrading of facilities uses some of the resources of the village, mainly building material and tools.
  • Various upgrades like brick and mortar, functional upgrades and electricity are provided for each facility.
  • Every upgrade costs resources, but an upgraded facility will be more efficient and effective.
  • Upgrading a facility also increases the value of the indicators


Trading of Resources

FoodForce2 Market in the village
  • The final cornerstone of play is trading which is crucial to a village's success.
  • For trading, every village is provided with a market, which is visited by traders from neighboring villages for trade.
  • The price of the resources is determined by market forces.
  • A village cannot effectively grow without a smart trader, timely trades can give your village a leg-up and help it attain prosperity over time.


Implementation

The game has been implemented in Pygame using an MVC (model-view-controller) model.

The model file acts as the file which maintains the records for resources, facilities and indicators. It also maintains the record of manpower distribution.

The controller file acts as a midway between the view and the model, the controller takes the input from the user and makes appropriate changes in the model, and corresponding changes are reflected in the view.

The view file acts as the user interface all, the changes made by the controller are reflected in the view.

The files corres ponding to model, view and controller are:

  • Model : model.py
  • View : Foodforce2.py
  • Controller : threades.py


Features

  1. The game has been designed in Python and Pygame and is very portable and can be run on different operating systems such as Windows, Linux and Mac.
  2. The game has a very small footprint and is thus easily deployed on an XO.
  3. The code base has been made efficient and speedy to deliver the best performance to the user.
  4. Extensible Design which allows easy modifications and extensions over the current game structure with total independence of Model, View and Controller.


Code Base and Status Updates

Pre-Alpha version of the game has been released. Please check the download section at : http://code.google.com/p/foodforce/downloads/list.

Relevant Files :

  1. FoodForce.xo : For installing on olpc. Copy the file in Activities folder and unzip.
  2. FoodForce for windows.zip : For installing in Windows. Unzip and run Foodforce2.exe to play the game.
  3. src.zip : To view the source files.

Credits

  1. Developer : Mohit Taneja (mohitgenii AT gmail DOT com)
  2. Co-Developer : Peeyush Kumar (peeyush.hsuyeep AT gmail DOT com)
  3. Project Manager : Deepank Gupta (deepankgupta AT gmail DOT com)
  4. OLPC Project Co-ordinator : Manusheel Gupta
  5. Artwork Lead : Silke Buhr
  6. Artwork : WFP Artists from Italy
  7. Contributors: Atul Aggarwal

Activity Summary

Icon: Sugar icon::Foodforce.jpg
Genre: Activity genre::Games
Activity group: ,|x|Activity group::x}}
Short description: [[Short description::FoodForce 2 has been designed to educate and motivate people to solve world hunger by educating children and teachers in a village on how to acheive self sustenance in a fun and non-intrusive way. It also provides awareness about the work WFP has been doing for the past many decades to abate the problem of world hunger.]]
Description: Description::Pre-Alpha version of the game has been released.
Maintainers: ,|x|Contact person::x}}
Repository URL: Source code::http://code.google.com/p/foodforce/downloads/list
Available languages: ,|x|Available languages::x}}
Available languages (codes): ,|x|Language code::x}}
Pootle URL:
Related projects: Related projects,|x|Related projects::x}}
Contributors: ,|x|Team member::x}}
URL from which to download the latest .xo bundle Activity bundle::http://code.google.com/p/foodforce/downloads/list
Last tested version number: Activity version::0.4
The releases with which this version of the activity has been tested. ,|x|Software release::x}}
Development status: Devel status::2. Pre-Alpha
Ready for testing (development has progressed to the point where testers should try it out): ,|x|Ready for testing::x}}
smoke tested :
test plan available :
test plan executed :
developer response to testing :


URL from which to download the last .xo bundle that works with old releases Activity bundle::http://code.google.com/p/foodforce/downloads/list
Activity version number: Activity version::0.4
The releases with which this version of the activity has been tested. ,|x|Software release::x}}
Development status: Devel status::2. Pre-Alpha