Author Topic: Quasar4x - An Aurora4x VB6 clone  (Read 161833 times)

0 Members and 1 Guest are viewing this topic.

Offline Kyle (OP)

  • Moderator
  • Captain
  • *****
  • K
  • Posts: 472
  • Thanked: 973 times
  • Quasar4x dev
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #150 on: August 30, 2019, 03:49:15 PM »
Progress update 2019-08-30:

Trojan asteroids are done.  Frequency and quality is statistically similar to A4X.



Nebula generation is done:



Ship penalties in nebulas are still to-do, but the frequency and intensity is statistically similar to A4X, including the tendency for nebula systems to cluster when exploring by ship.  Graphics for nebulas on the galactic map is done as well:



And a big one: Mineral deposit generation is done!  Steve was kind enough to give me the algorithm for mineral deposits on non-gas, non-comet bodies awhile ago.  I'm super happy to have a 1:1 match with A4X generation in this area.  Gas planet generation wasn't too hard to replicate, it's a pretty straightforward distribution based off of radius.  Comet mineral deposits were a bit of a struggle but I believe I've gotten close enough.

Moving on to UI, there were very few buttons and controls that don't do anything... and now there are even fewer.  On the System View (F9) window, I've implemented the following spacemaster-only buttons:

Delete Star
Create Nebula
SB Minerals
All Minerals
Redo Comets

The 'SB Minerals' button is new for Q4X, allowing SM to reroll minerals for just one body instead of being forced to reroll the whole system.  Here's some example mineral rolls on a fairly decent terrestrial planet:



Next up is Known Star System generation.  The A4X database already comes with templates for the known systems, so it should be fairly straightforward.  I also have to look into black holes, anomalies, and theme naming, and then I should be finally done with sys gen!
 
The following users thanked this post: JacenHan, Akhillis, ropedog, procdrone, joansam

Offline Bughunter

  • Bug Moderators
  • Rear Admiral
  • ***
  • Posts: 929
  • Thanked: 132 times
  • Discord Username: Bughunter
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #151 on: August 30, 2019, 03:54:15 PM »
Impressive that you are actually pulling this off. If you ever need to apply for a new coder job remember to link this thread from your CV  ;D
 

Offline Father Tim

  • Vice Admiral
  • **********
  • Posts: 2162
  • Thanked: 531 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #152 on: August 31, 2019, 07:00:41 AM »
On the topic of nebulae, and mineral generation, do you have the 'increased chance of minerals in nebula systems' coded as well?
 

Offline Kyle (OP)

  • Moderator
  • Captain
  • *****
  • K
  • Posts: 472
  • Thanked: 973 times
  • Quasar4x dev
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #153 on: August 31, 2019, 11:22:40 AM »
On the topic of nebulae, and mineral generation, do you have the 'increased chance of minerals in nebula systems' coded as well?

Wasn't aware of this feature.  I can't find any information about it either, do you happen to have a link?
 

Offline Father Tim

  • Vice Admiral
  • **********
  • Posts: 2162
  • Thanked: 531 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #154 on: September 02, 2019, 07:56:44 AM »
I do not, as it predates these boards.

When Steve introduced nebulae, he said habitable planets would be less likely in nebula systems, so as a compensation he was upping the TNE mineral chance for bodies in nebula systems.  This was in 2005 I think. . . maybe 2006.

I'm sure Steve could take a quick look at the code for VB Aurora and tell you about nebula minerals, but I'm afraid I can't.
 

Offline Kyle (OP)

  • Moderator
  • Captain
  • *****
  • K
  • Posts: 472
  • Thanked: 973 times
  • Quasar4x dev
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #155 on: September 02, 2019, 05:53:56 PM »
Progress Update 2019-09-02:

New build is up and the following things are done:
- Generation and functionality of Anomalies (Unusual Stellar Radiation, Unusual Magnetic Field)
- Known System generation for when 'Use Known Stars' is enabled
- Honor the Local System Chance and Local System Spread settings in non-Known Star games
- In Known Star games, follow the A4X method of picking nearby systems to generate
- Put jump gates on all jump points (when enabled in the game settings)
- Fleet Intra-system Jumps via Lagrange Points
- Low Fuel event
- Non-Known system names use racial theme when possible
- SM Generate Known System window (appears when clicking Generate System in a Known Stars game)




A lot more things were done beyond this list, as well.  I always try to include any improvements that pop up along the way; for example, while working on Anomaly bonuses, the test planet I was using had poor colonizability, but the penalties such as worker distribution, efficiency, and negative growth were not implemented in Q4X, so I took the opportunity to use the data I was working with to improve those areas.

In testing the Local System logic, I made a game with a maximum of 5 systems in A4X, but through exploration it created a sixth system anyway.   I've opted to honor the limit so that if the maximum number systems has been explored, remaining warp points will always link to an already generated system.  If there are an odd number of warp points in the game, going through the very last warp point creates one more warp point to link to in a random system.  The maximum number of systems is still easily increased via the game settings. 

I've also left in a difference between how A4X and Q4X pick systems.  Whereas A4X will create a new Jump Point if all existing Jump Points are in use, Q4X will instead move on and try the next system in its list in whatever system-picking logic it's currently running.  So there will be at most 1 surprise jump point in any game, and that will be the very last one as described above.  These differences are mainly because I assumed that's how it was supposed to work when I wrote the code, and after learning more later on, I decided I liked my way.  I was already worried about epic-length games winding up with too many Jump Point links, but it turns out Q4X will tend to have fewer than A4X.  Key word here is "epic-length" of course, it's probably not going to be a noticeable difference until you're near the 1000 or whatever system limit :)

There are more things to do in non-AI system generation such as ruins and black holes but I will visit those in a later phase of development.  I've met my goal and then some, which was to see whether I'd even be able to manage system generation at all (and I did it!).  For now, Q4X is officially no longer a single-system experiment, and it's time to move on!  Next up are the (currently disabled) Game Details and Create New Game windows, which are now needed to set parameters like Use Known Stars and Local System Chance/Spread.  After that will be the ability to generate additional player races, so that more than one player is supported in a game.
 
The following users thanked this post: Demonides, iceball3, procdrone, joansam, Lava

Offline Kyle (OP)

  • Moderator
  • Captain
  • *****
  • K
  • Posts: 472
  • Thanked: 973 times
  • Quasar4x dev
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #156 on: September 03, 2019, 04:16:21 PM »
Just a quick mini update, I pushed a new build which enables the Save Game button on the Game Details window so the settings described in my previous post (Known Systems, Local System Chance/Spread, etc) can actually be tested.

Additionally, the following settings on the Game Details window now have an effect as well:
- Minimum Comets per System
- Orbital Motion for Planets/Moons
- Orbital Motion for Asteroids
- Realistic Commander Promotions
- Use Commander Political Bonuses
 
The following users thanked this post: Triato, ropedog, joansam, Lava

Offline Ranged66

  • Chief Petty Officer
  • ***
  • R
  • Posts: 32
  • Thanked: 9 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #157 on: September 09, 2019, 05:13:38 AM »
One thing that irked me and always made me reroll nebula systems, is that ships don't go back to max speed by themselves upon leaving.

E.g. ship max speed is 2000, nebula brings it down to 700. Upon entering normal space again, it will stay at a speed of 700 instead of going back up to 2000. It added an unnecessary layer of extra micro that I really didn't want to deal with, and made repeated routes through nebula awful.

Will you fix this when you add nebula-effects? :)
 

Offline Erik L

  • Administrator
  • Admiral of the Fleet
  • *****
  • Posts: 5654
  • Thanked: 366 times
  • Forum Admin
  • Discord Username: icehawke
  • 2020 Supporter 2020 Supporter : Donate for 2020
    2022 Supporter 2022 Supporter : Donate for 2022
    Gold Supporter Gold Supporter : Support the forums with a Gold subscription
    2021 Supporter 2021 Supporter : Donate for 2021
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #158 on: September 09, 2019, 12:36:31 PM »
One thing that irked me and always made me reroll nebula systems, is that ships don't go back to max speed by themselves upon leaving.

E.g. ship max speed is 2000, nebula brings it down to 700. Upon entering normal space again, it will stay at a speed of 700 instead of going back up to 2000. It added an unnecessary layer of extra micro that I really didn't want to deal with, and made repeated routes through nebula awful.

Will you fix this when you add nebula-effects? :)

That is most likely working as intended. There is a conditional order, "If not max speed, set to max" you can set up too.

Offline Steve Walmsley

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 11649
  • Thanked: 20350 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #159 on: September 09, 2019, 02:17:06 PM »
One thing that irked me and always made me reroll nebula systems, is that ships don't go back to max speed by themselves upon leaving.

E.g. ship max speed is 2000, nebula brings it down to 700. Upon entering normal space again, it will stay at a speed of 700 instead of going back up to 2000. It added an unnecessary layer of extra micro that I really didn't want to deal with, and made repeated routes through nebula awful.

Will you fix this when you add nebula-effects? :)

That is most likely working as intended. There is a conditional order, "If not max speed, set to max" you can set up too.

For C#, there is an 'Always use Max Speed' checkbox for each fleet, so you don't need to use up a conditional order slot.
 
The following users thanked this post: Demonides, Doren, Lava

Offline Kyle (OP)

  • Moderator
  • Captain
  • *****
  • K
  • Posts: 472
  • Thanked: 973 times
  • Quasar4x dev
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #160 on: September 10, 2019, 12:43:39 PM »
Progress update 2019-09-10:

The current phase of the Create New Game window is done!  New build is pushed.  The 'new' button on Game Details is re-enabled, and most of the Non-AI controls on the Create New Game window are now functional.  Previously, the Create Game button would essentially import a static dump of a game I had generated on the A4X side.  It now generates the game from scratch, based on the parameters selected.

The following controls are now functional:
Starting Year
Max Number of Systems
Local System Gen. Chance
Local System Gen. Spread
Construction Cycle Time
Min. Comets per system
Empire Title and short name, Species Name, Homeworld Name
Government Type
Main Empire Theme
Commander Theme
Technology
Max Deviation in Oxygen pressure, Gravity, and temperature
Max Atmos Pressure
Starting Population count
Wealth Creation Rate
Industrial Percentage
Number of starting Shipyards
Number of starting Research Facilities
No missile bases for conventional start
number of Sol Jump points
System Body survey completed
Jump Point survey completed
Starting Tech points
Generate Sol System or SM game
Jump gates on all jump points
Realistic commander promotions
Commander political bonuses
Real Star systems
Orbital motion for planets/moons/asteroids

These all have fully functional impact on gameplay. For example, the Government Type setting and starting population have complicated and widespread effects on what you start with on Turn 1, especially in a Trans-Newtonian start.

Game name and SM Password were already done.  The remaining controls record their settings in the proper place in the DB, they just don't do anything because they are AI related.  I've updated the mouseover tooltips over these controls to say that the settings have no effect in-game.

I've made just a couple tweaks to the UI to try and reduce some of the ambiguities.  Controls that have no effect under certain conditions, such as Local System Gen settings in a Real Stars game, will become disabled and say N/A when they have no effect.  'Number of computer controlled Empires at game start' is another control that will go N/A when the box above it is disabled, and I updated the wording in the section.



So now system generation and new game generation are done!  Those were the two areas I was most doubtful of whether they would be possible when I started on Q4X!  I'm now going to move on to a multiple-race game.  Q4X already fully supports multiple races but I need to add all of the features that have to do with races interacting with each other.  (Minus combat, that's for later).  I also have to do some general testing to make sure switching between races is a smooth and bug free process.  After multi-race is done, my focus will be on finishing all the gameplay features that do not have to do with AI or Combat, so that empire growth and exploration is fully playable.  That will of course be over a series of updates; there are a lot of core mechanics still missing. 
« Last Edit: September 11, 2019, 09:59:21 AM by Kyle »
 
The following users thanked this post: Demonides, iceball3, JacenHan, ropedog, joansam, Lava

Offline Remon_Kewl

  • Leading Rate
  • *
  • R
  • Posts: 7
  • Thanked: 4 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #161 on: September 11, 2019, 03:28:47 PM »
In a new game I get a crash when in the Commanders window I choose the Civilian Administrators or Leading Scientists from the dropdown list
« Last Edit: September 12, 2019, 07:28:11 AM by Remon_Kewl »
 
The following users thanked this post: iceball3, Kyle

Offline Kyle (OP)

  • Moderator
  • Captain
  • *****
  • K
  • Posts: 472
  • Thanked: 973 times
  • Quasar4x dev
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #162 on: September 12, 2019, 01:42:44 PM »
Progress update 2019-09-12:

The SM-Only Create Empire button on the F9 window is done.  It checks for suitable atmosphere, confirms whether you want a methane breathing race when applicable, and opens the Create New Empire window.

The Create New Empire UI was already done but it only imported a static data dump of a new empire taken from the A4X side.  It now creates new empires from scratch based on the parameters specified.  I was able to reuse a lot of the code from Create New Game.  There is new code for picking Ideal gravity, surface temp, and oxygen level based on the homeworld you selected, and for setting the new empire as a neutral race. 

One more item is done in the Main Menu: SpaceMaster > Add Sol System.  Now you can have as many suns and earths as you want, and you can put new races on all of them! (The earths, not the suns). 

And finally,

In a new game I get a crash when in the Commanders window I choose the Civilian Administrators or Leading Scientists from the dropdown list

This is fixed.  Thanks for the report! 

For the next couple of weeks I am not going to have as much free time to work on Q4X as I normally do.  That may or may not make a noticeable difference on how far apart updates are or how much is in them, but fair warning given.  Onward!
« Last Edit: September 12, 2019, 01:44:19 PM by Kyle »
 
The following users thanked this post: JacenHan, Triato, Remon_Kewl, joansam

Offline Remon_Kewl

  • Leading Rate
  • *
  • R
  • Posts: 7
  • Thanked: 4 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #163 on: September 12, 2019, 02:28:48 PM »
Thanks for the fast fix.   

Also, I'm not sure if that's something that you haven't worked on yet, but new administrators/scientists spawn with 0 administration rating, which means you can't assign them to jobs.   
 
The following users thanked this post: Kyle

Offline Kyle (OP)

  • Moderator
  • Captain
  • *****
  • K
  • Posts: 472
  • Thanked: 973 times
  • Quasar4x dev
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #164 on: September 12, 2019, 04:27:50 PM »
Thanks for the fast fix.   

Also, I'm not sure if that's something that you haven't worked on yet, but new administrators/scientists spawn with 0 administration rating, which means you can't assign them to jobs.

Fixed!  (Don't worry, I'm not distracted :) I just had like 5 minutes so this fit right in)
 
The following users thanked this post: Remon_Kewl, joansam