A CFG file is a file used to determine certain properties of sprites upon insertion via Sprite Tool. The file either points to an ASM file to use as the sprite's code, or provides the number of an original Super Mario World sprite whose properties are to be tweaked. It also provides the values for configurable settings that the sprite will load into RAM upon spawning. Note that most custom sprites do not make use of the vast majority of the options here.
The name of a section ("Sprite Tool Info", "Option", and "Extra Info" are exceptions to this) is the RAM address the values are loaded into when the sprite spawns.
Sprite Tool Info
- Tweak/Custom Acts Like - This is the sprite number of either an original sprite which will be tweaked or the number of an original sprite from which a custom sprite will draw its default properties. In custom sprites, this value is often set to a sprite that was unused in the original game, such as 36.
- ASM file - This is the ASM file to be used as the code for a custom sprite.
- Object clipping, table offset (0-F) - The object clipping value for the sprite
- Can be jumped on - Whether or not the sprite is safe to be jumped on by Mario
- Dies when jumped on - Whether or not being jumped on kills the sprite
- Hop in/kick shells - Determines if the sprite will interact with a shell like a Shell-less Koopa does
- Disappear in a cloud of smoke
- Sprite clipping, table offset (0-3F) - The sprite clipping value for the sprite
- Use shell as death frame
- Fall straight down when killed
- Use second graphics page - If checked, the sprite will load its graphics from SP3/SP4 instead of SP1/SP2
- Palette - The palette the sprite will use
- Disable fireball killing - If checked, the sprite will be immune to fireballs
- Disable cape killing - If checked, the sprite will be immune to cape swings
- Disable water splash - If checked, the sprite will not generate a splash effect when entering water when sprite buoyancy is enabled
- Don't interact with Layer 2 objects - If checked, the sprite will not interact with objects on Layer 2
- Don't disable clipping when killed with star - Normally, when killed with a star, a sprite stops interacting with objects/sprites. Check this box to disable that effect
- Invincible to star/cape/fire/bouncing bricks
- Process when off screen - If checked, the sprite's code will run even when the sprite is not on-screen
- Don't change into a shell when stunned - The default behavior for a sprite is that when it is in its stunned state, it is a Koopa shell (like when a Koopa comes out of a ? Block or Turn Block). check this box to disable that behavior
- Can't be kicked like a shell
- Process interaction with Mario every frame
- Gives power-up when eaten by Yoshi - When Yoshi eats certain sprites, such as Mushrooms, Fire Flowers, and Cape Feathers, the power-up is given to the player. Check this box to enable such behavior
- Don't use default interaction with Mario - Disables default interaction with Mario (default interaction being that it hurts Mario when touched from the sides, is damaged when jumped on, etc.)
- Inedible - Disables being able to be eaten by Yoshi
- Stay in Yoshi's mouth - Makes it so Yoshi will not swallow the sprite upon eating it (such as with Koopa Shells and carryable items)
- Weird ground behavior
- Don't interact with other sprites - Disables interaction with other sprites
- Don't change direction if touched - Disables turning around when touched
- Don't turn into coin when goal passed - Disables the sprite becoming a coin if it is on-screen when Mario crosses the Goal Tape
- Spawns a new sprite
- Don't interact with objects - Disables interaction with objects
- Make platform passable from below
- Don't erase when goal passed
- Can't be killed by sliding - Disables being able to be killed by sliding
- Takes 5 fireballs to kill - Makes killing by fireballs take five fireballs instead of one (as seen in the Chargin' Chuck)
- Can be jumped on with upward Y speed
- Death frame 2 tiles high
- Don't turn into a coin with silver POW - Disables being turned into a Silver coin when the Silver P-Switch is activated
- Don't get stuck in walls (carryable sprites)
- Use xkas for assembly - If this option is checked, the sprite will be assembled with xkas instead of TRASM
- Extra Property Byte 1 - A general-purpose value that can be used for anything. Use is usually specified in the sprite's code, if it is used at all.
- Extra Property Byte 2 - A general-purpose value that can be used for anything. Use is usually specified in the sprite's code, if it is used at all.