### Game Integration: metadata.json Example Source: https://stable-retro.farama.org/main/integration Specifies the default starting state and includes miscellaneous debugging information, such as a whitelist for data.json. ```JSON { "default_state": "Level1", "whitelist": { "data.json": [ "suspicious type >u2 for lives" ] } } ``` -------------------------------- ### Game Integration: metadata.json Example Source: https://stable-retro.farama.org/v0.9.3/integration Specifies the default starting state and includes miscellaneous debugging information, such as a whitelist for data.json. ```JSON { "default_state": "Level1", "whitelist": { "data.json": [ "suspicious type >u2 for lives" ] } } ``` -------------------------------- ### Game Integration: metadata.json Example Source: https://stable-retro.farama.org/integration Specifies the default starting state and includes miscellaneous debugging information, such as a whitelist for data.json. ```JSON { "default_state": "Level1", "whitelist": { "data.json": [ "suspicious type >u2 for lives" ] } } ``` -------------------------------- ### Install Retro UI from Source (macOS) Source: https://stable-retro.farama.org/developing Steps to build the Retro UI from source on macOS. This includes a note about potential SDK header installation for Mojave and enabling Qt. ```bash =/usr/local/opt/qt=ON$(sysctl|) open"Gym Retro Integration.app" ``` -------------------------------- ### Game Integration: metadata.json Example Source: https://stable-retro.farama.org/v0.9.4/integration Specifies the default starting state and includes miscellaneous debugging information, such as a whitelist for data.json. ```JSON { "default_state": "Level1", "whitelist": { "data.json": [ "suspicious type >u2 for lives" ] } } ``` -------------------------------- ### Install Retro from Source (Windows) Source: https://stable-retro.farama.org/v0.9.3/developing Instructions for building Stable Retro on Windows using Docker. This involves running a container, copying a .whl file, and then installing it via pip. ```bash cd ``` -------------------------------- ### Install Retro UI from Source (Linux) Source: https://stable-retro.farama.org/v0.9.3/developing Instructions for building the Gym Retro Integration UI from source on Linux systems. ```bash =ON$(grep) ./gym-retro-integration ``` -------------------------------- ### Game Integration: Metadata Source: https://stable-retro.farama.org/v0.9.2/integration Specifies the default starting state and miscellaneous debugging information for a game integration. This JSON file helps manage the initial environment setup. ```JSON { "default_state": "Level1", "whitelist": { "data.json": [ "suspicious type >u2 for lives" ] } } ``` -------------------------------- ### Game Integration: Metadata Source: https://stable-retro.farama.org/v0.9.1/integration Specifies the default starting state and miscellaneous debugging information for a game integration. This JSON file helps manage the initial environment setup. ```JSON { "default_state": "Level1", "whitelist": { "data.json": [ "suspicious type >u2 for lives" ] } } ``` -------------------------------- ### Install Retro from Source (Linux/Mac) Source: https://stable-retro.farama.org/developing Instructions for building Stable Retro from source on Linux and macOS. This involves navigating to the project directory. ```bash cd ``` -------------------------------- ### Install Retro from Source (Linux/Mac) Source: https://stable-retro.farama.org/v0.9.1/developing Instructions for building Stable Retro from source on Linux and macOS. This involves navigating to the project directory. ```bash cd ``` -------------------------------- ### Install Retro from Source (Linux/Mac) Source: https://stable-retro.farama.org/v0.9.4/developing Instructions for building Stable Retro from source on Linux and macOS. This involves navigating to the project directory. ```bash cd ``` -------------------------------- ### Install Retro from Source (Windows) Source: https://stable-retro.farama.org/v0.9.4/developing Instructions for building Stable Retro from source on Windows using Docker. This involves copying a .whl file out of a container and installing it via pip. ```bash cd ``` -------------------------------- ### Install Retro from Source (Windows) Source: https://stable-retro.farama.org/developing Instructions for building Stable Retro from source on Windows using Docker. This involves copying a wheel file out of a container and installing it via pip. ```bash cd ``` -------------------------------- ### Stable-Retro Development Guide Source: https://stable-retro.farama.org/v0.9.1/_modules/retro/retro_env Information for developers contributing to Stable-Retro, including release notes, how to access the GitHub repository, and guidelines for contributing to the documentation. ```APIDOC Development: - Release Notes: Information on project updates and changes. - Github: Link to the official Stable-Retro GitHub repository for source code and collaboration. - Contribute to the Docs: Guidelines for improving and expanding the project documentation. ``` -------------------------------- ### Install Retro UI from Source (macOS) Source: https://stable-retro.farama.org/v0.9.4/developing Instructions for building the Retro UI from source on macOS. This may require installing macOS SDK headers for specific versions like Mojave. ```bash =/usr/local/opt/qt=ON$(sysctl|) open"Gym Retro Integration.app" ``` -------------------------------- ### Stable-Retro Development Guide Source: https://stable-retro.farama.org/main/_modules/retro/retro_env Information for developers contributing to Stable-Retro, including release notes, how to access the GitHub repository, and guidelines for contributing to the documentation. ```APIDOC Development: - Release Notes: Information on project updates and changes. - Github: Link to the official Stable-Retro GitHub repository for source code and collaboration. - Contribute to the Docs: Guidelines for improving and expanding the project documentation. ``` -------------------------------- ### Stable-Retro Development Guide Source: https://stable-retro.farama.org/v0.9.2/_modules/retro/retro_env Information for developers contributing to Stable-Retro, including release notes, how to access the GitHub repository, and guidelines for contributing to the documentation. ```APIDOC Development: - Release Notes: Information on project updates and changes. - Github: Link to the official Stable-Retro GitHub repository for source code and collaboration. - Contribute to the Docs: Guidelines for improving and expanding the project documentation. ``` -------------------------------- ### Stable-Retro Development Guide Source: https://stable-retro.farama.org/v0.9.3/_modules/retro/retro_env Information for developers contributing to Stable-Retro, including release notes, how to access the GitHub repository, and guidelines for contributing to the documentation. ```APIDOC Development: - Release Notes: Information on project updates and changes. - Github: Link to the official Stable-Retro GitHub repository for source code and collaboration. - Contribute to the Docs: Guidelines for improving and expanding the project documentation. ``` -------------------------------- ### Install Retro from Source (Linux/Mac) Source: https://stable-retro.farama.org/v0.9.3/developing Instructions for building Stable Retro from source on Linux and macOS systems. This typically involves navigating to the project directory. ```bash cd ``` -------------------------------- ### Random Agent Example Source: https://stable-retro.farama.org/v0.9.4/getting_started Provides an example of a random agent that interacts with a Stable Retro environment by taking random actions. It includes resetting the environment, stepping through actions, rendering the game state, and handling episode termination. ```Python import retro def main(): env = retro.make(game="Airstriker-Genesis") env.reset() while True: action = env.action_space.sample() observation, reward, terminated, truncated, info = env.step(action) env.render() if terminated or truncated: env.reset() env.close() if __name__ == "__main__": main() ``` -------------------------------- ### Data Type Examples Source: https://stable-retro.farama.org/v0.9.3/integration Provides examples of valid data type specifications, combining endianness, format, and byte size, including cases with non-power of two byte sizes. ```APIDOC Valid Type Examples: * `u4`: Middle endian (little/big) four-byte unsigned value * `>d2`: Big endian two-byte binary-coded decimal value * `|u1`: Single unsigned byte * `u4" } } } ``` -------------------------------- ### Variable Locations: data.json Example (Score) Source: https://stable-retro.farama.org/v0.9.3/integration An example of a data.json manifest specifying a 'score' variable located at byte 128, with a 4-byte unsigned big-endian format. ```JSON { "info":{ "score":{ "address":128, "type":">u4" } } } ``` -------------------------------- ### Variable Locations: data.json Example (Score) Source: https://stable-retro.farama.org/integration An example of a data.json manifest specifying a 'score' variable located at byte 128, with a 4-byte unsigned big-endian format. ```JSON { "info":{ "score":{ "address":128, "type":">u4" } } } ``` -------------------------------- ### Variable Locations: data.json Example (Score) Source: https://stable-retro.farama.org/main/integration An example of a data.json manifest specifying a 'score' variable located at byte 128, with a 4-byte unsigned big-endian format. ```JSON { "info":{ "score":{ "address":128, "type":">u4" } } } ``` -------------------------------- ### Create a Retro Environment Source: https://stable-retro.farama.org/v0.9.4/getting_started Demonstrates how to create a Gymnasium environment for a specific game using the retro.make function. It highlights that ROMs for some games are included by default, while others must be obtained separately. ```Python import retro env = retro.make(game='Airstriker-Genesis') ``` -------------------------------- ### Create a Retro Environment Source: https://stable-retro.farama.org/v0.9.3/getting_started Demonstrates how to create a Gymnasium environment for a specific game using the retro.make function. It highlights that ROMs for some games are included by default, while others must be obtained separately. ```Python import retro env = retro.make(game='Airstriker-Genesis') ``` -------------------------------- ### Install Retro from Source (Windows) Source: https://stable-retro.farama.org/v0.9.1/developing Instructions for building Stable Retro on Windows using Docker. This involves running a command and then copying the generated .whl file out of the container. ```bash cd # Once complete use docker cp to copy the whl file out of the container. # Then you may pip install ``` -------------------------------- ### Data Type Examples Source: https://stable-retro.farama.org/v0.9.4/integration Provides examples of valid data type specifications, combining endianness, format, and byte size, including cases with non-power of two byte sizes. ```APIDOC Valid Type Examples: * `u4`: Middle endian (little/big) four-byte unsigned value * `>d2`: Big endian two-byte binary-coded decimal value * `|u1`: Single unsigned byte * `u4`: Middle endian (little/big) four-byte unsigned value * `>d2`: Big endian two-byte binary-coded decimal value * `|u1`: Single unsigned byte * `u4`: Middle endian (little/big) four-byte unsigned value * `>d2`: Big endian two-byte binary-coded decimal value * `|u1`: Single unsigned byte * `u4: Middle endian (little/big) four-byte unsigned value >d2: Big endian two-byte binary-coded decimal value |u1: Single unsigned byte u4: Middle endian (little/big) four-byte unsigned value >d2: Big endian two-byte binary-coded decimal value |u1: Single unsigned byte