or maybe just more in parallel.

it's taking 15 seconds to run this TAS, with unthrottled/no-display bizhawk. I have half a million runs to do

I switched to a computer that's less in my lap, but that's still ~7s a run.

40 days?

maybe I should just set up some kind of orchestration so I can run it on all my spare computing power. just a lot of simultaneous NES TASes running everywhere

or I could get smarter. I don't want to do that. but it's an option

it turns out being smarter also involves waiting for several hundred NES TASes to finish

man either this game is very resilient to corruption or my script isn't working and I'm corrupting nothing.

yeah I left in one line from an earlier version which broke it. it was carefully calculating the corrupted ROM and then it overwrote the in-memory copy with the original ROM, then wrote that out as the corrupted version

so my plan is that I'm taking an NES ROM and corrupting a kilobyte of it at a time. I'm then running it to a set point, and taking a screenshot.

Every 1k chunk that results in the same screenshot? is uninteresting to my corruption. Everything that breaks or changes? interesting.

Then I'll go through and randomly corrupt those 1k chunks that were found in the interesting pass

the idea is to skip corrupting any chunk that I know can't affect the screen I'm looking at

github.com/fhoedemakers/pico-i

hmmm. NES emulator for the Pico. I have like 10-15 picos. I could parallelize this and build a dedicated NES emulation cluster

I should automate this completely.
just randomly pick NES roms, figure out how much of them is PRG vs CHR, then randomly corrupt the PRG and take screenshots. if the screenshot doesn't match an unmodified screenshot, post it somewhere

the real trick would be to figure out how to do it to DOS games.

lemme see if TASVideos has a better solution for a DOS emulator since I last did a TAS 15 years ago...

(technically not true: they now also support using libtas+PCem! A horrible hack that scares me!)

I found that if you change byte 50647 to 97 in the ROM, bizhawk gets confused and tries to load it as a Playstation ISO

2048 gibberishings later and I think these two are the closest I got to a useful result

automating windows programs is always a nightmare. what does your command line tool do when the command line program calls MessageBox?

when I was automating some visual studio build machines a decade ago I had some code that checked every 60 seconds for unexpected dialog boxes being open, and if found it spammed ESC on the keyboard to close them.

okay out of 2048 gibberishings on the target chunk (1 kilobyte) I got 166 examples of changes that made a visual difference

I already knew I wasn't smart enough to hack this game, but apparently I'm not stupid enough either

maybe I can make a bot to play the game for me and just make it exhaustively check every possible route

you know a project is serious when you need two different hex editors

huh. Clash at Demonhead uses an encoding with a funny property:
characters "A" through "F" are encoded as themselves.

0A="A"
0B="B"
...
0F="F"
10="G"
etc

Follow

@foone Are 00-09 also numeric values? That'd be pretty clever if so

· · Web · 0 · 0 · 1
Sign in to participate in the conversation
Pixietown

Small server part of the pixie.town infrastructure. Registration is closed.