-
-
Notifications
You must be signed in to change notification settings - Fork 683
Retro Achievements implementation #2529
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Retro Achievements implementation #2529
Conversation
…look on par, + deletion of unused include. I think that is last thing that was missing from that fork and probably last revision.
|
I understand że shit ale po poprawkach by przeszło, XD. Implementacja totalnie podstawowa buildowałem aż do sukcesu, dopiero teraz usuwam nieużywany kod i błędy. |
|
Leave it alone for now... As much as I respect your half of the effort, I'm not sure @Arisotura will be keen on merging "vibe-coded" contributions regardless. |
|
This is just for testing and not intended for merging. It's a draft to track changes from melonDS main and help me refine the code. And I don't think it will ever be as refined as normal integrations, but it is something. |
|
Update 1. Changed it to support instances. Now you can play with your friends and earn achievements separately. Tidied and deleted files that were not used so it should be better to build and run. Still not sure if Linux and Mac are supported, but if I had some feedback i am sure it would be fixable. Also added your pfp on logging into RA, and changed the menu location from inside emusettings to its own RA settings under Config dropdown. |
|
Also, I am now opening it for a review because the core code is now at least pretty clean. I am sure some useless code could have snuck in, but now i am positive it is better than before. Here are instructions for building your own RA build
|
|
Hello, two things on this. First, if this is intended for testing and not meant to be merged, you should fork the melonDS repo and do your work there. Given the sheer volume of pull requests here, it'll help keeps things cleaner. Second, I'm not a fan at all of the fact this is made with AI. I don't really trust AI to produce working or clean code, and I think the time spent to clean up the mess it can make might as well be spent coding this from the ground up without AI. While I appreciate the intent, I'm not willing to merge AI code into melonDS. This is mainly a code quality concern. We've already had issues in the past due to poorly programmed and/or incomplete PRs being merged, and it takes time to properly review PRs to ensure this doesn't happen again. |
|
Sure! When I am done with implementing the features, I will try to do as much code cleaning as possible on my end. I know poorly written code creates issues. I see it as I am programming it. For now, I am trying to create integration with full features, without any interference with the main melon ds. As of now, I have noticed some performance concerns (probably my doframe), so I know it can't be merged and shouldn't be. But you know I am still a human, so I will try to make it a mile better than this proof of concept kind of code. I still kind of want to keep this pull request until I am done, because it helps me with fixing issues and comparing my changes with the original code. I'm sorry if it's messy, but I am really having fun with this and I hope it can reach your expectations one day. |
|
To meet my expectations, it'd have to shed all the AI code. The screenshots made me think of another concern, albeit a smaller one: the integration within the melonDS UI. As things are now, the melonDS window can be pretty small (256x384, or 512x192, basically), but this Retroachievements UI seems to need a lot more space than that. I'm not sure what's the ideal way of dealing with that... I have a general UI refactor in mind though, so who knows... |


Bringing RetroAchievements (RA) support to melonDS.
I saw that the community really wanted RA support, so I decided to take on the challenge. This is a rough, beta implementation that I’ve tested extensively over the last week. I am a huge fan of RetroAchievements and very proud of this project.
Important: This is currently unofficial, so Hardcore mode does not yet provide official Hardcore points.
✅ Current Features
Full backend integration.
Core frontend implementation.
Basic connectivity and achievement unlocking.
Achievements and their info is shown when getting them.
Basic Login in EmuSettings under new tab.
🛠️ Known Issues & Planned Features
Leaderboards: Not yet implemented.
Overlay: Missing in-game achievement list.
Progress Indicators: Achievement progress is not currently tracked visually, there is only notification on getting achievement.
Hardcore Approval: Still fixing stuff, so when it will be more than a beta then it could be possible.
Memory Access: VRAM and ARM9 IO memory reading is missing (may affect specific achievements, but i wouldn't worry about that).
Offline Caching: Session recovery works, but the emulator does not cache achievement data to local files yet.
Player Profile: Visible points and profile integration (optional).
Full Disclosure: This feature also was developed using "vibecoding" (this time mainly ChatGpt and Gemini). I really put my heart into that implementation, and I hope people will actually think of it as nice thing, so I don't consider my time as wasted.