Skip to main content

No project description provided

Project description

blokus-rl

A PettingZoo-API-compatible reinforcement learning (RL) environment for the strategy board game Blokus.

blokus-rl

Installation

pip

pip install -U blokus-rl

Poetry

poetry add blokus-rl

Source

git clone https://github.com/APirchner/blokus-rl.git
cd blokus-rl
pip install -U maturin
maturin build [--release]
pip install {path/to/wheel}.whl

Example usage

from blokus_rl import BlokusEnv

env = BlokusEnv(render_mode="human")
env.reset()
for i, agent in enumerate(env.agent_iter()):
    observation, reward, termination, truncation, info = env.last()
    action = env.action_space(agent).sample(mask=observation["action_mask"])
    env.step(action)
    if all([t[1] for t in env.terminations.items()]):
        break
print(env.rewards)

Motivation

I'm not a passionate gamer and get frustrated quite easily when a board game does not go my way. For some reason, I always enjoy playing Blokus - wheter I'm winning or not. And being a computer scientist by training, I was always wondering what weird/effective strategies a powerful RL agent would uncover.

While there are a few comprehensive RL libraries such as RLlib and environments for common classical boardgames and Atari games, I was not able to find an environment for Blokus that implements with the typical APIs. This repo should fill this gap.

Working mostly in Python, I started out with a inefficient implementation and soon found that masking invalid moves did not scale well. It never hurts to have some lower-level language in your toolbox, so I started from scratch in Rust - both as a Rust-learning experience and a way to speed up Blokus episodes.

Implementation details

Internally, the game is implemented with bitboards. A set of 4 u128 integers represents the board of 20x20 tiles and an additional column of separating bits. All game logic is built on bit operations - from generating all possible actions to finding the valid subsets of actions for each player at each turn of the game. While doing research on how to speed up the masking of invalid actions, I found the smart Blokus implementation by nicohass. From this repo I picked up the idea of using bitboards. The basics on how to rotate boards come from the Chess Programming Wiki.

The internal logic of the game is implemented in Rust, while the API is exposed through a Python class. The Python bindings for the Rust code are built with PyO3 and maturin.

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

blokus_rl-0.2.6.tar.gz (1.8 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (309.7 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl (352.5 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ s390x

blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (372.8 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ppc64le

blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (321.0 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARMv7l

blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (308.4 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ ARM64

blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl (335.0 kB view details)

Uploaded PyPymanylinux: glibc 2.5+ i686

blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (350.6 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390x

blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (371.9 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (319.7 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (307.4 kB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

blokus_rl-0.2.6-cp313-cp313-win_amd64.whl (167.9 kB view details)

Uploaded CPython 3.13Windows x86-64

blokus_rl-0.2.6-cp313-cp313-win32.whl (165.8 kB view details)

Uploaded CPython 3.13Windows x86

blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (308.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (352.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (372.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (320.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (307.4 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

blokus_rl-0.2.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (334.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

blokus_rl-0.2.6-cp313-cp313-macosx_11_0_arm64.whl (272.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

blokus_rl-0.2.6-cp313-cp313-macosx_10_12_x86_64.whl (278.0 kB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

blokus_rl-0.2.6-cp312-cp312-win_amd64.whl (168.0 kB view details)

Uploaded CPython 3.12Windows x86-64

blokus_rl-0.2.6-cp312-cp312-win32.whl (165.6 kB view details)

Uploaded CPython 3.12Windows x86

blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (308.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (352.9 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (372.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (320.6 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (307.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

blokus_rl-0.2.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (334.4 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

blokus_rl-0.2.6-cp312-cp312-macosx_11_0_arm64.whl (272.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

blokus_rl-0.2.6-cp312-cp312-macosx_10_12_x86_64.whl (278.1 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

blokus_rl-0.2.6-cp311-cp311-win_amd64.whl (168.0 kB view details)

Uploaded CPython 3.11Windows x86-64

blokus_rl-0.2.6-cp311-cp311-win32.whl (165.9 kB view details)

Uploaded CPython 3.11Windows x86

blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (309.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (353.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (372.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (321.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (307.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

blokus_rl-0.2.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (334.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

blokus_rl-0.2.6-cp311-cp311-macosx_11_0_arm64.whl (275.5 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

blokus_rl-0.2.6-cp311-cp311-macosx_10_12_x86_64.whl (280.9 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

blokus_rl-0.2.6-cp310-cp310-win_amd64.whl (168.1 kB view details)

Uploaded CPython 3.10Windows x86-64

blokus_rl-0.2.6-cp310-cp310-win32.whl (165.8 kB view details)

Uploaded CPython 3.10Windows x86

blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (309.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl (354.6 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ s390x

blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (372.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ppc64le

blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (321.3 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARMv7l

blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (307.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

blokus_rl-0.2.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl (334.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.5+ i686

blokus_rl-0.2.6-cp310-cp310-macosx_11_0_arm64.whl (275.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

blokus_rl-0.2.6-cp310-cp310-macosx_10_12_x86_64.whl (281.0 kB view details)

Uploaded CPython 3.10macOS 10.12+ x86-64

File details

Details for the file blokus_rl-0.2.6.tar.gz.

File metadata

  • Download URL: blokus_rl-0.2.6.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for blokus_rl-0.2.6.tar.gz
Algorithm Hash digest
SHA256 c30cae1328215019869603f00b8b8724444bbc7cc12dfd2356c0578a100139d9
MD5 740e02cecd93a0559eec625eecef2651
BLAKE2b-256 c78679a4827f8c6f41c8dc44742534f7ab4c62eda93c4f536c56b799ceeba2f3

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a846dd66d65c3a32314996932791a9427c83ba1870b320fa88425f41519e5d4f
MD5 f4cb2696547bcf992aa79fb2693fac81
BLAKE2b-256 1664e80c7947d704775ac99fe8690f03e55e6878694ebfa1b8b39d26dc39dc0b

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 60e512047213eadf08ccb72ce5da6e12a783f924e1c567472bf62af5c60c6c6a
MD5 c529ada24aa97f3f553ef91be357e460
BLAKE2b-256 3a91e5ae73e442f1392646e104e791a1f8e5639fa906974f51682aab68d496ea

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 e664fcb3c292615ee9c62da91584ffc0542c2c5588673705fe70061d6ae37bc8
MD5 90cff30a80f640c36f9b98aca7047601
BLAKE2b-256 c91b7cda1e96eacf14fc20cc1365ac810240a6b0b3d38ad486235ea35bacca11

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 b9ce1d5b98ce2c8aa4dc8746ca05e371cd23e0726e30fc1dc5f082aa2680d47b
MD5 ec281ad1a5072ab72a49317a17497672
BLAKE2b-256 d902cbbda0ac36201fe71c8bea1c50a4321c0e7f2f5c38e205452ebeb674cbdc

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6228beef020943847adb147e6a1a1288a63b72c24b4ee61e18ffbe3c2f1f9918
MD5 2ea48c2f49ea5600997333ff246d4c8d
BLAKE2b-256 0061e88aac2c2c071fa270625a2a2ff85430cf7e4a9469b1632a8854e9026b67

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 81de31a6ed04f7d56824067d7fe8b04a662eae670239e6a28d0aa408a0a239b3
MD5 a52585211cdfa552c72c3d5622679fb5
BLAKE2b-256 e3159ff976144fa2a802ded55ec7d46158e4f835710b483faf41e4a378ffccf4

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 8570eedb708196ad04213dd349eb1750c4bba195e8a1c67de05be0c559ee44e7
MD5 eebbbea7837e058f6ff69d52461e207d
BLAKE2b-256 cdb15749a2fe980894d13e23e301f3fe0b56fedff8e2eddb3715c1fec6596758

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 eaccb05cee7c206e0a5d42ffadb8a84e72d885a22d22c663cead5b2c3be3ca2a
MD5 e94b65f3fa49cdc5588fda841158e131
BLAKE2b-256 d4ded5032eaf7908af8b384eb64b92fd3b1e69561af5f5424413e23b3bee6155

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 85f2a4ad0960d2a0cf085972c2b1825091fa71921d73425c587537bc2e99182c
MD5 d211df3a8ffe725f4e688204a59d6742
BLAKE2b-256 4d5dd8a5d15f6b4658494a804c841ac89552bc4843fa847adbca17cdcacec0c4

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8e44f1d025a26d6cad38308ba131f7331b25c8dfd0e3ecaabe2f1a0ebb2d3e93
MD5 52bbd0b55609359e5428c0ae26a02ac4
BLAKE2b-256 fb4098555f72663d40c3d6b9a2ad948ee91aeb54b5acd998f612836b99a50c02

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7e8384e0a71a019fa867b84e3facb4be1ea9b79a02fe74ce278c6ed60c97846d
MD5 07221523c84c33af5095070c357cf9fc
BLAKE2b-256 dba14ec5ef87b6e98ce725f51493655ec522faff2a6bc0c7b52a4ece1d92b964

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-win32.whl.

File metadata

  • Download URL: blokus_rl-0.2.6-cp313-cp313-win32.whl
  • Upload date:
  • Size: 165.8 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 604709fca0913aad07fd0a77df623c4fb56bb1eded79985fd264f32993f54a3e
MD5 cbb8ca5dc3c6d71b0873c7fe81778615
BLAKE2b-256 863f065ee4312155a562b337da457a632ac9065371d6c859a5573ff50e897c88

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5b0ca6ccd5683fdff9d34ffbbc54adf346cdeee59fabc3e285d379def69da2dc
MD5 64c893af97eddfe24e6d6454a781664a
BLAKE2b-256 7f090278fc6cb59bd3dc035d3e564d566607d21b098be89ba278c044736acaf1

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 6b07006628d8ec8d9c18819309c4b5c231b9b4865bcacfffe1457dae945a5fd6
MD5 e3a505d8d238158a52a136fea71ed213
BLAKE2b-256 928b698a14cac667da29ab43b053835c8716cf684fc3cda7cfc8fcd380eb9d82

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 3c9f4288f5d1c490a121d2e250fddfea5ac77a5d502f53c1cac66ff89224bab4
MD5 6479b9449af8e0bef365c5ef707a5d10
BLAKE2b-256 09d35723f5574a3af980f6a8e667ea47156f6c77b4f75328ceba06a3a837f7a1

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 d1fcec7bcdcc7483c714003fab44c643941a621bc3e0f502ebed37b2520102be
MD5 b2e679c6ee8d91b0b8b8698cba9d909a
BLAKE2b-256 9fb50fafcd8f7aafc5e838aae08bcb1f3a205652343de72a014aa77d43d71b05

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9b17d1a1cb689149e7e52371167e17cd195b28160387e11524a6cbd7bdef3260
MD5 1c9ae62dc324aa3d458ca8e9f4ef70c7
BLAKE2b-256 c74201bd00faa1dae99577f78a8cdf459e7cf0f3a112ba6a75a84c62ca448abb

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 340e12b9b29e06e885a1050d57f9bacf24284641e82e2ca14232828af363ce88
MD5 72a4f736dd2b17bd9e2b9fea7dff9cce
BLAKE2b-256 ff68116f512c5108f9fa851cfd0df8e6c74c71b690d88050b79f876770fb995a

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 70b7d9d71573c8ec51ec14f286a78f647b716197e97f7ec2476d039509301838
MD5 14ba3f065569068edddae577e35d6031
BLAKE2b-256 a7b53deda916285ab9d1c9813164e3f3bf404346c9746e2fb3d3744b47df68a1

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 197683cef832cb957fab9bce5d4786bfde31a37484706230a0dee24b1a724732
MD5 acc98814513316e4de6fc4552d2d3ecb
BLAKE2b-256 ba4ad3f326f11876c03fa143dda4286ae2731b019ffd8b80416cb65e1775c2ca

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a6f9451ff4695e8c59924d1fab02afcb4e64ca2890c3a1953e93441e07d8d44b
MD5 d145920a3d8874a3c267953f8266e6a3
BLAKE2b-256 1b96010a6f9a34ef663635b1ccf0d5dbe931f2389728b6c3d33222f176870bac

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-win32.whl.

File metadata

  • Download URL: blokus_rl-0.2.6-cp312-cp312-win32.whl
  • Upload date:
  • Size: 165.6 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 ec481e63aa95e1c7206128d7508512ac7d24af8c2896baef3e18169383a76608
MD5 ca10b746d3b050416ad5070904440223
BLAKE2b-256 764506aec3fa0d561bda7065b230bf7856a5bbcdaf3cfb93459fce20fc6fd1d0

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 945921cb91cf4b1dec00a3cb21e4860b57608b21130b35b6380784575301693b
MD5 2176be6a365c812ea907709f0ebb8dbd
BLAKE2b-256 50bbd8df3331e1f0c1ef1025c0b3131b92e62f67eef73050e37077ff52e05ce7

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 f765a54826ef3e5de73c893fdc053a7900ab4617497e5867a62e3a6825da26a8
MD5 415773db5e3beb951d7f31bd7c506883
BLAKE2b-256 b5f792ae753601147986e9010ae797696bae410b2edb1d9ebc33144b00021781

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 a8fdf7954dc6942d4e8ecf1a87fdf6ef7278c1879b414d8c948bf58969382e32
MD5 ca0b8934611975708ee96bd9e6fedd2d
BLAKE2b-256 c12e08a784eb194694fac2b6d32f7cbd86ce067a261d3f7cccc53ab40d3c66c7

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 6e86fcee65cc43b0381aa0e21ac363129ed72c16d5e704fd62ce9af7c4abb09f
MD5 40a44a5c74e7a7fd30d193fd0a4d76c0
BLAKE2b-256 a2d3c663209653a3cdcd4fde78a87977716b9938b5e60a43ab3276df6f991339

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 623a70984d83785b9299659d3acef4d4228fd4b9325386203d3c0e3dd22829f5
MD5 52b97de603b235c7ee4d436de52639ef
BLAKE2b-256 5ee397854f3a422fb04d6eaa38eaab6166b4f44b4dea90eec4279c1b2ae4f52b

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 ee189df6db6b370cd91d6454384b99d9eb537de2c028855d7632f94756b35632
MD5 dc77a164e24d77f1bbd3ca9edcf924bc
BLAKE2b-256 7efbf79e3fe09f2e2227e8b521a8d14f2a86ee8afd108468f3ccb3dc3bd62517

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4b68d397fb0f2e0dca8a24b33fdde7d017ead293a6581c9a060d2cc0427bec5e
MD5 3b4ac0d261cbde4519492b2115cf3033
BLAKE2b-256 adb842b690b5536ca71b46a817f82b814b2fad7df2c0e61361ae9d36262ce521

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 e1c185119c8660fb74662a72f1ee238511809184d2dd644cd240e991dcf2361f
MD5 36dd3ca4b721c5f273c27b8b3f8da38f
BLAKE2b-256 5678f9c91380a557a893bb52dcc4eeb0473e9c66a686fda9a67bc1b14cfc4024

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bdcc5f7f9dfbbe100f09779ec506570ec8672c72c6635eb005dd370add7716ad
MD5 db91fb6c1e39983fd40de80b8c8b61c4
BLAKE2b-256 7c1da74f43b8ac9c02b716996e6e4ece719b0c42977ce9d5234acdaa075aaa5d

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-win32.whl.

File metadata

  • Download URL: blokus_rl-0.2.6-cp311-cp311-win32.whl
  • Upload date:
  • Size: 165.9 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 b55aebdd3421311eba132380bb4b6695e96fd5f16aa9328ee4f2b86ed4a91777
MD5 844b8f472a1943f49a55bfa621ddb065
BLAKE2b-256 251ade25ab3650b0b3be5161cf817793d7ff9cd1b5813b82c25f81aee6b25909

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 71e93795219db4b83437eb81c76aead765186b9396cc7e209c52f060953e7480
MD5 c1cc0811574b76d9971d01c5c1f99682
BLAKE2b-256 6db7d2eef310e2df80110caab1e2ef08449fefd28717dc6369705c7679ff6387

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 07759decc7d8f9ce0547c9b619a980631fa28200fdcd647227beea384be9771b
MD5 a1150f12655a11bf396c9f8b0b4e4f7e
BLAKE2b-256 a92b90e52a7c51990bb43f4bab2b52b5330f3ec52a40e16fe4db1d56376e6117

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 ea2d510f53de7555911689c1cf1e0c76e8eecd12a4558e9c03bb853eb375760c
MD5 923c494a99c66ea58b3d638973880a3b
BLAKE2b-256 e5d352645ddbd8ab4bda778038d4faf4f1b9f231f365d712d1468cb62c89dbfe

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 afe357e9705d162e4c2da89bd6bcd8d07b62520ad3cb71ec20a521798f9eac94
MD5 969a8c175e0a976149b973e39ba88a7c
BLAKE2b-256 1e158c7c1e8a74a28ac4d2642ff2abe9d34b2951c21aaf0b31cdaaedd56bfc68

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f6579e53a95ddac9dbae6b43b4477df887a5928933fd38aaf97d37242c4d1db2
MD5 a82ac7acd0ab4663c60a6bbecfb62cf2
BLAKE2b-256 bfcb3a81f8ff329570567ea19beab3b062f1065314bd72377e6741a179ed7aa8

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 9a7a48905db6e65f45904f2f5912deee8ca31b6344d6848f6512c88cc07e54ca
MD5 b99187f983eb269c838cb548a5b69cd5
BLAKE2b-256 92adea51f2f751a0ac29e9448b3c1869ae47f5dd20e5a98fa9a5c4cd550bf3e2

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a1ee755dc7302e705254ef0cec3bac8bfd2bb6633317ba2177fc76a10511c952
MD5 7e4591c03d9e4a61f000de42bfa273b0
BLAKE2b-256 f65b461c294c0e1a132c438373d0a13c1a8f1e28e0a23cb124c5e79ba1c8c4d6

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b7269353cb192ae1fdf3b51621b9a1e784706eb71ad81ed9858e737e57267170
MD5 609ec13082ccf09d8c4808ed4e354ec3
BLAKE2b-256 75ffc2bf53aaa2768d68993dc7342179f7e7ad757b225613b1dd4d845f8b617c

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a684478d991b64be227f63452cc2992e75ecbf5fbecad1af7d79c79d5b2f90c3
MD5 3f6517242723eff4ff3b4dcd44d278d6
BLAKE2b-256 48d4e536b29aa4a7418e5c80a9ca4e3b06827ccb4c6eb9d0a35d9f1d9f6c84ab

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-win32.whl.

File metadata

  • Download URL: blokus_rl-0.2.6-cp310-cp310-win32.whl
  • Upload date:
  • Size: 165.8 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: maturin/1.8.2

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 061ef150b44e9c724571bb9a21fb256b920b51d99bb0942a37c20b4d377a53ad
MD5 0b924577b7471165bb1e5a19bf86c393
BLAKE2b-256 69af9d02229f1f1561e94da1c0777a4ac2077ebe150fed93d7c1fa8619eddcbb

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1ed85defbd68ff786918c7073d812abf174d14ce7c0729207966ece1f93f4cd1
MD5 d8df43f10033e1d87818952330cbf236
BLAKE2b-256 77f644a09469e11a8f78a1f8aa054db8e6451cdd53e03a0594c2d33ebc025bc1

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 0856a52d8ad2095ab024437127f8c3d6ceb7d453ed9619380c05cbef3b981da2
MD5 7f0002a90de309671f68bf6e08fad443
BLAKE2b-256 1e1d3bd9287012772dbef3cde6d04c7554a147559ee84bb8752d73d087578d7e

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 6ad6ca73f989826f731f00a97d65b0517b931de6c225adce3d5009217804c203
MD5 d7594e04d469aa68ea784c534e507ffe
BLAKE2b-256 1a3fb8036c1a2deb1679a1d6dbbe2e4434ee347ffe2cdb987915bb4da2d270c0

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 2924d0f543faf30de8d6810213ed2c32d885d00f04fc40cabcc4cbb0c290799e
MD5 e29935c31d43b8ba1eaaf428bcf2ef28
BLAKE2b-256 41c9b84333e5be3155caac7c08389572f1fde6aa5c87d50b62c268454d1114d1

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9e49fb54cf59b62fdd9cd41e88929f7e1767ea011896fa1cbda7a150409e2ae2
MD5 9e4544815ea493ff9dc11b367e9ff4b8
BLAKE2b-256 dea8b500ace2dfef5c662a0848cbac6677b555df055b4c39ed869926a2ef395c

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 7fec0302a36f262467e438289cebf8dfa5732f0e79c35b6bd587bed533b0bf18
MD5 b91a1ff8673b30b920b10f89bbea4cad
BLAKE2b-256 e421791cf140f5baafa99093c4af93dd67c078e15b38322e0cf95a66da1d6e1d

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 59cfa2ffc664cb19df11fd2d0d727ef9a72597b1504625f1cd873f9c5e367d5f
MD5 bad0d732be7cf4fcd8d73fdbf6d6a7b8
BLAKE2b-256 9a9ca38473357da0f148effd23c1719598097d56ea2a9c0583b95c94c62f1fbc

See more details on using hashes here.

File details

Details for the file blokus_rl-0.2.6-cp310-cp310-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for blokus_rl-0.2.6-cp310-cp310-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 841e168e93e3f0f9a65201a8f351ece3cd474554ba11e5209e9c4a0047be35b8
MD5 3f64ec4811ab4414a6d4b6d1ba26f217
BLAKE2b-256 6163eb9055b97800eee74b297136ae12dc932bdc100941d53a6a8517c0ac9f25

See more details on using hashes here.

Supported by

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