Feature Request: Easy Sprite Ripping
Moderator: ZSNES Mods
Feature Request: Easy Sprite Ripping
Anyone who's tried to rip sprites knows how much of a pain it can be. I've been using ZSNES to do it for a while now, and have thought of a few things that might make it easier on anyone who wants to.
1) The ability to change the color of the background to a color other than black when layers are disabled. I won't claim knowledge of how easy this would be, since it may well be possible the color is defaulted by the ROM and not the emultor.
A better, but more than likely several magnitudes harder, method would be:
2) Add a feature that decompresses and/or un-encrypts the graphics of a ROM. It could be made to either dump it into a large image file, or simply open it in a seperate window to take screenshots to cut out as you need. I've spent time searching for programs that might do this, but am yet to find a working one.
I'm using version 1.337 at the moment, so do me the favor of not attacking me should either have been done.
1) The ability to change the color of the background to a color other than black when layers are disabled. I won't claim knowledge of how easy this would be, since it may well be possible the color is defaulted by the ROM and not the emultor.
A better, but more than likely several magnitudes harder, method would be:
2) Add a feature that decompresses and/or un-encrypts the graphics of a ROM. It could be made to either dump it into a large image file, or simply open it in a seperate window to take screenshots to cut out as you need. I've spent time searching for programs that might do this, but am yet to find a working one.
I'm using version 1.337 at the moment, so do me the favor of not attacking me should either have been done.
Well, if a sprite has black borders or part of it is black you take the risk of loosing part of it when you change the background colour to make a transparent gif. I don't know if I've been clear enough... anyway I don't think this is too important (and I already brought it up like a year ago... and surely more people did as well earlier).kevman wrote:Why would changing the background color help sprite ripping?
I'll tell you the meaning of life: It's not to live, but to die
-
- Romhacking God
- Posts: 922
- Joined: Wed Jul 28, 2004 11:27 pm
- Contact:
Re: Feature Request: Easy Sprite Ripping
1.) This could possibly be done, but I'm not a dev, so I can't comment further.Manae wrote:Anyone who's tried to rip sprites knows how much of a pain it can be. I've been using ZSNES to do it for a while now, and have thought of a few things that might make it easier on anyone who wants to.
1) The ability to change the color of the background to a color other than black when layers are disabled. I won't claim knowledge of how easy this would be, since it may well be possible the color is defaulted by the ROM and not the emultor.
A better, but more than likely several magnitudes harder, method would be:
2) Add a feature that decompresses and/or un-encrypts the graphics of a ROM. It could be made to either dump it into a large image file, or simply open it in a seperate window to take screenshots to cut out as you need. I've spent time searching for programs that might do this, but am yet to find a working one.
I'm using version 1.337 at the moment, so do me the favor of not attacking me should either have been done.
2.) Ok, I'm going to tell you why this is impossible. No ROM's graphics storage is the same(The same goes for compression and/or encryption with a few exceptions). Graphical data is mixed splat in the middle with font data, sound data, and game code. There is no way to pick out what is graphics data. That's why no program has been written to do this.
The other problem is the graphics aren't even stored in an order you'd be able to do anything with.
You can use a tile viewer(get one from romhacking.com or zophar's domain) and view ANY uncompressed graphics in a ROM. This would be the equivalant output of a graphics ripping type program. As you will see, the data is stored in a very unfriendly format.
There are a few sprite ripping programs out there, but they only work for specific games since what is used on one game 99% of the time won't work on any others.
That about sums it up. I hope this shines some light on things.
[url=http://transcorp.romhacking.net]TransCorp[/url] - Home of the Dual Orb 2, Cho Mahou Tairyku Wozz, and Emerald Dragon SFC/SNES translations.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
[url=http://www.romhacking.net]ROMhacking.net[/url] - The central hub of the ROM hacking community.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Yeah, I'd like vSNES to butter my toasts too.
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Re: Feature Request: Easy Sprite Ripping
Aproximately a year later with the same request. I may have just missed a feature, but as far as I know, this has still not been implemented. It seems like it would be a rather easy thing to implement though.Manae wrote:1) The ability to change the color of the background to a color other than black when layers are disabled. I won't claim knowledge of how easy this would be, since it may well be possible the color is defaulted by the ROM and not the emultor.
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
It is not. It won't. Ever.
Use vsnes.
Use vsnes.
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
It's either that or not getting those extra black pixels around your sprites.bluknight wrote:Why not? And I tried to use vsnes, but it didn't seem to be giving me anything useful.
edit: Actually, it seemed to be okay, but I have to make a ton of save states and it's weird. o.O
Or, RE every game you want to rip and extract their sprites directly from the ROM.
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
-
- Dark Wind
- Posts: 1271
- Joined: Thu Jul 29, 2004 8:58 pm
- Location: Texas
- Contact:
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
Agozer wrote:Maybe, but it can be tedious as hell.Johan_Hanberg wrote:Removing background manually isn't really that hard eather.

TENACITY
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
-
- ZSNES Developer
- Posts: 3904
- Joined: Tue Jul 27, 2004 10:54 pm
- Location: Solar powered park bench
- Contact:
You're not dreaming.Noxious Ninja wrote:I thought pagefault actually said he was going to implement this at one time. Maybe I'm just dreaming?
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
_____________
Insane Coding
-
- ZSNES Shake Shake Prinny
- Posts: 5632
- Joined: Wed Jul 28, 2004 4:15 pm
- Location: PAL50, dood !
You have no idea what is and isn't difficult.bluknight wrote:It seems like it wouldn't be too difficult.
Stop trying.
皆黙って俺について来い!!
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Code: Select all
<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
No, I don't know exactly because I don't exactly know how the code works. From what I can see though, it doesn't seem like it would be too difficult. You can already disable the other graphics layers, which would mean that you can seperate the sprites from everything else already. You can also take screenshots, which means the ability to make graphic files is also already done. There is also already a frame step function. Getting it to work nicely might take some time if you were to add it, but most of what is needed is already part of zsnes.
I also don't know how difficult chanigng the background color would be, but it seems like something that (depending on how it's coded) would be extremely easy. I don't know if it's normally black because some games require that, or if it's black because the game defines it. If it's the first all it would probably be would just be changing the color value at one point.
The difficult part of each of these is finding the appropriate place in the code.
Adding a sprite ripper would also be more difficult if you wanted to let the user have some control (which would require adding some sort of menu or gui element). The only thing I'm not sure about is wether or not you can flip between the different sprites. I know that in vsnes you can, which I think implies that when zsnes makes a save state it has seperate names for each sprite, which would imply that you can in fact seperate one sprite from everything else.
I also don't know how difficult chanigng the background color would be, but it seems like something that (depending on how it's coded) would be extremely easy. I don't know if it's normally black because some games require that, or if it's black because the game defines it. If it's the first all it would probably be would just be changing the color value at one point.
The difficult part of each of these is finding the appropriate place in the code.
Adding a sprite ripper would also be more difficult if you wanted to let the user have some control (which would require adding some sort of menu or gui element). The only thing I'm not sure about is wether or not you can flip between the different sprites. I know that in vsnes you can, which I think implies that when zsnes makes a save state it has seperate names for each sprite, which would imply that you can in fact seperate one sprite from everything else.
-
- Devil's Advocate
- Posts: 2293
- Joined: Mon Aug 02, 2004 7:51 pm
- Location: Hmo. Son.
ZSNES is open source. Feel free to add any features you want.
The current developers don't seem to have much desire to work on this request, though.
The current developers don't seem to have much desire to work on this request, though.
[url=http://zsnes-docs.sf.net]Official ZSNES Docs[/url] | [url=http://zsnes-docs.sf.net/nsrt]NSRT Guide[/url] | [url=http://endoftransmission.net/phpBB3/viewtopic.php?t=394]Using a Wiimote w/ emulators[/url]