![]() ![]() ![]() Of course having frames that are 15 or 18ms long is a problem, as inputs done 16.67ms apart are no longer guaranteed to end up 1 frame apart. This, combined with possibly variable time taken between the emulator "waking up" and reading the controller state results in this: ![]() Windows is not a real time OS, and so asking to be woken up every 1/59.94s results in you being woken up approximately at that frequency. The main culprit was the fact that emulator frames don't actually last 1/59.94s. Adapter OC only did 90% or so of the improvement it should've done - which is already a lot, but I wouldn't be satisfied with reaching anything but what could be proven to be unimprovable on. Unfortunately, the input integrity on emulated Melee was still not as good as my models said it should be. This, along with my studies on what adapters (and adapter ports.) resulted in my writing the Adapter overclocking guide, which is now a setup step in all Slippi installation guides. As I inquired online about driver specifics, Sweetlow found my questions and reached out to me about HIDUSBF, which was precisely what I was trying to build. After learning the intricacies of USB, I looked into writing a driver that would oversample USB adapters. This kinda ended my already dwindling will to compete and I set out to fix this. I long searched why and how to fix it, but it would take a lot longer for me to figure that out.įirst, I quickly realized Melee emulation had the same kind of issues, which, aside from making the game feel bad, also meant player learning on PC would be fed wrong feedback during training i.e, be told they're too late when they're too early or vice versa, be told they're too early or late when they had the right timing, be told they had the right timing when they were more than a frame length off. That didn't work out (a video I took back then: ) due to the input integrity problems mentionned previously. ![]() You'd define input sequences (with randomness, rumble triggers.) in a custom lightweight language (that I was going to call Commedia !) that would get transpiled to Arduino code to upload to an Arduino for it to spoof a Gamecube controller and run that, by holding each input it's supposed to do a frame, for 16.67ms. When Smash Ultimate released, I tried building a TAS-bot for people to train and explore mechanics with. I played competitively on it for years, in fact I got PRd in my country in 2019.ĭesigning and building this was a lot of fun (and saved me from the index finger-pain I had from using claw grip on Melee Peach), so I figured I'd keep going. It was one of the first digital controller for Smash to exist, and used a unique, non-modifier based way of converting key presses to game controller states, though that's a story for another time. Finally, lag test results and contexts are saved for later access, to make it easy to compare how different settings affect your setup. This is useful to diagnose and measure advanced characteristics of your monitor, such as the presence of flicker, automatic brightness limiters, etc. The adapter also reports the grey-to-grey data of your screen in great detail, in fact it will report the light intensity response of your setup to a black-white transition, in nits at a granularity of 0.1ms. It will contextualize the results by breaking down which parts of the latency can be safely attributed to some element of your setup (refresh rate, response time.) and computing what remains, the 'unattributed lag', a measure of how well your setup performs compared to how it can be expected to. Monitor refresh rates, emulator configurations, polling rate, latency stability - the app will look into everything it can check and search for potential issues, and comment on whether your results seem in line with what your hardware should afford. With the click of a button in the companion app, you can not only test the lag of your Slippi setup, but also get a report from said app on the configuration of your setup. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |