Skip to main content

An OpenAI gym environment for the Flappy Bird game.

Project description

Flappy Bird for OpenAI Gym

Python versions PyPI License

This repository contains an implementation of an OpenAI Gym environment for the Flappy Bird game. It's based on FlapPyBird, by @sourabhv. Currently, the environment provides the following observation parameters to the agents:

  • Horizontal distance to the next pipe;
  • Difference between the player's y position and the next hole's y position.

In the future, I also intend to implement a version of the environment that provides an image representing the game's screen as observation.

         

Installation

To install flappy-bird-gym, simply run the following command:

$ pip install flappy-bird-gym

Usage

Like with other gym environments, it's very easy to use flappy-bird-gym. Simply import the package and create the environment with the make function. Take a look at the sample code below:

import time
import flappy_bird_gym
env = flappy_bird_gym.make("FlappyBird-v0")

obs = env.reset()
while True:
    # Next action:
    # (feed the observation to your agent here)
    action = ...  # env.action_space.sample() for a random action

    # Processing:
    obs, reward, done, info = env.step(action)

    # Rendering the game:
    # (remove this two lines during training)
    env.render()
    time.sleep(1 / 30)  # FPS

    # Checking if the player is still alive
    if done:
        break

env.close()

Playing

To play the game (human mode), run the following command:

$ flappy_bird_gym

To see a random agent playing, add an argument to the command:

$ flappy_bird_gym --mode random

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flappy-bird-gym-0.2.0.tar.gz (535.9 kB view hashes)

Uploaded Source

Built Distribution

flappy_bird_gym-0.2.0-py3-none-any.whl (554.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page