Czy Python może kontrolować normalny Minecraft, czy tylko edycję RasPi?


15

Mój syn chce stworzyć grę w języku Python zmaterializowaną w grze Minecraft. Jeśli zrobi to za pomocą RasPi Edition, czy ten sam kod w języku Python może kontrolować normalny Minecraft na PC? Domyślam się, że Python wysyła polecenia do Minecraft zamiast uruchamiać na tej samej maszynie wirtualnej, więc powinno działać dla obu.

Odpowiedzi:


12

Sprawdź mój wpis na blogu Rysowanie trójkąta Sierpińskiego w Minecrafcie za pomocą Pythona . Byłem w stanie napisać kod Python, który podłącza się do otwartego źródła Minecraft o nazwie Bukkit. Możesz użyć normalnego klienta Minecraft w OS X, aby połączyć się z serwerem Bukkit.

Konfiguracja nie jest tak łatwa jak na Raspberry Pi, ale działa.


Uwaga: Kod napisany dla Raspberry Pi powinien być prawie dokładnie taki sam, jak kod napisany dla wtyczki RaspberryJuice (wtyczka użyta w powyższym linku). Jednak nie jest on do końca kompletny, więc w niektórych okolicznościach może być konieczne nieco zmodyfikowanie kodu.
daviewales

8

Napisałem mod Forge (Raspberry Jam Mod) na komputer stacjonarny Minecraft, który implementuje większość protokołu wersji Pi i współpracuje ze skryptami, które przetestowałem. Obsługa zdarzeń jest głównym pominięciem.

Kod źródłowy i pliki binarne są tutaj .

Aby zainstalować, potrzebujesz Pythona, Minecraft 1.8, Minecraft Forge , mojego Raspberry Jam Mod i pakietu Minecraft PI Python . Następnie:

  1. Zainstaluj Forge dla 1.8.
  2. Utwórz profil Minecraft, który go używa.
  3. Utwórz podkatalog mods do swojego katalogu Minecraft (% appdata% .minecraft w systemie Windows).
  4. Umieść mój mod w katalogu mods.
  5. Utwórz podkatalog mcpipy do swojego katalogu Minecraft.
  6. Umieść zawartość pakietu Minecraft PI Python w katalogu mcpipy.
  7. Utwórz profil Minecraft, który korzysta z 1.8 Forge.
  8. Uruchom Minecraft i stwórz świat.
  9. Uruchamiaj skrypty pythonowe za pomocą wiersza poleceń lub bezpośrednio w Minecraft za pośrednictwem / py scriptname. Np. / Py nt7s_sphere narysuje kulę.

Jeśli chcesz jeszcze więcej szczegółów, napisałem Instructable .


Jak zainstalować i uruchomić?
JeromeJ


3

Uważam, że działa to dla mnie w Minecraft 1.7.10 (ponieważ rozwiązanie odpowiedzi user875707 jest przeznaczone do użycia z Minecraft 1.8).

https://github.com/kbsriram/mcpiapi

Wszystkie instrukcje znajdują się w powyższym linku, ale w zasadzie wystarczy pobrać te, .jarktóre ci oferują i upuścić w swoim your_minecraft_folder/mods/.

Będziesz potrzebował zarówno zainstalowanej Forge, jak i Pythona (2 lub 3, nawet jeśli przykładowe skrypty są zaprojektowane dla Py2).

Upewnij się także, że Python jest w twoim PATH(aka możesz po prostu wpisać pythonw swoim terminalu - użyj tego, jeśli nie jest).

To jest tak proste w konfiguracji.

Umieść swoje skrypty your_minecraft_folder/mcpimods/python/i uruchom je w grze, wpisując /python yourscriptname(lub po prostu /py yourscriptname), nie umieszczaj .pyna końcu yourscriptname. Jeśli coś poszło nie tak, sprawdź konsolę, aby zobaczyć błąd.

EDYCJA: Bardzo potężne narzędzie, bądź ostrożny , udało mi się zepsuć mój świat. Mam nadzieję, że zainstalowałem AromaBackup, który co jakiś czas wykonuje automatyczne kopie zapasowe (dla mnie 30 minut).

EDYCJA 2: Dowiedziałem się, że możesz także zmodyfikować CustomNPC, który pozwala ci korzystać z dowolnego języka, w którym chcesz uruchamiać NPC (sami mogą robić wiele rzeczy, w tym uruchamianie poleceń itp.).


Chociaż teoretycznie może to odpowiedzieć na pytanie, lepiej byłoby zawrzeć tutaj istotne części odpowiedzi i podać odnośnik.
Steve Robillard

@ SteveRobillard Chociaż zgadzam się z twoim oświadczeniem, nie jestem pewien, jak go poprawić w tym konkretnym przypadku.
JeromeJ

@ SteveRobillard Podjęłam, mam nadzieję, sukces, próbę poprawy jakości mojej odpowiedzi.
JeromeJ

0

Nie, nie bardzo. W tym momencie trzy wersje (PC, Xbox i Minecraft) są całkowicie różnymi gałęziami. Mod często nie działa na komputerze od wersji 1.x do wersji 1.x + 1, więc naprawdę nie zobaczysz żadnej kompatybilności krzyżowej.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.