Waterfall is a theme for StepMania 5 made by SteveReen, which has been adopted as the main theme for ECFA2021.
This web page archives theme modifications made by TaroNuke.
Last update May 10 2021


Contents:

1) Results screen ECFA Point comparisons
1a) Results screen ECFA TOTAL Point gain display
2) CTRL+R Quick Restart
3) ECFA Pass Ticks on Music Select
3a) ECFA Point Value obtained on Music Select
4) Display ECFA DP on Ingame Steps Statistics panel
5) Move Timing Dashes to the side of the judgments
6) Display ingame steps statistics in 2 player mode
7) More useful ingame Subtractive Scoring display for ECFA
8) Results screen Timing Distribution Statistic improvements
9) CatJAM


1) Display comparison with ECFA Points Personal Best, and ECFA % Clear on results screen

Place Percentage.lua as Themes\Waterfall\BGAnimations\ScreenEvaluation common\PerPlayer\General\Percentage.lua
Place GrabPB.lua as Themes\Waterfall\BGAnimations\ScreenGameplay overlay\GrabPB.lua

Once done, load GrabPB.lua by adding af[#af+1] = LoadActor("./GrabPB.lua")
to Themes\Waterfall\BGAnimations\ScreenGameplay overlay\default.lua's AF in a way that resembles the image below:


UPDATE (Mar 13 2021): the modified Percentage.lua now displays the current score's rank
versus the current profile's other ECFA scores.


1a) Display ECFA Net point gain


Note: nothing is affected if you gained no total points from a play.

Replace WF-Profiles.lua in Themes\Waterfall\Scripts\WF-Profiles.lua

The rest is very similar to the steps in 1). Please redownload the files from here though, as they have been updated.

Place Percentage.lua as Themes\Waterfall\BGAnimations\ScreenEvaluation common\PerPlayer\General\Percentage.lua
Place GrabPB.lua as Themes\Waterfall\BGAnimations\ScreenGameplay overlay\GrabPB.lua

Once done, load GrabPB.lua by adding af[#af+1] = LoadActor("./GrabPB.lua")
to Themes\Waterfall\BGAnimations\ScreenGameplay overlay\default.lua's AF in a way that resembles the image below:

(You do not need to load it again if it is already present in this file)



2) NotITG style quick restart by pressing CTRL+R during gameplay

Allows you to instantly restart any simfile mid-game, without having to back out of gameplay.

Place QuickRestart.lua as Themes\Waterfall\BGAnimations\ScreenGameplay overlay\QuickRestart.lua

Once done, load QuickRestart.lua by adding af[#af+1] = LoadActor("./QuickRestart.lua")
to Themes\Waterfall\BGAnimations\ScreenGameplay overlay\default.lua's AF in a way that resembles the image below:

You can change which key(s) is/are used pretty trivially (with a small bit of lua knowledge) by modifying the lua file if u like



3) Display a tick for ECFA Passes on the songwheel

Place tick.png as Themes\Waterfall\Graphics\tick.png
Place MusicWheelItem Song NormalPart.lua as Themes\Waterfall\Graphics\MusicWheelItem Song NormalPart.lua



3a) Display ECFA score on the songwheel (By Daikyi)

Alternatively, if you would just like to display your ECFA number instead of texts and/or ticks,
Daikyi has made his own version of the music wheel item normalPart.

The color of the number indicates the type of clear you got on this song.
This only applies to songs in the ECFA folder, non ECFA songs will use the standard clear text display.
It's also difficulty agnostic, so it will always display regardless of which difficulty you currently have selected.

Note: This is not compatible with the tick (Mod #3) at all, but you'd still know if you haven't ECFA passed since the number is 0!
Place MusicWheelItem Song NormalPart.lua as Themes\Waterfall\Graphics\MusicWheelItem Song NormalPart.lua



4) Display ECFA DP on Ingame Steps Statistics panel


(You don't need to turn FA+ to view the number, I just used this to show where it shows up onscreen.)

Place JudgmentNumbers.lua as Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\StepStatistics\JudgmentNumbers.lua

Note this is an ECFA DP out of total notes hit so far, not total notes in the song.
I tried making it total notes in the song but ran into issues trying to get the total number of judgable rows,
as opposed to the individual number of hittable notes.

(Basically, the case of determining whether hands are hands because they are two arrows with a hold, or three arrows,
was throwing off my counts with various different counting methods.)

UPDATE (Mar 13 2021): Fixed bugs with ECFA DP counter when using ITG mode, and fixed hold count errors.
UPDATE (Mar 13 2021, again): Added Laplace's green coloration on FA passing. If you do not want this, delete lines 309 to 313.



5) Move Timing Dashes to the side of the judgments

You can move the in-gameplay timing dashes to the side of the judgments with this modified EarlyLate.lua
It goes in Themes\Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\EarlyLate.lua
Note this only affects timing dash, not the Tony Hawk (Error) Bar or the EARLY/LATE text.
The bar properly respects mini usage, reverse usage, etc.

UPDATE (Mar 12 2021): the modified EarlyLate.lua now properly respects step statistics in 2 player mode.


6) Display steps statistics in 2 player mode



At line 379 of Waterfall\Scripts\SL-PlayerOptions.lua, replace
		
			if style and style:GetName() ~= "single"
			or notefieldwidth and notefieldwidth > _screen.w/2 then
				table.remove(choices, 2)
			end
		
		
with
				
			if notefieldwidth and notefieldwidth > _screen.w/2 then
				table.remove(choices, 2)
			end
		
		

This will allow you to select Step Statistics from the Player Options page 2 while in Versus (2 player) mode.

Then, add the actual objects themselves to your theme by:
Place VersusStepStatistics.lua as Waterfall\BGAnimations\ScreenGameplay underlay\Shared\VersusStepStatistics.lua
Place BackgroundFilter.lua as Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\BackgroundFilter.lua
UPDATE (Mar 12 2021): Place EarlyLate.lua as Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\EarlyLate.lua
Place JudgmentNumbersVersus.lua as Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\StepStatistics\JudgmentNumbersVersus.lua

Once done, load VersusStepStatistics.lua by adding t[#t+1] = LoadActor("./Shared/VersusStepStatistics.lua")
to Themes\Waterfall\BGAnimations\ScreenGameplay underlay\default.lua's AF in a way that resembles the image below:

(Note: The reason you have to download a new "BackgroundFilter" and "EarlyLate.lua" is because they have now been
updated to properly track the modified playfield position, as the 2p step stats pushes them out slightly.
The EarlyLate here does *not* move the dash to the side like the one in mod #5.)


7) More useful Subtractive Scoring for ECFA

Subtractive scoring can feel kind of unhelpful when trying to work out how much ECFA dp has been lost
because it can only display the missing DP for ITG or Waterfall mode.
This change makes it so the subtractive scoring is now displaying the awesome count*
(*Where solid/OK/fault/miss is 1.5 awesomes, and mine/dropped hold is 0.5 awesomes)

Also, it now changes color based on the ITG combo value, which is useful for knowing if an Awesome was an Excellent in disguise.
This modified SubtractiveScoring.lua can make those awesomes a little less suspicious.

It goes over Themes\Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\SubtractiveScoring.lua

(If you just want the updated values with no coloration, grab this instead!)


8) More detail on the timing distribution bell curve stats



This raises the mean error to display 1 decimal place (for more accurate averaging!)
And adds a "max error" field, so you can see how far off your jankiest note was.

Grab Timing.zip and place it in Waterfall\BGAnimations\ScreenEvaluation common\PerPlayer
(You should be prompted to replace 2 files if you put in the correct spot, which you should accept.)


9) Interactive CatJAM who bobs to the beat of the currently playing song

Grab CatJAM.zip and extract its contents into Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\StepStatistics

Once done, load CatJam.lua by adding LoadActor("./CatJam.lua", player),
to Waterfall\BGAnimations\ScreenGameplay underlay\PerPlayer\StepStatistics\default.lua's bg_and_judgments in a way that resembles the image below:


You may also want to manually position the cat.
To do so, manually edit the self:x and self:y values in CatJam.lua, shown in the image below.


You can actually much add the catjam into any screen of any theme you want by just
copying CatJam.lua and the PNG texture file into the appropriate folder of that theme's BGAnimations folder,
then loading the CatJam lua file into that folder's default.lua as shown in the steps above,
and then manually adjusting the cat's position to be anywhere on screen
(screen top left is x=0 y=0 in most scenarios) by editing CatJam.lua as shown in the image above.




You are the th visitor to this site!