SonMapEd is pretty old, having last been updated in 2007, but for the last decade it has served as my go-to sprite editor and converter. Unfortunately, there are a few places where it shows its age, such as its inefficient data compression, blurriness on high-DPI displays, and shoddy DPLC generation. Due to SonMapEd being closed-source software, it is not possible to address these issues without complex low-level reverse engineering of the EXE. Additionally, being nothing more than a closed-source EXE, SonMapEd lacks native support for other operating systems (such as Linux) and CPU architectures (such as ARM). I hope to bring an end to these problems and more with the release of my open source, portable SonMapEd clone - ClownMapEd! Features: Written in modern C++! Support for Windows, Linux, and presumably many other desktop operating systems, owing to the portability of the Qt framework! Support for high-DPI displays, eliminating the blurriness that plagues SonMapEd! Vastly-improved DPLC generation, producing data that is even more efficient than that in the original games, and far more efficient than that of SonMapEd! Improved data compression, by leveraging Flamewing's 'mdcomp' compression library! Support for the Kosinski+ and Comper compression formats! Improved colour-matching for sprite importing, leveraging the Delta-E 2000 colour difference algorithm! Additional keyboard shortcuts that benefit users of alternate keyboard layouts! An accurate clone of SonMapEd, meaning that anyone who is familiar with it will be right at home with ClownMapEd! Not based on the bloated Electron framework, unlike a certain other open source sprite editor! Screenshot: Spoiler Source Code: https://github.com/Clownacy/clownmaped Windows Executable & Linux AppImage: https://github.com/Clownacy/clownmaped/releases
WHAAAAT?! Never expected anything like this to happen! This is really cool to see! I know Flex 2 happens to be the go-to sprite/mapping editor for MD Sonic games these days, but it’s nice to see an alternative happen (which also happens to be an improvement over the original SonMapEd, which I also use a lot; Flex and Flex 2 also aims to improve upon SonMapEd’s functionalities as well in their own ways). I’m probably going to use this over SonMapEd; it’s going to be pretty interesting to me since I’ve used SonMapEd a lot, especially since I started ROM hacking back in 2016.
OMG. Thank you, thank you so much! I was sick of SonMapEd's bugs and problems, and I find Flex 2 counter-intuitive and buggy. I'm going to test this right away, and of course, great job!
The assembler, then the emulator. NOW THIS! Holy moly clownacy, you're on too much smoke. I'll try this soon and give my feedback.
I've moved on to Flex2, but I do fall back to SonMapEd occasionally when Flex2s' 'project' system doesn't really fit the task at hand, liking viewing vram dumps and making mappings around them (and SonMapEd is still very temperamental X3). Looks extremely faithful too. Looking forward to trying this out! Also happy to see more tools become multiplatform, felt really weird having sonic hacking be windows only.
When I try to load art, mappings and DPLC of a shield with ClownMapEd. My game lags and all frames are glitched. Wtf?
Could you send me the art, mappings, and DPLC files for that shield so that I can check what's wrong with them?
I managed to do what I wanted to do with SonMapEd finally and when I tried to load the whole thing into ClownMapEd to try again and give you the files, it gives me an error message (normal you said your software used a more efficient method). I'll send you more files later!
With ClownMapEd, on linux running under wine, my hack's sonic sprites won't load their dplcs with their mappings, saying that they are incompatible. Side note, they were done in the original SonMapEd, and the issue only occurs with my specific mappings and dplcs, the stock sonic 2 ones work fine
I'm interested in this, since I'm a Linux-haver myself... though I am more accustomed to Flex2's UI, but that's a "me" thing
Here is v1.0.1. It is a small update that adds two things: More file extensions, such as '.nem' and '.kos'. More keyboard shortcuts, which provide alternatives to the ';', ''', '[', and ']' keys. These new shortcuts use the '6', '7', '8', and '9' keys, respectively.
Here is v1.1. It fixes a couple of bugs and adds support for MainMemory's MapMacros, which the Git disassemblies of Sonic 1 and 2 now use.
Here is v1.1.1. Changes: Saving tiles/palettes/mappings/DPLCs no longer requires permission to overwrite existing files. Non-MapMacro mappings/DPLCs no longer use local labels, to improve compatibility with old disassemblies. Tiles can now be saved in assembly format.
v1.1.2 https://github.com/Clownacy/ClownMapEd/releases/tag/v1.1.2 General changes Fixed cycling backwards through sprite pieces getting stuck at piece 0. Fixed the selected sprite piece not being visually highlighted. The editor now gracefully recovers when loading invalid mappings and DPLCs. Sprite importing now only matches the background colour if it is exact. Sprite importing now allows bitmaps which do not mark their unbounded areas. Technical changes Added support for Qt 6. Made compatible with Qt 5.12. Offloaded asset processing to the libsonassmd library. Added an AppImage build. Switched to the static MSVC runtime library, avoiding the need for users to install any redistributables. This release marks the first time that any of my projects have been released as a Linux AppImage! An AppImage works like a Windows EXE, allowing people to download and try the program with ease; no installer, package manager, or compiling from source code necessary!
v1.2 https://github.com/Clownacy/ClownMapEd/releases/tag/v1.2 Changes Settings and sprite data are no longer lost when the program is closed. Up to 9 'save states' can be made, allowing work to be saved and resumed later. Tiles can be oriented vertically. Assembler error output is shown when assembly data fails to be loaded. I had made this update back in July, but got so carried-away with my job that I completely forgot about it!
v1.2.0.1 https://github.com/Clownacy/ClownMapEd/releases/tag/v1.2.0.1 Selbi pointed out to me that v1.2 fails to load compressed data, so here's a hot-fix.