-
Notifications
You must be signed in to change notification settings - Fork 177
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
111 changed files
with
2,898 additions
and
2,097 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
This file was deleted.
Oops, something went wrong.
Diff not rendered.
This file was deleted.
Oops, something went wrong.
Diff not rendered.
This file was deleted.
Oops, something went wrong.
Diff not rendered.
Oops, something went wrong.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
// Based on a shader by FMS_Cat. | ||
// https://www.shadertoy.com/view/XtBXDt | ||
// Modified to support OpenFL. | ||
|
||
#pragma header | ||
#define PI 3.14159265 | ||
|
||
uniform float time; | ||
|
||
vec3 tex2D(sampler2D _tex,vec2 _p) | ||
{ | ||
vec3 col=texture(_tex,_p).xyz; | ||
if(.5<abs(_p.x-.5)){ | ||
col=vec3(.1); | ||
} | ||
return col; | ||
} | ||
|
||
float hash(vec2 _v) | ||
{ | ||
return fract(sin(dot(_v,vec2(89.44,19.36)))*22189.22); | ||
} | ||
|
||
float iHash(vec2 _v,vec2 _r) | ||
{ | ||
float h00=hash(vec2(floor(_v*_r+vec2(0.,0.))/_r)); | ||
float h10=hash(vec2(floor(_v*_r+vec2(1.,0.))/_r)); | ||
float h01=hash(vec2(floor(_v*_r+vec2(0.,1.))/_r)); | ||
float h11=hash(vec2(floor(_v*_r+vec2(1.,1.))/_r)); | ||
vec2 ip=vec2(smoothstep(vec2(0.,0.),vec2(1.,1.),mod(_v*_r,1.))); | ||
return(h00*(1.-ip.x)+h10*ip.x)*(1.-ip.y)+(h01*(1.-ip.x)+h11*ip.x)*ip.y; | ||
} | ||
|
||
float noise(vec2 _v) | ||
{ | ||
float sum=0.; | ||
for(int i=1;i<9;i++) | ||
{ | ||
sum+=iHash(_v+vec2(i),vec2(2.*pow(2.,float(i))))/pow(2.,float(i)); | ||
} | ||
return sum; | ||
} | ||
|
||
void main() | ||
{ | ||
vec2 uv=openfl_TextureCoordv; | ||
vec2 uvn=uv; | ||
vec3 col=vec3(0.); | ||
|
||
// tape wave | ||
uvn.x+=(noise(vec2(uvn.y,time))-.5)*.005; | ||
uvn.x+=(noise(vec2(uvn.y*100.,time*10.))-.5)*.01; | ||
|
||
// tape crease | ||
float tcPhase=clamp((sin(uvn.y*8.-time*PI*1.2)-.92)*noise(vec2(time)),0.,.01)*10.; | ||
float tcNoise=max(noise(vec2(uvn.y*100.,time*10.))-.5,0.); | ||
uvn.x=uvn.x-tcNoise*tcPhase; | ||
|
||
// switching noise | ||
float snPhase=smoothstep(.03,0.,uvn.y); | ||
uvn.y+=snPhase*.3; | ||
uvn.x+=snPhase*((noise(vec2(uv.y*100.,time*10.))-.5)*.2); | ||
|
||
col=tex2D(bitmap,uvn); | ||
col*=1.-tcPhase; | ||
col=mix( | ||
col, | ||
col.yzx, | ||
snPhase | ||
); | ||
|
||
// bloom | ||
for(float x=-4.;x<2.5;x+=1.){ | ||
col.xyz+=vec3( | ||
tex2D(bitmap,uvn+vec2(x-0.,0.)*7E-3).x, | ||
tex2D(bitmap,uvn+vec2(x-2.,0.)*7E-3).y, | ||
tex2D(bitmap,uvn+vec2(x-4.,0.)*7E-3).z | ||
)*.1; | ||
} | ||
col*=.6; | ||
|
||
// ac beat | ||
col*=1.+clamp(noise(vec2(0.,uv.y+time*.2))*.6-.25,0.,.1); | ||
|
||
gl_FragColor=vec4(col,1.); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
:root { | ||
--content-wrap-background-color: #202326; | ||
--content-background-color: #2e3236; | ||
--navbar-background-color: #25282b; | ||
--navbar-background-color-hover: #333639; | ||
--navbar-background-color-active: #111417; | ||
--navbar-current-background-color: #333639; | ||
--navbar-current-background-color-hover: #44474a; | ||
--navbar-current-background-color-active: #222528; | ||
--navbar-level-1-color: #ddd; | ||
--navbar-level-2-color: #ccc; | ||
--navbar-level-3-color: #bbb; | ||
--navbar-heading-color: #ee7381; | ||
--navbar-scrollbar-color: #be5460; | ||
--navbar-scrollbar-hover-color: #963e48; | ||
--navbar-scrollbar-active-color: #5f3034; | ||
--navbar-scrollbar-background: #1c1e21; | ||
|
||
--link-color: #8cf; | ||
--link-color-hover: #9df; | ||
--link-color-active: #6ad; | ||
--link-color-visited: #cb99f6; | ||
--external-reference-icon: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjEyIiB3aWR0aD0iMTIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjOGNmIj48cGF0aCBkPSJtNy41IDcuMXYzLjRoLTZ2LTZoMy40Ii8+PHBhdGggZD0ibTUuNzY1IDFoNS4yMzV2NS4zOWwtMS41NzMgMS41NDctMS4zMS0xLjMxLTIuNzI0IDIuNzIzLTIuNjktMi42ODggMi44MS0yLjgwOC0xLjMxMy0xLjMxeiIvPjwvZz48L3N2Zz4K"); | ||
|
||
--hr-color: #555; | ||
--table-row-odd-background-color: #3b3e41; | ||
--code-background-color: #434649; | ||
--code-border-color: #505356; | ||
--code-literal-color: #faa; | ||
--input-background-color: #333537; | ||
--input-focus-border-color: #5f8cff; | ||
|
||
--search-input-background-color: #43464a; /* derived from --input-background-color */ | ||
--search-match-color: #52b4ff; /* derived from --link-color */ | ||
--search-match-background-color: #414c56; /* derived from --link-color */ | ||
--search-active-color: #202326; | ||
--search-credits-background-color: #202123; /* derived from --navbar-background-color */ | ||
--search-credits-color: #6b6b6b; /* derived from --footer-color */ | ||
--search-credits-link-color: #628fb1; /* derived from --link-color */ | ||
} | ||
|
||
/* Center page (thank you godot-docs) */ | ||
@media only screen and (min-width: 769px) { | ||
.wy-body-for-nav { | ||
/* Content */ | ||
max-width: 1100px; | ||
margin: 0 auto; | ||
} | ||
.wy-nav-side { | ||
/* Side navbar */ | ||
left: inherit; | ||
} | ||
.rst-versions { | ||
/* Doc versions */ | ||
left: inherit; | ||
} | ||
} |
Oops, something went wrong.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
Noteskins | ||
========= | ||
|
||
**Noteskins** change the appearance of notes. | ||
In base *Friday Night Funkin*, noteskins are stored within a singular image, attached with an xml file which defines the position of each note. | ||
**Forever Engine** expands upon this system, allowing for the use of Quantization, as well as different note types. | ||
|
||
Forever Engine includes an optimized version of the default noteskin, which can be used as a base to make new noteskins. | ||
|
||
Note Types | ||
---------- | ||
|
||
Forever Engine supports most note types used in Stepmania. These include: | ||
|
||
- Notes | ||
|
||
The standard note. Usually appears as an arrow, or less commonly a bar or circle. | ||
|
||
- Holds | ||
|
||
A regular note with a 'tail' that must be held for a period of time. In Forever Engine, Hold notes are made up of three parts; The note, the body and the tail. | ||
|
||
- Mines | ||
|
||
Hitting mines reduces your health and score. Commonly appears as a spinning grey disc with a red inside, an X, or a flaming arrow. | ||
|
||
- Rolls | ||
|
||
A regular note with a jagged tail. Instead of holding the note, Rolls must be repeatedly tapped for the roll tail duration. Usually appears as a yellow, jagged hold. | ||
|
||
Formatting | ||
---------- | ||
As of version 0.2.3, Forever Engine's noteskins are held inside the Assets > Art > Noteskins > Notes folder. | ||
Each subfolder represents one unique noteskin, the name of which is based on the folder name. | ||
|
||
There are two types of note formats: | ||
|
||
- The base game's XML format | ||
- Forever Engine's hardcoded grid-based quant format (temporary) | ||
|
||
Currently the quant format is hardcoded, made of 2 images. | ||
|
||
NOTE_quants.png, which uses a **4x10** grid made of **157px x 157px** blocks, | ||
and HOLD_quants.png, which uses a **4x10** grid made of **109px x 52px** blocks. | ||
|
||
NOTE_quants.png has 4 columns, which correspond to each arrow. | ||
|
||
HOLD_quants.png has 4 columns. These are used for the hold body, hold tail, roll body, and roll tail. | ||
|
||
These are the noteskin references. | ||
You can use these as a template for your custom noteskins. | ||
|
||
|
||
.. figure:: NOTE_quants.png | ||
:height: 300 | ||
:align: left | ||
|
||
Fig. 1: Note quants grid | ||
|
||
.. figure:: HOLD_quants.png | ||
:height: 300 | ||
|
||
Fig. 2: Hold quants grid |
Oops, something went wrong.