1. Post #1
    whisperity's Avatar
    July 2011
    89 Posts
    SharpGMad


    I have come to the point that I am releasing a project I've been working on lately. It is the tool for manipulating the gma files. But I've rewritten it in C#.
    It supports all the default features (extract and pack) gmad has, but I've worked out something which is the reason of SharpGMad's existence. And it's the realtime access.

    What do I mean by realtime access?

    Just like how you can open a ZIP/RAR/whatever file in an archiver, you can now do the same with GMAs. You can add and remove files and then save your addon. And all the changes will be saved.
    Also, you can export files from the addon to anywhere on your HDDs and alter them. And after alteration, it's just two clicks to update the addon with the changes.

    Usage
    Simply start the application, click on the Open button and off you go. The GUI is fair and simple to use.
    For those more savvy with command-line operation, start it with realtime being the first parameter. Typing help will show you the available commands.

    Disclaimer
    Code:
    The application is provided "AS IS" with no warranty of any kind.
    Don't be scared, it's just legal talk. :) The thing is, I don't want to and can't be really responsible for any damage to your files happening from using my tool. I try to do my best to avoid bugs, but they sometimes just happen.
    As usual, you should never attempt to meddle with files you don't have an appropriate backup of. Save the original addon somewhere else in case anything happens.

    Where to download?
    Windows: .NET 4.0 is required. This usually means that operating systems below Windows XP Service Pack 3 is not supported.
    Mono: Cross-platform release is beta! With Mono, SharpGMad can be ran on Linux or OS X. Make sure you download the Mono version below.
    CAUTION! Most Linux distributions tend to install Mono 2.10 by default, which has compatibility issues. Please use a newer runtime. By the time of release, the latest version 3.2.5 seems to work fine with SharpGMad.

    Release (v1.1.2): Windows Mono
    Source code: The source code is available on GitHub

    Feedback, contributions
    Feedback is appreciated. If you have anything to say, please say it here. In terms of bug reports and suggestions, please file an issue on GitHub. Please provide as much information (related to the issue happening) as you can, including what platform you're running it on when filing a report, so I can reproduce and fix it more easily.

    Changelog:
    v1.1.2 (released 2014. 01. 05.)
    + Added cross-platform compatibility for Mono
    + Various small typo and execution fixes
    + Added ability to write legacy info.txt files when extracting
    + Added automatic discovery of info.txt files when creating
    v1.1.1 (released 2013. 12. 21.)
    - Removed not used Author field from showing until gmad supports it.
    + Added Drag and Drop support in the GUI
    + Added support for opening files currently in use by a running Garry's Mod process
    v1.1 (released 2013. 07. 25.)
    + Added ability to automatically pack old (gmod12) addon folders using info.txt or addon.txt
    + You can shell-execute a file from the archive by double-clicking it
    + Pressing the DELETE key on a file in the list will remove it
    + Fixed a typo resulting in StackOverflow
    + Reworked the way addon contents are stored fixing crashes due to running out of available memory
    + Internal changes to make debugging and development easier and the code cleaner
    + Will no longer read the file contents (consuming memory) if the file cannot be added (due to whitelist malcompliance) later on
    + Merged the functionality of "Update metadata" window into the main form
    + Improved the user-friendlyness of the graphical interface
    + Prompts to save the addon will now only show if there are unsaved modifications
    v1.0.1 (released 2013. 06. 12.)
    + Implemented the "ServerContent" tag to match the specifications dictated by gmad
    + Added multiple file extract and remove capability
    + Fixed exceptions when opening the Update metadata form for addons with less than two tags or invalid/empty values set
    + Fixed automatically selecting the addon file's folder when using the form for the legacy extractor
    v1.0 (released 2013. 06. 09.)
    + Initial release


    Enjoy!
    Reply With Quote Edit / Delete Reply Hungary Show Events Winner Winner x 36Useful Useful x 6Lua King Lua King x 1 (list)

  2. Post #2
    EvacX's Avatar
    July 2010
    2,460 Posts
    Fancy, good job.
    Reply With Quote Edit / Delete Reply Windows 7 Sweden Show Events Agree Agree x 1 (list)

  3. Post #3
    Dennab
    May 2012
    478 Posts
    This would probably be better suited for the release section, but nice job!

  4. Post #4
    taste the salty dong
    Remscar's Avatar
    September 2009
    1,821 Posts
    GCFScape but for GMad's nice work!
    Reply With Quote Edit / Delete Reply Windows 7 United States Show Events Zing Zing x 1 (list)

  5. Post #5
    My Blog
    Spencer Sharkey's Avatar
    July 2009
    1,944 Posts
    This is sick, thanks!

  6. Post #6
    Awesome Gmod Servers!
    Dannyman's Avatar
    March 2013
    521 Posts
    Love it! Thanks!

  7. Post #7
    I'm Solo.
    Chief Tiger's Avatar
    April 2010
    467 Posts
    It would be cool if you added the capability of multiple file extracting. Other than that, great application. Good job.

  8. Post #8
    whisperity's Avatar
    July 2011
    89 Posts
    This would probably be better suited for the release section, but nice job!
    If a mod seems it sufficient, they can move it of course. I thought to put it here instead because it's not likely a gamemode or addon (as in a Lua addon), and more likely just a dev tool. And garry's topic about his tool is in this subforum too.

    GCFScape but for GMad's nice work!
    I think you pretty much summed it up!

    It would be cool if you added the capability of multiple file extracting. Other than that, great application. Good job.
    In case you have a GitHub account, could you post it as an issue on the source repository? I would see it later on when I develop. But thanks for the suggestion, I'll try to keep it in mind.
    Edited:
    I have implemented it. It should be available in the next release.

    For the rest of you not quoted: thank you for the kind words. I hope it'll be useful. :)

  9. Post #9
    whisperity's Avatar
    July 2011
    89 Posts
    A new release version, v1.1 has been published. I advise everyone using my tool to switch to this version as (apart from being eye-candy updates like user-interface friendliness increase and the usage of keyboard-mouse in the GUI), it introduces a new way of handling addon contents and memory fixing the previous severe memory over-usage.

    You can find the full release notes and download link in the opening post.
    Reply With Quote Edit / Delete Reply Hungary Show Events Winner Winner x 1 (list)

  10. Post #10
    whisperity's Avatar
    July 2011
    89 Posts
    Bumpity boo. Is anyone still using this, or did my little project die? Feature requests? Bugs? Anything to say? It's been a time since I last heard about this project, let alone touched it.

    I admit I would have implemented some sort of workshop support; adding GMPublish functionality like how I did it with GMad, but gmpublish's code is not disclosed.

  11. Post #11
    danielga's Avatar
    July 2007
    285 Posts
    With Workshop addons being corrupted and what not, everything's kind of at a standstill.

    About file uploading, your best bet is to make use of the gmpulish executable as a child process. Otherwise, I would venture in the official Steamworks SDK as there seems to be some interfaces for the Workshop.

  12. Post #12
    johnnyaka's Avatar
    January 2012
    241 Posts
    Implemented Drag and Drop, waiting for you to accept (or decline :P) it

    With it, it should be more user-friendly and faster to operate with.
    Reply With Quote Edit / Delete Reply Windows 7 Germany Show Events Useful Useful x 1 (list)

  13. Post #13
    whisperity's Avatar
    July 2011
    89 Posts
    Thanks for the request, but by drag and drop, I meant that users could drop files into the archive, without needing to click on the Add file button.

    But it only needs some small changes to make it work that way. I'll do them soon.

  14. Post #14
    johnnyaka's Avatar
    January 2012
    241 Posts
    --snip, unnecessary

  15. Post #15
    whisperity's Avatar
    July 2011
    89 Posts
    --We were late. Sorry.--

  16. Post #16
    BFG9000's Avatar
    April 2011
    4,606 Posts
    Can someone compile a version for mac and/or linux?

  17. Post #17

    April 2009
    121 Posts
    Would it be possible to somehow bulk extract files to the old format?

  18. Post #18
    whisperity's Avatar
    July 2011
    89 Posts
    A new release has been pusblished. v1.1.1 brings the following changes:
    Code:
    - Removed not used Author field from showing until gmad supports it.
    + Added Drag and Drop support in the GUI
    + Added support for opening files currently in use by a running Garry's Mod process
    Download link in the opening post.
    Thanks to johnnyaka for contributing to the project.

    Can someone compile a version for mac and/or linux?
    Apart from a simple P/Invoke which makes the program able for both CLI and GUI usage, MoMA reported that the application is fully portable. I will see what a real test run can show me.

    Would it be possible to somehow bulk extract files to the old format?
    As I can see, this would only require an extra option in the LegacyExtract part creating a new info.txt... Will keep this in mind too.
    Reply With Quote Edit / Delete Reply Windows 7 Hungary Show Events Winner Winner x 1 (list)

  19. Post #19
    sacleocheater's Avatar
    February 2010
    242 Posts
    Would it be possible to somehow bulk extract files to the old format?
    This. It would make lives so much easier if that were possible.
    Doing every single addon one by one does make me want to kill myself.

  20. Post #20
    whisperity's Avatar
    July 2011
    89 Posts
    Can someone compile a version for mac and/or linux?
    Modified a few stuff for Mono. While the GUI seems to work...


    It dies horribly at the export functionality.


    (And because that VirtualBoxed Ubuntu lags horribly (pardon me, the server computer doesn't have a VGA card) I think I'll need to install a full Mono development environment somewhere.)

    Edited:
    Would it be possible to somehow bulk extract files to the old format?
    This will happen in the next release.

  21. Post #21
    skeleto's Avatar
    October 2008
    41 Posts
    Bumpity boo. Is anyone still using this, or did my little project die? Feature requests? Bugs? Anything to say? It's been a time since I last heard about this project, let alone touched it.

    I admit I would have implemented some sort of workshop support; adding GMPublish functionality like how I did it with GMad, but gmpublish's code is not disclosed.
    I always use it! S2
    It's great to see that this project stills alive (and that it's being ported to Linux, my main system). Keep going =D

  22. Post #22
    JamieH is a retarded bitch <3
    Pantho's Avatar
    July 2008
    2,183 Posts
    I had no idea someone made something so damned handy for GMA manipulation.

    <3 I shall start using it.

  23. Post #23
    whisperity's Avatar
    July 2011
    89 Posts
    Well, after a lot of annoyment with how Mono tends to handle some stuff, v1.1.2 and cross-platform support is here! Apart from that, there are only small changes (mostly typod words) and Mono-related fixes in the current patch.

    Download link and full changelog in the opening post, as usual. ;)

  24. Post #24
    Captain Westcliff: Thinks Wales is an Island
    NeoDement's Avatar
    January 2006
    17,973 Posts
    the "Legacy" convert folder to addon doesn't seem to do anything. Create is greyed out forever.

  25. Post #25
    whisperity's Avatar
    July 2011
    89 Posts
    You need to select (or type in the path of) a valid source folder (that is: it contains either an addon.json or an info.txt) for it to be enabled.
    Reply With Quote Edit / Delete Reply Hungary Show Events Informative Informative x 1 (list)