https://github.com/fietensen/ggpo-py
GGPO Python bindings
https://github.com/fietensen/ggpo-py
ggpo networking pybind11 python python3 rollback-netcode
Last synced: about 1 month ago
JSON representation
GGPO Python bindings
- Host: GitHub
- URL: https://github.com/fietensen/ggpo-py
- Owner: fietensen
- License: mit
- Created: 2023-05-22T18:45:21.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2023-05-24T01:02:21.000Z (almost 2 years ago)
- Last Synced: 2024-11-06T10:44:10.814Z (7 months ago)
- Topics: ggpo, networking, pybind11, python, python3, rollback-netcode
- Language: C++
- Homepage:
- Size: 21.5 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README

# ggpo-py - Good Game, Peace Out Rollback Network SDK Python binds
## What is ggpo-py
ggpo-py creates Python bindings to GGPO.net
## Requirements
Supported Python Versions: 3.9 - 3.11
Requires: CMake>=3.25
## Installation
Installing via Git:
```bash
git clone https://github.com/fietensen/ggpo-py.git
cd ggpo-py
git submodule update --init
python setup.py install
```
## DocumentationPerhaps I'll add an indepth documentation on how the SDK works
later. For now you can check the [demo](#demo) for a brief overview of the Python binds.To get further information on GGPO, I can only recommend going through `ggpo/src/include/ggponet.h` as it contains lots of useful
documentation of the functions and structures.
## DemoI've written a small demo for ggpo-py using [pygame](https://pygame.org). This means you'll have to install the pygame module on your computer like this:
```bash
pip install pygame
```After this you may now start two instances of the `examples/test_game.py` from your console with connection information as arguments:
```bash
python examples/test_game.py 8001 local 127.0.0.1:8002
```and in another shell:
```bash
python examples/test_game.py 8002 127.0.0.1:8001 local
```You may now move around the two rectangles in their respective game instances using your arrow keys.
## License[MIT](https://choosealicense.com/licenses/mit/)