emoose / MBINCompiler

Now maintained by monkeyman192: https://github.com/monkeyman192/MBINCompiler
Other
43 stars 69 forks source link

problem with large .exml files #75

Open Timo3681 opened 7 years ago

Timo3681 commented 7 years ago

MBINCompiler dows not work if i want make a .MBIN file. MBINCompiler have problems with Big changes.

http://i.imgur.com/zowrM0B.jpg

Bananasft commented 7 years ago

It would be great if you could provide your modified .exml file.

Timo3681 commented 7 years ago

http://www.mediafire.com/download/jsi97jm7eghfwau/BIRD.SCENE.exml

and

http://www.mediafire.com/download/8dqug4dc487fana/BARRENCOLOURPALETTES.exml

Timo3681 commented 7 years ago

64 x

http://www.mediafire.com/download/l5ct8hcjw4l86kx/BARRENCOLOURPALETTES64.exml

^ MBINCompiler works.

65 x

http://www.mediafire.com/download/gcbh43xvw4cvnz5/BARRENCOLOURPALETTES65.exml

^ MBINCompiler does not work.

I have testet it with 64 x and 65 x in first Part of the exml file.

emoose commented 7 years ago

The BARRENCOLOURPALETTES file can't be extended, it uses fixed arrays instead of lists, so there has to be 38 GcPaletteData entries, and 64 Colour entries inside each GcPaletteData, we can't change this as the array sizes are baked into the exe.

We should probably figure out a way to show inside the XML when a Property is a fixed-size array, atm the only real way to tell if a Property is an array or not is to browse the code which isn't exactly user-friendly...

Enums also have the same issue, as users would need to look at the code to see what values to use. Maybe these problems can be fixed by simple XML comments, hmm..

rmcolbert commented 7 years ago

Add a property to the exml for mandatory. You can ignore it or enforce the rules on recompile.

On Sun, Sep 4, 2016 at 8:37 PM -0500, "emoose" notifications@github.com<mailto:notifications@github.com> wrote:

The BARRENCOLOURPALETTES file can't be extended, it uses fixed arrays instead of lists, so there has to be 38 GcPaletteData entries, and 64 Colour entries inside each GcPaletteData, we can't change this as the array sizes are baked into the exe.

We should probably figure out a way to show inside the XML when a Property is a fixed-size array, atm the only real way to tell if a Property is an array or not is to browse the code which isn't exactly user-friendly...

Enums also have the same issue, as users would need to look at the code to see what values to use. Maybe these problems can be fixed by simple XML comments, hmm..

You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/emoose/MBINCompiler/issues/75#issuecomment-244641871, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ALUxnOOGAjpQSFFYERoLyxXe0kZSQleEks5qm3JBgaJpZM4J0P75.

emoose commented 7 years ago

We could probably check that the number of array elements in the XML match the size of the array defined in the structure, they shouldn't really differ unless the user changed something.

Timo3681 commented 7 years ago

What is wwith http://www.mediafire.com/download/jsi97jm7eghfwau/BIRD.SCENE.exml?

I add Assets from Fishs and MBINCompiler dows not work. How can i add Assets from other animals? I want all Assets on all animals.

jvarnes commented 7 years ago

Timo it looks to me the "assets" are built into the model and the scene files just give lists of them for the game to pick and choose from when creating the creatures (unhiding the ones the game chooses). Don't think you can share assets among models as they are defined through the geometry files for each individual model.