Skip to content
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

[3DS] [Cheevos] Cannot disable Achievement Badges #16470

Open
SKmaric opened this issue Apr 26, 2024 · 2 comments
Open

[3DS] [Cheevos] Cannot disable Achievement Badges #16470

SKmaric opened this issue Apr 26, 2024 · 2 comments

Comments

@SKmaric
Copy link

SKmaric commented Apr 26, 2024

Description

The Achievement Badges menu option is absent, but even with the config setting cheevos_badges_enable = "false", badges are still being downloaded. causing emulation stuttering.

Expected behavior

RetroAchievements badges should not be downloaded while the setting is set to off.

Actual behavior

Cheevos badges are being downloaded and displayed regardless of setting, causing stuttering.

Steps to reproduce the bug

  1. Ensure cheevos_badges_enable in retroarch.cfg is set to false.
  2. Run any game/core with achievement support.
  3. Game will stutter as it downloads badges and displays achievement notifications.

Version/Commit

You can find this information under Information/System Information

  • RetroArch: 1.18.0 / Apr 25 2024

Environment information

  • OS: New 3DS XL
@Jamiras
Copy link
Contributor

Jamiras commented Apr 26, 2024

cheevos_badges_enable is not available if HAVE_GFX_WIDGETS is defined. Did that maybe change for the 3DS build?

RetroArch/menu/menu_setting.c

Lines 21608 to 21625 in d310f83

#ifndef HAVE_GFX_WIDGETS
if (string_is_equal(settings->arrays.menu_driver, "xmb") || string_is_equal(settings->arrays.menu_driver, "ozone"))
CONFIG_BOOL(
list, list_info,
&settings->bools.cheevos_badges_enable,
MENU_ENUM_LABEL_CHEEVOS_BADGES_ENABLE,
MENU_ENUM_LABEL_VALUE_CHEEVOS_BADGES_ENABLE,
false,
MENU_ENUM_LABEL_VALUE_OFF,
MENU_ENUM_LABEL_VALUE_ON,
&group_info,
&subgroup_info,
parent_group,
general_write_handler,
general_read_handler,
SD_FLAG_ADVANCED
);
#endif

#if !defined(HAVE_GFX_WIDGETS) /* we always want badges if widgets are enabled */
settings_t* settings = config_get_ptr();
/* User has explicitly disabled badges */
if (!settings->bools.cheevos_badges_enable)
return;
/* badges are only needed for xmb and ozone menus */
if (!string_is_equal(settings->arrays.menu_driver, "xmb") &&
!string_is_equal(settings->arrays.menu_driver, "ozone"))
return;
#endif /* !defined(HAVE_GFX_WIDGETS) */

As best as I can tell, it's been that way for years.

I did notice there's some logic there related to xmb/ozone that should be extended for glui as well (added in #14390).

@Ramon731
Copy link

Did this end up having a resolution? I’m trying to disable the badge download as well. You have to leave the console for a few minutes to load the badges, if I can disable there will be no waiting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants