Post reply

Warning - while you were reading 24 new replies have been posted. You may wish to review your post.

Note: this post will not display until it's been approved by a moderator.

Name:
Email:
Subject:
Message icon:

Verification:
What color is the sky?:

shortcuts: hit alt+s to submit/post or alt+p to preview

Please read the rules before you post!


Topic Summary

Posted by: Breadabix
« 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.
Posted by: Kyle
« 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)
Posted by: sloanjh
« 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
Posted by: Breadabix
« 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?
Posted by: Kyle
« 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!


Posted by: Steve Walmsley
« 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.
Posted by: Breadabix
« 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.
Posted by: Kyle
« 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! 
Posted by: Bughunter
« 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.
Posted by: Kyle
« on: August 12, 2019, 09:49:20 AM »

Yep that's what I'm using
Posted by: procdrone
« 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.
Posted by: Kyle
« on: August 10, 2019, 07:34:50 PM »

Progress update 2019-08-10:

At long last, I am done with Fleet Orders!!*

*With a few exceptions that will be done later

The following orders were completed:

Pickup Team
Drop Off Team
Salvage
Send Message
Begin Overhaul (rewind clock)
Abandon Overhaul
Absorb
Activate Transponder
Deactivate Transponder
Resupply from Colony
Resupply Target Fleet
Resupply from Target Fleet
Resupply from own Supply Ships
Unload 90% Maint Supplies to Colony
Load PDC Component
Unload PDC Component
Extended Orbit
Picket (Speed 1km/s)
Load Ship Component
Unload Ship Component
Load Ground Unit into Drop Module
Combat Drop Ground Unit
Load GU into Drop Module from Fleet
Load GU into Drop Module within Fleet
Unload Ordnance to Colony
Land on Specified Mothership (No Assign)
Land on Specified Mothership (+ Assign)
Tractor Specified Ship
Tractor Specified Shipyard
Release Tractored Ships
Release Tractored Shipyards
Load/Unload Minerals to Reserve Level
Load/Unload Fuel (To Set Level)
Load/Unload Supplies (To Set Level)
Add Replacement Crew

The following mechanics were completed:
- Overhauling (and regular maintenance while in orbit)
- Constructing PDC Prefabs

The following UI elements are now functional:
- Prefab PDC components list (F2 > Industry tab > Stockpiles button)
- Show current tractor link (On ships window, Misc tab)
- List available other ships to link to
- Create Link
- Break Link

The following issues in A4X were dodged:
- In A4X, when calculating speed, there is a bug where the effective size of a pair of linked ships is the Tug's size plus the Tug's size.  In Q4X this is fixed and the Tug's effective size is the Tug's size plus the payload's size.
- In Q4X, Fuel use of the Tug correctly factors in the mass of its payload (so fuel use is higher than in A4X)
- In Q4X, Ships being tugged dont use fuel
- From the database structure in A4X, it's clear that shipyards aren't meant to ever be released in space.  In Q4X, It's impossible to release a shipyard anywhere other than at a friendly population. Shipyards are destroyed if their tug is destroyed.
- The Load/Unload To Reserve (or Set) Level orders in A4X acted weird when I tried them out, so I just implemented these how they are supposed to work according to this post rather than try to figure out what A4X is doing.  I've also made it so the fleet will make the best attempt and the order won't fail if it can't match the reserve or set amount perfectly.

Phew!!!

So, there are still quite a few basic mechanics to implement such as mass drivers, but first I really need to dive into System Generation.  It's the area I've been least looking forward to, so I really need to tackle this before moving on.  If I can manage to get this part done then I'm going to be pretty confident I can handle everything else.  It's tempting to just generate 10000 systems in A4X overnight with a mouse-click script and pack them all into a zip file for Q4X to pick from but no!  I must resist! 

At this moment I have no idea how I'm going to do this, but I will post my progress when I make it.  Onward!
Posted by: Kyle
« on: August 01, 2019, 12:22:18 PM »

Woohoo, I guessed right :D
Posted by: Steve Walmsley
« on: August 01, 2019, 02:58:57 AM »

Unload survivors is a little odd.  You get more crew back into your pool than there were survivors.  You seem to get back the # of survivors x Grade Points / 100, or that's just a coincidence and it's a bug, but that's how I'm doing it for now.  It vaguely makes sense, as a way to remember that these are "better" crew than the greenies idling back at your capital. In my test case, I gained 40 crew from 21 survivors rated at 196 grade points.
Hmmm, Steve should take a look at that. Sounds odd... maybe he can clear up, what is happening there... well, not maybe, only he can :-)

That is working as intended. The pool doesn't track grade, so if you add higher grade survivors to the pool you create additional crew to reflect that experience.
Posted by: TMaekler
« on: August 01, 2019, 01:23:03 AM »

Unload survivors is a little odd.  You get more crew back into your pool than there were survivors.  You seem to get back the # of survivors x Grade Points / 100, or that's just a coincidence and it's a bug, but that's how I'm doing it for now.  It vaguely makes sense, as a way to remember that these are "better" crew than the greenies idling back at your capital. In my test case, I gained 40 crew from 21 survivors rated at 196 grade points.
Hmmm, Steve should take a look at that. Sounds odd... maybe he can clear up, what is happening there... well, not maybe, only he can :-)
Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55