Page 2 of 3

Re: GOG uru and drizzle

Posted: Tue Feb 23, 2010 10:14 pm
by I.Brattin
Yeah its likely your age. If you get a memory error during export then its not exporting properly. Since its not exporting properly and you try and visit it, it will crash your game each and every time.

Only fix for the memoryerror is to upgrade PyPRP to 1.6 if you haven't already. I was getting a memoryerror when exporting and turns out after I upgraded to 1.6 the memoryerror stopped.

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 12:20 am
by diafero
As a side note, a broken age file can crash the game on startup already (as opposed to only crashing while linking there) as Uru then reads the index of all Plasma objects in all prp files.

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 1:15 am
by Chacal
That will become a problem when we have 1000+ Ages.

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 1:52 am
by Trylon
I think it only reads the header of the prp files, it doesn't load all of the files into memory.
Still, that would take up quite some time to load

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 3:17 am
by diafero
That's what I meant by "index" - it loads the list of which objects with which type and which name are in which page (identified by sequence prefix and page number aka sequence suffix). The actual objects are only loaded into memory when needed, and when linking to an age (where the list of objects to loaded is specified in the .age file).

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 5:12 am
by Trylon
I knew, I was just clarifying it for those who didn't ;)

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 6:14 am
by diafero
Ok :)

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 10:16 am
by Chacal
So in plain English, it reads the plSceneNode?
:)

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 10:42 am
by ddb174
There is a header at the start of each prp file that lists things such as the version, the pagename, and has a list of all the objects that will be found in the prp file. The plScenenode is one of those objects, and it does indeed act like a header, but there is also this additional header.

Re: GOG uru and drizzle

Posted: Wed Feb 24, 2010 10:53 am
by diafero
The plSceneNode only contains a list of most (all?) of the scene objects, while Uru loads the index of all objects of all types... so you can actually directly reference a texture (plMipMap) from, say, the city in your age without even loading the city textures page. Uru will then load the texture from the correct file automatically. I don't know whether and when it will be unloaded though...

AFAIK this header also lists where in the file the objects are, so that when it needs the object, it just needs to open the file, seek to the correct position and load the object saved there.