The performance of Curve Fever
Happy New Year everybody! This is going to be the first blog post of the year. When we started the blog, we told that we would write every week. But soon it turned out that writing once a week is pretty time consuming. That is why we decided to not write once a week, but only once a month. We will recap what happened last month and our plans for upcoming month. And also to touch on one specific topic.
Performance of the game #
This time I want to talk about the performance of the game. A player called Incred wrote on the 30th of December a very long post, called the 2015 Curve Fever Prep Talk!. Clearly this was a long post, and because I was very busy, I was not really in the mood to read it. But Imhoff pointed out to me that it was a really good post and that I should read it. And thus I began to read it carefully.
To sum it up, Incred makes two wishes in his post:
- Fix the performance of the game (it doesn’t run smooth)
- Give more attention to your competitive players
I will now focus on the first point of Incred. I finished reading, and I said to Imhoff:
“What a nonsense, the game runs pretty smooth. Most players don’t have any problem with it.”
“Try it Geert”, Imhoff said, “it doesn’t run smooth!”
So I open a new tab in my Chrome browser and load the game in there. I know I have seen the game run very smooth many times. And I also know that we actually did a lot to increase the performance of the game. So no way it wouldn’t run smooth in my browser on my high-end laptop…
Mooh! What was this? It was indeed stuttering like mooh? How can this be?
Chrome and it’s evil PPAPI #
First of all, this has not always been the case. Very quickly we found out that Chrome had updated my browsers to remove the old NPAPI player and replace it with a PPAPI player. Disabling this had a tremendous positive effect. But we can’t let all our players change their NPAPI/PPAPI players. Our game should also run smooth with the PPAPI player. How to fix this?
Changing platforms #
A possibility is to switch platforms. If there was a readily available platform that would work on all PC’s, including PC’s on schools, we would make this switch, right now. So far there are some promising new platforms, but all of them decrease the accessibility of Curve Fever. An option would be to make an executable of Curve Fever. But this would require another code base, which would take resources away from the majority of our players. So for now, it looks like we are stuck on Flash, unfortunately (Do you happen to work at Flash: Give us UDP…. PLEASE! And work on the performance of your Flash Player!)
How big is the problem? #
Another problem is that we didn’t have a clear picture on how big the problem actually is, and what the impact is of our actions, or actions by third parties (with this we mean updates by the browsers and the flash player plugin). So far we had to rely on forum posts. And the topic writers don’t excel in clearly pointing out their problems, or in digging deep in the problem. Most importantly, the people who do have this problem, probably stop playing even before they want to make a forum topic.
That is why we added a new feature. We now send performance reports about our game to our servers.
It works like this: Internally the game runs on 25 steps per second and the framerate of the game is 60 FPS. So in general, there is 1 frame were nothing happens and 1 frame were the game actually increases with 1 game-step. No way the game could put 2 steps in 1 frame… unless your performance is bad. We call this a frame skip. And this is precisely what we log now.
Don’t follow this advise please
Optimal Curve Fever Browser #
We are collecting these statistics for a few days now. And we can tell you what the optimal Curve Fever browser is…
Skip frames per browser and per ppapi/npapi player
Opera! We recommend everybody to play with Opera.
More importantly, is that we now have a objective measure of the performance of our game. Future updates should result in a decrease of the skipped frames, and thus in a smoother experience of Curve Fever.
January #
What else happened in January. Among others:
- We moved to an office! And it is great to have your own work place. A place where you can work, and don’t need to share for living.
- We have made an extensive list of things that needs to be changed in the game. Expect many bigger and smaller changes to happen soon.
- We have thought of a new emerging game play element for Curve Fever.
- Quick Play will find it’s way in Curve Fever.
- We did a user test on how first time players experience Curve Fever, and work on improving this.
- We set up a way to detect air-deaths, so we can better solve this in the future.
February #
A quick look in the future tells me that:
- A new intern will start to work at Curve Fever, on the field of Marketing
- We will solve the air-death issues
- We will redesign lag
- Make an external login system, so people can login with Kongregate accounts, or Facebook accounts
- New awesome icons, you haven’t seen nothing yet
- Some cool merchandise
- Many minor changes, like a ping sound when the room can start
Thanks for reading
Geert