Martin Lantzsch
Software Entwickler
30. August 2011

Jamendo Songs Downloaden (Script)

30. August 2011 - Geschrieben von Martin - Keine Kommentare

Gestern habe ich ein kleines Script in PHP geschrieben, mit dem man Jamendo Songs inklusiv Cover Bild herunterladen kann. Das Script liest die Informationen auf dem Jamendo Server aus und speichert die Tracks in folgendem Format:

/[ALBUM NAME]/[INTERPRET] - [TITEL].ogg
/[ALBUM NAME]/[INTERPRET] - [TITEL]_cover.jpg

Hier das Script, evl schreibe ich noch einen Downloader in Java oder C#, falls ich demnächst ein wenig Zeit finde:

<?php
if(isset($_GET['id'])) {
	$trackID = (int)$_GET['id'];
	// get download url
	$trackUrl = file_get_contents('http://www.jamendo.com/get/track/id/track/audio/plain/'.$trackID.'/?aue=ogg2');
	if($trackUrl == false) {
		echo 'track id not availible!';
	} else {
		// get track information
		$trackTitle = (string)file_get_contents('http://www.jamendo.com/get/album/id/album/title/plain/'.$trackID.'/');
		$trackInterpret = (string)file_get_contents('http://www.jamendo.com/get/artist/id/track/title/plain/'.$trackID.'/');
		$trackAlbum = (string)file_get_contents('http://www.jamendo.com/get/album/id/track/title/plain/'.$trackID.'/');
 
		$location = './'.$trackAlbum.'/'.$trackInterpret.' - '.$trackTitle;
		if(!file_exists($trackAlbum)) {
			mkdir($trackAlbum);
		}
		// download track
		$track = file_get_contents($trackUrl);
		file_put_contents($location.'.ogg', $track);
		// download cover
		$trackCoverUrl = file_get_contents('http://www.jamendo.com/get/album/id/track/artworkurl/plain/'.$trackID.'/?artwork_size=400');
		if($trackCoverUrl != false) {
			file_put_contents($location.'_cover.jpg', file_get_contents($trackCoverUrl));
		}
 
		echo 'track download finished!';
	}
}
echo '<p><form action="jamendo.php" method="GET"><label for="id">track id:</label> <input type="text" name="id" id="id" /><input type="submit" value="download" /></form></p>';

30. Mai 2010

SimpleLD auf Github

30. Mai 2010 - Geschrieben von Martin - Keine Kommentare

Kurze Fortschrittsmeldung, den SimpleLD Source Code habe ich vor ein paar Tagen ins Git Repository auf Github.com gepusht.

Open Source Software

Derzeit sind die Core Komponenten noch in Entwicklung, aber das Framework, ist bereits funktionsfähig, die Paket Schnitstelle funktioniert einwandfrei und diverse Hooks im Code, erlauben neuen Paketen das Framework zu erweitern. In den nächsten Tagen folgen einige Artikel, welche sich mit der Paketentwicklung für das SimpleLD Framework beschäftigen. Ein paar kleine Beispielspakete wie das „home“ Paket sind bereits Online.

>> SimpleLD auf Github

5. Januar 2010

Litotex BrowsergameEngine

5. Januar 2010 - Geschrieben von XxDennisxX - 6 Kommentare

Litotex, erreichbar unter http://litotex.de, ist eine OpenSource GameEngine, die vom FreeBG-Team entwickelt wird. Die Vorgängerversion ist auch unter dem Namen „Landkampf Lite“ bekannt, die ursprünglich vom Browsergame Landkampf, http://landkampf.net, entstammt. Wie bereits erwähnt ist der Quellcode unter der GNU General Public License v. 3 stehend OpenSource.

Funktionalität
Das FreeBG-Team ist bemüht, die GameEngine soweit wie möglich neutral zu halten. Manche Module eignen sich hierfür besser, andere wiederum schlechter. Doch Ziel des Projektes ist es, sich auf kein bestimmtes Genre zu fixieren.

Grundgelegene Funktionen:

  • 4 unterschiedliche Rassen, mit jeweils unterschiedlichen Gebäudearten, Funktionen, Kampfeinheiten und natürlich verschiedenen Parametern (z.B.: Bauzeit, Kampfstärke,..)
  • zur Zeit in 2 Sprachen verfügbar (Deutsch/Englisch)
  • in ACP erleichtert die Verwaltung des Spiels (z.B.: Einheiten-, Forschungs- & Gebäudeeditor)
  • Allianzsystem mit integriertem Forum
  • IGM
  • dynamisches Kampfsystem
  • Bauschleife für die Einheiten

Allerdings werden von Seiten der Entwickler weder für Gebäude, noch für Kampfeinheiten Bilder angeboten. Falls Interesse besteht, können diese gegen Entgeld von einem Grafiker erstellt werden (Icons, Kampffeld, Karte,…).

Entwicklung
Natürlich bietet das Team im Entwicklerforum Support für alle Anfragen, die ihre GameEngine betreffen. Modifikationen dritter Hand, die von fremden Anwendern programmiert und veröffentlich werden, werden nach unserer Überprüfung natürlich auf Wunsch eingebaut oder zum Download angeboten. Seit der Version 0.7 unterstützt Litotex auch Module, welche durch eine integrierte Modul Schnittstelle installiert werden können.

Systemvoraussetzung

  • Webspace mit FTP Zugriff
  • PHP ab Version 4.0
  • Eine MySQL Datenbank ab Version 3.5x
  • Folgende PHP Konfigurationen:
  • register_globals On/Off
  • safe_Mode Off

Bewertung
Dafür das Litotex noch in Kinderschuhen steckt, macht es bisher schon einen Sehr guten Eindruck, es wird zwar nach wie vor von einem Starken Strategiegenre geprägt, allerdings lässt sich dies durch das neue Modul System ausmerzen.
Auch wir werden uns auf kommende Versionen von Litotex freuen.