Game Boy emulator written in Python
pip install
)send_input
pyboy.tick(10, True)
now takes two optional parameters:
n
number of frames to progressrender
whether to render the screen on the last processed framepyboy.screen_image()
moved to pyboy.screen.image
pyboy.button(‘a’)
can be used to send input, and will automatically release after 1 framepyboy.button_press(‘a’)
allows for manual control of inputpyboy.button_release(‘a’)
allows for manual control of inputpyboy.memory[0x100:0x150] = 123
replaces all three pyboy.get/set/override_memory_value
and extends it with an option to specify bankpyboy.hook_register(bank, address, callback, context)
registers a callback at a specific point in your game. Used for fine-grained tracking of events and control of the gamepyboy.symbol_lookup(symbol)
to look up address for a symbol to use with memory read/writepyboy.tick
pyboy.game_wrapper
Game wrappers are now automatically loaded and accessible through the game_wrapper propertypyboy.game_area()
is a shortcut for pyboy.game_wrapper.game_area()
pyboy.game_area_collision()
is a shortcut for pyboy.game_wrapper.game_area_collision()
pyboy.game_area_dimensions(…)
can be used to configure game_areapyboy.game_area_mapping(…)
can apply a mapping to all game area tiles. I.e. simplify the tiles, or zero-out uninteresting tilespyboy.memory_scanner
allows to isolate memory address of interestpyboy.tick