Phalcode / gamevault-backend

Backend for the self-hosted gaming platform for drm-free games
https://gamevau.lt
Other
156 stars 13 forks source link

Achievements #249

Open KairuByte opened 5 months ago

KairuByte commented 5 months ago

Is your feature request related to a problem? Please describe. Games have achievements. Quite often, the achievements still exist within a DRM free game, but are written to a file instead of pushed to a launcher. Games like Postal 2.

There are also API calls that GOG games can call when an achievement is reached. These can likely be redirected with a simple .dll hook.

Describe the solution you'd like Grab achievement info.

Describe alternatives you've considered No achievements.

Additional context Assuming this is possible, it would be a "nice to have" in the community tab.

Alfagun74 commented 5 months ago

I've never come across an achievement file like this before, except for maybe in very oooold games. Is it in a standardized format?

As for the 'simple .dll hook,' which DLL are you considering to use for this purpose?

Additionally, how can we ensure that it won't interfere with the achievements in GOG games when launched through GOG, considering the potential for blocking issues?

Alfagun74 commented 5 months ago

Hi Again,

I've personally been exploring this topic and came across some interesting projects on GitHub, like this one: https://github.com/xan105/Achievement-Watcher.

Although these projects are quite interesting, and I truly appreciate the hard work put in by their developers, it's important to note that the sources they support extend beyond legal boundaries.

To put this into perpective: They mainly provide support for pirated games and cracks, much more than for legitimate platforms that I could easily integrate without any concerns.

I want to emphasize that GameVault is not a tool for piracy. It's a gaming platform specifically for DRM-free games, and Phalcode is a legitimate company from Germany with rights, responsibilities, and legal obligations.

If we decide to support the achievement feature at all, it would be as integrable software. This means offering APIs for registering achievements and providing a user interface to display them on the client, play a sound, and showcase them on your profile. However, we won't provide the actual functionality of triggering or unlocking achievements.

The responsibility for integration would lie within the respective games, developers, scripts, or tools.

This approach would simplify our work and help us avoid moral and legal difficulties. I don't mind where the achievements come from, honestly. It's a self-hostable server, do what you want with it at the end of the day.

There is one condition, though...

Before we invest time and effort into developing and maintaining this feature set and API, it's crucial to confirm a genuine intention for integration. I won't start planning for this until there's a clear indication that someone or some tool has a serious plan to integrate this feature.

If you're a developer looking to collaborate on this, it doesn't matter who you are or in what context you intend to work. Please contact us directly via email or on our Discord server if you have concrete plans or a commitment for integration. This way, we can define an API and collaborate on this together.

candroid-man commented 6 days ago

I would love to see this feature