Posts for Rena


Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Most of the Pokemon runs don't use code execution. Only rearranging some variables in memory using the game's existing inventory code. It's bordering on a nitpick, but they don't construct a program in memory and execute it.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Impressive. How is he retaining control of the game while allowing it to run normally? Does he call back into the main game loop from his little routine in the controller registers, or patch some global pointer to JSR to player 2 or something? Still, if he does in fact have total control and can poke at RAM and potentially call subroutines each frame while the game is running, there's a lot more potential. Waiting for Big Boo to turn visible and for Bowser to come back? That's boring. Poke their timers and make them respawn immediately! Ordinary level/game end sequences? Poke into VRAM and rewrite the messages to something funny!
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
I'd love to see more explanation of the programs you're writing and where you're storing them, why you stand in that specific place, etc. It seems like the game is lagging when displaying the pause menu text too? You can turn that off in the settings; does that break it? Also, I wonder about the previous method you used, adding glitched phone numbers. Is there one that executes script, rather than machine code, from a manipulable address? That might allow to do interesting things with fewer bytes.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
One thing I've never heard conclusively confirmed or denied: does the 1/256 miss apply to balls? Does a Master Ball still have that 1/256 chance of failing?
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
I studied this glitch a bit, and I'm pretty certain what's happening is when you open your Pokémon menu, the game lists your party, drawing the name, HP (and HP bar), level/status, and gender of each one. When you have more than 6 it prints them right past the end of the screen buffer and over other things in memory, eventually reaching the map. I'd need to check in a debugger to confirm this (IIRC the screen buffer is at C3A0, the map is at C5xx), but it seems like the most plausible explanation. It explains why not all tiles get corrupted (not all tiles on the screen get drawn on; the screen is cleared to blank first, but that doesn't overflow out of the buffer), why the effects are mostly constant (using clones means you have a lot of the same pokes over and over), and why other glitches can also trigger this effect. (Corrupted mailbox = mail prints off the end of the screen buffer; glitch Pokemon have extremely long types that print off the buffer, etc.) It also explains why the colours freak out (the palette buffer is probably right after the screen buffer) and why it crashes if you don't do the glitched reset first (that tricks it into thinking it's not on Game Boy Color, because they derped the error handler, so the palettes will be handled differently). If you look close when you do it in the train station you can even see two similar tiles followed by a row of identical ones, that look just like an HP bar. If you distorted a map 20 tiles wide you should see the distortion patterns repeated perfectly, since the screen is also 20 tiles wide. (Different types of tiles, but laid out the same in memory.) Conveniently all the letter/digit/HP bar tiles are IDs 80 - FF, and the game discards the highest bit of map tile IDs when it reads them, so map tiles 80 - FF are identical to 00 - 7F, so you should even be able to manipulate the structures that get dumped onto the map. Uppercase B = character 81 = tile 1 = should be plain ground you can walk on in most tilesets, so nicknames of BBBBBBBBBB should dump a lot of tiles that you can walk on.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Hmm, you should be able to get another in Top Secret Area? Or two? Anyway of course you'd have to make an exception to that ban for those exits that can't be done without the chuck glitch.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Is there going to be a downloadable encode sometime soon?
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Pff, only 96 exits? A real 100% run would use the Japanese version and do the orb glitch in Bowser's Front and Back Doors to get 98 exits. ;)
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Hey, so when did we forget that the entire purpose of speed runs is to entertain? Personally I find it pretty damn funny to see a game crashed within minutes or seconds of starting from an empty save file. Why don't we do fastest death, fastest enemy kill, fastest jump? Because that'd be boring, unless someone found a strange and amusing way to do it. That's something that takes no effort at all. To break the game on the other hand requires at least to find a bug, then figure out how to exploit it as fast as possible. More importantly, it's fun to watch. It's a variation on the "playaround" theme.
SmashManiac wrote:
Nicos also mentioned the problem of defining what constitutes a proper softlock. Personally, that would be "state obtained with input alone for which further input other than hard reset has any effect anymore on the output". The "hard" part is debatable obviously. but I think it's more interesting that way.
I'd qualify making the game unwinnable as well. There are sometimes ways you can get into a situation where you can still move around, but can't do anything to continue, not even kill yourself. Examples can be found in Link's Awakening (early versions had a hole you could jump into and become stuck in) and Pokémon Green (a glitch lets you end up saved with 0 HP, which the game realizes and kills you after 4 steps, preventing you from ever reaching a place to recover).
Post subject: Re: No from me, sorry
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Shyft- wrote:
This one gets a no from me. The goal isn't a bad thing, but I just think it's obscure enough that fewer people will try to improve on this. I'm not sure exactly why, but my spidey senses are telling me there are imperfections present both in route-planning and executing in the TAS. I really enjoyed the submission but it doesn't strike me as good enough for publishing.
"This submission is good, but we should reject it because I don't think people will improve on it." I don't even.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
They're all inputs. How fast you can open the lid isn't an issue. A bot would just hook directly into the "is the lid open" sensor. How fast you can swap discs isn't an issue; a bot would hook into the disc reader and just start feeding it a different image. Similarly, the physical limitations of buttons aren't really an issue, because bots don't need buttons. There's no need to physically connect and disconnect controllers; a bot can just report "there's no controller connected". TAS is about perfect inputs without human limitations, so it makes no sense to include human limitations here. How fast is the robot allowed to pull the plug out before it's too fast for a human? Scratching the disc is changing the game program. Pulling the cartridge out is changing the program*. Using a Game Genie is changing the program. Telling the program that the lid is open isn't changing it. Telling it that suddenly, a different disc is present isn't changing it. Pressing the reset button or power button** isn't changing it. It's always been my understanding that a TAS is about playing the game as fast as possible within the rules defined by its program (even if they're obviously not what the designers intended), and that changing the program would be cheating. As long as you don't do that, all's fair. *Pulling the cartridge out isn't the same as removing the disc. In the latter case, you just tell it the disc is no longer present. There's just a switch under the lid that tells whether it's open, and the reader will report back "I can't see any disc here" when asked to read. The program isn't changed by removing a disc; it's just told that it can't get that file right now. The cartridge is a part of the circuitry, and the program is usually being read from it during execution, so pulling it out drastically alters the program. I'm counting game resources as program here (no fair editing the levels either). **If you want to be really pedantic, yes, turning the power off causes RAM contents to erode, which changes the program. But that doesn't matter, because as soon as you turn it back on again, it's going to re-load the program from the original medium. The program modifications are an unavoidable side effect and the modified program is never used.
Hophoolio wrote:
subanark wrote:
I still hold that only penalizing a reset 1 frame is unreasonable, as real game systems have startup screens, which most emulators simply skip.
If it simply skips it in a run, then it's bad emulation and the run most likely won't be accepted.
This would invalidate every Game Boy, GBA and DS run that use resets. Keep in mind that the hardware state is exactly what it would be after running the boot ROM; it just skips the actual running part. It's essentially loading a save state of the exact CPU cycle the boot ROM finishes. Would it be better to include the bootup logo every time? Perhaps it'd be easier to synchronize inputs, but it sure wouldn't be as fun to watch.
Post subject: Re: BizHawk Emulator Development
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
adelikat wrote:
-Hex Editor - [...] New hotkeys: A for Add to Ram Watch
Who else sees a problem here? (Aside from the missing indentation)
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
I can't facepalm hard enough.
zeromus wrote:
Sorry, support for mapper 0 is deferred until we can find some documentation
Come on, this has to be a troll. There's just no other way.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Damn, then why hasn't anyone made a run showcasing these? :p
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
creaothceann wrote:
What if none of your plugins are hardware-accurate?
Then someone needs to make one. Can't ignore the rules just because they're inconvenient.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Hey, I wonder how accurate the NES emulator in Animal Crossing is. Maybe we can beat the current Super Mario Bros runs by playing it in Dolphin... :P *ducks and runs*
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Whether the VC source code could be recompiled to run on another CPU doesn't mean much if we don't have it. All we have is the binary compiled for PPC. OoT itself could probably be recompiled to run on a PC too, if we had the code...
Dwedit wrote:
So TASing a virtual console game because it's a different revision of the game with something new in it? Cool. Extract the ROM and run it in a regular emulator.
Trick is it's not a different revision. It's the same binary, just packaged with an inaccurate emulator. But people want to say it's OK to ignore the inaccuracies, because Nintendo wrote the emulator, so it counts as TASing a Nintendo game...
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
New glitchfest? But wait, there's more! Hell just go to his channel, he's got tons of them...
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Lex wrote:
Don't use VLC. Use MPC-HC with LAV Filters and Haali Splitter.
On Linux?
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Dada wrote:
CoolKirby wrote:
I don't see why there are so many Yes votes. This movie breaks the site rules by entering a cheat code, and it isn't going to be accepted.
It's a joke submission. It's a two-frame movie file submitted as a "100%" run.
Well, it does achieve 100% completion in two frames. :p Definitely should have saved for April Fools, though.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
The rootkit thing was one major reason. There's also the Lik-Sang incident, the PS3 OtherOS nonsense, BD+ and the mandatory encryption on Blu-ray discs (your home video footage of your kids certainly needs DRM, right?), phony movie reviewers, exploding laptop batteries, huge breaches of personal data including credit card numbers that they try to sweep under the rug, and all the little things they do all the time, like how practically every model of every one of their products has a new, incompatible, proprietary standard USB connector and memory card format.* Basically, it's because they're huge jerks that screw over their customers much too frequently for my liking. Of course it's difficult to avoid ever buying anything they make, since they make all sorts of tiny components, but I do my best. I don't buy a lot of media/electronics to begin with, so it's easier than you might think. None of your list, for example. Do you vote? You realize that whenever you do business with any corporation, there's a decent chance that money is going to support one of the other candidates? And that one vote is a drop in the bucket? But you do it anyway, because you have your vote and you don't want to waste it. And if enough people do that, what do you know, it starts to make a difference. Same scenario. Vote with your wallet, as they say. Maybe Sony won't notice my actions as an individual, but that doesn't mean I'm just going to ignore all their wrongdoings and keep giving them my money. And of course, I try to educate others as well. Read over that article and the sub-pages linked from it and tell me you're not at least a bit irked. (*yes, this is an exaggeration, but just barely. Look at PSP. New model? New cables! New PSP? New memory card format! And "Universal" Media Disc, that only works with certain models of one device...)
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Well, the network IS an input... but it's not one you normally have direct control over during play. Of course, PC games should be designed with the consideration that the user controls the machine and can do whatever they please... Players can (and do) cheat by manipulating packets. But there's not really much they can do to protect against such forgery, either. Related: would we allow a Game Boy run that manipulates the game by sending arbitrary data on the link port?
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
Slowking wrote:
Rena wrote:
That's kinda like blaming a person for getting in the way of a bullet. The N64 didn't have a bug. OoT did, and the N64 reacted as it was designed (throwing an exception on out-of-bounds access). The emulator is in the wrong, ignoring that and allowing it to keep running.
No it didn't. It just crashed. That is a whole lot different than throwing an exception or ignoring a command.
Er, no? Throwing an exception (and failing to catch it gracefully) is exactly what a crash is.
It'd also be worth investigating to see if the crash can be prevented, by using a different version or figuring out what causes it.
You didn't read very carefully, did you? It can be prevented by using a different graphics plugin than Jabo.
Of course I meant by in-game actions, not by introducing further emulation inaccuracies. Hey, why don't we use a different CPU plugin that interprets every opcode as "jump to the end of the game"? We'll just say we're fixing a bug in the original N64 hardware that caused the game to run normally instead of beating itself.
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
So, is that the only hidden function, or do other combos give different results?
Experienced Forum User
Joined: 1/5/2012
Posts: 52
Location: Maridia
I can't get them to play at all... VLC shows a bunch of garbage and mplayer won't even start it. I've been having similar issues with other recent TAS videos lately, but most will play fine except for some corruption at the beginning and on load screens... was the encoding process changed? Older videos are still playing fine...