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: ShadoCat
« on: January 22, 2010, 04:30:37 PM »

Quote from: "Steve Walmsley"
v4.9 contains the new code for interrupts so there should be far fewer. Interrupts will only occur if a player race (defined as non-NPR rather than Player Race gov type) is either the subject of the event or the detected race in a detection event. Nothing yet on the progress indicator but I will get back to that.

Ctrl-F8 on the System Map should interrupt automated turns in v4.9

Coolness.

I just started a new test campaign.  Maybe I'll finish OOBing my starting ships and run a turn this time before rebooting.  :)
Posted by: Steve Walmsley
« on: January 22, 2010, 09:45:55 AM »

Quote from: "sloanjh"
Two comments:

1)  As was already observed, it should stop for any player race, not just the default.

2)  You should have some sort of progress indicator (maybe by updating the "current date/time" in the window) so people know that time is progressing, how fast it's progressing, and when they can expect it to "come up for air".  Otherwise we won't be able to tell if it's hung or not.

3)  There should be some way of interruptting, (similar to turning off automated turns now) that allows the player to tell Aurora to stop at the next convenient spot.

John

PS - Ok, so I can't count :-)
v4.9 contains the new code for interrupts so there should be far fewer. Interrupts will only occur if a player race (defined as non-NPR rather than Player Race gov type) is either the subject of the event or the detected race in a detection event. Nothing yet on the progress indicator but I will get back to that.

Ctrl-F8 on the System Map should interrupt automated turns in v4.9

Steve
Posted by: welchbloke
« on: January 21, 2010, 06:04:09 AM »

Quote from: "ShadoCat"
Quote from: "sloanjh"
Two comments:

2)  You should have some sort of progress indicator (maybe by updating the "current date/time" in the window) so people know that time is progressing, how fast it's progressing, and when they can expect it to "come up for air".  Otherwise we won't be able to tell if it's hung or not.

3)  There should be some way of interruptting, (similar to turning off automated turns now) that allows the player to tell Aurora to stop at the next convenient spot.

John

PS - Ok, so I can't count :)
I know this should be in the suggestion thread (can you move it Erik?) but I would agree that the 2 ideas above (would it be 1 idea if we were using base John instead of base10?) are good.
Posted by: ShadoCat
« on: January 20, 2010, 04:58:12 PM »

Quote from: "sloanjh"
Two comments:

2)  You should have some sort of progress indicator (maybe by updating the "current date/time" in the window) so people know that time is progressing, how fast it's progressing, and when they can expect it to "come up for air".  Otherwise we won't be able to tell if it's hung or not.

3)  There should be some way of interruptting, (similar to turning off automated turns now) that allows the player to tell Aurora to stop at the next convenient spot.

John

PS - Ok, so I can't count :)
Posted by: Andrew
« on: January 19, 2010, 04:33:27 PM »

Quote from: "sloanjh"
Two comments:

1)  As was already observed, it should stop for any player race, not just the default.

2)  You should have some sort of progress indicator (maybe by updating the "current date/time" in the window) so people know that time is progressing, how fast it's progressing, and when they can expect it to "come up for air".  Otherwise we won't be able to tell if it's hung or not.

3)  There should be some way of interruptting, (similar to turning off automated turns now) that allows the player to tell Aurora to stop at the next convenient spot.

John

PS - Ok, so I can't count :-)
It would be useful for autoturns to be be able to set a time increment for them to run.
Also and related during a battle there are often periods where I am manuallyusing 5 second increments , but could happily autorun 5 second icnrements but every time my point defense missile launchers cycle and try to fire or an antimissile hits a target the game pauses. It woudl be nice to be able to autorun through this until a missile hits a ship or something similar as when I have set up the missile defenses there is not much else I can do so being able to autorun for a few minutes would be helpful
Posted by: sloanjh
« on: January 19, 2010, 04:04:11 PM »

Two comments:

1)  As was already observed, it should stop for any player race, not just the default.

2)  You should have some sort of progress indicator (maybe by updating the "current date/time" in the window) so people know that time is progressing, how fast it's progressing, and when they can expect it to "come up for air".  Otherwise we won't be able to tell if it's hung or not.

3)  There should be some way of interruptting, (similar to turning off automated turns now) that allows the player to tell Aurora to stop at the next convenient spot.

John

PS - Ok, so I can't count :-)
Posted by: Steve Walmsley
« on: January 19, 2010, 01:16:00 AM »

Quote from: "ShadoCat"
Quote from: "Steve Walmsley"
I have been thinking further on this and might go for something a little more radical. I might set things up so that there are no interrupts except for events directly involving for the current default race (which is almost certainly the player race) or if the default race is indirectly involved by being the target of a contact event by an NPR. This might mean some weird behaviour in terms of initial NPR vs NPR contacts but if a tree falls in the forest... :)

The main problem I can think of is if there are multiple player races but as you mentioned I could probably change the above to a check against all non-NPRs, rather than just the default race.

Steve
Posted by: ShadoCat
« on: January 19, 2010, 01:05:30 AM »

Quote from: "Steve Walmsley"
I have been thinking further on this and might go for something a little more radical. I might set things up so that there are no interrupts except for events directly involving for the current default race (which is almost certainly the player race) or if the default race is indirectly involved by being the target of a contact event by an NPR. This might mean some weird behaviour in terms of initial NPR vs NPR contacts but if a tree falls in the forest... :). There would still be some shortened increments though once NPR vs NPR combat began as the program itself would be setting those, not the NPR. How does that sound?

This would be perfect.

You could do this by having racial interrupts.  Each race would have it's own interrupt code.   The program would check the interrupt to see which race needs to handle it.  If it is a player race, then the game pauses, otherwise, it just runs code.

This would also be one step onto making Aurora a multi player game.
Posted by: Steve Walmsley
« on: January 18, 2010, 11:56:02 PM »

Quote from: "sloanjh"
Sounds like the right direction - I've felt for a while now that Aurora over-interrupts for neutral/non-hostile contacts.  In addition, flushing the class objects and reloading them has got to be a huge time burden - I suspect that the added checks in looking at the type of interrupt will be negligle in comparison.  Look at it this way:  the proposal is to do an additional check before an interrupt that says "hey, I don't need to interrupt after all".  This check will almost certainly require a small fraction of the time wasted by dumping the object model and reloading.  In addition, if it doesn't knock out a large percentage of interrupts, then it's a worthless change.  So you're almost certain to win big - how big depends on what percentage of the interrupts you can get rid of.
I have been thinking further on this and might go for something a little more radical. I might set things up so that there are no interrupts except for events directly involving for the current default race (which is almost certainly the player race) or if the default race is indirectly involved by being the target of a contact event by an NPR. This might mean some weird behaviour in terms of initial NPR vs NPR contacts but if a tree falls in the forest... :). There would still be some shortened increments though once NPR vs NPR combat began as the program itself would be setting those, not the NPR. How does that sound?

Steve
Posted by: sloanjh
« on: January 18, 2010, 04:45:57 PM »

Sounds like the right direction - I've felt for a while now that Aurora over-interrupts for neutral/non-hostile contacts.  In addition, flushing the class objects and reloading them has got to be a huge time burden - I suspect that the added checks in looking at the type of interrupt will be negligle in comparison.  Look at it this way:  the proposal is to do an additional check before an interrupt that says "hey, I don't need to interrupt after all".  This check will almost certainly require a small fraction of the time wasted by dumping the object model and reloading.  In addition, if it doesn't knock out a large percentage of interrupts, then it's a worthless change.  So you're almost certain to win big - how big depends on what percentage of the interrupts you can get rid of.

John
Posted by: Steve Walmsley
« on: January 18, 2010, 01:11:41 PM »

I don't think this campaign is going to be a goer due to the high number of interrupts. However, I have had a couple of ideas with regard to reducing the total interrupts caused by NPRs. Bear in mind btw that interrupts for NPRs are different from short increments set by the program due to imminent combat or interceptions.

The first idea is that NPRs don't need to interrupt for as many events as the player race. For example, if you build a new shipyard you want the game to stop while you decide what to build in it. An NPR doesn't need to stop time because the AI code will decide what it needs to build. Similarly, if a system is surveyed you will want time to stop so you can perhaps re-order your survey ships. An NPR doesn't need to stop as it will decide during the NPR movement section of the next increment. Which means that I can create two sets of interrupts flags. One for player races and a smaller subset for NPRs. However, NPRs will still need to cause interrupts for new contacts so they can react and that is the most common cause of interrupts.

The second idea is linked to the suggestion by a few people that there shouldn't be interrupts unless the player is directly affected. While that won't work in general terms because NPRs still need to move in small increment during combat, it might be worth reducing the amount of interrupts by not interrupting for non-hostile contacts or lost contacts for NPRs unless those contacts involve a player race. Against other NPRs the only interrupt contact event would be for new hostile contacts.

The downside of this is a lot more checking each time an event is generated (is this an NPR? is the player race involved? etc.) but the negative impact on performance should be offset by fewer interrupts and therefore fewer truncated increments. Of course, none of the above would affect actual NPR combat but automated turns should take care of that in most cases. The other drawback is this would involve a DB change which means a v4.9 rather than v4.83.

Comments welcome

Steve
Posted by: SteveAlt
« on: January 17, 2010, 12:35:03 AM »

Quote from: "Beersatron"
I notice that all of the other NPR nations are designated with [SOL] in the System Map. Could you make that a bit 'smarter' and have them display the actual Empire name instead of the original system name that they are detected in?

I think somebody mentioned before that it would be cool if the name of the Empire updated to what they call themselves after communication has been established.
The SOL was because the aliens were initially called Sol Aliens #1, Sol Aliens #2, etc. I changed the abbreviations once I spotted that. It would be cool if the Empire name was updated correctly and I would do it now if I wasn't so tired after a losing night :). I'll tackle it after I get some sleep.

Steve
Posted by: Erik L
« on: January 16, 2010, 07:51:47 PM »

Quote from: "Beersatron"
I notice that all of the other NPR nations are designated with [SOL] in the System Map. Could you make that a bit 'smarter' and have them display the actual Empire name instead of the original system name that they are detected in?

I think somebody mentioned before that it would be cool if the name of the Empire updated to what they call themselves after communication has been established.

Or at least have it display an abbreviation of what the player names the race.
Posted by: Beersatron
« on: January 16, 2010, 07:45:09 PM »

I notice that all of the other NPR nations are designated with [SOL] in the System Map. Could you make that a bit 'smarter' and have them display the actual Empire name instead of the original system name that they are detected in?

I think somebody mentioned before that it would be cool if the name of the Empire updated to what they call themselves after communication has been established.
Posted by: waresky
« on: January 16, 2010, 12:42:31 PM »

Asd..75000tons..what?:D..

Am curious to show when all Nations fall into "all out War"..:P