Issues in 0.4.4 RC2 so far

Describe your experience with the latest version of FreeOrion to help us improve it.

Moderator: Oberlus

Forum rules
Always mention the exact version of FreeOrion you are testing.

When reporting an issue regarding the AI, if possible provide the relevant AI log file and a save game file that demonstrates the issue.
Message
Author
User avatar
Vezzra
Release Manager, Design
Posts: 6102
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Issues in 0.4.4 RC2 so far

#1 Post by Vezzra »

Quick tests I ran since I uploaded RC2 yesterday revealed two issues so far:

1.) I got a planet with a native species and three specials. Looks like that isn't as uncommon as it should (we had that recently, don't have the time to dig up that thread right now), another instance indicating that there is something off with Pythons RNG. However, the true issue here is that two of these specials were the High Tech Natives and Medium Tech Natives specials. I don't think these two are intended to show up together, we should probably include a clause in their location conditions that prevents this.

2.) Another very strange thing I stumbled upon when I made a quick check if the update to the French stringtable by Ouaz is ok: Switching to different languages results in slightly different universes, even if the seed and all other settings are identical. Just try the default game setup with different languages and explore a bit. I have to admit I'm a bit confused - how does that work?!?

And of course there is the issue with the Monster Mix Mat brought up.

Question: Are these issues already serious enough for us to fix them for 0.4.4? Meaning, do we need RC3? I'd vote yes. 1.) should be easily fixed, at least the High/Medium Tech Natives specials showing up together, and maybe I can come up with something to counter the oddities with monsters/specials/native distribution. If I get lucky, I could provide RC3 Thursday evening. 2.) probably won't be solved so easily, so we might have to live with that for 0.4.4.

Comments?

User avatar
MatGB
Creative Contributor
Posts: 3310
Joined: Fri Jun 28, 2013 11:45 pm

Re: Issues in 0.4.4 RC2 so far

#2 Post by MatGB »

Re 2), um, zero clue, at all.

Re 1) yeah, that'd be bad if they're both on the same planet, having them in the same system is bad enough (current game, a Mu Ursh hogh tech and a Mu Ursh mid tech in the same system, protected by a Sentry. Right by my homeworld, but they got left alone for quite some time) Actually, no, it wasn't current game, it was Ring using otherwise default settings.

If you can get it done Thursday that would mean we can officially release Monday and go back to test builds still, so I'd say yes, but if not I'd say it's a very edge case issue and we're already delayed. But that wouldn't be my call.

Thus far, I've not seen anything actually buggy apart from the RNG stuff I've mentioned, galaxy gen works fine, AI placement and randomness working fine, getting different aggressiveness levels in the same game even with the default 6.

The balance issues now bugging me were never planned to be fixed for this release and will take time to test stuff, so we're good to go from my end so far, but I've only got one game played through with RC2.
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: Issues in 0.4.4 RC2 so far

#3 Post by Dilvish »

Vezzra wrote:1.) I got a planet with a native species and three specials. Looks like that isn't as uncommon as it should (we had that recently, don't have the time to dig up that thread right now), another instance indicating that there is something off with Pythons RNG. However, the true issue here is that two of these specials were the High Tech Natives and Medium Tech Natives specials. I don't think these two are intended to show up together, we should probably include a clause in their location conditions that prevents this.
I'll address this this morning, adding code to prevent the High Tech and Medium Tech Natives specials from going on to the same planet, somewhat further reducing the odds of a third special being added to a planet, and adding a histogram of how many specials get added to objects so we could see how many triplets we're really getting.
MatGB wrote:current game, a Mu Ursh hogh tech and a Mu Ursh mid tech in the same system, protected by a Sentry.
So it was two planets in the same system, one having a medium tech and the other a high tech? I've seen that before also. We could add additional requirements to prevent that, but I personally wouldn't really want to, I think it makes for a decent challenge that is generally fairly easy to simply bypass until one is ready for it. The Sentry complicates it more, and if anything I would suggest adding code to the Sentry spawner code (takes place at turn zero after placement of all specials) so that they didn't spawn in the same system as a High Tech Natives. Also Matt, could you check what settings gave you that combo? I can't replicate it.
Vezzra wrote:2.) Another very strange thing I stumbled upon when I made a quick check if the update to the French stringtable by Ouaz is ok: Switching to different languages results in slightly different universes, even if the seed and all other settings are identical. Just try the default game setup with different languages and explore a bit. I have to admit I'm a bit confused - how does that work?!?
I just reenabled supertesters and tried it out some -- the only variance I saw was on Turn zero Effects like creation of Sentries. I believe that's because the boost RNG doesn't get seeded until the first combat, and has an unspecified state at turn zero Effect processing, which could possibly be affected by memory state & chosen language. I believe the fix would simply be to have the C++ galaxy creation code seed the boost RNG with the galaxy seed before calling the python galaxy creation code. I can do that today as well.
And of course there is the issue with the Monster Mix Mat brought up.
As I explained in that thread, I don't think this likely a true problem, but I will add some reporting.
Question: Are these issues already serious enough for us to fix them for 0.4.4? Meaning, do we need RC3? I'd vote yes. 1.) should be easily fixed, at least the High/Medium Tech Natives specials showing up together, and maybe I can come up with something to counter the oddities with monsters/specials/native distribution. If I get lucky, I could provide RC3 Thursday evening. 2.) probably won't be solved so easily, so we might have to live with that for 0.4.4.
I agree about this probably being worth putting out an RC3. I'm hopeful of being able to address all the mentioned issues today.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
MatGB
Creative Contributor
Posts: 3310
Joined: Fri Jun 28, 2013 11:45 pm

Re: Issues in 0.4.4 RC2 so far

#4 Post by MatGB »

Dilvish wrote:I
So it was two planets in the same system, one having a medium tech and the other a high tech? I've seen that before also. We could add additional requirements to prevent that, but I personally wouldn't really want to, I think it makes for a decent challenge that is generally fairly easy to simply bypass until one is ready for it.
Correct, and agreed, it was just the combination of two Mu Ursh homeworlds (which get 10 defence and shield anyway), both boosted by the specials, giving a total of 50 shields and 50 damage in system even before the sentry is taken into account.
The Sentry complicates it more, and if anything I would suggest adding code to the Sentry spawner code (takes place at turn zero after placement of all specials) so that they didn't spawn in the same system as a High Tech Natives. Also Matt, could you check what settings gave you that combo? I can't replicate it.
Ring, 150 systems, seed zero, 6 AIs, all else medium (as per last weeks defaults), IIRC it was visible from the homeworld, it was definitely very very close (all my games in the last week have been default settings except for upping the AI—to prevent boredom—and changing the shape).

I think it would probably be good to reduce/prevent sentries and sentinels from spawning with high tech natives, that can be a nasty combination and if a player gets stuck behind it it would almost certainly be game breaking, which isn't good.
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: Issues in 0.4.4 RC2 so far

#5 Post by Dilvish »

MatGB wrote:Ring, 150 systems, seed zero, 6 AIs, all else medium (as per last weeks defaults), IIRC it was visible from the homeworld
I'm not able to replicate that. Could you verify, and then perhaps also post a screenshot so I can see where it is & whether we're at least winding up with the same system layout, etc?
I think it would probably be good to reduce/prevent sentries and sentinels from spawning with high tech natives, that can be a nasty combination and if a player gets stuck behind it it would almost certainly be game breaking, which isn't good.
I agree about Sentries, particularly since it's no big deal if their special goes without a guard. Since Sentinels are guarding Ancient Ruins & a high tech native doesn't make a substitute guard, I'm inclined to leave it as it is, at least for now. Figuring out some better treatment for that is more than I want to take on today.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
Vezzra
Release Manager, Design
Posts: 6102
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Issues in 0.4.4 RC2 so far

#6 Post by Vezzra »

Dilvish wrote:I just reenabled supertesters and tried it out some -- the only variance I saw was on Turn zero Effects like creation of Sentries.
Vanilla 0.4.4 RC2 install, two "quickstart" games (meaning all default settings), turn 3. First screenshot of game with language set to English, second screenshot of game with language set to French:
Default_Game_English.jpg
Default_Game_English.jpg (402.91 KiB) Viewed 1367 times
Default_Game_French.jpg
Default_Game_French.jpg (416.88 KiB) Viewed 1367 times
Different specials, different native placement, different star system names - curiously enough, not completely different, but different. Definitely differences happening during universe generation. I can reproduce the same results on Windows, so it's not platform specific.
And of course there is the issue with the Monster Mix Mat brought up.
As I explained in that thread, I don't think this likely a true problem, but I will add some reporting.
Ok, lets see what turns up.

User avatar
Vezzra
Release Manager, Design
Posts: 6102
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Issues in 0.4.4 RC2 so far

#7 Post by Vezzra »

Dilvish wrote:I'm not able to replicate that.
You might need to disable Super Testers, that is, reset to vanilla install. In theory, that shouldn't make any difference, but if the language causes deviations, this might too.

mileser
Space Squid
Posts: 57
Joined: Thu May 15, 2014 2:32 pm

Re: Issues in 0.4.4 RC2 so far

#8 Post by mileser »

Well, I seem to recall that when there's been changes to en.txt, there have been similar changes. I start a new game, using the same settings as the previous game version (all settings the same and same seed) the star layout and starlanes will remain the same, planets will remain the same in system, however, specials will change, star names will change, locations of native species will change.

I don't have any saves, but if my recollection is correct, would explain why a different language file may yield slightly different results as well.
OS: OS X 10.10 Yosemite, XCode 6.01
Also: If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
Vezzra
Release Manager, Design
Posts: 6102
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Issues in 0.4.4 RC2 so far

#9 Post by Vezzra »

mileser wrote:Well, I seem to recall that when there's been changes to en.txt, there have been similar changes. I start a new game, using the same settings as the previous game version (all settings the same and same seed) the star layout and starlanes will remain the same, planets will remain the same in system, however, specials will change, star names will change, locations of native species will change.
That's mildly confusing :? I mean, I can understand how changing e.g. the starnames list in the stringtables might affect the outcome of the various random functions (list gets longer or shorter, a call to the random.shuffle function with that list yields a different result, and the process continues with a different state of the RNG). But these lists should be identical in the French and English stringtables... I guess I'll test what happens if I put the naming of star systems at the end of universe generation...

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13603
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: Issues in 0.4.4 RC2 so far

#10 Post by Geoff the Medio »

For reference, whether using fr.txt or en.txt, I get the same first 10 results of generating a random int from 0 to 10 from the same random seed (0) from the Python generator:

Code: Select all

    # initialize RNG
    random.seed(gsd.seed)
    
    print "first few random results from seed: ", gsd.seed
    for i in range(0, 10):
        print random.randint(0, 10)
Produces:

Code: Select all

2014-08-19 22:19:56,788 DEBUG Server : first few random results from seed:  0
2014-08-19 22:19:56,788 DEBUG Server : 1
2014-08-19 22:19:56,788 DEBUG Server : 1
2014-08-19 22:19:56,788 DEBUG Server : 10
2014-08-19 22:19:56,788 DEBUG Server : 6
2014-08-19 22:19:56,789 DEBUG Server : 4
2014-08-19 22:19:56,789 DEBUG Server : 10
2014-08-19 22:19:56,789 DEBUG Server : 4
2014-08-19 22:19:56,789 DEBUG Server : 0
2014-08-19 22:19:56,789 DEBUG Server : 0
2014-08-19 22:19:56,789 DEBUG Server : 9

User avatar
Ouaz
Dyson Forest
Posts: 232
Joined: Wed Aug 13, 2014 7:21 pm
Location: France

Re: Issues in 0.4.4 RC2 so far

#11 Post by Ouaz »

Vezzra wrote:
Dilvish wrote:Different specials, different native placement, different star system names - curiously enough, not completely different, but different.
I don't know if it's relevant, but it was already happening with the RC1 build (during my many translation tests), using the same seed:

> different star names: each time. Aren't the star names picked randomly?

> different native placement: one time. A raaagh species didn't appear on a given planet, whereas it appeared each time on this same planet (and it was always the raaagh).

> Different specials: each time. The special was always on the same planet, but always a different one.
I release every updated file under the CC-BY-SA 3.0 license.

User avatar
Dilvish
AI Lead and Programmer Emeritus
Posts: 4768
Joined: Sat Sep 22, 2012 6:25 pm

Re: Issues in 0.4.4 RC2 so far

#12 Post by Dilvish »

Bah, I just lost a long post here, but to summarize: attached is a patch fixing a number of issues and adding logging.

Re the language thing, everywhere I can think of the seed is properly set. There are some minor (one unicode character but perhaps multiple bytes) differences in some starnames that I supposed could conceivable fit with the theory of starname differences throwing off the RNG; I'll be interested to hear the results of Vezzra's experiment with that.

I adjusted scripts so that Sentries will not spawn in a system with High Tech Natives, nor will any planet have both High Tech and Mid Tech native specials. I also reduced the odds of concurrent specials and added reporting for that.

The monster placement is looking ok to me, I added a fair bit of reporting on that front. Now not just successful placements are reported, but also rejections:

Code: Select all

2014-08-19 15:39:30,054 DEBUG Server : 		 At system  189 rejected monster fleet SM_TREE from 1 suitable fleets
as well as an expectation summary:

Code: Select all

2014-08-19 15:39:30,055 DEBUG Server : Actual # monster fleets placed: 2; Total Placement Expectation: 2.3
and additional info on key monsters & nests:

Code: Select all

2014-08-19 15:39:30,092 DEBUG Server : Tracked Monster and Nest Summary (base monster freq:  3.3%)
2014-08-19 15:39:30,092 DEBUG Server : Monster            | # placed | # valid sys locs | # valid nest planet locs
2014-08-19 15:39:30,092 DEBUG Server : SM_KRAKEN_1        |      0   |         14       |   74
2014-08-19 15:39:30,092 DEBUG Server : SM_SNOWFLAKE_1     |      1   |         23       |   74
2014-08-19 15:39:30,092 DEBUG Server : SM_JUGGERNAUT_1    |      0   |          4       |   74
The actually spawned Nests would have to be checked via supertesters (or Moderated Multiplayer) and objects window after game start. I did some experiments with number of systems and galaxy shape and the actually placed monsters did pretty much vary along the lines I mentioned earlier.

I'm committing this to trunk (r 7514 and 7515) but will hold off on 0.4.4 since we may not want to throw in the extra logging or whatnot at this point. **Edit** Also, there is a bug in this valid nest location reporting-- it is somehow counting the same planets as valid for all the nests (I verified that, it's not just a coincidence the above numbers are the same). I don't see why this is happening, if someone else could doublecheck it would be appreciated.
Attachments

[The extension patch has been deactivated and can no longer be displayed.]

If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
MatGB
Creative Contributor
Posts: 3310
Joined: Fri Jun 28, 2013 11:45 pm

Re: Issues in 0.4.4 RC2 so far

#13 Post by MatGB »

Dilvish wrote:
MatGB wrote:Ring, 150 systems, seed zero, 6 AIs, all else medium (as per last weeks defaults), IIRC it was visible from the homeworld
I'm not able to replicate that. Could you verify, and then perhaps also post a screenshot so I can see where it is & whether we're at least winding up with the same system layout, etc?
multi-special-mu-ursh.png
multi-special-mu-ursh.png (355.21 KiB) Viewed 1340 times
Note, this was on RC1, and it actually might have been after I'd applied a patch we'd been discussing, possibly the species patch changing AI mix, which would have changed things, so many games played last week I know this one was before RC2.

Note also, I was misremembering, it was only one high tech natives, but a different special on the other world, so replication not helpful. But given it's turn 148 and I've only just recently taken the place (alongside 3/4 the rest of the ring, I got bored once I'd explored it and stopped), it was still a major annoyance, combined defences of 50/50 with a sentry in one system is enough to destroy multiple ships in the early to mid game.
I think it would probably be good to reduce/prevent sentries and sentinels from spawning with high tech natives, that can be a nasty combination and if a player gets stuck behind it it would almost certainly be game breaking, which isn't good.
I agree about Sentries, particularly since it's no big deal if their special goes without a guard. Since Sentinels are guarding Ancient Ruins & a high tech native doesn't make a substitute guard, I'm inclined to leave it as it is, at least for now. Figuring out some better treatment for that is more than I want to take on today.[/quote]
That's fair enough and agree, Sentinels protect high end stuff, it'd definitely be worth us rethinking the way all specials and stuff spawn at some point, or at least how they spawn in combination.
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

User avatar
Vezzra
Release Manager, Design
Posts: 6102
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Issues in 0.4.4 RC2 so far

#14 Post by Vezzra »

Dilvish wrote:attached is a patch fixing a number of issues and adding logging
Today I'm busy, so I can't give much feedback ATM, tomorrow will be dedicated to FO.

However, one thing I noticed:

Code: Select all

continuetracked_monsters_location_summary
Um, what's that supposed to be...?

This is on line 83 in the patched monsters.py, in this code section:

Code: Select all

        # create monster fleet
        monster_fleet = fo.create_monster_fleet(system)
        # if fleet creation fails, report an error and try to continue with next system
        if monster_fleet == fo.invalid_object():
            util.report_error("Python generate_monsters: unable to create new monster fleet %s" % fleet_plan.name())
            continuetracked_monsters_location_summary
Looks like a typo, I'd just expect the "continue" statement here, but what to do with the "tracked_monsters_location_summary"? Just delete it, or should that go somewhere else?

User avatar
mem359
Dyson Forest
Posts: 214
Joined: Sun Jun 08, 2014 1:18 am

Re: Issues in 0.4.4 RC2 so far

#15 Post by mem359 »

mileser wrote:I start a new game, using the same settings as the previous game version (all settings the same and same seed) the star layout and starlanes will remain the same, planets will remain the same in system, however, specials will change, star names will change, locations of native species will change.
I've seen this too.
I was trying to check something about Experimentors. I happened to get them in almost every new game (using the same seed and settings, 6 times in a row, checking with Super Testers), but their location in the galaxy changed quite a bit.

Post Reply