muniverse  by unixpickle

RL environments for HTML5 games

created 8 years ago
365 stars

Top 78.2% on sourcepulse

GitHubView on GitHub
Project Summary

µniverse provides a unified API for interacting with HTML5 games, designed for reinforcement learning research. It offers advantages over similar projects by enabling faster-than-real-time execution, eliminating the need for screen-scraping, and ensuring safer game interactions.

How It Works

µniverse leverages a headless Chrome instance controlled via Go to interact with HTML5 games. This approach allows for precise control over game execution, including manipulating JavaScript timers for faster-than-real-time play. Games are downloaded and packaged, and a Docker container manages the headless browser environment, ensuring consistent execution.

Quick Start & Requirements

  • Install: go get github.com/unixpickle/muniverse
  • Prerequisites: Docker >= 17.03, Go >= 1.8.
  • Initial setup involves pulling a Docker container: docker pull unixpickle/muniverse:0.115.0.
  • Official GoDoc: https://godoc.org/github.com/unixpickle/muniverse

Highlighted Details

  • Enables faster-than-real-time game execution.
  • Avoids screen-scraping by directly interacting with game logic.
  • Includes automated game downloading and packaging.
  • Provides Python bindings for broader accessibility.

Maintenance & Community

The project is primarily maintained by its creator, unixpickle. There is no explicit mention of community channels like Discord or Slack, nor a public roadmap beyond a to-do list in the README.

Licensing & Compatibility

Licensed under a BSD 2-clause license, permitting commercial use and integration with closed-source projects.

Limitations & Caveats

WebGL support is noted as occasionally failing. The project is described as a work in progress, with a to-do list indicating ongoing development and potential for future improvements.

Health Check
Last commit

6 years ago

Responsiveness

1 day

Pull Requests (30d)
0
Issues (30d)
0
Star History
0 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.