Minecraft Banner im Browser erzeugen

In Minecraft gibt es seit einigen Versionen sogenannte Banner. Diese werden aus unterschiedlichsten Elementen erstellt. Aus diesen Elementen innerhalb des Spieles ein Banner zu erstellen, kann dabei unter Umständen ein wenig kompliziert werden. Einfacher geht es mit einem Banner Generator im Browser.

Ein erzeugtes Banner kann anschließend exportiert werden

Mit dem Banner Generatur welcher unter needcoolshoes.com/banner zu finden ist, kann sich ein Banner aus den unterschiedlichsten Mustern und Farben einfach zusammengeklickt werden. Anschließend kann dieser Banner in Form eines Kommandos exportiert werden. Daneben wird auch die Bauanleitung generiert, so das der Banner von Hand direkt im Spiel gebaut werden kann.

Webseiten aus der Wayback Machine herunterladen

Wenn man eine nicht mehr verfügbare Webseite aufrufen möchte oder einen älteren Stand einer Webseite benötigt ist die Wayback Machine vom Internet Archive stets zur Stelle. Das Internet Archive ist eine gemeinnützige Organisation, welche seit 2007 offiziell als Bibliothek vom US-amerikanischen Bundesstaat Kalifornien anerkannt ist.

archive.org/web/

Manchmal benötigt man einen Snapshot einer bestimmten Version der Webseite und möchte diesen nicht umständlich über das Webinterface der Wayback Machine herunterladen. In diesem Fall kann sich des Tools wayback-machine-downloader bedienen. Dieses Tool, welches in Ruby geschrieben ist, kann einfach über den Ruby-Paketmanager installiert werden:

gem install wayback_machine_downloader

Anschließend kann das Tool genutzt werden:

wayback_machine_downloader http://example.com

Damit wird der letzte gesammelte Snapshot heruntergeladen. Daneben existieren Option wie die –to Optionen um den Snapshot nur aus einem bestimmten Zeitraum zu holen. Da ich mehrere Snapshots einer Seite benötigte habe ich das ganze in ein Skript gegossen:

#sh

for i in `seq 127 1`;
  do
    # Define date postfix
    DATE_POSTFIX="28120000";
			
    # Linux (Linux date)
    #DATE=`date +%Y%m -d "$i month ago"`    
				
    # macOS (BSD date) 
    DATE=`date -j -v-${i}m +%Y%m` 
    
    # Add date postfix
    DATE=$DATE$DATE_POSTFIX
				
    # Create folder for snapshot
    mkdir $DATE
    cd $DATE

    # Download snapshot
    wayback_machine_downloader http://example.com --to $DATE

    # Leave folder
    cd ..
  done  

In diesem Skript wird durch das Skript 127 Monate in die Vergangenheit gereist und ein Snapshot der Webseite heruntergeladen. Das ganze läuft so lange durch bis das Ende der Schleife erreicht ist. So erhält man pro Monat einen Snapshot. Der Wayback Machine Downloader, dessen Quelltext auf GitHub zu finden ist, ist unter der MIT Lizenz lizenziert und damit freie Software.

Minecraft Kommandos zusammenbauen

Einfache Kommandos lassen sich in Minecraft mit ein paar Kenntnissen schnell zusammenbauen. Schwieriger wird es wenn man komplexe Befehle wie Items mit Verzauberungen oder Pfeile welche in eine bestimmte Richtung schießen erzeugen möchte. Hier kann man viel durch Trial und Error erreichen. Einfach wird es mit dem Generator-Tool MCStacker.

MCStacker in Aktion

Mit dem Tool ist es möglich sich schnell komplexe Befehle per Point & Click zusammenzubauen. Diese können anschließend übernommen und in Minecraft ausprobiert werden. Zu finden ist der Generator unter mcstacker.bimbimma.com.

Tests bei Maven überspringen

Wenn man unter Maven mittels:

mvn package

mal schnell ein Paket bauen möchte ohne das dabei die komplette Testsuite eines Paketes ausgeführt wird, kann dies durch den Parameter:

-Dmaven.test.skip=true

erreichen. Alternativ kann der Parameter gekürzt werden:

-Dmaven.test.skip

Komplett würde das ganze dann so aussehen:

mvn package -Dmaven.test.skip

Mono-Probleme auf dem Raspberry Pi

Auf einem meiner Raspberry Pi-Rechner läuft eine in Mono geschriebene Server-Applikation. Damit die Server-Applikation funktionierte benötigte sie natürlich die Mono Runtime. Diese kann unter Raspbian einfach mittels des Kommandos:

apt-get install mono-runtime

installiert werden. Als ich die Serverapplikation nach der Installation von Mono ausführen wollte erhielt ich allerdings folgende Fehlermeldung:

Missing method .ctor in assembly Melinda.dll, type System.Runtime.CompilerServices.ExtensionAttribute
Can't find custom attr constructor image: Melinda.dll mtoken ...

Dieses Problem ließ sich durch die Installation der Bibliothek libmono-system-core4.0-cil beheben:

apt-get install libmono-system-core4.0-cil

Im Anschluss erhielt ich bei einem erneuten Startversuch eine weitere Fehlermeldung:

Grapevine.Exceptions.Server.UnableToStartHostException occurred
An error occured when trying to start the Grapevine.Server.RestServer

In diesem Fall kam die Fehlermeldung vom REST-API Framework Grapevine. Allerdings war der Fehler nicht wirklich in der Bibliothek zu finden. Stück für Stück kamen weitere Fehlermeldungen wie diese:

System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.

zustande. Nach einiger Recherche war klar: auch in diesem Fall fehlten weitere Abhängigkeiten aus dem Mono-Framework. In diesem Fall half die Holzhammermethode; die Installation des kompletten Mono-Frameworks. Dazu wurde das Paket mono-complete mittels:

apt-get install mono-complete

installiert. Dieses nimmt ein paar mehr Megabyte als das Runtime-Paket in Anspruch, allerdings sind damit alle möglichen Abhängigkeiten installiert. Somit kann man sich auf die eigentliche Entwicklung und Ausführung der eigenen Applikationen konzentrieren, anstatt einer kuriosen Fehlermeldung nach der anderen hinter her zu jagen.