Tomb Raider in Open Source

Das 1996 erschienene Tomb Raider, mit Lara Croft in der Rolle der taffen Archäologin, galt und gilt als Meilenstein des Action-Aventure. Seitdem sind etliche weitere Teile entstanden. Auch die alten Teile sind bei vielen Fans immer noch sehr beliebt.

Die Projektseite von Open Tomb

So existieren einige Open Source-Projekte rund um Tomb Raider. Eines dieser Projekte ist Open Tomb, welches unter opentomb.github.io zu finden ist. Das Ziel des Projektes ist eine Reimplementation der Engine welche für Tomb Raider 1 – 5 genutzt wurde. Lizenziert ist das Projekt unter der LGPL3 und damit freie Software.  

Neben dem OpenTomb-Projekt existieren weitere Projekte, wie das OpenLara-Projekt, welches die Engine im Browser nachbaut. Eine spielbare Demo existiert auf der Projektseite; der Quelltext ist auf GitHub zu finden. Lizenziert ist OpenLara unter der BSD-Lizenz, in der Zwei-Klausel-Version.

/dev/rdisk vs. /dev/disk unter macOS

Unter macOS werden Festplatten, SD-Karten und ähnliches im Dateisystem unter /dev/ als Gerätedateien eingebunden. Für eine SD-Karte könnte nun beispielhaft das Gerät /dev/disk2 vorhanden sein. Das Gerät ist ebenfalls über /dev/rdisk2 ansprechbar. Obwohl beide Gerätedateien das gleiche physikalische Gerät ansprechen, unterscheiden sie sich. So könnte ein Image mittels dd auf das Gerät geschrieben werden:

dd bs=1m if=filename.img of=/dev/rdisk2

Der Prozess ist nach relativ kurzer Zeit abgeschlossen. Wird die Operation nun mit dem Gerät /dev/disk2 durchgeführt:

dd bs=1m if=filename.img of=/dev/disk2

so verlängert sich die Dauer der Operation um ein Vielfaches. Hintergrund hierfür ist die technische Anbindung der jeweiligen Gerätedateien. Die Datei /dev/rdisk2/ ist näher an dem physikalischen Gerät, so das Änderungen direkt durchgeführt werden. Aus Sicht von Programmen, welche nicht im Kontext des Kernels laufen, ist der Zugriff auf /dev/disk gepuffert. Wird auf diese Gerätedatei geschrieben, so wird der Datenstrom in 4 KiB große Blocke heruntergebrochen, im Puffer gespeichert und erst dann (oder später) geschrieben bzw. gelesen. Wird hingegen /dev/rdisk2 genutzt, so wird der Datenstrom relativ direkt auf das Gerät geschrieben. Dies wirkt sich positiv auf die Geschwindigkeit aus und ist z.B. beim Schreiben von Images auf einen Datenträger von Vorteil.

Enpass 6 Portable in erster Beta erschienen

Anfang des Jahres 2019 erschien die Version 6 des Passwortmanagers Enpass. Leider erschien bis heute noch kein Release für die portable Version des Passwortmanagers. Immerhin gibt es sein knapp einem Monat eine erste Beta von Enpass 6 Portable.

Die portable Version von Enpass 6

Zwar sind in der Beta noch kleinere Fehler zu finden, allerdings kann die Version für den täglichen Gebrauch problemlos genutzt werden. Die Downloadlinks sind auf der entsprechenden Seite im Enpass-Forum zu finden. Die Beta ist für Linux, macOS und Windows verfügbar.

GameBoy-Adventures einfach entwickeln

Heute ist das dreißigjährige Jubiläum des GameBoy. Da wird der eine oder andere sicherlich nostalgisch an die gute alte Zeit zurückdenken. Nun kann auf dem GameBoy nicht nur gespielt werden was die Hersteller damals veröffentlichten, sondern auch eigene Entwicklungen für den GameBoy erstellt werden.

Das GB Studio unter macOS

Den meisten dürfte dies allerdings zu kompliziert sein. Schließlich ist der GameBoy aufgrund seiner begrenzten Ressourcen keine sonderlich einfache Umgebung. Mit dem GB Studio soll die Entwicklung trotzdem einfach möglich sein. Mithilfe des GB Studios ist es möglich grafische Adventure schnell und unkompliziert im Stil eines Game Makers zu erzeugen. Als Export-Formate werden ROMs und ein Web-Export unterstützt.

Das Spiele-ROM läuft im Emulator

Lizenziert ist GB Studio unter der MIT Lizenz. Da es auf Electron aufbaut, existieren Versionen für macOS, Linux und Windows. Der Quelltext des Projektes ist auf GitHub gehostet. Er ist unter der MIT-Lizenz lizenziert und damit freie Software. Die offizielle Seite des Projektes, auf der unter anderem die Dokumentation zu finden ist, ist unter gbstudio.dev zu finden.

Probleme mit NativeScript und Xcode

NativeScript ist ein Framework für die Entwicklung von plattformübergreifenden Apps. Um aus dem NativeScript-Quellcode eine lauffähige iOS-App zu generieren, muss unter anderem Xcode installiert sein. Dabei kann es im Zusammenhang mit NativeScript und xcodebuild zu folgender Fehlermeldung kommen:

xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

Gelöst werden kann dieses Problem auf dem Terminal mit dem Befehl:

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

Anschließend sollte bei der Ausführung des Befehls:

xcodebuild -version

folgende Ausgabe zu sehen sein:

Xcode 10.2
Build version 10E125

Damit ist das Problem gelöst und mit der Entwicklung mittels NativeScript kann fortgefahren werden.