RAM watch, Lua scripting, disassembly of the game...
Anything is fair as long as the output is a .fm2 file which someone else can play back on a stock copy of FCEU
[quote="DeHackEd"]RAM watch, Lua scripting, disassembly of the game...
Anything is fair as long as the output is a .fm2 file which someone else can play back on a stock copy of FCEU[/quote]
Well I have almost no knowledge of coding, being fairly young, so anything easier?
TAS noob, go easy on me! I also make YouTube Poops at www.YouTube.com/LeStarmanDeluxe.
Well thanks! That's encouraging! I'll try to learn what those do!
Really, disassembling the game is some very heavy stuff, you won't need to start quite that far. Still, from my own experience, you begin learning one tool after another. So let me round up and explain the more important ones:
- Lag Counter: Counts every frame the game won't accept input. This is important, because a lag frame is essentially a wasted frame, so lag frames should be avoided. A lag counter makes it easier to compare your movie against others and figure out what things make a game lag.
- Ram Watch/Search: Allows you to find and observe addresses in the system RAM. This is important because some information the game won't bother to tell you. What exactly you'll be searching for varies by game, but common important addresses are things like Boss Health, Position of your character on the screen or Random Numbers.
- Frame Counter: Displays on what frame you're on. Important for comparing your run to others.
- Input Display: Just a verification you've entered the proper input.
- Spreadsheets/Text files: This is technically not an emulator tool, but they come really handy if you need to compare your run against another one. When I make a run, I usually have a text file open, in which I write frame numbers of level fade-ins/fade-outs and various other tidbits down so I can see whether an other approach or a second try is faster than my first or whether an attempt is faster than a previous movie.
Above all else, don't fret it, you won't need everything all the time. You'll learn to use them as you'll need them and on the whole, as DeHackEd says, what it all comes down to is a sequence of keystrokes.
Joined: 9/21/2012
Posts: 11
Location: Northern Virginia
What's a good disassembly tool for NES games? Is that built into fceux?
I'd like to know the combat accuracy formulas for a game, and being able to disassemble the combat code would obviously be a huge help for that.
Thank you!
Joined: 9/21/2012
Posts: 11
Location: Northern Virginia
I've written 6502 assembly for the NES actually. Years ago, a little bit, and only emulator tested, but I did it. :)
So great. I know my project this weekend then: explore this tool.
Thanks!
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Joined: 9/21/2012
Posts: 11
Location: Northern Virginia
Thanks so much all. I think I actually found the code I was looking for. Wow.
It's so handy, this ability to get a log of what was running, dumping the instructions along with notes on what exactly was put into the registers, what addresses were references, and everything.
That made this pretty easy, once I got it going.
Oh man, and I just set a RAM watch on the byte this code leads me to believe was the PRNG result. And sure enough, I'm missing when the code leads me to believe I should be missing. Perfect.
Thanks all.