Register | Login
Views: 19364387
Main | Memberlist | Active users | ACS | Commons | Calendar | Online users
Ranks | FAQ | Color Chart | Photo album | IRC Chat
11-02-05 12:59 PM
Acmlm's Board - I2 Archive - - Posts by mikeyk
Pages: 1 2 3 4 5 6
User Post
mikeyk

Koopa
Level: 18

Posts: 1/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 07-17-04 07:40 PM, in Classic Goomba / Rex question Link
I'm working on a hack and I want to add the classic goomba. I know the hex code I have to modify to make rex have its properties, but is there an easy way to have the original rex (that takes 2 hits) on some levels and the goomba (that takes 1 hit) on other levels? In other words, do I have to sacrifice the original rex throughout the entire game to use the goomba?
mikeyk

Koopa
Level: 18

Posts: 2/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 07-18-04 05:31 AM, in Classic Goomba / Rex question Link
Thanks for the responses so far. I got a couple of things I'm still wondering. I thought about simply changing the graphics for the blue koopa, but isn't it programmed to kick a shell if it comes across one?

And Aioria, since you used the moles in you hack do you just have the goombas popping out of the ground?
mikeyk

Koopa
Level: 18

Posts: 3/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 07-29-04 11:19 PM, in Interesting trick to look out for Link
There is always the trick of carrying an item, such as a turtle shell, through the final goal post. Depending on Mario's state and what's in your item box, you'll either get a 1up or a powerup. Free guys come if you're small or super Mario and have a mushroom in the box, if you're firey Mario with a flower in your box, or if you're caped Mario with a feather in the box. Hope this helps some people.
mikeyk

Koopa
Level: 18

Posts: 4/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-08-04 08:53 AM, in Questions and Answers for newbies! Link
I found SMWR here: http://www.h7.dion.ne.jp/~tkmt/smwr/SMWR.htm

It is an interesting hack. KT uses red shelless koopas and dino torches (with the fire disabled) for goombas. How either of these two things can be accomplished is a question for someone else.
mikeyk

Koopa
Level: 18

Posts: 5/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-10-04 09:36 AM, in Frank's Super Super Mario Bros. 3 Hack! Link
I've been enjoying the hack a lot... great work. I have come across a problem in the world 2 castle. It's possible to end up on top of the ceiling when jumping through the tornado. If you run all the way to the right, you end up trapped with the Boom Boom music going off. I had to let time expire... if this was intentional, I think there should at least be a pit to jump down to kill yourself. No other problems so far. Again, great work, and thanks for some new entertainment.
mikeyk

Koopa
Level: 18

Posts: 6/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-15-04 03:36 AM, in Questions and Answers for newbies! Link
i have a question about using block editor. I am trying to add certain included blocks that change into the next map16 when hit. However, if I insert any of these blocks in any of the map16 pages from 4-F, the game crashes when I hit the block. I have no problem using these blocks when they're in pages 0-3, but I want to use BMF's slowdown fix that requires the blocks to be on page F. I've experienced this problem with every rom that I've tried adding blocks to (including a unedited, just expanded ROM). Please help if you can.
mikeyk

Koopa
Level: 18

Posts: 7/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-15-04 08:43 AM, in Questions and Answers for newbies! Link
I've been using the original version of block tool. That is why I can say the "to next map16 object" blocks work fine on pages 0-3. People say that they only experience slow downs with a ton of custom blocks. However, I have about 30, and there is still a noticeable slow down when there are a lot of sprites on screen. I particularly notice the slowdown at the start of Yoshi's Island 2 where all the red koopas are on the first ledge.
mikeyk

Koopa
Level: 18

Posts: 8/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-18-04 02:40 PM, in Changing an instruction via ASM Link
I am just starting out with ASM. So far I have just been observing the original code and making small modifications. I know that the Chargin Chuck hit points are set by this instuction which is at ROM location 0x149EF:

$02/C7EE C9 03 CMP #$03

I want to keep the value of 3 throughout my game, but I am trying to make one level where Chucks will take 5 hits instead. I installed BMF's palette controlled ASM hack and tested it with some code involving coins, and that worked out great. So I was hoping to add a bit of code to change the Chucks, that is changing the above instuction to CMP #$05. I thought it would be as easy as adding this...

A9 05 (LDA #$05)
8F EF C7 02 (STA $02C7EF)

but that didn't produce any changes. I'm just starting to poke around with ASM, so I realize there's probably something wrong with how I'm thinking about this. Is it possible to modify an original instuction for a level using BMF's palette control? Please help me out if you can.
mikeyk

Koopa
Level: 18

Posts: 9/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-19-04 03:40 AM, in Changing an instruction via ASM Link
Thanks for the clarification. I went with something along the lines of #1, and I'm happy to say I have a hack where Chucks have different HP depending on the level. On to bigger and better things. Thanks again
mikeyk

Koopa
Level: 18

Posts: 10/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-21-04 01:51 PM, in Ah, the palete problem [HELP PLAES -and hack screenshots!] Link
I took a look at the palette info in the ROM and I think I found something that may help you. It looks like you are using sprite 62 for your line guided platforms. If so, you can change the palette that they use by modifying ROM address 0x03F660 (originally E1). Changing E1 to the following will give you new palettes.

E1 - palette 8
E3 - palette 9
E5 - palette A
E7 - palette B
E9 - palette C
EB - palette D
ED - palette E
mikeyk

Koopa
Level: 18

Posts: 11/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-26-04 06:17 AM, in Replacing the rexes...[question/problem] Link
I had this problem earlier and didn't want to design around it, so I found the bytes where the head's horizontal displacement was stored. ROM bytes 0x1984C and 0x1984E both need to be changed from FC to 00. ROM bytes 0x19858 and 0x1985A both need to be changed from 04 to 00. This should take care of your problem...

Rex's head also bobs up and down (1 pixel between frames). It's very possible that you want to keep this effect, but if not ROM address 0x19864 should be changed from F1 to F0.


(edited by mikeyk on 08-25-04 09:33 PM)
(edited by mikeyk on 08-25-04 09:34 PM)
(edited by mikeyk on 08-26-04 02:43 AM)
mikeyk

Koopa
Level: 18

Posts: 12/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-26-04 01:40 PM, in Sprite creation Link
I was looking at a few things in the newbie FAQ about sprites, namely the responses to these:

Q) How do you edit how sprites works? / How do you add new sprites?
A) You can't... Yet...

Q) But I saw a hack where some of the enemies was changed!
A) Don't look! Don't ask! Forget all about it. It never happened. OK?

The answers state matter of factly that you just can't edit how sprites work. What exactly does this mean? Wouldn't it be more appropriate to just say it requires ASM or changing data tables in the ROM? By modifying one byte, you can change whether an enemy can be killed with a cape or fireballs. You can change the tiles they use (not the exgfx, but rather tile mapping). You can change the area that will cause interaction with a sprite (essentially it's size). With ASM you can give code to the unused sprites that must be inserted manually in LM (sprite 12 for example). I'm pretty new to the board, so I don't know if this stuff has been done before, but I've found it entirely possible to do some stuff with sprites that the FAQ may cause you to think otherwise. I'll try to whip something simple up to show a bit of what I'm talking about.
mikeyk

Koopa
Level: 18

Posts: 13/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-27-04 01:38 AM, in Sprite creation Link
I've thrown together a one level demo that features a classic stompable goomba. I think what makes this different from what other people have done in the past is that I did not replace an enemy in order to add it. My goomba is it's own sprite (number 12) that can be added manually in LM using Crtl+Ins while in sprite adding mode. Right now it's tiles are mapped to use the SMW goombas, but I think I may look into using the Nintendo Presents tiles instead. The ROM is not locked, so download it and take a look around if you're interested. I can post the data I've used to do this, if there is interest. Next up, I'm going to try to make a SMB1 style hammer brother.

goomba_demo.ips

These goombas are stompable

mikeyk

Koopa
Level: 18

Posts: 14/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-27-04 05:38 PM, in Sprite creation Link
Someguy: It may be surprising, but there isn't a whole lot of ASM in this demo I made. I was going to release it with none at all, but there were a few things that I wanted to improve. The two things I did end up doing with ASM were preventing the goombas from entering shells and making them explode when stepped on (I only did the second one because I didn't have a sprite designed for the smashed ones). As for a RATS tag, I've only gotten into hex/ASM in the past two weeks, so I wasn't really sure what one was or how to use it. I just made an assumption from what I saw in the ROM to just prefix my custom code with 53 54 41 52 and end it with FF, but I don't know for sure if that's all there is to it.

Even though I didn't write much for this demo, without ASM I never could have traced through the code to find the necessary sprite data. The first important thing I found was a subroutine starting at SNES address $07F7A0 that runs when a sprite is initialized. It loads data from 6 major tables in the ROM. Listed below are the ROM addresses for the begining of the tables and the RAM locations they are associated with.

0x03F46C -> 7E1656
0x03F535 -> 7E1662
0x03F5FE -> 7E166E
0x03F6C7 -> 7E167A
0x03F790 -> 7E1686
0x03F859 -> 7E190F

All of these tables are indexed by sprite number (starting with x00 for the shelless green koopa). Here's a few of my notes about some table values. I've still barely touched the surface of all this data. I have the RAM locations as the headers, cuz that's what I see in my trace logs.

7E1656
setting both bits 5 and 6 makes an enemy stompable
setting bit 8 changes the cape/star kill style

7E166E
setting bit 1 changes the gfx page
bits 2-4 tell which palette (8-F) the sprite uses
setting bit 5 disables fireball killing of the enemy
setting bit 6 disables cape killing of the enemy

7E1686
if bit 8 is set the sprite passes through floor
bit 7 is set if the enemy is sprite creating (which is created is in a different table)

7E1662
I've noticed that changing data here changes the area for sprite interaction. For example, you've probably seen in hacks where rexes have been changed into goombas, you can still get killed by an invisible rex head. Fixing this is as simple as changing rex's table value 0x03F5E0 (0x03F535 + AB) to x00.

Keep in mind that not all sprites use the data loaded from these tables. Some get new data from their own tables found in sprite specific routines.

For my demo, I just changed entry 12 to match entry 00 for all six tables. I then needed to make sprite 12 use the code for shelless koopas, so doing some tracing I found another very important table at ROM address 0x0087CC. This table holds the memory locations (2 bytes for each sprite) to go to for the handling of each sprite. Sprite 12 intially jumped to a RTS command (made sense since it's listed as a null sprite), changing it to use the shelless koopa's code finally gave me some results I could see. I had a sprite that acted like a koopa, but the graphics it used was off. 7E1602 holds the animation frame, but I needed to change the tiles that the frames used... more tracing, more tables.

0x009E7F is the begining of an offset table that is indexed by sprite number. 0x009D83 is the start of a gfx tile table that is indexed by a value in the offset table. For example the entry for a green shelless in the offset table is x09, so the gfx tiles for the shelless start at 0x9D8C (0x009D83 + x09). Again not all of the enemies are stored here. I started to document which were but lost interest. I'll include what I did find though:

(0)
82 A0 - koopa Walk 1
82 A2 - koopa walk 2
84 A4 - koopa turning
8C - koopa shell
8A - koopa shell ani 1
8E - koopa shell ani 2

(9)
C8 - shelless walk 1
CA - shelless walk 2
CA - shelless turn
CE - unused?
CC - shelless fliping shell
86 - struggling shelless 1
4E - struggling shelless 2

(10)
E0 - blue shelless walk 1
E2 - blue shelless walk 2
E2 - blue shelless turning
CE - unused?
E4 - blue shelless kicking
E0 - blue shelless struggling 1
E0 - blue shelless struggling 2

(17) para-goomba
a3 - straight goomba 8x8 tile 1
a3 - straight goomba 8x8 tile 2 (mirrored)
b3 - straight goomba 8x8 tile 3
b3 - straight goomba 8x8 tile 4 (mirrored)
e9 - tilted left goomba 8x8 tile 1 (mirrored)
e8 - tilted left goomba 8x8 tile 2 (mirrored)
f9 - tilted left goomba 8x8 tile 3 (mirrored)
f8 - tilted left goomba 8x8 tile 4 (mirrored)
e8 - tilted right goomba 8x8 tile 1
e9 - tilted right goomba 8x8 tile 2
f8 - tilted right goomba 8x8 tile 3
f9 - tilted right goomba 8x8 tile 4
e2 - straight parachute
e6 - tilted parachute

(25)
AA - goomba walk/struggling 1
A8 - goomba walk/struggling 2
A8 - goomba turning
AA - unused??

(29) para-bomb
A2 - straight
A2 - straight
B2 - straight
B2 - straight
C3 - tilted left
C2 - tilted left
D3 - tilted left
D2 - tilted left
C2 - tilted right
C3 - tilted right
D2 - tilted right
D3 - tilted right
e2 - straight parachute
e6 - tilted parachute

(37)
CA - bob-omb walking 1
CC - bob-omb walking 2
CA - bob-omb turning

(3A)
AC piranha plant closed mouth
CE classic/upside down stem frame 1
AE piranha plant open mouth
CE classic/upside down stem frame 2
83 displays behind left of jumping piranha frame 1 ???
83 displays behind right of jumping piranha frame 1 ???
C4 jumping stem 8x8 tile 1 frame 1
C4 jumping stem 8x8 tile 2 frame 1
83 displays behind left of jumping piranha frame 2 ???
83 displays behind right of jumping piranha frame 2 ???
C5 jumping stem 8x8 tile 1 frame 2
C5 jumping stem 8x8 tile 2 frame 2

(46)
8A - football

(47)
A6 - bullet bill

A4 - ???
A6 - ???
A8 - ???

(4B)
80 - spiny walking 1
82 - spiny walking 2
80 - spiny turning

(4E)
84 - spiny egg 8x8 tile 1 frame 1
84 - spiny egg 8x8 tile 2 frame 1
84 - spiny egg 8x8 tile 3 frame 1
84 - spiny egg 8x8 tile 4 frame 1
94 - spiny egg 8x8 tile 1 frame 2
94 - spiny egg 8x8 tile 2 frame 2
94 - spiny egg 8x8 tile 3 frame 2
94 - spiny egg 8x8 tile 4 frame 2

For my demo, I gave sprite 12 the same offset as the SMW goomba, and that's precisely what appears. The more I look through the ROM, the more tables I see, so hopefully this will spark some interest in documenting them.

Right now I'm working on making a SMB1 style hammer brother. So far I've got the code for hammer throwing (almost a direct copy of the SMW's hammer bro) and have a modified rex calling that code. I still have to rework to code for his movement, but hopefully I'll have some more to share in the not so distant future

Well that does it for me... after about an hour of typing this post I'm sleepy
mikeyk

Koopa
Level: 18

Posts: 15/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-28-04 07:05 AM, in Sprite creation Link
Whether a sprite editor gets made or not is not a big deal to me. I wouldn't say that it would ruin SMW hacking, simply because I don't think there's enough information yet to make a very powerful editor. Changing a sprite's table entries is only useful if the sprite's code already makes decisions based on that data. If a program was created to easily change the values in the table, in most cases you'd still need to add ASM to see results. If you guys want to go through making an editor, good luck. I think it might be useful as a tool to understand the data better. As for me, I'll continue to post sprite data that I come across in the ROM, and I encourage you to do the same. I know I have tons more info in my notes somewhere, but for now:

The tiles to use for the powerups (mushroom, flower, star, feather, 1up) are at 0x0C809 - 0x0C80D. These are loaded at SNES $01C6D7.

Don't really remember what enemies use this data, but here's what was in my notes...
0x08AF0 - SNES $018BE0 - indexed by sprite number
(The SNES addy is code relating to the table, not the location of the data itself)
bit 1 fast
bit 2 stay on ledge
bit 3 follows mario
bit 4 jumps shell
bit 7 2 tiles high


(edited by mikeyk on 08-27-04 10:20 PM)
(edited by mikeyk on 08-27-04 10:22 PM)
mikeyk

Koopa
Level: 18

Posts: 16/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-28-04 03:26 PM, in Sprite creation Link
I think hhallahh is definitely right about not seeing anything too major for a while.

Keikonium: thanks for the list of null sprites. I was just about to look through and find them, but you saved me a bit of time there. The two sprites you were confused about (which you lised as Sliding Koopa 2: BD and Chargin Chuck 2: 9C) ...it seems to me that BD is the only sliding koopa and 9C it the platform for the hammer bro.

Anyways, here is some more data from my notes... this is all about Rex

0x1984C / $0396B3
rex tile horizontal displacement table
(C entries for facing left, C entries for facing right)

0x19864 / $0396BD
C entries (rex tile vertical displacement table)

0x19870 / $0396C3
C entries (rex tiles)

0x1987C / $0396CB
2 entries (rex walking left info, rex walking right info)
bit 8 flip tiles
bit 7 mirror tiles
bits 2-4 palette
bit 1 gfx page


I also thought I share a picture of my second custom sprite. This one was also pretty simple. I think you can all figure out what it does.
mikeyk

Koopa
Level: 18

Posts: 17/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 08-31-04 12:34 AM, in help Link
Something I always do in addition to making backups, is save each level in .mwl format after I complete it. That way even if you lock your ROM, you'll at least have the level data somewhere else. Sorry to hear you lost your hack.
mikeyk

Koopa
Level: 18

Posts: 18/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 10-22-04 10:47 AM, in More Sprite Data [Info] Link
With the recent interest in sprite data, I've decided to re-release the info that I gathered a few months ago. This file contains a bunch more info that I never posted before, specifically about the table at $1662 (0x3F535). Since the end of summer I really haven't had any free time to hack, but I'm glad to see some interest in sprite creation. Perhaps I can find some time to get back into it. Anyway, here's the data:

http://home.comcast.net/~dkaminski/smw_sprite.doc
mikeyk

Koopa
Level: 18

Posts: 19/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 10-28-04 06:17 AM, in The sprite hackers workshop! Link
Keikonium: I could post an ips that has a poison mushroom as sprite 17 if you want it
mikeyk

Koopa
Level: 18

Posts: 20/110
EXP: 25086
For next: 4811

Since: 07-17-04

Since last post: 45 days
Last activity: 44 days
Posted on 10-28-04 08:01 AM, in The sprite hackers workshop! Link
Edit: Link removed, I will repost a version that hasn't been touched by LM, so the level data won't be corrupted.

Here is the patch that has a poison mushroom as sprite 17. You'll probably want the sprite to use a different graphic than the regular mushroom. If so, change the value at 0xA0099 to that a different graphic tile (then you can use ExGFX to make it look like if does in SMAS).



(edited by mikeyk on 10-28-04 12:38 AM)
Pages: 1 2 3 4 5 6
Acmlm's Board - I2 Archive - - Posts by mikeyk


ABII


AcmlmBoard vl.ol (11-01-05)
© 2000-2005 Acmlm, Emuz, et al



Page rendered in 0.031 seconds.