|
@@ -0,0 +1,81 @@
|
|
1
|
+title: Blog
|
|
2
|
+post: OpenRaider fork
|
|
3
|
+date: 2014-03-22
|
|
4
|
+comments: true
|
|
5
|
+flattr: true
|
|
6
|
+twitter: xythobuz
|
|
7
|
+github: https://github.com/xythobuz/OpenRaider
|
|
8
|
+---
|
|
9
|
+
|
|
10
|
+## {{ page["post"] }}
|
|
11
|
+<!--%
|
|
12
|
+from datetime import datetime
|
|
13
|
+date = datetime.strptime(page["date"], "%Y-%m-%d").strftime("%B %d, %Y")
|
|
14
|
+print "*Posted at %s.*" % date
|
|
15
|
+%-->
|
|
16
|
+
|
|
17
|
+Hier war ja im (nicht mehr ganz) neuen Jahr bisher noch nicht so viel los.
|
|
18
|
+
|
|
19
|
+Der Grund hierfür ist eigentlich recht klar. Ich habe viel mehr Zeit, als mir eigentlich lieb ist, in mein neues Pet-Project gesteckt (bisher etwa 90h).
|
|
20
|
+
|
|
21
|
+Es geht um meinen Fork des seit 2003 inaktiven [OpenRaider][openraider]-Projekts, zu finden auf [GitHub][github] oder [hier auf meinem Server][zaphod].
|
|
22
|
+
|
|
23
|
+Nach einigen kleineren Änderungen, um OpenRaider-1.1 vom alten Sourceforge Projekt zu kompilieren, macht der Ersteindruck doch Freude. Immerhin, es scheint mehr oder weniger gut zu funktionieren.
|
|
24
|
+
|
|
25
|
+Sämtliche deprecated function calls wurden ersetzt und das Ergebnis lässt sich schon sehen.
|
|
26
|
+
|
|
27
|
+[![Screenshot 1 Old OpenRaider][screen2small]][screen2]
|
|
28
|
+[![Screenshot 2 Old OpenRaider][screen3small]][screen3]
|
|
29
|
+
|
|
30
|
+Allerdings war das handgemachte makefile build system noch nie sonderlich schön anzusehen. Außerdem kann man mit SDL1 auch niemanden mehr begeistern.
|
|
31
|
+
|
|
32
|
+Deshalb wurden SDL und SDL-TTF durch SDL2 und SDL2-TTF ersetzt, so wie ein komplett neues cmake build system gebaut.
|
|
33
|
+Die Versions Nummer wurde in dem Zug auf 0.1.2 erhöht.
|
|
34
|
+
|
|
35
|
+Des weiteren gibt es nun eine mehr oder weniger ausführliche [Doxygen Dokumentation][doxygen].
|
|
36
|
+
|
|
37
|
+[![Screenshot SDL2 OpenRaider][screen4small]][screen4]
|
|
38
|
+
|
|
39
|
+Das ist ja alles schön und gut, allerdings ist ein Großteil des Codes ein ganz schönes durcheinander. Hier sieht man vermutlich auch schön die Auswirkungen von [BitRot][bitrot].
|
|
40
|
+
|
|
41
|
+Darum habe ich einen mehr oder weniger kompletten rewrite begonnen. Der GUI-spezifische Code sollte nun eigentlich komplett sein, als nächstes steht das Portieren des alten Engine-Codes an.
|
|
42
|
+
|
|
43
|
+Ich denke allerdings, die neue GUI lässt sich sehen. Das Hauptmenü unterstützt rudimentäre Maus-Steuerung und die Konsole hat eine scrollbare output-history. Sowohl Menü als auch Konsole legen sich als halb-transparentes Overlay über die Spielwelt.
|
|
44
|
+
|
|
45
|
+[![Screenshot 1 New OpenRaider][screen5small]][screen5]
|
|
46
|
+[![Screenshot 2 New OpenRaider][screen6small]][screen6]
|
|
47
|
+
|
|
48
|
+Der rewrite befindet sich, at the time of this writing, in der [restructure][branch]-Branch.
|
|
49
|
+
|
|
50
|
+Ich idle auch die meiste Zeit im IRC-Channel `#OpenRaider` auf freenode. Einen [Webchat][webchat] gibts dafür ebenfalls.
|
|
51
|
+
|
|
52
|
+Interesse geweckt? Meine cmake Scripts bauen auf Mac OS X zwar ein wunderhübsches App Bundle, sind aber auf Linux komplett ungetestet. Vielleicht könnte sich jemand die Zeit nehmen, dafür zu sorgen, dass auch dort alles kompiliert?
|
|
53
|
+
|
|
54
|
+Im Prinzip spricht auch nichts dagegen OpenRaider auf Windows zu kompilieren. Da bin ich allerdings so wie so komplett überfragt, das ist nicht mein Fachgebiet... :)
|
|
55
|
+
|
|
56
|
+Also, bitte schickt Pull-Requests mit Verbesserungen auf [GitHub][github]. Danke!
|
|
57
|
+
|
|
58
|
+[![Screenshot Time Tracking][screen1small]][screen1]
|
|
59
|
+
|
|
60
|
+Der Time Tracking Screenshot kommt übrigens aus der ganz tollen Mac App [Timing][timing].
|
|
61
|
+
|
|
62
|
+ [screen1small]: img/openraider_tracking_small.png
|
|
63
|
+ [screen1]: img/openraider_tracking.png
|
|
64
|
+ [timing]: http://timingapp.com
|
|
65
|
+ [openraider]: http://openraider.sourceforge.net
|
|
66
|
+ [github]: https://github.com/xythobuz/OpenRaider/
|
|
67
|
+ [zaphod]: http://xythobuz.de/git/openraider/
|
|
68
|
+ [screen2small]: img/openraider_old_small.png
|
|
69
|
+ [screen2]: img/openraider_old.png
|
|
70
|
+ [screen3small]: img/openraider_old2_small.png
|
|
71
|
+ [screen3]: img/openraider_old2.png
|
|
72
|
+ [doxygen]: http://xythobuz.github.io/OpenRaider/
|
|
73
|
+ [screen4small]: img/openraider_sdl2_small.png
|
|
74
|
+ [screen4]: img/openraider_sdl2.png
|
|
75
|
+ [bitrot]: http://en.wikipedia.org/wiki/Software_rot
|
|
76
|
+ [screen5small]: img/openraider_new_small.png
|
|
77
|
+ [screen5]: img/openraider_new.png
|
|
78
|
+ [screen6small]: img/openraider_new2_small.png
|
|
79
|
+ [screen6]: img/openraider_new2.png
|
|
80
|
+ [webchat]: http://webchat.freenode.net/?channels=%23OpenRaider
|
|
81
|
+ [branch]: https://github.com/xythobuz/OpenRaider/tree/restructure
|