Introduction
Note
This is a read-the-docs port of the original google docs lu_file_structs, written by humanoid, lcdr and others, ported by @Xiphoseer. This is currently a proof of concept and is not guaranteed to reflect the latest changes.
The purpose of this document is to list and protocol all the information about the client files of the game LEGO Universe (at least the ones that might be helpful for the process of creating a private server).
Note that usually most of the client files are packed into .pk
files which are stored in the client/res/pack
folder and need to be extracted first to be able to work on them (see Tools section for a link to a simple extractor).
Tools
Extract PK files: LUPKExtractor (source code included, linked to from here, original post (most likely))
Decompress sd0 compressed files: https://bitbucket.org/lcdr/utils/src decompress_sd0.py
Find keys for fsb files: http://hcs64.com/files/guessfsb03.zip (linked to from here)
View .nif files http://sourceforge.net/projects/niftools/ (linked to from here)
Convert FDB to SQLite: https://bitbucket.org/lcdr/utils/src fdb_to_sqlite.py
Resources
There are scripts, which require stuff from an “TestAndExample” folder, which is missing, you can get it from here.
Official LXFML Documentation from the LEGO Group back from 2007
Common Types
Note
- id:
common
- endian:
le
- bit-endian:
le
Type vector2
Sequence
[f4] x
[f4] y
Type vector3
Sequence
[f4] x
[f4] y
[f4] z
Type object_id
Sequence
[u8] object_id
Type lot
Sequence
[s4] lot
Type quaternion
Sequence
[f4] x
[f4] y
[f4] z
[f4] w
Type quaternion_wxyz
Sequence
[f4] w
[f4] x
[f4] y
[f4] z
Type u1_str
Sequence
[u1] length
[str] str
Size:length
Encoding:ascii
Type u1_wstr
Sequence
[u1] length
[str] str
Size:length * 2
Encoding:utf-16le
Type u4_str
Sequence
[u4] length
[str] str
Size:length
Encoding:ascii
Type u4_wstr
Sequence
[u4] length
[str] str
Size:length * 2
Encoding:utf-16le
Type bool
Sequence
[u1:boolean] bool
Enum boolean
- 0:
False
- 1:
True