When it comes to attempting to define the difficulty of performing any complete chart, the first thing that must be done is to assign which foot is intended to hit each arrow. These foot assignments will later determine many different factors such as distance traveled and the amount of time spent in a particular orientation. Responsible step-artists will keep the foot assignment in mind with each arrow of the chart, making a note of body position as a player is imagined performing the chart. Doing the foot assignment manually can become a hassle with charts producing an average of 300 to 500 arrows for a 2 minute song. This is why attempting to produce an algorithm (or multiple algorithms) will be beneficial to later determine absolute difficulty.
This is the one element of this study that could be called the holy grail of step chart difficulty; automatically determining which foot is intended to hit every arrow in a step chart will ultimately unlock answers to the rest of this study. Admittedly, I've tried numerous methods in thinking about how to do this. In the original study a few years ago, I attempted to dissect little clusters of arrows and analyze them separately from the rest of the chart. This proved inaccurate as the chart is a piece as a whole. Discovering that fault fairly recently, I've come to the conclusion that simply assigning the feet to the chart first will allow me to analyze anything in terms of difficulty later. So this task of foot assignment has been the hill I've needed to climb.
Early today, I received a bit of an epiphany. Counting on all my years of experience both playing these games and analyzing these charts it dawned on me that there's one pattern that is always performed the same way; the B jump (left+right arrows together). Instead of attempting to analyze foot assignment as if we were reading the chart from the beginning, what if instead we analyze from specific places where we are mostly sure of the method of performance. The B jump specifically is always performed with the left foot hitting the left arrow and the right foot hitting the right arrow, effectively canceling any possible odd viewfields that may have occurred before or after it. If we locate these sections and then analyze the patterns before and after for viewfield changes, we could get a more accurate representation of step-artist intent and a player's performance decisions.
There are a few other patterns that have the potential for forcing a certain playstyle, let's take a look at the following pattern which mimics the B jump:
Very straight forward and quickly reviewing the pattern we would assume that the only way to perform this is by hitting the left arrow with the left foot and the right arrow with the right foot. However, if we add some arrows before and after the pattern, we see another possibility:
As you can see, the crossover shows an intent that the 464 pattern should be performed with the opposite feet becase the other arrows surrounding it we make the player enter and then immediately leave the minimal viewfield while continuing to alternate feet. Unfortunately, we cannot just add a rule that assumes crossovers are the only patterns that put the player in an unwanted viewfield. Take this pattern for example:
In this pattern, we've replaced some of the right arrows with up arrows, making the entire pattern nothing but diagonal-transfers. We see what really counts is the quality of viewfield. However, the previous examples are very situational and not popularly found in step charts. There are a few other patterns that assume a more popular type of performance; non-crossover lateral-transfers.
By themselves, every crossover can be performed fairly easily beginning or ending with either foot on the left or right arrows. However the lateral-transfers that begin and end on the up or down arrows will almost always be performed only one way. There are very specific patterns were these can be performed the opposite way which will immediately put the player into a minimal viewfield. However, which ever left or right arrow is included in a non-crossover lateral-transfer more than likely corresponds to the foot that is intended to hit that arrow. So for example:
This sequence will be performed beginning with the right foot on the up arrow and then the left foot on the left arrow. Attempting to reverse this puts the player immediately into a minimal viewfield which is most often not the intent nor an efficient method of play. A particular exception is the following sequence:
Starting this sequence with the right foot on the right arrow, we'll see the player go in and then immediately out of the minimal viewfield. It should be noted that removing the right arrows at the beginning and ending of the sequence and then beginning the remaining sequence using the right foot on the left arrow is much more optimal. Again, this is very specific and not popularly included in step patterns but must be accounted for in analysis and later algorithms. But knowing these properties, we can assign a hierarchy of steps or patterns to lookout when beginning to analyze a chart with an algorithm.
- The B jump will always be performed with feet hitting respective arrows.
- Patterns that alternate between the left and right arrows with zero-transfers will most likely be performed using the respective feet.
- Non-crossover lateral-transfers will most likely be performed where the included left or right arrow is hit with the respective foot while the up and down arrows are hit with the opposite foot.
So far, if we entered a chart into a program that could run our algorithm it would first look for the B jumps and then make the appropriate foot assignments; feet to respective arrows. Next it would for the patterns that mimic the B jumps; the 464 type patterns and associate the respective arrows to those but with the understanding that this could change depending on some other later to be determined factors. The same would go for non-crossover lateral-transfers. From there, the algorithm would use other rules to figure out the foot assignments for the rest of the chart.