Skip to main content

A BizHawk external tool + python library for python scripts to communicate with the BizHawk emulator.

Project description

birds-eye

A BizHawk external tool + python library, giving a (hopefully) convenient interface for python

scripts to communicate with the BizHawk emulator.

This is the first project I've made with the intent of others using it, so any kind of suggestion

would be incredibly helpful.

Thank you :]

This library is VERY bares bones at the moment, with only the current features available:

  • Connecting to the external tool

  • Retrieving memory data from the external tool

  • Sending controller inputs to be executed in the emulator

  • Retrieving the current framecount

I plan on adding a lot more as I continue to use this library myself.

This external tool was built using version 2.9.1 of BizHawk, however, all versions of 2.9.x

should work as intended.

If you wish to develop the tool yourself, make sure to copy the contents of your BizHawk version

into BizHawk/ (you'll need to create the directory in the project).

The file tree should match the example shown in the External Tool section.

Setup

External Tool

The external tool can be found and downloaded in the

birds-eye github repository. (check releases)

Move BirdsEye.dll to the ExternalTools directory in your BizHawk folder.

It should look like this afterwords:


BizHawk

+--ExternalTools

|  +--BirdsEye.dll

|  +--...

+--EmuHawk.exe

+--...

If everything is correct, then you should be able to open up the external tool by running the

emulator, then going to:

Tools -> External Tools -> BirdsEye

Installing the library

pip install birds-eye-lib

python library docs

Communication Modes

Determines how the external tool communicates with the emulator and a connected python client.

Manual

The external tool will not execute input states sent from a connected python client. User will

still have full control over the emulator using the external tool or the emulator itself. Things

that do not interfere with play, such as reading from memory, will still be functional.

Commandeer

This mode will allow a connected python client to begin interacting with the emulator by sending

and receiving messages to and from the external tool.

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

birds-eye-lib-1.0.1.tar.gz (5.4 kB view hashes)

Uploaded Source

Built Distribution

birds_eye_lib-1.0.1-py3-none-any.whl (6.7 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