A UI modding adventure

The place to discuss scripting and game modifications for X Rebirth.

Moderators: Scripting / Modding Moderators, Moderators for English X Forum

User avatar
YorrickVander
Posts: 2672
Joined: Tue, 29. Oct 13, 22:59
x4

Post by YorrickVander » Fri, 9. May 14, 23:58

I think the only way to be free of xml would be to replace the debug log/input keypress lua files, but I'm not sure what functionality could be added without connecting to mission director scripts.
X Rebirth - A Sirius Cybernetics Corporation Product

Split irritate visiting pilot with strange vocal patterns.

Night Nord
Posts: 996
Joined: Fri, 13. Jan 12, 20:09
x4

Post by Night Nord » Sat, 10. May 14, 12:55

Nah. You may process keys, you may do virtually everything within lua, but you can't change an arbitrary game state property in lua (which kinda makes sense for an UI framework). MD may change almost anything. Original implementation of command interface MadJoker was referring too as being "a weird mix or MD and lua code" was trying to split UI (made in Lua) and logic parts (various sanity checks made in MD), which probably is not so great idea (while split is a good idea, implementing different parts in different languages is definitely a bad one).

Result of moving both UI and logic into Lua while using MD only for applying Lua-calculated params into the game state is that MadJoker's implementation is not only more functional, but also shorter and cleaner, which means more readable and understandable.

IMO EgoSoft should think about implementing MD<->Lua bindings - that will help a lot. Probably changing an UI framework will be a good idea too =) Anark is... weird one.

User avatar
arc_
Posts: 62
Joined: Sat, 7. Dec 13, 21:30

Post by arc_ » Tue, 10. Jun 14, 20:49

I did some analysis on the Anark file formats (.bgp, .bgf and .bsg) and got them figured out pretty much completely. Here's the documentation.

As a summary, these are the formats involved:
  • .bgp: Binary Game Plan, defines the different states that the game can be in and the UI files that need to be loaded in each state. There's only one file of this type (ui/core/default.bgp). Its source (default.xgp, an XML file) is in the same folder.
  • .dae: Collada scene file containing the model for a specific GUI component. The game uses this file for scene hierarchy information, but the actual mesh information is retrieved from .xmf files.
  • .bgf: Binary GameFace?, defines presentation slides and animations on top of the scene nodes in the .dae.
  • .bsg: Binary Scene Graph, just a binary file containing a subset of the information in the .dae. Not sure what the point of this format is, it doesn't seem to have any added value.
  • .amw: Anark project file. Unused by the game.
I wrote a tool for converting the .bgf files to readable XML and ran it on all the files in the game. Here's the result. I'll probably make a converter in the reverse direction (.xml -> .bgf) as well, so that custom UI components will become theoretically possible.

User avatar
YorrickVander
Posts: 2672
Joined: Tue, 29. Oct 13, 22:59
x4

Post by YorrickVander » Wed, 11. Jun 14, 23:09

Outstanding arc_ ty very much for your efforts.
X Rebirth - A Sirius Cybernetics Corporation Product

Split irritate visiting pilot with strange vocal patterns.

Dealaxer
Posts: 1
Joined: Tue, 2. Jul 19, 18:13

Re: A UI modding adventure

Post by Dealaxer » Sat, 6. Jul 19, 15:46

Hello!
People, did anyone have information about the .bgf format? User arc_ has found documentation, but links are no longer available.
Help what you can.
thank

User avatar
X2-Illuminatus
Moderator (Deutsch)
Moderator (Deutsch)
Posts: 21528
Joined: Sun, 2. Apr 06, 16:38
x4

Re: A UI modding adventure

Post by X2-Illuminatus » Sun, 7. Jul 19, 09:39

Here and here you go.
Die komplette X-Roman-Reihe jetzt als Kindle E-Books! (Farnhams Legende, Nopileos, X3: Yoshiko, X3: Hüter der Tore, X3: Wächter der Erde)

Neuauflage der fünf X-Romane als Taschenbuch

The official X-novels Farnham's Legend and Nopileos as Kindle e-books! (NOW also available: X3: Yoshiko!)

Post Reply

Return to “X Rebirth - Scripts and Modding”