Dev Update + Screenshots: Fixes for Missions + Changes to Space Units + Tasks Rework To Include the Last Changes

  • Interface -  General:
    • [WIP => DONE] a more clearer font, for the main texts, now replace the previous one. Many text adjustments were necessary to make it right. Most of the other fonts (including those for the OpenGL components) have been changed too.
  • Missions:
    • [New: DONE] suppression of a useless data structure, used partly for calculations of a mission, that mixed with another data structure used to setup the future task for the Task Subsystem.
  • Missions / Colonization:
    • [New: WIP] the setup of the mission is fully fixed. There were problems with trip time calculations due to boggus deltaV given to docked space units.
  • Missions / Landing:
    • [New: WIP] fixed: the calculations were bogus due to the fact that the procedure didn't taken into account of docked space units (when they are used) and mixed data between the mother vessel and its docked ones. 
  • Missions / Interplanetary Transit:
    • [New: DONE] the mission is fully disabled and will be under a full review before to be re-enabled in the future. 
  • Space Units (in-game):
    • [New: WIP] dock/docking is replace by bette terms of carry/carrying. That really specify space units carried INSIDE another one. There will be a docking ability, but nothing to do with it.
    • [New: DONE] releasing a carried spacecraft: fix; set default attitude / deltaV and 3D velocity, to the released ship, which are equals to the mothership's data.
    • [New: DONE] removing of a spacecraft from the database; fix the code for docked SPUs.
  • Time Flow System / Task Subsystem:
    • [New: DONE] some changes and cleaning of the data structures for the tasks.
When you work onto intricate systems, and add/change something to them, it can breaks processes and logic. It is what it happened for the Colonization mission, but it is nearly fully fixed now. I just hoped to finish today before the move but anyway.

I modify also the tasks with better code (I think the Tasks Subsystem is way back 2012 or something...) and especially to take into account the changes in the setup of a new game...inducing changes into the colonization mission, and also for the expansion of some data for in-game space units, like attitude for example.

For reminder, the Tasks Subsystem is linked to the Time Flow System (which manage the flow of time and the triggering of the systems of the game), and it manage the tasks which are created by the setup of new missions for the space units and also by the planetary survey.
In clear it process, phase by phase, missions and survey automatically until the end. It will be expanded in the future (so much things in the future hehe) with more options but for now it works.
The system itself is working since a certain time, but all the changes made for this version broke it a "little bit" and so it is in need of being updated.
Always an update, always...

Space units are more and more updated themselves since we approach, little by little (for real!), of the full blown implementation of their internal structures/hulls and design.

On a secondary note; nearly all the fonts of FARC were replaced by new ones, and some of them are more readable than the previous ones. All of them are SIL / OFL licenses.





Yes, it needs work and adjustments for the sizes and text location...and yes the icons in the Orbital Object panel shouldn't be displayed... I know... I know hehe.

That's all, time to physically move on and... going back after March 3rd!

Short Notice: Moving to a New Place + No Internet Until May 3rd

Just a notice to inform that I will be moving to a new home (the physical one, not a website) on May 1st and I will have no internet before May 3rd.

So, the devpost I will publish by Sunday will be the last until I have a connection back, and of course until I will be installed.

Thanks and have a great weekend!

Dev Update: Removing of Realtime Subsystem + Expansion of Turn-Based System (with events turns) + Interface Fixes + PROVIRSRC Objective Done + No More Guess Work for Infrastructure/Settlement Levels

  • Colonization Phase System (CPS):
    • [New: DONE] the status weights of the selected backstory are now stored into the CPS' data structure for further uses, like the initialization of the objectives and the update of their scores. 
  • Factions / Starting Locations:
    • [New: DONE] expand the : "add a parameter, for the starting locations, which stipulate the scope used for randomness for an actual entry." with an additional scope: If Planets-NoSat, it indicates that only all the TELLURIC planets of the system are included in the list of starting locations, But it excludes the satellites.  
  • Infrastructures (database):
    • [New: NOT DEV] adjustment into the determination of infrastructure levels (IL). For reminder, IL encompass grossly the size of an infrastructure into one readable data that is used, among other things, to determine the size of the settlements.
      Now it is calculated with one universal formula based on the design of each infrastructure. So no more guessing.
  • Interface -  Action Menu:
    • [New: DONE] fix: the menu display correctly the Colonization Mission for the space units with docked FCP-80. It wasn't anymore the case since the last changes.
  • Interface - Mission Setup / Colonization:
    • [New: DONE] a deprecated string, for the element used to set a name for the new colony, has been corrected. The information to validate the name is now displayed as a hint.
  • Interface - Orbital Object Panel:
    • [New: DONE] fix: the initialization of the region's zones, on the surface of the orbital object, are now correctly initialized at the start of a game.
    • [New: DONE] the color of the selector, on the surface of the orbital object, has been changed for a better readability. In the future I'll see to adjust a bit the color of it according to the tone of the displayed surface map.
  • Planetary Exploration / Resources Survey:
    • [New: NOT DEV] adjustements to determine the size of discovered resource spots. It is now totally in line with the levels of infrastructures and how the size of settlements is determined.
  • Settlements:
    • [New: NOT DEV] adjustements to determine the size, and the progression of it, for all the types of settlements. Calculations are 100% in-line with the new way to determine the infrastructure level.
  • Time Flow System:
    • [New: WIP] the realtime portion is removed entirely. FARC will stay turn-based but with more option of turns, like the possibility of events end of turn; for example when a colonization mission is set it is possible to process the time flow until the first Colonization Mission is done.
Sorry for the lack of news but, as you can see, many things have been done.

As announced above, I adjusted how is determined the level of an infrastructure. It is based now from the design of the real size of one of them, with a formula that gives a level of infrastructure in final.
It is important, because I also adjusted how the size of all types of settlements is also determined. And the calculations are now also 100% compatible and in line with the infrastructure levels.
Before It was a lot of guess and some speculation, giving no statisfying results.
Don't worry it isn't another overhaul, but really a refining of data.
It isn't implemented yet, but will be once I finished to code the Colonization Phase objectives.

Speaking of objectives, the initialization of specific data for the PROVIRSRC objective (Provides A#Resource for #Period in plain CodeGlish) is fully done.
This objective is the reason I worked on the infrastructure levels, because something was off between the size of the resource spots, the infrastructures and the settlements.

The calculation of the size of the resources spots, discovered during a planetary survey, is now also 100% in line with the changes in infrastructure levels / settlement sizes, and above all, more realistic (or at least more coherent) regarding of the size of a region.
Yes, FARC use the full size of regions of a planet or asteroid, so one can go upto millions of square kilometers. It is why, until now, the size of the spots weren't pretty realistic and were as off as the rest. But it is now adjusted.
Again it will not be a overhaul of the planetary survey system, but an adjustment on the discovered size of spots.


Also the concept of iterations is now removed; for now, and until the game is basically playable from A to Z in this colonization phase, it will stay at the alpha 10.
Only the release (x.x.15/.16 and so on) and build numbers will continue to evolve.
Once I completed this first phase, the progression of major/minor versions will resume.

That's all.. I guess hehe :)

Have a good day, and thnaks for your interest!

Dev Update: Time Progression + End of Phase + OpenGL Bug Fixes and Current Memory Leak Found

  • 3D:
    • [New: DONE] fix: when a new or loaded game is processed, the 3D view update correctly, before it frozen. It was a problem due to the overhaul of the setup and process of a new game.
    • [New: DONE] fix: when a new game is processed or loaded, and that the current player's view target is a satellite, the 3d view now correctly focus on the satellite and not its root planet.
  • Colonization Phase System (CPS):
    • [New: DONE] the method that keep the time progression is now re-enabled but also extended to integrate fully the trigger of the end of the phase. Useless related code, in the Time Flow System, has been removed.
    • [New: WIP] the end of phase is now fully re-enabled and its report is fully completed including; the results, the outcomes and the performances with each objective.
  • Names and Designations Generator: (forgot to put this one @ March 14-23, sorry)
    • [New: DONE] the ability for any faction to generate names for the space units is implemented. It is based on the use of generic words assembling names of variable size, and there are articles, specific to the cultural background of a faction, that can be used according to a predetermined set of simple rules for each word. 

Outside of this, during the debugging of the intialization of the 3D view, once a new game is set or loaded, I observed a pretty fair memory leak. It wasn't a new thing, but it is the time to finally fix it.
So after some investigation I found the source of the culprit, it will be fixed once my work on the CPS is done.

My main work stay on the implementation of of the objectives' rules and calculations. It isn't only coding but also working to complete the game design on those I selected to be in the game in this version.

I hope to release this version in end of April, mid-May, but you know me and my failed schedule so we will see.  It will be 4-5 months more than what I announced on December 2017, it's more than enough.

General Post: Full Time Dev Day

Today is a day off for me, so since I finished what I had to do for the day I will work on FARC full time after my late breakfast.

I have things to debug, especially  for consecutive setup of new games and the OpenGL initialization. Part of it is already done since yesterday night but I need to fix the loading / intialization of consecutive games.
After that I will go back to the Colonization Phase System's objectives.

After this so "interesting" information, let's back to work hehe.

Dev Update: Generation of CPS Objectives Fully Fixed (Status Addon from Previous Post)

  • Colonization Phase System (CPS):
    • [WIP=> DONE] creation of a new in-game CPS Objective data structure that replace totally the old TFCRcpsdViabilityObjective.
  • Factions / Expeditions & Backstories / Special Rules:
    • [WIP=> DONE] Automatic CPS Objectives.
    • [WIP=> DONE] Automatic Rejection of CPS Objectives.

The next step is to implement specific rules and calculations to initialize any custom data an objective may have, and also to update the score of each of them.


Back to work... my real and daily one :)

When a bug is silly... Generation of Objectives

The generation of objectives, for the Colonization Phase System, was plagged by a show stopper bug because no objective, outside of those affected by the special rules, were... generated in the end.

I looked everywhere in the CPS code but found nothing until I finally targeted the point where the logic failed and found the problem; at one moment, the Socio-Political Matrix (SPM) weights of the current objective in process, are tested in order to keep the coherence between the objectives and the SPM settings of the player's faction.
The only problem is the test didn't taken in consideration the SPM at all, it only tested if a weight has an incompatible flag, regardless if the policy or meme linked to it is enforced / adopted by the population...
So in the end, ALL the objectives were rejected, and it triggered an out of bound of the array for other calculations, isn't it fabulous? hehe.

So yep I fixed it and magically some objectives became generated and listed, as it should be.

Sometime the solution is right in front of the editor window...

Back to work.

Dev Update: New Game Setup DONE + Colonization Phase System + Bugfixes for OpenGL UI

  • Factions / Expeditions & Backstories:
    • [WIP=> DONE] the data from each backstory/ex-colonization modes (line of credit (already the case), population settings, basic list of common core of technologies) can now be set dynamically with pre-defined ranges of values.
      The equipment given to the expedition will be able to vary in volume, but not in nature, proportionally to the total population.
      Thus it allows to have some variations at each new game even if the same faction of allegiance and backstory is chosen.
  • Research & Development System / Common Core:
    • [WIP=> DONE] The special rules Automatic Technosciences / Fundamental Researches and Automatic Rejection of Technosciences / Fundamental Researches, are processed for the common core of the player's faction.
  • Space Units (in-game):
    • [New: DONE] add an independent data structure that represent a group of space units, which is the smallest type of formation that a fleet can contain. For now it is used to load the starting equipment that is generated.
Finally tonight I seen back the main interface of the game. It has been a long time...
All is running OK, excepted for some bugs with the OpenGL user's interface, since the data for the names of the space units has been modified. It isn't much and will be fixed tomorrow night... or today night since it is already 01:20.

Now I will focus my work on the Colonization Phase System, which implies the full calculations for the objectives in the game, the rework of the interface to display the objectives, and the end of the phase itself.

That's all.

General Post: Current Status and near Terms Plans (CPS w/ Release) + Orbits + Weather System + Multithreading

I'm near to finish the work of the setup of a new game, and tonight after my day of work it should be done.
After this, I will focus only to complete the rework of the Colonization Phase System, by adding the calculations for the objectives and updating its interface.
Once done, the last part will be the secondary bits; mainly to finalize the new encyclopedia by interfacing the web Knowledge Base to the game, and to finalize the online updater.
I also completed the next two steps of the last iteration of this alpha 10, once I release the current iteration;
  1. implementation of the final orbits system (with low / geostationary and gravity limit orbits) and removing the 3D space units including the current method to browse them.
    I will integrate something more useful with list of icons representing the space units present on each orbit. And the orbits will have four or six locations around each planet and asteroid.
    I will talk about that in a more detailed post when I will implement it.
  2. implementation of the Weather & Geophysics System
    This system, as its name indicates it, will manage the change/progression of weather of each planet (the ones with an atmosphere obviously) over the time.
    The orbital objects will also finally move on their orbit, through this sytem.
    Finally it will also manages Regional Weather Effects that can be triggered, according to certains probabilities modified by the data of each orbital object.
    RWE are things like hurricanes, sandstorms, electromagnetic storms and so on, for the weather effects. For the geophysical effects it's more things like earthquakes, magnetic field shift or volcanic eruption.
    Surely a lot of fun ahead hehe.
It is to note that these two parts will use, for the first time in FAR Colony development, parallel code, so in clear; multithreading tasks and loops for their processes.
Progressively I will also add, later, some parallel code to already existing parts of the code and game systems.


That is all, thanks for your interest.