Language…
4 users online: LeomarxGames, SFan, Shiki_Makiro,  solgaleo35 - Guests: 53 - Bots: 316
Users: 55,604 (2,451 active)
Latest user: marawilson

Edible Blocks

SMW Patches → Edible Blocks

Submission Details

Name: Edible Blocks
Author: Thomas
Added:
Version History: View
Tool: Asar
Requires Free Space: Yes
Bug Fix: Yes
Featured: No
Description: This patch allows you to make up to 255 Map16 tiles edible like berries, since you can't do it with BlockTool/GPS. You can customize whether the tiles are edible by Yoshi's mouth, Yoshi's tongue, or baby Yoshi.

Additionally, a few bugfixes for glitches with Yoshi are included alongside it, stopping Yoshi and Baby Yoshi from dropping berry sprites or double-eating them (along with fixing some related bugs). If you just want them, you can still apply this patch with just the entries for SMW's berries.


Update: added ability to add new routines for what happens when Yoshi actually eats the sprite.
Tags: ability berry edible lorom sa-1 sprite yoshi
Comments: 14 (jump to comments)
Download 3.64 KiB | 368 downloads

Screenshots

View all

Comments (14)

 MarioFanGamer Link
Removed some unnecessary tags but left the path itself alone.

One thing what I dislike about the remoderated version is that all FastROM mirrors have been removed. Nonetheless, the only other change made with this patch is the changed bugfix so I still accepted it. Never wrote anything... *whistling*
HaxTheCharizard Link
This looks like it could be used to make some very well hidden secret exits and hidden Easter-Egg rooms! I might use this in a rom hack at some point.
 Maarfy Link
Corrected mislabeled "edible by" settings. Corrected a small typo that compromised function of "edible by" settings. Replaced "baby Yoshi double-eat" fix with a new routine. Everything else (that is, the bulk of it) is unchanged.

And whaddya know, this patch is still really cool! You definitely get more bang for your buck if you know ASM, but even at novice-level this patch enables some very creative gimmicks.
 Maarfy From older version: Edible Blocks Link
This is a very clever patch that works well - very nice work!

I wanted to make note, however, that the bugfix for the baby Yoshi double-eating glitch has no effect; the condition needed for the glitch to occur (the JSL at $02EAA0 runs with eating timer value $01 - $1F) is still permitted by the fix. I personally put the fix at $02EA9B, though there may be a more efficient way:

Code
org $02EA9B
autoclean JML Fix_Baby_Dbl_Eat

freecode

Fix_Baby_Dbl_Eat:

LDA $163E,x		; Check eating timer
CMP #$20		; Check if attached sprite has been eaten
BCC +			; Skip if so
JML $02EAA0		; If not, quick-eat first sprite, then eat 2nd

+
JML $02EAA9		; Skip eating a sprite that no longer exists


The other fixes work just fine. (And I had been looking for them for some time, so I am most grateful you included them - my thanks!)
Mogu94 From older version: Edible Blocks Link
Man, Yoshi is hungrier than usual.
GbreezeSunset From older version: Edible Blocks Link
second gif is high quality :ok_hand:
DiscoTheBat From older version: Edible Blocks Link
Cool stuff you got here, Thomas. I'm amused by that, keep doing the great job!
 Thomas Author From older version: Edible Blocks Link
Index 0 isn't included, since that's used as the "not a berry" index.
HammerBrother From older version: Edible Blocks Link
Is index 0 included too? If so, then 256 blocks can be eaten, not 255.
HammerBrother From older version: Edible Blocks Link
For some reason it's recommended to use two symbols for inequality (==, <=, >= <, > and !=). I herd it on some forums.
 Erik From older version: Edible Blocks Link
no I was the one that got confused. I forgot that 1 '=' gives a value, 2 or 3 of them establish a comparison. but apparently both work in Asar's syntax.
also what eating dirt is a completely normal thing.
lx5 From older version: Edible Blocks Link
Dudes, Yoshi literally ate the FG. Dirt must taste good I guess.

Erik557: it works just fine. And two '=' are used in conditional statements like this one, I might be wrong because I only code in ASM.
 Erik From older version: Edible Blocks Link
Code
if !FixEating == 1      ; Prevent baby Yoshi from eating something while he's still eating something else.

are you sure you don't want = 1 here? I'm pretty sure two equal signs mean you're assigning a value to a variable, however I'm not sure if this is true within Asar's syntax.

Originally posted by GreenHammerBro
Dang, yoshi must have a powerful throat, it just ate the cement block.

I would be more concerned about eating half a pipeline, lol.
HammerBrother From older version: Edible Blocks Link
Dang, yoshi must have a powerful throat, it just ate the cement block.