Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal. You can also buy games using our partner links for GOG and Humble Store.
We do often include affiliate links to earn us some pennies. See more here.

Coromon is another attempt to make a Pokemon styled game and while it is a lot of fun, the game had a major frustrating problem on Steam Deck and Linux desktop with Proton that has now been solved.

When covering it initially back in April 2022, I noted how it looked good and ran quite well until the performance would suddenly hard-drop down to 14FPS and just lock itself there. It would do it like clockwork every single time after a while of playing it (around an hour or so) and it was the same on desktop Linux too. The game was Steam Deck Verified by Valve back in April 2022, and stayed Verified the entire time which is another clear example of Deck Verified just not being thorough enough because this issue happened to everyone.

Thankfully, although rather late on it, the developer found the issue and fixed it in an update released in December 2022. So now it actually deserves the Steam Deck Verified rating.

Interestingly, the developer actually went onto Valve's Proton GitHub page to give an explanation of what the issue was, to help others:

Developer of Coromon here, we've been investigating this issue for some time now and we're finally able to pinpoint where the issue is coming from. Just dropping our findings here to help someone else perhaps fix the core issue.

The FPS drop starts happening after the BOverlayNeedsPresent() Steam SDK API is called roughly ~130.000 times (~36.5 minutes converted to seconds * 60FPS).
The steamworks plugin of our engine calls this on every frame to determine whether OpenGL should force a render to ensure the overlay is being updated. We tested decreasing the polling rate to the BOverlayNeedsPresent() to once every 10 frames, this delayed the FPS drop to 6 hours (360 minutes) instead of 36 minutes. This also changed the constant FPS drop into a frame spike every 10 frames, so it seems to me BOverlayNeedsPresent() starts to take a lot of CPU time after it is called over ~130.000 times.

We tested on every available Proton version on Steam, Proton 4.2-9 & Proton 3.16-9 do not have this glitch somehow.

We'll be releasing an update of our game soon where we decrease the polling rate even further to allow sessions of at least 18 hours without the FPS drop, but a better solution would be a fix for BOverlayNeedsPresent() in Proton.

So unless you're doing a single run longer than 18 hours (what?!) you're fine now.

It's actually pretty great to see a developer explain things like this, I wished more did. It can help Proton developers, and other game developers for future problems.

As usual here's a video with some fresh gameplay and a little discussion for people who prefer videos now:

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

You can buy it on Humble Store and Steam.

Article taken from GamingOnLinux.com.
10 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. Find me on Mastodon.
See more from me
The comments on this article are closed.
5 comments

mr-victory Jan 12, 2023
The dev clearly knows their job well.
GetBeaned Jan 12, 2023
Is this any good? I've played plenty of games aping Pokémon, but they all comes off as just that: a cheap facsimile of something with much more personality.

I thought the gameplay changes in TemTem were miles ahead of what Pokémon has been doing, but again, the creature designs don't live up to even the most middling of Pokémon.
Maxine Jan 12, 2023
Glad they managed to fix this issue, I was eager to give Coromon a shot !
Props to the dev for providing these explanations, such insights are very enjoyable.
Philadelphus Jan 13, 2023
I feel like Coromon is kinda like the the Xenonauts of Pokémon: hewing pretty close to the original experience while adding some updated touches (that's not a quality judgment in any way, shape, or form, just an amusing observation that came to me). Good on them to report the bug, it sounds like the ball is in Valve's court to fix the underlying issue.

I just got Pokémon Infinite Fusion working on Steam Deck yesterday, though, so I'm gonna be busy fusing pocket monsters together for a while…only 176,000 left to see!
Lofty Jan 13, 2023
Not sure if there was a Steam link in the OP. Maybe i missed it:

https://store.steampowered.com/app/1218210/Coromon/
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.