Posts for nitsuja


Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Try again, I replaced the link to the removed file. But you can expect v1.51 movies to not be compatible with that version.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
about 2/3rds of my rerecords aren't getting factored in ... It's much much simpler than splicing in the old data, but it does odd things to my rerecord count. ... Of course, route changes aren't done using this method, because they alter the total number of framecount
I think I'm missing something here... You don't use it for anything that changes the frame count, yet it should account for the majority of your re-records? Anyway, if you have some general idea of what the re-record count should be, it's preferable to edit in your best guess than to leave it at some completely wrong value, if you think those should count as "real" re-records. Hydrocity 2: Is it possible to jump from the edge at the end and glide back and forth to get in a hit before the water column starts? Carnival Night 1: Ducking to scroll the screen down after the act causes the signpost to start out lower, then you can scroll the screen back up and it will hit the ground earlier than normal. Icecap 1: At the very start, it's (~3 frames) faster to jump at the earliest frame that will have you already descending while leaving that tunnel at the start. On the first ice slope, you slow down a lot when sliding on it, so it's faster to jump when you land and glide-cancel to start falling again so that you won't hit the slope again. When you spindash up the very steep slope and jump to climb a high wall, you can do that at least 96 frames faster by re-spindashing from higher up on that slope and jumping closer to the wall. The boss can be killed much faster (2 full time units when I tested it) by spindash-jumping from the left edge to hit it while it's still waiting at the top of the screen. Icecap 2: Before the big ring, you can jump at a different time to clear the swing platform instead of landing on its edge, and do a regular spindash (no jump) through the big ring, to save 33+ frames.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Atma wrote:
does it have a cfg file instead of registry bs now, or does that logic still evade the snes9x programmers?
I switched the Windows port to using a .cfg file, yes. But see this post.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
The corkscrews are weird. When I tried that in prior WIPs, it didn't seem to do anything to my jump height at all. I guess I should check again now that I have a speed-watch, though.
They probably don't affect jump height/speed. I think the game only checks that for things that are part of the level, not sprite-based objects like corkscrews or blue wheels.
upthorn wrote:
Err. invisible? There's not much invisible about them ...
They aren't solid until that part of the level starts moving, and you pass right through it later, apparently standing up on something invisible. I see now what was going on, though. You were initially waiting for that moving wall/ceiling on the left to move out of the way past you, and getting up into the area you're supposed to be in doesn't do any good because you have no way of glitching up through the moving floor.
upthorn wrote:
Because of certain techniques I've been using to rerecord partial segments without losing all the work from afterwards, about 2/3rds of my rerecords aren't getting factored in.
Maybe you should factor them in, then? Also, usually when I do that the rerecords get automatically added (because I make the extra rerecords in the original file and then hex in the old input data as necessary from a copy, leaving the rerecord count accurate).
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
Ah, yeah, jumping off the slide early would probably be faster if I didn't have the speed from the hand/gear.
I think I meant, off of the wall early. For some reason Knuckles went straight up the wall instead of the slide, although the wall and slide met at the jumping location. I don't know if it saved timed compared to going up the slide normally. Flying Battery 2: What prevented you from reaching the starpost earlier than that, invisible tiles under the floor you had to wait for? Did you check if the game allowed you to jump at any point while zipping?
upthorn wrote:
Not that I was able to perform in about 20 minutes of testing.
I thought so, I couldn't get Knuckles in there either. I asked because if I manually move him inside that wall, it's a nice zipping area that skips a good chunk of the level, so if there's any way to get in there it would save a lot of time.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Volume Envelope Height Reading should be off (and Fake Mute on) both for recording and for playback. You can get unreliable fast-forwarding otherwise. The other settings should also not be changed during a movie.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
4 spindashes? I think I know where to do the first (to the right of the hand-pad), and possibly the second (just before the upward-slide), and I have a slight inkling as to the last (on the ground after going up the slide). But when you say you used 4, that makes me go "WTF".
You're right on the first 2. The 3rd was on the ground before the spikes that are next to the slide, to get over them after jumping off of the slide early (I'm not sure if that's the fastest thing to do but it is a shorter path distance-wise), and the 4th one was to get over the second set of spikes to where you did a spindash from before.
upthorn wrote:
I didn't think I'd have the height to get to that area if I jumped from the end of the tube. But if the jump(+glide?) can be made, that definitely sounds worthwhile.
Also, after you land and spindash left of where you did, you can jump to hit the top of the tube to get about the same speed you had spindashing from the right. I slid a bit to avoid starting the spindash on the uphill, but that could have wasted more time than it saved.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Marble Garden 2 at 53395: It's 30+ frames faster to not jump there and simply roll left over the top. I don't know if these will work, but you could also try either re-spindashing halfway up, or finding a way to start the spindash up that hill that doesn't add such a long forced walking animation before you can duck on that platform. Hydrocity 2: - 31592: This is a longshot, but can Knuckles somehow glitch into the wall on the right, maybe using the column or spring? - 31876: If not, you can save time here by not stopping on that pad to accelerate. I didn't try to completely optimize it, but I got to the same position after the spikes 22 frames faster (using 4 spindashes instead). - 33485: Gliding this much here wastes a lot of time. I tried jumping from the end of the slide and got over the wall 63 frames faster, again not completely optimized.
upthorn wrote:
sounds suspiciously like the beginnings of a camhack?
It's close, I've been able to view the Hydrocity 1 boss battle offscreen with it, but it tended to cause desync. That could be fixed with lots of savestates, although Gens has worse savestate capabilities (and more savestate bugs) than VBA does. Another problem would be that it only works instantly for sprite-based objects. The level itself needs to scrolls into view slowly or it won't draw at all, and playing 10-12 frames in the future would be strange.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Here are Sandopolis 2 and Lava Reef 1. These probably contain many graphical oddities; the levels are so large that I didn't feel inclined to fix all of them. EDIT: I fixed them up a little and updated those two image links.
upthorn wrote:
I was thinking it probably could be entirely automated if the emulation "middle-man" were cut out, and levels were read directly from the ROM image. Of course, that would entail writing routines to render the sprites onto the landscape, which could be fairly complex.
Rendering sprites and most other objects (not rings or monitors or big rings, admittedly) would involve reimplementing so much of the game's code that it's easier to simply use the game to do it. And if it were done anyway, using it would require mapping out which events each part of the level assumes the character has triggered. The Sonic Advance 1/2/3 maps I made went through emulation and were completely automated because those games have essentially none of the issues I listed above about this game (except for some fudging around where miniboss rooms are in sadv3).
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Here's Flying Battery 2. I took less care about this one, so you might notice some problems like enemies being cut in half or duplicated. And I didn't describe in enough detail... I use the emulator to adjust the camera position, keep track of where in the image each screenshot should be inserted, and do the image scaling. So I'm not doing all that much per screenshot, but it can't be fully automated for many reasons. (Sprite loading zones, incorrect tile graphics if the camera moves too fast or the game lagged while it was moving, water height changing, moving platforms/objects/enemies that cross screen boundaries, big ring animation, overlays that vanish when the character goes behind them, instant death zones, game crashing zones, and forced scrolling areas.) Vertically wrapping levels shouldn't be much harder to do than normal ones. Although Sandopolis 2 is by far the widest level in the game, and I might have to worry about those ghosts getting in the screenshots depending on how they are triggered.
Mr. Pwnage wrote:
The Angel Island 1 map has two visible appearances of the Sonic sprite that probably shouldn't be there: one at the start of act 1 and one after the transition to the act 2 map (at the miniboss cutscene). Can those be cut out?
They could easily be cut out, but I left them there on purpose as icons to indicate the starting positions. It wasn't convenient to do that in Flying Battery 1 because Sonic needs to be in one of those tubes to switch the graphics to show the insides.
Post subject: Re: repost-edit for bump.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
Flying Battery (both) Sandopolis 2, Lava Reef 1 How did you make that, by the way?
Lots of screenshots. Here's Flying Battery 1.
Post subject: Re: repost-edit for bump.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
I actually tried this (landing on the platform running), and it took about 4 frames longer to get to the position I spindash down the hill from. When you tried this how many frames did it actually save?
I thought it would save more, but it only saved 4 frames by the time of reaching that spinning light pole after the balloons. The spin dash started earlier than you did it, slightly on the uphill a few frames after going Super. Ice cap and most of Launch Base looked good to me but I'll take a closer look later.
upthorn wrote:
There's a glitch I can reproduce fairly easily at the end of Mushroom Hill zone 1 which causes Mushroom Hill 2's music not to load -- at least until getting a giant ring. Should I do this, or should I avoid doing this?
I'd do it if it doesn't waste any time and the intro to the Mushroom Hill 2 music doesn't sound better than the continuing of Mushroom Hill 1's music, or if it saves time. By the way, upthorn, are there any levels in particular that you could use maps on, ones that include rings/monitors/enemies/platforms instead of those crappy ones that are currently at TSC? They look like this, except less blurry (I was using too much filtering in that attempt).
Post subject: Re: sync sound with cpu
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Snes9x generates sound when your system needs it, which is terrible because Snes9x should be generating sound when the SNES would really make it, not at arbitrary times in a separate thread (this is why the sound settings to give so many desync problems). The Sync Sound with CPU option makes Snes9x generate sound with the SNES like it should, but it leaves on the other type of sound generation too, which causes conflicts on some systems when both sounds try to play at the same time from separate threads. I believe I've found a fix for the freezing, but that only made it go from "Snes9x freezes" to "Snes9x sounds crackly" on the computers that would freeze. The sound playing code is badly in need of a rewrite, but that isn't likely to happen soon. There have already been several attempts, none of which were successful.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
I wasn't aware you had evidence for that +/- 1 frame variation on each CD read. I haven't personally noticed any unreliable playback of SegaCD movies, only reliable desync on playback, which could have been caused entirely by something that went wrong while recording. (How often does Sonic CD access the disc during a level, anyway?)
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
You could see if Intel has any driver or BIOS updates for your graphic card. But it's possible your graphics card simply doesn't support the features needed for that plugin to render the game correctly. What about trying some different graphics plugins?
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
I think we've been over this before. Gens doesn't randomize load times, so it doesn't matter what SegaCD games were programmed to take into account. Gens may, however, fail to initialize some variables. That could easily have gone unnoticed because its emulation variables are scattered all over and often hidden in assembly files. If some of the uninitialized variables happen to be related to disc loading, that would cause the effect you describe, but there's nothing inherently nondeterministic about CD-based games when the CD is virtual.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
[*]51194: Rolling here instead of running slowed you down.
No it doesn't. But not jumping after I start rolling does.
Are we talking about the same place? Speed going off edge after rolling, which you had: 4096. Speed if you roll then jump: 3890. Running: 4159.
upthorn wrote:
[*]52210: You can make the top move much faster by timing it differently.
Yeah, I was noticing that as I watched one of my old wips that didn't start holding left as soon as possible.
I don't know if "as soon as possible" has much to do with it. Sometimes the top moves 50% faster when it hits the ground, it seemed random.
upthorn wrote:
How about MGZ2, since redoing MGZ1 has caused some desyncs here, you might as well lay those on me now.
Marble Garden 2:
  • 54913: If you jump at the last part of the uphill slope here and hold left, you'll go higher than the ring monitor there, allowing you to glide right and bounce off of the monitor. The optimal jump height and time to glide depends on where that spiked ball is, but it's possible to glide exactly level with the edge, or get caught in-between the edge and the spiked ball (knocking you to the right). Going entirely over where the spiked ball can go is also possible, but probably slower.
  • 55274: Since you can't stop quickly here, it's faster to glide at the earliest moment that will make you hit the platform, then immediately glide again to the right, and spin dash from there.
  • 55344: Stopping to spindash here probably isn't worth it (going by the number of frames it takes to hit the spring). Especially if you make the previous change.
  • 56100: Another place where climbing (~15 frames) earlier would be faster.
  • 57931: It's faster (by 14+ frames) to run and do the spin dash on the ground, then jump or glide to the higher platform while it's still rising.
  • Boss: At the start of the fight, you can jump from the left side of the screen and jump again on the slight uphill slope on the right side, then go left after hitting the edge of the screen, to get in a position where a glide cancel lets you bounce repeatedly on the boss. It doesn't save any time, but it doesn't lose any either (as long as you refrain from bouncing more than necessary) and is probably more stylish.
Carnival Night 1:
  • 51095: You can hold left for 2 frames then jump to land on the platform running, and take out all 3 monitors in a single jump that puts you right back on the platform again at the same high speed.
  • 62294: You can hold right here and glide-bounce off of the bat to get a large upward boost, enough to avoid doing any climbing at all. It saves at least 9 frames.
Carnival Night 2: Have you considered hitting the signpost from the previous act to get the timed objects in this act into better positions?
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
It should probably wait until Gens is better at SegaCD savestates/recording. It is better than it was before, so it probably is already possible to TAS it, but anyone who tries it now will have to deal with lots of desync and freezing problems.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
In actuality, I almost never run into the keyboard limit, because I rarely need to press 9+ keys at once, or those certain keys that don't go together with more than 3-5 at once. AKA: WAV dump is Ctrl-W... I don't use Ctrl for anything in Gens (except Ctrl-T to toggle read-only), which avoids that problem. Ouzo: I had been wondering how you handled 3.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Here's what I do for 2P runs in Gens: - Arrow keys and V/C/X/Space for player 1. - I/J/K/L and H/G/F/O for player 2. - Q for autohold and W for autofire. Delete for pause. 1-9 for load, shift 1-9 for save. - If frame advance doesn't work because I have to hold too many keys at once, I put one of the keys on autohold and try again. Also, I have something that lets me record player 1 and player 2 separately then merge them together, but it only works where the players don't interact with each other at all, otherwise it causes a desync.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Marble Garden 1: (listed by frame numbers in BakUpthornS3KWipV3.gmv)
  • 47022: Why do you glide and cancel here to turn around, instead of simply tapping left for 1 frame? You're already stopped at a wall.
  • 50925: It's at least 7 frames faster to jump over those spikes from below instead of stopping at them first.
  • 51194: Rolling here instead of running slowed you down.
  • 51388, 51517: Should start gliding a few frames earlier, because Super Knuckles climbs so fast.
  • several: Should hold up at the same time as jumping from the wall because it makes you jump from slightly higher.
  • 52210: You can make the top move much faster by timing it differently.
  • 52477: Rolling here and jumping at the next angle change would be faster.
  • 52662: Should start gliding to the boss much earlier than you do, because of the way gliding accelerates and the low speed you have to go through that section at anyway. At least 20 frames faster is possible (and the boss glitch still happens).
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Knuckles can do it. I even posted a movie of it earlier, here.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Why isn't the wall zipping glitch used in Hydrocity 1? Too much time you'd have to stall for that moving column later?
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Some input plugins (like the NRage ones) lock out most mouse input if you set any of the controls to use the mouse. You can still use alt then arrow keys for the menu, alt+tab to switch away from the emulator, and alt+f4 to quit, as always. If you need precision control of the analog pad, you can use a different plugin or set it up differently, but since this is Kirby 64, just disable the plugin's mouse input.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
comicalflop wrote:
Rock+Ice for fastest downhill motion, Rock+Cutter for the bird, and Ice+Cutter for uphill climb
How do those compare to Fire+Fire? It seems like Rock+Ice can beat Fire+Fire even on non-downhill sections, when it's timed perfectly, except it can't be used to cross large gaps like Fire+Fire can.