step difficulty revolution

Thursday, July 24, 2014

Foot Assignment

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.

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.

Monday, July 14, 2014

Playstyle Considerations

In designing a step-chart, the step-artist cannot force a player into performing every sequence as intended. Some sequences can be executed several different ways. What we aim to do here in studying is determine the most efficient way to perform these patterns as a player and assume the preferred method in designing the chart.

The Spin

One of the most misused terms in describing a pattern is the spin. Take the following pattern:


As we know the method of performance will depend on the foot that begins the pattern. Beginning with the left foot and alternating feet, the player would result in rotating a yaw of almost 360 degrees, putting them in a state where it is nearly impossible to read game screen effectively. In terms of distance, this sequence also includes only 3 lateral-transfers. Of course, instead of potentially turning the player's back to the game screen, the player may instead double-step in order to stay in the standard viewfield range. In this scenario, the right foot double-steps from the down arrow to the right arrow, and the left foot double-steps from the up arrow to the left arrow. The right foot completes only one diagonal-transfer, while the left foot completes two diagonal-transfers. We know that a diagonal-transfer is a shorter distance than a lateral-transfer and therefore more desired in terms of distance. There are several other options that combine both the lateral-transfers of the first playstyle with the double-steps of the second. For example, double-stepping from the down to the right arrows with the right foot and then lateral-transfer the right foot from the right arrow to the left; ending in a limited viewfield range.

There's one final method to complete this pattern, which is called the outside-step. Again, beginning with the left foot the player completes the first lateral-transfer ending with the left foot on the right arrow. Then the right foot hits the up arrow by swinging outside of the game stage, allowing the player to return to a standard viewfield range. Not only is this the longest distance the foot can ever travel in play because it travels off-stage, it also requires that the player pivot at least 90 degrees on the left foot. This must add another element of difficulty as before we are merely stepping on arrows; adding a pivot in this playstyle adds more movement and wastes energy where double-stepping would be more beneficial. Alas, we must account for this playstyle in design but not assume that this is what the player will choose to do. We simply acknowledge the playstyle exists.

If the player was to start on the right foot, hitting the left arrow, the player could complete this without turning completely away from the screen using 3 lateral-transfers. Because the player does not enter a minimal viewfield and continues to alternate feet, this would be the preferred method of performance instead of double-stepping (which is possible after starting with the right foot here as well) as alternating feet keeps a regular momentum.

The point here is that this sequence, while regularly identified as a spin is not always performed as a spin. The spin defines a playstyle not a pattern or sequence. For the purposes of study, we assume that the player does not want to enter a minimal viewfield and therefore consider the options that refrain from this while keeping the distance traveled as short as possible. This may or may not be the step-artist's intent but matters in gauging difficulty.


Another interesting playstyle to consider is foot-switching which occurs during jacks and jackhammers. A player will alternate feet on the same consecutive arrow as alternating feet keeps regular momentum. In the case of jackhammers, which include 3 or more of the same arrow in a row, this playstyle is less common due to the difficulty of balance for the player while attempting to target one arrow on the game stage with both feet. This also tends to increase the footApex to something undesirable and inefficient. However, this playstyle is more of an option for jacks. Take the following example:


A first this looks like a crossover with a jack in the middle. Starting with the left foot a player could simply complete the sequence by performing the lateral-transfer with the left foot and the jack with the right foot. However, a player could also foot-switch which keeps the alternating foot momentum. After hitting the first down arrow with the right foot, the player can move the left foot and the right foot simultaneously first using the left foot to hit the down arrow while moving the right foot out of the way. Then the player will place their right foot down on the right arrow. Perhaps to explain this better, take the following pattern:


Again there are two way to perform this if we start with the left foot. The player could complete a lateral-transfer using the left foot to complete the jump in a limited viewfield range or the player could continue to remain in the standard viewfield range by moving the right foot from the down arrow to the right arrow and the left foot from the left arrow to the down arrow; which mimics the the foot-switch maneuver. The foot-switch is 2 double-steps at its core but also allows for the possibility of a lateral-transfer. Take this pattern for example:


Because there is no fear of entering the limited viewfield range with this pattern alone, we only assume that the player will perform this sequence by using a diagonal-transfer from the left arrow to the up arrow and using the right foot to perform the jack. However, the player could also foot-switch the jack which essentially is a double-step of the left foot from the left arrow to the down arrow and a double-step of the right foot from the down arrow to the up arrow. Moving from arrows that are directly across from each other is the definition of a lateral-transfer. However, in terms of distance this is simply not the most efficient method to perform the sequence. The former method is a diagonal-transfer and a zero-transfer while the latter is a diagonal-transfer and a lateral-transfer. Cancelling out the diagonal-transfers, we know that the zero-transfer is a significantly shorter distance than the lateral-transfer and in this case the more preferred method of performance.

The Arc


The longest sequence we've seen so far, starting on the left foot and alternating feet will cause the player to enter the minimal viewfield for a moment before being turned out of it. This playstyle performance is called the arc. While instead beginning with the right foot in this sequence and alternating feet using lateral-transfers isn't called anything in particular other than having a pair of crossovers. This is similar to starting the spin in the limited viewfield range as it does not have the player pass through the minimal viewfield and is therefore not a spin.

We see that for the purposes of this study we must recognize that many different playstyles exist but we must select the most efficient methods to measure difficulty correctly depending on the stage rules and the sequences provided.

Sunday, July 13, 2014

Transfer Types

Stepping panel to panel throughout a chart is essentially traveling without moving. One aspect of difficulty that we can measure is the total distance traveled as the player hits the arrows. To do this we must understand the possible methods that a foot can move from one arrow to the next. Let us examine the following pattern's possibilities, starting with the left foot.


If we ask where the left foot could go after the right foot hits the down arrow, we immediate know of two locations. Let's start with the more difficult move, hitting the right arrow with the left foot. If the arrow the foot is coming from is located directly across linearly to the arrow the foot is going to, this is called a lateral-transfer. These tend to be the least found in step chart design because many of them change the player's viewfield from standard to limited quickly. This is also the farthest the foot can normally travel on the game stage. These two elements make these transfers the hardest to perform both in orientation and distance. To determine the distance traveled, there are two variables we need to speak about; panelLength and footApex.

panelLength & footApex

You'll notice that both of these terms are displayed using camelCase, which is a popular formatting style for programming. We differentiate these terms from the others because they are variables and depend on other factors we cannot control but must account for. The first is panelLength which is simply the size of the panel. For the purposes of this study, we assume that the panels are all equal in terms of size and shape. These squares are arranged in a 3 by 3 pattern where the corner and center squares are not used for gameplay while the edge squares are the targets. Since these are squares, the length and width are equal; this distance is the panelLength variable. In the case of a lateral-transfer, the foot will move across two panelLengths; center of the first panel to the next according to stage rules. But we can make this distance more accurate using the footApex.

The footApex is a player variable which accounts for the need to lift the foot off of a panel to move to the next one. We assume the player lifts their foot the highest in the middle of the transfer At first, this seems trivial to account for as this should be a relatively small number in comparison to the panel-to-panel distance. Indeed, a player will maximize efficiency keeping this variable small. However, we will see that this number is critical to account for all of the transfer types.

Returning back to the lateral-transfer measurement, we've explained that the distance is two panelLengths; center of the first to center of the next. Using the footApex variable we can estimate the distance traveled for this player's lateral-transfer using the Pythagorean Theorem.

As you can see in the image above, we first need to get the hypotenuse using half of the distance from panel-to-panel, which in this case is simply one panelLength, and the footApex. Then using the theorem we double the result to get the panel distance traveled. This example is simple because the panelLength of a lateral-transfer is easy to calculate. The next is not as easy.

In our example, we can also move the left foot to the up arrow. When the foot moves from a panel to a panel located diagonally across from it, it is called a diagonal-transfer. Diagonal-transfers are more popular than lateral-transfers because a step-artist always has the option of inserting one no matter the player's current foot assignment. In terms of measuring the distance traveled, things get a bit more complicated because we need the Pythagorean Theorem just to calculate this distance. The panel-to-panel distance of a diagonal-transfer is the square root of 2 panelLengths. Then using the Pythagorean Theorem again and including the footApex, we can determine the distance traveled for a diagonal-transfer just as we did with the lateral-transfer previously by halving the panel-to-panel distance and doubling the result from the theorem. Also note all double-steps performed for the purpose of viewfield are diagonal-transfers.

One last type of transfer the player could perform next is called the zero-transfer. As the name implies, the foot doesn't move to a different arrow but instead hits the same arrow again; in this case the left arrow. However, we must account for this movement of up and down to activate the panel again, especially in the case of jacks and jackhammers as they will add up in distance traveled. As you can tell, measuring a zero-transfer distances is as easy as doubling the footApex variable; one distance going up and one going down. These types of transfers are also popular because the arrow a foot came from is always an option for that foot as the arrow is now recently available. Let's look at one more possibility in movement, here's the pattern:


This possibility here is the final arrow we haven't attempted to hit, the one currently occupied by the right foot. Initially we will assume that it is more efficient to merely perform the jack and not continue to alternate feet. However, future discussions will examine the possibility of alternating feet with this pattern as it is a complex battle between step-artist intent and a player's playstyle. For now, we will merely identify that this move will require at least the diagonal-transfer of the left foot to the down arrow. We would need more information to determine the placement of the right foot as two feet should not occupy the same arrow.

Thursday, July 10, 2014


In determining difficulty when it comes to positioning, taking an account of the player's body in relation to the game screen is critical. In a previous section, I mentioned the term yaw which should be familiar to enthusiasts of aeronautics. The plane has 3 axes of rotation, the roll which is the axis of rotation used to complete a barrel roll. The tilt which is the axis of rotation to complete a loop. Finally the yaw which is merely the axis of rotation used to steer the plane left and right; the vertical axis. Our bodies use this vertical axis of rotation on a regular basis to change directions while walking. When speaking of yaw, we simply mean the turn of the player's body.

To measure the yaw we use degrees as this is a rotation quantity and compare the approximate angle of the player's hips in relation to the game screen. When the player is facing the game screen at the start of play, this orientation allows for the most efficient method for reading the patterns on the game screen. Essentially, the player now has the best field-of-view to read patterns; the maximal viewfield. In this position the yaw rotation is 0 (degrees), the player's feet match with the arrows; left foot on left arrow and right foot on right arrow. As the player steps on different arrows, the rotation of the player's hips will change. As they face more left, the yaw becomes a negative number, while facing right the yaw becomes positive. Now take the following two-step pattern:


Depending on the arrows preceding this pattern the player's feet could be on either of the arrows. Though as an aside, the foot that hits the down of any pattern determines which direction the player is facing, the opposite is true for the foot used on the up arrow. In both possible examples, the player's yaw is rotated 90 degrees from the maximal viewfield (either negative or positive, depending on which foot is where). For the sake of description rather than referring to the rotational degrees, we can define these positions as the moderate viewfields, either with a full left orientation and full right orientation. Now take a look at the next pattern.


In this example, the arrows that would precede this pattern are crucial to determining the viewfield. If this pattern begins using the left foot hitting the left arrow, then it would describe an orientation with a maximal viewfield to the game screen. However, if our study was not concerned about our player reading arrows from the game screen but still relied on recording if they were able to do so, this pattern could begin using the left foot hitting the right arrow and the right foot hitting the left arrow. In this unnatural scenario, we can define this orientation with a minimal viewfield; the opposite of maximal. In other words, it is at this point that it is the hardest for the player to read the game screen.

Between maximal and moderate are the standard range viewfields. This area which essentially lives between the full left orientation and full right orientation (ie.: between -90 degrees and 90 degrees of yaw rotation) passing through the orientation with maximal viewfield is where most players traditionally spend their time while playing a chart. The opposite of this area, the orientations between minimal and moderate are limited range viewfields. The patterns that intend for a player to rotate into this range, which passes through the minimal viewfield, are considerably more difficult to perform than the maximal counterparts. Moving forward, we can quantify the number of times it is intended for a player to be orientated within the standard and limited viewfield ranges and hypothesize that the more intended time spent with a limited viewfield, the harder the chart should be considered. We can also quantify the number of times a player is intended to be in a left orientation versus a right orientation. As I plan to explain later, ETS syndrome will suggest that a balanced orientation is more difficult than a disproportioned one.

Tuesday, July 8, 2014


Not all patterns are built to allow a player to easily execute them by alternating feet. Sometimes, a pattern will suggest that the player should turn completely away from the screen. While some step-artists create this intent to quickly turn the player back toward the game screen soon after execution, other design intents will simply like to break the player's foot alternation for the sake of difficulty (or some other artistic factor). Generally speaking, this will require a double-step. Take a look at the following sequence:


In this pattern as the player alternates their feet between the left and right, it begins fairly straight-forward. Soon, the right foot goes to hit the down arrow. If the player continues to alternate feet here, then the left foot would crossover with a lateral-transfer to the right arrow; a fairly common pattern. However, the next arrow would require the player to turn completely away from the game screen and essentially switch arrows and feet; making the right foot hit the left arrow and later the left foot hitting the right arrow. This is not an optimal body position for the player in order to continue reading the screen. It would seem that the intent of the step-artist is for the player to double-step.

When does the player double-step?

When it comes to double-stepping, the general execution occurs between the arrows where the body's yaw would turn past 90 degrees in either direction; entering a limited viewfield range. In other words, while the player is reading the down arrow from the game screen and hitting it with the right foot, the player is calculating that the next right arrow will place them in a state that makes them rotate very far away from the game screen, essentially rotating the yaw farther than 90 degrees. It is at this point in which the player makes the decision that it would be easier to read the game screen by keeping the body rotation between these two orientation extremes and inside the standard viewfield range. To do this, the player will break an alternating foot execution and move the right foot from the down arrow to the right arrow. In terms of designing, this should be the method a step-artist imagines how and when a player will execute a double-step.

The difficulty in double-stepping

In terms of difficulty, let's compare the two decisions. Certainly, without accounting for the arrows after the down arrow, a lateral transfer would be the least physically demanding option since we are continuing to alternate feet. The distance the left foot moves from the left arrow to the right arrow is roughly two panelLengths, while the right foot awaits the next move. However, when we include the next set of arrows, the body's yaw places the player into a position where it's uncomfortable to read the game screen and therefore raises the difficulty significantly.

In the double-step scenario, the left foot does not move and the right foot moves from the right arrow, to the down arrow and then immediately to the right arrow again. The distance that the right foot travels back and forth in motion is farther than a lateral-transfer. Having two transitions increases this distance in comparison to the one lateral-transfer from before. Additionally, the player's momentum is sacrificed as the right foot was acclimated to alternating with the left foot. However, this double-step is with the purpose to allow the player to continue reading the game screen and in turn continue playing the chart. A much more important factor than simply continuing to alternating feet so to keep constant momentum and minimize traveling distance. In this example we see the hierarchy of the stage rules; that the necessity to read the game screen is considered more valuable than alternating feet. We also see how the body's yaw plays as an important factor in determining how much a player is in danger of not being able to continue.