[PYTHON] Utilisez Minecraft Pi Edition à partir d'un PC

Minecraft Pi Edition est installé sur Raspbian, le système d'exploitation de Raspberry Pi. Minecraft Pi Edition dispose d'une API qui peut être exploitée de l'extérieur et vous pouvez ajouter des blocs au monde de Minecraft à l'aide de programmes Python.

Cette fois, je vais vous présenter comment utiliser Minecraft Pi Edition à partir d'un PC.

Logiciel utilisé

Côté Raspberry Pi

Côté PC

Mécanisme pour fonctionner à distance

Minecraft Pi Edition expose l'API sur le port 4711 ''. Dans Raspbian, la bibliothèque Python pour les clients (ci-après mcpi '') se trouve dans `` / usr / lib / python2.7 / dist-packages / mcpi / '', et vous pouvez écrire et utiliser des programmes Python.

Côté Raspberry Pi


$ python 
>>> import mcpi
>>> print mcpi.__file__
/usr/lib/python2.7/dist-packages/mcpi/__init__.pyc

La mise en œuvre de la méthode minecraft.create est la suivante, et vous pouvez faire fonctionner Minecraft Pi Edition à partir d'un PC sur le même réseau local en entrant l'adresse IP de Raspberry Pi dans le premier argument.

mcpi/minecraft.py


    def create(address = "localhost", port = 4711):
        return Minecraft(Connection(address, port))

Si `` mcpi '' peut implémenter la communication socket, il peut être porté vers un autre que Python, il semble donc que certaines personnes le réécrivent avec Ruby. (eaglestone / minecraft-pi-ruby)

Préparation de l'environnement de développement

Tout d'abord, copiez le mcpi '' sur le Raspberry Pi du côté PC. (Modifiez la partie adresse IP de pi @ 192.168.1.49 en exécutant ```ifconfig etc. sur Raspberry Pi.)

Côté PC


mkdir minecraft-pi-samples
cd minecraft-pi-samples
rsync -av --copy-links [email protected]:/usr/lib/python2.7/dist-packages/mcpi/ ./mcpi/ --exclude=*.pyc

Si vous ne comprenez pas ce travail ou avez des problèmes, téléchargez le programme exemple ici et décompressez-le. Veuillez utiliser le répertoire `src``.

Exécutez le programme

Créez le programme suivant. Remplacez le premier argument "192.168.1.49" dans Minecraft.create par l'adresse IP de votre Raspberry Pi.

hello.py


import platform
from mcpi.minecraft import Minecraft
mc = Minecraft.create("192.168.1.49")
mc.postToChat("Hello " + platform.platform())

La structure des répertoires ressemble à ceci.

.
├── hello.py
└── mcpi
    ├── __init__.py
    ├── block.py
    ├── connection.py
    ├── event.py
    ├── minecraft.py
    ├── util.py
    └── vec3.py

Exécutez `` python hello.py '', et cela réussit lorsque les informations de plate-forme du PC qui a exécuté le programme sont affichées dans le message de discussion sur le côté de Minecraft Pi Edition.

raspberry-pi-mcpi.png

Résumé

Cette fois, j'ai lu le code de mcpi et j'ai décidé de le développer à distance car il communique avec des sockets.

L'avantage d'utiliser un PC est que vous pouvez utiliser un environnement de développement que vous connaissez bien, comme un éditeur, et comme vous pouvez le faire fonctionner à distance, une personne peut faire fonctionner Minecraft et l'autre peut exécuter un programme pour interférer ou aider. Je pense.

Comme avantage supplémentaire, puisque mcpi est copié dans le même répertoire, vous pouvez écrire du code tout en vérifiant le contenu de la méthode.

Je pense qu'il est nécessaire que le Raspberry Pi l'exécute dans le domaine de l'éducation, mais je pense que le côté qui crée un exemple de code en tant que matériel pédagogique peut utiliser un environnement aussi hautement productif.

Recommended Posts

Utilisez Minecraft Pi Edition à partir d'un PC
Bloquez et dessinez des images avec Minecraft Pi Edition
Allumez / éteignez votre PC avec Raspberry Pi
Exploitez Filemaker depuis Python
Faites fonctionner le neutron de Python!
Faire fonctionner LXC depuis Python