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

New Feature: Game Profiles for New Runs #499

Merged
merged 17 commits into from
Dec 20, 2024
Merged

New Feature: Game Profiles for New Runs #499

merged 17 commits into from
Dec 20, 2024

Conversation

UTDZac
Copy link
Collaborator

@UTDZac UTDZac commented Dec 20, 2024

Closes #450

This feature adds the ability to create, manage, and use different New Run setup profiles for different games or rulesets. This has been a highly requested feature, especially for people who play different Ironmon rulesets all the time.

In short, it works similar to how New Run setup worked in the past, but all of the settings are saved as a Profile object. All profiles are stored within a NewRunProfiles.json, located in the ironmon_tracker folder.

In addition to storing the New Run settings as a profile, this PR also changes how Tracker Notes Data (.TDAT files) are saved. Previously, it was saved as a single file for a single game version (such as Fire Red). Now, it saves a file for each profile, allowing for multiple "Fire Red" data files if more than one profile is using the Fire Red game version. These files are stored in the tracker_notes folder (new as of this PR).

Example: List of Profiles

image

Example: Active Profile

image

Example: Adding or Editing a Profile

image

Adding in some core functionality
Previously, the auto-saved tracker data file (TDAT) was based on the game version being played. This causes issues when a player wanted to play many different FireRed games and have data for each.

This change allows different game profiles to each have their own TDAT file for their tracker notes and data.
Certain characters are restricted and not allowed for file names.
The main issue was setting the default value of the `overwrite` parameter
@UTDZac UTDZac added the Feature Request A new feature idea label Dec 20, 2024
@UTDZac UTDZac requested a review from Fellshadow December 20, 2024 00:00
@UTDZac UTDZac self-assigned this Dec 20, 2024
@UTDZac UTDZac linked an issue Dec 20, 2024 that may be closed by this pull request
Fix:
- cant save profile if name remains the same
- prevent changing mode for existing profile (force delete/re-add)
- update tdat filename if profile name changes
Two fixes:
- always use the number on the rom name as the initial seed count (dont ignore "1")
- only use bizhawk rom name if that rom exists in the Roms Folder
Copy link
Collaborator

@Fellshadow Fellshadow left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to me

@Fellshadow Fellshadow merged commit 8e4c0f5 into dev Dec 20, 2024
@UTDZac UTDZac deleted the new-run-profiles branch December 23, 2024 21:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request A new feature idea
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature Request]: Add the ability to save tracker settings as presets.
2 participants