Posts for Alyosha


Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
That's awesome! There sure is a lot of cool stuff happening out there right now.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
It's definitely possible to get 9 and 13 to appear together. I ran the following script in neshawk:
local HIT_T = true;
local do_once_temp = true;
local i = 0;
local j = 0;
local k = 0;
local l = 0;


while (HIT_T == true) do
	
	if (do_once_temp) then
		savestate.loadslot(1);
		
		do_once_temp = false;
	end

	i = math.random(0,4);

	if (i == 0) then
		joypad.setfrommnemonicstr("|..|.......A|");
	end		
	
	if (i == 1) then
		joypad.setfrommnemonicstr("|..|......B.|");
	end	
		
	if (i == 2) then
		joypad.setfrommnemonicstr("|..|....S...|");
	end		
	
	if (i == 3) then
		joypad.setfrommnemonicstr("|..|........|");
	end		
	
	if (i == 4) then
		joypad.setfrommnemonicstr("|..|......BA|");
	end		
	
	if (emu.framecount() == 800) then

		console.write(memory.readbyte(0x0661));
		console.write('-');
		console.write(memory.readbyte(0x065F));
		console.write('\n');
		
	
		l = l + 1;
		savestate.loadslot(1);
	end	

	emu.frameadvance()
end
The starting frame (where savestate 1 is loated) was 536. This gave me values of 9 and 13 about 1% of the time. The key seems to be to delay when you press start. Originally I ran the script having already pressed start on the first possible frame and I got 0 results after much longer runs. In the above script, there is only a 1 in 5 chance to hit start on any frame. As you can see this script didn't save what the inputs actually were, but hopefully this helps a little.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
This core is shaping up and starting to approach release levels of accuracy. The biggest problem I'm facing right now is that various homebrew's I test don't look right compared to O2EM, but I'm not confident that O2EM is truly representative of hardware. At this point if anyone is willing to do some beta testing with some actual retail Odyssey2 games I would appreciate any bug reports. TASing should be in full working order at this point.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I have been informed that this doesn't work on the current release build. It looks like the game is broken in 2.3.2 and I fixed it in the dev build without realizing it (where i do all my TAS work.) Looks like this will have to be delayed until the next official release. Nevermind, it works fine on 2.3.1, so I'll just change the version to that.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
The runs are practically indistinguishable, so I wasn't planning on making a temp encode.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Yes I checked BizHawk 2.2.1 and it starts late there as well, not sure how everyone missed that.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Yes it can. The deathless run actually loses 3 frames in that level in the published run, so this improvement saves 6 frames over the published deathless run. Also the deathless run starts the game 6 frames late, so the total improvement is 12 frames. I'm still going over the deathless run but so far haven't found anything else, will probably submit it soon.
Post subject: O2Hawk (Odyssey 2 core)
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Now that I have this core more in working order I thought I'd make a thread for it. there are still numerous bugs to fix but things are slowly coming together. Some games are now completely playable, but it will probably be another couple of weeks before this core can be declared ready for TAS production.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Cool, nice work. Glad that glitch was reproduced and this isn't left as another open end. yes vote.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
My bad, you now have edit privileges. Also thanks for the temp.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Small update on Odyssey2. A lot of things are getting cleaned up and into a functional state. I can get in game with controller support now. A lot of things don't work yet but things are progressing at a reasonable pace. It turns out that this system is quite cumbersome. The PPU is very unconventional and un-intuitive, and the input/output functions of the CPU are used in tricky ways. Good thing there is good documentation or I would be quite lost.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Cool use of lua
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
http://tasvideos.org/userfiles/info/59688834986020373 Here is a start of a resync of the xtreme 2 run to GBHawk. It only is synced though the intro stage. RNG looks like it will be way off for this one, so I probably won't really try to complete this one after how grueling the first xtreme game was. For completeness here is the verification file resynced too. http://tasvideos.org/userfiles/info/59687251167657941 So at least this takes away the tedium of having to convert the files. The first Xtreme game was way too much of a time sink, so if anything I'll only periodically come back to this one and slowly sync it up. Not sure if any real improvements in game knowledge have been found since the run was published or what improvements are possible.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Awesome! Doesn't really seem like 100%, but I'm sure some suitable category can be worked out. Yes vote!
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I wanted to take another look at the save corruption run since it doesn't include BIOS time and timer emulation is now console accurate. The first thing i wanted to check is if there are any easy manipulations in CGB in GBA mode for red, since it has console verifiability and the color bios is much shorter then the gb bios. There are 4 places you can delay to do TID manipulation, from masterjun's old submission here are the values we want for the second byte (the birst one needs to be 0x64): 0x11, 0x13, 0x15, 0x16, 0x17, 0x1A, 0x1B, 0x1D, 0x5A, 0x71, 0x76, 0xCF, 0xD0 and 0xEA. Also in Mrwint's submission we see that 0xBD is possible as well. Here is a complete list of possiblities with delay values 0-9 for each of the four inputs (starting from the first possible frame each input is selected.)
CGBinGBA	         CGB		         GB
0 8 0 9 0x38		0 3 7 5 0x50		0 9 1 2 0x48
0 8 1 8 0x37		0 3 8 4 0x50		0 9 2 1 0x48
0 8 3 6 0x39		0 3 9 3 0x50		0 9 3 0 0x47
1 6 7 6 0x6D		0 4 0 1 0x54		0 9 6 1 0x94
1 6 8 5 0x6D		0 4 0 3 0x78		0 9 7 0 0x95
2 3 3 8 0x6A		0 4 1 0 0x54		1 4 2 9 0x9A
2 3 4 7 0x68		0 4 1 2 0x78		1 4 5 6 0x9A
2 3 5 6 0x67		1 0 0 4 0x65		1 4 6 5 0x99
2 3 7 4 0x67		1 0 1 3 0x65		1 4 8 3 0x9A
2 5 8 1 0x37		1 0 2 2 0x66		1 9 2 7 0xC5
3 5 8 9 0xDA		1 3 1 4 0xE6		1 9 4 5 0xC6
3 5 9 8 0xDB		1 7 8 1 0x65		1 9 7 2 0xC5
3 8 0 9 0x6E		1 7 9 0 0x66		2 0 6 5 0x70
3 8 1 8 0x6F		1 8 5 0 0xF7		2 1 7 7 0xBD
3 8 3 6 0x6F		1 9 1 4 0x07		2 6 2 8 0xBD
3 8 6 3 0x6E		2 4 0 6 0xD2		2 6 5 5 0xBE
3 8 7 2 0x6E		2 4 0 8 0xF8		2 6 7 3 0xBE
3 8 8 1 0x6E		2 4 2 4 0xD2		2 7 8 9 0x94
3 9 2 4 0x42		2 4 2 6 0xF8		2 7 9 8 0x95
3 9 3 3 0x43		2 8 0 6 0x1F		2 8 0 1 0x30
3 9 8 6 0xD6		2 8 1 8 0x58		2 9 0 3 0x6F
4 3 9 5 0xC6		2 8 2 4 0x1F		2 9 1 2 0x6F
4 7 1 8 0xA9		2 8 3 3 0x20		2 9 2 1 0x6F
4 7 9 0 0xA8		2 8 5 1 0x21		2 9 8 9 0x78
6 2 3 8 0x5E		3 3 7 0 0x2A		2 9 9 8 0x78
6 2 4 9 0x82		3 7 7 2 0x91		4 0 8 5 0xB8
6 2 5 6 0x5D		3 7 8 1 0x91		4 6 7 9 0x4E
6 2 7 6 0x81		4 8 5 8 0xC8		4 9 0 0 0x5B
6 2 8 5 0x82		4 8 6 7 0xCA		4 9 2 0 0x80
6 2 9 2 0x5F		4 8 8 5 0xC8		5 5 4 9 0x23
6 9 3 7 0xC1		7 2 5 9 0x9F		5 5 5 8 0x23
6 9 4 6 0xC1		7 4 5 9 0xC9		5 5 7 6 0x21
6 9 6 4 0xC2		7 4 6 8 0xC7		5 5 8 5 0x21
6 9 9 1 0xC2		7 6 6 6 0xC9		5 5 9 4 0x21
8 1 5 8 0xA4		7 6 9 3 0xC9		5 8 6 8 0x5F
8 1 7 6 0xA4		8 0 0 2 0xC1		6 4 7 8 0x37
8 6 7 2 0xA7		8 0 1 1 0xC1		6 6 0 4 0x93
8 6 8 1 0xA6		8 0 2 0 0xC1		6 6 1 3 0x94
8 7 0 3 0x86		8 2 0 3 0xE7		6 6 3 1 0x93
8 7 1 8 0xF2		8 2 2 1 0xE7		6 6 4 0 0x93
9 0 1 8 0x59		8 3 1 8 0xB4		6 8 5 9 0x73
9 1 0 4 0x14		8 3 9 0 0xB7		6 8 7 7 0x72
9 1 2 2 0x14		9 6 2 9 0xDC		7 6 4 2 0xCC
9 3 8 4 0x06		9 6 3 8 0xDD		7 7 6 9 0xCE
9 3 9 3 0x06		9 6 6 5 0xDC		7 7 8 7 0xCE
         			9 6 7 4 0xDC		8 1 7 9 0x51
	         		9 6 8 3 0xDC		8 1 8 8 0x51
	         		9 8 0 8 0xC8		8 4 7 8 0x60
	         		9 8 1 7 0xC7		8 8 3 6 0x3E
	         		9 8 2 6 0xC7		8 8 6 3 0x3D
		         	9 8 8 0 0xC7		8 9 4 0 0xF1
	                 	 				9 0 7 8 0x3F
		                  				9 0 8 7 0x3F
		                  				9 5 3 6 0x27
		        	          			9 5 4 5 0x28
		                	  			9 5 5 4 0x28
		                	  			9 8 8 5 0x95
So, none of them work in GBA mode. I'll try again for normal CGB mode, and the for GB mode and update this post with results. EDIT: done for CGB, no positive results. EDIT2: So it looks like at least for red, the only viable options are 2 1 7 7 and 2 6 2 8 in GB mode. Not sure if any of these other values have any usefulness. Also I'm not sure how big MrWint's original search space was. technically I guess I'd need to look up to 17 since that's the amount of delay in the current run, but that's beyond the current scope of what I wanted to do. http://tasvideos.org/userfiles/info/59639073305669766 Here is a resynced run of MrWint's movie to the current BizHawk builds. With a time of 1:21, it's quite a lot longer then the publication would indicate. If the yellow version run also worked, it would be several seconds faster since it uses the CGB instead, so my personal opinion is that yellow should be able to obsolete this one.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I thought the intent here was to wait for the next bizhawk release so the encode is fixed at the end?
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
http://tasvideos.org/userfiles/info/59599426135136939 I went back one more time to the refights and found a better route. It's not optimal in terms of pathing but it's 3 seconds faster overall compared to what I had before. I still lost some time on sigma's first fight, so I'll have to go back and test different RNG patterns to see fi I can make some time back, but otherwise this run is done and will be submitted once the next BizHawk release is ready.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I have been grinding away at refights trying to get decent RNG. I also had to go back and change the boss order in order to get good spider RNG. After all of that I have finally made it by the refights with an actual improvement. http://tasvideos.org/userfiles/info/59570921781781631 This is about one second improvement in game play over the existing movie. It's not much but an improvement is an improvement. It's actually closer to 3 seconds of improvement, but I'm not counting using charged shots on the shuriken boss, which can be trivially patched into the original run. I was about 5 seconds ahead going into the boss fights, but RNG has been destroying me. This is the best I could do after dozens of different paths and iterations through sigma 2 and the refights. No doubt someone can find a better RNG setup with enough time grinding it, but I'm happy just to make it to the end of the game at this point with real savings.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
I realized I made a few mistakes and went back and made some improvements to the new route. I am now 3 seocnds ahead of the published TAS up to the start of the sigma stages. http://tasvideos.org/userfiles/info/59437582906677118 I'm still going to try to get a better wheel gator fight a few more times before continuing on, but it looks like I should be able to have an actual improvements by the end of this.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
http://tasvideos.org/userfiles/info/59377544391501511 It turns out changing the dash button in game is much faster, I did that and then resynced up to the refights. I lost a second to bad spider RNG. Also, it seems that it would be slightly faster to go magna -> chill -> spark -> morph rather then spark -> morph -> magna -> chill. I did a test run with that route, but I lost a few frames here and there and wheel gator didn't work so I ended up slower, here's a test TAS with that route (I think an optimized version should be 1 second or so faster.) http://tasvideos.org/userfiles/info/59377615098181647 Anyway that's probably all the effort I will be putting into this one. Anyone can feel free to try from these files.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Nice! Cool to see all those savings that built up over the years finally come together.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
That's incredible. It's only a two instruction payload but hopefully this is just the beginning.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
http://tasvideos.org/userfiles/info/59213186188302258 http://tasvideos.org/userfiles/info/59260197308497447 Sync correctly up to centipede Here is a partial resync of the vba run in GBHawk. I wanted to work on this game since the encode has glitchy cutscenes and the run starts from a savestate. one of the side effects of this is that start is not enabled as dash by default, you have to enable it in the menues which costs several seconds. For completeness, here is verification movie that gets up to Xtreme mode for the purposes of creating SRAM. http://tasvideos.org/userfiles/info/59200698609300308 I did it by hand with only a few rerecords so it's quite long and basically a normal play through, but for the sake of cleaning up the old run starting from savestate it felt worth it to make. Over time I will clean this up but if anyone else wants to work on this feel free. This should be a good starting point and make the game much more accessible to TAS in a modern environment.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Patashu wrote:
https://forums.nesdev.com/viewtopic.php?f=2&t=15931
Fascinating, thanks for the link.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3536)
Joined: 11/30/2014
Posts: 2733
Location: US
Jigwally wrote:
There is a lot of shared code, particularly all of the Koei games have the built-in virtual machine + a standard C library in their Root page, so it is a lot faster going now that I worked most of it out already.
how did you figure that out? Is this information available somewhere? I'd be interested to see a write up on it.