/NintenTools.MarioKart8

.NET library and tools to load and modify Mario Kart 8 file formats.

Primary LanguageC#MIT LicenseMIT

NintenTools.MarioKart8

This is a collection of .NET libraries and tools to handle typical Mario Kart 8 file formats, wrapping them in object oriented libraries and programs to handle them, closely trying to resemble what the original game developer tools might have provided to create the files.

The library is available as a NuGet package.

Usage

Right now, the following usage cases are possible:

  • Loading, modifying and saving the contents of objflow.byaml with the help of ObjDefinitionDb.
  • Loading, modifying and saving the contents of a *_muunt*.byaml file with the help of CourseDefinition.
  • Dumping the contents of *.bin files.
  • Loading the contents of Performance.bin into strongly typed structures.

Tools

The repository contains the following command line tools. Please note these were developed for testing purposes and do not receive support.

  • Adjust200: Takes a course_muunt.byaml and adds Adjuster200cc Objs into it from a course_muunt_200.byaml file in the same directory, overwriting the latter to create a new 200cc BYAML file.
  • BinDumper: Dumps the data of *.bin files as found in their section, group and element hierarchy.
  • NoLakitu: Removes EnemyPath and LapPath from a *_muunt*.byaml (and Objs having referenced those) in order to get rid of Lakitu who would prevent you from going out of bounds.
  • ObjDumper: Dumps the information found in objflow.byaml into a readable table.
  • Performance Editor: Shows physics and point set details of a 4.1 Performance.bin file and allows editing and saving new versions. Performance Editor