PortIO Mod für Minecraft
PortIO Mod für Minecraft Release status: obsolete [box doku] | |
---|---|
Description | {{{description}}} |
Author(s) | DeadDealer (deaddealer) |
Last Version | 0.1 |
License | "Minecraft" Copyright 2009-2011 Mojang AB, PortIO Mod Copyright 2011 DeadDealer |
PortIO Mod[Bearbeiten | Quelltext bearbeiten]
Das Spiel Minecraft hat mittlerweile eine große Anzahl an Modifikationen und Erweiterungen durchlebt. Als Bastler von Mikrocontrollerschaltungen war ich auf der Suche nach einem Mod, der es ermöglicht, reale Aufbauten mit dem Spiel interagieren zu lassen. Bis jetzt fand ich keinen entsprechenden Mod für so etwas (wo es doch für Arduino tonnenweise Sachen gibt).
Dadurch kam ich auf die Idee, meine bescheidenen Java-Kenntnisse etwas aufzufrischen und selbst eine Erweiterung zu machen.
ToDo[Bearbeiten | Quelltext bearbeiten]
Das Ziel soll es sein, in Minecraft eine (virtuelle) serielle Schnittstelle des Computers zu öffnen und über eines unserer Laborboards verschiedene Dinge zu tun. Als Einstieg möchte ich im Spiel einen Schalter betätigen, der über Redstone einen selbst erstellten Block aktiviert. Dieser Block sendet nun über COMx einen Befehl, der eine LED auf dem Laborboard einschaltet.
Als nächstes soll dies auch umgekehrt funktionieren. Ich betätige einen Taster auf dem Board und im Spiel soll ein Kolben angehoben werden (Kontakt über neuen Empfängerblock und Redstone).
Als vorläufiges Abschlussziel soll es möglich sein, über das Spiel bestimmte Dinge in den Laborräumen zu steuern, z.B. Licht. Anders herum soll eine Änderung in den Räumen auch Auswirkungen auf das Spiel haben (wird es im Vortragsraum heller, soll es auch im virtuellen Laborraum heller werden etc.).
Fortschritt[Bearbeiten | Quelltext bearbeiten]
13.09.20011: Ein erster Test ist gelungen. Mittels eines virtuellen Nullmodemkabels (com0com) und der RxTx-Bibliothek für Java ist es mir gelungen, mittels Klick auf meinen speziellen Block eine Nachricht an COM10 zu senden. über COM11 wird ein String empfangen. Wird der Block gelöscht, schließt sich automatisch die Verbindung. Ein setzen des Blocks öffnet die Verbindung erneut. | |
18.09.2011 Habe den Input-Teil komplett geändert. Die Thread-Methode verursachte eine zu hohe CPU-Last, wodurch auch Minecraft ruckelte und unspielbar wurde. Die neue Methode arbeitet eventbasiert und meldet sich nur, wenn wirklich etwas empfangen wurde. |
|
25.09.2011 In der letzten Woche habe ich eine Menge über grundlegende Sachen von Minecraft, MCP und ModLoader gelernt. Das Ergebnis ist, dass ich jetzt Blöcke und Items beliebig erzeugen kann mittels (vorläufigen) Rezepten. Ebenso werden bei ein- und ausgehenden Daten Partikel in oder aus dem Block befördert (werden später durch Nullen und Einsen ersetzt). |