The nature of OXP on frame rate...

Discussion and information relevant to creating special missions, new ships, skins etc.

Moderators: winston, another_commander

User avatar
dalek501
Deadly
Deadly
Posts: 185
Joined: Sat May 17, 2008 10:47 am
Contact:

The nature of OXP on frame rate...

Post by dalek501 »

I seem to be experiencing random frame rate problems. I say random, because it doesn't neccessarily seem to be just down to the amount of action on screen.

For example leaving the station and angling up so there is nothing on screen but dust and stars, it has happened. Or plowing towards the sun for a skim when there is no other ship around. It seems to last for around 5-10 seconds sometimes (occasionally longer) before 'freeing' back up.

I have a P4 3.3 ghz, 1 gb ram and a nvidia Geforce FX5600 card with latest drivers. I have tried shutting down all unnecesary running items as far as I dare.

I was wondering exactly what the nature of the OXPs are on the frame rate? I have around 27 OXPs. Is that too many? Do they affect general play or is it only when leaving a station or hyperspacing that you experience slow-ups from them?

I can accept problems at launching or hyperspacing but I find the slowing down during play annoying! :shock: :wink:
User avatar
Disembodied
Jedi Spam Assassin
Jedi Spam Assassin
Posts: 6885
Joined: Thu Jul 12, 2007 10:54 pm
Location: Carter's Snort

Post by Disembodied »

I think it would depend on what OXPs you have. Some are hungrier than others! The version of Oolite you're using can also have an effect.

One thing about the game is that it models everything going on in the system whether you can see it or not – so somewhere, pirates are jumping traders, miners are mining asteroids, and so on. Pre- (I think) 1.69, a large object blowing up would create a LOT of debris, which all actually exists in the game, and has to be modelled (this was limited in later versions). So if you're running an older version with OXPs which can create big ships which blow up, you could have a lot of debris out there slowing things down. Or there could be lots of mission scripts holding things up. Or some combination of the above.
User avatar
dalek501
Deadly
Deadly
Posts: 185
Joined: Sat May 17, 2008 10:47 am
Contact:

Post by dalek501 »

I see. I'm running 1.71.

I've managed to shut down a virus scanner which I forgot I had running. That seems to have eased the problem. A bit.

Now I know a bit more about how OXPs work maybe I can tinker a bit and take a few out until I need them.
User avatar
Lestradae
---- E L I T E ----
---- E L I T E ----
Posts: 3095
Joined: Tue Apr 17, 2007 10:30 pm
Location: Vienna, Austria

...

Post by Lestradae »

Adding in a second gig of RAM might free up a lot.
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Disembodied gave the correct interpretation:

The main difference between any old version of Elite and Oolite is that Oolite is not player-centered. Old Elite basically worked by adding the odd ship around the player, and nothing happened outside his scanner range. And there was only interaction between NPCs and the player.

Oolite is completely different to that. As you enter a system either by jumping in or by launching after loading a game, the whole system is created and populated in all its glory. And, wherever you are in the system, all the NPCs interact not only with you, but with each other as well. So some military ships may blow up a Thargoid Carrier at the witchpoint, whilst you are in the final stages of approaching the station, or even while you are docked! You won't see it, you won't know it, nevertheless it is happening. And of course these actions need to be constantly processed. And in case of big explosions, a lot of debris is created and starts floating away from the explosion. Even if you never noticed the explosion itself, you will find every single bit of the debris hours later, penetrating deeper and deeper into the void (provided you didn't jump out an in again, of course). So Oolite has to keep track of every single entity in the system, whether it is in your angle of view or not, whether it is close enough to be drawn anyway or not.

The keeping track part is relatively easy, but creating all the parts is a relatively expensive operation, therefore the noticable studder when it happens.

The debris created from an explosion is calculated from the mass of the exploding object, which itself is calculated from its dimensions, I think. Staying with the example of the Thargoid Carrier, it is relatively huge. So in 1.65 and until a while later, blowing it up would result in creating about 300 to 400(!) pieces of alloy (after the explosion itself and the only temporarily existing wreckage components). All this debris is of course in the first split second very compact, so a lot of collisions between the small bits took place. That means that Oolite has to check every single alloy for collisions with every single other alloy, and this was even more resource-consuming. Thus, shortly after the explosion of a Thargoid Carrier, the number of entities could jump to about 400, while the number of collisions would completely jump out of the roof, to some 30.000 to 40.000(!), for about a second or two. On my system that meant a sudden drop in framerate from 100 to about 3 or 4 for about one or two seconds. Then it would return to a playable level of 50 or perhaps 33. Not to 100, because the burden of having to keep track of 300 entities still weighed on my computer. On my configuration having more than ca. 270 entities will result in a permant drop of framerate from 100 to 50. For even more entities it will drop further, although I feel it's playable also with 25 FPS. I guess the limits depend very much on the computer configuration.

Anyway, the considerable hickups produced by Thargoid Carriers lead to the programming decision to limit the debris created in explosions.

But still, if there is a lot of action going on in your system, even if you as player are nowhere near the hotspots and don't even notice, you will notice the hickups especially from creating a lot of entities in short time.
User avatar
dalek501
Deadly
Deadly
Posts: 185
Joined: Sat May 17, 2008 10:47 am
Contact:

Post by dalek501 »

Cool. All that makes sense to me! So would Lestradae's idea improve things? Or would a faster processor do the trick? Or Both!? Short of buying a new computer I may be able to stretch to more RAM if it would make a difference?
krombart
Competent
Competent
Posts: 52
Joined: Tue May 20, 2008 9:25 am

Post by krombart »

I am experiencing the same problems. My Configuration is as follows:

Athlon64 XP 3700+ (although I use a 32 bit operations system)
1024 MiB Ram (2x512 MB Dual Channel)
Samsung SP2504C HD (does read from at over 65MiB per second)
Nvidia GeForce 7300 GT

I bought 2Gib Ram and tested the above configuration with 2Gib Ram, but
the random changes in FPS are still there (Galatic Navy OXP is unplayable with this! :( )

Fortunately the store took back the 2Gib Ram Chips (as they have been of no use to me) and refunded me the money. Great Shop!

As I had the 2 Gib Ram Oolite used between 700 and 800 MiB ram. So ram is not the problem.

So .... what's the problem here?
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6682
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

How often do these slowdowns happen? Are they more than once per entry in a new system?

krombart: You are on Linux, correct?
User avatar
dalek501
Deadly
Deadly
Posts: 185
Joined: Sat May 17, 2008 10:47 am
Contact:

Post by dalek501 »

In my case yes, they can happen more than once in the same system. But the previous explanations of what is happening in each system at any given time explains it for me.

What had seemed odd to me, is that I have been in big battles with no real slow down, but then had a problem when little seemed to be happening.

But now I understand.
krombart
Competent
Competent
Posts: 52
Joined: Tue May 20, 2008 9:25 am

Post by krombart »

Yes I'm on Linux

For more verbosity: I use the Nvidia Driver 173.08 (Beta Driver)

I tested that a bit: I removed my whole addons folder, created a new jameson, edited the savegame to have 1 M credits to do a little testing.

In a flight to leesti nothing happend at all, I didn't even meet another ship.
Midway from Witchspace Beacon to Planet the FPS dropped from average 50 to average 20 for 5 seconds. My FPS is changing between 20 an 100 with an average of 50.

Do a little shopping at Leesti and flying to the next system. After Entry I meat a few ships and shot them. FPS around 60 average. Midway through the system FPS at average 20. fight midway through the system FPS at average 20.

With my whole AddOns Folder :

aegidian-special.oxp
aphidv2.oxp
AsteroidStorm.oxp
att1.oxp
behemoth.oxp
black_baron.oxp
BlackMonks.oxp
Cargo_wrecks_teaser.oxp
cobra3njx.oxp
cobraclipperPC.oxp
Commies.oxp
Config
custsounds.oxp
Dictators v1.2.oxp
Dredger.oxp
dwcobra3.oxp
eagle2.oxp
ettBeaconLauncher.oxp
Executive Spaceways v2.2.oxp
ferdelance_ng.oxp
FTZ v0.13.oxp
Fuel Tank v2.0.oxp
Galactic_Navy.oxp
genship.oxp
globestations.oxp
greekshipset1.oxp
GrittyCoriolis.oxp
gwxstations.oxp
hOopyCasino.oxp
Hotrods.oxp
impcourier2.oxp
ionics-1.2.1.oxp
ixianships.oxp
Lave.oxp
localhero_1_05.oxp
longway.oxp
murgh_Xships.oxp
newships.oxp
nuvipers.oxp
oldships.oxp
Ore_processor.oxp
outrider.oxp
RandomHits.oxp
Rock_Hermit_Locator1.2.1.oxp
spyhunter.oxp
s-ships1.oxp
System_Redux.oxp
taranis.oxp
tianve.oxp
tori.oxp
transhab.oxp
UPS-courier v1.4.0.oxp
wolfwoods_variants.oxp
x-ships.oxp
YOUR_AD_HERE.oxp
YOUR_AD_HERE_set_A.oxp
YOUR_AD_HERE_set_B.oxp
YOUR_AD_HERE_set_C.oxp
YOUR_AD_HERE_set_D.oxp
YOUR_AD_HERE_set_E.oxp
Zz-Oo-Haul.oxp

I have overall average of 20 if nothings happens and 15 to 9 in fight. So maybe one could say: "It scales, but performance was not best to start from."

Now on Oolite 1.71.2 *G*
User avatar
Commander McLane
---- E L I T E ----
---- E L I T E ----
Posts: 9520
Joined: Thu Dec 14, 2006 9:08 am
Location: a Hacker Outpost in a moderately remote area
Contact:

Post by Commander McLane »

Myself I am on a MacBook Pro with a 2GHz Core Duo, an ATI Radeon X1600 with 128MB VRam and only 512 MB Ram. Yet I have the average 100 frames per second.

But there are a few OXPs in your collection that I deinstalled, because they resulted in a considerable drop in framerate. E.g. YOUR_AD_HERE slowed my system very much down when I tried it, so I don't use it anymore.

Which galaxy are you currently in? You have a couple of local OXPs from Galaxy 1 (black_baron, Lave, longway, spyhunter, taranis and tianve) and also one from Galaxy 2 (ionics). Outside their respective galaxies they are of no real use. Although they also shouldn't consume considerable processor-power.

Ixianships features the infamous Ixian Battlecruiser, a ship bigger than a station (but you know that, you have posted the screenshots), that nevertheless attempts to dock with a station, a manoeuver that generally results in quite spectacular explosions. Until this peculiar behaviour was stopped in 1.71(?), as a further result of this the station would be knocked off its position and sent into the void with relativistic speeds, which was a particularly weird experience for those commanders who managed to be on that station while this happened, and tried to launch afterwards.

Don't know whether some of the other OXPs a particularly resource-hungry. Perhaps somebody else does?
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

My Localhero take some more ressources too. If you don't want to do these missions - just remove it. You could only rename the folder of currently unused oxps -> 'Localhero.oxp' to 'Localhero'.

BTW: What kind of oxp is 'Config' ?
User avatar
Eric Walch
Slightly Grand Rear Admiral
Slightly Grand Rear Admiral
Posts: 5536
Joined: Sat Jun 16, 2007 3:48 pm
Location: Netherlands

Post by Eric Walch »

Svengali wrote:
BTW: What kind of oxp is 'Config' ?
It is just the Config folder I assume. I also have it to override some of oolites internal files like the keyconfig.plist.
User avatar
Frame
---- E L I T E ----
---- E L I T E ----
Posts: 1477
Joined: Fri Mar 30, 2007 8:32 am
Location: Witchspace

Re: The nature of OXP on frame rate...

Post by Frame »

dalek501 wrote:
I seem to be experiencing random frame rate problems. I say random, because it doesn't neccessarily seem to be just down to the amount of action on screen.

For example leaving the station and angling up so there is nothing on screen but dust and stars, it has happened. Or plowing towards the sun for a skim when there is no other ship around. It seems to last for around 5-10 seconds sometimes (occasionally longer) before 'freeing' back up.

I have a P4 3.3 ghz, 1 gb ram and a nvidia Geforce FX5600 card with latest drivers. I have tried shutting down all unnecesary running items as far as I dare.

I was wondering exactly what the nature of the OXPs are on the frame rate? I have around 27 OXPs. Is that too many? Do they affect general play or is it only when leaving a station or hyperspacing that you experience slow-ups from them?

I can accept problems at launching or hyperspacing but I find the slowing down during play annoying! :shock: :wink:

Could you do this for me, and everybody else who wishes to test this..

Launch from a station... now hang around and see if it launches big ships with escorts...

when it does, notice if, when the first escort is launched, if your frames drop dramaticly...

Right up and until the first escort is crashing into the rear of the big ship , that is usally an Anaconda or Boa...

after that you will see the rest of the escorts launching, and your frame rate should have stabalized again..

furthemore.. abnormal behaviour...

if you stick around you will prolly see that the escorts, are either

A entering a wormhole in the docking lane
B missing the Wormhole cause the wormhole was created by the big ship that was bumped out of the docking lane, when the first escort crashed into it

In case of B

You will prolly now see scavengers in the form of some adders and a single cobra mk III, that are picking up alloys from the escort ship that crashed...

After that the scavengers come to a hold.. if there is a cobra MK III, it will usally head for the sun..

on a side note: the funny part.. the Escorts now begins to escort the adder Scavengers, the Scavengers then turn to be shuttles and head to the planet surface, where if it got escorts, the escorts will impact with the surface...
Bounty Scanner
Number 935
User avatar
CaptKev
---- E L I T E ----
---- E L I T E ----
Posts: 519
Joined: Fri Jan 26, 2007 3:21 pm
Location: Shropshire, UK

Post by CaptKev »

System Redux uses quite a bit of memory for it's 1024 x 512 textures, you could use the 256 x 128 pixel alternatives instead.
Download Fighter HUD, Stingray and System Redux from the EliteWiki
Post Reply