SALZKARTOFFEEEL wrote:
Huh, I actually like this little program a lot, but it has some bugs and other weird stuff I want to point out!
Oh man, I hope I wasn't to nitpicky with you here :/
Again, I really like this program, at least the idea is fantastic, but these are the things I came across the first hour or so of testing.
I'm not expecting you to fix all of them, but at least read through these and consider it :^)
1. (ironically) It doesn't launch when the path of the executable (or the jar) contains a "!"... which is bad... in a game, that's called "osu!"...
I moved the file to "D:\system\osu!" and it didn't work, in "D:\system\" however, it did! So, that's a bug, i guess.
2. The option "Overlay osu!" is (well irrelevant, who would not want it to overlay osu!? But also) not working when osu!'s in fullscreen.
3. It drains the performance way too much for what it's doing. For me, at a refresh rate of 1000 ms, it has almost the same CPU load as osu! itself at an unlimited frame rate (usually around 700-1500 fps). Even on 125 ms I still experienced lag spikes in osu!. But at least there's a simple solution for that: Just don't ever fucking use Java for real-time processing. Use C#, C++, Python, even fucking AutoHotkey if you like, but not Java...
4. I don't know what caused it and it doesn't happen anymore, but at first, while playing, the program was constantly lighting up in the taskbar as if it had a notification for me.
And here are a few feature requests I have:
1. Making an installer, rather than a standalone file. It would be easier to manage the config file, since it could be loaded automatically.
1.5 Also right now the Load Config and Save Config windows always default to the documents folder. With an installer you could have it remember where the last file was loaded from.
2. Saving the position of the overlay in the config file. (And/Or making it easier to position, like by snapping to the edges of the screen)
some minor things left:
1. Maybe do the opacity in percent, would be easier for the users, I think.
2. The adding of keys is weird. Dunno. It works perfectly fine, but it's weird >.< Maybe make a window pop up and have the user then press the key, not before pressing the button! o:
3. The config files could just be ordinary .cfg-files. Right now, you can't even edit them by hand (what I really like to do).
4. Make the overlay right-clickable (I'm kind of influenced by Rainmeter here, it does that really nicely). At least for maybe exiting, pausing the counter, etc. this function could be very useful.
Aaaaaand that's it!
Wow, what a long list D:
I know, some of these are not easy to fix, for example the performance thing, when you only know Java, or the "Overlay osu!" thing, because osu!'s a dick and it always wants to be on top of everything.
I hope, you at least understand what I mean with those things c:
Obviously, if you have questions, or you fixed something, let me know! I would love to see this program on my screen every day
I hope, I could help you with this feedback :3
Euh I'm kinda short on time right now so I'm only going to answer some points right now :3
I'll update this post tomorrow when I have some more time Bugs:
1. This is really interesting, lol.
2. I'm aware of this 'bug'. But it's not something I can fix. Well I tried but that didn't really work out. Since when I set my program to 'always on top' mode it's always competing with osu! for being to top most window. So in the end neither program was working like it should
But when you run osu! with the fullscreen option off (resolution can be fullscreen though). osu! doesn't try to be the top window so then it works. That however also adds extra lag for some :/
3. Real time processing is done in C actually. And on my old laptop (Intel Centrino CPU) it only takes 0~2% CPU (Firefox takes 10~50%). What really takes most of the CPU is the graph. But even so on my laptop that also only takes 2~4% CPU (slowest update rate 1000ms).
Also Java isn't slow anymore besides I like Java for being cross-platform. It is a little weird though that the program seems to take that much CPU power for you.
4. It should only do that if the window was made visible again. So either on starup or when pressing Ctrl + Y. I'll see if I can replicate it though.
Features:
1. I personally really dislike installers. Since I like being able to drag my programs from computer to computer. As for the config part that is also possible without the program being installed, so I might look into that. But I'll make it optional for sure, since I for example have multiple config files for different mania modes and standard mode. Another option would be to associate the extension with the program so that you can just open the config files automatically. But that would require that you don't move the program to a different location. Hmm, this one is a little difficult xD
1.5 Also posible without an installer
2. I could make it snap to the edges of a screen but that would be troublesome for user that have multiple monitors. I think I'll just add a 'snap' option in the command menu I'm going to add for feature #4.
1. I didn't do it in percentages O.O shame on me..... >.<
2. Yup I totally agree the addition of keys is weird
so weird that I always mess up myself..... Adding another option dialog would be possible. But I thought that the GUI was already preatty dialog heavy. If that's not an issue then I'll just make another dialog for it.
3. Hmm.... technically they could be. But currently they are serialized objects. Which is really really really convenient for me since I can load them really easy xD. Making them text based would be possible, but it would also be a lot of work, I'll see though if I'm in the mood I might do it
4a. I should be able to implement this quite easily as soon as I have some time.
4b. Todo: pause functionality xD since that currently doesn't exist.
Anyway thank you for the feedback
much appeciated.
I am going to put everything on my todo list however I currently don't have much time so I don't know when I'll be able to work on this.
ProgressItem / Status / Published
1. / Investigating / -
2. / Impossible / n/a
3. / Major improvements made / Published
4. / Todo / -
1. / Need a concrete idea / -
1.5 / Todo / -
2. / Todo / -
1. / Implemented / Published
2. / Todo / -
3. / Todo / -
4. / Todo / -
EditThanks to your performance concerns I was able to find a major issue xD. Turns out that there was still some very old code left that was ultra inefficient, so please blame me for this and not Java >.<. Problem was that it would become exponentially more inefficient on a
faster computer, so that's why I didn't really notice it. So I've changed it and on my computer the program now uses about 20 times less CPU xD. Plus I also improved the accuracy of the counter. So thank you very much for pointing this out
The new improved release is published now by the way (v4.0). Still working on the other points.