Posts for Alyosha

Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Another game tackled with Jaffar, cool stuff. I'm kind of surprised the reward function was able to be so simple, but I guess it helps it was starting from Randil's route already.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
https://tasvideos.org/UserFiles/Info/638156248767474820 Here is an example of what i mean for controlling jumps in that level. This is about 5 frames ahead just on the second jump, and this applies to both going up and coming back down, I would guess at least a second can be saved in that level.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Pretty cool homebrew. At frame 5955 (in the updated movie file) it's faster to go to the right rather then wrap around the screen to the left. For the level starting on frame 9213, you can save a lot of time by controlling jumps better to always line up with the holes in the floor you need to jump through.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Tested Coin Fall, currently on workbench. In mGBA, console verification fails (right at the start.) In GBAHawk, it succeeds: Link to video
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
At frame 1364, you can still be holding 'up'. Eventually after resyncing this would save a few frames.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
I personally don't care about rerecord count at all, and would hardly notice if it was removed. It just doesn't seem relevant to me.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
I tested two of the latest homebrew publications. [5017] GBA Sushi the Cat by Cephla & Technickle in 01:18.22 synced, so I was able to add that one to the console verified list. This would have raised the number of current GBA console verifications from 2 to 3, but Sonic Advance was improved recently so back to 2. [5141] GBA Powerpig by Darkman425 in 05:22.95 desynced about half way through the game. I then tried the movie in GBAHawk, and it desynced at the same spot as on hardware. So I resynced the movie and tried again, and it synced: Link to video So this is the first example of a real world accuracy improvement compared to mGBA. Aside from Homebrews I still haven't had any luck syncing any games, so more work is needed.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
If you jump at frame 4011, you then can reach the first platform in the next level faster since you are already in the air. After this it takes some work to resync things, but you can definitely save at least 10 frames.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
'Movies by Genre' -> 'Unofficial game' is empty. (I guess it's 'Homebrew' now but there is no link for that.)
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Nice, always cool too see more advancements in Jaffar-bot technology. Games like this never felt quite done as there was only so much time and effort to put into searching by hand, really glad to see things like 'The Jaffanator' giving a more satisfying solution. Also I feel your pain regarding A2600 emulation, glad the result still synced in BizHawk after all the work you put into it, (most games should, but with A2600 you never really know for sure.)
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
EDIT: new run submitted Full game resync with new route and cutscene cancels. There are a couple things I need to fix before submitting, but this is pretty much what the final run will look like. Just under 25 minutes compared to the 27:22 of the published run.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
This game is pretty sync friendly, so here is a resynced level 1 which incorporates the cutscene skips as well as adds in a few time saving jumps from the RTA world record. EDIT: more levels done. I'll implement andypanther's new route as I go.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Really cool run, nice job figuring out a good route here. I'm surprised just how much faster this is than the old select glitch route. Also I think this game looks way better in color. I think this run can obsolete the current select glitch run.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Cool, when I have some more time I'll look over my files and see which of the resyncs offer a noticeable benefit to emulation.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Noxxa wrote:
Alyosha wrote:
This makes it seem like fixing emulation wasn't really a factor and the movie would have been changed regardless.
Does it really matter? The movie had multiple reasons to be resynced/adjusted, so both were done at the same time. Either change individually would've been a benefit to the product in the long run.
Yes it does matter, as this isn't the only movie that suffers from emulation issues, so i would like to know if that is now sufficient reason to make an official resync as was done here, or if it still isn't. Thanks for the other answers.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
What happened with [1248] SNES Family Feud "playaround" by Heisanevilgenius in 06:46.71? This movie was in the 'featured' section of the home page and I saw this message:
This run was resynced to BizHawk 2.8 by DrD2k9 in order to fix the poor sound emulation from the original run, as well as to remove a piece of outdated language.
This makes it seem like fixing an emulation issue was a primary reason of changing the movie file, but then in the submission it says:
Samsara: The publication file has been replaced with a resynced version on BizHawk 2.8, courtesy of DrD2k9. This was done primarily to replace one piece of outdated language used in the original run, but also has the added benefit of more accurate sound emulation.
This makes it seem like fixing emulation wasn't really a factor and the movie would have been changed regardless. Also did Heisanevilgenius agree to the change in language? That seems like an important thing to note considering authorship wasn't changed despite the content changing in a non-trivial way.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
On level 17 it is faster to jump on the right edge. The latter levels required some resyncing after this, but I still ended up ~10 frames faster overall.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
https://tasvideos.org/UserFiles/Info/638138923631475487 Here is a resync of this run that works on BizHawk 2.8 This version is console verified, so that question is resolved. I didn't make an encode as this probably isn't the final version. I lost a bit of time (~15 frames) on level 6, mostly at the end of the level. Maybe Pankaj can improve it.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
Pankaj wrote:
I'm currently using NESHawk (BizHawk 2.8), will definately try to make a new TAS on BizHawk but not any sooner. So far I tried converting this fm2 into bk2 and shifted the inputs 1 frame earlier (as BizHawk power on 1 frame sooner than FCEUX) and it desyncs because you get different grenade guy door in level 1.
There is an extra lag frame after pressing start to go to the password screen, so you even though you can delete a frame at the start, you have to add one in again around frame 55. This should get you through level 1. I was able to get up to level 4 just by comparing lag frames, but then it desyncs with the door to get the bomb being empty. I don't know how that RNG works so couldn't fix it, but resyncing seems doable.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
This game seems to keep popping up. Yeah coincidentally ThunderAxe31 sent me a short (completing 2 levels) test run of this game made in NESHawk about a week ago to try on console, and indeed it did work. I tried this current run just now, and after 12 trials, the furthest it got was the end of level 4. So by that measure ThunderAxe31's test run wasn't long enough to say anything definitive. One of the things to keep in mind with NES games, and especially MMC3 games like this one, is that console verification is probabilistic. The NES has several uncontrollable start up variables, not even including uninitialized RAM, so you might have to try numerous times to get a success. For timing sensitive games the probability can be around 1/8. So far uninitialized RAM doesn't seem to be an issue here, ThunderAxe31's run behaves the same with initial RAM state all 0's or all F's. I would need a complete run made in NESHawk (Bizhawk version 2.8) to say anything more definitive. I think Bigbass' data suffers from using a lot of old runs. I only do console testing with BizHawk version 2.8, which contains numerous accuracy updates to NESHawk. My success rate for console verification of TASes in this setting is 58/63. Maybe I miscounted one or two but it's around 90%. Also worth noting that the failures aren't due to any known cause, or in other words not due to any known emulation deficiency (NESHawk does get some edge cases wrong, but I'm pretty sure these aren't the cause of the failures.) On the other hand there are numerous deficiencies in FCEUX that may result in failure on console. Obviously most games are still playable, so they aren't relying on careful timing to begin with, so many TASes made in FCEUX will still work on console. Anyway, if you want your run to have the best chance of working on console, you should use NESHawk (on BizHawk version 2.8 or later.)
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
I decided to implement cycle accurate sprite emulation since I had some free time. As expected it wasn't that difficult or impactful on performance since it was only a small modification from what I already had. Now all the TTE demo profiles are timed correctly: Additionally all the NBA RAM access tests work correctly. I fixed numerous other bugs along the way as well, so now some of the more complicated homebrews like Vroom3D work correctly. Unfortunately, all of this still isn't enough to make Metroid Fusion sync on console. There are still a few more things I need to work on, so hopefully one of those fixes it.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
micro500 wrote:
The repo is a bit out of date and I definitely need to clean it up. I also have a decent amount of local work that isn't on github yet. I'm planning to tackle that cleanup in the next few weeks and make some more progress on this project,
Excited to hear you are still working on this. Good luck!
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
With some basic optimization I was able to recover about half of the performance I lost with the rendering rewrite, Still needs a lot of improvement needed, but its getting there. For now I'm taking a bit of a break from rendering stuff and working on some other features. I added basic Flash RAM support. There is a lot of variability in Flash RAM, and what I have now is only rudimentary but it's a good start. I also added in tilt control support, so now Yoshi Topsy Turvy and Koro Koro Puzzle work. I'll probably add in solar sensor etc. for the Boktai games next.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
You can still find the code and some analysis archived here: https://code.google.com/archive/p/treasure-master-hack/wikis Certainly a good place to start would be figuring out a proper ending for the second prize world (if one exists.) A feasible path forward would be to map out the ROM and see if there are any subroutines that aren't called anywhere else in the game that might be used to create an ending for the second prize world. Reverse engineering the algorithm has been done, but there are a lot of steps and a lot of one-way-ish functions so going backwards is also hard.
Alyosha
He/Him
Editor, Experienced Forum User, Published Author, Expert player (3572)
Joined: 11/30/2014
Posts: 2744
Location: US
After my previous post about VRAM access timings, it occurred to me that there were a lot of edge cases that my current code would not be able to handle. It seemed I would have to do a cycle accurate background pipeline sooner rather than later. So I went ahead and implemented it. Now every VRAM and palette fetch for backgrounds occurs exactly when it should. This allows me to be able to correctly display the 'mode 7 demo' ( https://github.com/ladystarbreeze/mode7demo ), which I think is pretty cool: The resulting rendering code is considerably longer and more complicated than it was before though, and it comes at a pretty steep performance cost of 10% (or more for complicated scenes.) Some games now run under 60 fps at times. I still have to rewrite the sprite pipeline too, but I don't think that will have as big an impact, so things shouldn't get much slower. but I'll definitely need to focus a lot on optimization now to claw back some of that lost fps.