Spisu treści:

OreServer - dedykowany serwer Minecraft dla Raspberry Pi ze wskaźnikiem LED odtwarzacza: 9 kroków (ze zdjęciami)
OreServer - dedykowany serwer Minecraft dla Raspberry Pi ze wskaźnikiem LED odtwarzacza: 9 kroków (ze zdjęciami)

Wideo: OreServer - dedykowany serwer Minecraft dla Raspberry Pi ze wskaźnikiem LED odtwarzacza: 9 kroków (ze zdjęciami)

Wideo: OreServer - dedykowany serwer Minecraft dla Raspberry Pi ze wskaźnikiem LED odtwarzacza: 9 kroków (ze zdjęciami)
Wideo: LEGENDARNY Rathalos Blademaster🔥Kody Promocyjne do Raid Shadow Legends po polsku 🔥Styczeń 2024 2024, Listopad
Anonim

Autor: MrJymmFollow About: Dużo pomysłów, za mało czasu. Więcej o MrJymmie »

AKTUALIZACJA z lipca 2020 r. - Zanim zaczniesz ten projekt, pamiętaj, że wprowadzono WIELE zmian i aktualizacji w różnych narzędziach programowych, których użyłem do stworzenia tego ponad dwa lata temu. W rezultacie wiele kroków nie działa już zgodnie z opisem. Projekt nadal może zostać ukończony i nadal jest świetną zabawą, ale spodziewaj się, że będziesz musiał wykonać własne majsterkowanie, aby wszystko działało. Niektóre rozwiązania można znaleźć w ostatnich komentarzach na końcu instrukcji. Dziękuję i życzę miłego kopania

Jeśli jesteś fanem gry w Minecrafta, prawdopodobnie myślałeś o tym, jak fajnie byłoby mieć własny osobisty serwer, którym możesz dzielić się ze znajomymi. Moi synowie nieustannie prosili mnie o swój własny wspólny świat i ostatecznie ich zainteresowanie Minecraftem połączyło się z moim zainteresowaniem Raspberry Pi i narodził się pomysł na OreServer.

Ten projekt pokaże Ci, jak skonfigurować serwer Minecraft z zabawną i unikalną funkcją - jest zbudowany tak, aby przypominał blok rudy i świeci różnymi kolorami w zależności od tego, ile osób aktualnie gra w Twoim świecie!

Ale to nie koniec! Uczynimy również serwer dostępnym dla każdego, kto ma wersję gry Minecraft na komputery PC, dzięki czemu możesz udostępniać swój adres serwera i zapraszać znajomych do swojego świata. Będzie działać 24 godziny na dobę, 7 dni w tygodniu, więc nawet jeśli jesteś zajęty lub jesteś poza domem, Twoi znajomi mogą dalej budować. I ustawimy automatyczne kopie zapasowe na wypadek tragedii (ta armata TNT brzmiała wtedy jak dobry pomysł…), aby można było zresetować pracę z poprzednich dni.

Krok 1: Lista części i narzędzi

Lista części i narzędzi
Lista części i narzędzi

Oto części, narzędzia i oprogramowanie, których będziesz potrzebować, aby ukończyć ten projekt. Dodałem linki w celach informacyjnych, ale większość tych materiałów jest dostępna od wielu dostawców, więc wybieraj je tam, gdzie jest to najłatwiejsze / najtańsze dla Ciebie.

Części:

  • Raspberry Pi 3 i zasilacz

    Są również dostępne w zestawie

  • Adapter kątowy micro USB
  • Karta micro sd

    Minimum 8 GB, ale zalecana jest karta wysokiej jakości o pojemności 16 lub 32 GB

  • Adafruit Neopikselowy klejnot
  • Trzy krótkie przewody GPIO
  • Filament do druku 3D w kolorze srebrnym lub szarym (dowolny typ)
  • Śruby 2,5 mm (x4)
  • Pergamin lub biała bibułka

Narzędzia:

  • Czytnik kart microSD
  • Sprzęt lutowniczy
  • Mały śrubokręt
  • drukarka 3d

Oprogramowanie:

  • Minecraft (wersja Java na komputery PC)
  • Raspbian Lite ISO

    NIE wersja „z komputerem”

  • wytrawiacz.io
  • Putty lub podobny klient terminala SSH
  • Filezilla lub podobny klient FTP

Krok 2: Skonfiguruj i przygotuj Raspberry Pi

Skonfiguruj i przygotuj Raspberry Pi
Skonfiguruj i przygotuj Raspberry Pi
Skonfiguruj i przygotuj Raspberry Pi
Skonfiguruj i przygotuj Raspberry Pi
Skonfiguruj i przygotuj Raspberry Pi
Skonfiguruj i przygotuj Raspberry Pi
Skonfiguruj i przygotuj Raspberry Pi
Skonfiguruj i przygotuj Raspberry Pi

Zanim zaczniemy instalować serwer, musimy wykonać kilka podstawowych czynności instalacyjnych i konfiguracyjnych na Pi.

1. Przygotuj kartę MicroSD

Najpierw musimy umieścić system operacyjny Rasbian na naszej karcie MicroSD za pomocą etcher.io.

  1. Włóż kartę MicroSD do czytnika kart, a czytnik kart do portu USB w komputerze
  2. Uruchom wytrawiacz i użyj przycisku Wybierz obraz, aby załadować Rasbian Lite ISO
  3. Wybierz kartę MicroSD do napędu instalacyjnego
  4. Kliknij Flash!

Po zakończeniu procesu wytrawiacz odłączy dysk MicroSD od systemu, ale musimy dodać jeszcze jeden plik, więc po prostu odłącz go i podłącz ponownie. Karta będzie teraz odczytywana jako dysk oznaczony jako „boot”. Skopiuj pusty plik o nazwie „ssh” na dysk rozruchowy, a następnie ponownie odłącz dysk MicroSD od systemu. Karta MicroSD jest teraz gotowa do przeniesienia do Raspberry Pi.

** Jeśli nie możesz pobrać pliku „ssh”, możesz łatwo utworzyć własny, zmieniając nazwę pustego pliku tekstowego. Upewnij się, że usunąłeś rozszerzenie „.txt”. Gdy to zadziała, ikona stanie się pusta, jak na zrzucie ekranu. **

2. Połącz się z terminalem Pi

Teraz, gdy Pi ma system operacyjny, włączmy go!

  1. Podłącz zarówno przewodowy kabel Ethernet, jak i zasilacz do Rasberry Pi. Chociaż Pi 3 ma wbudowaną obsługę Wi-Fi, połączenie przewodowe jest bardziej niezawodne i preferowane dla naszego serwera.
  2. Następnie musimy pobrać adres IP Pi z routera. Ten krok będzie się nieco różnił w zależności od marki routera - w moim przypadku wpisuję 192.168.1.1 w przeglądarce, aby zalogować się do panelu sterowania routera. Będziesz szukać listy klientów DHCP i wpisu o nazwie „raspberrypi”. Zwróć uwagę na przypisany adres IP, w moim przykładzie jest to 192.168.1.115. Teraz jest również dobra okazja, aby ustawić adres IP jako „zarezerwowany” lub „stały”, aby później nie został mu przypisany inny adres. Jeśli masz problemy z wykonaniem tego kroku, sprawdź szczegółowe informacje w dokumentacji routera lub na stronie pomocy technicznej.
  3. Teraz możemy otworzyć Putty, wpisać adres IP Pi w polu „Nazwa hosta” i kliknąć „Otwórz”.

Powinieneś teraz patrzeć na czarny ekran z napisem „zaloguj się jako:”. To jest terminal twojego Pi i na nim będziemy wykonywać resztę pracy związanej z konfiguracją serwera. Pamiętaj, ekrany terminali są przeznaczone dla klawiatur! Twoja mysz na niewiele się tu przyda.

3. Konfiguracja raspi

Aby zakończyć początkową konfigurację, musimy się zalogować przy użyciu domyślnych ustawień:

zaloguj się jako: pi

hasło: malina

Teraz możemy przejść przez podstawową konfigurację domyślnych ustawień Pi, wprowadzając następujące:

sudo raspi-config

Musimy wprowadzić kilka zmian i przeprowadzę cię przez nie w tej samej kolejności, w jakiej są ponumerowane na ekranie konfiguracji.

  1. Zmień hasło użytkownika - to konieczność! Wszyscy znają domyślne hasło, więc natychmiast je zmień.
  2. Opcje sieciowe

    Nazwa hosta - domyślnie jest to "raspberrypi", ale jeśli chcesz, możesz zmienić ją na bardziej opisową

  3. -(bez zmiany)-
  4. Opcje lokalizacji - jeśli nie jesteś w Wielkiej Brytanii, będziesz chciał zmienić je na swój własny kraj. Moje przykłady zakładają, że to Stany Zjednoczone.

    1. Zmień lokalizację - użyj strzałki w dół, aby znaleźć wpis „en_GB” z * obok niego. Użyj spacji, aby usunąć ten *, a następnie przejdź nieco dalej do „en_US. UTF-8” i ponownie użyj spacji, aby oznaczyć to *.
    2. Zmień strefę czasową - ustawienie tego jest ważne, aby nasze zadania czasowe działały poprawnie
    3. Zmień układ klawiatury – możesz to pominąć, ale jeśli pozostaniesz w Wielkiej Brytanii, pojawi się kilka przesuwanych symboli klawiatury
  5. Opcje interfejsu

    1. -(bez zmiany)-
    2. SSH - Włącz tę opcję, aby móc nadal używać Putty po ponownym uruchomieniu Pi.
  6. -(bez zmiany)-
  7. Zaawansowane opcje

    1. Rozwiń system plików - dzięki temu Pi może wykorzystać całą dostępną przestrzeń na karcie SD
    2. -(bez zmiany)-
    3. Podział pamięci - zmień to na 16, aby zwolnić więcej pamięci do użytku Minecrafta.

Teraz wybierz „Zakończ”, a następnie wybierz „Tak”, aby ponownie uruchomić.

To zakończy twoją sesję w Putty. Po prostu daj mu chwilę na dokończenie ponownego uruchomienia, a następnie ponownie otwórz Putty i ponownie połącz się z adresem IP Pi. Pamiętaj, aby użyć nowego hasła!

Krok 3: Zainstaluj serwer dedykowany

Konfiguracja oprogramowania serwera to najdłuższy krok, ale także najważniejszy. Spędzimy dużo czasu wprowadzając kilka nudnych poleceń Linuksa. Nie daj się zastraszyć! Dopóki możesz kopiować i wklejać, możesz przejść przez tę część.

Serwer Minecraft jest dość złożony, a uruchomienie go na komputerze tak małym jak Raspberry Pi wymaga usprawnienia. Zacząłem od tego fantastycznego samouczka autorstwa Jamesa Chambersa, ponieważ ma on kilka świetnych wskazówek dotyczących maksymalizacji wydajności serwera. Poniżej podsumuję jego proces instalacji i podkreślę niektóre wprowadzone przeze mnie zmiany i aktualizacje, ale zdecydowanie zalecam przeczytanie jego strony, aby uzyskać więcej szczegółów.

Teraz, po ponownym zalogowaniu się przy użyciu domyślnego „pi” i nowego hasła, możemy zacząć wpisywać polecenia, aby zainstalować pliki serwera.

Ważne - Wiele z tych poleceń jest długich i skomplikowanych, a wpisywanie ich w oknie terminala byłoby naprawdę trudne. Więc nie rób tego! Zaznacz tekst polecenia w tym oknie, skopiuj go za pomocą ctrl-c, a następnie w oknie terminala kliknij prawym przyciskiem myszy, aby wkleić tekst. Widzisz, ta mysz jest jednak do czegoś dobra!

Do końca tego kroku będziesz kopiować każde z poleceń w tych polach tekstowych kodu.

Po drodze przedstawię krótkie wyjaśnienia tego, co robimy.

Zaczniemy od zaktualizowania naszego oprogramowania.

aktualizacja sudo apt-get && aktualizacja sudo apt-get

Za każdym razem, gdy zobaczysz prośbę o zatwierdzenie instalacji, wpisz „y” i naciśnij Enter, aby zaakceptować i kontynuować.

Minecraft działa na Javie, ale nasza „Lite” instalacja Rasbian go nie zawierała, więc weźmy to.

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808 /jdk-8u161-linux-arm32-vfp-hflt.tar.gz

Uwaga ** Gdy Java zostanie zaktualizowana do nowszej wersji, to polecenie może stać się nieaktualne. Jeśli otrzymasz komunikat o błędzie, musisz zaktualizować polecenie do najnowszej wersji. Odwiedź stronę pobierania Java firmy Oracle, kliknij przycisk „Zaakceptuj umowę licencyjną”, a następnie kliknij prawym przyciskiem myszy łącze do najnowszego pliku linux-arm32 i wybierz łącze kopiowania. Będziesz musiał użyć tego zaktualizowanego linku, aby zastąpić tekst w powyższym poleceniu, zaczynając od http. **

Teraz możemy zainstalować właśnie pobrane pliki Java.

sudo mkdir /usr/java

cd /usr/java

Jeśli musiałeś zmienić łącze pobierania dla nowej wersji, upewnij się, że zmieniłeś numer wersji w następnych poleceniach, aby pasował.

sudo tar xf ~/jdk-8u161-linux-arm32-vfp-hflt.tar.gz

sudo update-alternatives -- zainstaluj /usr/bin/java java /usr/java/jdk1.8.0_161/bin/java 1000

alternatywy aktualizacji sudo -- zainstaluj /usr/bin/javac javac /usr/java/jdk1.8.0_161/bin/javac 1000

cd ~

I na koniec główne wydarzenie, na które tak cierpliwie czekałeś, zainstalujmy serwer Minecraft. Jest to wyspecjalizowana wersja serwera o nazwie Paper, pełna optymalizacji poprawiających wydajność.

papier mkdir

wget

unzip master.zip -d Papier

mv ~/Papier/MalinaPiMinecraft-master/* ~/Papier/

papier cd

chmod +x start.sh

wget

java -jar -Xms512M -Xmx800M spinacz.jar

To ostatnie polecenie uruchomi serwer po raz pierwszy, a po kilku chwilach pojawi się błąd mówiący, że musisz zgodzić się na umowę EULA. Otwórz umowę EULA za pomocą następnego polecenia:

nano eula.txt

Zmień wiersz z „eula=false” na „eula=true”. Zapisz zmiany, naciskając ctrl-x, następnie Y, a następnie enter.

Uwaga ** James Chambers wspomina o metodzie podkręcania karty SD w tym miejscu swojego przewodnika. Osobiście nie próbowałem tego kroku, ponieważ wymaga to wysokiej jakości karty, a ta, którą miałem do dyspozycji, nie jest niczym specjalnym. Wierzę, że podkręcanie z pewnością jeszcze bardziej poprawiłoby wydajność, ale nawet bez podkręcania serwer działa na tyle dobrze, że nie mam żadnych skarg od grających na nim dzieciaków. **

Przyjrzyjmy się szybko właściwościom serwera i wprowadźmy kilka zmian.

nano serwer.właściwości

Jest tutaj długa lista rzeczy, które możesz zmienić na swoim serwerze, takich jak personalizacja nazwy serwera i MOTD, zmiana trybu gry lub włączenie PvP lub bloków poleceń. Możesz teraz zmienić rzeczy według swoich preferencji lub otworzyć ten plik, aby wprowadzić więcej zmian później, ale są dwie zmiany, które wprowadzimy natychmiast.

maksymalna liczba graczy=8

port-serwera=25565

Ośmiu graczy to najwyższa, którą polecam, każdy wyższy i jest bardzo prawdopodobne, że wydajność serwera będzie opóźniona, nawet przy wszystkich optymalizacjach wprowadzonych w celu uruchamiania rzeczy na Pi.

Port serwera powinien zostać zmieniony, ponieważ podobnie jak domyślne hasło "raspberry", każdy zna domyślny port 25565. Nawet drobna zmiana na 26565 pomoże zabezpieczyć serwer. Zapisz numer portu obok miejsca, w którym zapisałeś adres IP Pi. Obie te rzeczy będą Ci potrzebne później.

Po zakończeniu aktualizacji ustawień zapisz zmiany, naciskając ctrl-x, następnie Y, a następnie enter.

Następny krok w przygotowaniu serwera zajmie najwięcej czasu po jego uruchomieniu, prawdopodobnie około godziny. Te polecenia wstępnie wygenerują twój świat, co oznacza, że serwer nie będzie musiał wykonywać całej tej pracy później, gdy ty i twoi znajomi będziecie eksplorować.

cd ~/Papier/wtyczki

wget --content-disposition -E

ekran instalacyjny sudo apt-get

papier cd

./start.sh

Nie będzie wyglądało na to, żeby coś się stało, ale twój serwer już się uruchomił! Aby wejść w interakcję z serwerem musimy użyć tego polecenia

ekran -r minecraft

A potem wstępnie wygenerujemy świat:

WB World set 1000 spawn

wb świat wypełnić 1000

wb wypełnienie potwierdź

To ta część, która zajmie dużo czasu. Idź na przekąskę i sprawdź później! Po zakończeniu procesu wyłącz serwer za pomocą bardzo prostego polecenia

zatrzymać

Spowoduje to zapisanie i zamknięcie serwera oraz powrót do terminala Raspberry Pi.

Naszym ostatnim zadaniem jest ustawienie serwera tak, aby uruchamiał się automatycznie po podłączeniu lub ponownym uruchomieniu Raspberry Pi. Możemy to zrobić tworząc prosty skrypt.

cd ~

nano startup.sh

Wcześniej używaliśmy nano do edycji kilku plików, ale tym razem tworzymy jeden od podstaw, więc okno będzie puste. Skopiuj te dwie linie do pliku:

cd /home/pi/papier

screen -dmS minecraft java -server -Dfile.encoding=UTF-8 -Xms512M -Xmx800M -XX:NewSize=300M -XX:MaxNewSize=500M -XX:+CMSIncrementalMode -XX:+UseConcMarkSweepGC -XX:+UsXX:+New CMSIncrementalPacing -XX:ParallelGCThreads=4 -XX:+AggressiveOpts -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX:SurvivorRatio=16 -XX:TargetSurvivorRatio=90 -jar /home/pi/Paper/paper/paper noguiclip.

Następnie zapisz swój nowy skrypt, naciskając ctrl-x, następnie Y, a następnie enter.

chmod +x startup.sh

chmod +x /etc/rc.local

sudo nano /etc/rc.local

Ostatnia linia pliku rc.local mówi "exit 0". Bezpośrednio nad tą linią dodamy to:

su pi -c /home/pi/startup.sh

I jeszcze raz zapisujemy zmiany pliku za pomocą ctrl-x, potem Y, potem enter.

ponowne uruchomienie sudo

Otrzymasz wiadomość, że połączenie zostało zamknięte i możesz zamknąć okno Putty.

Otóż to! Udało Ci się przejść przez nudny kawałek! Teraz jesteśmy gotowi do przetestowania naszego serwera!

Krok 4: Przetestuj swój serwer i zaproś znajomych

Przetestuj swój serwer i zaproś znajomych
Przetestuj swój serwer i zaproś znajomych
Przetestuj swój serwer i zaproś znajomych
Przetestuj swój serwer i zaproś znajomych
Przetestuj swój serwer i zaproś znajomych
Przetestuj swój serwer i zaproś znajomych
Przetestuj swój serwer i zaproś znajomych
Przetestuj swój serwer i zaproś znajomych

Następnie sprawdzimy, czy serwer działa i upewnimy się, że nasi znajomi mogą się przyłączyć.

Otwórz program uruchamiający Minecraft na swoim komputerze i naciśnij Play. Upewnij się, że używasz najnowszej wersji zgodnej z serwerem Paper.

Na głównym ekranie wybierz Tryb wieloosobowy, a następnie Dodaj serwer. Wprowadź nazwę, którą chcesz mieć na liście serwerów, a w polu Adres serwera wprowadź adres IP swojego Pi i numer portu. W moim przykładzie używamy 192.168.1.115:26565. Upewnij się, że między adresem IP a numerem portu znajduje się dwukropek i że nie ma spacji. Kliknij Gotowe, a następnie kliknij Odtwórz na swoim serwerze. Po kilku chwilach znajdziesz się w swoim zupełnie nowym świecie!

Zaczekaj, wróć! Nie zaczynaj budować samemu, zaprośmy znajomych! Niestety nie mogą używać tego samego adresu IP, co Ty. Aby to zadziałało, najpierw musisz powiedzieć routerowi, że osoby spoza domu mogą łączyć się z Pi. Nazywa się to przekierowaniem portów, a dokładny proces będzie się nieco różnić w zależności od routera. Załączam zrzut ekranu przedstawiający wygląd mojego routera marki TP Link, ale może być konieczne sprawdzenie witryny wsparcia dla routerów, aby uzyskać więcej informacji.

W ustawieniach przekierowania portów wprowadź numer portu wybrany dla serwera, a następnie adres IP dla Raspberry Pi. Twój router wie teraz, że gdy Twoi znajomi próbują połączyć się z tym numerem portu, powinni zostać skierowani do Pi.

Następnie musimy skorzystać z bezpłatnej usługi, takiej jak No-IP, aby utworzyć własny unikalny adres, zwany nazwą hosta. Skonfigurujesz również router lub komputer, aby adres IP nazwy hosta był aktualny.

Postępuj zgodnie z instrukcjami zawartymi w ich Przewodniku konfiguracji.

Po zakończeniu konfiguracji konta No-IP Twoi znajomi będą mogli połączyć się z Twoim serwerem, wprowadzając nową nazwę hosta i numer portu w sekcji Adres serwera na ekranie gry wieloosobowej Minecraft. Na przykład nazwa hosta.ddns.net:26565.

Krok 5: Uratuj świat! (z automatycznymi kopiami zapasowymi)

Uratuj świat! (z automatycznymi kopiami zapasowymi)
Uratuj świat! (z automatycznymi kopiami zapasowymi)

Ten krok jest opcjonalny, ale może uratować życie. Twój świat stoi w obliczu poważnych zagrożeń, czy to z powodu uszkodzonej karty MicroSD, okazjonalnych psot lub żalu, czy tylko tych nieznośnych pnączy. Aby chronić całą twoją ciężką pracę, serwer będzie automatycznie zapisywał twój plik świata każdej nocy. Aby zapobiec zapełnieniu karty MicroSD, usuniemy również wszelkie kopie zapasowe, które mają więcej niż tydzień. Następnie możesz łatwo skopiować je na własny komputer lub inny dysk kopii zapasowej, aby uzyskać jeszcze większe bezpieczeństwo.

Zaczniemy od użycia Putty do ponownego połączenia się z naszym Pi w celu stworzenia kolejnego nowego skryptu.

nano dailybackup.sh

Skopiuj następujące polecenia do skryptu:

# Zatrzymaj serwer Minecraft

screen -x minecraft -X stuff stop^M sen 5 # Skopiuj katalog Paper do kopii zapasowej/PaperRRRRMM cp -a Paper/. backup/Paper$(data +%F) # Usuń kopie zapasowe starsze niż 7 dni znajdź kopię/* -mindepth 0 -maxdepth 0 -type d -ctime +7 -exec rm -rf {};

A potem powiedz to ze mną - zapisz swój plik, naciskając ctrl-x, Y, enter.

Teraz utworzymy cykliczne zadanie do uruchamiania skryptu kopii zapasowej każdej nocy za pomocą crontab.

crontab -e

Przy pierwszym uruchomieniu tego polecenia otrzymasz wybór edytorów, wybierz numer 2 dla Nano.

Spowoduje to otwarcie specjalnego pliku do planowania zadań. Na dole tego pliku dodaj następujące wiersze:

5 0 * * * /home/pi/dailybackup.sh

15 0 * * * ponowne uruchomienie sudo

Pierwsza linia mówi Pi, aby uruchamiał skrypt kopii zapasowej o godzinie 12:05 każdej nocy. Druga linia mówi Pi, aby zrestartował dziesięć minut później. Jeśli wolisz inny czas tworzenia kopii zapasowych i ponownego uruchamiania, możesz zmienić te wiersze zgodnie z własnymi preferencjami. Pamiętaj tylko, że pierwsza liczba to minuta, a druga to godzina w formacie 24-godzinnym. Trzy gwiazdki zapewniają, że ten skrypt będzie uruchamiany codziennie.

Gdy twój system będzie działał przez jakiś czas, możesz przyzwyczaić się do zapisywania kopii zapasowych w innej lokalizacji poza kartą MicroSD Pi. To zadanie jest bardzo proste dzięki połączeniu się z serwerem za pomocą Filezilla. Po prostu przeciągnij folder kopii zapasowej z prawej strony Filezilli i upuść go na swoim komputerze. Po skopiowaniu wszystkich plików możesz je przechowywać tak długo, jak chcesz!

A jeśli kiedykolwiek dojdzie do tragedii i będziesz musiał wrócić do jednego ze swoich plików zapisu, jest to szybka i prosta procedura. Najpierw upewnij się, że zatrzymałeś serwer:

ekran -r minecraft

zatrzymać

Następnie użyj Filezilla, aby usunąć katalog Paper i zastąp go, przeciągając jeden z zapisanych katalogów z powrotem do Pi. Upewnij się, że usunęłaś datę z nazwy katalogu, aby ponownie nazwano ją po prostu Papier. Następnie możesz ponownie uruchomić serwer za pomocą

./startup.sh

I tak po prostu możesz wrócić do budowania!

Krok 6: Podłącz diody LED

Podłącz diody LED
Podłącz diody LED
Podłącz diody LED
Podłącz diody LED
Podłącz diody LED
Podłącz diody LED

Czas dodać trochę świateł! W tym momencie serwer zaczyna stać się czymś więcej niż tylko odpylaczem za monitorem. Ten krok pokaże Ci, jak przylutować i podłączyć Neopixel Jewel do Raspberry Pi, a następnie zainstalować oprogramowanie potrzebne do uruchomienia diod LED. Wkrótce potem już nigdy nie będziesz musiał się zastanawiać, czy ktoś czeka na grę z Tobą online, ponieważ Twój serwer powie Ci o tym jednym spojrzeniem!

Neopixel firmy Adafruit to fantastyczne diody LED. Są RGB, co oznacza, że mogą świecić w dowolnym kolorze. Są adresowalne, co oznacza, że możesz użyć poleceń oprogramowania, aby zmienić ich kolor, kiedy tylko chcesz. Więcej informacji na temat współpracy Neopikseli z Raspberry Pi znajdziesz w oficjalnym przewodniku Adafruit.

Jewel posiada 7 diod LED, które zapewnią nam mocny, jasny kolor. Jest też pięć punktów styku lutowania, ale będziemy używać tylko trzech. Zdecydowanie zalecam użycie trzech różnych kolorowych przewodów, aby uniknąć ich pomylenia podczas późniejszego podłączania ich do Pi. W moich przykładowych zdjęciach użyłem czerwieni, czerni i brązu.

Przed rozpoczęciem tego kroku będziesz chciał całkowicie wyłączyć Raspberry Pi. Wprowadź te polecenia, a następnie odłącz zasilanie Pi.

ekran -r minecraft

zatrzymać

wyłączanie sudo -h teraz

Odetnij trzy żeńskie przewody GPIO, na tyle długie, aby podczas lutowania było wystarczająco dużo przewodów do pracy. Zawsze możesz zapętlić nadmiar, tak jak ja. Ostrożnie przylutuj przewody do styków na Jewel. Następnie podłącz złącza żeńskie do pinów GPIO Raspberry Pi:

PWR do pinu 1 = 3,3V

GND do pinu 6 = masa

IN do pinu 12 = GPIO18

Gdy Jewel jest na miejscu, możesz ponownie podłączyć Pi i użyć Putty do podłączenia i zainstalowania oprogramowania LED za pomocą następujących poleceń. Uważaj na miejsca, które mogą wymagać wpisania Y, aby kontynuować instalację.

sudo apt-get install build-essential python-dev git

sudo apt-get install scons

sudo apt-get install swig

klon git

cd rpi_ws281x

szyderstwa

Ważne ** W następnym kroku zrobimy mały dodatek do biblioteki neopixel. Jest to konieczne, aby uniknąć błędu pamięci, który doprowadzał mnie do szału przez kilka dni. Bez tego diody będą działać przez kilka godzin, a następnie przestaną się poprawnie aktualizować. **

cd pyton

python setup.py build

sudo nano build/lib.linux-armv7l-2.7/neopixel.py

Użyj strzałki w dół, aby przewinąć obok wiersza, który mówi class Adafruit_NeoPixel(object):. Niedaleko znajdziesz sekcję z niebieskim tekstem, która mówi def _cleanup(self). Skopiujesz do tego następującą linię dokładnie tak, jak pokazano na powyższym zrzucie ekranu.

ws.ws2811_fini(self._leds)

I jeszcze raz musimy zapisać zmiany za pomocą ctrl-x, Y, enter.

cd ~

cd rpi_ws281x/python

sudo python setup.py zainstalować

Następnie musimy podać plikowi testowemu liczbę posiadanych diod LED, a następnie możemy je zapalić!

przykłady cd

sudo nano strandtest.py

Znajdź wiersz, który mówi LED_COUNT = 16 i zmień go na LED_COUNT = 7, a następnie ctrl-x, Y, enter, aby zapisać.

sudo python strandtest.py

Jeśli wszystko poszło dobrze, właśnie oślepiła cię błyskająca tęczowa eksplozja. Kiedy znów zobaczysz, naciśnij ctrl-c, aby zatrzymać światła. Diody nie zgasną, ale przestaną migać i na razie wystarczy.

Krok 7: Zaprogramuj diody LED, aby sprawdzić stan serwera

Zaprogramuj diody LED, aby sprawdzić stan serwera
Zaprogramuj diody LED, aby sprawdzić stan serwera

Po zainstalowaniu i przygotowaniu naszych diod LED nadszedł czas, aby zareagowały na serwer. W szczególności sprawimy, że będą wskazywać aktualną liczbę graczy na serwerze:

Gracze = Ruda

  • 0 = Czerwony kamień
  • 1-2 = Żelazo
  • 3-4 = Złoto
  • 5-6 = Szmaragd
  • 7-8 = Diament

Jeśli serwer nie jest uruchomiony, Oreblock będzie węglowy (diody wyłączone). A jako dodatkowy bonus, jeśli kontrola statusu nie może znaleźć połączenia internetowego, diody LED będą migać na żółto!

Aby pobrać liczbę graczy z serwera, zainstalujemy mcstatus od Nathana Adamsa, jednego z twórców gier Mojang.

sudo apt-get zainstaluj python-pip

sudo pip zainstaluj mcstatus

Następnie musimy skopiować dwa poniższe skrypty Pythona, mcled.py i ledoff.py, na nasz serwer za pomocą Filezilla. Po prostu przeciągnij i upuść dwa skrypty do pola po prawej stronie, jak pokazano na zrzucie ekranu.

Śmiało i przetestuj ledoff.py już teraz, abyśmy mogli wyłączyć diody, które pozostały włączone w poprzednim kroku.

sudo python ledoff.py

Podczas ręcznego uruchamiania skryptów w ten sposób otrzymasz komunikat „Błąd segmentacji”. To nierozwiązany problem w bibliotece Neopixel.py, który nie ma wpływu na to, co robimy.

Jeśli jesteś ciekawy, jak działają te skrypty, możesz je otworzyć za pomocą dowolnego edytora tekstu na komputerze lub za pomocą nano na ekranie terminala. Uważaj tylko, aby przypadkowo nie zapisać żadnych zmian, które mogą uniemożliwić im działanie!

Uwaga ** mcled.py zakłada, że używasz portu 26565 z mojego przykładu. Jeśli używasz innego portu, musisz zmienić skrypt, aby pasował do następujących kroków **

sudo nano mcled.py

Znajdź czerwoną linię tekstu, która mówi „# Get server player count”, a poniżej zobaczysz linię zawierającą zielony tekst „localhost” i numer portu obok. Zmień numer portu, aby pasował do twojego i jak zawsze zapisz zmiany za pomocą ctrl-x, Y, enter.

Aby otrzymywać ciągłe aktualizacje statusu serwera, powiemy Pi, aby co minutę uruchamiał skrypt mcled.py, a to oznacza ustawienie kolejnych kilku linii w crontab.

crontab -e

Zobaczysz dwie linie, które dodaliśmy wcześniej, aby zaplanować tworzenie kopii zapasowych i ponowne uruchamianie. Teraz dodamy jeszcze dwa:

* 6-20 * * * sudo python mcled.py

0 21 * * * sudo python ledoff.py

Pierwsza linia mówi Pi, aby uruchamiał mcled.py co minutę co godzinę między 6 rano a 20:59. Druga linia mówi Pi, aby wyłączył diody LED o 21:00. To osobista preferencja, ponieważ do tego czasu moje dzieci nie grają już w Minecrafta, mimo że serwer nadal działa. Mamy również OreServer w widocznym miejscu nad naszym telewizorem, a jasne światło staje się irytujące wieczorem. Możesz oczywiście zmienić te dwie linie, aby diody LED działały bez przerwy, lub wyłączyć się później, lub cokolwiek, co pasuje do twoich własnych celów.

Niedługo po zapisaniu zmian (nie masz już dość ctrl-x, Y, wejdź jeszcze?) skrypt zostanie wywołany i twój klejnot ponownie się zaświeci. Najprawdopodobniej będzie czerwony, co oznacza, że serwer działa, ale nie jest używany. Poświęć chwilę na uruchomienie Minecrafta i dołącz do serwera, tak jak robiliśmy to podczas naszego wcześniejszego testu. Wkrótce po dołączeniu diody LED powinny zmienić kolor na biały, a po rozłączeniu ponownie na czerwony.

Krok 8: Zrób skrzynię na rudę

Zrób skrzynię na rudę
Zrób skrzynię na rudę
Zrób skrzynię na rudę
Zrób skrzynię na rudę
Zrób skrzynię na rudę
Zrób skrzynię na rudę
Zrób skrzynię na rudę
Zrób skrzynię na rudę

Ostatnim akcentem, który to wszystko łączy, jest obudowa oreblock dla Raspberry Pi. Aby wykonać obudowę Ore, użyłem drukarki 3D Lulzbot TAZ6 w mojej lokalnej przestrzeni produkcyjnej, RiverCityLabs. Dodałem moje pliki. STL do druku dla podstawy i góry poniżej. Jeśli nie masz własnej drukarki 3D, sprawdź swój obszar pod kątem społeczności twórców, są wspaniali! Możesz też mieć lokalną bibliotekę lub szkołę, w której drukarki są dostępne publicznie. Istnieje również kilka usług drukowania 3D online, które mogą wydrukować i wysłać projekt. Albo możesz być kreatywny! Nic nie stoi na przeszkodzie, abyś zrobił pudełko z kartonu, stosu szarych klocków Lego lub czegokolwiek innego, co masz pod ręką.

Kilka ważnych uwag dotyczących konfiguracji plików drukarki 3D:

  • Wydrukuj plik bez żadnych zmian skalowania, aby upewnić się, że otwory montażowe są wyrównane z Pi.
  • Odwróć górę do góry nogami, tak aby otwarty koniec był skierowany do góry.
  • Pamiętaj, aby włączyć ustawienia podparcia, aby nawisy na ścianach nie były bałaganem.

Po zakończeniu drukowania możesz przymocować Pi do podstawy za pomocą czterech śrub 2,5 mm. Nie mogę znaleźć linku do rzeczywistego produktu, ale znalazłem je w 2 paczkach w Menards, co było o wiele lepsze niż zamówienie pudełka 100 z Amazon.

Usuń cały materiał podporowy z góry i wytnij arkusz pergaminu lub białej bibuły, aby zmieścił się do środka. Spowoduje to rozproszenie światła LED, co sprawi, że efekt świecenia będzie wyglądał milion razy lepiej niż pozostawienie otwartych otworów.

Podłącz adapter MicroUSB pod kątem prostym do portu zasilania, aby kabel wyszedł z tyłu obudowy obok portu Ethernet.

Teraz możesz ponownie podłączyć przewody zasilające i Ethernet, ustawić Top na miejscu i cieszyć się!

Krok 9: Podsumowanie, dodatkowe przemyślenia i podziękowania

Główna nagroda w Minecraft Challenge 2018

Zalecana: