May 28, 2015

Alpha 10 - iteration#04: Some Words about the SPM

Since I worked on it during my lunch break, I thought it was relevent to explain what the SPM is and how it works on a broad level.

I called this system the Socio-Political Matrix because it manages the policies and memes, also called SPM items,  applied to a faction.
The matrix is taken from the fact that there is a sort of matrix of influence which modelize acceptance and rejection of of SPM items and also generate reactions from the faction's population.
The very basic idea has been taken from the civics in Civilization IV, and I developped a system from it, which is now well different from the one used in this game.

For the policies, the matrix will define acceptance in enforcement of a policy from the player or an AI.
For the memes, the matrix modelize the evolution over the time of how a population take and reject ideas and other ideologies.

The most difficult part is into build up the matrix itself and design matrix modifiers in the most objective way, outside my own education, experience and vision of this human world. It is an interesting, and a difficult, experience because I learnt about many subjects that doesn't interesting me much from the start.
Finding objective sources of information is also all a challenge, but if you put your social and local brainwashing and look with an open mind you can retrieve valuable information and modelize something coherent.

In the end, the global objective of the SPM is to provide societies that aren't, if possible, much entangled into science-fiction clich├ęs.

I continue to expand and applying correction into the SPM and beside of it the rework of the SPM matrix modifiers continue too.

It is a bit slow, but I hope to release this iteration in June.

Thank you.

May 18, 2015

Alpha 10 - iteration#04: Colony Levels + Faction Levels + Star System Control Rules

I paused a bit the audit of the SPM to finalize two part of the SPM I never completely worked: the Faction's Levels and the rules that manage the control of a star system.
These two points can be optional for the scope of the first phase of the game, but they are core parts of the SPM, so since the iteration 4 is about this system, better to complete it.
I also finally completed the design and conditions rules for the colony levels and go to implement them too.

Each colony is ranked in size and political importance by the using of levels, which goes from 1 to ten. Here's the short description of them:

  1. Outpost:  minimum population = 1+
  2. Base:  minimum population = 11+
  3. Community:  minimum population = 101+
  4. Settlement:  minimum population = 1,001+
  5. Major Colony:  minimum population = 10,001+
  6. Local State:  minimum population = 100,001+
  7. Regional State:  minimum population = 1,000,001+
  8. Federated States:  minimum population = 10,000,001+
  9. Continental State:  minimum population = 100,000,001+
  10. Unified World:  minimum population = 1,000,000,001+ 
Out of population requirements there are another ones, like the control of the orbital object's regions, that aren't displayed there.

These levels aren't used only to rank a colony but are (or will) be used for mega projects of infrastructures and others parts of the game.

The ranking is entirely automated, there's no need of a particular action of the player to "level up".

Like for colonies, factions have levels too.
It determine the rank and capability of a faction in space, and it is used mostly in foreign relations, the SPM policies and also future space megascale projects.

Here's the short description of the levels:
  1. Isolated Colony: the faction own only one colony
  2. Space Nation: the faction own more than one colony, all two located in the same star system, and doesn't control this same star system.
  3. Micro-Federation: the faction have more than two colonies located in the same and/or another star systems. Also the faction can also have two colonies located in two different star systems.
    Additionally the faction doesn't control any star system.
  4. Minor Space Power: the faction control one star system
  5. Space Power: the faction control 2 star systems
  6. Major Space Power: the faction control 3 to 4 star systems
  7. Federation: the faction control 5 to 10 star systems
  8. Macro-Federation: the faction control 11 to 20 star systems 
  9. Empire: the faction control more than 20 star systems
The level's description aren't very original, isn't it? :)

As you can see, the requirement of most of the faction levels are linked to the control of star systems.

This control indicate which faction has a predominance, on a space level, onto a star system.

There are 3 states:
  • Uncontrolled: the star system isn't controlled by any faction
  • Under Control of x: the star system is under control of the faction x
  • Contested Control by a, b,...: more than one faction have the control of the system
To determine if a faction has control or not, a set of rules must be applied, if they all pass, the faction gain the control.

Beside that I working, also on the design level, of the overhaul of the matrix of influence between all memes and policies of the game, with revised and better allocated modifiers.
 The new ones will provide more variations in the results.

I will implement the changes into the XML file when I will complete the overhaul.

That's all for now, stay tuned and thanks for your interest.

May 3, 2015

Alpha 10 - iteration#03 Release

The alpha 10 [0.6.8.1011]it#03 is finally released.

FARC is bundled in two flavors: manually, with 7z archives and semi-automated with setup files.

These two ways doesn't requires that FARC is previously installed.

If it is installed and you use the setup file, please bear in mind that it will update correctly only from the alpha 10-iteration 01, not from the alpha 10 or any other alpha before.
If it isn't the case, just remove any previous version of FARC before to install this one.

If you take the manual way, please delete any previous version of FARC before.

Setup is here: FARColony-full-alpha_10it03-0.6.8.1011.exe.

Manual archive is here: FARColony-full-alpha_10it03-0.6.8.1011.7z.

Cumulative patch for the Manual archive of FARC alpha 10 (released before this first iteration update) is here: FARColony-cumulativepatch-alpha_10it03-0.6.8.1011.7z.
To apply the patch unpack into your install dir and overwrite anything.

Release Notes:

  • Colony Panel / CSM Events List: 
    • the tree list is now expanded by default.
    • the current event level is displayed with additional information, related to the particularities of each event.
    • the linking, to encyclopedia definitions, is restored and re-enabled.
  • Colony Panel / Population List: 
    • population counts are now formatted to take into account big units. For 1 - 999,999= full unit, for 1,000,000 - 999,999,999= in K (kilo/thousand) unit and for 1,000,000,000 - 999,999,999,999= in M (million) unit.
  • Colony Simulation Model (CSM):
    • the events are now correctly cancelled when needed.
    • the health indexes ranges have been modified.
    • calculations to apply modifiers to the health data has been fully fixed.
    • in Health-Instruction Relation event, the modifiers have been completely modified.
  • Encyclopedia:
    • new Format (special text formatting, with sometimes inclusion of databases' data into the description:
      • CSM Events.
    • new Topic:
      • Annex - CPS Viability Objectives.
    • new Entries:
      • Production System:
        • Conversion-Asssembling-Building SubSystem.
      • Annex - CSM Events:
        • Colony Established.
        • Dissident Colony.
        • Food Production Overload.
        • Food Shortage.
        • Governmental Destabilization.
        • Health-instruction Relation.
        • Oxygen Production Overload.
        • Oxygen Shortage.
        • Social Disorder.
        • Unrest.
        • Uprising.
        • Water Production Overload.
        • Water Shortage.
  • Faction Decision Engine (FaDE):
    • very basic implementation of the Entity Unit.
    • implementation of the data of faction-level Global Directives.
  • Graphics:
    • banner for the Welcome message, from Krislachowski @ OGA.org, with pubdlcnt.php.jpg.
    • banner for the Welcome message, from Ratimir Rakuljic, with 01 - Far Colonybanner.jpg.
    • banner for the Colonization (with settlement) message, from Rawdanitsu @OGA.org, with 01 - SpaceBackground-3.jpg.
  • Help Panel:
    • the area where the entry text is displayed is now scrollable and is completely wheelmouse friendly.
    • the panel can now be resized and affect directly the entry text area.
  • Interface - Overall:
    • badly called token into the ui.xml throw now an exception. Some old calls, that affected the text display into the interface, have been fixed.
    • using the mouse wheel on an user's interface component will not affect zoom of the 3d view in the same time anymore. The cursor must be on the 3d view itself now to zoom/unzoom the view (without need of any clicking).
    • fixed the third party component THTMLTreeview with html link; the cursor changed outside the link and the click was effective outside too. It act normally now.
    • basic implementation and initialization of the HTML hint system.
  • Messages:
    • complete overhaul of the messaging system; messages in plain text aren't stored into the game save files, saving some space. It is also possible now to switch from one language to another and have the messages automatically et correctly translated.
    • each type of message can now have a banner to illustrate it when it is displayed in the expanded view. There can be multiple pictures for a same type of banner, FARC chose one among what is available. If no picture is created for a type of message, the banner is simply not displayed.

That's all, stay tuned.

May 2, 2015

Alpha 10 - itertion #03: Dev Status + Screenshots

  • [WIP] to update the interface for the CSM events.
  • =[DONE]= to complete the CSM events cancellation.
  • =[DONE]= to change the display of the population of a colony.
  • =[DONE]= to overhaul the messaging system (including addition of new messages).
  • to include new messages for events and other parts of the game.
  • =[NOTHING TO DO]= to update the main keyboard shortcuts.
  • [WIP] to add a hint subsystem accessible to any part of the interface.
  • =[DONE]= to update the encyclopedia.

Here are the screenies:





I can't post a screenshot of the basic HTML hint implementation since I can't take the screen without the hint disapear.