Skip to content

Releases: RockmanEXEZone/chaudloader

v0.8.0

25 Apr 16:25
Compare
Choose a tag to compare
  • Breaking API change: functions that return strings representing binary data now return Buffers. You shouldn't need to do anything, unless you were previously manipulating string data, in which case you should switch to the Buffer API.
  • Breaking API change: chaudloader.util.edit_msg no longer uses the returned table for editing: you must mutate the input table instead. You shouldn't need to do anything, as it is unlikely you were not just directly mutating the input table.
  • Breaking API change: chaudloader.util.merge_msg no longer returns the merged msg. You should make sure you were not using the return value of merge_msg.
  • API documentation has been moved into API.md.
  • New Buffer API for more user-friendly binary data editing. Please see API.md for more information on the Buffer API.
  • Functions are now grouped into relevant namespaces (e.g. chaudloader.pack_msg -> chaudloader.msg.pack). Compatibility shims are provided in compat.lua and automatically loaded. Most code even from v0.1 should work, as long as you haven't been inspecting the strings directly.
  • Friendlier Linux installer launcher, thanks to @ArthurCose.

v0.7.1

24 Apr 23:24
Compare
Choose a tag to compare
  • Add chaudloader.util.merge_msg.

v0.7.0

24 Apr 08:57
Compare
Choose a tag to compare
  • exe .dats are now lazily repacked: if you don't start a game, they will not be repacked.

  • Add support for unpacking msgs from mpaks via chaudloader.unpack_msg and chaudloader.pack_msg.

  • Mpak.to_raw renamed to Mpak.pack.

  • Added chaudloader.util library for directly importing TextPet patch msg format, as well as other convenience functions, e.g.:

    local exe6 = chaudloader.ExeDat("exe6.dat")
    chaudloader.util.edit_mpak(exe6, "exe6/data/msg/message_eng", function (mpak)
        chaudloader.util.merge_msgs_from_mod_directory(mpak, "msgs")
    end)

v0.6.2

23 Apr 19:42
Compare
Choose a tag to compare
  • Fix dxgi.dll issue.

v0.6.1

23 Apr 08:17
Compare
Choose a tag to compare
  • Linux release for installation on Steam Deck (untested, because I don't have a Steam Deck).
  • Add list_mod_directory and get_mod_file_metadata to API for enumerating files.

v0.6.0

23 Apr 03:23
Compare
Choose a tag to compare
  • ENV has been renamed to GAME_ENV. game_volume has been renamed to just name.
  • MOD_ENV has been added for mod introspection.
  • Lua C libraries can now be loaded via require. This is preferred over chaudloader.unsafe.init_mod_dll, as it allows Lua code to call C library functions directly instead of passing a marshaled blob.
  • Lua is now dynamically linked. The archive also comes with the Lua headers and import library the DLL was compiled with, for building Lua C libraries.
  • The installer now provides manual instructions for installing if the automatic installation doesn't work (e.g. on Steam Deck).

v0.5.0

22 Apr 16:02
Compare
Choose a tag to compare
  • Added requires_loader_version to info.toml for compatibility checking.
  • Added chaudloader.ENV to get information of the environment the mod is running in.
  • Added chaudloader.Mpak for parsing mpaks.
  • Mods that use chaudloader.unsafe must now indicate unsafe = true in their info.toml.
  • Moved init_mod_dll to chaudloader.unsafe.init_mod_dll.
  • ChaudLoaderInit should now be named chaudloader_init.

v0.4.0

22 Apr 02:30
Compare
Choose a tag to compare

For users

  • By popular demand, bnlc_mod_loader is now known as chaudloader.
  • New setup tool! Just run install.exe!

For modders

  • init.dll will no longer automatically be loaded, you must use chaudloader.init_mod_dll to load a DLL. An additional unstructured buffer may be passed to the DLL init function named ChaudLoaderInit.
  • New chaudloader API (see README.md for more information). The bnlc_mod_loader API will continue to work fine.
  • Some support for packing/unpacking mpak files.

v0.3.0

21 Apr 19:42
Compare
Choose a tag to compare
  • write_dat_contents and read_dat_contents renamed to write_exe_dat_contents and read_exe_dat_contents.
  • Temporary files are now cleaned up on restart, to avoid leaving files everywhere on your computer, and are no longer copied around a second time. However, the monkey's paw dictates that temporary files are now no longer cleaned up normal exit. Temporary files are stored in %TEMPDIR%\bnlc_mod_loader.
  • read_exe_dat_contents will now fail if the dat file to load from doesn't exist.

v0.2.0

21 Apr 18:20
Compare
Choose a tag to compare
  • bnlc_mod_loader.toml is no longer required: all mods in the mods directory will now be loaded in alphabetical order.
  • You get a copy of the README in the zip now.