Zero Munge (r146) (NEW RELEASE) (VisualMunge replacement)

Releasing the source files for your mod or map? Post em' here. (Applies to both SWBF1 & SWBF2)

Moderator: Moderators

Resistance Leader
User avatar
Posts: 5087
Joined: Tue Feb 09, 2010 8:43 pm
Location: Los Angeles, CA
Projects :: EVERYWHERE + Zero Munge + TCW
Games I'm Playing :: Civ3 + DEHR
xbox live or psn: Marth8880

Zero Munge (r146) (NEW RELEASE) (VisualMunge replacement)

Postby Marth8880 » Wed Jan 18, 2017 11:29 pm

Image


>> Download Latest Version (r146) <<


OVERVIEW

What it is

The goal of Zero Munge is to act as a robust replacement for VisualMunge.

It is written in Visual C# for .NET Framework 4.

What it does

At its core, Zero Munge goes through a user-specified list of munge.bat files and executes each one at a time.

Zero Munge can be used to do the following things:

  • Execute a list of batch files in order
  • Toggle whether or not certain files will be executed
  • Log each file's output in real-time (with timestamps) to a log window and log file
  • Auto-detect the munge.bat file inside a selected folder and add it to the file list
  • Add typical munge.bat files (common, sides, world, etc.) for an entire project to the file list
  • For each file, copy the associated LVL file(s) to another directory
  • Save and load different "presets" of the file list's contents
  • Ability to check for updates and point user to latest release's download page

Why I made it

As some of you may know, I don't use VisualMunge to munge projects. My reasoning is a) it's extremely limited in terms of extensibility and customization, meaning it's only really useful for standard single-map projects since you can't munge multiple worlds or sides in one run, and you can't specify LVL target directories and such things; and b) it doesn't work properly for like half of the people who try to use it.

For years I've been munging my mods by running the munge.bat files manually and manually copying over LVL files - up until this year when I started writing custom munge.bat files to run multiple sides/worlds/sound folders at once and copy files for me and whatnot. However, that still isn't good enough for me: I need to be able to munge all of these folders from a single location, so I decided to build a tool that lets me do so.

And with that, I present Zero Munge.


SCREENSHOTS

Because images speak louder than blocks of text, here's some screenshots:

Hidden/Spoiler:
Image

Hidden/Spoiler:
Image

Hidden/Spoiler:
Image

Hidden/Spoiler:
Image

Hidden/Spoiler:
Image

Hidden/Spoiler:
Image



DOWNLOAD

You can download Zero Munge or view its source with the links below.

>> Download Latest Version (r146) << (release thread)

>> View Source On GitHub <<


Please keep in mind that this tool requires you to have .NET Framework 4 installed.

>> Download .NET Framework 4 <<


Previous builds:

ZeroMunge-r113.zip (release thread)
ZeroMunge-r89.zip (release thread)
ZeroMunge-r78.zip (release thread)
ZeroMunge-r42.zip (release thread)
ZeroMunge-r35.zip (release thread)
ZeroMunge-r31.zip


Please note that this is a beta release. Use this with your own mods at your own discretion (although there's no reason or way that this could really break anything, due to its nature). With that said, the tool isn't finished, so I'd love to hear everyone's suggestions and whatnot for new features, changes, etc.! Also please let me know if you're able to cause the tool to crash.
Last edited by Marth8880 on Mon Mar 26, 2018 7:05 pm, edited 20 times in total.

Gametoast Staff
User avatar
Posts: 4950
Joined: Sat Nov 03, 2007 4:55 pm
Location: SoCal, USA
Projects :: Naboo Selton

Re: Zero Munge (VisualMunge replacement)

Postby AQT » Wed Jan 18, 2017 11:34 pm

An improvement to VisualMunge? :o This should be of great help!

Space Ranger
User avatar
Posts: 6120
Joined: Tue Aug 17, 2010 3:30 pm
Location: The Ninth Circle
Projects :: The Clone Wars
Games I'm Playing :: SWBF2 TCW Mod

Re: Zero Munge (VisualMunge replacement)

Postby THEWULFMAN » Thu Jan 19, 2017 12:53 am

Now we just need a replacement to ZeroEditor.

A shame that project died, rip

Master of the Force
User avatar
Posts: 4754
Joined: Sat Sep 19, 2009 11:37 am
Location: Mos Espa (germany)
Projects :: Republic Commando Side Mod

Re: Zero Munge (VisualMunge replacement)

Postby Anakin » Thu Jan 19, 2017 5:23 am

Great work. I thought you were no programmer :wink:

Some improvement ideas:
Get all projects automatically from a base folder,
Generate all munge.bat by itself, depending on the folder structure in data_XXX
Checkbox in treestructure
Data_XXX
- common
-sides
-- rep
--cis
...

Checking a base checks all subentries and lunge it. If there is no proper mange.bat it is generated.

Jedi
User avatar
Posts: 1138
Joined: Wed Aug 21, 2013 3:55 pm
Location: San Diego
Projects :: SWBF2 PSP+PS2 Conversion

Re: Zero Munge (VisualMunge replacement)

Postby AnthonyBF2 » Thu Jan 19, 2017 8:00 am

I was just thinking about doing something like this in au3 which I still might for my personal use. Glad to see new tools after all this time, I will try it out for sure later.

Resistance Leader
User avatar
Posts: 5087
Joined: Tue Feb 09, 2010 8:43 pm
Location: Los Angeles, CA
Projects :: EVERYWHERE + Zero Munge + TCW
Games I'm Playing :: Civ3 + DEHR
xbox live or psn: Marth8880

Re: Zero Munge (r42) (VisualMunge replacement)

Postby Marth8880 » Fri Mar 31, 2017 4:07 pm

(view spoiler for r35 release thread)
Hidden/Spoiler:
@everyone: Thanks for the suggestions and whatnot! I'll look into it all in the future.

_______________________________________________

I've released a new build. Download link is below.

>> Download Outdated Version (r35) <<


Changelog:

Code: Select all
- Adjusted output log character and line limit
- Optimized the way the output log purges characters
- Changed file dialogs' default start directory to the app's current working directory

I've released a new build. Biggest additions to this update are significant performance improvements as well as user-feedback features for when a job is started/completed/aborted. Download link is below.

>> Download Outdated Version (r42) <<


Changelog:

Code: Select all
- Vastly improved performance with large output logs
- Mostly fixed scrolling behavior when output log is full
- Added functionality that logs all output to a file located in the EXE's working directory
- Added functionality that plays a sound when a job is started, when a job is completed, and when a job is aborted
- Added functionality that shows a Windows notification when a job is completed
- Added a tray icon
Last edited by Marth8880 on Sat Jan 20, 2018 2:22 pm, edited 4 times in total.

Recruit Womprat Killer
User avatar
Posts: 8
Joined: Tue May 16, 2017 6:25 am
Location: Earth
Projects :: MshViewer -- Collab with Anakin
xbox live or psn: No gamertag set

Re: Zero Munge (r42) (VisualMunge replacement)

Postby RaveYoda » Tue May 16, 2017 6:42 am

This just brings pure joy to my heart. I'm very happy to see that there are those who are still bringing out new tools to make great additions to this game.

Jedi
User avatar
Posts: 1138
Joined: Wed Aug 21, 2013 3:55 pm
Location: San Diego
Projects :: SWBF2 PSP+PS2 Conversion

Re: Zero Munge (r42) (VisualMunge replacement)

Postby AnthonyBF2 » Tue May 16, 2017 11:55 pm

I finally got around to trying this and it is okay but it could be much better with the simple ability to remember project folders. It can't remember project folders so when I run the application I have to program all the munge files I have again. For now I'm sticking with using manual munge.bat as I've always done.

Resistance Leader
User avatar
Posts: 5087
Joined: Tue Feb 09, 2010 8:43 pm
Location: Los Angeles, CA
Projects :: EVERYWHERE + Zero Munge + TCW
Games I'm Playing :: Civ3 + DEHR
xbox live or psn: Marth8880

Zero Munge (r146) (NEW RELEASE) (VisualMunge replacement)

Postby Marth8880 » Mon Mar 26, 2018 6:53 pm

(view spoiler for r78 release thread)
Hidden/Spoiler:
Image

I finally got base functionality working for saving the state of the file list to a binary file! And because I want users to be able to edit the contents of the saved files manually if they wish, I also got it to serialize the data as XML instead!

Image

Image
Also automated LVL copying is now a thing!

EDIT:

Having trouble deserializing XML, so for now it's gonna have to be binary. :( But hey, saving is still a thing now regardless!

--------------------------------------------

I've released a new build. First and foremost,

SAVING/LOADING FILE LISTS IS HERE!

Yep, that's right! It's incredibly easy to save the contents of the file list to a new file for re-loading later. On top of that is a completely revamped file list GUI and the ability to have the application automatically copy the munged LVL files to the correct locations. Please refer to the changelog for the complete list of changes. Download link to the new build is below.

>> Download Outdated Version (r78) <<


Changelog:

Code: Select all
- Added functionality for saving/loading the file list
- Completely reworked the file list
- Added functionality for copying LVL files to the proper locations
- Added a munge parser so that when you add a munge.bat file to the list, the associated LVL file(s) and staging directory are auto-detected
- Added adjustable preferences that allow users to toggle notifications, LVL file/staging directory auto-detection, etc.
- Added menu bar
- Added hotkeys for various different commands
- Added help file (basic first pass includes topics detailing the UI)

(view spoiler for r89 release thread)
Hidden/Spoiler:
I've released a new build, r89.

>> Download Outdated Version (r89) <<

Release notes:

  • Fix for Issue #2 - world LVL files are now auto-detected based on world REQ files
  • Updated links in About form

(GitHub release page)

(view spoiler for r113 release thread)
Hidden/Spoiler:
I've released a new build, r113.

>> Download Latest Version (r113) <<

Release notes:

  • Expanded functionality of world LVL auto-detection to apply to sides as well
  • Added functionality to check for application updates

(GitHub release page)

I've released a new build, r146.

>> Download Latest Version (r146) <<

CHANGELOG

    Added:

      - When an update is available, the build num/date, download link, and release notes are printed to the Output Log on application load
      - If GameDirectory is unset, user is prompted on application load to set it (#15)
      - Menu items to check for updates, report bugs, provide suggestions, view all open issues, and view changelog/license/readme files (#17)
      - User preference to toggle whether application should check for updates on startup

    Changed:

      - Output Log now updates at a timed interval when a job is running, fixing its performance issues
      - 'Remove' button now removes all selected rows instead of only the last-selected row (#13)
      - User can now target any executable when setting GameDirectory

    Fixed:

      - Stray sub-REQs are added to the Munged Files list for side REQs (#4)
      - Copy/Cut/Paste/Select All/Delete key combos in Munged Files Edit window don't do anything (#7)
      - Out-of-date tooltip text for 'Check for updates' link (#9)
      - Exception thrown when attempting to commit an empty Munged Files list (#5)
      - Exception thrown when a job finishes that contains an empty Munged Files list (#6)
      - 'Add Files...' button updates the selected row instead of always inserting a new row (#11)
      - 'Remove All' button doesn't always remove all rows from the file list (#12)
      - Exception thrown when attempting to save a file list with an empty row (#16)
      - Exception thrown when update URL domain can't be resolved during update check

(GitHub release page)

---

Let me know if you have feature requests, suggestions, etc.! :)

Return to Released Assets

Who is online

Users browsing this forum: No registered users and 2 guests