flyinghead / flycast

Flycast is a multiplatform Sega Dreamcast, Naomi, Naomi 2 and Atomiswave emulator
GNU General Public License v2.0
1.37k stars 167 forks source link

[Feature Request] RetroAchievements support #761

Open Tvastr-ops opened 1 year ago

Tvastr-ops commented 1 year ago

Is your feature request related to a problem? Please describe. Currently the only way to get RetroAchievements to work with flycast is through Retroarch core. But it's a very tedious process. And installing Retroarch for only Dreamcast doesn't make sense. So if it's possible can you please add RA support in the standalone application.

ludg1e commented 1 year ago

Why only Android/iOS? This should be addressed to all platforms, if possible.

TreeBranches commented 1 year ago

Considering the native Xbox port of Flycast runs significantly better than the Retroarch core I too would like to see this happen now now that achievements are supported in Dreamcast games.

DLance96 commented 1 year ago

Just wanted to share my desire to see this feature

ghost commented 1 year ago

I agree with everyone! I would love too see this happen. But sadly I’m not a dev and I don’t know much about emulator development/ emulation.

retropieuser commented 1 year ago

Apologies I didn't see this ticket. I'd also love to see this implemented

Walissonsd commented 1 year ago

Please add Retroachievements

montero3006 commented 11 months ago

Hello, thanks for that awesome emulator. Will be possibility to have retroachivements support on the emulator? Thanks!

w-e-g commented 10 months ago

+1, it would be very nice if add a retroachivments support.

jintei commented 4 months ago

Flycast runs so much smoother when not emulated via RetroArch, really wish we could have achievement support for it

flyinghead commented 4 months ago

The latest build on the dev branch features a basic RetroAchievements integration. UI is very minimal at this point and you'll just get text notifications when achievements are unlocked. However everything should be tracked on the retroachievements.org web site. This is supported on all platforms. Please test and comment with your feedback. Don't forget to enable Automatic Crash Reporting.

w-e-g commented 4 months ago

Just downloaded the freshest dev build. It crashes when I tried to began input text to login/password field.

flyinghead commented 4 months ago

@w-e-g which platforms are you on?

w-e-g commented 4 months ago

macOS Sonoma 14.4.1, x86_64.

flyinghead commented 4 months ago

Well, you're lucky because it doesn't even start on my machine. It looks like the macOS build is broken.

nexus382 commented 4 months ago

android seems ok, no issues yet, logged in and what not,

flyinghead commented 4 months ago

@w-e-g Can you try the previous dev build? There are UI text fields in the Settings > Network tab. Please test entering text and check if it crashes with this version. Thanks.

bryanforbes commented 4 months ago

Well, you're lucky because it doesn't even start on my machine. It looks like the macOS build is broken.

I just tried the 4666ea2 build on macOS Sonoma 14.3. It runs, logs in, and I got my first achievement.

w-e-g commented 4 months ago

@flyinghead, I just tested 4666ea2. Same situation. Build 8fdd1dd for macOS was not built if I understand correctly.

flyinghead commented 4 months ago

https://github.com/flyinghead/flycast/commit/4666ea2fdba1a0c225dc99b7cb693962ad494749 is the latest build. Could you test the previous build for macOS: e46815d

It doesn't have RetroAchievements support but I need to find out in which build the problem started.

w-e-g commented 4 months ago

@flyinghead tested build e46815d. Enter the text into "Network" tab. Works fine.

retropieuser commented 4 months ago

Mac M1 Sonoma 14.2.1, using the latest build 4666ea2 loads fine with the username and password entered. Unlocked a basic achievement on Code Veronika seems to work well so far

Edit: also built the dev branch for Raspberry Pi 5 using the official Raspberry Pi OS, works the same as the Mac build for me, let me unlock a couple of softcore achievements and gives the text notification

vkedwardli commented 4 months ago

@w-e-g Do you mean with the build https://github.com/flyinghead/flycast/commit/4666ea2fdba1a0c225dc99b7cb693962ad494749, it also crashes when you try to type text in the Network tab? Or does it just crash in the Enable RetroAchievements's Username field?

Are you using any Input Method Editor or just standard English input?

w-e-g commented 4 months ago

@vkedwardli it crashes when using any text field. In network tab or retroachievements. I'm using English locale and input English text only into the text fields. No any non-standard texpt input used.

flyinghead commented 4 months ago

New dev build with better UI is available image

@w-e-g vkedwardli also provided a patch for macOS. Please test and let us know.

w-e-g commented 4 months ago

@flyinghead Very nice! It works and I unlocked achievement! :) 🔥

flyinghead commented 4 months ago

Party time!

flyinghead commented 4 months ago

New dev build available: image

image

retropieuser commented 4 months ago

Still all good for me, tested on Mac M1 Sonoma 14.2.1, using fe17d45. Awesome work and thank you for taking on this functionality for us.

Do you have a roadmap of functions you're looking to implement to have it fully working? I can see you've got a placeholder for hardcore mode inside the emu.cfg for example? And likewise is there anything specific you'd like users to test and report back

flyinghead commented 4 months ago

I just fixed a crash on windows that was reported automatically so this is good. Hardcore mode is next, then there are leaderboards than need specific indicators. After that we should be close to complete. @TheCoolPup reported that achievements weren't working on arcade games. (He was testing house of the dead 2.) So any help in this area would be appreciated.

retropieuser commented 4 months ago

Re Naomi games, I just tried Monkey ball and HOTD2 on my setup with the above build and it unlocks okay for me

flyinghead commented 4 months ago

Great! Thanks for testing and reporting.

flyinghead commented 4 months ago

Hardcore mode is available in the latest dev build. Note that it must be enabled before starting a game to take effect. However, it can be disabled once a game is started.

Blackbird88 commented 4 months ago

Minor nitpick. Instead of showing "0 of 0 achievements" for games without achievements, it would be better to show "This game has no achievements" like PCSX2

flycast image PCSX2 image

retropieuser commented 4 months ago

Hardcore mode is available in the latest dev build. Note that it must be enabled before starting a game to take effect. However, it can be disabled once a game is started.

Epic, those are working for me. I also tested unlocking an achievement I had already in softcore mode and it worked fine giving me the hardcore cheevo

flyinghead commented 4 months ago

Yet another dev build available, this time with leaderboard notifications and trackers. I think we're feature complete at this point. Let me know of any issue you find and if anything is missing.

Blackbird88 commented 4 months ago

The latest dev branch commit f76d05a doesn't launch for me on W11 x64. 7327e52 is last one that works.

flyinghead commented 4 months ago

Anything in the log?

Blackbird88 commented 4 months ago

I don't see any log file anywhere, either it crashes too soon or I can't find it.

flyinghead commented 4 months ago

I haven't received any crash report (yet?)

flyinghead commented 4 months ago

if you enable "Log to File" it should create a flycast.log in the flycast directory

flyinghead commented 4 months ago

Yes the last build is crashing fro me too, very early.

Blackbird88 commented 4 months ago

I enabled that and no log is being created. RIP

flyinghead commented 4 months ago

The latest dev build should start up fine on Windows now.

Blackbird88 commented 4 months ago

Works for me! This reminds I forgot to report one thing. When using pad to navigate the UI it's impossible to scroll the achievements here. One has to click into the area first. Annoying on platforms that are gamepad only. image

Unsure if it's some imgui limitation?

kihato commented 4 months ago

For certain games, thumbnails may be displayed by mistake.

Veronica DolphinBlue KOF XI

flyinghead commented 4 months ago

These icons are the "Active Challenges" so it's normal to see them until you unlock or loose them. You can see the list in the Achievements screen: image

However the dimensions of the Dolphin Blue and KOF XI active challenges pop ups are clearly incorrect.

flyinghead commented 4 months ago

Multiple active achievements indicators should now be displayed correctly. image

kihato commented 4 months ago

Thanks for correcting the display! When I retrieve leaderboard information, the Active Challenges icons disappears. Is this by design?

MetalSlug6

flyinghead commented 4 months ago

The display of indicators/messages is handled by RetroAchievement for the most part. So it won't display both active challenge indicators and leaderboard trackers.

MrWrightyLC commented 3 months ago

Would it be possible to leave the widescreen cheats enabled in hardcore mode as well? Like PCSX2 does, it would be great. In fact in the flycast retroarch core it is possible to do it, it would be good to do it also in the standalone. Please