Posts for nitsuja


Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Wow, 56 seconds faster, really pushing those stars to their limit. The most surprising thing was that star jump off of nothing in the final room before those minibosses.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
I know this is getting a little off-topic, but...
JXQ wrote:
I think that's the Volume Envelope Height checkbox that can cause sound to be better ... Although I've never noticed differences in the sound with either option.
  • Volume Envelope Height reading: Listen to the title screen music of Tetris Attack (U), it sounds terrible with this option off. And, the sound effects in Secret of Evermore are even more noticeably different.
  • Fake mute: The music of the first stage of Prince of Persia 2 plays at a completely wrong speed with this on.
  • Sync Sound with CPU: The sound of Yoshi hovering in Yoshi's Island, or Dragon coins in SMW, or small hearts in Castlevania 4, all sound weird and inconsistent with this off or if your sound driver is set to FMOD.
(I voted yes, by the way. It's obviously well-made, with surprising fights, and even when the game was just being slow, the wackiness kept it entertaining.)
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Mike89's record there is only 0:25, so how is showing that 0:24 is possible defending himself? 0:24 is probably possible on console (even if every jump needs to be frame-precise). It's a short level and enough tries should eventually result in success. But, "enough tries" in this case is a lot (at least 500, I would guess), and it's exceedingly unlikely that 3 people got it within 4 days of each other (2 of them on the same day) after years of nobody achieving it.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
AngerFist wrote:
The spot Im talking about is at around frame 21400 (possibly slightly earlier but you should know where I mean). From there on, it lagged a lot. Wouldnt switching to the dragon avoid all that jazz?
At frame 21400 I only had 3 dragon points, but it takes a minimum of 12 dragon points to become a dragon, so I couldn't. (I didn't have enough until frame 23865.) Also, there wasn't any lag, so I assume you're just talking about the one enemy I had to slow down to jump over and the damage taken from the spikes coming out of the ceiling.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
AngerFist wrote:
In my opinion, stage 4 had the most action. Did you check if it wouldnt be faster to transform into a dragon for the area where you must do those long jumps?
What area where I must do which long jumps? I used the dragon form pretty much wherever it was possible.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
upthorn wrote:
How do you even get two dialog boxes open at the same time? When I have one dialog box open, it doesn't let me click on the main gens window to open another.
Open a ROM, choose Play Movie when in fullscreen mode, then click on the "..." button to browse, and hit cancel.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
dezbeast wrote:
The movie works up to the point where you grab the sword and the owl speaks to you, but afterward, Link walks all over the place, getting hit by enemies and so on. What do I do to correct that?
Make sure you're using version 1.0 of the ROM, not 1.1, and make sure you're using the newest version of VBA from these forums.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Bag of Magic Food wrote:
Is there anything I should know about looking for floating-point values?
You should know that they're probably not floating point values. Even GBA games use fixed point instead (usually, if not always). If there's a fractional component at all, it's probably just stored as an integer in a separate byte somewhere nearby the non-fractional one.
Post subject: Re: need a little help with memory search/viewing
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
The 01 does mean it's in a different bank, but I think you can usually get away with ignoring the bank number, and still find the same value in the memory viewer based on the 4-digit address, even if the bank number is 01. From what I can tell from looking at the cheat search dialog code, the most the bank number could mean is that you might need to change the first digit of the address to something else (such as converting 01:c722 to d722 instead of c722) in order to locate it in the memory viewer. But, I've never seen a case where that was necessary.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Maybe it should go on the Nesvideos wiki. Something like http://tasvideos.org/SuperMarioKartTricks.html.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Yeah, it's probably not the best idea... Barring some new discoveries, it doesn't seem like this game could make for a good TAS.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Huffers wrote:
Pressing L or R during a boost stops the boost, so it's best to start charging again exactly when the boost hits its peak (it drops off rapidly then anyway).
What if you press L/R to and hit a player/obstacle/wall during the hop while you're at the peak of the boost? Hitting something during a jump seems to prevent your speed from decreasing for a short while, and you could hopefully keep charging as normal. Also, does doing a boost during a mushroom boost or after using a star give an even greater effect than normal? And I think I read something about how it's possible to use these boosts to cross over any body of deep water without even losing speed.
Huffers wrote:
Erm... how do I extract the movie file from the savestate?
Play the movie in non-read-only mode, then load the save state, and the movie you played will transform into the movie that leads up to the savestate, assuming there wasn't some desync along the way. (And, assuming you started recording a movie before running the bot. In which case you wouldn't need to extract it in the first place since you would already have it...)
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
IdeaMagnate wrote:
Let's remember that not everyone uses windows. ;)
Yeah, I know, I was just mentioning one method I knew of and I was pretty sure that other OS's can do something similar.
IdeaMagnate wrote:
Somehow I missed that Gens can read zipped ROMs directly. I can't say that zip is my favorite compression method, but since the code is already there and since Bisqwit's submission system accepts zip files, it'd be best to eliminate all compression from the format and make Gens able to directly create zipped movies. This would solve a couple of issues.
That would make things a lot simpler. And it wouldn't require going through Gens or some special converter in order to make a decompressed version of the movie.
IdeaMagnate wrote:
nitsuja wrote:
Peripherals? I can see how it already fits in, but it's worth explaining. Feel free to fix this. My brainpower seems to be waning (and I still have to go to work).
I was thinking that, since you're reserving a whole byte for each controller's 3-button/6-button status (and already letting that change the meaning of the bytes stored for that controller) you could use that to store which peripheral type a controller is, and store whatever data that peripheral needs per frame like normal. (But, I don't know if Gens itself support any peripherals.)
IdeaMagnate wrote:
Just for clarification, recorded frames is a rough indicator of how many frames the person recording the movie saw, vs. how many are in the actual movie?
Yes.
IdeaMagnate wrote:
I'm tempted to merge some of these small chunks into something like a "Movie Information" chunk just to keep the implementation's code size a little more reasonable.
At first I thought it was a mistake that things like the re-record count and frame count weren't stored at a fixed offset in the header.
IdeaMagnate wrote:
I'm hesitant to use the ROM filename for anything. It's usually reliable, but it seems more effective to rely on the ROM itself, which is harder to change. Storing it isn't a bad idea, since it provides a reasonably good idea of how the movie was made, but a name mismatch shouldn't generate any sort of warning, assuming that ROM checksums match.
Right. It's not to be used for determining mismatches, only to give the viewer more information.
IdeaMagnate wrote:
I also fail to see the purpose of a unique identifier. What would this do that the movie CRC wouldn't?
It would not change, that's what it would do differently. A constant and unique (or, at least, pseudo-unique) identifier makes it much easier for the emulator to determine whether a savestate belongs to (that is, was saved during) a given movie. And storing the date/time seems like it can't hurt, anyway.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Bisqwit wrote:
Okay, I'm baffled. The movie plays without problem when I load the "debugstartup.sgm" provided by FractalFusion. But whatever it does to the clock, I am unable to simulate by setting the clock to some specific value at emulator boot by tampering the contents of gbDataMBC3. I also tried to tamper the function of memoryUpdateMBC3Clock and the function of mapperMBC3RAM, to no avail.
I haven't had any luck either, at least not with changing the initial time to play the movie, but... Have you looked at the gbReadBatteryFile function of gb/GB.cpp? That also does something with the clock. In v17, it sets gbDataMBC3.mapperLastTime to the system time unless a battery save file is found. (The memoryUpdateMBC3Clock function would then calculate an enormous time difference between that and the frame time.)
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Here's another reason I wouldn't care to much about how big the movies are when they're uncompressed: At least in Windows, you can tell the operating system to compress any file (just set the file attribute to compressed). The file takes up as little disk space as if it were compressed, but hex editors and other programs see it as uncompressed. (I'm not too familiar with what method it's actually using to do this, so let me know if there's major disadvantage of using it.) EDIT: I meant, you know, in those cases where the file might actually get large enough that you care about compressing it. Probably an even better (and more universal) reason than the one I posted above is that the vast majority of the time, the file won't get that large.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Bisqwit wrote:
And I can't find vba-rerecording-17-src anywhere.
In case it helps, here is a link to it: http://www.savefile.com/files/6536622 If I remember correctly, the file of most interest is gb/gbMemory.cpp.
Bisqwit wrote:
I want to make the AVI from the real reset, not from the savestate.
Would a savestate on frame 0 of the movie not work for some reason? EDIT: Never mind, I didn't see one of your posts above.
Post subject: Re: Upthorn's feature request thread.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Another (small) bug: The "Windowed Fullscreen" option doesn't change its check mark until some other menu option is chosen, probably because it's not rebuilding the menu.
upthorn wrote:
3.) I didn't add any sleep calls. Maybe it has something to do with the new function you made to handle all that.
Oh, I know it does. The delay was already there, and I left it alone because I wasn't sure if it served some important purpose. But, I meant that the key-setting delay (or, probably better, the lack of it) should be made consistent between the two dialogs.
Post subject: Re: Upthorn's feature request thread.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Bug report on 9j: 1.) Gens crashes in the input dialog if you click to redefine a controller's keys then hit Ok or Cancel and try to redefine any hotkey like Pause. 2.) The main input dialog can be clicked on while the controller sub-dialog is open over it, causing Gens to freeze and/or bring up multiple controller dialogs at once if you try to use it then. This can be fixed by passing in the main input dialog's hWnd as the first parameter to the function you call to spawn the controller sub-dialogs. 3.) Settings hotkeys in the main input dialog seems unnecessarily sluggish (have to wait a few seconds before any input will register) compared to setting them in any of the sub-dialogs. Maybe there's an extra Sleep call somewhere? 4.) You didn't merge in the changes to the Sound menu. I assume it's unintentional because you did merge in the code that's supposed to be activated by the new menu items. Also:
upthorn wrote:
* Merging Nitsuja's changes in
It would probably be a good idea to add to the list what these changes are, for the benefit of others looking to try out this version.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
I'll also see if I can get the movie to play in v19.2 of VBA (which doesn't let the system clock affect the game).
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Hmm...
Fabian wrote:
Who, nitsuja? I've never seen him participate in our silly discussions
LagDotCom wrote:
The reason is so he doesn't die.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Since you're improving it, here is a really small optimization you might not know about: You can save 1 frame at the beginning of each area by pressing left for 1 frame, then holding right+jump. (EDIT: Oh well, too late, he finished that movie really fast. It hadn't been submitted yet when I posted, though.)
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
bobxp wrote:
It would be a great help to have a read-only toggle in Gens.
It does. It's Ctrl-T, in the newest versions on these forums.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Nosuch wrote:
Just for the record, Moose doesn't have to be defeated.
Thanks, but read this thread; FODA already discovered that.
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
White Label wrote:
It's 240 if you include line 0. :wink:
If that's the case, then 224 would really be 225 lines, but it isn't.
White Label wrote:
Hmm... My avis are still only at a resolution of 224 lines. Maybe it's a bug in the code?
Maybe it's a feature in the AVI code, that it gets the necessary resolution from the game itself. See what happens if you output from a PAL game that actually uses the extra lines, such as Dino Dini's Soccer (E). For other games, I think it'll probably take either a post-processing step to change the AVI's height, or a code modification. EDIT2: The line of code to change would be this one in DoAVIOpen():
avi_height = IPPU.RenderedScreenHeight;
IPPU.RenderedScreenHeight is 224 for most games.
Post subject: Re: Controlls Are Messed Up? Plz help...
Emulator Coder, Experienced Forum User, Published Author, Skilled player (1301)
Joined: 12/21/2004
Posts: 2687
Uh... try running "snes9x.exe -restore" to clear out your settings, or posting a screenshot of your joypad settings if that doesn't help. Also check the snes9x forums; the tech support section there probably answers some of your questions.