Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request includes several significant updates to the project, focusing on adding a GitHub Actions workflow for formatting, enhancing the
gym.py
configuration, updating memory address handling, and improving the preprocessing environment setup.GitHub Actions Workflow:
.github/workflows/formatting.yml
: Added a new GitHub Actions workflow to automate code formatting using Black and Isort on pull requests to the main branch.Configuration Enhancements:
config/gym.py
: Introduced new configuration parameters (action_freq
,exploration_reward
,reward_scale
,game_with_sound
) and updated the__init__
method to use these parameters. Added new valid and release actions, and modified the observation space to include additional game state information.config/gym.py
: Refactored thestep
method to use a newrun_action
method, which handles sending input and ticking the emulator.Memory Address Updates:
config/memory_addresses.py
: Added detailed comments and new memory addresses for various game states, such as destination data, inventory items, dungeon item flags, and rupees.Preprocessing Environment:
utils.py
: Replaced the grayscale observation wrapper with a customDictGrayScaleObservation
class to handle dictionary-based observation spaces.Model Training Configuration:
main.py
: Updated the PPO model configuration for training, including changes to the policy type, learning rate, and other hyperparameters.