Development
2024-05-04
Version 1.00.29 released:
- worked around early game design flaw which prevented AI factions from being able to capture/own ships designed by other factions
- ship/base maintenance no longer non-linear, larger bases used to cost more to maintain than two equivalent smaller bases together
- different inhabitant species added. Each faction has a defined dominant species, but will commonly have other species as citizens too
- refugees, prisoners, and pirates all have a specific species depending on the faction retrieved from
- species can differ in maximum lifespan, male/female ratios, and fecundity
- some species are common to all games, others are randomly generated
- no inter-species breeding is possible
- player can set population limits for each species via new “Inhabitant limits” configurable in the faction (total of all limits can exceed 100% to allow more freedom)
- fleets sent between games via schwarzschild jumps will be restricted to carrying humans only (may change later to allow cross-game seeding of random species)
- currently this feature is largely cosmetic, but intended to play a role in a larger inter-faction relation update
- on AI faction losing viability (no more homeworlds) some fleets join player immediately out of desperation (assuming relations are good enough), other fleets may be left in limbo (losing supplies and eventually succumbing to the void). If these fleets are found, and relations are not too terrible, then they may accept a direct player rescue (new fleet action)
- fixed bug in maintenance calculation where equipment bays were treated as (much cheaper) docking bays (loading a previous version save-game can lead to a rush on spare parts to fill the gap)
- interior factions more choosey with treaties on offer, depending on openness associated with government type
- factions less likely to be generated with duplicate names
2023-07-08
Version 1.00.28 released:
- fixed ReplenishmentDays() function for agents not being saveable
2023-07-06
Version 1.00.27 released:
- agent behaviours & services now have an additional “Tie Breaker” numerical term which is used to determine priority between two behaviours with equal effective utility. This is useful for services that may match many targets and needs a good priority system that doesn’t necessarily interfere with priority of entirely different behaviours/services, e.g. collecting products from the fleet with the most supply
- deflector shields can no longer recharge when the shield has been crashed (reduced to zero)
- retreating from forward to rear now takes two turns with a single whole turn in a “retreating” state; retreating ships can be interdicted back to forward positions
- refactored some game save file persistence logic that was causing problems for some players
- fixed bug where game start menu might stay running and invisible if it encountered problems during loading, retaining a lock on the save file
- FleetVolume() function for agents
2023-04-23
Version 1.00.26 released:
- combat AI tweaks to push forward units designated Rear but with offensive effectors when there are no primary offensive units left to avoid being picked off by interdiction one by one
- ability to set a hull integrity threshold to automatically retreat units. With auto-deploy set the combat agent will only retreat in cases where your fleet has an advantage both overall and in the current forward positions
- deflector stabilizer effector: usable by ships in “Rear” as well as “Forward” positions in combat to remotely boost shields of friendly ships
- kEPM effector: usable by ships in “Rear” as well as “Forward” positions in combat to counter enemy kEM attacks against friendly ships
- deflector shields can now recharge even when the shield has been crashed (reduced to zero)
- new fleet/unit designation “Survey” added
- fixed bug where “jump drive incapable” alerts would not be retracted if the fleet joined another
2023-04-10
Version 1.00.25 released:
- fleets engaging in combat will have their speeds reduced after combat to simulate how manoeuvring in combat has affected their original vector and positioning. The speed reduction is proportional to the length of combat, reaching zero after 100 combat turns.
- effectors switching targets in combat happens instantly, rather than taking an entire combat turn.
- no more intermediate staging area in combat, all ships start off in “Rear” zone and can be deployed to “Forward” positions to engage in combat with enemy.
- units in combat can be moved from Forward to Rear positions using deployment points, but only as long as at least one unit is left in a forward position
- interdiction of enemy units is only possible when there are no other enemy units in forward positions; only a single unit can be interdicted at a time
- “Command” skill in combat is now used to determine bonus/penalty deployment points each round. Critical Success=+2, Marginal Success=+0, Marginal Fail=-1, Critical Fail=-2. The fleet member with the highest command skill is used for this test each round, although all units in combat gain command experience.
- preferred combat deployment areas (forward or rear) can be set on specific fleet designs. The preferred combat zone can be overridden on entry into combat, or during combat itself where the AI will not re-deploy a unit that the player has manually commanded to change zones.
2023-03-05
Version 1.00.24 released:
- singular “Game Pace” setting split into three: player build pace, AI build pace, and storyline pace.
- previous agent task “Rendezvous” which is used to exchange freight to and a from a target has been renamed to “Exchange”
- new agent task “Rendezvous” added which commands a fleet to meet and enter orbit with a target fleet
- “Idle” tasks of starter agent templates changed to use new “Rendezvous” task where they have a source fleet, rather than always orbiting the system
- new fleet command “Track” added, where player fleets can approach to attach a tracking device onto foreign fleets that lasts 256 dian
- new agent task “Track” added which commands a fleet to attach a tracking device to a target fleet, supporting “isTracked” predicate added
- new agent template “Tracker” added to new games that will attach tracking devices to non-hostile fleets transiting the local system
- some changes to agent task processing where “idle” tasks were being constantly re-evaluated despite having nothing to do, wasting CPU and memory
- agents tweaked so that tasks that fail or are interrupted are de-prioritized so that other tasks of same utility will be selected
- advanced (permanent) tracking devices attached to hostile fleets by some factions (e.g. when notified of marauder incursions)
2023-02-21
Version 1.00.23 released:
- added alert tool with alert counter to cluster and system frames, next to faction and messages tools
- “info” level alerts no longer bring alert window to front
- moved location of game log file to the save directory
2023-02-20
Version 1.00.22 released:
- new game setting for “AI Influence Gain” to change the rate at which faction influence is gained.
- faction influence can still be gained (albeit slowly) down to -19 opinion rather than 1 as before
- new game setting for “Research rate” that affects the chances of success for all kinds of research task.
- new game settings for “Interior Faction Hostility” and “Outcast Faction Hostility” which affect how the AI factions treat the player
- if player destroys last sovereign fleet in a system then an immediate sovereignty claim can be made which neutral AI factions will recognise for at least 2 years
- fixed bug preventing outcast factions from creating scout fleets
- fixed exploit where players could quickly “ninja” system sovereignty after AI battles, now the AI is allowed to settle the system it has just conquered regardless.
- changed rules regarding AI occupying player-held territory
- “Influence” column added to faction diplomacy view
- revised CC and FC cargo ship designs. “CC” now contain a minimal jump drive and increased warp drive, ideal for local or arterial transport. “FC” have increased jump distance ideal for transfuse jumps. (only applicable to new games as designs are written to savefiles)
2023-02-07
Version 1.00.20 released:
- new game setting “AI economic efficiency” which affects the number of ships non-player factions can support per system
- new “Bottlenecks” tab added to faction message frame, shows completed factories that exceed a given utilization threshold
- normalised orbital/ship and planet-side hull construction times (space stations/ships were about 50% slower than planet-side)
- increased k filament abundance slightly
- modified built-in designs of warehouses and extraction structures to remove shields/armour/epm and military mountings to reduce maintenance
- assimilation of pirates and prisoners slowed down greatly compared to assimilation of refugees
- “Fragrant Plants” rare resource renamed to “Essential Oils” to match the product manufactured from it
- AsteroidOrbit agent task will fail back to the “innermost asteroid belt” in a system if set to orbit the inner asteroid belt and there isn’t one
- increased effectiveness of deflector stabilizer
- increased armour resistance to nova emission
- reduced maintenance costs of cargo bays and docks by 50%
- “Assets” view added to faction diplomacy window to list a faction’s assets that are visible to the player at that moment
- fixed issues where it was too easy for ships to “dodge” effects of being out of spare parts. Failures will now be more frequent
- Roamers will use shoot-to-kill policy where appropriate to wear opponents down
- hull damage required for a ship kill increased
- fixed bug where populations with > 1 males but only 1 female would never breed
- fixed potential run-away bug in agent fleet list terms that could consume all memory
- combat field strengths allowed to have fractional values
- deflector regen per combat tick shown on ship/structure designs
- System info “Resources” tab fixed so that table is sortable on Resource
- reduced political influence-gain penalty on small factions
- fixed bug affecting “out of supplies” non-player fleets which meant they could still jump with a non-functioning jump drive in some circumstances
- extraction/refinery factory tooltip text changed to not imply a specific output batch size
2023-01-24
Version 1.00.19 released:
- “Deliver tribute” manual task changed so that it will only be selectable as an action if the fleet is carrying and willing to export the relevant cargo
- FreightLimit type alerts downgraded from WARNING to INFO, which will raise a less intrusive audible alarm and not slow the game clock
- fixed bug where intercepting fleets could get a free teleport to the target fleet after changing systems
- “Catalog Name” added to cluster system information along with current name, cluster system information “Name” filter will match either given name or catalog name
- cluster system information “Name” filter will do a case-insensitive search if the filter text is all lower case, otherwise case-sensitive search (so filter “Ab” will tend to match far fewer systems than “ab”)
- fixed bug where inter-system link names were not updating to the AI-designated system names
- adding bases to planets will default to planet-side even if no resource zone is set, rather than defaulting to orbital
- “orbital” added as potential location for planetary fleets
- “Class” filter on cluster system information has added values for rogue and binary systems
- “Suffix” filter added to cluster system information view
- “Remarks” filter added to cluster system information view
- coordinate display on system view changed to polar
- polar coordinate display added to cluster view
- clock rate always visible on system/cluster views, and can be changed via user buttons when paused
- fixed some bugs in orbital configurations where a fleet could jump to a different orbital position during reload
2022-11-23
Version 1.00.18 released:
- “Resources” tab added to system info view, which displays all resource zones & yields for a given system, as long as that system has been scanned
- Innermost system of every cluster will have a catalogue number of “RNS 220942” in memory of my father who passed away recently.
- max and min rate clock controls added to cluster and system frames. Shortcut keys [Ctrl]+[Shift]+[=] for max rate, [Ctrl]+[Shift]+[-] for min rate.
- run out of spares/replenishments alerts will only be retracted once the fleet has reached 32 days worth of stock to avoid alerts repeated too often
- change to start scripts/exe to set sun.java2d.d3d=false to see if it helps ameliorate graphical glitches for some users
2022-11-16
Version 1.00.17 released:
- players can jump fleets between specific clusters (games) via Schwarzschild jumps at black holes (saves fleet to file to be loaded in another game at the appropriate black hole)
- time to neutral zone dissolution reduced by factor of 2 (approx 9 hours of playing time at max clock rate). Player expansion permit frequency increased
- reduced frequency of factions randomly creating new legislation proposals (less political news spam)
- fixed bug where factory efficiency was not updating properly when blocked
- “Behaviour” column added to faction agent view to show current active behaviour
- “Task” label added to fleet Agent panel, to show task currently being performed
- fixed bug where cluster info frame was showing undetected rogue systems
- game start menu now uses an undecorated JFrame rather than a raw JWindow so that it appears in the taskbar
- star type filter added to cluster info systems view
- “planetary landing” action added to system info view to pull fleets into landing
- “arrive in this system” tool icon available for valid systems selected in the new game cluster views
- DGC naming convention changed so that DGC000nnn indicates cluster north, rather than east
- Polar coordinates added to cluster systems view
- Polar coordinates added to system info views
- current task shown on system info fleet view
2022-11-11
Version 1.00.16 released:
- on cluster view, previously sighted static fleets are listed even if the system is not currently monitored. As the system is not monitored these fleets cannot be selected and viewed, but acts as a reminder of what is known to be in that system
- cluster information tool added to “choose cluster” frame when creating a new game. Highlights reachable systems with a summary of rocky planets, gas giants, and satellites.
- system information view now shows all local fleets (if the system is monitored), rather than just player assets
- changed default accessibility implementation on progress bars. Will now set accessible description to be the same as the displayed text, and not return the underlying implementation value
- Name, group and government type filters added to faction diplomacy view
- “jump fleet” action added for systems selected from cluster views, to allow fleets to be pulled into a system
- “jump fleet” action added for inter-system links selected from system or cluster views, to allow fleets to be pushed into a system
- “orbit” action added for objects selected in the system info view, to pull local fleets into orbit around stars, planets, satellites, and resource fields
- “intercept” action added for fleets selected in the system info frame, to pull fleets to attack a foreign fleet
- “intercept” action added to foreign fleet view
- cluster and system frames normalized to have same layout of tool buttons
- “call for collection”/”call in delivery” commands added to fleets view of the system info frame, which can manually pull fleets to import/export from the selected fleet
2022-11-07
Version 1.00.15 released:
- new “Utilization” column on industry tab. This represents how often the factory is active vs being idle (for any reason, whether waiting for input or waiting output space). Colour gets more red the more utilized it is. This is intended to show potential “hotspots” in industry that may be contributing to downstream delays, conversely it can be used to indicate how much spare capacity you have available (e.g. spare parts)
- “Efficiency” column on industry tab improved to have a longer memory and update dynamically when a factory is actively blocked, rather than only updating when it finally executes a batch. Efficiency still shows how much time a factory has spent blocked waiting for input, weighted by how much of the factory is used on each cycle (e.g. inputs may be insufficient for a full batch and only part-batches are manufactured on a cycle). Contrasted to Utilization, Efficiency shows which factories are impacted by upstream problems
- AI will name systems it occupies. Player-given names take precedence, otherwise the AI name will be shown once the system has been scanned
- “Cluster Information” tool added to cluster view frame. Currently contains a star catalogue with all cluster systems in it along with some basic information
- Luxury consumption reworked. Faction assets now show a “cultural factor” rather than amount of luxuries sequestered in accommodation. The default cultural factor is 1, which can be raised by provision of luxuries. Each luxury supplied to inhabitants will increase the cultural factor by 5, giving a theoretical maximum factor of 46 per fleet. The cultural output of a fleet is the cultural factor * number of inhabitants. A good supply chain of luxuries will reap massive cultural output rewards that positively affects relations to those factions with which you have a cultural exchange treaty.
- news categorized and can be filtered on the News tab in the messages frame. News saved from prior versions is categorized by a best guess
- fixed bug where re-assigning an agent to a new fleet would not clear the link from the last fleet
2022-10-22
Version 1.00.14 released:
- expedited release to fix two bugs in the propose legislation dialog that in some circumstances could lock up the UI
- tributes easier to pay off: demanded resources are consumed more quickly by demanding faction
- foreign aid processed quicker and spread around the faction to where it is needed most, enabling greater deliveries from player
2022-10-21
Version 1.00.13 released:
- priority release to fix bug that broke agents saved with 1.00.12
- changed AI behaviour on war declartions to be more responsive in launching immediate strikes if it has the capability
2022-10-20
Version 1.00.12 released:
- system list variables reworked: can now contain “local” system; can add multiple systems in one edit; extra tools added to shift elements in the list
- fleet list variables reworked: can add multiple fleets in one edit; extra tools added to shift elements in the list
- agent services generalized: rather than being restricted to a single system, services can now be bound to a system list, or an explicit fleet whitelist
- newly constructed industrial modules will be allocated amongst non-suspended factory constructions, rather than including suspended ones as now
- “News” tab added to messages window for updates on various political events in the cluster. Messages now reserved for private messages from other factions
- foreign government legislative proposals now more spread out over time rather than all current proposals being decided at once
- foreign governments make fewer legislative proposals
- player can spend influence to propose specific foreign legislation (that is compatible with current government). More influence must still be spent to guarantee success
- changed rendering of fleet and system list agent variables to show at least some elements
- cargo limits view highlights cargo types over limit with red foreground colour in the Volume column
- new transfer passengers task with passenger minimum and maximum age bounds
- flag added to fleet inhabitants tab to restrict reproduction (no births)
- added “Eccentric” start configuration where an eccentric GCV Plains previously of the Involved faction has reconfigured itself and hoisted humans into this cluster, no other human fleets will arrive in this starting configuration.
- cluster “Centre” button moved to a tool button near the top of the window alongside other tools
- “latest news” text area added to bottom of cluster window
- “contact” tool added when selecting a system in the cluster window which brings up sovereign faction diplomacy window (must have scanned the system first)
2022-10-05
Version 1.00.11 released:
- Agents can be individually saved/loaded to transfer between games. Faction variable dependencies will be saved and automatically defined when loaded, renaming variables where there is an incompatibility
- new agent task “intercept” to engage other fleets. Supporting predicate “isHostile( faction, faction )” and function “Threat( fleet )”
- new predicate and function to assist agent coordination: “IsBehaviourTarget” and “BehaviourTargetCount” will indicate whether a given fleet is already a target of an active behaviour of a given name by another agent. Can be used to create duplicate agents to provide the same service in a single system and ensure they serve different clients.
- active agent behaviours targeting a friendly fleet are visible on the Agent tab of the fleet view window.
- added “Local Defence” agent template on new game starts, includes use of “IsBehaviourTarget” predicate so that multiple defence fleets using this agent will target separate hostile fleets.
- suspend/resume construction buttons added to Fleet view toolbar
- new ship type/class “MCS S11” added to default manufacturing designs. A specialist factory ship intended to use as an add-on during initial system construction where certain products (control systems etc) are much more in demand when building manufacturing/extraction facilities in parallel.
- ctrl+ added (in addition to existing ctrl=) as shortcut for speeding up game clock
- space key can be used to pause/resume game from cluster and system views
2022-09-08
Version 1.00.10 released:
Expedited patch to fix csv encoding problem for international users
- increased rate of influence accrual
- if an Outcast faction government is changed to a “non-demanding” type, it will retract any existing demands, and forget any negative impacts from previous missed demands
- fix csv string encoding of deep space keys to use Locale.ENGLISH to avoid problems in locales that use commas in place of decimal points
2022-09-06
Version 1.00.09 released:
- “Power” column on faction view now only shows faction power derived from player-scanned systems
- Outcast factions can now be (somewhat) reformed into forming more tolerant government types which will calm their aggression (somewhat) and can cease their interminable demands
- fixed bug introduced in 1.00.08 where faction/message view panels would lose event updates if closed and re-opened
- Ship/Structure design dialogs were too large for resolutions with < 800 height. Can now be resized, contents put inside a scrollpane if window too small to display all components
- fixed issue where construction could take place concurrently with deconstruction in the same space
2022-09-04
Version 1.00.08 released:
- new “Government” tab on diplomacy views, containing metrics that determine government type: Participation, Individual Freedom, Rule of Law, and Secularism
- player can gain “influence” with AI factions. Influence is gained automatically with positive relations (higher relations=more influence). Relative power is also taken into account, it is harder to gain influence with powerful factions.
- Interior factions periodically generate new legislation which can affect Participation/Individual Freedom/Rule Of Law/Secularism metrics, as well at potentially reforming the government into a different type. The chance of legislation being enacted can be influenced by the player by spending influence. Governments have preferences for certain values of metrics and it will take more influence to move them away from these.
- new government types: Plutocracy, Meritocracy, Communist, Dictatorship
- “Power” column added to the faction list on Diplomacy tab as an indication of military power. Player faction now included in this list to indicate relative power
- changed inputs for Exotic Pet production, now requires chemicals and raw agricultural products rather than taking replenishments (pets dont need clothing)
- new faction knowledge “extraction yield” which increases yield of mined resources (up to maximum of 100). Researchable from 100% to 200%
- new xenotech type “dredge components” which can be recovered from defeated extractor craft, required by xenoanalysis facilities specializing in extraction yield
- can change player faction name from faction window
- explicit war declarations against Roamer factions re-added, but chance factions declare war on neighbouring Roamer significantly reduced
- rate of assimilation of refugees, prisoners and pirates is increased for fleets with large amounts of accommodation
- filter panel added to shipyard options
2022-08-20
Version 1.00.07 released:
- spares shortfall algorithm adjusted. Originally, in a fleet exhausted of spare parts, every module on every ship would have a small chance of failure. This made processing very slow per ship and crippling if affecting a large fleet. Changed such that failures for individual ships are less likely, but more impactful when they do occur. Rather than a slow trickle of minor jump drive damage across the whole fleet it may be the case that a single member has a major failure that will take a few iterations to repair.
- added new “jump drive” alert type that is raised when a fleet with an active travel task loses jump capability due to damage sustained either in combat or through spares shortages
- equipment construction can be suspended on fleet members. Useful for funnelling constrained resources to specific ships
- shipyard constructions can be suspended. Constructions already in progress will continue to occupy the shipyard, but those not yet started will be passed over if suspended
- “Docked” column on members panel in the Fleet window renamed to more generic “Berth”, mobile ships still display any ship they are docked with, static bases display resource zone they are built upon in this column (static bases cannot be docked)
- “Volume” column on members panel in the Fleet window changed from displaying hull damage to hull construction progress, making under-construction static bases more obvious
- new “Hull (%)” column on members panel to indicate hull damage (previously shown in the Volume column)
- x2/x5 base expansion buttons now available from members panel in the Fleet window
- x2/x5 base expansion buttons will attempt to allocate new mounting space to facilitatory mountings (infrastructure, dredge) in same proportion as before
- increased frequency of expansion permits in early game (note that expansion permits are only extended when you have reached the current limit)
- added “fill dock” button on Member panel of Fleet View window. Can be used to fill selected carriers with non-jump capable ships of a specific designation
- stopped destroyed factions from performing certain diplomatic actions
- some extra cargo limit sets added to the default (precious metal extraction, precious metal transport, warehouse [merchandise], warehouse [rare munitions])
- refugees from inter-factional warfare spread across adjacent systems
- smallest of abandoned hulks switched from extractor to cargo ship
- continuous monitoring of system time to detect operating system sleep/suspension that otherwise creates a dislocation in time when threads are restarted
- to avoid building unproductive factories by mistake, rare agricultural specializations are only available when at an appropriate life-bearing planet
2022-08-07
Version 1.00.06 released:
- added “jumpTo” agent task to command the fleet to move to a specific system
- added SystemLists to agents and variables, with supporting functions and predicates similar to FleetLists, enabling agent-controlled patrols
- attempting to give commands to fleets under agent control will ask for confirmation to suspend the agent first
- intercepting neutral fleets treated as act of war (engagement dialog will warn of consequences before proceeeding)
- factories waiting on a material will in most cases trigger as soon as more of that specific material is available
- specific equipment build requirements simplified. e.g. jump drives only need “jump actuators” to build. Equipment bays themselves need more control systems to construct
- fixed bug where selecting all members of a fleet to join an existing fleet would create a “transfer” fleet but not issue the join command, leaving it idle
- post-combat salvaged vessels can be viewed in detail before choosing whether to claim
- extractors no longer de-specialize when moved from a resource site
- increased chance of armistices during protracted wars
- cluster view parameters (location, zoom, mode) persisted in savefile
- version number added to bottom-right of cluster frame
2022-08-02
Version 1.00.05 released:
- Incremental research dramatically improved with reduced research time and increased success chance
- Xenoanalysis research has reduced research time and will now make use of “redundant” xenotech for incremental research
- Specialization tasks of factories and facilities will now be interrupted if a re-specialization is ordered
- Fixed toolbar vanishing when window too small on fleet member configuration panel
- Reduced likelihood of war declarations between most major factions
2022-07-31
Version 1.00.04 released:
- Market prices moved onto cargo limits rather than being specific to single fleets. This makes trading fleets a bit more robust where if you lost one and tried to replace it you’d have to go through the rigmarole of setting market prices again. New games will have some export limit prices set on “Military” and “Merchant” cargo limits. Existing save files will be loaded and any market prices set on a fleet will be overlaid onto its cargo limit set. This will hopefully suffice for many players but any players with sophisticated trading fleets (multiple fleets with the same cargo limit set but different import/export prices) should take care to examine their fleets after loading.
- “members” column on assets view will be highlighted yellow if some member is suspended construction (typically a station), to make it easier to track
- suppress war declaration messages where roamer factions are involved (for large clusters this can get very spammy at certain points in the game)
- outcast factions no longer aggressively occupy player systems when starved of K filaments
- abandoned hulks have some initial equipment to make them more useful and easier to repair (new games only)
- industry tab can be sorted by efficiency
- master gain level persisted in savefile and restored on load
- fixed bug where ships split from a fleet in motion would immediately crash-stop rather than inherit parent fleet velocity
2022-07-18
Version 1.00.03 released:
- Build base/station command from system view fixed to not evict the fleet when it is already landed on the planet
- “Land” no longer available as a command for a fleet that has already landed on that planet.
- CRLF line endings removed from diaspora.sh (linux start script)
2022-07-17
Version 1.00.02 released:
- “Game pace” slider accessible from cluster view Game > Settings menu. Increasing pace speeds up construction of ships/structures (more modules will be built per cycle), also accelerates early game events. Manufacturing times remain the same so increased construction rates will put extra demands on the economy and may lead to more early growing pains.
- Prevent saving games into installation directory (.msi updates to new version could wipe them out)
2022-07-14
Releasing some minor tweaks today in version 1.00.01:
- Import/export thresholds added to the initial “Seed” cargo limits so that the initial fleet will be a viable manufacturing fleet without any further changes (it will accept K filaments and provide product supplies).
- New games will start with the four agent templates from the manual mostly configured and just waiting to have their variables configured.
- Background images changed to higher resolution procedurally generated starfields.
2022-06-08
As launch date approaches i’d like to take some time to talk about the development of Diaspora: Ex Astris Renatus.
The game began development back in 2010. It was originally intended to be an small-unit action space-based game with logistics playing a key role. The game was heavily influenced by my love of the works of the late Iain M Banks, namely “The Culture Series” of novels. The economies in-game are somewhat post-scarcity as in the Culture series, as all the main resources of production are available in almost all systems. However, there are still forms of consumer snobbery and conspicuous consumption represented in-game by “luxury” resources where artificial scarcity is imposed by unverifiable claims of special qualities given to the goods when produced at a specific site,
I chose to forgo any detailed graphics for a number of reasons. Firstly, it takes a great deal of effort and i’m a sole developer with pitiful graphical modelling skills. Secondly, having played games such as Eve: Online I wound find that I only cared about the design of ships after first buying them and they quickly became irrelevant as i’d be playing the game mostly fully-zoomed out in order to get a view of the environment and any threats. Thirdly, I played great deal of Angband at Warwick University in the 1990s and found my imagination was unfettered by the ASCII graphics and trying to apply any of the later simple graphical tilesets detracted from my engagement rather than added to it. I was always more scared of a D (ancient dragon) appearing in the display than I was of any simple dragon graphic. I could imagine the D being an angry dragon clawing its way at high speed down the corridors towards me, but any graphical tileset just looked comical and killed the imagery. Bad graphics are much worse than no graphics. Lastly, real-life control systems just don’t have detailed models: think air-traffic control displays.
Similarly I wanted to get past the modelling phase of solar systems as fast as possible and went for a simple model vaguely based on Kepler’s laws of planetary motion to get something ‘good enough’. In the past I have found many detailed solar-system simulators where the developer began with the intention of making a space-based game but got sucked into the rabbit-hole of simulating a solar system in great graphical detail and never got to actually making a game.
Solar system simulation rapidly prototyped, development moved onto adding ships and controlling them. The earliest prototypes of the game had ships as first-class objects on the display. My first mining fleet consisted of a mining tender vessel carrying four dredgers which would individually seek out asteroids and return to the tender when full. At the time the ship graphics were simple polygons that gave the impression of a ship. A particular pleasure of mine at the time was launching fighters (triangles) from carrier ships (looking suspiciously like a Nimitz-class aircraft carrier from above) and watching them turn to dock back with the mother ship. It fairly quickly became apparent that having lots of tiny ships all navigating individually was a drain on computational resources for little gain — i’d expect players to watch the ships launch and land a few times and then zoom out and not care, so ships ceased to be first-class objects and the “fleet” object was born, and everything became fleet-based.
Agents were added early. I worked on a BDI agent model for my BSc dissertation back in 1995 and quite liked the concepts. This is largely based on that, trying to give a semblance of first-order logic but with restrictions to avoid computationally-costly resolution. I am expecting a slew of requests for new agent predicates/functions/tasks to be added as people get to grips with the system and find ingenious ways to use them.
Development slowly continued over the next decade whenever I found the time around work and family commitments. The game was very quickly playable and I soon found myself spending more time playing than actually developing. After many years of adding more layers I hope there’s enough variety to please more than just myself.
Although the game is intended to be a sandbox, there is something of a “storyline” that is really nothing more than escalating political tensions that can lead to wars breaking out between existing factions. Despite being in development for over 12 years and playable for most of that i’ve only actually accrued 5 games, and one of those was lost to a fluffed attempt at porting a save-file between versions. None of the games have got anywhere near to “completion”. I’ve never managed to populate more than a small section of a cluster nor knock out any of the major interior factions, or even get to the last stage of storyline progression.
Breathing life into the game has been difficult. At first, the outcast factions were the initial enemy expected to be met by the player, going hostile quickly and having to be dealt with head-on. Then I added in the “demand” functionality so that the player could placate the outcast factions for a while. Later, the outcast factions were beefed-up to be more of a player in the cluster politics and no longer suitable as an initial punch-bag for the player to practice on. Next came the Roamer factions who were again intended to fill the role of combat practice, but again grew over time to be tougher to appear more plausible as a group monopolizing local resources. Then came the Privateers, who have so-far remained in the role of initial sparring partner. The latest development was to add different government types to the interior factions, as they were feeling far too homogenous and uninteresting. This is so new that i’ve not actually had a chance to fully playtest their interactions through the full “classic storyline” from scratch (that is my game #5).
The last six months have been spent mainly trying to optimize the game as it is. I’d done too many “lazy” things over the years by tacking more and more brute-force processing onto daily tasks per fleet that started taking up too much time to run as the game progressed, and had to re-implement those in a more sensible fashion. The cluster and its factions are still fully simulated, with fleets plying between systems and fighting each other beyond the sight of the player.
There’s a chance that the storyline progression is too slow for many players. I hope to add some configuration options at a later date to adjust the speed of storyline progression amongst other things (building times would likely need to increase at the same rate).
Combat to me has turned out something of a disappointment. I had hoped to engage the player with more tactical options that could swing a battle, but so far have fell short and it comes down to who has the most/biggest ships with combat results essentially predictable in advance. In some ways this is a good thing as I intended to reward advance planning (having the right ships in the right place at the right time), which can be extra challenging as the build times for everything are intentionally slow so you have to maintain costly fleets long-term rather than being able to spam them out at the last minute, but still feel like something is missing during engagements.
.