Post reply

Warning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.

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

Name:
Email:
Subject:
Message icon:

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

Please read the rules before you post!


Topic Summary

Posted by: Steve Walmsley
« on: February 11, 2018, 06:48:05 AM »

In C# Aurora, you can disable the ability of civilians to build new ships.
Posted by: ssd21345
« on: February 11, 2018, 05:00:54 AM »

there was a rumor that the legendary Aurora 4x 7.  2 included this feature. 
If then, Aurora C# probably includes it. 
Posted by: Drgong
« on: January 29, 2018, 02:29:35 PM »

Another way to limit it is to do what they do with taxi in some place, and only allow X number of ships.  So you could put down "Only 50 civilians" and once that is reached, a company has to scrap on ship to build another one.   Or limit each company to X number of ships. 

Another option is to allow line companies to buy another company out, and then they will promptly scrap all the purchased liner ships.   
Posted by: Barkhorn
« on: January 29, 2018, 01:00:41 PM »

We don't actually know that it will be a problem.  If the game is 1000x faster, you'd need to play the same empire for years to get that big.

If it does turn out to be a problem, the only real solution is to not track civilians 100% of the time.  You instead would abstract them away.  Instead of tracking each individual ship, you track the trade-routes they're on.  The amount of trade that gets done is easy to calculate, it's just the average speed of the ships on that route times the average cargo capacity of those ships times the average speed, divided by the distance of the route.  When a hostile ship gets close to sensor range of the route, do a dice-roll to see if any ships are nearby.  If yes, you pull one out of the abstraction and spawn it on the route.  If the hostile gets destroyed or the civilian gets far enough away, de-spawn it and put it back into the abstraction.
Posted by: Froggiest1982
« on: January 29, 2018, 08:23:17 AM »

Looks like in the new game settings there is an option to avoid civilians to spawn, probably not exactly what I was asking but still better than nothing!

Maybe in the future, if the game doesn't react as we all hope, the new function will come handy.
Posted by: Jorgen_CAB
« on: January 12, 2018, 03:31:16 AM »

If this remains a problem you could always limit the number of TG for each company in the game and have ships assigned to them instead if running around individually. This way it could be a bit more controlled even if less flexible and sometimes they might waste some space.

From a programming perspective I don't see why this would be much of a problem. You could easily throw the civilian logic into its own thread as well as the calculations for each ship should be very quick and could be done thousands in just a blink of an eye. You should also be able to optimize it in a way so you only do calculations when really necessary, each ship should not need to do much before they actually need to make a new decision, which should normally only be after it have unloaded cargo, more or less.

Keeping track on where things are going should almost never become an issue at all, such calculations are trivial, more or less. Just make sure you use the correct variable types and memory access and calculations will be extremely fast, use the wrong libraries and it can become slow.

In VB6 I guess Steve more or less used the DB to store and access data, this is the worst way to work with data on a computer. Even using the wrong memory variable libraries can impact access speed significantly. This will impact the speed of calculating and writing new data to memory.
Posted by: linkxsc
« on: January 11, 2018, 10:01:03 PM »

Well far as I know, it's not actually numbers of ships that are the problem, its more the sheer number of task groups (each civilian ship being its own TG)

You can see this yourself if you mass some govt controlled freighters and set them to act like civilian shipping, but have them blobbed up in 3-4 TGs total.
Posted by: alex_brunius
« on: January 11, 2018, 05:14:16 PM »

There is one way to cap the lag civilians produce without capping their capacity.

And that is allowing them to build arbitrary massive sized transport ships, and start to increase their ship size instead of numbers once they get too many ships.
Posted by: Froggiest1982
« on: January 11, 2018, 04:05:42 PM »

It will eventually. I mean it can be 100x faster but then you'd have it happen eventually.

Yes that was my point, therefore better start thinking about a solution
Posted by: Alfapiomega
« on: January 11, 2018, 02:49:24 PM »

I would like to wait till we know the performece of C# for real

who knows if it would even be a problem at all with C#

It will eventually. I mean it can be 100x faster but then you'd have it happen eventually.
Posted by: King-Salomon
« on: January 11, 2018, 03:00:04 AM »

I would like to wait till we know the performece of C# for real

who knows if it would even be a problem at all with C#
Posted by: Hieronimous Bosch
« on: January 11, 2018, 02:42:10 AM »

 Yes please.
I've played some games until the number of civilian ship line skyrocket mostly because passenger lines between Earth and luna.  I had to destroy new lines every month or so because they were so rich that they keeps building new ship and my game was so slow that i can't even play. 
Posted by: Froggiest1982
« on: January 10, 2018, 06:42:18 PM »

Hi all,

we all hope that C# Aurora will run so fast that we could finally get our hands on 1000 or more systems games without problems.  Just in case, I was wondering if a cap on the number of civilian ships and civilian companies would mitigate the effect of overwhelming CPUs during late games.  the option could be optional or scaled up and down based on personal taste/machines.

What do you guys think?