Development

FAR Colony is developed on my free time since 2009, meaning that schedule of updates is pretty irregular. Because of that I decided, some time ago at about the start of the alpha 10, to stop adding half-implemented features and working on the completion of what is already in the game.
Then it is why the current alpha 10 has so many iterations, and it will finally reach its term when the iteration number 10 will be done, I hope next year. The goal is to provide a playable basis, if somehow barren, to expand on it.

In this page is displayed the list of features, changes and fixes of the current iteration. Before this, I was posting small status about what is done and/or in progress, but the problem is that such information is lost in the void, like ancient deep space lights.

The items in the list below can be have one color among 3, meaning different status:
  • Feature, change and bugfix not worked yet.
  • Feature, change and bugfix partially done (work-in-progress).
  • Feature, change and bugfix completed, will be present at the time of release.
Added / Modified @October 25:
  • [New: WIP] Factions / Expeditions & Backstories / New Special Rules: Automatic Rejection by SPM items: the following SPMi are incompatible and reject automatically the concerned CPSO if any policy and meme of this list is enforced / present in the SPM of the player's faction.
  • [New: Done] New Game Setup: all the data about the setup of a new game are now grouped into a proper data structure..
  • [WIP=> Done] New Game Setup: the faction data pad is now reworked. Five tabs now exists: History, Colonization, Population, Equipment and Game Options.
 Added / Modified @October 09:
  • New Game Setup:
    • [WIP=> Done] a new set of interface elements are set to chose the Faction of Allegiance, expedition and backstory. It replace the Colonization Modes and the List of Factions.
    • [New: WIP] the faction data pad is now reworked. Five tabs now exists: History, Colonization, Population, Equipment and Game Options.


Alpha 10 - Iteration #08 Development


  • Colonies
    • for now, the deployment of equipment and infrastructures will stay hardcoded, and so will be the same for any set colony. The Starting equipment will only be taken into consideration only when the design and full in-game data
         structure of space units will be implemented.
  • Colonization Phase System (CPS)
    • full audit, including refactoring of all the code of the CPS.
    • the code of the objectives is now in its proper unit under the CPS hierarchy. Same for the data and user's interface.
    • creation of a specific unit for CPS data.
    • the Viability Objectives are now renamed CPS Objectives.
    • creation of a new CPS Objective data structure that replace totally the old TFCRcpsdFactionViabilityObjective structure. It contains the maximum use of an objective, its matrix of SPM weights and specific data, according to the type of objective.
    • addition of 3 data structures, for each player's faction status (economic, social, space & military) to store into the CPSO structure to indicate the weights in relation with the SPM items. This new structure is loaded through a new XML file.
    • these 3 data structures are loaded by default (ie regardless if the CPS will be use or not) after the data of the non-player factions.
    • creation of a new in-game CPS Objective data structure that replace totally the old TFCRcpsdViabilityObjective.
    • the CPSOs are now selected dynamically, with a semi-random system that take into account the SPM setting of the faction of allegiance and the backstory chosen by the player. 
  • Factions
    • the deprecated Viability Objectives are completely removed from the factions' XML file and in the code that loading it.
    • the starting locations can now be a satellite. It will be useful for future developments.
    • the old equipment list is now separated into two lists: starting space units and starting equipment. 
    • Expeditions & Backstories
      • the colonization modes are now replaced by expedition's backstories. It is now linked to a small portion of text putting in context the motivations and history of the colonists that will settle a new  colony.
        The data structure is mostly overhauled.
      • the data from each backstory/ex-colonization modes (line of credit (already the case), population settings, equipment list, basic list of common core of technologies) can now be set dynamically with pre-defined ranges of values. Thus it allows to have some variations at each new game even if the same faction of allegiance and backstory is chosen.
      • the data structure that contains the starting space units is now a bit expanded with the base variance, for dynamically setup the amount, the attitude and physical status. So location around a same orbital object can vary, and a space unit can even start the game damaged.
      • the data structure that contains the starting equipment is now a bit expanded with the base variance, for dynamically setup the amount, and the Hauled by Class, which indicate which class of space unit (among those in the starting space units list) carry the equipment. There is no precise allocation because of the dynamic side of during the setup of a new game.
      • New Special Rules for the Backstories:
        • Automatic CPS Objectives: always set one ore more CPS Objectives, regardless of the dynamic system. 
        • Automatic Rejection by SPM items: the following SPMi are incompatible and reject automatically the concerned CPSO if any policy and meme of this list is enforced / present in the SPM of the player's faction.
        • Diverged Political System: the future colony and faction of the player can start with one different political system than its faction of origin.
        • Diverged Economical System: the future colony and faction of the player can start with one different economical system than its faction of origin.
        • Diverged Medical Care System: the future colony and faction of the player can start with one different medical care system than its faction of origin.
        • Automatic SPM Items: list of SPM items (that mustn't be acquired by the faction of allegiance) that are set specifically for this backstory.
        • Preferred Started Location - Orbital Object Type: can specify the type of orbital object (Planet or Asteroid) for the starting location.
        • Preferred Started Location - Ecosphere: can specify the type of planet's ecosphere (Earthlike, non-Earthlike, Space) for the starting location.
  • Faction / Magellan Unity
    • New Expedition
      • Autonomous Remote Colony.
        • New Backstories
          • The Knowledge Pillars.
          • Seed of the Unity.
  • Game Saving/Loading
    • prevent useless full cycles of data injections, from the databases.
  • Infrastructures (in-game):
    • Conversion Assembling Building (CAB)
      • Conversion:
        • the hardcoded assignment of products take now into account the starting equipment defined in the chosen backstory.
  • Interface - Colonization Phase System (CPS)
    • fix: if a new game is set or loaded when another one is currently playing, FARC doesn't re-create the Viability Objectives panel over the one that already exists anymore. The previous CPS, with its interface, is simply free for memory before any new game take place.
  • Interface - General
    • a more clearer font, for the main texts, now replace the previous one. Many text adjustments were necessary to make it right.
  • Interface - Help Panel 
    • the current encyclopedia interface is replaced by the entire interface of the Knowledge Base website, since its presentation, linking and web interface will always be better than what I will never do in the game, including research in the base, keywords and so on.
    • swapping of the content from encyclopedia.xml to the Knowledge base for:
  • Knowledge Base
    • Introduction
      •  a link is added with the GitHub page of the source code of the project.
      •  About FARC
        • under Licenses, the text is modified with: "FAR Colony is distributed under the GPL 3 license and is free and open source."
    • Mechanics and Context of a New Game
      • swap from the encyclopedia with the list of the current game systems present in FARC.
      • Time Flow System (TFS):
        • added this new topic.
      • The Asymmetrical Relation with the Non-Player's Factions:
        • added this new topic.
        • swap of the content from encyclopedia.xml and reformat done.
      • Colonization Phase System (CPS):
        • added the abbreviation into the topic's title.
      • Colony Simulation Model (CSM):
        • added this new topic.
      • Socio-Political Matrix (SPM):
        • added this new topic.
      • Research and Development System (RDS):
        • added this new topic.
      • Production System:
        • added this new topic.
      • Planetary Exploration System (PES):
        • added this new topic.
  • Misc
    • fix: setup a new game or loading one, over an existing and running one, doesn't crash FARC anymore. Correct initialization of data, for the Orbital Object Panel, prevent that.
    • fix: FARC didn't appeared in the alt-tab under Windows 10, Application.MainFormOnTaskBar has been activated to fix this problem.
  • New Game Setup
    • prevent useless full cycles of data injections, from the databases.
    •  the code has now its own specific units (core and interface).
    • the window and its components are now intialized and called in proper and centralized routines. It follows the same pattern developped with the Orbital Object Panel and its children. 
    • the window is set to a bigger size than before. 
    • the colonization mode is now replaced by the expedition's backstory.
    • a new set of interface elements are set to chose the Faction of Allegiance, expedition and backstory. It replace the Colonization Modes and the List of Factions.
    • all the data about the setup of a new game are now grouped into a proper data structure.
    • the faction data pad is now reworked. Five tabs now exists: History, Colonization, Population, Equipment and Game Options.
  • Population
    • the data structures of the multiracial and multiethnic populations are implemented, tus to be in accordance to the new system of Expeditions and Backstories. For now only the baseline humans are used in the game, but at least the data structures are implemented for the future alpha 11 development.
    • the human race is implemented (in fact modified from the previous and unique population data structure) including the baseline, genemods and posthumans.
    • the clone race is implemented.
    • the artificial intelligence race is implemented including the non-sentient AIs, sentient AIs and artilect AIs.
  • Space Units (in-game)
    • the current status enum series is now split in to two series of enum; one to indicate the attitude of a SPU, an other to indicate its physical state.
    • the attitude, encompass nearly all of the old status and indicate in an abstracted way the current attitude of a SPU, like being in low orbit for example.
    • the three possible orbits, that will be fully implemented in the future, are added in a data level. These three orbits are low, geosynchronous and gravitational limit.
  • Updater
    • the basic framework is fully working.
    • the interface display basic information like the version and build available, the last changes and buttons to let the player decide which action to take.

No comments:

Post a Comment