Author Topic: C# Aurora Changes List v1.00  (Read 573302 times)

0 Members and 5 Guests are viewing this topic.

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
C# Aurora Changes List v1.00
« on: April 02, 2016, 09:03:29 AM »
This thread is for me to note any significant changes in functionality for C# Aurora, beyond minor UI updates.

Low Gravity Infrastructure

Underground Infrastructure is replaced with Low Gravity Infrastructure (or LG-Infrastructure). This will be built and transported in the same way as regular infrastructure, except it will be twice as expensive - 4 BP instead of 2 BP.

Any low gravity bodies (below the minimum gravity of the colonising species) will now have a normal colony cost calculation (based on atmosphere, temperature, pressure, etc.) and an 'LG' suffix will be added. For any bodies with an LG suffix, the maximum supported population will be based on the available LG-Infrastructure.

For example, for a colony cost 2.00 world you need 200 infrastructure per 1m pop. For a colony cost 2.00(LG) world, you will need 200 LG-Infrastructure per 1m pop and normal infrastructure will have no effect.

Both normal infrastructure and LG-Infrastructure can be used on a world with gravity in the tolerable range. Worlds with gravity above max species gravity will not be colonizable.

Civilian infrastructure production on a low gravity world will be LG Infrastructure, produced at one third of the normal rate (same overall cost). Trade in infrastructure will be low gravity to low gravity or acceptable gravity to acceptable gravity .

I believe this change will maintain the concept of colonising low gravity bodies at a higher cost but will be a lot cleaner and easier.

« Last Edit: April 12, 2020, 04:28:30 AM by Steve Walmsley »
 

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #1 on: June 18, 2016, 05:23:01 AM »
Naming Themes

In VB6 Aurora, we have racial themes that include system names, class names and rank names, plus a variety of ship name themes.

For C# Aurora, they are all amalgamated into Naming Themes, which can be used individually for Classes, Systems and Ships. Ranks will be handled separately.

A race will select a Class Naming Theme, a System Naming Theme and a Rank Theme (so you can use current Ship name themes at the Race level). Each Ship Class can also have a Naming Theme.

The Naming Themes comprises everything previously used for Ships, plus the existing Racial Themes separated out into the System and Class elements (and named appropriately so you can replicate existing Race Themes if desired).

This should be a lot more flexible while allowing everything you can do now. It will also make it a lot easier for players to add customised themes.
« Last Edit: March 06, 2017, 12:51:40 PM by Steve Walmsley »
 
The following users thanked this post: Garfunkel, SpikeTheHobbitMage, MarcAFK, Tor Cha, TMaekler, Simple_Canadian

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #2 on: June 25, 2016, 08:35:57 AM »
Repair Task in Shipyards Window.

When selecting the repair task in the shipyards window, only classes / ships needing repair and currently in orbit will be displayed. In VB6 Aurora, all classes / ships in orbit are displayed and you have to cycle through to find the damaged ships.

If no ships in orbit are in need of repair, the class and ship drop downs will be empty.
 
The following users thanked this post: Brian Neumann, Garfunkel, SpikeTheHobbitMage, MarcAFK, Tor Cha, TMaekler

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #3 on: July 03, 2016, 07:35:12 AM »
Shipbuilding Changes

I'm using this post as a placeholder to post any shipbuilding changes. So far the changes are:

1) You can't refit a damaged ship.
2) Scrapping/Deleting is much more intelligent about moving commanders, teams and ground units from a ship to the scrapping population (in case you accidentally scrap or delete a ship with them on board). Fuel, maintenance and ordnance are also automatically unloaded.
3) When a ship undergoes refit, fuel, maintenance and ordnance are moved from (or to) the refitting population to account for the differences post-refit.
« Last Edit: July 03, 2016, 08:16:15 AM by Steve Walmsley »
 
The following users thanked this post: SpikeTheHobbitMage, MarcAFK, Tor Cha, TMaekler

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #4 on: July 16, 2016, 05:44:09 AM »
Trade Good Modifiers

In VB6 Aurora, civilian production of trade goods is affected by the population size, the race wealth creation rate, the production rate of each specific trade good, the political status of the colony and the wealth modifier of the planetary and sector governors.

In C# Aurora, it will also be affected by radiation and unrest.
« Last Edit: July 16, 2016, 05:47:21 AM by Steve Walmsley »
 
The following users thanked this post: SpikeTheHobbitMage, MarcAFK, TMaekler, muzzlehead

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #5 on: September 25, 2016, 10:11:17 AM »
Reaction Bonus

A commander's initiative bonus has been replaced by a new Reaction Bonus. This serves two functions:

1) Fleets (both player and NPR) will move in ascending order of the average reaction bonus of the ship commanders in the fleet.
2) Response time for orders (when hostiles are present), which is based on fleet training, will be further reduced by the average reaction bonus of the ship commanders in the fleet.
3) Any ship without a designated commander will be treated as if it has a commander with a 0% bonus.
« Last Edit: October 01, 2016, 06:23:58 PM by Steve Walmsley »
 
The following users thanked this post: SpikeTheHobbitMage, MarcAFK, TMaekler

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #6 on: September 25, 2016, 10:17:22 AM »
Naval Organization

Instead of the Task Forces and Task Groups in VB6 Aurora, C# Aurora takes an approach similar to the optional functionality of the VB6 Naval Organisation tab, albeit with much easier and more flexible UI. There are four primary components of Naval Organisation; Admin Commands, Fleets (VB6 Task Groups), Sub-Fleets and Ships. Every race starts with a single top level Admin Command (which can't be deleted but can be renamed). All other Admin Commands descend in a tree from this one. You can only attach an Admin Command to another Admin Command but you can have an unlimited number of levels in the Admin Command hierarchy.

Fleets can only be attached to Admin Commands. Many fleets can be attached to the same Admin Command but each fleet can only be attached to one Admin Command

Sub-Fleets can only be attached to a Fleet, or to another sub-fleet. You can have an unlimited number of levels within the sub-fleet hierarchy. These are used to organise the ships within the larger fleets. Sub-fleets have no on-map function and all ships within the sub-fleet hierarchy move within the parent fleet. You can detach a sub-fleet, at which point it becomes a full fleet in its own right. Any sub-fleets further down the sub-fleet hierarchy become sub-fleets of this new fleet. A new 'join as sub-fleet' order is available. When one fleet joins another using this order, its ships will automatically form a sub-fleet within the joined fleet, allowing them to subsequently detach as a whole unit.

A Ship can be attached to a Fleet or to a sub-fleet. When attached to a sub-fleet, it is still a member of the parent Fleet at the top of the sub-fleet hierarchy.

The sidebar tree of the new Naval Organisation window (see Screenshots thread) has full drag and drop functionality so you can move Admin Commands, Fleets, Sub-Fleets and Ships around as long as the above rules are followed. You can also drag ships and sub-fleets between different fleets as long as they are in the same physical location. Entire sections of the tree can be moved with a single drag-drop. Also, you can open up multiple Fleet windows and drag and drop between the trees in two different windows.

« Last Edit: October 09, 2016, 07:49:28 AM by Steve Walmsley »
 
The following users thanked this post: Theeht, Felixg, SpikeTheHobbitMage, MarcAFK, palu, TMaekler, Andy8583, consiefe, Agoelia

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #7 on: October 01, 2016, 06:34:44 PM »
Shipping Line Earnings and Tax

For C# Aurora, the distance a civilian ship has travelled (in terms of systems) will affect how much the shipping line receives in payment and how much tax is generated.

All VB6 payment rates will be halved as a baseline but multiplied by the number of systems travelled. So a civilian ship travelling to a destination two transits away will receive the same payment as in VB6 Aurora. A ship travelling to a destination five transits away will receive 250% of the current payment. This applies to trading and to player contracts.

Government tax rates on civilian shipping will work in the same way, except rates will not be halved as a baseline. This will increase the overall tax revenue from civilian shipping.

A civilian ship travelling within the same system will be paid half of the one-system rate (which is half what is currently paid in VB6). This applies to both the payment to the shipping line and the tax.

This should reduce some of the early game bloating of civilian traffic but make it workable for the later game with longer distances (especially with the new jump point generation in v7.1 of VB6 Aurora).
« Last Edit: January 29, 2019, 01:28:48 PM by Steve Walmsley »
 
The following users thanked this post: SpikeTheHobbitMage, MarcAFK, Llamageddon, TMaekler

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #8 on: October 02, 2016, 12:18:16 PM »
Load & Unload Cargo

In VB6 Aurora, ships load or unload cargo, colonists, etc. on arrival and then undergo a wait period before their next order (based on how long it takes for the load/unload process).

In C# Aurora, the wait period will take place first and then the cargo will be loaded or unloaded at the end. Because of this change, if the fleet abandons the order before it is complete, no transfer of cargo will have taken place.
 
The following users thanked this post: iceball3, SpikeTheHobbitMage, MarcAFK, TMaekler

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #9 on: October 02, 2016, 03:17:13 PM »
Refuelling Changes

In C# Aurora, refuelling is no longer instant and ships without specialised equipment cannot exchange fuel in space. A ship can only refuel at a Spaceport, a Refuelling Station, a ship with a Refuelling System or a base with a Refuelling Hub.

A new technology line - Refuelling Systems - provides the basis of the rate of refuelling and allows ships to mount systems to refuel other ships. The baseline system (Refuelling System: 50,000 LPH) sets the racial refuelling rate at 50,000 litres per hour and allows the use of the first ship-mounted Refuelling System. There are ten further steps in the tech progression with the highest tech system allowing refuelling at 500,000 litres per hour.

Spaceports, Refuelling Stations or Refuelling Hubs will always use the highest tech refuelling rate and can refuel an unlimited number of ships simultaneously. However, the ships being refuelled must be stationary.

Spaceports have doubled in cost to 2400 BP but can now be moved by freighters. They are equal to four research facilities for transport purposes (or 80 factories). They retain their existing bonuses to loading and unloading cargo.

Refuelling Stations are a new installation with a cost of 1200 BP. They do not require workers and can be moved by freighters. They have a transport size equal to 10 factories. Essentially, they are a cut-down version of a spaceport intended to facilitate refuelling in forward areas, transferring fuel from the surface of a planet to the waiting ships. They have no bonuses for loading or unloading cargo.

A Refuelling Hub can be mounted on a ship. It is a commercial system with a research cost of 10,000 RP, build cost of 2400 BP and a size of 100,000 tons. In practical terms, this is likely to form part of a large, deep-space station, due to the size and cost, rather than being deployed on tankers that will accompany fleets

A Refuelling System is 500 tons and has a cost ranging from 10 BP to 100 BP, depending on the tech level. A ship with a Refuelling System can refuel a single ship at once, so will take some time to refuel a whole fleet, although this will improve with higher technology. At the early tech levels, the Refuelling System can only be used if both ships (tanker and target ship) are both stationary. Another new tech line, Underway Replenishment, allow the refuelling to take place while both ships are in the same fleet and underway. Priorities can be set for the refuelling order when multiple ships are involved. The first Underway Replenishment tech allows refuelling at 20% of the normal rate (2500 RP), rising to 100% with the highest tech (40,000 RP).

Refuelling order types will be adjusted to deal with the new requirements. Fuel will be transferred during each movement increment as time passes until the target ship has full tanks. I may add some other options regarding partially filling as well.

I will be adding some rules along the same lines regarding ordnance transfer.
« Last Edit: July 20, 2017, 12:40:31 PM by Steve Walmsley »
 

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #10 on: October 05, 2016, 03:50:47 PM »
Assignment of Ships to Populations

In VB6 Aurora, ships such as terraformers or asteroid miners have to be assigned to populations in order to provide that population with any applicable production. This is because an empire may have multiple populations on the same world and the ships can only provide support to one of them. When a fleet reaches a population, the ships within it are automatically assigned. However, there are still situations (such as transferring between fleets) when this assignment is not always picked up. While the problem can easily be fixed by ordering the fleet to the population, it is not always obvious it needs to be fixed. This can lead to ships sitting idle in orbit.

In C# Aurora, the assignment to the population will be at the fleet level, rather than by ship, and the same auto-assignment will happen when a fleet moves to a population. However, when a population checks orbital space for any assigned fleets during production, it will automatically grab any unassigned fleets in orbit and assign them to itself. This should avoid any situations where ships remain idle.
 
The following users thanked this post: Garfunkel, iceball3, SpikeTheHobbitMage, MarcAFK, AbuDhabi, TMaekler, dsedrez

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #11 on: October 06, 2016, 04:05:08 PM »
Standard transits by Fleets with Commercial and Military Ships

In VB6 Aurora, fleets that included at least one ship with military engines could only use military jump drives for standard transits, which meant you had to split out commercial-engined ships into a separate fleet and escort them with a commercial jump drive ship.

In C# Aurora, commercial-engined and military-engined ships are treated separately. So if you have a fleet with mixed engine types that also includes ships with commercial and military jump drives, it will still carry out a standard transit if the respective jump drives are large enough for the ships with the matching respective engine types. However, if any ship with either engine type can't jump, the whole fleet will fail to transit.

Squadron jumps are handled differently so I will cover that in a separate post.
 
The following users thanked this post: bean, Garfunkel, SpikeTheHobbitMage, MarcAFK, Llamageddon, TMaekler, lordcirth, pwhk

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #12 on: October 15, 2016, 05:23:40 PM »
Refuelling Orders

With the new refuelling rules, I am changing how some of the refuelling orders work.

You can flag a tanker as being at one of three refuel statuses; None, Refuel Fleet or Refuel Sub-Fleet. When this flag is set to Refuel Fleet, the tanker will constantly refuel its own fleet as that fleet continues with normal orders (the refuel itself is not an order). Essentially, the tanker will keep the fleet's fuel tanks topped up. The rate of refuel will be based on the refuelling system of the tanker multiplied by the parent race's underway replenishment tech (unless the fleet is stationary). If the flag is set to Refuel Sub-Fleet, the tanker will follow the same rules as above but only for ships within the same sub-fleet (you can use this distinction to control which ships are refuelled within the fleet)

Each tanker class has a minimum fuel setting (in the class window) and will not refuel ships once it falls below that level. Each class & ship has a 'refuel priority', with higher numbers equalling higher priority. The tanker will refuel in descending order of ship priority, then by descending order of class priority. The tanker will automatically move to a second ship (or more) if there is sufficient time and fuel remaining in the sub-pulse.

The current 'Refuel Fleet' order has been replaced with 'Join & Refuel Fleet'. The fleet containing the tanker will become part of the target fleet and switch to a 'Refuel Fleet' status (if not already set).

A new 'Join & Refuel Sub-Fleet' order has been added. The fleet containing the tanker will become part of the target sub-fleet and switch to a 'Refuel Sub-Fleet' status (if not already set). A Join Sub-Fleet order has also been added for more general use.

A new 'Refuel from Refuelling Hub' order has been added. This order requires a second fleet containing at least one refuelling hub as the destination. On arrival, the fleet will be refuelled until all its tanks are fuel, or the refuelling hub runs out of fuel. All ships in the fleet will be refuelled, including tankers. Once completed, the fleet will move on to its next order. If the fleet containing the refuelling hub has any movement orders, the refuelling will not take place and the refuelling order will be marked as completed. Multiple hubs in the target fleet will not increase the rate of refuelling (a ship can only refuel from one hub at once) but they can all contribute fuel.

The existing 'Refuel from Colony' will remain but can only be used at colonies that have either a Spaceport or a Refuelling Station. On arrival, the fleet will be refuelled until all its tanks are fuel, or the colony runs out of fuel. All ships in the fleet will be refuelled, including tankers. Once completed, the fleet will move on to its next order. Multiple spaceports or refuelling stations at the colony will not increase the rate of refuelling.

The 'Unload 90% Fuel to Colony' order now becomes 'Transfer Fuel to Colony'. Any class designated as a tanker can transfer fuel to any colony with either a spaceport or a refuelling station. The transfer is done at the refuelling rate of the tanker. If multiple tankers are in the fleet, they can transfer fuel simultaneously. Note this means that more planning will be needed in this version of Aurora to ensure fleets can be refuelled at the frontier. It will no longer be possible to dump fuel on the nearest available rock. Colonies will require a spaceport or a refuelling station before they can support fleets. Alternatively, tankers can accompany fleets, or a deep space base with a refuelling hub can be established.

A new 'Transfer Fuel to Refuelling Hub' order has been added. Any class designated as a tanker can transfer fuel to any ship with a Refuelling Hub. The transfer is done at the refuelling rate of the tanker. If multiple tankers are in the fleet, they can transfer fuel simultaneously.
« Last Edit: July 01, 2018, 07:48:06 AM by Steve Walmsley »
 
The following users thanked this post: Garfunkel, SpikeTheHobbitMage, TMaekler

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #13 on: November 27, 2016, 09:07:01 AM »
System Naming

In C# Aurora, you can optionally assign one of the new Naming Themes to a system. Any future exploration beyond that point will use the selected naming theme. This allows you to have different naming themes for different warp chains.

The order of name selection for new systems will therefore be:
1) Actual System Name (for known stars)
2) Next name for Naming Theme associated with the system from which the exploring ship originated (if a theme is set)
3) Next name for Racial System Theme
4) "System #" + System Number

You can still rename systems directly and will be able to use text, or select any name from any name theme.

Online Steve Walmsley (OP)

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 12036
  • Thanked: 22710 times
Re: C# Aurora Changes List
« Reply #14 on: January 07, 2017, 07:39:24 AM »
Population Capacity

A new concept, Population Capacity, has been added to C# Aurora. This represents the maximum population that can be maintained on a single body and is primarily determined by surface area. This is the total of all populations on the same body, not per population.

The Earth's population is currently seven billion. However, the rate of population growth peaked at 2.1% at four billion, has been dropping since then (now 1.2%) and is projected to reach close to zero around eleven billion

https://ourworldindata.org/world-population-growth/

Therefore, I am going to use twelve billion as the baseline max capacity for an Earth-sized planet and four billion as the point at which growth rates are affected. Growth will follow the normal rules for up to 1/3rd of max capacity and then will fall off at a linear rate, hitting zero growth at max capacity (replicating the situation on Earth). The max capacity of a body will be equal to: (Surface Area / Earth Surface Area) * twelve billion. I will add some tech options to improve that capacity, particularly for smaller bodies. A planet can physically hold more people than the max capacity but this will result in unrest due to overcrowding in the same way as insufficient infrastructure.

While 70% of the Earth's surface is water, that plentiful water also improves living conditions (the majority of the world's population is less than 100 km from the nearest coastline). However, there does come a point when too much water will reduce the available living space. Therefore, once water covers more than 75% of the planet, capacity will drop at a linear rate, falling to 1% of normal capacity at 100% water. The 1% assumes a few, small, scattered islands or some form of colony floating on the surface.

Tide-locked worlds (one side always facing the star) have only 20% of normal capacity (after taking into account surface area and water). This is to simulate that the population will be living in a narrow band between the light and dark hemispheres of the planet. To compensate, these worlds also have an 80% reduction in the colony cost factor for temperature (as they are living in the temperate band).

Regardless of the result of the above calculations, a body with gravity at or below the species maximum that is not a gas giant or super-Jovian will always have a capacity of at least 50,000.

The above rules result in the following population capacities



EDIT Jan 21st 2017: Each Species has a population density modifier. This is normally set to 1 but there a small chance it can be higher or lower for random species. Player-created species can specify this density.
« Last Edit: April 28, 2019, 08:58:22 AM by Steve Walmsley »