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

0 Members and 1 Guest are viewing this topic.

Offline procdrone

  • Leading Rate
  • *
  • Posts: 14
  • Thanked: 8 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #135 on: August 12, 2019, 06:11:51 AM »
In case it slipped your mind, Steve already shared his method of doing it in this thread.     I hope that is of help.   

Quote from: Steve Walmsley link=topic=10149.    msg114654#msg114654 date=1558523214
Another large area is system generation, which is not really part of the sequence of play.     Here is a link to the rules I used.     
hxxp: sol. trisen. com/downloads/wg. pdf

For some reason forum insists on changing the link, but I hope you can easily see the changes to use the link properly.
« Last Edit: August 12, 2019, 06:14:30 AM by procdrone »
 
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 #136 on: August 12, 2019, 09:49:20 AM »
Yep that's what I'm using
 

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 #137 on: August 12, 2019, 11:05:55 AM »
This does sound like a challenge to achieve 1:1 functionality in. At the same time getting that close is probably not needed and can also be adjusted over time when play experience gives some idea how it differs from the original.
 

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 #138 on: August 16, 2019, 01:11:40 PM »
Progress Update 2019-08-16:

No build push this time, just a quick mini update on my sys gen progress.  System and Star gen is done!*





(Run Test is what I spam to instantly generate new systems and display them)

For Systems, parameters generated include Age, Abundance, # of stars, and Name.
For Stars, parameters generated include: parent star to orbit (if any), orbit bearing, orbit distance, luminosity, mass, radius, orbital period, color, and spectral class description

The parameters generated are determined based on pages 4, 7, 8, and 10 of sol.trisen.com/downloads/wg.pdf, and further modified by a few customizations I found in A4X.  (including: No more than 4 stars, certain orbital combinations of quaternary systems prohibited such as A-B-C-D, and abundance modifier slightly increased).  Thankfully the A4X (and thus the Q4X) database includes the StellarType, SystemAge, SystemAbundance tables which have quite a few calculations already done.  These parameters have effects on each other as well as an effect on the rest of the things generated in the system

If I were to highlight one particular piece of work I'm happy to be done with, it would be the code that makes sure multiple star orbital patterns are valid.  Turns out, its very common to discard many orbital configurations before finding one that works.  In many cases, the orbit of a star around its parent would result in overlapping stars due to how big they can be. Or an orbit would take a star too close to another star's gravity well.  This can happen quite a lot, primarily in 4-star systems, and coding the verification of that was kind of tricky.  I've made sure to make it so that the chance of getting 1, 2, 3 or 4-star arrangements, as well as the chances of seeing the various orbital parenting arrangements, is unaffected by all of the generations that got discarded.

*I still have protostars/nebulas to do, but moving on for now.  Next up is.. (browses through the pdf) planetary orbits! 
« Last Edit: August 16, 2019, 01:15:12 PM by Kyle »
 
The following users thanked this post: Demonides, JacenHan, procdrone, joansam

Offline Breadabix

  • Petty Officer
  • **
  • B
  • Posts: 18
  • Thanked: 4 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #139 on: August 21, 2019, 08:53:06 AM »
Ive only just found this, and was wondering if this is playable for exploration.  I much prefer playing this without NPRs, I just like exploring throughout all the different systems that have the possibility of existing, however boring this sounds.  Doing this in A4x after a while becomes almost impossible.
 

Offline Steve Walmsley

  • Aurora Designer
  • Star Marshal
  • S
  • Posts: 11671
  • Thanked: 20451 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #140 on: August 21, 2019, 09:07:07 AM »
Ive only just found this, and was wondering if this is playable for exploration.  I much prefer playing this without NPRs, I just like exploring throughout all the different systems that have the possibility of existing, however boring this sounds.  Doing this in A4x after a while becomes almost impossible.

You can turn off all the NPRs and spoiler races in VB6 in the Game Details window.
 

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 #141 on: August 21, 2019, 03:56:14 PM »
Progress Update 2019-08-21

Again no build push, just another quick update. I've completed the bulk of the work for planet gen:



And it's not just the names and orbits that are generated, it also generates:
- Type (dwarf, terrestrial, gas, super jovian)
- density, radius, gravity, mass, escape velocity, tidal force, tidal lock, axial tilt
- length of day, length of year
- tectonic activity level
- magnetic field strength
- planet image
- base temperature
- surface temperature
- hydrosphere type, if any
- extent of hydrosphere
- total atm's of atmosphere, if any
- albedo
- greenhouse factor
- the amount and types of gases in the atmosphere

These aren't generated in isolation.  There are interdependencies between all of these parameters combined with the parameters of the star it orbits.  Atmospheres follow the same "laws of physics" that A4X follows (surface warming, gasses frozen or escaping the atmosphere, re-recalculating surface temperature).  There was a very old but super helpful post that helped me organize how things are done. Nearly all of the things described there are done in Q4X now.

I'm currently in the middle of a sort of statistical analysis phase.  I think there might be some issues in the atmosphere generation, but to check that I first have to go back down through the layers of dependencies, starting with the age of the system itself and the types and orbits of the stars.  I have a save file with 1000 SM Generated systems in A4X and a button to quickly generate 1000 systems on the Q4X side to compare the results for major statistical differences.  I've already fixed three bugs that would probably never have been found by normal play. 

The first bug I found was I had a 100 in my code whereas the world gen pdf (http://sol.trisen.com/downloads/wg.pdf, chart 1.3.1) had a 200, resulting in all my stars being capped at half the distance from the primary star than they should have been.  This leaves much less room for planets to form without being caught by another star's gravity, which in turn skews the planet generation toward warmer, non-gas planets, which finally affects the average generation of atmospheres.

The second bug I found was in the average number of stars per system (wg.pdf, page 4).  I had a single '<' that should have been a '<=', resulting in about 0.02 fewer stars per system on average, again skewing the amount and types of planets generated.

The most recent bug was in the random roll for System Abundance (wg.pdf, chart 1.2.3)... how much "stuff" the system had to work with when it was first formed.  I had a '*' in the random roll where I should have had a '+', resulting in an average of 1.5 lower abundance (total range is 2 to -3) than in A4X, which was the biggest impact of all.  (Footnote, the A4X DB comes with a System Abundance table that seems to include the tweaks Steve made to improve average system quality.. nice!)

Each of these bugs was literally a change in one character each, and it had a huge impact on the spread of systems generated - while at the same time not being noticeable without comparing the averages across 1000 systems between A4X and Q4X.  Bug #2, for example, resulted in over 50 fewer stars than expected.  I personally never paid much attention to all the columns in the F9 page when I was playing A4X, but it's really cool and surprising to realize how every single stat has a significant rippling impact on the layout, distribution, and composition of the stars and planets in the system.  I am of course saving all of the database queries for re-checking system generation in the future, for those times when someone is feeling really unlucky and thinks there's a bug ;)   It's really nice to be catching and fixing this stuff now, and overall I'm pretty happy at how close I've otherwise come.  I have a lot more checking of stats to do, and then its on to asteroids!


« Last Edit: August 21, 2019, 04:05:22 PM by Kyle »
 
The following users thanked this post: JacenHan, Triato, joansam

Offline Breadabix

  • Petty Officer
  • **
  • B
  • Posts: 18
  • Thanked: 4 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #142 on: August 21, 2019, 04:28:32 PM »
I know you can disable NPRs in aurora 4x, my issue is the lag later game, takes far too long to do anything.  Processing a 30 day amount of time takes a very long time.  This so far looks a lot smoother, even later game, but ive read generation of systems isnt finished yet?
 

Offline sloanjh

  • Global Moderator
  • Admiral of the Fleet
  • *****
  • Posts: 2805
  • Thanked: 112 times
  • 2020 Supporter 2020 Supporter : Donate for 2020
    2021 Supporter 2021 Supporter : Donate for 2021
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #143 on: August 23, 2019, 08:12:07 AM »
I know you can disable NPRs in aurora 4x, my issue is the lag later game, takes far too long to do anything.  Processing a 30 day amount of time takes a very long time.  This so far looks a lot smoother, even later game, but ive read generation of systems isnt finished yet?

Do you have asteroid motion turned on?  If there aren't any NPR and you're not building a lot of ships (or planetary sensor installations) I'm confused where the lag would be coming from.  Unless by "later game" you mean waaaaay later game.

John
 

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 #144 on: August 23, 2019, 05:24:25 PM »
Progress Update 2019-08-23:

Don't mind me, just walking my asteroids..



Asteroid gen is done, including all the stats and calculations that were already done for planets.  I still have to do statistical comparison to A4X asteroid generation, then it's on to moons!

(@Breadabix: nope nothing's finished yet)
 
The following users thanked this post: JacenHan, ropedog, procdrone, joansam

Offline Breadabix

  • Petty Officer
  • **
  • B
  • Posts: 18
  • Thanked: 4 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #145 on: August 23, 2019, 05:57:38 PM »
As for the lag later game it is very far in, but as im weird and enjoy exploring more than combat/NPRs I get there pretty quick, and Kyle that looks strangely very satisfying.
 

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 #146 on: August 27, 2019, 04:31:02 PM »
Progress Update 2019-08-27:



Moons are done.  Somewhat arbitrary timing on the progress update, because the moons themselves were easy.  I have spent the vast majority of my time further analyzing and fixing differences between A4X and Q4X sys gen.  It's been a real challenge because there are so many variables that play off each other and there is a lot of specifics the guide doesn't help with.  I want to make sure the the overall mass, temperature, and atmospheric composition of generated systems come close enough to A4X, since that's what everything else (such as colonizability and terriforming costs) is balanced around.

I think I've come close enough for now that I can finish up the sys gen without having to go back and re-re-rebalance things like I have been.  Up next is comets.
 
The following users thanked this post: Manekaalecto, Demonides, ExChairman, JacenHan, Lil Johnny, procdrone, joansam

Offline Demonides

  • Gold Supporter
  • Warrant Officer, Class 1
  • *****
  • Posts: 94
  • Thanked: 145 times
  • 2021 Supporter 2021 Supporter : Donate for 2021
    2022 Supporter 2022 Supporter : Donate for 2022
    2023 Supporter 2023 Supporter : Donate for 2023
    2024 Supporter 2024 Supporter : Donate for 2024
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #147 on: August 28, 2019, 09:44:33 AM »
NICe bro ;]
 
The following users thanked this post: Lil Johnny

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 #148 on: August 28, 2019, 04:56:18 PM »
Progress update 2019-08-28:

Comets are done!
Lagrange points are done too.
And warp point generation.
..And survey locations.



The most time consuming part was actually how many jump points to generate per system.  It will have a huge impact on the shape of the galaxy, and it was tricky to match A4X's statistics.  Mass of the primary star plays a role but there is also a not easily matched curve to the RNG. After trying a few different formulas and fiddling with the numbers a ton I think I've landed pretty close.

At this point I've gone ahead and pushed a new build containing all the stuff I've done thus far in case anyone wants to mess around with it.  The SM Create System button on the F9 window is functional so system generation can be easily tested.  Here's a few sample clicks of the button:

Off-Topic: Create System • show

Note: the glitchy planet icons is just in the encoder, not in the game itself


I've implemented system generation via Jump Point transit as well:



The system generation phase isn't over though!  I still have Nebula systems, Mineral deposits, Trojan asteroid clusters, and Known Systems to do before I'll consider this phase of sys gen complete. Onward!
 
The following users thanked this post: Manekaalecto, Demonides, iceball3, JacenHan, Breadabix, ropedog, procdrone, joansam, Lava

Offline joansam

  • Petty Officer
  • **
  • j
  • Posts: 23
  • Thanked: 26 times
Re: Quasar4x - An early look at an Aurora4x clone in the works
« Reply #149 on: August 30, 2019, 01:23:08 PM »
Just popping in with quick words of encouragement - really stellar (teehee) work.  You are really quite good at this stuff.  As for me, I’ll start playing some peaceful games with it once a bit more of the system generation’s done - looking forward to it!
 
The following users thanked this post: Kyle