Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Patashu wrote:
Cronikeys wrote:
The trick is everything before 9 seconds in the video. Rather than going back out the door, you'd continue down the stairs toward the final boss. I just go back out to show that the trigger zone is still there.
You should add an annotation to the video to make it clear. (I figured it out on the second watch through lol)
from first plane pad before bridge outside hooktail castle you can guide your way down to an HP plus badge, jump in the water, and then fly across the bridge as normal (might be faster than getting other badges for selling or whatever - I don't know the route at all)
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
jlun2 wrote:
Cronikeys wrote:
I found this trick:
video
It saves about 2 minutes by skipping a cutscene and a miniboss.
How does it skip it? You seem to be stuck during the dialogue before disappearing.
The trick is everything before 9 seconds in the video. Rather than going back out the door, you'd continue down the stairs toward the final boss. I just go back out to show that the trigger zone is still there.
This is slower than realtime speedruns of this level. Also, you should probably put some context in your posts instead of just linking a video.
If you're looking for feedback - your routing through the level isn't good. You shouldn't visibly stop moving (like at ~5 seconds into your movie) in a TAS unless absolutely necessary. You should do some research and know what you're doing throughout the level instead of just brute forcing your way through with rerecords.
On a more technical note, I'm pretty sure Bizhawk or Lsnes are the suggested emulators for Snes games, now. This looks like it was done in Snes9x.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Kirkq did some more testing and it seems it's based entirely on Banjo's facing angle when you destroyed the last applicable object (beehive, enemy, etc.)
This angle always makes the Conga jiggies overlap:
(~10 degree leeway)
Other jiggies this is known to work on: FP boggy sled jiggy, x marks the spot jiggy (can cancel animation with water), flower pot jiggy in MMM
I'm testing other stuff now and will edit if I find anything!
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Kirkq wrote:
This may only be useful for the Conga jiggies and the Boggy sled jiggy. We will be sure to look for anything else that uses this value.
Just posting this here for documentation purposes (we aren't getting this jiggy in any%): the x marks the spot jiggy in TTC also pops out at a random angle. It's possible to collect it in the water and skip the animation.
Also, if the xyz coordinates are heavily involved with the RNG's logic, that would explain why the unmoving huts result in the same value. I've looked at those objects in a BK level editor and there is no meta data stored with them.
Patashu wrote:
Why not say, 'if HP is at address X then random trajectory is at address Y', and everyone else can find the difference between their HP and your HP, remove the same difference from your Y and find their Y?
Bizhawk is coming out soon with N64 support and that is what we will be doing the TAS in. It has native ram watch features, so MHS addresses will be a thing of the past soon anyway!
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Ringrush is working on the route. Right now it follows closely with "any%" but includes a lot more orange clips and this glitch:
Link to video
This skips Crystal Caves, 3 moves (Monkeyport, PT Twirl, Super Simian Slam), and a rainbow coin.
His most recent stream on Twitch was him routing the TAS up to Aztec and he will probably work on it more soon.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
I found a way to make physics in some games more "console accurate" by backporting some things from Mupen64plus to Mupen.
I did it with Donkey Kong 64 in mind, but I'm pretty sure the code I changed also fixed Blast Corps, Perfect Dark, Banjo-Kazooie (some jumps are now possible that weren't before), Banjo-Tooie (fixes some problems with its physics), and probably a lot more.
Moral of the story: if there's a problem in Mupen, it might be fixed or fixable. Also, a lot of games that "can't be TASed," can be TASed.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
I fixed the physics problems. For example, before this fix you couldn't make the jump from the tree to the switch in Jungle Japes opening. Also, you couldn't make a backflip onto a crystal in the Crystal Caves lobby. Also, the intro played really, really fast and the rap cutscene was desynched. There were lots more problems like this, but all of them have been fixed as far as I know.
TAS is ready to be made! Swordless has already started it I think (I sent him an advance copy of the Mupen build).
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
I made it possible to run the US version on a special build of Mupen I made:
Link to video
There's still more I want to fix, but progress is progress and we're now closer to a DK64 TAS :)
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Sorry I missed your IRC message. It's possible that the desync actually caused a different wing to be loaded and therefore a different set of levels. This might be why a different level loaded during playback. Wings in the SNES version are selected by pressing left or right at a certain time during the opening.
I did a full trial playthrough with rerecords on Bizhawk and didn't experience any desyncs. There is a lot of lag on the SNES version but the Genesis version seems to not have any lag and it's the version I will probably be using (I estimate it's a minute faster than SNES).
The Genesis version seems like the 1.0 of the game -- I'm going to try finding Genesis exclusive glitches. I found some interesting "wrong warp"-y things in the SNES version that I still need to try out on the Genesis version:
Link to video
If you put on a diving suit while entering a bonus game it will sometimes send you flying out of bounds across the entire level when you leave (as shown in the video) haha... Minigames take forever to get in and out of on the SNES version, though, so it's probably not useful.
Also, if you enter the diving suit when you enter the flying portion of a space level, when you leave you won't be wearing it anymore but you will move as if you do and you can't take it off or use any other items. Also, if you die while in the flying section the sprite will glitch out and the game will softlock.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
There was a topic called "Bubsy" but I didn't think two games in one topic was a good idea. Plus it's from 2008.
Anyway, I spent an hour or so last night doing some research on Bubsy II. I want to start a run of this game as a side project to Banjo-Kazooie and Banjo-Tooie since it's one of my childhood favorites (believe it or not). The series is also (in)famous for its terrible quality. The run would be about 7 minutes to 20 minutes depending on game mode (see below).
Relevant Settings:
"Play for Score" (Default) vs. "Play for Time" - No differences besides on-screen display and level time limits afaik
"Floor 1/2/3 Only" vs "Grand Tour" (Default) - alters length of the game (Grand Tour = all floors but not all wings)
"1 Player" vs "2 Player Friends" - 2nd player can control helpers that kill enemies
Levels:
Floor 1 West Egypt "King of De - Nile" (Estimate: 26 seconds)
Floor 1 West Space "Star Wreck" (Estimate: 31 seconds)
Floor 1 West Music "Bach in Time" (Estimate: 20 seconds)
Floor 1 West Aerial "The Hindenberger" (Estimate: 28 seconds)
Floor 1 West Medieval "Hamalot" (Estimate: 15 seconds)
or
Floor 1 East Egypt "Dark Side of the Tomb" (Estimate: 23 seconds)
Floor 1 East Space "Star Boars" (Estimate: 26 seconds)
Floor 1 East Music "C Sharp or B Flat" (Estimate: 23 seconds)
Floor 1 East Aerial "Fleece Academy" (Estimate: 24 seconds)
Floor 1 East Medieval "My Penguin For A Horse" (Estimate: 14 seconds)
Floor 1 Boss "Aporklyps Now" (Estimate: 21 seconds) or Final Boss "Oinker P. Hamm" in "Floor 1 Only" mode
Floor 2 West Egypt "Mummy Dearest"
Floor 2 West Space "Cattlecar Piglattia"
Floor 2 West Music "Sax, Drums and Rock and Roll"
Floor 2 West Aerial "Swine Flew"
Floor 2 West Medieval "Goat Of Arms"
or
Floor 2 East Egypt "The Lion, the Switch and the Hoardroom"
Floor 2 East Space "Mighty Morphin' Bobcat Dangers"
Floor 2 East Music "Forget Do and Re, what About Me?"
Floor 2 East Aerial "The Great Goatsey"
Floor 2 East Medieval "Richard the Swinehearted"
Floor 2 Boss "Pig Trouble in Little China" or Final Boss "Oinker P. Hamm" in "Floor 2 Only" mode
Floor 3 West Egypt "I Sphinx Therefore I Ham"
Floor 3 West Space "Plan Swine from Outer Space"
Floor 3 West Music "Suey Lewis and the Ewes"
Floor 3 West Aerial "A Fly in the Oinkment"
Floor 3 West Medieval "The Once and Future Bobcat"
or
Floor 3 East Egypt "A Tomb With A View" (Same as "I Sphinx Therefore I Ham" lol)
Floor 3 East Space "Mars Needs Bobcats"
Floor 3 East Music "2 Live Shrew"
Floor 3 East Aerial "Wild Boar Yonder"
Floor 3 East Medieval "Surely You Joust"
Final Boss "Oinker P. Hamm"
Possible routes:
F1W then FB (Using "Floor 1 Only" Mode)
F1E then FB (Using "Floor 1 Only" Mode)
F2W then FB (Using "Floor 2 Only" Mode)
F2E then FB (Using "Floor 2 Only" Mode)
F3W then FB (Using "Floor 3 Only" Mode)
F3E then FB (Using "Floor 3 Only" Mode)
F1W then F2W then F3W then FB (Using "Grand Tour" Mode)
F1E then F2E then F3E then FB (Using "Grand Tour" Mode)
I think that's all of them.
Looking for other peoples' opinions about which game mode this is played on as well as glitches and tricks that you think might be useful. I haven't tested any of the Bubsy 1 tricks but I'm sure some of them work. It's also probably possible to one cycle that 'boss" I faced.
Edit:
I found this glitch:
Link to video
It might be useful in one of the music levels.
Edit:
Dying while getting victory doesn't work in this game like it does in Bubsy 1. I tested it in Floor 1 West Medieval "Hamalot"
Edit:
I've talked to a few people about which game mode I should do. The default is "Grand Tour" which would be 15/30 levels, but "Floor 1/2/3 Only" is an option that would make it only 5 levels and then the final boss instead of the floor boss. Unlike games with quick warps to the finish (pretty much all the Super Mario Bros. games), these aren't really alternate paths and instead just options to play less of the game. They behave similarly to password saves in Mega Man. I think doing "Grand Tour" is the way to go since a single floor doesn't feel like a full game even if you do face the final boss and get credits.
Edit:
It seems the Genesis version is a lot faster. You can skip a lot of the title screens. I might switch to focusing primarily on that version - Grand Tour mode. I'll look into which wing is fastest, but right now it's looking like East.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Kirkq has worked on a script for MHS that will help me get the values I need. He's going to train me on that sometime soon :]
In the meantime, I found a rather significant glitch:
Link to video
It's now possible enter Hailfire Peaks before Grunty Industries. This could potentially change the TAS route compared to the RTA route (this is a very difficult trick that probably won't end up in realtime runs).
Also for those who want to see a Banjo-Tooie TAS, I spent a couple of hours doing an IL of this jiggy as practice:
Link to video
It was done before Kirk had finished his MHS script. My main goal was to beat bobmario's tas of the same area (which I did by 4 seconds using a cutscene skip).
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Dice Power wrote:
Heya! I am new to the boards, and very interested in the concept of TASing. Though time has not permitted me to personally get into the ROM game play scene, I had an idea so well suited to this thread, that I had to register at once!
In Treasure Trove Cove, has anyone tried entering "CHEAT NOW BANJO WILL BE ABLE TO SEE IT ON NABNUTS TABLE" and dying to the crab on the same frame as, or a frame(s) after, entering the final "E"? Perhaps Banjo will revive in Click Clock Wood if done properly.
Welcome to the forum Dice Power :] Interesting idea, but unfortunately Banjo is invincible in the time before the cutscene starts playing. I also tried to get hit on the frame I ground pounded the e but it only ended up flipping the crab.
The only thing interesting I found was that the squirrel family loaded after the rest of the scene by a few frames. It's noticeable. Probably just indicative of how the cutscene works rather than anything significant:
On the subject of cutscene death warps -- usually in Banjo-Kazooie, Banjo has a scripted position following the cutscene. For example, if you die while hitting a witch switch you will be alive standing on the switch following the cutscene. I noticed something similar happened here where even if I ran away from the E during the time before the cutscene, once it was over I was standing back on it and the crab was back in his cage.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
This was one of my favorite games growing up :) Loved listening to the music, collecting the gems, and wasting 8+ batteries every time I played it hehe
Thanks for making this! Found it very entertaining and it looked great technically.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
RachelB wrote:
You'll need to find a pointer to the data. Which is easy if you know where it starts, but you probably don't. I'd guess the easiest way would be to just search for pointers to every address within a kilobyte or two before one of the relevant address.
Finding pointers and offsets and all that is beyond my skill range. I've tried for many hours to find these memory addresses and researched pointers, offsets, assembly, etc etc... but basically I'm not a computer programmer and 99% of what I'm reading goes over my head.
If someone could help me get speed and angle I would appreciate it.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Patashu wrote:
It's unlikely that it's an emulation issue to move memory addresses around. Perhaps the addresses you're looking for are inconsistent because, now that you can control many different characters (banjo alone, kazooie alone, clockwork kazooies, etc) it now stores information about them dynamically?
Whatever the cause, I need help on dealing with this problem before an optimal TAS can be made. I don't mind making the TAS without these values, but I feel like it would be lacking on the technical side if I don't have perfect angles. I'm not going to calculate my angle each frame by comparing to the xyz of the previous frame (unless anyone has a lua/cheat engine/mhs script that does this automatically). I also really don't want to have to find new memory addresses for everything every 500 or so frames.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
darkszero wrote:
Vectors are usually stored in memory with three numbers, for x/y/z. These values also probably aren't integers and instead floating point numbers (or fixed point, depends on the n64).
I've tried finding dedicated addresses without success. I have experience locating memory addresses in both 2D and 3D games on various consoles, but for whatever reason the Banjo-Tooie addresses are different. I've tried searching for all types of values. I've spent hours trying everything I can think of.
Like I said in a previous post, I found values that give me the angle - but they aren't persistent. They work in one room but don't work in the next -- sometimes they don't even work throughout the same map.
I either need help finding a solution or advice on how to proceed without these values. I'd wager to bet it's either a peculiarity of Banjo-Tooie (seeing as I have no problem at all locating and using the Banjo-Kazooie memory addresses) or that it is an emulation issue.
Edit:
To illustrate the problem:
Link to video
See how the bottom three addresses (which appear to be angle) change from a meaningful value to randomness at 35 seconds in? It does this for -all- addresses I find for speed or angle. I have a list of like 40 already. It changes between rooms and just randomly on the same map like this. Again, it does this for speed as well. I've found addresses that increase from 0 - 700 based on how fast you are moving but they just randomly disappear like this.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Patashu wrote:
Have you considered that speed/direction might be stored as a (normalized?) vector instead of as angle/magnitude?
I'm not really sure what that means or how I would find that :s I think what you're saying is a value that is positive when headed north and negative when going south or something like that and an absolute value that's higher or lower dependent on speed. I found something similar to that for camera angle but it didn't persist through loading zones or for very long on the same map, either.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Alright so updates -
I had the idea to get the white jinjo in Jade Snake Grove first instead of the one in the pool and it turns out that it is faster (Pjii timed it) by about 7 seconds which works out well because skipping the opening cutscene on frame 1 yields that jinjo pattern :) no need to let the opening cutscene play for 15 frames.
Anyway, right now my biggest problem is memory addresses. I was able to find Banjo's X, Y, and Z (00A23B00, 00A23B08, 00A23B04) but I can't find facing angle or speed. I find values that seem to work, but they aren't dedicated addresses and change between loading zones and sometimes multiple times on the same map. Help would be appreciated!
If no facing angle or speed address can be found, what would be the best way to proceed? Obviously it'd be hard to optimize a straight line with a spinning camera without these values.
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
pyromaniac wrote:
Do you think the direction of the jiggy has anything to do with how many oranges conga throws?
Not as far as I can tell. It seems to only be related to the items that pop out at "random" angles - like from the huts, beehives, etc. Boggy's Jiggy in FP works the same way.
Also, I found a new glitch that lets you tilt your model (and hitbox). I'm trying to find other places where this is possible:
Link to video
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Disregard the list of jiggies and the route for Mumbo's Mountain. The list of skipped jiggies is changing because we've decided to go to BGS as bee instead of CC.
Today I wrote a Grunty's Lair route for Any%. It's a work in progress and I'll probably be frequently updating this post, but here it is so far:
Warp Pot 1: TTC puzzle room pot (warps to 3)
Warp Pot 2: Tunnel under CC (warps to 6)
Warp Pot 3: First level of 350/450 note door room (warps to 1)
Warp Pot 4: Second level of 350/450 room (warps to 5)
Warp Pot 5: RBB lobby (warps to 4)
Warp Pot 6: CCW lobby (warps to 2)
Warp Pot 7: Furnace Fun (warps to 8)
Warp Pot 8: 810 note door room (warps to 7)
Grunty's Lair Route
GL1
1: Get Jiggy, MM Puzzle Podium, Enter MM
MM
GL2
1: Talon trot to 50 note door, go through
2: TTC Puzzle Podium, go to next area
3: Jump down to doorway to TTC and enter
4: Jump to upper floor from rubble and jump into TTC
TTC
GL3
1: Get TTC witch switch jiggy
2***: CC Puzzle Podium (may be able to jump to it before TTC)
3***: Activate Warp Pot 2
4: Raise platforms and enter CC
CC
GL4
1: Open 180 note door
2: Freezeezy Peak Puzzle Podium by jumping through swamp
3: Take bridge back because health is low (death warp puts you back at puzzle podium)
4: Open 260 note door
5: Destroy spider web covering flight pad
6: Enter Freezeezy Peak
FP
GL5
1: Press flight pad switch and pause buffer to it to get flight
2: Get FP witch switch jiggy and mumbo token
3: Clip out of bounds and beak bomb over to pots to activate them oob (Warp Pot 3 and 4)
4: Trigger the loading zone past the 450 note door
5: Swim to MMM Puzzle Podium room, jump up to it, and open MMM
6: Get Mumbo Token in next alcove [[[potentially reset here]]]
7: Open 350 note door
8: Break open gate to Pumpkin Shack and enter MMM
MMM
GL6
1: Go into Pumpkin Shack
2: Transform back into BK
3: Hit the water switch [[[reset]]]
4: Get mumbo token behind warp pot in TTC lobby area and jump in (Warp Pot 1 to Warp Pot 3)
5: Walk through the cobwebs and open 450 note door
6: Hit water level 2 switch in front of RBB
7: Trigger RBB warp pot, go through it, and destroy web (Warp Pot 5 to Warp Pot 4)
8: 640 note door skip
9: Activate CCW puzzle podium
10: Warp back and get Clanker's Cavern witch switch jiggy (Warp Pot 3 to Warp Pot 1)
11: Open CCW
12: Warp back and do 640 note door skip again (ugh) (Warp Pot 1 to Warp Pot 3)
13: Enter CCW
CCW
GL7
1: Escape as bee (Using Warp Pot 6)
2: Warp back with warp pot (Warp Pot 6 to Warp Pot 2)
3: Enter BGS oob
BGS
GL8
1: Enter GV through top of tree
GV
GL9
1: Enter warp pot that goes to RBB area (Warp Pot 4 to Warp Pot 5)
2: Enter RBB out of bounds
RBB
GL10
1: Maybe warp back with the warp pot by RBB or just fly over wall (Would be Warp Pot 5 to Warp Pot 4 if faster)
2: Tunnel above 640 note door
3: Detransform
4: Open 765 note door
5: Furnace Fun
6: Open 810 note door
7: Door of Grunty Skip
8: Gruntilda
I made this video to show off some of the things you can do as bee that there weren't previously videos of:
Link to video
Joined: 7/12/2011
Posts: 142
Location: Indianapolis
Alba wrote:
I was going to suggest the White Jinjo Manipulation. As for Mayhem Temple, I have some input. When you take control of Mumbo for the first time, maybe you could do the following in sequence:
1. Collect the jiggy at the top of the Temple
2. Drop down and collect the Treble Clef behind the Temple
3. Drop down to the Golden Goliath statue
I say this because the sign next to the statue can be manipulated with JamJar's dialogue for signs (provided you haven't used that dialogue yet). That way, you could save taking damage and skip that dialogue using L+R+B. Just a thought ^_^
It's faster to get the jiggy on top of the temple with Beak Bomb (the flying move) after getting the Jinjo on the roof of the kickball arena and I'm planning on using that sign trick thing -- it's mentioned in the realtime route I'll be somewhat following.
Most of the changes I'm making to the route are going to be once I get clockworks. There's a glitch called "clockwork warping" that lets you enter doorways as Banjo and Kazooie or Kazooie solo from a distance.
Example (seen here in the first part of the video to enter Terrydactyland before opening it):
Link to video
This can be used for simple routing adjustments instead of sequence breaks in places that are unrealistic for realtime runs, so I've been going level by level and making note of where I might use these instead of walking/climbing/swimming to doors.