Flash Flash Revolution

Flash Flash Revolution (http://www.flashflashrevolution.com/vbz/index.php)
-   Stepmania (http://www.flashflashrevolution.com/vbz/forumdisplay.php?f=19)
-   -   The Etterna Project (http://www.flashflashrevolution.com/vbz/showthread.php?t=145215)

PolygonEater 09-7-2016 10:58 PM

Re: hello allow me to introduce to u my Wife
 
Quote:

Originally Posted by shakesoda (Post 4472850)
p.s. high framerates are cool but things like that 1ms thread sleep do exist for a reason (taking all resources makes everything else on the system lag), if you need it disabled I'd accept a PR for a preference.

I removed the 1ms sleep because sleep is not deterministic and should never be used in any application where you want it to resume and complete at an accurate interval. Sleep is fine for things like say, the input thread waiting for a device, but not for the main gameplay thread. If there is a way to implement this deterministicly I am interested to hear it, I could very well be missing something.

That being said, the purpose of said sleep would be for old machines with single/dual cores where saturating the hardware with Stepmania is a real possibility. For the GPU at least, I am adding a deterministic frame limiter via a busy loop so people with weaker GPUs can avoid the high load if they like.


MinaciousGrace 09-9-2016 06:25 AM

Re: hello allow me to introduce to u my Wife
 
cool new download links time

theme:
https://github.com/MinaciousGrace/Til-Death
build:
https://github.com/xwidghet/stepmani.../tag/0.0000003



You must be using the custom build in order for the theme to function properly.

Currently the custom build only involves modification of the stepmania executable, and not any other resources. This means no installation is required. Just download the .exe from the link and overwrite the one that exists in your stepmania5/Program. You are advised to make a backup of the original executable on the off chance the custom build doesn't work.


If you don't the wife system won't work at all, since the chartkey system has been built into c++ and is based on how the game interprets charts. This means that .ssc .dwi .sm files are all hashed rather than just .sm files. 4k/6k/8k charts should all theoretically be compatible with the system now however I have to remove some blocks I put in place to prevent the old chart key generation script from from crashing the game when trying to generate keys for non-4k charts.

Currently key generation is done both on initial song load and at the start of gameplay so you don't technically need to rebuild your cache. However you are strongly recommended to delete your song cache and rebuild it before playing.

This is done automatically and at the moment there is no way to disabled it, even if you are not using my theme. However everything is done before gameplay begins and thus has no effect on it, and the effect outside of gameplay is a marginally longer loading time.

Not using the custom build will also prevent many of the gameplay elements from functioning properly. The custom build adds parameters to the judgment messages that streamline interpretation and minimize what should be needless logical checks and hooks back into c++ objects to get information that should be disseminated by the judgment messages in the first place.


Brief changelog (only going to skim the major changes for now, a more comprehensive and in-depth changelog will follow eventually):

Build:

Performance massively increased due to a few targeted optimizations.

- Inefficient mathematical implementations in high traffic functions were replaced. The 40% of processing they were hogging during gameplay has been reduced to less than 1%.
- The game no longer calculates point in time during gameplay for every actor asking for it every frame (ie, every note on the screen). Points in time for the entire file are pre-calculated as gameplay begins and stored in a vector which is then simply read from as each actor asks for it. This however necessarily requires that an assumption can be made about whether or not the pre-calculated values will be valid by the time they are needed. I'm fairly sure that lua modding can be used to alter the timingdata of a file as you're playing it, so this system will shut off if an lua script is loaded before gameplay as a pre-caution. Values are then once again calculated on the fly. Previously calculation of point in time made up about 25-30% of what the game was doing. Pre-calculating values reduces that number to again, below 1%.
- Rendering parameters are pointerised rather than being copied and emptied every time something needs to be rendered. Copying these values rather than accessing them from a fixed memory point resulted in a fairly large degree of overhead for rending any object on the screen. The changes resulted in about another 10% performance boost after the above two were made.
- Various lazy and/or inefficient coding practices sharpened up. Static casting where appropriate. Avoiding silly situations in which floats are converted to ints in order to round them, then converted back to a float, then converted back to an int. In relativistic terms these have had a mostly negligible impact, but it's the principle of the thing.

The result is that during what most people here would consider standard kb gameplay the game just does about 20% of what it was doing before per frame, and about 95% of that is rendering objects. Essentially framerate should average more than 5x what was previously achievable on the base build. Themes that were already minimal will see less of a performance boost, and the most gain will be seen by themes employing lots of fancy stuff. For reference the old version of transcendence during gameplay with all features enabled, including the nps graph and etc. Fps averaged around 200 and often dipped below. Custom build with the new version of my theme with all the same features and more enabled, is stable at 1400 fps during gameplay.

Other stuffs

- Framelimit preferences have been added to preferences.ini. Now that the game spends the large bulk of its time rendering rather than inefficiently calculating inputs to the render engine, gpus can actually get taxed pretty hard. FrameLimitGameplay controls the maximum framerate during gameplay, and FrameLimit controls the maximum framerate for all screens aside from gameplay. They are separate entities and must both be set if you wish to cap framerates for the respective screens. My personal suggestion is to cap framerate at 300 outside of gameplay, and 1000 inside. As noted previously this will still fully utilize one of your cpu cores.
- Added preference for pitch rates, EnablePitchRates. Disabling this will make it act the same as any other Stepmania 5 install.
- Scrolling through a lot of songs on song select (like alphabetical sort on massive collections) has been improved greatly.
- Fix rates causing arrows to have motion stutter whenever the sound driver returns duplicate timestamps. This is most noticeable with DirectSound-sw.
- Judgment messages now have extra params that make sense
- A whole ton of shit that was soaking up resources when not even active have been told to stop it or been disabled entirely (lightsmanager for arcade cabinets and dancing characters fall into the latter category). I'll document all of the instances of this later (i mean they're in the commit messages in the repo, but I'll document them here later).


Theme:

- Fixed a billion bugs with songsearch. Now it should totally definitely work seamlessly. And if it doesn't who cares because I plan to rewrite the implementation into c++ anyway.
- Fixed issues with selecting waifu preventing the old scoretracking system from working properly.
- Re-enabled nps counter, nps graph, screen-filter, and lane-cover. They are now all selectable and operational as they designed to be.
- Fullprogress bar and miniprogress bar are now two separate entities that can be turned on or off independently.
- Lifebar is now just a bar that goes up and down. Not a fourth dimensional non-euclidean anti-newtonian trapeslinkyzoid.

Notes: Theme still doesn't support widescreen. I'm working on it and I intend to in the future, it's just not a higher priority than getting everything else working first. Second player support however, is still totally gutted.


You are encouraged to report bugs if you run into them. My inclination towards solving problems in most cases outweighs my adversity towards helping people with shit I think is stupid. For example, if some mod map doesn't work let me know and I'll look into it. I've already tested the megalovania mod map and it works fine, if you can call that file stepmania working fine.

There's quite a bit more to say and in a little bit of time the OP will be reorganized and restructured to become the base for the new theme (prolly the same time it gets githubbed and moved out of alpha)

One final note. Chances are you'll have to spend a little bit of time adjusting. The game is much smoother and crisper and I hit everything like 20 ms early from not being used to it.

Apart from that enjoy your performance boost, both game and player wise.

Soul Evans 09-9-2016 08:19 AM

Re: hello allow me to introduce to u my Wife
 
I never had anything above 200 fps on osu while you said you had 2k fps, so i'm not sure it will have 2k fps for me but god is it better than what i had before lol

MarioNintendo 09-9-2016 09:22 AM

Re: hello allow me to introduce to u my Wife
 
i'm at work but i'm so hype to try this out
I'm curious (I didn't find if you mentioned this in your post): is the build set to work only with your theme, or is it also compatible with other themes, say BareBones or UltraLight for example?

PolygonEater 09-9-2016 09:24 AM

Re: hello allow me to introduce to u my Wife
 
Quote:

Originally Posted by MarioNintendo (Post 4473365)
i'm at work but i'm so hype to try this out
I'm curious (I didn't find if you mentioned this in your post): is the build set to work only with your theme, or is it also compatible with other themes, say BareBones or UltraLight for example?

The build should work just fine with other themes.

Cataclysm- 09-9-2016 10:15 AM

Re: hello allow me to introduce to u my Wife
 
The theme seems kinda buggy. AA tracker seems to be broken, Rip mini-progress bar, error bar doesn't turn off, another thing that kind of bothers me is that the judgement makes it look like you are just MA'ing everything not sure why (Maybe it thinks I am playing J4 even tho I have it set to J5) , I also can't seem to move the bpm display despite changing it which is odd and kinda of a hindrance being a downscroll player and all.

edit: I'll be looking at it again later (have class) so maybe I just fucked something up but yeaaaa...

Jousway 09-9-2016 10:20 AM

Re: hello allow me to introduce to u my Wife
 
Quote:

Originally Posted by Cataclysm- (Post 4473370)
The theme seems kinda buggy. AA tracker seems to be broken

yeah it also doesnt display for me :<, did ya remove it? cuz I'm not getting any lua errors

edit: also at the end of screen gameplay it goes
WARNING: Error playing command:/Themes/Til Death/BGAnimations/ScreenGameplay overlay/newnpscalc.lua:157: attempt to concatenate field '?' (a nil value)

edit2:
screen fillter is gone it seems :<

Flossy97 09-9-2016 10:30 AM

Re: hello allow me to introduce to u my Wife
 
Yeah i was also having issues like: aa tracking not working, rate switch on selct screen is broken, left+right bind is back, and the chartkey system seems like it's the first released version (some of these issues were there in the first ver but not in .47 with breaking on some sms and not working on non sms. Also on your stream yesterday there was some cool highlighting effect on music select based on the difficulty the score was gotten on, so I'm curious about that. I was using both the new theme and the new build

MinaciousGrace 09-9-2016 02:13 PM

Re: hello allow me to introduce to u my Wife
 
Ok so the long story short is i was really tired last night and rar'd the til death theme in my old sm5 setup! So basically it's like 3 weeks old and probably older and very obviously nothing works. I clearly should have double checked and extracted the theme and run it just to make sure but I didn't because I do dumb shit all the time.

I'm having someone run through what should have been the actual release just to triple check before updating the link hang on.

k im not backing out on my promise for that to be the last mediafire link so here you go for everyone who stIllL caRes!!
https://github.com/MinaciousGrace/Til-Death

Dynam0 09-9-2016 03:22 PM

Re: hello allow me to introduce to u my Wife
 
welp time to download sm5, mfw one of the most stubborn 3.95 users might actually switch :o

Dinglesberry 09-9-2016 03:41 PM

Re: hello allow me to introduce to u my Wife
 
Holy shit I'm jumping on my pc now to download this.. Finally a reason to quit osu??? Literally just played it cause the song search, easy to find and add songs, and 2000 fps..

I understand that you have priorities with the development of this, but if I could make a suggestion, would it be possible to implement a "UI configuration" of sorts that is similar to FFR to customize the view ingame? (e.g. can drag and move elements and customize their position)

Great work on this, I have dreams of stepmania being super user friendly, I am imagining that at some point you will sync this wife system up to your difficulty parser and stat tracker with a fleshed out ranking system and profile, which would be amazing.

Celirra 09-9-2016 05:54 PM

Re: hello allow me to introduce to u my Wife
 
Hi Mina cutie,

Any way to see the simfile author and all that with the new Til Death?



I remember with old transcendence there was a way to see it by going to stepfile info or something, but I don't think anything like that is there anymore (all the clickable options greyed out anyways).

also what about msd info for songs?


Also I think I speak on behalf of many when I say thanks for this and the custom build, to the two of you and anyone else involved.

ZeusJuice 09-9-2016 09:06 PM

Re: hello allow me to introduce to u my Wife
 
Quote:

Originally Posted by MinaciousGrace (Post 4473392)
I do dumb shit all the time.

Understatement of the century

MarcusHawkins 09-10-2016 05:47 PM

Re: hello allow me to introduce to u my Wife
 
Quote:

Originally Posted by ZeusJuice (Post 4473434)
Understatement of the century

^ This quote is definitely sig worthy!


Anyways, once I have a PC or laptop (not a chromebook) that works (if I even have one soon, they tend to break a lot,) I really want to try this out, because I believe this can really help get a lot of people the skill-boosts that they want to get, and the theme is just really nice overall!

Staiain 09-10-2016 09:14 PM

Re: hello allow me to introduce to u my Wife
 
So I did a back to back with my old ultralight mod, 72 - 116 fps with battery save mode on my laptop, 440+ stable with newest .exe, same exact settings



What in the world

MarioNintendo 09-11-2016 09:21 PM

Re: hello allow me to introduce to u my Wife
 

brainslainlikin 09-14-2016 09:11 AM

Re: hello allow me to introduce to u my Wife
 
while i am extremely happy about new stepmania build, (most likely) due to your new stepmania build, end of the hold note of right receptors and left receptors are switched.



i don't think i had this bug when i used original stepmania build.

Jousway 09-14-2016 09:24 AM

Re: hello allow me to introduce to u my Wife
 
hahaha I can confirm this bug, how did this even happen

James May 09-14-2016 11:19 AM

Re: hello allow me to introduce to u my Wife
 
Wife doesn't work with Transcendance and both Til Death and Transcendance shows perspective being on Overhead despite me playing on Distant. Not sure if it happens to the other themes?

Nano Desu 09-14-2016 04:10 PM

Re: hello allow me to introduce to u my Wife
 
why would anyone put themselves through the torture of using hanubeki


All times are GMT -5. The time now is 03:14 PM.

Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright FlashFlashRevolution