News:

Don't forget to visit the main site! There's lots of helpful docs, patches, and more!

Main Menu

[SM] [ASM] Activating Destruction Timer Early

Started by FullOfFail, March 14, 2012, 09:03:34 AM

Previous topic - Next topic

FullOfFail

Alrighty, I've tried to do research on this but couldn't find anything to meet my goals. Basically, I would like to activate the destruction timer in the second room and run it over the course of my MegaMetroid mini-hack. You'd go through the hack with the timer counting down, and come full circle eventually back to the landing-site and make your escape.

I think I found a way to extend the timer via a JAM patch. But the problem still remains, how do I activate the Destruction Timer? I found one thread on the subject, but it said the timer was invisible, which wouldn't be useful for my hack.

To make matters worse, I don't know ASM. But, if somebody posts something regarding it, I'll try to learn and experiment to insert it.

If there's any Documentation on it that I missed, please link me.

Thanks.

Scyzer

I've seen a bunch of code for the escape timer before while working with Mother Brain, but I didn't look into it. I can do that for you and see what I can dig up.

Also:
Quote from: FullOfFail on March 14, 2012, 09:03:34 AM
I think I found a way to extend the timer via a JAM patch.
This made me lol, considering to change the timer you only have to go into game behaviour in SMILE...

JAM

#2
I tried to find something but couldn't. I was searching for a differences in the RAM before MB dies and after that but 960 results make me gave up... =(

As for mentioned topic, this solution will not even work. Timer is not invisible, it's not running at all. It's just activation of event $0E that makes rooms on escape path with alternate events exploadind. That's it.

As for my patch, it doesn't effect escape timer at all. This is what it does...

Without my patch.
Overall game time [HH:MM:SS:FF]
00:59:59:58
00:59:59:59
01:00:00:00
01:00:00:01
...
99:59:59:59

With my patch
Overall game time [HH:MM:SS:FF]
00:59:59:58
00:59:59:59
00:60:00:00
00:60:00:01
...
00:99:59:59

I did that patch to be able to check for a minutes, ignoring hours. Let's say, show the best ending if game is lower than 30 minutes and show the worst ending if the game time is higher than 70 minutes.

EDIT: LOL, Sadi... You were in a few centiseconds faster =)

Quote« Reply #1 on: Today at 17:36:10 »
Quote« Reply #2 on: Today at 17:36:10 »

FullOfFail

Quote from: Scyzer on March 14, 2012, 09:36:10 AM
This made me lol, considering to change the timer you only have to go into game behaviour in SMILE...

I wasn't sure if the stock timer could go up to what I would need. I'm still not sure as to what length of time I need exactly since I haven't finished my hack yet, but preferably I'd like to it handle hours. If I could get it to 60 minutes, or 90 minutes, I could probably use that. But I'd need it to be precise, because it's part of a obstacle in and of itself.

Scyzer

Had a look through the routines doc.
You can start the timer by using a short code whenever:


LDA #$000F : JSL $90F084
LDA #$0002 : STA $0943


This will start and draw the timer to the middle of the screen (from where it will move up to the corner like it usually does). The only problem is that the GFX aren't in the VRAM, so it's just a garbled mess. Will need to look into the GFX part of it.

Smiley

You should also remember that a bunch of things can graphically mess up the timer, mostly bosses.

FullOfFail

Well, if it messes up graphically during boss battles, I might just scrap the idea of having it run full-game. I would still need to figure out how to activate the timer, though. Since Motherbrain isn't the final boss.

DigitalMantra said he got Eris to do it via theJathys, but he's never around to ask in him about it.

JAM

Quote from: SMILEuser96 on March 14, 2012, 02:01:38 PM
You should also remember that a bunch of things can graphically mess up the timer, mostly bosses.
Haven't check fo other things, but as for bosses, only Torizos and Mother Brain are corrupting the running timer. Still, possible solution can be hiding the timer diring certain boss battle.

Scyzer

#8
Quote from: JAM on March 19, 2012, 05:22:19 PM
Quote from: SMILEuser96 on March 14, 2012, 02:01:38 PM
You should also remember that a bunch of things can graphically mess up the timer, mostly bosses.
Haven't check fo other things, but as for bosses, only Torizos and Mother Brain are corrupting the running timer. Still, possible solution can be hiding the timer diring certain boss battle.

Not quite...

The timer will corrupt permanently if the total GFX allowed space for all enemies in the GFX list totals more than $1C00.
If you use at least $2040, then the tilesheet will become corrupted (starting with the top left tile, and going left to right, top to bottom, 1 tile for every $20 bytes over)
Some bosses will corrupt explosion GFX, but not the timer. Seems to be limited to tilesheet bosses who use at least $1C00 (Kraid, Draygon, Croc)

This was all tested in the room right after Mother Brain, with no changes to either rooms except the GFX list, using Quickmet through SMILE RF with Geigers snes9X.