Samstag, 5. November 2011

Call of Duty Modern Warfare 3 - Analyse Bomben Szene

Seit Gestern ist ja nun die schöne Szene aus den neuen CoD bekannt und es ist auch gleich eine Diskusion darüber entflammt ob es zu weit gehe oder nicht. Vor weg, dies ist keine Bewertung über CoD an sich, ich spiele die Reihe seit dem 1. Teil und seit MW2 leihe ich mir die Teile nur noch aus der Videothek aus und spiele den SP durch.

So, dann wollen wir mal:

Was die Szene ja so kontrovers für einige macht ist der Grund, dass ein Kind stirbt. Ist es ein Tabu? Dürfen Kinder in Fiktion sterben? Je nachdem wie stark man beseitet ist, wird man es ablehnen oder nicht. Ich persönlich drehe nicht gleich komplett durch, stell aber immer die Notwendigkeit davon in frage. Ein Kind hat für uns immer eine Assoziation mit Unschuld, Unerfahrenheit und vor allem von Leben. Ein Kind in einem fikitiven Werk zu töten ist also immer mit Vorsicht zu genießen. Effektiv eingesetzt, kann es dem Leser/Zuschauer/Spieler einen Sinn von Hilflosigkeit bieten, dies erreicht man auch alleine dadurch, dass man den Zustand (Leben oder Tod) im unklaren lässt und die Sachen nur andeutet. Ein Beispiel wo sowas effektiv genutzt wurde, in einem Spiel, ist Silent Hill. Die Story ist von der Suche nach Sheryll angetrieben. Wir wissen nicht was mit ihr ist, ist sie tot, ist sie lebendig? Wir sehen hin und wieder jemanden, der wie sie aussieht aber es nicht sein kann. In Shattered Memories wird es soweit abgeändert, dass unsere Wahrnehmung über sie sich ständig ändert, was uns noch mehr im unklaren über ihr Schicksal lässt und somit unsere Sorge fördert, was alles deutlich unbequemer macht zu verdauen was kommt.

Ausgedehnt von dieser Grundlage, ist der Tod von Zivilisten in einer Kriegsgeschichte auch ein gern genommenes dramatisches Mittel, häufig um die unmenschlichkeit des Krieges und/oder des Gegners zu zeigen. Hier muss man vor allem sehen, dass Figuren in fiktiven Werken überzogene Abbilder der Realität sind. Was wir vermittelt bekommen sind also verzehrte Menschen, wie z.B. in den 2. Weltkriegsgeschichten, die Nazis als unmenschliche grausamme Monster, häufig ohne Gesicht dargestellt werden (siehe die vielen Truppen, die vermummt oder mit Gasmasken aufgesetzt unterwegs sind). Da ich hier nicht über 2. Weltkriegsgeschichten diskutieren will, nehme ich mal bezug auf die MW Gegner. In MW1 (weil ich da noch überhaupt auf sowas geachtet habe), sind unsere Gegner häufig vermummt, wir sehen höchstens noch die Augen aber selten bis gar nicht ein Gesicht. Die Gegner erscheinen dadurch leicht inhuman, was es uns leichter macht sie zu bekämpfen und zu hassen. Ich sollte doch lieber nicht hassen verwenden, da es ein ziemlich starkes Wort und eine starke Emotion ist. In einer allgemeinen Betrachtung auf ein Spiel sollte man sagen können, dass sowas unnötig ist, da die Gegner sowieso nicht real sind und eine Beschreibung von Geraden zwischen Punkten im Raum sind. Ich sehe dass so, da man die Szene nicht als aktiver Spieler, sondern passiv erlebt, sollte man es als Film betrachten.

Kommen wir nun zum eigentlichen Punkt des ganzen: In der Szene sehen wir wie eine Frau mit einem Kind (wir können von Mutter-Tochter ausgehen) spazieren geht, gefilmt von einer anderen Person (höchstwahrscheinlich der Vater). Das Kind sieht ein paar Tauben und rennt zu dem hin, damit sie aufgescheucht werden. Im Hintergrund fährt ein LKW aus einer Seitenstraße raus.  Die Mutter folgt und der LKW explodiert, die Person hinter der Kamera wird umgeworfen und man sieht eine Wolke ausströmen, wahrscheinlich Giftgas oder eine andere Art von Gas. Die ganze Szene spielt in London, da man eindeutig das Parlament mit dem Big Ben sehen kann.

Beginnen wir mal mit den einzelnen Schlüsselpunkten:

Die glückliche Familie in London zeigt uns eine Alltags Szene, die uns an unseren eigenen Alltag erinnern soll. Da wir die Person hinter der Kamera nie sehen ist dies nach allen was wir wissen unsere eigene Perspektive und somit die Menschen die wir sehen unsere Familie. Die Kamera selbst vermittelt uns, dass dies ein besonderer Moment ist, da man selbst heute nicht zwangsläufig jeden Quatsch aufzeichnet, also kann dies entweder ein "Unser schöner London Urlaub" Video oder ein "Der [Insert Number Here]. Geburtstag von [Insert Name Here]" Video sein.
Man versucht uns also aus unserer Defensive zu locken und uns zu zeigen, dass alles ganz Normal von sich geht. Der Zuschauer soll beruhigt werden und sich heimisch und glücklich fühlen. Wir identifizieren uns als Spieler mit der Person hinter der Kamera, womit die Sachen, die passieren werden umso persönlicher werden. Das die Szene als Video gehalten wird, stellt das was passiert also unsere Erinnerung da, was wir für später schonmal im Hinterkopf behalten sollten.

Das Kind, dass die Tauben aufscheucht, zieht uns noch weiter in die Szene herein. Wir kennen sowas auch aus unseren Fußgängerzonen wenn die Kinder gerne den Tauben hinter her jagen. Die folgende Mutter kommt entsprechend der Tochter hinterher um sie entweder wieder an die Hand zu nehmen um weiter zu gehen oder, damit sie verhindern kann, dass ihre Tochter vor den LKW rennt.
Wie schon beim 1. Punkt erwähnt, dient dies um uns zu entspannen, uns das Gefühl zu geben, dass wir dies erleben, indem auf vorhandene Erfahrungen/Beobachtungen zurückgegriffen wird. Diese Szene ist durchweg manipulativ vom Entwickler und soll uns empathisch mit den Charakteren, in der Szene verbinden (sry, für die Redundanz).

Der explodierende LKW zerstört nun die Idylle des Alltags. Etwas ist nicht richtig, was uns aus unsere ruhe reißt, die heile Welt zerstört. Das wir nicht direkt sehen wie die Frau und das Kind getötet werden, haben wir hier die Ergänzung in unseren Köpfen. Somit wird die Szene je nach Betrachter individuell grausammer. Was wir nun haben wäre ein legitimer Grund, warum jemand die Drahtzieher hinter dem Anschlag abgrundtief hassen sollte (hier ist das Wort tatsächlich gerechtfertigt). Wir hätten also etwas, wofür wir kämpfen können.
Was auch immer aufgebaut wurde, wird nun in einem Schlag zerstört. Bevor ich fortfahren kann, muss ich aber kurz auf meine Bilderquelle eingehen. Zu diesem Zeitpunkt war es mir nicht möglich das Video nochmal zu finden, desshalb benutze ich zur Bildanalyse eine Slideshow von Spieletipps, die aus dem Video genommen wurde, der Link zur Seite befindet sich am Ende des Blogs.

Also, die ganze Szene wird zerstört, wenn wir das vermutliche Giftgas/Nervengas/etc. sehen. Da dies so unmittelbar hintereinander passiert und wir davon ausgehen können, das die Person hinter der Kamera wahrscheinlich in Schock ist und wohl nicht gleich weggerannt ist. Wird sie nun ziemlich sicher tot sein. Dies ist nur eine Möglichkeit, da die Kamera unser PoV ist.

Nachdem wir soweit das ganze Betrachtet haben kommen wir nun zum eigentlich Problem am ganzen. Jeder Grund für das Kämpfen, jedes Ziel, was sich aus dieser Szene für die Person hinter der Kamera ergibt, wird durch den wahrscheinlichen Tod sofort ausgelöscht. Unsere sämtliche Beziehung zu dem geschehen wird eliminiert und wir sehen nur die Auswirkungen von Terror, was an sich schon schockierend ist und einen wünschen lässt, dass sowas nicht nochmal passiert. Leider war es das auch schon. Das zeigen des Todes dieser Menschen hat für uns keinen anderen Effekt als wenn wir die Ergebnisse in einer Nachrichtensendung gesehen hätten und hier stoßen wir auf meinen Kritikpunkt. Die Szene an sich ist kalkuliert und unnötig, da wir keine Verbindung mit dem im Endeffekt haben was passiert ist. Alles was ich oben beschrieben habe ist invalidiert gemacht, da unsere Person gestorben ist. Ich möchte zwar nicht den Vergleich machen aber wir haben einen Horror Opening Kill. Ihr wisst was ich meine, die Szene am Anfang von mehr als genug neueren Horrorfilmen, wo ein paar Menschen sterben, die wir erst kurz sehen, von denen wir nichts wissen aber von deren tot wir schockiert sein sollen und Angst vor den Mörder haben sollen. Leider funktioniert Spannungsaufbau nicht so. Wenn wir später durch London sprinten in CoD werden wir keinen Moment mehr an die Familie denken, da uns die Verbindung zu früh gekappt wurde. Lasst uns hier mal MW2 betrachten mit dem Einsatz in Washington DC. Wir sehen ein zerstörtes Washington ohne zu sehen wie es zerstört wird oder wie Zivilisten sterben. Mich persönlich hat der erste Anblick ziemlich tief getroffen, da ich mich zu diesem Zeitpunkt mit einem Ranger identifiziert hatte, der nur seine Heimat verteidigen will und nun mit ansieht wie die Machtzentrale in trümmern liegt. Da wir im Verlauf den Kontrast von heiler Vorortwelt zur zerstörten Großstadt haben, haben wir ein Ziel, für das wir kämpfen, das die alten Zustände wieder hergerichtet werden. Wir wissen nicht wie es um unsere Freunde und Familie steht, sind sie tot oder leben sie noch? Leider arbeitet selbst das Spiel auf einer zu geringen Informationsbasis, da es wieder nur kurzzeitig vorhält und man ziemlich schnell wieder im alten Trott ist. Etwas muss man den Entwicklern aber zusprechen, wenn wir schon MW2 und MW3 im Gespräch haben, wo in MW2 die Flughafen Mission unwichtig und eine kurze Videosequenz hätte sein können, haben sie in MW3 den aktiven Faktor rausgestrichen.

Lasst uns aber zurück auf das Stilmittel kommen, wie es auch gerne in Filmen verwendet wird. Menschen, auch Kinder, werden auch in Filmen getötet und da meckert ja auch dann kein Zuschauer drüber rum. Nehmen wir mal "Lord of War" als Beispiel. In dem Film sieht man eine Szene wo unser Hauptcharakter mit seinem Geld versucht aus einem Kriesengebiet zu verlassen. Dabei kommt es dazu, dass er heimlich beobachten konnte, wie ein paar Kindersoldaten zur Hinrichtung an eine Wand gestellt werden. Sein Bruder, der vorhatte das zu verhindern, wir vom Hauptcharakter aufgehalten. Diese Erfahrung lässt den Bruder langsam aber sicher abdriften und zuflucht im Drogenkonsum zu finden um die Erinnerungen an das und andere Taten zu verdrängen. Unser Hauptcharakter wird später im Film mit den Konsequenzen seiner Waffengeschäfte konfrontriert, wo er in einem Drogenrausch u.a. von Kindern, denen ein Arm abgesprengt wurde, gefragt wird, ob der Arm wieder nachwächst. Die Hinrichtung der Kindersoldaten findet off screen statt und man hört nur die Schüsse. Wo ist der Unterschied, da ja in beiden Situationen auch eine gewisse Hilflosigkeit befindet? (Ich weiß unterschiedliche Szenarien, usw.)
 In "Lord of War" wird der Hauptcharakter von diesen Ereignissen irgendwann mal eingeholt, die tat hat also eine Auswirkung auf spätere Handlungen und Erlebnisse. In CoD wiederrum ist es nur ein Avatar für ein großes Ereigniss, das man hätte auch anders lösen können. Nehmen wir mal als anderen Film, den Film "Enemy at the Gates". Hier haben wir Sascha, ein Junge der unseren Helden mit Informationen über seinen Feind versorgt, indem er als eine Art Doppelagent arbeitet. Sascha wird später im Film gehängt und diesmal sehen wir sogar den Leichnahm (aber nicht den Todeskampf). Saschas tot war eine Konsequenz der Handlung und eine grausamme Taktik des Feindes, wobei dieser Mord nicht einmal als zufällig oder hasserfüllt dargestellt wird, wir sehen in der initialen Szene zur Hängung, wie der Feind Sascha ruhig erklärt, wieso es so kommen muss und ihn sogar einen gewissen Respekt zu spricht. Hier haben wir wieder den Kontrast von Schocktot ohne spätere Bedeutung zu Andeutung und Konsequenz aus Handlungen.


Unter dem Strich muss ich sagen, dass dies jetzt eine sehr oberflächliche Analyse war und deutlich mehr im Material steckt. Ich will auch nicht das Spiel verurteilen für die Szene, da ich es nicht gespielt habe, vielleicht irre ich mich ja auch komplett und das Video ist z.B. ein Video von Soaps Familie, dann wäre dies der Anfang einer dramatischen Kurve, die sich durch das komplette Spiel ziehen könnte. Die Szene aber einzeln als solches ist nicht wirklich passend, da es genug andere Möglichkeiten gäbe, einen Anschlag darzustellen und dem Spieler mehr als nur den Grund zu geben: es muss gestoppt werden, weil es böse ist.

Fazit: Kann ich bevor ich CoD MW3 gezockt habe noch nicht ziehen aber eins muss man tortzdem sagen: Activision hat es wieder geschafft ihr Spiel in aller Munde zu bringen (obwohl es nicht wirklich nötig gewesen wäre).

Bilderquelle: Spieletipps

Mittwoch, 19. Oktober 2011

Ultima 1 - a snippet

Um gleich die erste Frage zu beantworten: Warum ist das kein Remembering? Rememberings sind Spiele, die ich als Kind sehr gerne und sehr lange gespielt habe, dieses Spiel spiele ich erst seit gut einem Monat und desshalb passt es nicht ganz wenn ich es als Remembering reinstelle.

So, Ultima 1, einer der Großväter des cRPGs wie wir es kennen. Ultima ist ein Spiel von Richard "Lord British" Gariott, den einige vielleicht noch durch Ultima Online oder Tabula Rasa bekannt sein oder als der Typ der der erste "Weltraum Tourist" war. Das Spiel selbst ist 1981 herausgekommen und 1986 rereleased als Ultima 1 - The first age of darkness. Veröffentlicht auf Apple II, Atari, C64, Dos, MSX und noch einige anderen Systemen hat es so ziemlich jede wichtige Plattform erreicht die es damals gab. Es makiert den Anfang einer RPG reihe, die die cRPGs nachhaltig prägen sollte und letztendlich mit Ultima IX doch unrühmlich zuende gegangen ist. Die gesamte Serie lässt sich in 3 Trilogien einteilen:
-Age of Darkness
-Age of Enlightment
-Age of Armageddon

Wie wir dem Sekundärtitel "The first age of darkness" entnehmen können handelt es sich hierbei wohl um den ersten Teil der Age of Darkness Trilogie.

Nachdem wir ein bisschen die Geschichte beleuchtet haben, wollen wir zum eigentlich Sinn des Blogs kommen, ich will euch mal ein paar Eindrücke von diesem Spiel geben und wer weiß, vielleicht interessiert es ja den einen oder anderen.

Zu Anfang die Story: Mondain, ein böser Zauberer, will die Weltherrschaft an sich reißen und sich desshalb ein Juwel der Unsterblichkeit erschaffen, womit er Unverwundbar gegenüber allem ist. Ihr, später in der Spielreihe der Avatar, habt euch vorgenommen ihn zu stoppen. Doch wie tötet man jemanden, der unsterblich ist? Dies ist ein sehr langes Abenteuer, wo ihr viele Dungeons erkunden werdet, letztendlich kommt ihr aber um eine kleine Zeitreise nicht herum um Mondain zu töten bevor sein Juwel fertig ist. Was aber soweit kommt will ich nicht alles spoilern, soviel sei nur noch gesagt, wenn ihr in den Weltraum fliegt, dann vergesst euren Raumanzug nicht.

Wie jedes RPG beginnen wir mit der Charakterentwicklung, wir vergeben zuerst unsere Attributspunkte, bestimmen dann ob Männlein oder Weiblein, wählen eine von 4 Rassen (Mensch, Zwerg, Elf oder Hobbit) und eine von 4 Klassen (Kämpfer, Magier, Kleriker oder Dieb) aus und dann braucht unser Held nur noch einen Namen.



Eure Entscheidungen in bezug auf Klasse, Rasse, Geschlecht werden eure finalen Attributswerte noch etwas ändern. Danach startet ihr mitten auf einem Feld mit einer Lederrüstung und einem Dolch (habe einen Dieb erstellt).



Das Erste was euch auffallen wird ist, das das Interface sehr minimalistisch ist und ihr nur Tastatur benutzen könnt. Ihr habt eure Hitpoints (Hits), euer Nahrungsvorrat (Food), eure Exp und euer Geld (Coin) in der unteren rechten Ecke des Bildschirms. Wichtig ist, dass ihr eure Nahrungsmenge im Auge behaltet, denn jeder Schritt auf der Weltkarte ohne Gefährt kostet Nahrung, ist die Nahrung auf 0 verhungert ihr auf der Stelle. Nach ein bisschen Erkunden findet ihr wahrscheinlich Schloss Britania, der Festung von Lord British. Das erste was ihr euch fragen werdet ist: Was ist meine erste Quest? Hier glaube ich, werden viele das Spiel beenden und nie wieder anfassen, denn ihr könnt zwar in jedem Schloss eine Quest erhalten, diese haben aber zuerst gar nichts mit der Story zu tun. An sich bekommt ihr ohne Handbuch lesen weder die Geschichte mit, noch ist es deutlich schwerer, das Spiel beim ersten mal zu steuern, da alle Befehle auf Tasten gelegt sind. E(nter) ist z.B. dafür da, Städte, Schlösser und Dungeons zu betreten und A(ttack) zum angreifen und ganz wichtig Q(uit) zum Speichern. Zurück aber zum Questen. Die Herrscher werden euch Aufgaben geben wie: Findet Ort XYZ, steigt hinab in den Dungeon ABC und tötet den dämonischen Gallertwürfel (kein Scherz).

Wer nun blauäugig in die Welt hinaus geht wird mehr als einmal den Sterbebildschirm sehen, denn ihr seit Level1 und damit ein Weichei. Also müsst ihr euren Arsch hochleveln (kennt man ja aus genug JRPGs). Dazu gibt es 2 Möglichkeiten:
a) Overworld Kämpfe mit wandernden Gegnern
b) Dungeons erkunden

Ich persönlich würde euch Option b ans Herz legen, da die Monster auf der Overworldmap doch schon ziemlich stark sind (vor allem wenn die Dragon Turtles auch noch hinzu kommen). Ihr werdet aber trotzdem früher oder später verletzt werden und jetzt kommt die nächste Frage: Wie heile ich mich? Hier ist der 2. Punkt wo viele aussteigen werden, denn es gibt keine Gesundheitstränke. Ihr bekommt Gesundheit zurück indem ihr den Königen Geldspendet oder ihr geht in einen Dungeon, tötet ein paar Gegner und kommt wieder aus dem Dungeon raus.


Ihr habt übrigens kein Toplimit für Gesundheit, d.h. ihr könnt selbst mir den original Weicheiklassen 9999 Gesundheit haben. Das Aufleveln in Dungeons bringt also den zusätzlichen Vorteil, dass ihr gleich gut Gesundheit und Geld bekommt. Geld werdet ihr auch brauchen, für neue Nahrung, Waffen und Rüstungen. Waffen und Rüstungen können übrigens brechen und sie werden es immer dann wenn ihr es nicht braucht, desshalb schleppt lieber einen größeren Haufen mit euch rum. Ist schon irgendwie awesome, ein Dieb, der mal so eben 10 Plattenrüstungen mit sich rumschleppt und 20 Lasergewehre... Lasergewehre? Ja, in diesem Spiel werdet ihr Lasergewehre finden (AWESOME!!!!).

Nun kommen wir auch zum eigentlichen Mean of the Game, dem Dungeon Crawling. Es gibt einen guten Haufen Dungeons, alle sehr Komplex und mit vielen Ebenen. Die Dungeons erkundet ihr in der First Person Perspektive. Die Dungeons und alle Kreaturen drinne sind Wireframe Renderings und werden für jeden Charakter komplett zufällig erstellt.


Unvorsichtige werden hier ihre erste harte Lexion lernen. Es gibt keine Automap, an sich gibt es keine Karte weder für die große Oberwelt und auch nicht für die Dungeons. Wenn ihr also nicht von Hand welche zeichnet, werdet ihr euch früher oder später verlaufen und dann vom nächsten Ballrog getötet werden oder verhungern. Es ist sogar ziemlich einfach die Orientierung zu verlieren, wenn man nicht auf die Ausrichtung des Charakters achtet, dafür wird am unteren Rand angegeben, ob ihr nach Norden, Süden, Osten oder Westen seht, was die Navigation erleichtert. In den Dungeons findet ihr aber neben Monstern und den Tod auch Schätze, geheime Räume und das eine oder andere nützliche Item und ihr werdet alles brauchen, wenn ihr die Welt retten wollt.



Hier will ich mal den kleinen Ausflug in die Welt von Ultima 1 beenden. Letztendlich ist das Spiel ein klassisches Abenteuer Spiel und im warsten Sinne des Wortes Open World, ihr könnt überall hin und für damalige Verhältnisse so einiges machen, Dungeons erkunden, Queste im Namen von Königen erledigen, in den Bars den Barden zuhören, eine Welt mit ihren Geheimnissen entdecken, Prinzessinen retten und nebenbei den nervigen Hofnarren umbringen und von Ladenbesitzern stehlen. Wenn ihr bereit seit, euch in die Steuerung einzuarbeiten und das Fehlen an Texturen und Animationen durch eure Fantasie auszugleichen und euch in ein Abenteuer zu stürzen, dann ist dieses Spiel doch einen Blick wert für die Old School fans von euch. Die erste und zweite Ultima Trilogie ist inzwischen bei Gog erhältlich und kommt zusammen mit Dosbox und sollte also ohne Probleme sowohl unter Windows und Mac laufen. Wenn ihr euch dann auch Karten machen wollt, empfehle ich einen einfachen Texteditor nebenbei offen zu haben und alle Paar Schritte die Karte zu aktualisieren. Denkt euch aber eine ordentliche Darstellung aus ;)



Und hier schonmal eine kleine Ankündigung, das nächste Remembering wird sich um ein Spiel von unseren guten Freunden von Bullfrog handeln.

Dienstag, 6. September 2011

Impression: Deus Ex: Human Revolution

So, ein weiteres Game ist nun von der Liste. Diesmal ist es der GotY Anwärter Deus Ex: Human Revolution. Es ist schon ein tolles Spiel aber ich erzähle euch wohl meine Eindrücke vom Spiel und ihr könnt danach noch schön etwas flamen.



Bevor ich anfangen kann muss ich wohl mit Square Enix anfangen, einen Verein, der mir seit einer Weile schon sauer aufstößt. Es ist für mich leider so, dass früher Square Enix für qualitative JRPG's steht. Wir verdanken ihnen u.a. Final Fantasy aber da fangen die ja schon seit Teil 10 mit dem zerstören der Reihe an, danke Jungs, ihr seit die Größten. Um noch ein paar weitere Verbrechen zu nennen hätten wir von denen noch (zumindest als Publisher) Kane & Lynch 2, Mindjack, Supreme Commander 2. Jedoch hier haben die Jungs etwas gemacht, was die bei einigen der anderen Titel hätten machen sollen, die klappe halten und die Profis den Job machen lassen. Jetzt aber zum Spiel.



Das Beste was ich über Deus Ex: Human Revolution (von jetzt an nur noch DE:HR) sagen kann ist, es ist erfrischend, das Schlechteste, es wurde nicht weit genug Gedacht bei verschiedenen Design- und Storyaspekten. Die erste Frage die man sich stellt ist, werden sie das Enviromentdesign von Blade Runner benutzen, die Antwort sieht man ja auf den Screenshots aber auch für die anderen Bereiche gilt, zum Glück nicht. Mich persönlich erinnert es teilweise an Neuromancer. Ihr bekommt schöne Stadtteile zu sehen wobei man schon erkennt ob man sich in den USA befindet oder in China oder wo anders. Man merkt aber auch Gebäude die anscheinend in jeder Stadt gleich sind vom aussehen und vom Aufbau her. Dies spielt eindeutig zu gunsten der Atmosphäre einer Welt, die von großen Konzernen regiert wird, so werden diese auch auf der Welt ihre spuren hinterlassen. Ein Nachteil gegenüber des ersten Deus Ex ist, dass man nur 3-4 Locations besucht wobei man den größten Teil der Zeit nur in 2 verbringt und die anderen Beiden erst ganz zum Schluss ganz kurz ins Spiel kommen. Etwas vermisst man auch die dunkleren Slumgebiete wie man sie in Deus Ex 1 hatte, die ja für die Welt das Gegenteil zum sonnigen Leben der oberen Schichten darstellen, sie sind zwar im Spiel integriert haben aber die gleiche Farbpalette was das Drama komplett aus dem Spiel nimmt.



Wo wir schon beim Thema Drama sind, muss ich sagen, dass der Spielentwickler sich nicht entscheiden konnte ob die Zielgruppe nun eine normale Bildung hatte oder dümmer ist als ein schimmliger Toast. Dies wurde mir besonders zum Ende des Spiels klar wo mit Vergleichen und Refferenzen umsich geworfen wurde und kurz darauf jeder Metapher, jedes Symbol, etc. erklärt wurde als ob der Spieler nicht von selbst auf die Bedeutung kommen würde. Hier hat der Schreiber echt bessere Arbeit leisten müssen. Was sich auch den manchmal aufgesetzt gekünstelt wirkenden Dialogen und der etwas zu auf tiefgründig getrimmten Endsequenzen auswirkt. Story mäßig baut das Spiel genug Mysterie auf, damit man am Ball bleibt und gibt uns sogar etwas Stoff zum nachdenken. Ich muss besonders loben wie sich die Welt nicht nur durch aktives Geschehen im Bereich der Kamera entwickelt, sondern wie sich auch außerhalb der Kamera die Welt aufbaut, dies erfahren wir durch Zeitungen und E-Mails. Fleißiges Erkunden und lesen wird also nicht nur mit EXP sondern auch mit interessanten Hintergrund zur Spielwelt belohnt.



Das Spiel selbst hat ein EXP System womit man quasi in den "Stufen" aufsteigen kann und dann neue Augmentierungen kaufen kann. Neben diesem System sind aber auch noch mehr Sachen im Spieldesign die schlicht und ergreifend 08/15 sind und einige sogar geradewegs fehl am Platz, wenn wir weiterhin davon ausgehen, dass aus den Geschehnissen in diesem Spiel sich nachher Deus Ex entwickelt. Manchmal glaube ich auch, dass es inzwischen eine Liste gibt, wo drauf steht welche Sachen alles drinne sein müssen, damit ein Spiel überhaupt auf den Markt geworfen werden kann und ohne diese Sachen sofort eine schlechtere Wertung bekommt. Was am stärksten auffällt sind Cover-System und regenerierende Gesundheit. Man kann besonders über den Aspekt der regenerierenden Gesundheit streiten aber ich persönlich finde, dass DE:HR deutlich eher eien Begründung dafür hat als so manche Military Shooter heutzutage. Die Diskusion Hardcore mit oder ohne Healthpacks ist aber ein Thema für einen anderen Blog. Wer die meisten EXP haben will, der kommt nicht ums schleichen herum und seine Gegner komplett auszuweichen, bzw. nicht tödlich auszuschalten. Das Schleichen wird super durch das Cover-System umgesetzt, so kann man elegant und präzise von Deckung zu Deckung wechseln und trotzdem den Gegner im Auge behalten, dafür gibt es von mir ein Lob.



Wovon mir aber ziemlich schnell schlecht wurde war die Steuerung. Ich spielte die PC-Version und die Steuerung hat ein paar kleine Tücken, die einige Elemente des Spiels erschweren oder sogar als solches fast schon unlösbar machen. Hier das Basisproblem, die Steuerung wurde für einen Controller gemacht und dann einfach nur auf die Tastatur gemappt, ohne zu berücksichtigen, dass eine nur binäre Signale geben kann und ein Controller mit dem Stick auch zu einem analogen Signal in der Lage ist. Die Gehgeschwindigkeit ist also neben dem Laufen knopf noch feinabstimmbar mit dem Controller, nicht mit der Tastatur, was muss man also machen? Man könnte die Geschwindigkeit an sich auf das Problemloseste maximal Maß einstellen oder man gibt noch eine Schleichtaste, bzw. man macht das Geduckte automatisch als die nötigste Geschwindigkeit. Man hat sich für das letzte Entschieden und es funktioniert auch, meistens, bloß nicht bei den Minen, die gehen immer noch hoch. Wie löst man das Problem? Wie in jedem modernen Shooter kann man über das Visier der Waffe zielen, was die Figur noch weiter verlangsamt, das reicht dann auch zum Glück. Hier war man schlampig aber das weitaus größere Problem kommt bei der Steuerung der Menüs. Ja hier gibt es einen Fehler der einen ziemlich in Schwierigkeiten bringt. Denn die Menüs weigern sich gerne mal die Mausauswahl anzuerkennen, bzw. hängt die Auswahl auch zurück oder wird nicht genau genug erkannt. Hier muss gefixt werden, denn die Menüs bedienen sich wirklich schrecklich und wenn man schnell hacken will oder schnell Sachen ausräumen will muss man eher gegen die Menüs als gegen die Gegner kämpfen.



Der größte Designschnitzer ist aber wieder im Storydesign. Mehrere Enden. Warum? Es kann nur ein richtiges geben, denn ansonsten kann Deus Ex 1 nicht so funktionieren wie es tut, also warum die Auswahl? Warum überhaupten Enden anbieten, die alle nachfolgenden Ereignisse invalidieren? Weil jedes Spiel mit auch nur einen Bruchteil RPG es braucht. Es sollte egal sein ob es jedes andere Spiel macht, wir arbeiten hier mit einer etablierten Kontinuität und das sollte man berücksichtigen, dann hätte das Storytelling noch besser werden können. Um ehrlich zu sein haben die Aktionen von Adam Jensen nicht wirklich die Größe um weiteren Welteinfluss zu haben, es läuft auf den simplen Kampf von 2 Konzernen gegeneinander hinaus und wird dann mit Verschwörungstheorien aufgemischt, ich habe 6 William Gibson Geschichten im Schrank neben mir stehen, wo es inhaltlich um genau das gleiche Thema gibt aber deutlich mehr impact auf die Welt haben. Dies fehlt hier auf lange sicht was eigentlich ziemlich schade ist, da ein Treffen mit dem was später mal J.C. Denton sein könnte sehr nice gewesen währe.



Um einen Abschluss zu finden muss ich sagen, dieses Spiel gehört zu den besten Spielen 2011 (das Jahr ist noch nicht vorbei und es steht noch gut was an) und es ist auch ein schönes Beispiel dafür, dass nicht alles immer nur in der Gegenwart oder sehr nahen Zukunft spielt. Die Story hätte noch etwas besser werden können aber besonders hervor zu heben ist, dass die Entwickler auf des zwanghafte Evolutionieren des Genres verzichtet haben und lieber bekanntes, ja sogar 08/15 Gamedesign genommen haben und es so implementiert haben, dass alles sehr natürlich, eingängig und vor allem berechtigt wirkt. Nichts ist gimmickhaft an den Feauteres und es macht dem original Deus Ex ehre. Welches der beiden besser ist, ist geschmackssache und man kann und sollte darüber streiten.

Sonntag, 4. September 2011

Rage: Landtagswahlen 2011 MV

Vorweg dies wird keine tiefe Analyse der Ergebnisse, der Parteien und den Entscheidungen bezüglich der Situation in MV, dies wird reine unverarbeitete Wut, die jetzt raus kommt.


Ein großer Teil der Landtagswahlen 2011 in MV ist nun gelaufen und ausgewertet, Rügen fehlt noch weil da der CDU ein Kandidat ausgefallen ist. Die Wahlergebnisse sagen schon einiges aus und es ist wohl eindeutig, dass die SPD in einer Koalition die Regierung stellen wird, politisch bleibt nur noch die Frage Rot-Schwarz oder Rot-Rot? Für einen MV-Bürger der sich tatsächlich für das Geschehen in MV interessiert stellt sich aber ein paar andere Fragen wie: warum? Warum? WARUM? und natürlich WARUM ZUR HÖLLE WARUM?

Warum ist die Wahlbeteiligung bei 52,8%? Warum ist die NPD schon wieder im Landtag? Warum wird spätestens Morgen wieder sich darüber aufgeregt, dass die Regierung nichts taugt und zwar von den 47,2% die nicht gewählt haben? Warum sollte gut die Hälfte von MV mal einen politischen Idiotentest machen, damit die wissen, warum man wählen geht? Bevor ich aber anfange einige Fragen zu beantworten hier mal kurz die Wahlergebnisse soweit:

SPD - 35,6% (+5,4)
CDU - 23,2% (-5,6)
LINKE - 18,4% (+1,6)
GRÜNE - 8,4% (+5,0)
FDP - 2,8% (-6,8)
NPD - 6,0% [WTF?!?] (-1,3)
OTHERS - 5,6% (+1,7)

Ziemlich eindeutig oder?
Jetzt aber mal der WTF?!? der Statistik, ich erinnere mich wie es fast schon einig durch MV ging, dass die NPD aus den Landtag raus muss und nun haben sie zwar einen Sitz verloren aber trotzdem sind die noch da. Hier mal ein kleiner Pro-Tipp an alle die die NPD raushaben wollten: Schwinkt eure faulen Ärsche aus euren Sessel und geht veredammt nochmal wählen anstelle RTL zu sehen, Salesch läuft euch nicht weg aber das ist ja wohl das letzte. Jetzt mal ehrlich von allen die nicht gewählt haben, hebt eure Hand wenn ihr mit den Ergebnissen nicht zu frieden seit. Seht euch jetzt mal an und fragt euch wie ihr das ändern könnt. Los kommt jetzt mal nachdenken, das Hamsterrad da oben mal antreiben, vielleicht wird der Raum ja heller. Euch gefällt die Regierung nicht, dann wählt eine, die euch gefällt. Vor allem eins noch, keine und das betone ich KEINE  Protestwahlen! Ihr könnt es nur falsch machen und niemanden ist geholfen, dann weint der kleine Jesus und das wollt ihr doch nicht. Verdammt ein Wahlgang dauert was zwischen 5 und 10 min. ihr seid rechtzeitig zum Ende der Werbepause wieder da. Was ist so schwer? Zettel nehmen Kreuze machen, ihr wisst diese Dinger die ihr auch als Unterschrift verwendet, in die Urne werfen, fertig. Schwer für euch ich weiß aber hilfreich und u.U. kann es sogar vorkommen das eure Interessen in der Politik vertreten werden. Viele Parteien bieten sogar ihr Wahlprogramm als einfache Version an, die nicht ganz soviele Wörter auf einen Haufen hat und dadurch nicht ganz so schwer für euch zu lesen ist. Ich weiß, ich weiß eine 10 Seiten Broschüre mit genug Wörtern um 3 Seiten auf Taschenbuchformat zu bedrucken ist für euch schon alle 3 Herr der Ringe Romane am Stück aber probiert es mal, soll helfen. Falls ihr danach so ein komisches Stechen im Kopf habt, keine Angst man nennt es nachdenken, es ist ganz natürlich und tut sogar richtig gut. Wenn ihr ein paar Zivis fragt werden sie es euch vielleicht sogar vor tanzen, dann müsst ihr noch nciht einmal lesen.


Ich sollte wohl jetzt aufhören, ansonsten steigere ich mich nur noch weiter in die Wut rein. Wisst ihr was, lest Bücher, überlegt was das Fundament der Demokratie ist und wenn ihr noch Zeit habt *zensiert*

Dienstag, 28. Juni 2011

Actionscript 3: Kollisionserkennung

Nun kommen wir mal, nachdem ich doch ziemlich beschäftigt war, zu einem der interessantesten und doch sehr schwierigen Themen, Kollisionserkennung. Die Theorie ist ja doch recht simpel, trivial ausgedrückt: Wenn 2 Objekte kollidieren, dann sollen sie irgendwas tun. Etwas komplizierter wird es nun, wenn man sich fragt: Wann kollidieren 2 Objekte mit einander?
Wieder trivial: Wenn die x- und y-koordinaten übereinander liegen. Frage: Welche x- und y-koordinaten?

Langsam wird einem bewusst, dass Kollision doch schwieriger ist als man es zuerst vermutet. Gerade bei Actionscript gibt es ziemlich viele Tutorials für Kollision, die alle mehr oder weniger funktionieren aber auch früher oder später über die Kollision mit unregelmäßigen Objekten stolpern. Hier würde ich eine Methode, die ich mal in einem Spielprogrammierungsbuch gelesen habe, empfehlen: Man teilt den Körper in einzelne Kollisionsquadrate ein. Kümmern wir uns aber nun um eine Methode, die ich von den bestehenden ausgehend entwickelt habe, die bei einer Stage mit vielen Objekten sehr effektiv arbeitet.

Theorie:
  • Kollisionsobjekte sind in einem eigenen Array gespeichert
  • zu jedem Kollisionsobjekt gibt es ein extra Objekt, dass alle Positionsdaten enthält
  • wir prüfen erst grob etwas kollidiert oder nicht
  • wenn es eine Kollision gibt, dann wird die Kollision fein geprüft, ob die Kollision auch wirklich stattfindet

Praxis:

Array mit Kollisionsobjekten:

var _stage:Array
Ein simples Array, dass alle nötigen Kollisionsobjekte beinhaltet.


Kollisionsdaten Objekt:

class StageDatas
{
private var _x:int;
private var _y:int;
private var _index:int;

public function StageDatas(index:int, x:int, y:int)
{
_x = x;
_y = y;
_index = index;
}

public function get x():int
{
return _x;
}

public function get y():int
{
return _y;
}

public function get index():int
{
return _index;
}

public function set x(x:int):void
{
_x = x;
}

public function set y(y:int):void
{
_y = y;
}

public function set index(index:int):void
{
_index = index;
}
}
Dies ist eine einfache Speicherklasse, die x-Position, y-Position ausgehend vom linken oberen Bildschirmpunkt speichert. index speichert den Index des Objektes innerhalb des Arrays mit den Kollisionsobjekten (_stage), damit nicht immer wieder neu danach gesucht werden muss, bzw. damit man die Daten schnell wieder finden kann.

Grobe Kollisionskontrolle

var hitObject:Sprite;
var data:StageDatas;
In hitObject wird unser aktuelles Testsprite rein geladen, in data finden wir alle nötigen angaben zu dem Sprite, da die Stage keine Positionsdaten speichert

for(var i:int = 0; i < _stage.length; i++)
{
   hitObject = _stage[i];
   if(!_activeObject.LastHit.hitTestPoint(_activePic.x + wOff,
       _activePic.y + hOff, true) || 
      !_activeObject.LastHit.hitTestPoint(_activePic.x +
       _activePic.width + wOff, _activePic.y + hOff,
       true))
   {
       //hier euren Code, wenn keine Kollision stattfindet
   }
   else
   {
      //hier kommt noch mehr Code
   }
}
Das erscheint jetzt etwas kompliziert. Die Idee selbst ist einfach, ich überprüfe alle möglichen HitObjekte gegen ein aktives Objekt, dass selber nicht im HitArray (_stage) ist. Somit verhindere ich Fehler durch eine Kollision mit sich selbst. hitObject speichert unser zu testendes Objekt und data die dazugehörigen Daten. _activeObject ist das Hauptobjekt, dass Kollidieren soll und wurde von mir extra definiert, ich werde euch den Aufbau ein anderes mal erklären, wichtig ist derzeit, dass es das letzte Objekt kennt, mit dem es kollidiert hat, das ist _activeObject.LastHit. Damit will ich Fehler vorbeugen, die entstehen können, wenn er auf das Objekt, mit dem er schon interagiert hat wieder interagiert obwohl es nicht notwendig ist. Zuerst teste ich ob die Kollision mit diesem Objekt überhaupt noch stattfindet. Für das _activeObject werden auch noch höhen und weiten Offset mit berücksichtigt.


Feine Kollisionsprüfung

else
{

   for(var i:int = 0; i < _stage.length; i++)
   {
      hitObject = _stage[i];
      if(_activeObject.LastHit != hitObject)
      {
         data = _stageData[i];
         if((_activeObject.LeftCollision.x == data.x + hitObject.width ||
             _activeObject.LeftCollision.x + leftOff == data.x + hitObject.width) &&
             _activeObject.LeftCollision.y >= data.y && _player.dx < 0)
         {
            //hier der Code
         }
         else if((_activeObject.RightCollision.x == data.x ||
                  _activeObject.RightCollision.x + rightOff == data.x) &&
                  _activeObject.RightCollision.y >= data.y && _activeObject.dx > 0)
         {
            //hier der Code
         }        
      }
   }
}
Die Feinabtastung ist etwas einfacher, da letztendlich nur auf Kollision gegen einzel Zonen am Objekt getestet werden. In diesem einfachen Beispiel kennt mein Objekt nur die Rechte- und die Linkekollisionszone. Gegen diese wird getestet, dabei wird darauf geachtet, dass nur immer gegen eine der beiden getestet und nicht gegen beide gleichzeitig, ansonsten kann es zu fehlern kommen. Dieser Code muss natürlich erweitert werden, wenn es mehrere Zonen gibt, hier lohnt sich sogar schon ein Array, wenn die Menge zunimmt und einfach das Array durchtesten.

Damit haben wir uns eine einfache Kollisionserkennung gebaut. Wie immer ohne Funktionsgarantie und auf eigene Verantwortung. Beim nächsten mal werde ich für euch eine Playerklasse aufziehen.

Wie immer viel Spaß damit.

Samstag, 4. Juni 2011

Unterrepräsentiertes Genre: SciFi

Wisst ihr was mich stört. Dass das Science Fiction Genre nur sehr schwach repräsentiert ist. Vielleicht bin ich nur nie in den richtigen Buchläden gewesen aber bisher habe ich festgestellt, dass SciFi gerne in ein Regal mit Fantasy geordnet ist und dann noch nur zwei bis drei Bücher sind. Ich übertreibe jetzt zwar etwas aber es ändert nichts am Kernproblem: Für eine komplette Wand Fantasy bekomme ich maximal ein kleines Regal Science Fiction. Warum? Warum kann ich mir tausendmal das gleiche Fantasy Buch nur mit anderen Titel kaufen aber wenn ich Science Fiction haben will, dann bekomme ich nur Perry Rhodan, Star Wars und mit viel Glück auch mal Star Trek oder Warhammer 40000. Das stört mich, es fehlt die Abwechslung. Ich weiß noch wie ich früher in den Regalen sowas gesehen habe wie: Neuromancer, Darkstar, Battletech: Dark Age, Jenseits des Universums, Letztes Kommando, etc.

Wieso gibt es so wenig neue Bücher in dem Genre? Auf der anderen Hand wuchern (schlechte) Twilight Kopien (und das will schon was heißen) wie Pilze überall und verdrängen den ganzen Rest. Bei Fantasy hat man ja noch Glück, dass kompetente Schreiber sich in bisherige Szenarien einreihen und dort die Welten ausbauen und stilvoll erweitern. Man findet dann doch noch mal ein Terry Pratchet, den man noch nicht hat oder eine interessante Geschichte über Schwertkampf und Zauberei oder übernatürliche Reisen durch die Welten eines kompletten Multiversums. Was finde ich beim Science Fiction: den 999999999 Band der Perry Rhodan Reihe. Hier muss ich sagen, dass ich noch nie Perry Rhodan gelesen habe, primär weil es nicht interessiert und will desshalb keine Wertung über die Qualität der Reihe abgeben. Heute habe ich dann noch ein Buch gesehen, dass in der Welt von Metro 2033 spielt und nicht vom Metro Autor ist. Das war dann doch schon ein bisschen was frisches neben den immer gleichen Büchern.

Meine Frage ist jetzt: Ist es wirklich so schwer Science Fiction zu schreiben oder ist es derzeit nur nicht einträglich? Ich respektiere schon die Autoren, die komplette Universen mit interessanten Welten und weitreichenden unbekannten Wundern erstellen können und liebe desshalb auch so sehr solche Geschichten. Vielleicht sollte ich selbst eine schreiben, nur um selbst mein Problem zu lösen. Wisst ihr was, ich glaube ich mache das und werde euch dran teilhaben lassen.

Bis dahin, bereitet euch auf etwas besonderes vor, denn ich habe absolut keine Ahnung wie man ordentlich eine Geschichte schreibt. :)

Samstag, 28. Mai 2011

Remembering: Arcanum: Of Steamworks and Magick Obscura

Jeder hat seinen persönlichen RPG Favoriten. Das RPG, an dem sich in Zukunft alle anderen RPGs messen müssen, um als gut empfunden zu werden. Für einige ist es ein Teil der Final Fantasy Reihe, für andere ein Teil der Ultima Reihe, andere wieder werden sagen, dass es Baldurs Gate ist. Für mich ist es Arcanum.


Ironischerweise ist es weder das erste RPG, das ich je gespielt habe, noch habe ich es bisher beendet. Trotzdem ist es das Spiel, dass für mich das ideal RPG darstellt. Die Frage ist nun, warum?

Für mich ist es das Spielgefühl, die Spielwelt, die Spielatmosphäre. Als ich es das erste mal gespielt habe, da habe ich noch nicht so viele RPGs gespielt, vor allem so gut wie keine der klassischen cRPGs und PnP sowie Tabletop kannte ich damals noch nicht. Desweiteren waren Steampunk und Cyberpunk auch noch unbekannte Settings für mich. Ich war also nicht darauf vorbereitet, was für eine Welt mich erwartet, was wohl auch gut so war, denn heutzutage gehe ich mit ziemlich hohen Erwartungen an so ein Szenario ran.

                    Künstler: http://browse.deviantart.com/?q=steampunk&order=9&offset=0#/d2o5unp


Die Welt von Arcanum zeichnet sich durch die 4 Gegensätze Technik-Magie, Gut-Böse und den Vermischungen beim aufeinandertreffen aus. Dies ist auch nicht einfach nur so zusammengeklebt, sondern eine richtige Gesellschaft entsteht. Wo in großen Städten Wesen leben, die sowohl Technik als auch Magie verwenden, zeigt sich auf dem Land je nach Ort eine gewisse Dominanz abzeichnet. Wo die Technik regiert sind die ansässigen Magieanhänger geschwächt. So soll man in einer Nebenquest für einen Magier eine Dampfmaschine zerstören, weil die Technik seine Macht behindert. Dieses gegenseitige Auslöschen der beiden Extreme spielt auch Part in der Charakterentwicklung. Es ist möglich einen Helden zu erschaffen, der sowohl Zaubern kann, als auch mit Technik umgehen kann, erwartet bloß nicht, dass er ein mächtiger Zauberer oder ein Technikspezialist ist, denn das wird euch das Spiel nicht ermöglichen, wegen der Weltdynamik. Charaktere die stark zu Technik neigen bekommen als Bonus eine Zauberresistenz, auch gegen die Heilzauber des Heilers. Dies ist mir, als ich damals das erste mal dieses Spiel spielte nie bewusst geworden. Zauberer auf der anderen Hand können zwar sehr starke Magie wirken und bekommen auf alle Magie verbundenen Sachen Boni, dürfen aber keine Technik verwenden, weder im Kampf noch in der Welt an sich. Selbst die Eisenbahn bleibt ihnen verschlossen.

                              
                                Magier bekommen keine Fahrkarten

Die Gut-Böse Ballance spielt eine nicht zu unterschätzende Rolle in der Begleiterwahl und wie ihre Begleiter auf sie reagieren. Eure Begleiter werden euch verlassen, wenn eure Gesinnung mit der ihren im Konflikt steht, manchmal sogar angreifen, in dem Versuch euch zu töten. Ihr könnt auch keine Begleiter aus der Entgegengesetzen Gesinnung anwerben. Die Welt reagiert auf eure Taten, was ja heut zu tage eigentlich schon Standard ist/sein sollte. Erwartet also als übelst Böser Charakter in einer Hochburg voller Paladine (Metaphorisch Gesprochen) kein warmes Willkommen oder sogar einen Kuchen.

Die Story ist non linear und verändert sich, soweit ich das beurteilen kann, nicht nur anhand von Gut-Böse, Technik-Magie, sondern auch danach, wem gebt ihr was, welche Quests löst ihr, welche verbockt ihr und kauft ihr dem Zeitungsjunge die neueste Ausgabe des Lokalen Fischwickelpapiers ab oder nicht. Hier kann ich euch leider nicht zu viel berichten, da ich erst am anfang eines kompletten Playthrough bin. Wie schon gesagt, dass letzte mal habe ich es vor Jahren gespielt und damals nicht kompletiert. Soviel kann aber gesagt sein: Jemand will euch tot sehen, dafür hat man einen Zeppelin, auf dem ihr Passagier wart, abgeschossen und versucht nun alles um euch tot zu sehen. Desweiteren scheint ihr die Reinkarnation irgendeines Elfen Messias zu sein, der irgendeinen Bösen töten soll (ja, der Geistliche zu Anfang, Virgil, ist sehr hilfreich in Bezug auf die heiligen Schriften), danke aber ich glaube ich halte mich da raus, was bisher als gültiger Storyverlauf erscheint.


Ganz am Anfang, der Zeppelin ist unten, man bekommt einen Ring, soll einen Jungen finden und hat auch noch seinen Drink verschüttet, toll

Wie jedes RPG ist natürlich der Kampf ein zentrales Element, hier gibt es mehrere Möglichkeiten: Nahkampf, Fernkampf, Magie, Wurfwaffen. Dazu haben wir die Wahl zwischen Rundebasiert und Echtzeit, wir können jederzeit mit einem Knopfdruck wechseln. Ich persönlich bevorzuge den rundenbasierten Kampf, da der Echtzeit zu hektisch ist. Alles läuft zu schnell ab und man kann nicht ordentlich den Kampf steuern. Der rundenbasierte Modus hat den Nachteil, dass die Anzeige der verbrauchten AP etwas verwirrend ist. Die Anzahl der AP, die abgezogen werden, werden in Orange dargestellt. Nun kann man eine Aktion auch machen, wenn man nicht genug AP hat, indem man Mana/Energie aufbringt. Dies wird in Rot angezeigt, die beiden Farbtöne sind leider zu ähnlich, so dass man es nicht so leicht sieht. Wenn im Kampf die Energie/Mana von einem Teilnehmer auf <= 0 fällt, dann wird dieser Kampfteilnehmer Aktionsunfähig, bis er wieder Energie/Mana hat, das gilt auch für die Gegner. Man kann die Energie/Mana sehr gut mit Angriffen mit Stumpfen Waffen reduzieren und so den Gegner erst Ohnmächtig kloppen und dann den Handlungsunfähigen Gegner erledigen. Trotzdem bleibt der Kampf sehr fordernd, da Unterschiedliche Gegner unterschiedliche Taktiken fordern. Eure Begleiter helfen euch zum Glück, die werden aber vom Computer gesteuert und agieren selbstständig, leider manchmal nicht ganz so helle wie man es gerne hätte.



Die Charaktererstellung erlaubt einen viele Optionen. Zuerst wählt man Geschlecht, Rasse, Hintergrundgeschichte. Wir haben unsere typischen 2 Geschlechte, männlich und weiblich, die sich in Stats und Storyverlauf unterscheiden, es hat also tatsächlich merkbare Auswirkungen anstelle von bloßer Optik. Als Rassen stehen uns: Menschen, Elfen, Halb-Elfen, Halb-Orks, Zwerge, Halblinge, Gnome, Halb-Oger zur verfügung, die sich abgesehen von den Attributen und Resistenzen auch schon in der Präferenz von Magie und Technik unterscheiden. Die Hintergrundgeschichte des Charakters ist optional und erlaubt nochmal die Stats zu verändern. Nun nur noch einen Namen und wir kommen zum eigentlichen Spaßteil, den Attributpunkten. Wir können nach jedem Levelaufstieg Attributpunkte verteilen, dabei nicht nur auf Attribute, sondern auch auf Fertigkeiten zum Craften, besseren Treffen mit bestimmten Waffenkategorien oder an sich bestimmte Kategoriefertigkeiten wie z.B. gesellschaftliche Fertigkeiten und/oder Zauber verteilen. Dies verändert dann auch die Ausrichtung des Charakters auf der Skala von Technik und Magie. Alleine an Zaubern haben wir 16 Schulen a 4 Zaubern, also insgesamt 64 Zauber. Diese reichen von simplen Licht Zauber bis hin zur Manipulation der Zeit und dem Beschwören von mächtigen Kreaturen. Von den 8 Attributen sind jeweils 4 für physische (linke Spalte) und 4 für magische Talente (rechte Spalte) zuständig, die entsprechend korespondierenden Attribute sind gegenüber gestellt, so dass man nicht ständig das über 100 Seitige Begleitwerk (ich liebe so dicke "Handbücher") auf zu haben.



Arcanum ist ein wirklich ausgezeichnetes Spiel und immer noch ein Beispiel für eine ausgeklügelte Spielwelt mit fantastischen Charakteren und unglaublich viel Spaß. Wer lust auf das Spiel hat, man findet immer noch Kopien online oder man kauft es sich auf gog.com für 6$. Es läuft unter Win7 64bit Problemlos, wenn man mit dem Parameter -doublebuffer startet. Wenn ihr also lusst habt, dann taucht ein in eine bezaubernde Welt, die mal was anderes ist als immer nur der gleiche schwere Trübsin der modernen cRPGs, ich bin jedenfalls schon am Playthrough und danach wird Icewind Dale hinterher geschoben :D

Vielleicht sollte ich einen Blog parallel über meine Spielerlebnisse machen, was meint ihr?

Mittwoch, 25. Mai 2011

Actionscript 3: PlayerClass

Wie ich schonmal gesagt hatte schreibe ich gerade ein Spiel mit Actionscript. Desshalb kommt jetzt auch etwas spezifischeres, diesmal werde ich euch zeigen, wie man eine effektive Datenstruktur für den Spieler anlegt. Es geht ersteinmal los mit der Theorie:

Die Frage ist "Wie gestalte ich meine Spielerklasse?". Man könnte ja einfach alles zusammen klatschen, also sämtliche möglichen Zustände, Bewegungsabfragen, Aktionen, Kollisionen, Grafiken, Animationen, etc. Dies ist jedoch keine gute Idee, eure Klasse wird sich mit soviel unnötigen Informationen aufblähen, so dass wir im Nachhinein nur noch sehr schwer die Übersicht behalten können. Desshalb werden wir Grafik von Logik trennen und heute ist auch nur der Logikpart dran, da ich die Grundlagen für die Grafik in meinem Eintrag über das Erstellen eines eigenen MovieClips abgehandelt habe.

Wir wollen in dieser Klasse mal die Grundlagen legen, woraus dann jeder seine eigene Klasse bauen kann und diese dann noch beliebig erweitern kann. Unser Rezept sieht wie folgt aus:
-Bewegungsgeschwindigkeit
-Bewegungsrichtung
-Hitpoints
-Inventar
-Fall

1.) Die Klasse

public class Player
{
}

Diesmal ist die Klasse von gar nichts abgeleitet, da das Objekt selbst niemals auf dem Spielfeld sichtbar ist. Für die Pen & Paper Fans unter euch, stellt es euch einfach vor wie ein Charakterbogen oder ein Datenblatt. Wir notieren hier nur alles notwendige, damit wir auf dem Spielfeld den Charakter was machen lassen können.

2.) Die Attribute

private var _tp:int;
private var _inventory:Array;
private var _dx:int;
private var _dy:int;
private var _fall:Boolean;

Das sind ja schon ein paar Attribute die wir benötigen und es werden je nach Spiel nur noch mehr oder stellenweise andere (wie z.B. das austauschen von _fall). Auffällig ist, dass ich sowohl jedes Attribut als private deklariert habe aber auch, dass jede Attributsbezeichnung mit einem _ beginnt. Das hat den Grund, damit wir später ganz genau wissen, welche Variable ist ein Attribut und welche existiert nur wärend eines Methodenaufrufs. Von oben nach unten gelesen sagen die Werte aus: Trefferpunkte, Inventar, Bewegungsrichtung und Geschwindigkeit auf der X-Achse, Bewegungsrichtung und Geschwindigkeit auf der Y-Achse, fällt der Spieler (interessant für Plattformer o.ä.).

3.) Der Konstruktor

public Player()
{
_tp = 100;
_inventory = new Array();
_dx = 0;
_dy = 0;
_fall = false;

createInventory();
}

Der Konstruktor arbeitet wieder ohne Parameter und initialisiert die Standardwerte für jedes Attribut, dieser muss bei mehr Attributen natürlich erweitert werden. inventory wird als leeres Array angelegt und mit der Methode createInventory() so weit gefüllt, wie ihr es vorgesehen habt.

4.) createInventory()

private function createInventory():void
{
var item:InventoryItem;

//hier kommt jetzt euer Inventory Code
//...
//...
//...

_inventory.push(item);
}

Hier muss ich anmerken, dass der Datentyp InventoryItem ein imaginärer Typ ist, diesen müsstet ihr erst als extra Klasse definieren, bevor ihr ihn verwenden könnt. Es ist also ein Dummy Bezeichner. Wie ihr nun euer Inventar macht ist euch überlassen, zum Schluss wird mit dem push Befehl euer Item in das Inventar gebracht. Hierbeiliefert der Befehl die neue Länge des Arrays zurück, dies ist aber derzeit für uns unwichtig.

5.) Getter

public function get TP():int
{
return _tp;
}

Einige werden sich jetzt fragen "Was ist ein Getter?". Mit hilfe einer Getter Methode können die Werte von Attributen ausgelesen werden, dies ist nützlich wenn viele Attribute als private oder protected gekennzeichnet sind aber ihr Wert für das Programm wichtig ist. Jetzt werden einige garantiert sagen "Das kann ich aber auch mithilfe von Public Attributen erreichen." und ja, ihr habt recht. Ich verwende lieber Getter, weil ich damit ein versehentliches Überschreiben des Wertes verhindern kann, da ein Getter nur Leserechte habt. Es ist also an der Zeit für jedes Attribut, dass für die "Außenwelt" wichtige Werte hat, einen Getter anzulegen, dass ist primär nervige Copy Paste Arbeit, danach wird es aber einfacher Fehler, die durch versehentliches Schreiben passieren könnten, zu vermeiden.

6.) Setter

public function set TP(tp:int):void
{
_tp = tp;
}

Der Setter ist das genaue Gegenteil zum Getter, er setzt Werte und kann keine Lesen. Hier müsst ihr euch wieder selbst bewusst sein, welches Attribut einen Setter braucht.

7.) Timer [optional]
Dieser Punkt ist Optional und desshalb werde ich nur ein Erklärung machen, anstelle eines Code Beispiels. Es kann sein, dass ihr getimte oder im Intervall wiederkehrende Aktionen des Spielers habt, dann brauch der Spieler natürlich auch dafür seine Timer, diese lassen sich einfach als Attribute deklarieren. Dazu eine private Methode als EventHandler und zwei public Methoden zum Auslösen und Anhalten des Timers. Der Timer wird wie alle anderen Attribute im Konstruktor initialisiert. Wenn ihr doch hierfür ein Codebeispiel braucht, dann lasst es mich wissen, dann werde ich euch ein vernünftiges nach liefern.


So, dass war mal was anderes. Eine Klasse, die komplett nur dazu da ist, Daten zu halten und keine direkte Veränderung des optischen Outputs zu erzeugen. Es ist halt "nur" euer Notizzettel aber ihr werdet merken, wenn ihr sowas benutzt, wie leicht sich dann Fehlerquellen einschränken und Vermeiden lassen. Stellt euch nur mal vor ihr hättet mehr Daten als ich im Verlauf dieses Beispiels angegeben hätte und das alles zwischen irgendwelchen Daten und Rechnungen für die Graphik. Das ist doch schon dann ganz schön unübersichtlich.

Wie imemr gilt: Das benutzen des gegebenen Quellcodes ist auf eigene Verantwortung.

Sonntag, 22. Mai 2011

Actionscript 3: DebugConsole

Dies ist diesmal eine etwas einfachere aber trotzdem wichtige Komponente. Jeder, der in Actionscript komplexere Animation, also Animationen, die mehr sind als ein fliegendes Quadrat, erstellt wird nicht selten mit Fehlern zu kämpfen haben. Gegen syntaktische Fehler muss jeder selbst vorgehen aber dafür haben wir ja einen Compiler(oder ist es sogar ein JIT?). Logik Fehler sind schwerer auszubügeln. Desshalb wird wohl jeder schonmal die "trace" Funktion missbraucht haben. Das grundsätzliche Problem damit ist, die Output Konsole wird ziemlich schnell ziemlich voll und wichtige Werte gehen in der Menge einfach unter. Desshalb machen wir uns mal eine OnScreen Debug Konsole. Dazu brauchen wir auch nicht viel:
-eine Klasse die von der Klasse TextField erbt
-zwei Input Methoden
-eine Löschen Methode

Wie immer gilt, dies sind nur BareBones, alles ist individuell erweiterbar und steht zu euren freien Verfügung. Ich werde am Schluss von meinem AS3 vorhaben alle Tutorials nochmal sammeln und auf www.studium-informatik.net zusammengefasst veröffentlichen.

Nun aber ran an den Speck:

1.) Die Klasse

public class DebugConsole extends TextField
{
}

ganz einfach und übersichtlich und es wird nicht komplizierter. Wir erben von TextField, da das eigentlich alles trägt was wir brauchen, nun fügen wir nur noch hinzu :)

2.) Der Konstruktor

public function DebugConsole()
{
}

Dies ist Ausnahmsweise mal ein leerer Standardkonstruktor.

3a.) Schreiben, die Erste

public function write(_text:String):void
{
this.text += " " + _text;
}

Diese Methode fügt dem bisherigen Text der Konsole neuen Text hinten heran. Vor dem neuen Text wird sicherheitshalber ein Leerzeichen eingetragen, damit wir keine Wortschlangen wie "DiesistdocheineabsolutunleserlicheAusgabewiemansienichtrichtigauswertenkann." bekommen.

3b.) Schreiben, die Zweite

public function writeLine(_text:String):void
{
this.text += _text + "\n";
}

Was fehlte uns beim 1.? Genau Zeilenumbrüche, das machen wir jetzt. Es ist quasi das gleiche in Grün, nur jetzt mit einem Zeilenumbruch hinten an dem Text dran. Kein Originaltext wird zerstört, dies gilt für beide Funktionen.

4.) Nun Löschen wir es wieder

public function clear():void
{
this.text = "";
}

Die letzte Methode der Klasse leert den kompletten Output, dies ist vor allem nützlich, wenn man ständig verändernde Werte von Variablen (wie die X und Y Koordinaten eines sich bewegenden Objektes) zu beobachten, ohne das ellenlange Texte entstehen. Es wird aber nicht wirklich der Text gelöscht, sondern nur der bisherige Text mit einem leeren String überschrieben. Hat aber den gleichen Effekt und frisst auch nicht mehr Speicher.


So, nun haben wir eine DebugConsole. Viel Spaß damit. Falls euch dass Tutorial gut gefallen hat, dann empfehlt mich ruhig weiter. Desweiteren gilt wie bei jedem Code, den ihr im Internet findet: Benutzung ist auf eigene Verantwortung

Sonntag, 15. Mai 2011

Impression from the board

Nach Stunden des Kampfes steht es Patt für beide Seiten. Die Lanze unter Lieutnant Blake steht der Lanze von Captain Seymore gegenüber. Blakes Lanze ist eindeutig von der gesamt Tonage unterlegen und die Scout Lanze unter Sergeant Alvarez ist zu weit entfernt. Verstärkung ist in den nächsten Stunden nicht abzusehen, beide Parteien stehen sich gegenüber. Blakes einzige Chance ist es die Stellung zu halten und zu hoffen, dass Alvarez bald zu ihnen aufschließen kann und seinem Rivalen in den Rücken fällt. Blake schaltet sein Kom ein: "Petersen, Lee, bei mir formieren!". Aus den Wäldern um Blake's Awesome herum kommen 2 weitere Mechs heraus, Sergant Petersen in seinem Grasshopper und MechWarrior Lee's Enforcer. Blake ruft sich die Karte des Gebietes nochmal auf die Anzeigen und studiert vorsichtig seine Optionen. Östlich liegt ein Berg, eine ideale Aufklärungs und Artillerie Stellung, westlich ist nur offenes Gelände. Im Norden liegt ein See mit sehr schwer passierbaren Gelände, wenn sie Seymore da hinein locken könnten, dann hätten sie den Bewegungsvorteil. "Lee, ich brauche Aufklärungsdaten über die feindlichen Kräfte. Positionen und Bewegungsrichtung, ich übertrage die letzte Bekannte Position auf ihren HUD." "Verstanden, Befehl wird ausgeführt." Lee's Enforcer verschwindet wieder im Wald, Blake sieht noch ein letztes mal auf die Karte.



MechWarrior Lee war gerade erst frisch von der Akademie und dies ist sein erster wirklicher Kampf und mit etwas Pech wohl auch schon bald sein letzter. Dieser Gedanke kreist aber nicht in Lee's Kopf, sondern nur die Erfüllung seiner Aufgabe. Um nicht gleich entdeckt zu werden schaltet Lee auf passive Radarabtastung und nähert sich dem Rand des Waldes. Auf einem kleinen Grashügel, nicht sehr weit entfernt sieht er den Umriss einer riesigen Gestalt. Er zoomt auf die Gestalt und kleine Schweißperlen bilden sich auf Lee's Stirn, denn die Gestalt ist ein Atlas, wahrscheinlich Seymore's Atlas. Hinter dem Atlas tauchen 3 weitere Umrisse auf, die eines Dragon, eines Dervish und eines Jenners. Lee zieht sich leicht in den Wald zurück um eine Sichtung zu verhindern und schaltet das Kom auf Kurzstreckenübertragung, in der Hoffnung damit eine Ortung seines Komsignals zu verhindern. "Lieutnant Blake, hier ist Lee, können sie mich empfangen?" "Lee, hier ist Lieutnant Blake, wie ist ihr Status?" "Lieutnant, ich habe Sichtkontakt mit dem Feind. Eine Lanze, 4 Mechs, schweres Chassis. Ich werde ihnen die Aufklärungsbilder senden." "Gute Arbeit Lee, suchen sie sich einen sicheren Beobachtungsposten und meiden sie jegliche Konfrontation, wir brauchen nicht noch mehr Verlusste als wir schon haben." "Verstanden."



Blake sieht sich mit faltiger Stirn die Bilder an. Der Atlas wird Probleme bereiten, wenn Alvarez sich endlich melden würde, könnten sie Versuchen den Feind in die Zange zu nehmen und hätten deutlich bessere Chancen. Genau in diesem Moment kam ein kurzes Kalken zusammen mit dem nahmen Alvarez über das Komm. Blake machte einen Komkanal auf und fing an zu senden: "Sergeant Alvarez, sind sie es, Alvarez, antworten sie!" Nichts, nur toten Stille kam über das Komm. "Alvarez, wenn sie da sind, dann melden sie sich!" Nach einer Minute, die wie eine Ewigkeit erschien, kam eine Antwort. "Lieutnant Blake, hier spricht Sergeant Alvarez. Ich kann sie hören." "Na endlich, Alvarez, wie ist ihr Status?" "Nicht so gut. Ich habe noch 2 weitere Mechs in der Lanze, alles leichtes Chassis." "Wir haben den Feind gesichtet, schweres und mittleres Chassis. Ich brauche ihre Positionsdaten." "Ich sende ihnen jetzt meine Position." Blake sah sich die Positionsdaten von Alvarez an. Alvarez befand sich nördlich von Blake, der Feind genau zwischen ihnen. "Alvarez, dies wird nicht einfach", Blake sah nochmal auf die kleine Karte auf einer seiner Anzeigen, "aber ich habe einen Plan." Blake erklärte Alvarez seinen Plan, fast schon im gleichen Moment meldete sich Lee über das Kom. "Lieutnant, der Feind hat mich bemerkt und nähert sich meiner Position, ich werde mich zurück ziehen." "Lee, fallen sie in Richtung meiner Position zurück, wir werden sie Unterstüzen, Alvarez ist endlich aufgetaucht." "Verstanden." 'Endlich', dachte sich Lee und zog sich langsam in die Wälder zurück. Blake wechselte nochmal auf Alvarez Komkanal, "Alvarez, wir wurden entdeckt, wir brauchen eine Ablenkung, sonst gibt es hier bald nichts mehr zu unterstützen."



"Sie sind im Wald. Hinter mir Formieren, wir werden sie jetzt ausräuchern." Captain Seymore schloss den Kom und setzt seinen Atlas in Bewegung. Er ist siegessicher, der Feind ist von jeglicher Verstärkung abgeschnitten und laut Aufklärungsberichten ist nicht mit großen Bedrohungen zu rechnen. "Captain Seymore, hier spricht MechWarrior Kanazawa." "Was haben sie zu berichten MechWarrior?" "Captain, in unserem Rücken wurden Feindaktivitäten berichtet, eine leichte Lanze mit 3 Mechs, haben wahrscheinlich gerade ihr Radar aktiviert." Seymore gefiel das gar nicht. Auch wenn es nur leichtes Chassis ist, sollte man nie einen Feind unterschätzen und er will in einem Zangengriff des Feindes enden. "Kanazawa, O'Rourke, kümmern sie sich um die leichte Lanze." "Verstanden Captain." "Wird gemacht." Seymore näherte sich dem Wald, hinter ihm der Dragon von Lieutenant Marks. "Marks, formation fächern, wir müssen diesen Wald etwas weiter abdecken." "Verstanden Captain, ich falle nach links ab." Seymore nähert sich der Baumlinie vorsichtig, auch wenn der Feind nicht die größte Bedrohung darstellt ist ein Kampf im Wald immer gefährlich. Aufeinmal bemerkte er zwischen den Bäumen eine Bewegung, er dreht den Torso seines Atlas und sieht einen Enforcer. 'Da bist du ja', denkt sich Seymor und visiert den Enforcer an. "Captain, Marks hier. Ich habe einen feindlichen Grasshoper, der den Wald verlässt, gesichtet, ich werde ihn verfolgen." "In Ordnung Marks, an meiner Position habe ich einen feindlichen Enforcer gesichtet." 'Und jetzt ist es vorbei für dich'. Er schaltet gerade die Laser auf, als aufeinmal von der Rechten Flanke her 3 PPC Strahlen in seinen Atlas einschlugen. 'Was zur Hölle?!' Aus dem Wald heraus folgte noch der Schuss eines Small Lasers. Seymore schlatet das Kom an. "Marks, der Feind hat schwereres Chassis als die Aufklärung berichtete, ich brauche sie hier, jetzt!"



Alvarez wies hektisch die einzelnen Bewegungskoordinaten zu. Der feindliche Dervish und der Jenner haben zwar auf ihr Ablenkungsmanöver reagiert, doch jetzt heißt es durchbrechen. Theissen, ein erfahrener Scout flankierte in seinem Cicada den Jenner und schaffte es mit seinen Lasern die beiden Lasersysteme des Jenners zu zerstören und weiter Richtung Lieutenant Blake's letzter Position zu stürmen. Alvarez schaltete das Kom an, "Jones, sie folgen Theissen." "Sir, ich kann sie doch nicht so einfach alleine lassen." "Jones! Tun sie was man ihnen sagt, ich werde hier schon alleine zurecht kommen." Auch wenn es Jones nicht gefiehl antwortete er, "Verstanden.", und folgte Theissen. Alvarez sah sich nun alleine dem Dervish und dem Jenner gegenüber. Er springt mit seinem Clint über den Dervish und schoss auf den Jenner, die AC5 traf die Pilotenkanzel und der Jenner fiel zu boden wie eine leere Dose. Nun musste er sich beeilen, der Pilot des Dervish schien ein Amateur zu sein oder zumindest ernsthafte Probleme mit seinem Mech zu haben. Alvarez sprinntet also den anderen beiden hinter her. Er erreichte gerade den kleinen Grashügel, der das Feld übersieht und inzwischen mehr verbrannte Erde als Grashügel war, als eine Explosion das Schlachtfeld erschütterte. 'Verdammt!', dachte sich Alvarez als er sah wie von Lieutenant Blakes Awesome der Fussionsreaktor explodierte.







An dieser Stelle wurde die Partie Battletech abgebrochen, da wir keine Zeit mehr hatten. Ich hoffe es war gut zu lesen images/smilies/m-smile.gif

Sonntag, 8. Mai 2011

Actionscript 3: Eigener MovieClip

Wer meinen Blog schon seit ein paar Einträgen liest, der weiß, dass ich Actionscript hasse aber trotzdem will ich es nochmal versuchen. Diesmal gehe ich jedoch noch methodischer vor und dass will ich mit euch teilen, desshalb wird in der nächsten Zeit für Actionscript 3 von mir ein paar Pattern, Konstrukte und Klassen kommen.


Unser heutiges Problem ist, dass wenn wir nicht mit Adobe Flash CS 5 oder ähnliche Adobe Flash IDE's arbeiten, werden wir feststellen, dass das anfertigen von Animationen als Movieclips irgendwo zwischen nervig und unmöglich liegt, ohne ständig SWF's mit der Loaderklasse zu laden und zu speichern. Desshalb werden wir heute etwas konstruieren, was zweckmäßig das gleiche wie ein MovieClip macht und selbst aber rein technisch gesehen keiner ist. Beginnen wir mit der Theorie:

Wenn wir davon ausgehen, dass wir die MovieClip Klasse immer nur dann brauchen, wenn wir Animationen abspielen wollen, dann können wir davon ausgehen, dass die MovieClip Klasse sowas ähnliches ist wie ein Array von Einzelbilder, die mit einer vorher festgelegten Verzögerung nacheinander angezeigt werden. Diese Bilder müssen wir nur noch auf unserer Leinwand darstellen. Wir brauchen also ersteinmal unsere Leinwand, hierfür kann man die Stage nehmen, ich persönlich bevorzuge aber einen Grafikkontainer, den wir auf der Stage platzieren.

1.) Grafikkontainer

public class MyMovieClip extends Sprite
{
}


Wir könnten rein theoretisch genauso gut von MovieClip selbst ableiten, ich bevorzuge hierfür jedoch Sprite, es ist also geschmacks Sache.

Jetzt wo wir unseren Grafikkontainer haben, brauchen wir unser Array für die Frames und um zu wissen, welchen Frame wir gerade darstellen einen "Zeiger", der unsere Position im Array kennt.

2.) Frames + Zeiger

public class MyMovieClip extends Sprite
{
private var _frames:Array;
private var _curframe:int;

public function MyMovieClip()
{
_frames = new Array();
_curframe = 0;
}
}



_frames stellt unser Frame Array da wo wir unsere Einzelbilder für die Animation speichern.
_curframe ist unser Frame Zeiger und beinhaltet unsere derzeitige Position im Array.

Ich glaube jeder sieht hier ein Problem, das Array ist leer aber der Zeiger hat schon eine Position im Array gespeichert und würde beim abrufen Fehler verursachen, desshalb ergänzen wir unsere Klasse um eine makeFrames Funktion, die unsere einzel Frames erstellen soll.

3.) makeFrames():void


private function makeFrames():void
{
var i:int;
var grenze:int = 5; //hier kommt eure max anzahl an Frames rein

for(i = 0; i < grenze; i++) { //hier kommt euer Algorithmus mit dem die Frames erzeugt werden rein } }


Ein einfaches Grundgerüst und wenn man hier geschickt arbeitet, dann sind alle Frames für die Animation in minimaler Zeit erstellt. Der einzige Nachteil ist, dass man wirklich jeden Frame per Hand machen muss, da standardmäßig kein Interpolieren oder ähnliches vorgesehen ist. Diese ganze Klasse entstand im Zuge der Entwicklung eines Spiels, wo die Frames der Spielfigur alle einzeln entstanden sind. Wenn ihr hier euren eigenen Algorithmus habt, hält euch nichts davon ab den zu implementieren.

So, die Frames sind alle da aber die Leinwand ist noch leer, das wollen wir jetzt ändern. Hierfür verwenden wir eine Funktion drawFrame(). Diese Funktion wird uns noch nützlich werden, wenn wir die Animation erst in Gang setzen.

4.) drawFrame():void

private function drawFrame():void
{
//letzter Frame (derzeit aktueller _curframe) von der Leinwand entfernen
this.removeChild(_frames[_curframe]);

//zum neuen Frame gehen und anzeigen
_curframe++;
if(_curframe >= _frames.length)
_curframe = 0;

this.addChild(_frames[_curframe]);

}

//im Konstruktor nach Aufruf von makeFrames();
drawFrame();


Der letzte Frame (noch derzeitig aktueller Frame) wird entfernt, dann wird der neue Frame berechnet und dargestellt. Man könnte jetzt Performance argumentieren, dass es doch schneller wäre einfach alle Frames zu zeichnen und nur den derzeit aktuellen sichtbar zu machen mit visible auf true und bei den anderen auf false. Ich bin aber für eine saubere Leinwand, damit existiert wirklich nur derzeit der Frame, der auch angezeigt wird und man muss nicht erst alle durchtesten ob auch wirklich alle anderen unsichtbar sind.

Jetzt wo alles gesetzt ist fehlt nur noch der Timer um die Animation zum laufen zu bringen.

5.) Der Timer

private var _animationtmr:Timer;

//im Konstruktor
_animationtmr = new Timer(1000/60, 0); //60 FPS, unendlich viele durchläufe


und EventHandler

//Handler Funktion
private function tick(evnt:TimerEvent):void
{
//einfach nur drawFrame aufrufen und der Rest erledigt sich von allein
drawFrame();
}

//im Konstruktor nach dem anlegen des Timers
//aufruf der Funktion mit jedem Tick, Funktionsname, useCapture, priority, weakBinding
_animationtmr.addEventListener(TimerEvent.TIMER, tick, false, 0, true);


und Startfunktion, die vom Benutzer aufgerufen wird.

public function play():void
{
_animationtmr.start();
}



Dies sind die Grundlagen der Klasse, die ich mir ausgedacht habe. Ihr könnt sie natürlich so machen wie ihr es wollt, ich will einfach nur einigen den Google Aufwand sparen, den ich hatte bevor ich mir das hier ausgedacht hatte. Viel Spaß damit, wie immer ist das Benutzen auf eigene Gefahr (wobei ich hier nicht wirklich das Potenzial sehe, dass euer Rechner abfackelt :P ) und ich garantiere keine 100% Funktionalität (jedenfalls funktioniert es bei mir fehlerfrei). Erweitern könnt ihr die Klasse natürlich wie ihr es wollt.

PS: Hier noch ein kleines Update, sobald ihr mit makeFrames eure Frames erstellt habt, müsst ihr noch mit this.addChild(_frames[0]) euren Startframe auf der Leinwand anzeigen, ansonsten kann es zu unvorhergesehenden Fehlern kommen, bis hin zum Absturz der Application.

Samstag, 23. April 2011

Lets Play Incomming + Crysis Review

So Leute, ich habe beschlossen ein Lets Play entweder von Baldurs Gate 1/2 oder Icewind Dale 1/2 zu machen, welches habe ich noch nicht bestimmt aber es wird kommen. Für alle die sich fragen: Aber was ist mit deiner Review zu Crysis 1/2?

Crysis 1: Schöne Grafik, nichts dahinter. Die Story ist nur ein Schatten dessen was mal angekündigt war (und das war schon nicht großartig aber zumindest schön cheesy). Ich will ehrlich sein, ich hatte bis zum Schluss keine Ahnung was passiert ist (zumindest wie alles zusammenhängt). Hier ist zu viel dem Schnitt zum Opfer gefallen, denn alles was sich irgendwo awesome angehört hatte ist der Techdemo gewichen. Die wohl größte Enttäuschung ist, dass die Techdemos das Ende des Spiels zeigen. Kein Scherz, ein riesiges Alien attackiert euer Schiff, ihr tötet es mit einem Deus Ex Machima und das Spiel ist vorbei. BULLSHIT! Ein Cliffhanger wie er im (schlechten) Buche steht. Es sorgt nicht dafür, dass ich den 2. Teil will, es sorgt dafür, dass ich das Spiel von meiner Platte verbanne, weil es mich einfach anpisst. Deswegen hört auf mit den Cliffhangern, wenn ihr zu faul seit die Story zu ende zu erzählen, dann macht euer beschissenes Spiel nicht. Die Technik des Spiels ist eine mittelschwere Katastrophe. Sie frisst zu viel Hardware und liefert neben schöner Optik gar nichts. Dass Spiel ist unausbalanciert, denn der Tarnmodus des Nanosuite ist ein KI-breaker. Ja, die KI kann den Tarnmodus nicht verarbeiten und stellt sich absolut bescheuert an. Wo wir schon bei der KI sind, sie ist schlecht, sehr schlecht, absolut bescheuert. Die Gegner in Doom 1 sind schlauer als die Gegner in Crysis. Von den 2 Bosskämpfen des Spiels lässt sich einer mit dem Tarnmodus ohne Probleme besiegen, da er dann keinen Widerstand leistet. WTF?! Gab es überhaupt einen Betatest für dieses Stück Scheiße? Ist niemanden aufgefallen, dass schimmeliger Toast klüger ist als die KI in Crysis? Leute, Qualitätsmanagement! Hört auf mit eurem PR gewäsch, dieses Spiel ist nicht wie ihr es verkauft NextGen, es ist PrehestorikGen. Es muss aufhören, jetzt! Gebt mir die Aliens die ihr versprochen habt! Denn die letzten 20 Minuten dieses viel zu langen Witzes sind die vorherigen stundenlangen Qualen nicht wert! Wieso habt ihr es wie eine Mistery Story aufgezogen? Wisst ihr wann so ein Storytyp arbeitet, wenn die Wendung zum Schluss nicht im Vorfeld bekannt ist. Jeder wusste, dass man gegen Aliens kämpft und über gefühlte 100h dieses Spiels deutet man die Aliens nur an und lässt die Charaktere.... *lacht über 30 Minuten* Entschuldigung aber dass ist immer noch zu lustig. Wir haben keine Spielcharaktere, da ich immer noch nicht den Namen irgendeiner der Figuren nennen könnte. Persönlichkeit <= 0. Eure Gefährten sind Kanonenfutter und werden zu schnell abgeschlachtet als man sich überhaupt an diese gewöhnen könnte. Aber hier kommt die Pointe, jeder Tod einer Figur wird als tragisch und emotional gespielt. Ja, sowas funktioniert doch immer. Jeder moderne Slasher verwendet doch diese Bewerte Dramatik und ist desshalb ein instant Classic. Nun aber zurück zum vorherigen ... lässt die Charaktere im dunkeln tappen. Für wie dumm haltet ihr uns? Wir wissen, dass es Aliens sind, wir wissen was sie vorhaben, wir haben ein Modell sogar schon gesehen als ihr eure Techdemos gemacht habt. Wisst ihr was, dass ist das einzige Alienmodell im ganzen Spiel... Ich brauch eine Minute *wirft Pillen gegen Nervenzusammenbruch ein* ... ja, ein Alienmodell, in einer Story wo Aliens die Welt angreifen. Die gesamtzahl der Gegnermodelle (unterschiedliche Texturen zähle ich nicht) beträgt 4 im gesamten Spiel. Nethack im Ascii Modus hat mehr Gegnermodelle als ihr. Battlefield 2 hat mehr Modelle für die Figuren als ihr. Prince of Persia The Sands of Time hat mehr Gegnermodelle als ihr. Jetzt überlegt mal was ihr falsch gemacht habt. Ok, ich muss wohl etwas beschleunigen, ansonsten sitzt ihr noch morgen hier. Also unterm Strich gilt: Scheiß KI, Scheiß Gameplay, Lineare Levels (obwohl uns offene Spielwelt versprochen wurde), Scheiß Extras, PR Lügen, Minderwertige Ware, Schöne Grafik.

Ich gebe diesem Spiel 1/10 Alienmodelle

Dieser eine Punkt kommt wirklich nur von der Grafik, denn der Rest taugt nichts


Crysis 2: Hat einen Onlineregistrierungs Kopierschutz also konnte ich es mir nicht leihen und nach dme was ich gelesen habe ist es noch schlimmer als Crysis 1 (was ich immer noch nicht glauben kann).


Wenn dies also die Zukunft der Shooter ist, dann kann ich darauf verzichten.

Freitag, 22. April 2011

Mindtwist: Wasserflaschen Paradoxon

Sei eine Wasserflasche gegeben.
Wenn die Flasche leer ist, ist die Flasche voll.
Wenn man die Flasche leert, dann ist die Flasche leer.


Aus den obenstehenden Bedingungen ist es möglich die Flasche für immer leer zu halten.

Dienstag, 19. April 2011

Denken tue ich was ich will, sagen tue ich es nicht I

Ich glaube einer der wichtigsten Rechte unserer Zeit ist das Recht auf freie Meinungsäußerung und daraus weiterführend das Recht auf freie Selbstentfaltung. Dies sehen auch viele andere als wichtigstes Recht an, leider missverstehen auch viele was damit gemeint ist. freie Meinungsäußerung bedeutet, dass es keine Regulierung beim äußern der Meinung gibt aber nicht, dass man sagen kann, was man gerade denkt. Viele würden sagen, dass sie kein Blatt vor den Mund nehmen, ich sage, ihr seit Idioten, die nicht wissen wie man seine Gedanken äußert ohne hier und da vielleicht etwas die Worte zu modifizieren. Rethorik ist wohl eines der mächtigsten Werkzeuge in unserer Zeit und es gibt genug Menschen, die es nicht einsetzen können. Denken tue ich was ich will, sagen tue ich es nicht. Jemanden der einen mal kreuzweise kann, kann man schwerer angreifen, wenn man es der Person nicht ins Gesicht sagt, sondern die Worte des gegenüber verbiegt. Geschickte Verzerrung von Wortgebilden sorgt für deutlich besseren Diskusionsfluss als wenn ihr unbeschönigt alles immer nur heraus bringt ohne Sinn und Verstand.

Donnerstag, 7. April 2011

.

Ich persönlich bin ein Mensch, der so genau Antwortet, wie er gefragt wird. Wenn man mir eine Frage stellt, die nicht genau genug ist, bekommt ihr also auch nur eine ungefähre Antwort. Nun habe ich etwas erlebt, dass ich gar nicht leiden kann und zwar gab es eine Frage über einen Kanal, der an alle gerichtet ist, die ihn abonniert haben und die Frage war im Stil "Ich habe hier keine Ahnung von gar nichts, wer kann mir helfen?". Wie wohl jeder schon bemerkt hat ist die Frage absolut ungenau, ich weiß nicht wo und was das Problem ist, das Thema habe ich hier mit absicht nicht genannt. Nun ist jedes beliebige Thema beliebig komplex und kann beliebige Probleme aufwerfen. Habe nun eine Antwort auf die Frage gegeben, die so universell gehalten ist, dass es vielleicht sogar die richtige Antwort anschneidet, mein Lohn, ich werde von der Seite angefahren, absolut grob. Nun gut, vielleicht habe ich es provoziert und ich erwarte nicht, dass man mich immmer nur mit Watte einpackt aber vielleicht sollte sich der Fragesteller 2 Sachen überlegen:

1.) Wenn ihr nicht wollt, dass eure Frage jeder lesen kann und damit das potenzial für unerwünschte Antworten kommt, dann stellt eure Frage nie in einem öffentlichen Kanal.
2.) Wenn ihr Hilfe bei etwas braucht, dann stellt auch konkrete Fragen und nicht irgendwas nichts sagendes.

Also in Zukunft stellt ordentliche Fragen und etwas das auch ich hätte beherzigen sollen, gebt keine unnützen Antworten.

Dienstag, 5. April 2011

Remembering: Mechwarrior 4

Kommt und setzt euch, denn ich will euch eine kleine Geschichte erzählen, an die ich mich erinnere als wäre es erst Gestern gewesen. Es war das Jahr 2000 und das Spiel "Mechwarrior 4 Vengeance" war erschienen. Ich habe es mir gekauft und durchgespielt, ohne Joystick, nur über die Tastatur. Damals habe ich mir eine spezielle Tastatenbelegung gezimmert, mit der der fehlende Joystick fast nicht ins Gewicht viel. Erst später hatte ich von einem Freund seinen Microsoft Sidewinder 3D Pro geschenkt bekommen, ein Joystick für den ich bis heute keinen würdigen Ersatz gefunden habe.





Mein geliebter Joystick

Was macht das Spiel so besonders für mich, selbst heute noch? Die ganze Reihe ist in ihrer eigenen Art einzigartig, selbst heute noch. Das Motiv, dass gigantische Kriegsmaschinen auf einem Zukunftsschlachtfeld gegeneinander antreten ist zwar nicht neu aber kaum ein Spiel schafft es wirklich das Pilotengefühl zu erzeugen wie dieses Spiel. Selbst in den kleinsten Mechs wie einen Raven oder ein Osiris habt ihr das Gefühl, ihr könntet es mit der Welt aufnehmen. Noch schöner wird es dann in einem 100 Tonnen schweren und bis an die Zähne bewaffneten Atlas. Bäume werden wie Grashalme zertreten, feindliche Fahrzeuge sind nur noch so gefährlich wie eine Fliege und zerkratzen höchstens noch den Lack, ganze Armeen bringen nichts gegen euch. Und dann kommt der Gegner selbst mit Mechs und hier beginnt der eigentliche Spaß des Spiels Mechkämpfe. Egal ob Duelle oder ausgefeilte Schlachten, hier geht es zur Sache. Lasersalven fliegen durch die Luft, Maschinengewehre Knattern und Raketen schlagen ein. Wenn euch ein guter Schlag trift wackelt das Bild, der Torso wird je nach stärke verdreht. Jeder Treffer fängt an euch weh zu tun, denn euer Mech wird sichtbar und messbar zerschossen. Ihr seit natürlich nicht allein Unterwegs, euch begleiten bis zu 3 Kameraden sogennante Lanzenkameraden, die selbstständig Ziele wählen, denen ihr aber auch Befehle geben könnt. Hier werdet ihr merken, dass man für dieses Spiel einen 24 Tastenjoystick braucht, denn standardmäßig sind alle Funktionstasten von F1 bis F12 belegt. Einmal um den Lanzenkamerad zu wählen, danach die Befehlskategorie und dann den Befehl.


You are so fucked

Wie unterscheidet sich nun der Kampf von Kämpfen in anderen Actionspielen? Ihr braucht Taktik. Nicht nur, dass ihr in der Regel in der Unterzahl seit. Ihr habt in einigen Missionen nicht die Möglichkeit euch zu reparieren und Munition nachzufüllen also überlegt euch auf was ihr mit was feuert. Ihr greift wohl keine Panzer von vorne an sondern versucht auf die schwächeren Stellen der Panzerung wie z.B. der Heckpanzerung zu schießen, ähnlich ist es hier auch. Jeder Mech kann strategisch zerschossen werden, in dem ihr Teile weg schießt und dadurch die Waffenzahl des Gegner reduziert. Desweiteren können Mechs z.B. reflektierende Panzerung haben, wodurch Strahlenwaffen nicht allzu effektiv sind. Nun werden einige sagen: Hey, nicht jeder Gegner wird reflektierende Panzerung verwenden, ich gehe da mit einen Mech rein, der nur Strahlenwaffen verwendet! Das ist ein guter Gedanke und nun stellt euch vor, ihr stapft über das Schlachtfeld, feuert eure Laser ab, volle Ladungen und auf einmal werdet ihr laut WTF!? brüllen, denn euer Mech hat sich gerade abgeschaltet. Warum? Jeder Mech muss auf seine Hitze achten, wird er zu heiß, dann erfolgt eine Abschaltung, dies lässt sich durch einsatz von Kühlkörpern und Kühlmittel verhindern, trotzdem behaltet die Anzeige im Auge.


Stilvoll und Klassich zu gleich

Das Spiel schickt euch durch verschiedene Landschaften, wie Wälder, Wüsten, dem Mond, Tundra bis hin zu Städten und das nicht nur zur grafischen Abwechslung sondern es hat auch Auswirkungen auf das Spiel. In der Wüste überhitzt ihr schneller, im Wasser kühlt ihr besser und mit kleinen Mechs könnt ihr nicht so tief ins Wasser wie mit großen. Im Stadtkampf werdet ihr entweder auf gehende Festungen oder agilität und Sprungdüsen setzen. Das Spiel erlaubt euch euren Mech zu konfigurieren wie ihr wollt, Waffen können ausgetauscht werden, die Panzerung für bestimmte Bereiche verändert, die komplette Panzerungsart ausgetauscht werden, Kühlkörper können installiert oder abgenommen werden, Lackierung, Höchstgeschwindigkeit, Munition, Radarstörgeräte, Raketenabwehr, etc. Das einzige was euch begrenzt ist die Tonnage, die darf nie größer sein als ein festgelegter Maxwert, der für jeden Mech anders ist.


Hier werdet ihr so viel Zeitverbringen

Dieses Spiel ist für mich ein zeitloser Klassiker und eines der großen Spiele meiner Kindheit (neben FF8) und selbst heute spiele ich dieses Spiel oder die Dark Knight Erweiterung oder das Stand alone Mercaneries oder Mechwarrior 3 immer noch gerne und das ist auch gut so. Falls diese Spiele noch gar nicht kennt, 2009 wurde es zum freien Download von Microsoft freigegeben einen Link dazu findet ihr auf Chip.de.

Montag, 4. April 2011

Ab die Post aka Going Postal

Terry Pratchets Werke sind für mich Weltliteratur und ein Maßstab, was Fantasy eigentlich sein sollte es aber leider häufig nicht ist. Seine Geschichten schaffen es immer wieder mich zu fesseln und (mehr oder weniger) alltägliche Probleme als große Katastrophen oder als klitze kleine Stolpersteine aussehen zu lassen. Ich schneide es hier an, da es mich doch etwas wundert, dass es so gut wie kaum Verfilmungen von seinen Werken gibt und diese noch nicht mal ein Kinorelease sondern einen direkten DVD Release haben. Dabei werden sogar große Schauspieler gecastet für die Filme wie z.B. Tim Curry oder Jeremy Irons (vielen Filmfans bekannt für seine ausgezeichnete Darbietung im Dungeons and Dragons Film). Verfillmt wurden aber bisher nur 2 Bücher (eigentlich 3 aber da 2 zu einer Geschichte gehören zähle ich sie als 1), das sind "Im Schweinsgallop" (aka Hogfather) und "Die Farbe der Magie" (aka The Color of Magic). Doch als ich gestern im Weiland nach neuen Büchern gestöbert habe, da habe ich die DVD zu "Ab die Post" (aka Going Postal) gesehen und sofort gekauft und nun muss ich euch natürlich sagen was ich davon halte.

Beginnen wir mal mit dem Cast. Wir haben Charles Dance als den Patrizier von Ankh-Morpork und er spielt ihn... gut. Ich bin von Color of Magic Jeremy Irons gewöhnt und der war ein super Patrizier. Charles Dance bringt die Rolle glaubwürdig rüber aber ihm fehlt hier einfach das gewisse etwas, zum glück hat er nie lange Szenen und nur sehr wenig auftritte innerhalb des Films, somit kann man diesen Wechsel verschmerzen.Die ruhige Art seines Schauspiels ist zwar dem Patrizier angepasst und wirkt auch bedächtig, wie ein Mann, wo du nicht weißt was gleich passieren wird oder halt wie der Patrizier ebend. Wo aber Jeremy Irons noch eine gewisse würde und Bedrohung in die Figur gelegt hat und somit den Patrizier noch undurchschaubarer gemacht hatte spielt Dance einen Patrizier, der eindeutig durchblicken lässt, dass du machst was er will oder deine Zukunft wird ein paar unvorhergesehene "Wendungen" nehmen.

Des weiteren haben wir David Suchet als Reacher Gilt, den Vorsitzenden des Großen Strang. Ich will ehrlich sein, ich habe Suchet vorher nie in einem Film gesehen aber er liefert eine gute Performance und stellt Gilt genau so dar wie ich es mir gedacht hatte + noch etwas extra Käse. Wo der Reacher Gilt im Buch ein Geschäfftsmann war, der primär wirtschaftl. Dominanz nutzte und Kontakte zu gewissen Kreisen um seine Gegner auszuschalten, greift Suchets Gilt zu pompösen Auftritten und später sogar physische Gewalt um seine Ziele durchzusetzen. Im Kontext zu den Geschehnissen im Film macht diese leichte Wandlung des Charakters sogar Sinn und Suchet spielt die Rolle so wie eine Scheibenweltfigur sein sollte, eine leichte Karrikatur des realen Vorbildes.

Zu guter Letzt haben wir Richard Coyle als unseren Hauptcharakter Feucht von Lipwig (ja so heißt er wirklich) und er ist awesome. Nicht nur, dass die Rolle anscheinend maßgeschneidert für Coyle ist, nein, er fügt der Figur noch eine tragische Note hinzu ohne den Charakter zu zerstören. Ich kann derzeit nichts negatives an ihm finden.



Jetzt das wichtigste, wie ist der Plot? Kurzfassung: Betrüger wird für seine Verbrechen dazu verknackt das Postamt von Ankh-Morporg wieder in Schwung zu bringen. Diese Aufgabe ist an sich unlösbar, da eine Reihe von Sendetürmen, Klackertürme genannt, Nachrichten deutlich schneller über lange Distanzen übermitteln kann. Dieses Netz, das "Der Große Strang" heißt steht unter der Leitung von einem skrupelosen Geschäftsmann. Der Betrüger versucht zwar dieser Aufgabe zu entgehen aber wird zu seiner Arbeit gezwungen und entwickelt immer kreativere Methoden um im Geschäft zu bleiben, bis hin zur Erfindung der Briefmarke. Alles Gipfelt in einem wetrennen zwischen der Post und dem Großen Strang, wer wird gewinnen?
Dies ist ungefähr die Synopsis des Buchs und wird 1:1 in den Film übernommen. Der Film an sich richtet sich haargenau nach dem Buch und bis auf eine Seitengeschichte (jedenfalls soweit ich es bemerkt hatte) ist es komplett im Film umgesetzt.

Fazit: Obwohl ich zuerst Skeptisch war, da der Direktor gewechselt wurde und der Film von Jon Jones (Martian Manhunter?!?) und nicht mehr von Vadim Jean gemacht wurde bin ich mit diesem Film glücklicher als mit den beiden anderen. Der Cast stimmt und das gesamte aussehen der Welt ist stimmig. Das einzig negative, dass mir auffällt ist das CGI, da man hier doch gut sieht, dass die 3D Grafiken nicht ganz so der Hammer sind. Trotz allem dem sind die 3h die der Film insgesamt läuft wie im Fluge vergangen. Für mich ist das Ding eine ganz klare:

*Spannung*
*noch mehr Spannung*
*Trommelwirbel*

*Tusch*


9.5/10
Ja, der Film kommt nahe an Scott Pilgrim ran aber er hat hier und da kleine Fehler, die nicht unbedingt sein müssten. Werde ich ihn bald wieder mal ansehen? OH YEAH!!

Sonntag, 27. März 2011

Grüne Katastrophe

2012 wird die Welt nicht untergehen, denn sie tut es jetzt schon. Die Wahlergebnisse aus Baden-Württemberg und Rheinland-Pfalz zeigen es. Bündnis 90 hat in beiden Bundesländern zusammen 42% der Stimmen bekommen. 42%, wie zur Hölle ist das passiert?! Werden jetzt alle total bescheuert oder ist Gott auf einen sehr langen Urlaub? Grundsätzlich habe ich ja nichts gegen die Grünen, denn immerhin vertreten sie ja auch den Umweltschutz und wiegen somit die primär Industriellen Interessen anderer Parteien auf aber das funktioniert auch nur, wenn sie so vertreten sind, dass sie als (kleiner) Teil einer Regierung fungieren, nicht wenn sie beinahe selbst die Regierung geben kann. Ich weiß gerade echt nicht was ich sagen soll. Leute wacht auf! Ihr wollt eine grüne Zukunft? Dann wählt nicht eine Partei, deren Wahlprogramm genauso viel gehalt hat wie eine Hand voll Humus, sondern macht selber etwas. Was wir jetzt da unten (zum Glück lebe ich im Norden von Deutschland) genau die gleiche Regierung, die wir abgewählt und rausgeworfen haben. Ihr wisst schon Rot-Grün, diesmal mit etwas mehr Grün halt. Na und? Die SPD macht genau das was die Menge will, denn eine eigene Identität haben die sowieso nicht, ihr überlasst also wirklich den Öko Yuppies die Leitung? Habt ihr euch das Wahlprogramm mal durchgelesen? Ich weiß, dass ist hart, es sind immerhin weit über 1 A4 Seite Text und das noch in einer Schriftgröße kleiner 16 aber bitte, es gibt extra eine "Leichte Version" oder wie es übersetzt heißt eine Idioten Version.

Ich habe mir mal durchgelesen was zum Thema Atomausstieg gesagt wurde also und ich Zitiere "Selbst störanfällige und nicht gegen den Absturz von Flugzeugen gesicherte Uraltreaktoren wie Neckarwestheim I und Philippsburg I sollen nun mindestens acht Jahre länger als bislang vorgesehen laufen. [...] Sollten sich CDU und FDP mit ihrem Vorhaben durchsetzen, müssten wir in Baden-
Württemberg nicht nur bis mindestens 2040 mit der Hochrisikotechnologie Atomkraft leben." [Bündnis 90/Die Grünen Wahlprogramm, Stand: 28.03.2011 01:18 Uhr, http://www.gruene-bw.de/fileadmin/gruenebw/dateien/Wahlen2011/Landtagswahlprogramm-web.pdf]

Ich frage mich gerade ob ich noch irgendetwas zu diesem Punkt sagen muss? Ich gehe mal davon aus, dass ihr wisst was ich meine, dass spart mir die Arbeit für euch zu denken.
Im Kontrast dazu steht in der einfachen Version (und ich zitiere wieder):
"Die CDU und die FDP wollen, dass es länger Atom-Kraft-Werke gibt. Noch länger als in den anderen Bundes-Ländern. Das wollen wir nicht.
Wir wissen heute:
Atom-Kraft-Werke schaden der Umwelt.
Die Atom-Kraft-Werke machen giftigen Müll.
Der bleibt sehr lange Zeit sehr gefährlich.
" [Bündnis 90/Die Grünen Wahlprogramm in Leichter Sprache, Stand: 28.03.2011 01:26 Uhr, http://www.gruene-bw.de/fileadmin/gruenebw/dateien/Wahlen2011/Landtagswahlprogramm-in-leichter-Sprache.pdf]
So spricht man mit keinem Erwachsenen Menschen mit irgendeiner Bildung. So spricht man mit Kindergartenkindern. Genau, man geht davon aus, dass die Wähler nicht intelligenter sind als ein Kleinkind. Wobei, wartet, das ist vernünftig wenn man manche wahlberechtigten Menschen heute sieht.

Zurück zur offiziellen Version:
"Die Betreiber der hoch profitablen Atomkraftwerke werden alles daransetzen, sich
ungeliebte Konkurrenz vom Hals zu halten. Als Folge einer Laufzeitverlängerung droht daher ein drastischer Rückgang beim Ausbau der erneuerbaren Energien."[Bündnis 90/Die Grünen Wahlprogramm, Stand: 28.03.2011 01:30 Uhr, http://www.gruene-bw.de/fileadmin/gruenebw/dateien/Wahlen2011/Landtagswahlprogramm-web.pdf]
a) Ja, so funktioniert nunmal die Marktwirtschaft, Konzerne versuchen die Konkurenz so klein wie möglich zu halten um den Marktvorteil zu sichern und somit seinen eigenen Profit zu steigern.
b) In welcher Welt lebt ihr eigentlich? Jeder Energieriese investiert heutzutage heftig in erneurbare Energien um dann, wenn die alten Formen wie halt die besagten Kernkraftwerke, abfallen, sofort den ansonsten entstehenden Einkommensverlust auszugleichen. Was meint ihr warum ihr für Öko derzeit etwas mehr berrapt als für alle andern, hmmm?

Ein letzter Punkt aus ihren Atomprogramm ist auch noch schön:
"Das von der Bundesregierung geplante Vorgehen, die Laufzeitverlängerung ohne Beteiligung des Bundesrats umzusetzen, ist verfassungswidrig. Diese Auffassung wird selbst durch Rechtsgutachten gestützt, die vom CDU-geführten Bundesumweltministerium in Auftrag gegeben wurden. Wir sind deshalb zuversichtlich, dass die geplante Laufzeitverlängerung mit einem entsprechenden Urteil des Bundesverfassungsgerichts und einer sich daran anschließenden Abstimmung im Bundesrat zu Fall gebracht werden kann." [Bündnis 90/Die Grünen Wahlprogramm, Stand: 28.03.2011 01:42 Uhr, http://www.gruene-bw.de/fileadmin/gruenebw/dateien/Wahlen2011/Landtagswahlprogramm-web.pdf]

Es ist doch schön, dass inzwischen die Methode "Das Gefällt uns nicht also wird es weg geklagt" gang und gebe ist. Es war bei Hartz IV schon so, wird jetzt bei den AKW's gemacht, wird vielleicht mal wieder bei den Videospielen versucht und was auch immer sonst so nicht ins Bild passt. Ihr wollt wirklich die Dinger abschallten, weil sie nicht sicher gegen Flugzeug abstürze sind? Was sollen die Betreiber machen, die Dinger mit Flaks ausrüsten und in einen Unterirdischen Bombenschutzbunker packen, damit sie euren bescheurten Auflagen entsprechen? Nachdenken, verlange ich wirklich zu viel?

Ihr wundert euch jetzt bestimmt warum ich nur auf der AKW Politik herum hacke. Da ist zum einen immer noch das Unglück in Japan zum anderen Lebe ich wie ich schon oben gesagt habe in keinem der beiden Bundesländer, somit kann ich nichts über den Sinn der Regionalpolitik sagen, da mir hier die Refferenzen fehlen. Ich will auch nur, dass ihr nachdenkt, da diese Punkte doch sehr universell gültig sind. Ich kann es nicht glauben, dass diese Partei sämtliche vernunft in Wirtschaftlichen Handeln über Bord werfen will und quasi aus dem nichts den Markt kippen will. Was erwartet ihr? Die lokalen kleinen Anbieter sollen auch was vom Kuchen abhaben, dann gebt denen doch Startvorteile für den Ökostrom Markt und macht es den Großen schwerer den Markt zu dominieren und reguliert über Subventionen z.B. den Markt anstelle jetzt eine Wende zu erzwingen und die Kleinen, denen ihr ja laut eigenen Aussagen eine faire Chance geben wollt, somit gleich wieder aus den Geschäfft verdrängt. Da kann ich doch nur applaudieren, bravo, bravo, kein Sinn, kein Verstand, nicht einmal Nachgedacht über Ursache und Wirkung.

Also, für zukünftige Wahlen heißt es, informiert euch, lest die Wahlprogramme, hinterfragt jeden einzelnen Punkt ganz genau, bildet euch eure eigene Meinung und dann wählt die Partei, die eure Interessen vertritt und wenn es dann immer noch die Grünen sind, dann muss es mir zwar immer noch nicht gefallen aber wenigstens habe ich nicht mehr das Gefühl, dass die Wähler absolut bescheuert sind.