Language…
17 users online:  AmperSam, asterkafton, Dangil, DanMario24YT,  Donut, drkrdnk, EvilAdmiralKivi, fsvgm777, Guido_Keller, JezJitzu, mmmdoggy,  patcdr, Scags, timothy726, tOaO, Tomi P, Zavok - Guests: 262 - Bots: 357
Users: 64,795 (2,377 active)
Latest user: mathew

Some of my ASM stuff

  • Pages:
  • 1
  • 2
Views:
Time:
6 users online: o imamelia, o o FPzero, o bebn legg, o Nameless, o Major Flare, o o Scrydan - Guests: 69 - Bots: 160Users: 69,666 (9,999 active)
Latest: Year 2020
Tip:
You got some nice displayed ASM here, Iceguy. You have done a lot of work.
I love the pause menu. You have done an excellent job on everything.

Oh, no...

My worst fears were confirmed. Iceguy...the health-up sprites DON'T SAVE TO SRAM. That means that you can collect the same sprite again and again to bring your health up as high as you want. This is a pretty major bug if you ask me, considering that was the main thing to set this apart from your previous numerical health patch. Why not do like I suggested and have the health-up sprite set a certain bit of a RAM address such as $0675 (extra bit + X position determines which), use that to check how much health should be loaded initially, and save that to SRAM when the game saves (and load the SRAM address back into it on game load)?

There were a couple of other things I noticed about it that may or may not be bugs; I don't know if they were intentional. For one thing, if you die by falling down a hole, you start out with whatever health you had before falling down it. That could be maximum, half the maximum, 5 HP, or even 1 HP. The same thing happens when you load a saved game.

In any case, you might want to fix that.

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
Holy shizzle, those sprites look cool. HOWEVER, the hammer appears to be missing the init routine, according to the error message I got when trying to insert it. Could you take a look at that? I would love to use it if you get it working.
Your layout has been removed.
Wow, I was expecting so many replies. Thanks everyone! ^-^

@Ladida: Yeah, that's an issue with the sprite, I'll fix it right now.

@imamelia: I can make the sprite erase itself permanently, I'll just make them set bits of SRAM when collected and just disappear if they're already set. I didn't notice the other bugs but I'll try to fix them. Thanks for telling me.

@Jorshamo: Are you inserting it with Romi's sprite tool? It won't work with mikeyk's one.
Ah, that fixed it. Thanks! However, will you also release the crate that gets smashed by the hammer? That would be great. But it's great nonetheless. Thanks again.
Your layout has been removed.
These are very well done work with asm.

I really like the hammer the best! Not sure if possible but you can add more moves,special powers and combos. Then it would be an action game.
I wouldn't recommend having them directly set bits of SRAM, because then, if you get a sprite, die, and then don't save your game, the sprite will disappear anyway. I'd just have them set a normal RAM address and make that transfer over to SRAM on game save. Thank you for noting my comments, though.

To clarify, I was picturing something like this:

!RAM = $0DDB ; this gets saved to, and loaded from, SRAM

Bits:
db $01,$02,$04,$08,$10,$20,$40,$80

MaxHealth:
db $05,$0F,$14,$19,$1E,$23,$28,$2D,$32

LDY $C2,x ; sprite state from INIT routine, obtained by checking the X position and extra bit
LDA Bits,y ; check a certain bit
AND !RAM ; check the saved bits
BNE EraseSprite ; erase the sprite if it has already been collected

STA $00 ; save the bit value for later
JSL $01A7DC ; check for player/sprite contact
BCC Return

LDA $00 ; the bit from before
TSB !RAM ; if the sprite hasn't been collected, set the "collected" bit
LDA !RAM
JSR CheckBits ; count the total number of bits set (when this subroutine returns, Y will have a number between 00-08, the total number of set bits in !RAM)
LDA MaxHealth,y
STA !MaxHealth ; set the maximum health depending on how many sprites have been collected
EraseSprite:
STZ $14C8,x ; make the sprite disappear
Return:
RTS

That's about what I had in mind, anyway. I don't know what your idea was.

Also, and I'm trying to be constructive here, you've gotten some complaints on the readme for that pause menu being hard to understand. I personally think I could probably figure it out with enough time, effort, and careful reading of both the readme and the patch, but others might not feel the same way.

Still cool stuff in any case. (My ASM work pales in comparison...)

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
Ah man, now THIS is quite a package of goodies. You people never fail to impress me.

For the blue shell, is it going to be a power-up, or will all "blue" shells work (as in, taking the shells from Blue Koopas)?

For the hammer, nice idea, although the graphics of the level are messed up in the demonstration. I assume you're working on that, though.

For the goomba, that must have been a LOT of work to do. I'm almost afraid to see what some people will do with this...I'm starting to fear the possibilities of ASM-based Kaizo hacks. -_-

Nice health patch, but I think the creators that use this patch will really have to balance the game out so the stages don't get too easy because of the large health.

The item menu looks really interesting, but at the same time, it looks a little confusing as to how it actually works. I'll have to keep watching this.
My Youtube Channel
The blue shell is a custom powerup, it doesn't affect the blue Koopas in any way. I thought the game would be too easy if it'd be like that.

About the level with the hammer, that was just a test ROM. I test all of my ASM hacks there :P
Can you use the blue shell forever, or at least until you take a screen exit or beat the stage? You said there was a time limit, but "!Timer" isn't actually used later in the sprite's code.

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
It actually uses !MaxTime instead. The value defined is in seconds.
Haha

you really know how to do this, huh =P

Good job Iceguy, keep it up! =D
Ironic, I requested the Blue Shell Mario a long time ago, and now it has been made.

It looks really awesome.
Originally posted by Iceguy
@imamelia: I can make the sprite erase itself permanently, I'll just make them set bits of SRAM when collected and just disappear if they're already set. I didn't notice the other bugs but I'll try to fix them. Thanks for telling me.

I'm not sure exactly what you mean here, but If you're talking about preventing the sprite from coming back when you exit and reenter the level via pipe, just use this: http://www.smwcentral.net/?p=thread&id=19908
If you want them to behave like 3-up moons where they stay gone until you reset, that's a different story. Also. If you want to keep them from coming back when you save your game, that's even more different.
edit1754: Yeah, I'm referring to the third and last of the things you mentioned, making them not come back after saving the game. What I had in mind was: get health-up sprite, maximum HP increases, die, exit level, do whatever, health-up sprite doesn't appear again. If you save the game, then your maximum health would also be saved (I think he already did that), as would the flag that determines if the health-up sprite has been collected. If you didn't save the game, then the sprite would reappear, but your maximum health would also go back to what it was before you collected the sprite.

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
  • Pages:
  • 1
  • 2