* Implemented new research update. Old research system no longer
updates.
* Fixed a major bug in the constants registrar
* Added game.research.vacation constant (determines the rate of
research when players are in vacation mode)
* The quantities of resources extracted from mines will now be updated
as soon as they have a reason to. This includes planet assignment,
abandonment, ownership changes, and updates to mining priorities.
* The mining update will now remove the current resource income from the
providers, and only then re-compute all extracted quantities. This is
more logical and corresponds to the way the other game updates work.
* Fixed bug in extraction computation where the size of the planet's
happy population was used instead of the happy/total ratio when
adjusting the mining production for riots.
* The following SQL scripts must be re-executed to upgrade a database:
-> 040-functions/040-empire.sql
-> 040-functions/145-resource-providers.sql
-> 040-functions/147-empire-mining.sql
-> 050-updates/120-planet-mining.sql
* Added session records to carry resource information over to the
clients
* Added SQL support code for the various views
* Added interface and implementation of the resource information access
component
* Hooked resources information queries into both the empire and planet
management component
* Added resources display to planet and overview pages
* Added a set of tables which define game updates and their targets.
These definitions replace the old enumerate type. Added a set of
triggers which automatically create specific update tables, insert
missing entries, etc... when game update types are being manipulated.
* Removed manual insertion of game updates from empire creation
function and universe generator.
* Added registration of core update targets (i.e. planets and empires),
updated all existing game update processing functions and added type
registrations
* Created Maven project for game updates control components, moved
existing components from the -simple project, rewritten most of what
they contained, added new components for server-side update batch
processing
* Added various views and helper functions used by the mining
computation but which may be re-used in other parts.
* Added mining computation update type and associated update function
* New constants: game.resources.weightBase (the value used to compute
weights from mining settings) and game.resources.extraction (the
quantity extracted in a day from a full provider at difficulty 0)
* Added structures for resource definitions, natural resources
definitions, resource providers, empire resources and empire mining
settings (both empire-wide and planet-specific).
* Added a few common utility functions to the SQL test suite. These
functions allow test initialisation to be a little shorter.
* Added "MINE" production type and an associated building definition.
The production will not be added to the XML dump or to the output of the
planets summary page, as this is extremely temporary.