Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How feasible would it be to allow MBINCompiler to output more standardized xml formats? #93

Open
theFisher86 opened this issue Sep 20, 2016 · 1 comment

Comments

@theFisher86
Copy link

I'm not sure how feasible this is but if it was a simple change to make MBINCompiler output exml files in the format :
<TemplateName type="DATA"> <PropertyName type="PROPERTY">ActualValue</PropertyName> </TemplateName>
Instead of :
<Data template="TemplateName"> <Property name="PropertyName" value="ActualValue" /> </Data
We would be able to use standard XML Tree Building software and even Excel to make edits to the exml files (in excel we could update multiple values at once with a formula which would make it much easier to make large scale changes) and just all around make everything easier to use. I'm not sure if this is something that could be done easily or if it's a big request but I know it'd make mod building much easier if we could import exml files directly into excel, mass edit them and then export them back to the file.

I made a small program to convert exml to xml just to see how it would work, while it doesn't work correctly and the edited xml files can't be recompiled in their current state I'm pretty sure that is due to my lack of knowledge not that it isn't possible.

@emoose
Copy link
Owner

emoose commented Sep 20, 2016

Well EXML files are my attempt at copying the MXML format that NMS uses, unfortunately there's only 3 MXML files I've been able to look at (in the Binaries/SETTINGS/ folder), so it's probably not that compatible yet since we don't really know how lists/arrays/etc are meant to be formatted (see #79)

But if we did get it outputting proper MXML files the game should be able to load them instead of the MBINs, meaning no need to recompile to MBIN and much less time needed for modding (edit MXML -> restart game, instead of needing any compilation or anything in between)

The
<Data template="TemplateName"> <Property name="PropertyName" value="ActualValue" /> </Data>
format is how the games MXML files do it, so we can't really change that, though in the future once the serializer stuff is refactored it'd probably be pretty easy to add a new XML format to MBINC, which you could export to and compile it to MBIN/convert to MXML etc. I wouldn't advise trying that with the current code though since it's pretty messy atm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants