Forums » News » StepMania 5.1.0 Alpha 2 released

I designed this system around equations because an equation is easy for me to work with. I look at a sine wave, and I know how often it repeats and the range it covers. This is honestly the same as screwing around with your graphic calculator in high school. The intent is that you pick one simple effect to start with and learn to do that. Then as you learn each part of the system, you can apply what you know to anything similar. Start by adding a constant value to a position:
col:get_note_pos_x():add_mod{"ModFunctionType_Constant", 16}

Then as you understand each aspect, you can pick another to learn.

Each element is separate to allow effects that are out of sync with each other. Imagine you have an actor, and you want it to wave back and forth every 3 beats, and up and down every 4 beats. With tweens, you have to wrap an ActorFrame around it for the second motion, which brings in extra overhead.
Then there's the problem of shaking effects. A common thing I see in gimmick files is having notes shake back and forth at a high frequency. If you look at mod files, you'll see the code setting a mod to a high value, then a low value a very short time later. This means that shaking the notes for 2 seconds can turn into 60 mod settings or tweens for a simple 30 Hz shake. With wave function equations, it's a single efficient line of code.

Each element is also identical. Once you understand how to change the x position, you apply the same knowledge to change the zoom or the rotation or the quantization or any other mod.

In my examples, I loop through all the columns with a loop because I felt like it. Because each column has its own mods, if you want something that only affects one column, you can do that. Most mods are not evaluated for every note. Only the ones that are really needed for every note are actually evaluated for every note.


If you downloaded 5.1.-2 before this post, you have a version with broken autogen. Turns out it was broken for 5 months and nobody noticed.
< cybik> til Kyzentun fixes bugs for breakfast
--
< maxvg1> shakesoda: then why do i still play lol
<@shakesoda> because you're an ITG player. And thus, a masochist
--
<@shakesoda> Kyzentun: I think you might need to put down the meshes for a bit
Reply
I designed this system around equations because an equation is easy for me to work with. I look at a sine wave, and I know how often it repeats and the range it covers. This is honestly the same as screwing around with your graphic calculator in high school. The intent is that you pick one simple effect to start with and learn to do that. Then as you learn each part of the system, you can apply what you know to anything similar. Start by adding a constant value to a position:
col:get_note_pos_x():add_mod{"ModFunctionType_Constant", 16}

Then as you understand each aspect, you can pick another to learn.

Each element is separate to allow effects that are out of sync with each other. Imagine you have an actor, and you want it to wave back and forth every 3 beats, and up and down every 4 beats. With tweens, you have to wrap an ActorFrame around it for the second motion, which brings in extra overhead.
Then there's the problem of shaking effects. A common thing I see in gimmick files is having notes shake back and forth at a high frequency. If you look at mod files, you'll see the code setting a mod to a high value, then a low value a very short time later. This means that shaking the notes for 2 seconds can turn into 60 mod settings or tweens for a simple 30 Hz shake. With wave function equations, it's a single efficient line of code.

Each element is also identical. Once you understand how to change the x position, you apply the same knowledge to change the zoom or the rotation or the quantization or any other mod.

In my examples, I loop through all the columns with a loop because I felt like it. Because each column has its own mods, if you want something that only affects one column, you can do that. Most mods are not evaluated for every note. Only the ones that are really needed for every note are actually evaluated for every note.


If you downloaded 5.1.-2 before this post, you have a version with broken autogen. Turns out it was broken for 5 months and nobody noticed.


wait "nobody noticed"? then is it only who I am?
recently, as I got a problem in:
Stepmania won't start even compiled fresh
You told me to turn off autogens and clear cache.
sometime later I turned on the Autogen again in the game and when I reload the cache in the game, the game crash again.
I then go to the Preferences.ini to set the autogens off without clearing the cache and start it back again
I noticed as I find through the problem by doing the action above, it was really the autogen is the culprit of this. I don't have to clear the cache, turn off autogens, start, BOOM!, it works
scroll down the issue page. It's only autogen causes crash!
relevant post was also: Stepmania won't start, posted in Installing on Linux

Last edited: 3 April 2016 1:41am

The Founder of Perkedel Corporation
Reply
wait "nobody noticed"? then is it only who I am?
Everything you post is garbled. I couldn't make enough sense of it to realize autogen was really the source of the problem.
< cybik> til Kyzentun fixes bugs for breakfast
--
< maxvg1> shakesoda: then why do i still play lol
<@shakesoda> because you're an ITG player. And thus, a masochist
--
<@shakesoda> Kyzentun: I think you might need to put down the meshes for a bit
Reply
Hello Kyzentun, and everyone viewing this post. I was using v5.0.10 for quite some time and I had to update to this latest build because of certain theme. There are few things I'd love to ask here:

1. How do I use my own preferred noteskins? The game won't detect anything else beside NewSkins.
2. Where are the Effect options such as Dizzy, Roll, etc?
3. What happened to these mods; Boost, Wave, and such?
4. There's no option for Dark/Cover?

Sorry that most of them are about mods. Well I'm glad that finally there's an option with zoom, and we can move the receptor to our own liking. Will there be an option where we can resize/remove the judgement and combo? That's all, thanks for the time reading.

Last edited: 6 April 2016 9:13am

Reply
1. Noteskins need to be converted manually. Jousway is working on his noteskins, and the default newskin provides full documentation.
2/3/4. I haven't gotten around to figuring out how to structure a common mod set for themes to use. So those things are off the menu for now. Not hard to implement, just a matter of figuring out a good structure for people to use so that mods behave commonly between themes.
5. Moving judgment/combo is up to the theme.
< cybik> til Kyzentun fixes bugs for breakfast
--
< maxvg1> shakesoda: then why do i still play lol
<@shakesoda> because you're an ITG player. And thus, a masochist
--
<@shakesoda> Kyzentun: I think you might need to put down the meshes for a bit
Reply
I see, guess I'll revert back to 5.0.10 for the time being. Thanks for the reply.
Reply