So i'm a lurker... I mean, a really really old lurker. I've been following I dunno how many TASes from start to finish and reading up on various strategies since like 2004 or earlier. I have a little experience with speed running (used to do break the targets in Smash Melee before I got competitive in vs.) but I've always wanted to try my hands at a TAS. Specifically Pilotwings just cause there isnt a TAS already. (Or am I mistaken?)
I know some of the basics and the dos and donts. I'm gonna use SNES9x v 1.43+ v 9, and I know how to use Frame advance and save states. But I wanted to ask some questions.
First off, I know for alot of games, people use memory watchers for position, speed, etc. Where do I get it, how do I use it properly, and whats the right way to go about finding the correct memory address for such values? Pilotwings is (for me anyway) notorious for loopy animations trying to make it 3-D, so the ground is always flipping out in disorienting ways, and just knowing the value for the acceleration, and especially the turning would be immensely helpful.
What is the right way to go about the actual recording? Do I just create a savestate from the start and test one by one the optimal frames? (For instance, I couldnt tell you the earliest frame I could press start at to bring up the menu automatically at the start screen). Would I just simply set a savestate at the beginning, create another one before each frame I test to see if start then will bring up the menu, and just repeat it until I get the result?
Are there any other helpful tools I might want to use outside of that? Is there any menu option in snes9x to perhaps set and stop a frame count (like a timer for frames) and what is there to display the overall frame number of recording?
I did a couple of preliminary testing on the skydiving stage in the A Class (first) stage. Like:
42 frames to open the parachute
roughly 105 frames if you open it while falling at max speed (pointing straight down) for your rate of descent to drop to a non crashing speed
You dont start turning for about 2 to 3 frames on button press and you stop turning for around 3 to 15 afterwards (How long you were turning affects this).
for each change in body position for flipping, starting at full horizontal face down, it takes 8 frames, except the first takes 7, and to position yourself full vertical, it takes 63 frames of continuous input of up or down to point straight down (or up if you will).
Altitude gets updated once every 4 frames
The values generally oscillate between 16 feet and 17 feet at each update of altitude. My tests for face or feet down showed that while the values were equal half the time, feet down showed it as 1 foot closer to the ground than face down. I dont know whether either one will be faster than the other, but I think face down is better, pointing face down at the very beginning allows you pass the first 2 rings without at problem, and simply facing back up for a little to get to the third, whereas feet down threw me back too much, which brings me to:
A break down of flipping
(minimum frames is the amount of frames for body position to change minus 2)
7 frames to change body position the first time you ever turn
8 frames to change body position to any position not previously at
6 frames the first time you go to the previous position you were just in (i.e forward 8 frames, then back 6 the first time to return to previous position)
5 frames every time after that to go to the previous position.
10 frames if you input for the minimum frames, and then resume flipping. This applies only to the first body position change and it doesnt alter subsequent changes if the button is held, and only if the position is not one you were just in, you may also resmue flipping before the actual change has happened, you can go two positions forward by doing 16 frames up; or 6 frames up, wait 2, and then 10 frames up for 18 total; or 6 frames up, wait 1, and 10 frames up for a total of 17 frames
4 frames if you do minimum frames to change body position, and use the 2 extra frames to go the other direction. It is then 3 frames if on that stacking of flipping, you use minimum frames to then use the extra time to go back once again. After than it is 4,3,4,3,4,3, etc... going forward or backward doesnt affect this, only what the previous position was (in essence, which direction you were going in the first place.
now it gets a little tricky, this was continuous input (holding down.)
the frames are cumulative, you could push forward for 1 frame, wait a second, and then press forward for the other 7 and do the turn.
minimum frames apply here too, like this:
up wait wait wait wait up wait wait wait wait up wait wait wait wait up wait wait wait wait up wait wait wait wait up
so over 30 frames you press up interspersed for 6, and then the next frames nothing will happen and then the one after that body position will change (8th frame total)
If you hold up the extra 2 frames until body position changes, it changes your falling angle from if you were to press the minimum number of frames
this is from like 2 or 3 hours of testing, it was confusing at first because at first it seemed kind of random when I was turning when my body position would change but I think this is the entire breakdown. I need to do further testing for turning as well, and the actually parachute is gonna be a nightmare, and even though alot of this info is unnecessary, I think its nice to have an idea of how the game works.
EDIT---------------------
I have a couple smv files showcasing the different things that happen under the above rules. I'll try and put them up tommorrow.