Skip to content
TheLX5 edited this page Mar 2, 2021 · 16 revisions

Welcome to the Dynamic Spriteset System (DSS) wiki!

This package of ASM hacks allows the users to automatically fill their VRAM area dedicated to Sprite GFX. Here you can find anything you will likely need in order to use this system.


Features

  • Easy to use API, just call a routine to do the heavy work for you
  • Lunar Magic's ExGFX system to store sprite graphics
  • Lunar Magic's sprites showing fine regardless of the loaded ExGFX
  • VRAM queue system; used to fill the VRAM at the sprite area, but it may be used for something else
  • Yoshi can exist in any environment, it can also coexist alongside Podoboos
  • Glass, ON/OFF and note blocks are now global

Drawbacks

Before you actually use DSS you have to keep in mind a few negative things that come with this:

  • You can't use different skins of sprites without using a disassembly. This means you can't have themed enemies or anything like that.
  • The system puts some pressure on the V-Blank period, it requires this to upload graphics to VRAM as soon as possible in small batches. This will limit how many ExAnimations and other related stuff you can have without seeing a flickering black bar at the top of the screen.
  • Loading compressed graphics can generate a 1 frame lag in case of really CPU heavy situations. You have to put some thought behind your sprite placements if you ever encounter such lag spikes.

Disclaimer

This project was started to completely remove the time spent building manually a spriteset for my very own purposes and took decisions that fulfilled my requirements. If you find anything that isn't ideal for your very own project I'm sorry about that, but it's not likely that any changes will be made for your specific purposes.

I will not provide any kind of support about this system. It's a very complex package that modifies a lot of parts of the ROM and providing support in such cases is outright impossible.

Any question I receive will most likely replied with a link to this wiki unless it's a bug report about the API or any SMW sprite I've converted.


Credits


Testers

  • anonimato
  • Ayami
  • Big Brawler
  • Carld923
  • gusano
  • IvanSword
  • JamesD28
  • LMPuny
  • yupilongas
Clone this wiki locally