Page 10 of 136

Posted: Thu Dec 07, 2006 8:27 pm
by LittleBear
Doc,

As you know, the variety is caused by having lots of entries with the same role and this does not cause any slowdown. Having 48 entries all with the role Addboard does not cause a slowdown.

With my Renegade Pirates OXP I have 13 ship-entries, all different (for variety) but all with the <role>Hardpirate. If I tell Oolite:-

Code: Select all

   <array> 
      <dict> 
         <key>conditions</key> 
         <array> 
            <string>status_string equal STATUS_EXITING_WITCHSPACE</string>
	    <string>systemGovernment_number equal 0</string>
	    <string>d100_number greaterthan 70</string> 
         </array> 
         <key>do</key> 
         <array> 
	   <string>addSystemShips: hardpirate 2 0.1</string>
         </array> 
Then 2 of these hardpirates (picked of the list of 13) is added (if the conditions are met). It doesn't take Oolite any time to pick one entry with the role off the list.

However, if I'd given each one the role pirate(0.1), pirate(0.2) etc then maybe it would add to the time Oolite takes to "think about" adding a pirate ship to a system.

Besides you have replaced a native game object rather than adding somthing. Maybe Oolite doesn't like this! :shock:

I reckon if you gave each board the role Adboard and just added it by the beacon with a:-

Code: Select all

   <array> 
      <dict> 
         <key>conditions</key> 
         <array> 
            <string>status_string equal STATUS_EXITING_WITCHSPACE</string>
	    <string>systemGovernment_number greaterthan 5</string> 
         </array> 
         <key>do</key> 
         <array> 
	   <string>addSystemShips: Adboard 1 0.0</string>
         </array> 
(Puts an Adboard, randomly picked of the list of 22 Adboard entries, near the beacon rather than replacing the Beacon)

Same effect, but it is only telling Oolite to add one ship rather than replace somthing that Oolite is "expecting" to be in the system anyway.

That might stop the slowdown. I have 13 hardpirate ships as entries and I have 25 entries like the above in script to make them varied, but no slowdown when running!

I might be enterly wrong, its just that I used one role with 13 ships on the list to be called and got no slowdown. But you've replaced a game object with 22 objects with percentage chance roles and got a slow down.

On my elderly 3 year old Dell (can just run Halo, but don't even think about asking it to run Doom3 :cry: ), I play with all OXPs installed, so when Oolite adds pirates to an anarchy it is picking off a list of 100 odd ships with the role pirate to add, yet no problem! :wink:

Posted: Thu Dec 07, 2006 9:26 pm
by Dr. Nil
@LittleBear. It does depends on the amount of variety (speaking models here). I maintain that scripts have a higher processor overhead than roles. Roles are only looked for when adding a new entity with that role (the majority of this happens when populating a system) where as each script is parsed every 10 seconds or so. Since this OXP adds 48 ads to 3 kinds of boards, one ship and a station we're not talking about 13 models here :shock: By using the reduced shipdata mentioned earlier (without the Con Stores and Anacondas) the amount of used models can be brought down to 72.

But it doesn't take much to slow down my machine. I've had trouble with running at full speed since installing my first two OXPs but that hasn't deterred me from usually playing with between 80 and 90 expansions installed. Sometimes I take one out for a while, if I get mad at it for slowing me down :roll: but they always seem to find their way back :D

NB. Since you did look at the script, you do realize, that I know how to add ships, right? ;) Thanks though.

Posted: Thu Dec 07, 2006 10:02 pm
by LittleBear
No offence!

I know you are only adding ships with a one command scripit entry (thats sort of my point!) and then using roles in shipdata to add the rest. Just that with a 500 command script in Assassins, I didn't get a slow down. (And was running whist you delevoped Ad-boards as you had it installed, but no slow down! - So I don't think it is script entiries that causes slow downs!) So maybe its the percentage roles that cause a problem rather than multiple script entiries.

Bear in mind though that I have no idea how to programe and I do everything empirically, along the lines of :- "Hmm that didn't work, don't know why, I'll fiddle with this and see if this works." :wink:

Ever time you make a jump with Renegade Pirates.oxp installed, Oolite is checking 25 script possibilities and randomlly adding ships with from a list of 13 models, but doing it with role and add ship with role and that seems to work without a slowdown. :?

Posted: Thu Dec 07, 2006 10:53 pm
by Dr. Nil
People who get offended by other's lack of comprehension should stay off-line. If something has been re-explained a couple of times, and I get answers that reflect a lack of reading before writing answers on the other part, I just shrug and think, well that's the internet for you. :D

But perhaps a third time will do the trick ;)

I am talking about the number of models here. Not about the lines of script. Any slowdown a player could experience from this OXP would be due to the large number of models in memory.

On a side note I then tried to explain to you why the adding of ships via roles uses less processor power than adding them via scripts. It should be obvious why. Since the script still checks for... roles :roll: and since the all scripts are parsed every 10s. Whatever.

Posted: Fri Dec 08, 2006 9:16 am
by drew
On a more serious note - I have HUGE problems with YOUR_AD_HERE.oxp v1.0.

putting the oxp in the AddOns dir on my machine basically stops the game from working!
Same here unfortunately! Oolite runs happily without the YOUR_AD_HERE.oxp but when it's included I get long delays when loading/exiting stations/hyperspace and frequent seizes of up to a second or two in flight making the game unplayable. :cry:

Definitely this OXP it would seem. I have about 10 other OXPs loaded with no obvious difficulties. If I rename the AD OXP folder the problems go away.

Tested on my two best machines here

A Pentium IV 3.0 Ghz with NVidia 6800GT, 1Gig Ram

and

A Compaq Laptop 2.0 Ghz Pentium M, Intel 900 Graphics and 1 Gig Ram.

Not exactly bleeding edge spec I'll admit, but shouldn't be too shabby.

Cheers,

Drew.

Posted: Fri Dec 08, 2006 11:31 am
by Dr. Nil
Did you try this?
The folder .../Oolite/AddOns/YOUR_AD_HERE.oxp/Config now contains a file called Xshipdata.plist. The file can be renamed to shipdata.plist (after renaming or deleting the file with that name already in the same directory). This gives a cut down version of Your Ad Here!!! by removing the Anacondas with ads and the C-42 trading stations.
If it still doesn't do it for you, then a set with 48 ads is simply too many models to add especially considering that the signs themselves don't add anything to the gameplay. At least as long as still Oolite loads every possible model into memory when starting or until people's machines are up to something that can handle to run this amount of models.

Someone might do a version with only the stations or N-buoys or split up into 2 groups, anyone wanting to pick up on this should just go ahead.

I just fiddled with it to see something more than planet grows/sun grows/rows of goods no one trades in, spiced up with dogfights at speeds that would make WWI airplanes stall. Perhaps I just checked back in with Elite 20 years too early for the hardware to be up to the game I was looking for...

Good to know that someone out there has been working on it. I must say that Giles really did something clever by adding the OXP system. But honestly the game itself quickly did become somewhat boring quickly, and I haven't really been able to get myself to play it for the last 2-4 weeks. Still had a great time OXP'ing - and I really liked the ads supplied for this one. Oh well, reality calls and it's starting to sound quite impatient.

See you in 20 for some fragging on the stations or planetside when 'lite goes 1st person MMO and you can actually leave your ship and have pirates entering it and the graphics make Star Wars look like a home video. Best wishes to you all.

Posted: Fri Dec 08, 2006 12:18 pm
by johnsmith
If anyone wants to give me hand producing a tug which drags a big billboard all around the sytem, have a look at this thread.

https://bb.oolite.space/viewtopic.php?t=2625

Performance update:

Posted: Fri Dec 08, 2006 1:30 pm
by DaddyHoggy
@Dr. Space - Doc - you sounded a little despondant in your last post. I think your OXP is brilliant, I think we all do. I think it adds atmosphere to the game in a way nobody had thought of before and the speed at which 48 adverts 'arrived' shows that so many were keen to contribute. So, what I've done is removed all my oxps except for custsounds (added atmosphere just like yours add to the game), clearskies (because I want to be able to see the cargo cannisters/other small ships from a sensible range) and of course your_ad_here.

The game is much improved in performance - in-flight glitches are almost negligible and I can live with the few seconds pre and post hyperspace jumps.

I've already started bidding on 2nd hand memory on eBay (my mobo setup is odd - 3 DIMMS, max 1GB slot1 at 400FSB, 2GB slots1&2 at 333FSB and 3GB slots 1,2&3 at 266FSB) so I'd rather go for more memory at 266 if that's what's required for the performance boost!

I did do some performance checks last night just using task manager with the game running windowed so I could see what's happening. Before my first hyperspace jump (Isinor to Tionisla) there's a huge ramp up in processor usage (17% to 100%) for about 20s - about 500 extra handles are created and memory usage goes from about 550MB to 770MB - this pushes me into virtual memory usage. It seems to take the whole 30s just spooling up the memory and creating the handles. Once the jump is complete the memory drops back to nearer the 450-550MB mark (depending on what objects are in the system). I think the in game glitches/freezes are then caused by the OS trying to be helpful by giving back some of the newly created virtual memory because cpu usage only has a little spike 19% to c. 35% but its enough to cause a noticable pause as the 'Available memory' starts to drop back to nearer where the actual Physical memory value is. Of course next time I jump the memory usage goes up again and the CPU winds up to 100% while loads of virtual memory is created... repeat ad infinitum...

So my solution is simple - play with what I want to to make the game atmospheric (your_ad_here and custsounds) and wait until I've got oodles of memory (or a national lottery win to buy super machine) before adding any other OXPs.

Thanks again and keep up the good work.

Finally Doc (if you haven't fallen asleep reading all that) I have a question: Is the placement of the ads per system random or are they based on system govt type? I ask because I did a lot of testing last night and sadly didn't see one of my own :( (was hoping to grab some screen shots :lol: ) but I saw a lot of repeats of others (almost exclusively Billboards 4, 8, 12, 14, 15, 16, 17, 18 and 24). Do I need to get further afield in Galaxy 1? (still not too far from Lave - wandering around between Tionisla and Diso using Lave as a testing my 'aluminium behind'/rating creeping exercise in the middle of some proper trading).

If you haven't been put off by the gripes about game performance I've got some ideas for the next 48 (now I have a theme sorted out!).

Keep up the good work! :wink:

Posted: Fri Dec 08, 2006 4:04 pm
by Judebert
@Doc: I think LittleBear is just saying that, since Assassins uses scripting extensively but sees no slowdown, and YOUR-AD uses roles and sees the slowdown, perhaps the problem is with roles. IMHO, he sees your argument about scripting doing continuous checking, but tries to explain that as a non-programmer he can't follow the argument and has to rely solely on empirical data.

I'm leaning toward the models/memory argument, myself. I'll have to do some code diving, though. Oh, for some free time!

Posted: Fri Dec 08, 2006 4:21 pm
by LittleBear
Yeah! Sorry if I annoyed you Doc. I can see that loading up 210 models with 2.5 Megas of textures would cause a slowdown. All I was thinking was that perhaps Oolite only loads up the models it needs for a particular role. So maybe (and this is a guess), if all have the same role Oolite has to load all 210 models, but if each had a different role, then it would only have to load the models that are relevant to the particular board it is displaying?

For Assassins I have 60 odd models with 5.5 Megas of textures attached, but I gave each of the 60 odd ships a different role (victim1, victim2 etc). Maybe if you had the roles as addboard1, addboard2 etc and used a D role to add a board (d=1 addships addboard1 etc) then you'd still get the variety but perhaps Oolite would only load the model and texture for the Board it was actually using. I'm not critising you, I'm just trying to help with a problem on some systems, as this is a great OXP.

1st idea for next 48 'Ads'

Posted: Fri Dec 08, 2006 4:32 pm
by DaddyHoggy
Ok Doc, to get us back on track I thought I'd start with not so much an Ad but a plea for help/information - if you were rich enough, powerful enough to be a target perhaps this is how you would do it in this Ooniverse.

Maybe somebody could spin a mission based oxp off the idea - super rich - interstellar cruise - ship attacked - escorts destoyed - escape capsules deployed - one capsule picked up by attackers before Vipers arrive - perhaps simply to sell into slavery - little do they know...

Image My daughter is a little confused to why she's now green...

Besides I wanted to get 'Alien Abduction' (although I resisted the use of an exclamation mark!) onto the screen. :)

Mrs. DaddyHoggy very pleased with praise - and rather than thinking us mad she thinks we're all brilliant - I really did get one-in-a-million!

Once again - keep up the good work.

Exactly 256x128 this time too - I checked :lol:

Re: 1st idea for next 48 'Ads'

Posted: Fri Dec 08, 2006 5:04 pm
by Captain Hesperus
@DaddyHoggy
One small problem, Hatchling? Clever idea tho', a kind of Interstellar 'Amber Alert'.

Captain Hesperus
"The only thing I caught on that poster was the reward..."

D'oh!

Posted: Fri Dec 08, 2006 6:03 pm
by DaddyHoggy
@Capt. Hes

Well spotted! I will tweak and resubmit! :oops:

And yes, an "Amber Alert" kind of thing.

I also write (tempted to buy Status Quo just to see what somebody else would do in the Ooniverse) - so have a little back story in mind for this 'Ad'. [For my GSCE English (the 1st year they were run) I wrote a 38 page double side A4 follow up to "Dark Wheel" - following the adventures of Alex Ryder and his quest for Raxxla. It was 20,000 words hand written I never got it back after it was marked!]

Ah-ha

Posted: Fri Dec 08, 2006 6:06 pm
by DaddyHoggy
Of course I've updated the image online so the link's pointing at the new image...

resubmitted here (for completeness!)

:roll:

Image

Little girl is better so back to work next week - lot less postings from me then!

Posted: Sat Dec 09, 2006 3:03 am
by Dr. Nil
1.01 downdate

Lowered the number of models - Especially the texture heavy ones.

You should now be able to run this without noticing anything but the added graphics.

Pi-42's in every non-anarchy system with 4 billion or more inhabitants. And their only reason for not being there, is the matter of insurance. You didn't think they cared for their employees, did you?

Terascreen Junior in every Confederacy, Democracy and Corporate state.