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
1 user currently in Super Mario World hacking: labmaster | 3 guests
Acmlm's Board - I2 Archive - Super Mario World hacking - ASM to enable 3 exits? | |
Add to favorites | "RSS" Feed | Next newer thread | Next older thread
User Post
Keikonium
Banned
Level: NAN

Posts: 674/-2459
EXP: NAN
For next: 0

Since: 04-02-04

Since last post: 63 days
Last activity: 9 hours
Posted on 09-22-04 07:14 AM Link | Quote
I actually have two questions here:

1. What bytes would I need to add/change in the rom to enable a level to have 3 exits (normal, secret, and another one)? Would I need any custom blocks etc?

2. How do I do overworld animations? If I can get three exits, I need to create a different animated (flashing) level tile...

I could go without the three exits, however because of the levels placement, it would need to be always revealed and it would be floting in the air (its a bridge level).

So any help would be great.
Alastor the Stylish
Hey! I made a cool game! It's called "I poisoned half the food, so if you eat you might die!" Have a taco.


Level: 114

Posts: 2245/7620
EXP: 16258468
For next: 51099

Since: 03-15-04
From: Oregon, US

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-22-04 08:08 AM Link | Quote
Make a custom block that changes what event an exit trigger when touched. Make this block work as a level exit. Voila, third exit. I'm not sure changing the direction enabled would be possible but having that direction enabled from the start and having the event activate the path so you can't go along it anyway would probably work You could probably do the same thing to make 4+ but that would be rather awkward, though not completely useless if you were to use new path tiles triggered by the event to alter the path.
Not sure the overworld animation thing is possible; why not just use a different shape for it that overwrites either the small or big level icon? That's what I'd do, anyway.


(edited by Kratos Aurion on 09-21-04 11:09 PM)
(edited by Kratos Aurion on 09-21-04 11:15 PM)
Simon

Koopa
Level: 19

Posts: 32/115
EXP: 30045
For next: 5732

Since: 03-18-04
From: Sweden

Since last post: 1 day
Last activity: 7 hours
Posted on 09-23-04 01:39 AM Link | Quote
Originally posted by Kratos Aurion
Make a custom block that changes what event an exit trigger when touched. Make this block work as a level exit. Voila, third exit. I'm not sure changing the direction enabled would be possible but having that direction enabled from the start and having the event activate the path so you can't go along it anyway would probably work You could probably do the same thing to make 4+ but that would be rather awkward, though not completely useless if you were to use new path tiles triggered by the event to alter the path.


I don't think that would work as the event tiles that makes out the visual path on the OW map has nothing at all to do with what path Mario will actually follow. Thus, if a direction is enabled from the start, Mario will be able to walk in that direction regardless of whether the event showing the 16x16 path tiles has been triggered or not. You might be able to make the custom block enable the new direction for you when it's triggered though.
cpubasic13
17 years old now. Time to buy some M rated games by myself!
Level: 54

Posts: 564/1346
EXP: 1206934
For next: 26936

Since: 03-15-04
From: Blame my parents, Eddy

Since last post: 2 days
Last activity: 1 day
Posted on 09-23-04 03:12 AM Link | Quote
Originally posted by Kratos Aurion
You could probably do the same thing to make 4+ but that would be rather awkward, though not completely useless if you were to use new path tiles triggered by the event to alter the path.


Think about that for a second... you enter one way (lets say the bottom) and you have four exits. How will that work?

Anyway, It could be possible, but you would need a custom block as since SMW originally came with only two different exit sprites. ASM could also do it, but you also have to remember about LM's limits. It would not allow you to edit the third exit in it, so you would have to use ASM...
Alastor the Stylish
Hey! I made a cool game! It's called "I poisoned half the food, so if you eat you might die!" Have a taco.


Level: 114

Posts: 2253/7620
EXP: 16258468
For next: 51099

Since: 03-15-04
From: Oregon, US

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-23-04 03:16 AM Link | Quote
Actually, Simon, I just checked. Even if the direction is enabled from the start, if there is no path tile there you won't be able to go in that direction. You going off in an odd direction would be strange but it could be fixed pretty easily, just set the three-way level as one where you don't move after level completion. Of course, if changing the direction IS possible, none of that would be necessary.

EDIT: CPUbasic, you didn't understand. The fourth exit changes the path that the first or second goes along via layer two 16x16 event-activated path tiles. To prevent it from harming anything, the level after it could have going to the level the path to which was overwritten and have that direction enabled from the start so you wouldn't have to do anything to get to it. Understand?


(edited by Kratos Aurion on 09-22-04 06:19 PM)
Escherial

Shyguy
Level: 17

Posts: 61/90
EXP: 20866
For next: 3877

Since: 03-15-04
From: Pasadena, CA

Since last post: 202 days
Last activity: 38 days
Posted on 09-23-04 09:21 AM Link | Quote
Let's not forget the possibility of enabling events that aren't directly related to moving on to the next level (i.e. terrain changes on other parts of the map); I think that more than three exits would be useful in such cases.

I'm trying to get a three-exit setup working smoothly (using a little ASM), but I'm having trouble figuring out the address that states which direction to enable upon level completion. If anyone knows the numeric values for Up, Down, Left, and Right, it'd make searching for the address a lot easier. I've tried the obvious 0, 1, 2, 3 for those directions, respectively, but that's not it.

Once I find that address, it should be entirely possible to write up a block that not only executes an arbitrary event upon level completion, but moves the player in the direction that the event makes passable as well.

Once again, if anyone knows the numeric values for Up, Down, Left, and Right, it'd make searching for the address a lot easier (please, Fu? ).
Simon

Koopa
Level: 19

Posts: 34/115
EXP: 30045
For next: 5732

Since: 03-18-04
From: Sweden

Since last post: 1 day
Last activity: 7 hours
Posted on 09-23-04 02:53 PM Link | Quote
Originally posted by Kratos Aurion
Actually, Simon, I just checked. Even if the direction is enabled from the start, if there is no path tile there you won't be able to go in that direction.
Fmmf? I'll have to look in to that more closely...

Originally posted by Kratos Aurion
EDIT: CPUbasic, you didn't understand. The fourth exit changes the path that the first or second goes along via layer two 16x16 event-activated path tiles. To prevent it from harming anything, the level after it could have going to the level the path to which was overwritten and have that direction enabled from the start so you wouldn't have to do anything to get to it. Understand?
But what if the player finished the level through the third exit before using the exit that would trigger the event that was meant to be overwritten by the third exit's event, that way, the player could reach two new levels using only one exit and when the player finally does use the exit with the event that was meant to be overwritten it will instead overwrite the third event that was meant to overwrite the event that has now overwritten it but was meant to be overwritten by... you get the picture
Alastor the Stylish
Hey! I made a cool game! It's called "I poisoned half the food, so if you eat you might die!" Have a taco.


Level: 114

Posts: 2258/7620
EXP: 16258468
For next: 51099

Since: 03-15-04
From: Oregon, US

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-24-04 12:53 AM Link | Quote
Originally posted by Simon
But what if the player finished the level through the third exit before using the exit that would trigger the event that was meant to be overwritten by the third exit's event, that way, the player could reach two new levels using only one exit and when the player finally does use the exit with the event that was meant to be overwritten it will instead overwrite the third event that was meant to overwrite the event that has now overwritten it but was meant to be overwritten by... you get the picture
Yeah, it will graphically glitch then, but when you go in to a new level or in to a different map area and then go back it'll be fixed provided the replacement event is after the first one. It's not like the path will kill itself... As is my understanding, anyway.
Simon

Koopa
Level: 19

Posts: 38/115
EXP: 30045
For next: 5732

Since: 03-18-04
From: Sweden

Since last post: 1 day
Last activity: 7 hours
Posted on 09-24-04 02:09 AM Link | Quote
Originally posted by Kratos Aurion
Yeah, it will graphically glitch then, but when you go in to a new level or in to a different map area and then go back it'll be fixed provided the replacement event is after the first one. It's not like the path will kill itself... As is my understanding, anyway.


There will still be the graphical glitch though and we can't have that can we?
Alastor the Stylish
Hey! I made a cool game! It's called "I poisoned half the food, so if you eat you might die!" Have a taco.


Level: 114

Posts: 2259/7620
EXP: 16258468
For next: 51099

Since: 03-15-04
From: Oregon, US

Since last post: 2 hours
Last activity: 2 hours
Posted on 09-24-04 03:51 AM Link | Quote
So you can make a custom block that you can only pass through when event ___ is passed where ___ is the number of the event to be replaced, and put it in the way of the extra exit.
Escherial

Shyguy
Level: 17

Posts: 62/90
EXP: 20866
For next: 3877

Since: 03-15-04
From: Pasadena, CA

Since last post: 202 days
Last activity: 38 days
Posted on 09-24-04 09:31 AM Link | Quote
So, anyone have any ideas on what values correspond to Up, Down, Left, and Right for the directions to enable upon beating a level? If I can figure that out, the little hack I'm throwing together to demonstrate multiple exits will be complete.

This is kind of off-topic, but the MacOS X version of Snes9x has this amazing feature where you can monitor a memory address as the game is running; it'll display the value at that address in the upper-left corner (customizable, of course, for signed/unsigned/hexadecimal display and varying address widths). I'm a little disappointed that it can only show one address at a time, but it's still incredibly useful. I recommend it.
FuSoYa
Defender of Relm
Level: 26

Posts: 127/255
EXP: 99529
For next: 2746

Since: 03-15-04
From: Moon

Since last post: 7 days
Last activity: 7 hours
Posted on 09-24-04 09:49 PM Link | Quote
Originally posted by Escherial
So, anyone have any ideas on what values correspond to Up, Down, Left, and Right for the directions to enable upon beating a level?


0, 1, 2, 3, bit-shifted from the upper or lower half of the upper nibble depending on whether it's for the normal or secret exit.
Escherial

Shyguy
Level: 17

Posts: 63/90
EXP: 20866
For next: 3877

Since: 03-15-04
From: Pasadena, CA

Since last post: 202 days
Last activity: 38 days
Posted on 09-25-04 12:41 AM Link | Quote
Thanks, FuSoYa; I really appreciate the help . Er, sorry to pester you more, but what's in the lower nibble of that byte? This emulator can't search for values that are less than a byte in size, unfortunately, so I need to reconstruct the entire byte to look for it. Also, did you mean that the normal exit direction is in the upper half of the upper nibble and the secret is in the lower half or is that vice versa? Er, and is the SNES little or big-endian?

Sorry for all the questions answer what you like, I'm sure I'll find something myself if I spend long enough researching/staring.
BMF98567
BLACK HAS BUILT A SILLY DICE-MAZE!
GO!

Current list of BURNING FURY >8( recipients:
- Yiffy Kitten (x2)
- Xkeeper
Level: 53

Posts: 363/1261
EXP: 1094149
For next: 62970

Since: 03-15-04
From: Blobaria
Special Move: Rising Meatloaf Backhand Combo

Since last post: 21 hours
Last activity: 1 hour
Posted on 09-25-04 02:26 AM Link | Quote
Originally posted by Escherial
This is kind of off-topic, but the MacOS X version of Snes9x has this amazing feature where you can monitor a memory address as the game is running; it'll display the value at that address in the upper-left corner (customizable, of course, for signed/unsigned/hexadecimal display and varying address widths). I'm a little disappointed that it can only show one address at a time, but it's still incredibly useful. I recommend it.
For everyone else, there's always my method of replacing a timer digit or two with a memory address, though you need to replace an entire page of 2bpp tiles with values 00-FF in order to get much use out of it. I think I may have released such a hack on the old board...
Keikonium
Banned
Level: NAN

Posts: 678/-2459
EXP: NAN
For next: 0

Since: 04-02-04

Since last post: 63 days
Last activity: 9 hours
Posted on 09-25-04 03:03 AM Link | Quote
Thnaks for so many replys, however I really dont understand that much of it. However, Escherial, seems to be getting somewhere with this. Escherial, if and when you do get the block working, would you be able to submit it to jonwil (Block tool creator. If he is still working with that...?), or to me so I could use it in my hack? It would be so useful. Thnaks and good luck!
FuSoYa
Defender of Relm
Level: 26

Posts: 129/255
EXP: 99529
For next: 2746

Since: 03-15-04
From: Moon

Since last post: 7 days
Last activity: 7 hours
Posted on 09-25-04 10:24 AM Link | Quote
Er, sorry to pester you more, but what's in the lower nibble of that byte?

A few levels seem to have it set to the same value as the upper nibble, but it doesn't appear to do anything. I suspect it's not really used. If you open the OV editor and switch to layer 1 editing mode, then move the mouse over a level, the "D:" value in the status bar is the byte that holds the directions to enable.

Also, did you mean that the normal exit direction is in the upper half of the upper nibble and the secret is in the lower half

Yes.

Er, and is the SNES little or big-endian?

Little endian.
Add to favorites | "RSS" Feed | Next newer thread | Next older thread
Acmlm's Board - I2 Archive - Super Mario World hacking - ASM to enable 3 exits? | |


ABII


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



Page rendered in 0.019 seconds.