List view
Although all exceptions are caught by MBINCompiler for crash handling, many system exceptions are not handled explicitly, leaving the error messages very generic and unhelpful. All exceptions should be intercepted near the point they are thrown so that they can be handled more gracefully within context.
No due date•1/3 issues closedOptimize and simplify manual testing procedures. Refactor MBINCompilerTests project so it is only automated unit tests. Assess and refactor unit tests to ensure they are reliable and useful. Refactor libMBIN code so that it is easier to isolate and test functionality. Integrate unit testing with travis-ci.
No due date•3/4 issues closedThe goal of this milestone is to make it easier to compare and diff the MBIN and EXML files by fixing issues and addressing discrepancies that lead to inaccurate reproduction. libMBIN currently produces lossy data, meaning that when a vanilla MBIN is converted to EXML and then back to MBIN it does not exactly match the vanilla MBIN. This is partly because libMBIN uses different header data than in vanilla and is intentional, but there are other cases where actual game data is not reliably reproduced, leading to many false-positives when doing comparisons of MBIN or EXML files.
No due date•1/6 issues closedBoth end-user and developer documentation are severely lacking or non-existent. There should be: - information for how to contribute to the project, any code styling requirements, etc. - a newcomer guide for greenhorns. - docs for how to build and test the project. - docs for any special project configurations, advice, tips, etc. - docs for any tools and manual processes, such as the Release/Prerelease process. - design and technical specifications to describe the software architecture. - libMBIN API documentation - NMS Struct documentation Other things: - docs for reverse engineering - modding primer, tips and resources Some documentation is better suited for the wiki. Some should be distributed with the source.
No due date•1/3 issues closedVarious issues and considerations need to be addressed regarding how the NMS data structs are defined and how they are organized to improve the API and to more closely match how the actual structs would be defined by HG. Some key things: - blittable data structs - decouple from NMSTemplate and serialization - formalize and explicitly define all possible types used in data struct fields
No due date•0/3 issues closedFor the API to be useful externally from the MBINCompiler project, the code will need to be re-designed to accommodate other potential use-cases, to simplify it's general functionality and provide documentation for the exposed (public) API. This milestone may need to be split as this is a big job.
No due date•2/5 issues closed