Banner
Views: 992,703,097
Time:
19 users online: 1UPdudes, ArmaRood, bblakebb, Blizzard Buffalo, Chambo, Dark Prince,  Deeke, Gamet2004, gui, Heraga, kuroki, kurtistrydiz,  MarioFanGamer, Natsu, Qamic59, Serge, SuperMarioDs64, WIKIDNEZ, Y0shi - Guests: 64 - Bots: 108 Users: 54,448 (2,092 active)
Latest: Qamic59
Tip:
Not logged in.
Details for Modify Timers
UberASM Repository - Modify Timers Link - Show random
File Name: Modify Timers
Added:
Authors: cthulhu
Type: Level, Game Mode
Includes GFX: No
Includes Hijack: Yes
Featured: No
Description: This allows you to modify up to 11 different timers per level, making some faster or slower.

You must patch modifytimers_asar.asm with Asar.

Requires 11 bytes of empty space, its recommended that if you aren't going to use specific timers to remove them.

You'll have to remove them from both modifytimers_asar.asm and modifytimers_uber.asm for things to work.

Currently supports:
* Bullet Shooter Timer
* Bullet Generator Timer
* PBalloon Timer
* Falling Spike Timer
* Hit Invincibility Timer
* PSwitch Timer
* Keyhole Exit Timer
* Throwblock Timer
* Thwomp/Thwimp Timers
* Yoshi Swallow Timer
Tags: level, lorom, modify, sa-1, timers
Rating: No rating
Download: Download - 2.82 KiB
56 downloads
Screenshots
Previous 
 Next
Fernap
Tested with:
- Lunar Magic 3.31
- SA-1 Pack 1.40
- Snes9x 1.60, Bsnes-plus 05
- UberASM Tool 1.4
- Asar 1.81

Notes:
- Removed a couple apparently unused, leftover lines relating to the P-balloon that could have caused confusion and even a problem if someone tried to change values
- Two of the read3()s in the unpatch file were missing the needed +1, which has been corrected

Modulo the couple small fixes above, everything seems to work as intended, so this is accepted. I'll note however, that some of the timer values may not behave as expected or may be of limited use. In particular:

- The value for bullet bill generator is ANDed with the frame counter, so it should be set to one less than a power of 2 ($01, $03, $07, $0f, $1f, $3f, $7f, or $ff) to avoid odd timing effects. For example, a value of $1f (decimal 31) would fire every 32 frames.
- The value for the Yoshi swallow is ANDed with the frame counter in order to determine when to decrement. So it should also be one less than a power of 2. It defaults to $03, so it can only be halved, doubled, quadrupled, etc.
- The timer for bullet bill shooter shooter only decrements every other frame, so the total time between shots is double what's set here.
- The timer for the P-balloon decrements every fourth frame, and since the default is already $ff, you can only lower it, not raise it.
- The value for the throw block decrements every other frame, and since the default is already $ff.
- The value for the P-switches decrements every fourth frame.
- The value for the keyhole causes it to pause for that many frames while at maximum size. This seems of pretty limited use, and if used, it would likely be done ROM-wide, rather than per-level. As such, it would be simpler to implement with a simple hex edit, and I'd simply recommend removing it here.

To actually use this, I'd recommend using the supplied UberASM file as gamemode 14 along with any desired ROM-wide default values (you can use $00 for the vanilla defaults). Then, make individual level UberASM files to override these global defaults as desired. Also take note of the supplied default values, many of which are probably not what you want to actually use.
Posted by:  Fernap - | Link
HammerBrother
Note that some timers don't respect the $9D flag, such as the p-balloon timer. Patch for that.

Some don't respect it only if $14 is divisible by 4 when $9D is set:
-Yoshi Swallow Timer
-Star timer
Posted by: HammerBrother - | Link

The purpose of this site is not to distribute copyrighted material, but to honor one of our favourite games.

Copyright © 2005 - 2022 - SMW Central
Legal Information - Privacy Policy - Link To Us


Menu

Follow Us On

  • YouTube
  • Twitch
  • Twitter

Affiliates

  • Super Mario Bros. X Community
  • ROMhacking.net
  • Mario Fan Games Galaxy
  • sm64romhacks