Dienstag, 22. Juli 2014

Separating Axis Theorem statt farseer-Engine

Da ich mich mal wieder nach Alternativen zur farseer-Engine umgesehen habe ( war mir doch wein wenig zu komplex ;) ), bin ich auch das SAT ( Separating Axis Theorem ) gestoßen und es war genau das, was ich brauche.

Wie funktioniert es?
Der Grundgedanke ich einfach: Sobald ich eine Linie zwischen zwei Körpern zeichnen kann und die Linie diese Körper nicht berührt, berühren sich auch die Körper nicht ( s. Abb1 ).

Abb1.: Es wird eine Linie zwischen zwei Objekten gebildet, ergo berühren sie sich nicht.

Wenn es jedoch keine Lücke gibt, also von allen Seiten ( man bildet diese Linie immer entlang zweier Eckpunkte eines Polygons ) die Projektionen ( blaue Linien oben ) überlappen, so berühren/schneiden sich die Polygone ( s. Abb2 ).
Abb2.: Alle Projektionen ( pinke und blaue Linien ) auf den gestrichelten Linien überlappen sich.

Wenn ihr mehr wissen möchtet, könnt ihr gerne bei der Suchmaschine eures Vertrauens suchen, ihre werdet bestimmt was finden. Das Prinzip ist eigentlich einfach, nur wirkt es im ersten Moment sehr abtrakt.

Wann ich das ganze im Map-Editor einbauen werde weiß ich noch nicht ganz genau, aber erstmal wollte ich die Einstellungen/Eigenschaften der Objekte unterbringen ( sprich Änderung der Position, etc. ).
In der nächsten Version ( 0.0.4 ) wird dieses System aber definitiv vorhanden sein.

mfg
Hauke

Quellen:
Abb1.: http://back2basic.phatcode.net/?Issue_%231:2D_Convex_Polygon_Collision_using_SAT ( 22.07.2014 )
Abb2.: http://www.codezealot.org/archives/55 ( 22.07.2014 )

Dienstag, 1. Juli 2014

Erste Funktionen im MapEditor

Habe bis jetzt die Grundfunktionen im MapEditor eingefügt. Die Map wird gezeichnet, die Texturen geladen und dargestellt und man kann Felder / Texturen auswählen. Als nächstes kommt dann das platzieren und die Einstellungen.

Bisherige Funktionen:
  • Map laden und anzeigen
  • Objekte markieren ( Hover-Effekt ) und selektieren ( anklicken )
  • Alle verwendbaren Texturen(-kategorien) anzeigen und auswählen
  • Spieler in Echtzeit ( ohne irgendwelche Aktionen ) bewegen und Map testen
Was als nächstes ( zum nächsten Post ) kommt:
  • Texturen platzieren
  • Grundeinstellugnen ( Größe, Position, etc. )
  • Maps speichern

Bisheriger MapEditor: Felder kann man markieren (Hover-Effekt) /
selektieren (drauf klicken) und den Spieler in Echtzeit bewegen.

"Niemand hat die Absich eine Mauer zu bauen ... "  
        - Bob der Baumeister

Auch in Blender habe ich ein wenig gemacht, damit ich nicht einroste. Diese Mauer kommt später noch ins Spiel rein.
Insgesamt brauchte ich nur ein paar Steine und vier Pflanzen, die alle aus ähnlichen Elementen stammen, das Ergebnis hat mich jedoch sehr überzeugt:
Neue Textur: Mauer_01. Mit ein paar Steinen und
nur 4 Pflanzen kann man einiges machen ;)
Auch in Zukunft werde ich ein wenig über den MapEditor berichten, vor allem was später neue Funktionen, wie Physik-Engine, Interaktionen, etc. angeht.

mfg
Hauke

Dienstag, 24. Juni 2014

Erster Patch für Arengu 0.0.3

Da es in Version 0.0.3 doch noch recht viele Fehler gab, habe ich mich zunächst den Fehlern gewidmet und den ersten Patch für Arengu PreAlpha 0.0.3 herausgebracht: 0.0.3u1.

Behobene Fehler:
  • Speichern im Spiel per F5 erstellt immer einen neuen Speicherstand ( seit 0.0.3 )
  • Erstelle Speicherstände können nicht geladen werden ( seit 0.0.3 )
  • Grafiken auf der Map sind z.T. verzerrt oder falsch platziert ( seit 0.0.3 )
  • Neue Speicherstände werden nicht im Hauptmenü angezeigt ( seit 0.0.3 )
  • Bei manchen werden Grafiken ( z.B. bei Fenstern ) falsch oder garnicht gezeichnet ( seit 0.0.2 )
  • Hintergründe im InGame-Menü werden z.T. nicht richtig gezeichnet ( seit 0.0.3 )
  • map_2 wird nicht geladen ( seit 0.0.3 )
  • Bei existierendem Speicherstand wird über Menüleiste → Speichern trotzdem ein neuer Speicherstand erstellt ( seit 0.0.3 )
Solltet ihr noch Fehler finden, wäre es sehr nett, wenn ihr sie meldet ( E-Mail an: arengu@gmx.de ), danke!

Neue Features:
  • Updater ( Hauptmenü → Einstellungen → Nach Updates Suchen )
    • Updates werden automatisch gesucht
    • Download erfolgt über den Browser ( man wird nach Sourceforge weitergeleitet )
Download:
Link ( arengu-prealpha-0.0.3u1.7z; Sourceforge.net )


Über Kritik, Anmerkungen, Ideen, etc., würde ich mich wie immer freuen!

mfg
Hauke

Sonntag, 8. Juni 2014

Arengu PreAlpha-0.0.3 Release

Eeeendlich ist es soweit, Arengu 0.0.3 ist da!
Habe die letzten Tage noch viele Bugs gefunden und behoben, dennoch sind mir ein paar bekannt, die jedoch nicht schlimm sind.

Was ist neu?
  • Allgemeines
    • InfoPopup: Zeigt Neigkeiten/Fehler an
    • Eingabezeile mit den ersten Befehlen
    • Screenshots werden nun im Spieleordner gespeichert ( ...\Screenshots\ )
    • Zwei neue Musikstücke ( "Nature awakes" und "Misery of Paeligor" )
    • Deutsche Hilfedatei mit genaueren Beschreibungen zu Funktionen, etc.
  • Menübereich ( MenuArea )
    • Allgemeines
      • Tabs zum besseren verwalten
      • in der Breite skalierbar, per Tab kann es den bereich ein-/ausklappen
    • Spielerinfos
    • Invetar ( s.u. )
      • verschiedene Tabs ( momentan: "Inventar" und "Rucksack" )
      • Items können verschoben und verglichen werden
      • Infobox zum anzeigen der Daten und zum vergleichen
    • Quest-log ( Platzhalter )
  • Hauptmenü
    • Neuer Hintergrund und Schrift
    • Alle Menüpunkte sind funktionsfähig
    • Spielstände können geladen und gelöscht werden
    • Einstellungen können vorgenommen werden ( Spiel, Audio und Grafik )
  • InGame-Menü ( wenn man im Spiel Escape drückt )
    • Alle Menüpunkte sind funktionsfähig
    • Einstellungen können ( bedingt ) vorgenommen werden
  • Item-System
    • Verwaltung über zentrale Klasse
    • Bisher drei Items ( s. Hilfedatei )
  • Inventar
    • standardmäßig 10x10 Felder für max. 100 Items
    • Items können innerhalb und nach außen verschoben werden
    • temporäres Inventar: Zum sortieren und später zum aufnehmen/ablegen auf die Map
  • System
    • TextMode: Wenn man z.B. in ein Input-Feld etwas eingibt werden u.a. WASD ignoriert
    • Input-Felder, Scrollbars und Listen können unabhängig von Fenstern erstellt werden
    • FPS-Diagramm zeigt die Zeit zwischen Frames an
  • Bug-fixes
    • [SCREENSHOT] - Wenn man lange F12 drückte, so wurden mehrere Screenshots gemacht
    • [SPIELSTAND] - Bei nicht vorhandenem Speicherort, wird nun der Ordner "Saves" mit der Datei "save.txt" erstellt, sodass das erstmalige Speichern Problemlos funktioniert
    • [SPIELSTAND] - Nicht vorhandener Spielstand wurde versucht zu laden
    • [BUTTONS]    - Wenn man irgendwo hin klickt und die Maus auf einen Button bewegt, wird dieser angeklickt. Ab jetzt muss man wirklich auf den Button KLICKEN, damit dieser aktiviert wird.
    • [SCROLLBAR]  - Wenn der Balken schon unten war und man weiter klickt, dann ging er ein stück weiter und sprang wieder nach oben.
    • [DEBUG-CMD]  - Wenn man die Debug-Console schließt kann man nun nicht mehr weiterschreiben.
Zudem gibt es hier und da kleine Veränderungen, die alle zusammen Seiten füllen könnten und daher hier nicht aufgelistet sind.

Bilder:
Das neue Hauptmenü.
Der Menübereich zeigt u.a. Spielerinfos an
Inventare und Items werden im Menübereich angezeigt
Das InGame-Menü.
Die Debug-Console mit Eingabezeile und FPSDiagramm.
Zwei Items werden über das temporäre Inventar verglichen.


Video:



Weiterführende Links:
Deutsche Hilfedatei: Link ( arengu.square7.ch )
YouTube Video: Link ( youtube.com )
Download: Link ( sourceforge.net )
Fehler melden: Link ( Sourceforge.net; Account erforderlich ), Link ( Kontakt-Formular )


Das kommt in PreAlpha-0.0.4 ( mehr ... ):
  • Übersetzung in Englisch ( inkl. englischer Hilfedatei )
  • Updater
  • Map-Editor
    • Laden / speichern von Maps
    • Platzieren von Objekten
    • Alle Menüs funktionsfähig
    • Neue Physik-Engine ( farseer-engine )
  • Items auf Map platzieren / von Map aufnehmen

Ich hoffe ihr werdet mit der neuen Version viel Spaß haben. Über Kommentare, Anmerkungen, Verbesserungsvorschläge, Fehlerberichte, etc. etc. freue ich mich immer sehr.

mfg
Hauke

Sonntag, 1. Juni 2014

Tester gesucht!

So, Version PreAlpha 0.0.3 steht in den Startlöchern und um auch die letzten der - gefühlt - bisher tausenden von aufgetauchten Bugs zu finden und zu entfernen brauche ich eure Hilfe!

Bitte meldet euch als Tester:
( Systemleistung, Programmierkenntnisse, etc. sind nicht sonderlich wichtig )


Es würd mich sehr freuen, wenn ihr euch melden würdet, es ist wirklich keine große Arbeit.

mfg
Hauke

Mittwoch, 21. Mai 2014

Neues Hauptmenü und InGame-Menüs

Wie schon auf Twitter bzw. hier angesprochen, baue ich gerade das neue Hauptmenü. In den letzten Tagen habe ich dabei den Hintergrund in Blender erstellt, welche nun so gut wie fertig ist.

Screenshots:
Neuer Hintergrund mit darauf eingebettetem Menü.

Weitere Menüpunkte sind ebenfalls im Hintergrund eingebettet.
Im Spiel gespeicherte Spielstände können hier geladen werden

Nettes Gimmick: Die Laterne kann an/aus geschaltet werden ;)
( der Hintergrund ist von diesem Screenshot leider etwas veraltet )
Es handelt sich dabei einfach um ein zweites Bild ohne Lichtquelle
( es ist also keine 3D Szene )
Was als nächstes kommt:
  • Die wichtigsten Einstellungen wie Auflösung, Lautstärke, etc.
  • InGame Informationen zum Spieler ( Position, Geld, Leben, Mana, etc. )
Wann ist Release?
Schwer zu sagen, aber all zu lange wird es nicht mehr dauern ( spätestens erste Juni Woche ).
Bitte schreibt doch, wie euch der neue Hintergrund gefällt und was ihr anders machen würdet, danke!

mfg
Hauke

Nachtrag:
vom 24.05.2014; 01:15

Habe den Hintergrund mit einer weiteren Fackel, einem besseren Himmel und ein wenig schöneren Texturen ( man beachte besonders die Kisten und den Putz am Haus ):
Etwas veränderte und detailiertere Version des neuen Hintergrundes

Montag, 28. April 2014

Ingame-Menüs, sowie speichern & laden von Speicherständen

Das Ingame-Menü
Ingame-Menü statt Hauptmenü:
In den letzten Tagen habe ich das Ingame-Menü, fertig gestellt. Nach dem drücken von Escape wechselt man nicht mehr in das Hauptmenü, sondern in das neue Ingame-Menü.

Bisherige Funktionen:
Dort kann man dann das Spiel speichern, einen vorhandenen
Spielstand laden oder ins Hauptmenü wechseln.
Es finden zudem Abfragen zum überschreiben eines
Dialog zum speichern eines Spielstandes.
Man kann einen existierenden überschreiben
oder einen neuen Speicherstand erstellen.
existierenden Speicherstandes und zum speichern beim beenden des Spieles statt.

Hauptmenü:
Im Hauptmenü ( dazu wird es noch einen eigenen Post geben ), kann man ebenfalls einen Spielstand laden, den letzten weiterspielen oder ein neues Spiel anfangen.

Technisches:
Das ganze läuft über eine statische Klasse.
Wenn man zum Hauptmenü zurück möchte
wird man gefragt, ob man nicht lieber
vorher speichern möchte.
Die Methoden ( Update() und Draw() ) werden nach dem drücken von Escape statt der des Gamescreens ausgeführt. Zuvor wird noch ein letztes mal der Hintergrund gerendert, als Bild zwischengespeichert und ein wenig bearbeitet.
Die einzelnen Unterpunkte ( Spiel speichern, die Abfragen, etc. ) befinden sich alle in dieser Klasse und werden durch Bool'sche Werte an/aus geschaltet, welche dann nur noch in der Update() bzw. Draw() Methode abgefragt werden.

Speicherstände:
Die Speicherstände werden verschlüsselt in den Dateien mit ihrem Namen gespeichert. Zudem sind alle Namen, sowie der Name des zuletzt gespeicherten Spielstandes ( für "Spiel fortsetzen" ), in der properties.txt aufgelistet, in der zukünftige Einstellungen gespeichert werden.

mfg
Hauke


Samstag, 19. April 2014

Umfrage: Was ist euch an einem RPG wichtig?

Hallo,

da Arengu ja immer mehr Form annimmt, habe ich mal eine Umfrage erstellt um herauszufinden, was für euch an einem RPG wichtig ist.

Hier gehts zur Umfrage ...
( english version ... )
( hier gehts zur vorläufigen Auswertung )

Mich würde es sehr freuen, wenn ihr daran teilnehmen würdet, da ich somit erkennen kann, was euch an einem Rollenspiel ( wie Arengu ) wichtig ist.

mfg
Hauke

Sonntag, 13. April 2014

Item- & Inventar-System

So, endlich habe ich das Item-System fertig, eigentlich wollte ich schon gestern  diesen Post verfassen, es kamen jedoch mehrere Bugs dazwischen. Nun jedoch funktioniert alles einwandfrei :)

Zum Inventar-System:
So sieht der GameScreen mit Inventar aus.
Momentan gibt es zwei Getrennte Inventar-Bereiche:
"Inventar" ( das normale ) und "Rucksack",
dies kann man sich später im Spiel durch
den Erwerb eines Rucksackes dazukaufen.

Inventare bestehen standardmäßig aus 10x10 Feldern, den denen die Items gespeichert werden.
Inventare werden durch die Klasse Inventory gebildet und als Array gespeichert. 

Verschieben von Items:
Jedes verschobene Item wird zunächst global ( also Inventar unabhängig ) erfasst und wenn es über einem Inventar wieder losgelassen wird, dort auch eingefügt ( sofern der Platz frei ist ).

Temporäres Inventar:
Wenn man Items außerhalb eines Inventares loslässt, so wird es in das so genannte temporäre Inventar verschoben.
Dies dient dazu z.B. aufgenommene Items ersteinmal zwischen zu lagern um sie dann richtig aufzunehmen. Auch kann man damit ein vollen Inventar leicher sortieren, indem man zwischenzeitlich Platz schafft.
Man sollte jedoch beachten, dass das temporäre Inventar beim laufen geschlossen wird!

Aufgenommene oder weggeworfene Items
erscheinen zunächst im "Temporären-Inventar".
Vergleich von Items:
Wenn man zwei Items vergleichen möchte, so kann man ein Item anklicken und mit der Maus über ein anderes gehen, dann werden diese direkt miteinander verglichen.
Die Werte des zuletzt ausgewählten Items stehen dabei in Klammern.
Schlechtere Werte werden rot und bessere grün angezeigt.

Items können direkt miteinander verglichen werden.
Vergleiche können Inventarübergreifend geschehen,
zudem kann man den Inventar-Bereich
nach oben/unten verschieben.











Features im Überblick:
  • Verschieben ( inner- und außerhalb des Inventars )
  • Temporäres Inventar zum Aufnehmen und sortieren von Items
  • Vergleich von Items
  • Mehrere Inventare, sowie die Möglichkeit neue durch Kauf dazu zu erwerben




Item-System:

Arten von Items:
Bisher gibt es 17 Kategorien an Items:
  • Einhand-/Zweihandwaffe ( Klinge )
  • Bogen, Pfeil
  • Axt, Streitkolben ( beides Zweihand )
  • Handschuh
  • Armpanzer
  • Kopfbedeckung
  • Brust- & Beinpanzer
  • Schuh
  • Schild
  • Rune, Trank
  • Schmuck, Kleidung
Speichern und Verwalten: 
( verändert übernommen von vorherigem Post )
Alle Items werden bei Spielstart einmal erstellt und in der Klasse ItemLibrary als Array gespeichert, dadurch wird weniger Speicherplatz benötigt als wenn man jedes Item im Spiel einzeln erstellt. Jedes Item hat somit eine Nummer ( ID = Index des Arrays ) mit der man dieses Item aufrufen kann ( um es zu zeichnen, etc. ).
Die Items ( bzw. deren IDs ) werden daher als Integer-Liste - Inventory.Items<int> - gespeichert, wo auch die Position der Items im Inventar ( welches Feld ) als Liste gespeichert ist ( Inventory.ItemPosition<Vector2> ). 
Gezeichnet wird jedes Item dann wieder über die Item Klasse ( Aufruf durch ItemLibrary.Item[Inventory.Items[ItemNumber]].Draw(SpriteBatch);, so einfach ist das ;) ).
Eventuell steige ich später auf eine Datenbank oder andere externe Dateien um ( um eigene Items zu ermöglichen ) aber zum testen bleibt es erstmal intern.

Bei Eigenschaften der Items erscheint ein Popup.
Eigenschaften von Items:
Jedes Item hat dieselben Eigenschaften!
Eine Hose hat also, genau wie ein Schwert, die Eigenschaft "Schaden", wobei der Wert bei 0 liegt ;)
Insgesamt gibt es folgende Eigenschaften:
  • Kauf- & Verkaufpreis
  • Schaden
  • Rüstung
  • Extra Leben
  • Extra Mana
  • Extra Ausdauer
  • Extra Geschwindigkeit




Was als nächstes kommt:
  • Neues Hauptmenü ( neuer Hintergrund, Animation, Schrift, etc. )
    • Lademenü zum Laden eines Spielstandes
    • Einstellungen
  • Bereich für Spielerinformationen
  • Eventuell: Ein ins Spiel integrierter Map-Editor ( statt des momentan externen Editors ), bzw. zumindest der Anfang davon.

Über Kritik, Anmerkungen und generelles Feedback würde ich mich sehr freuen, vielen Dank!

mfg
Hauke

Dienstag, 8. April 2014

Windows XP Support beendet; Zwischenstand zu Ver. 0.0.3

Nach 12 Jahren, 5 Monaten und 14 Tagen hat Microsoft den Support für Windows XP offiziell beendet, auch wenn dieser Zeitpunkt schon seit langem bekannt ist, laufen noch 75% aller im Bundestag befindlichen Rechner mit Windows XP.England bezahlt Microsoft sogar 6,5 mio. Dollar, damit der Support für ihre Rechner weiterläuft, weil 85% ALLER Regierungsrechner in England noch mit XP bestückt sind.
Ich persönlich finde es auch ein wenig Schade, auch wenn der Support länger als die standardmäßigen 10 Jahre gedauert hat.

In Gedenken an die gute alte XP-Zeit:
R.I.P. Winsows XP, das Betriebssystem mit einem der
bekanntesten Bildern der Welt als Hintergrund.
Mich würde es interessieren wie ihr zum Ende des Supports und zu Windows XP steht. Was habt ihr mit XP alles schönes/unschönes erlebt?

Zu Arengu:
Unabhängig von Windows XP, gibts hier ein paar Infos zum Spiel.

Was für 0.0.3 schon fertig ist:
  • Menübereich ( MenuArea ): Mit Inventar, Spielerinfos, Quest-Log, etc.
  • Inventar & Item-System
  • Neues Hauptmenü ( Teil eines neuen Hintergrundes ist fertig )
  • Kleinigkeiten:
    • Eingabezeile in der Debug-Console
    • InfoPopup für Nachrichten wie "Spielstand gespeichert", etc.
    • BugFixes bezüglich Spielständen, Screenshots und Controls
Was für 0.0.3 noch kommt:
  • Mehrere Inventare ( zusätzliche Rucksäcke ); Items zwischen Inventaren Tauschen
    • Wenn das Fertig ist, gibts auch einen Post mit ausführlicheren Infos
  • Spielerinfos ( ein paar gibts es schon, aber es soll alles über den Spieler angezeigt werden )
  • Map-Editor ( der normale Map-Editor ins Spiel integriert )
  • Hauptmenü ( Hintergrund ganz fertig machen, neue Schrift und Menüs zum Laden etc. )
Das waren so die wichtigsten Punkte.

Über Fragen, Anmerkungen, Kritik bin ich wie immer sehr dankbar.

mfg
Hauke


Hinzufügung vom 14.04.2014:
Das Land Niedersachsen bezahlt nun - genau wie England - ca. 850.000€ an Microsoft, damit der Support für die PCs der Landesregierung nicht abläuft ( das entspricht Kosten von ca. 50€ pro Rechner ).

Samstag, 15. März 2014

CeBIT 2014, Menübereich und die ersten Items

Hallo,

Hier ein IBM Storage Server mit insgesamt 252 HDD Slots.
wie schon auf Twitter angekündigt, war ich mit Sebastian am Freitag auf der CeBIT.
Für mich war vor allem die Präsentation verschiedener Unternehmen als potentieller Arbeitgeber interessant, aber auch die Offenheit mit der dort umgegangen wird.
Wir haben zum Beispiel mit dem Projektleiter von Chieftecs Gehäuseabteilung gesprochen und über einen Prototypen geredet und ihm gesagt was wir am Vorgänger gut/schlecht fanden. Er hat das dann aufgenommen und möchte das jetzt verändern ( es ging hauptsächlich um Staub im Gehäuse ).

Wie versprochen nun ein paar Bilder:

Ein anderer Server, der auf Flash basiert.
Einer von ASRocks Storage Servern mit 60 HDD Slots.
Auch der neue Trend ist voll dabei: Octokopter wurden einige ausgestellt.
Geflogen wurde auch: Hier ein Quadrokopter bei seiner Arbeit.
Wer das wohl ist ;) Die Telekom und viele andere große Unternehmen scheuten weder Kosten noch Mühen und ...
... es wurde ordentlich geglotzt wer den den größten und auffälligsten Stand hat.
Interessant waren die schon 2011 vorgestellten transparenten Displays, mit denen ...
... man auch Videos abspielen kann, zudem haben sie eine Touch-Funktion!
Ich hoffe ich konnte allen, die nicht da waren einen gaaaanz kleinen Einblick in die CeBIT 2014 geben.

Infos zum Spiel:
Unsere Ziele waren ja der Menübereich und ein neues Hauptmenü, was noch in Arbeit ist, ich kann jedoch die ersten Erfolge beim Menübereich zeigen:
Rechts ist der Menübereich mit Inventar und zwei ersten Items ( Dolch und Schwert )
Itemsystem:
Bisher gibt es 17 Kategorien an Items:
  • Einhand-/Zweihandwaffe ( Klinge )
  • Bogen
  • Axt ( Zweihand )
  • Streitkolben ( Zweihand )
  • Pfeil
  • Handschuh
  • Armpanzer
  • Kopfbedeckung
  • Brustpanzer
  • Beinpanzer
  • Schuh
  • Schild
  • Rune
  • Trank
  • Schmuck
  • Kleidung
Diese haben alle dieselben Eigenschaften, die in der Klasse Item gespeichert sind:
  • Preis ( Kauf/Verkauf )
  • Schaden
  • Rüstung
  • Extra Leben, Mana, Geschwindigkeit, Ausdauer
  • Kategorienummer
  • Name
  • Beschreibung
  • Größe ( in Feldern für die Darstellung im Inventar )
Speichern und Verwalten von Items:
Alle Items werden bei Spielstart einmal erstellt und in der Klasse ItemLibrary als Array gespeichert, dadurch wird weniger Speicherplatz benötigt als wenn man jedes Item im Spiel einzeln erstellt. Jedes Item hat dadurch eine Nummer ( ID ) mit der man dieses Item aufrufen kann ( um es zu zeichnen, etc. ).
Die Items werden daher als Integer-Array in der Klasse Inventory gespeichert, wo auch die Position der Items als Liste gespeichert ist ( List<Vector2> ). Gezeichnet wird jedes Item dann wieder über die Item Klasse.
Eventuell steige ich später auf eine Datenbank oder andere externe Dateien um ( um eigene Items zu ermöglichen ) aber zum testen bleibt es erstmal intern.

mfg
Hauke

Sonntag, 23. Februar 2014

Story veröffentlicht

So, endlich ist es soweit, die Story ist soweit fertig und im Wiki veröffentlicht.
  • ACHTUNG: Alle hier gezeigten Inhalte sind zum Zeitpunkt des Beitragsdatums aktuell!

Hier die Kurzfassung (!):
Das einstige Königreich Suyador wurde vor rund 24 Jahren in die
Königreiche Paeligor ( Norden ) und Jesia ( Süden ) zerteilt worden.
Der König von Paeligor hat nun vor einen Krieg gegen den Süden zu führen, da ihm sein eigenes Reich zu klein wird.
[SPOILER]
Der Spieler befindet sich am Hofe von Paeligor und bekommt von den Planungen mit. Er muss durch seine Schnüffeleien nach Süden fliehen und warnt dort diese.
Im Verlaufe des Spiels reist er in geheimen Missionen des öfteren in den ihm wohlbekannten Palast um dort Pläne bezüglich des Krieges zu kopieren ( Diese Stelle ist sehr verkürzt und besitzt keinerlei Details! ).
Als der Krieg dann ausgebrochen ist, werden schnell die ersten Gebiete von den Truppen Paeligors eingenommen. Die Truppen Jesias werden jedoch von Magiern unterstützt, welche dazu beitragen, dass die Truppen Paeligors sehr schnell in mehreren Schlachten geschlagen werden und so gelangen die Truppen des Südens sehr schnell zur Hauptstadt Paeligors ( Paelinn ).
Dort wird dann im dortigen Palast der König gestellt und der Spieler kann am Ende entscheiden, was mit ihm passieren soll.
mehr ... ( detailliertere Story )
Zur sehr detaillierten Fassung ...

Karte der Herzogtümer:
Die sieben Herzogtümer des einstigen Suyadors.
Erosch gehört zu Paeligor.
Bitte lest euch zumindest diese sehr kurze Fassung durch ( wobei euch viele Details entgehen ). Die kurze Fassung ist ausreichend für das Verständnis der Geschichte, wer also ein wenig interessierter ist, dem empfehle ich die kurze Fassung des Wikis.

mfg
Hauke

Freitag, 21. Februar 2014

Arengu PreAlpha-0.0.2 Release

http://sourceforge.net/projects/arengu/files/PreAlpha/PreAlpha-0.0.2/arengu-prealpha-0.0.2.7z/downloadHeute ist es endlich soweit, Arengu geht in die zweite Runde:
0.0.2 ist fertig!


Was ist neu?
  • Erweiterte Kollision
    • Beispiel: Man läuft von unten gegen ein Objekt ( Baum, Haus, etc. ), so kann man seit diesem Update trotz Kollision nach links oder rechts weiterlaufen.
  • Spell-Leiste ( bisher mit Demo-Spells; noch keine Funktion )
  • Speicherstände
    • Das Spiel kann in einem Speicherstand gespeichert werden ( unter [VERZEICHNIS DES SPIELS]\Saves\save.txt )
  • Menü-Leiste mit folgenden Buttons
    • Menü ( ESC ) - zurück zum Hauptmenü
    • Speichern ( F5 ) - speichert das Spiel
    • Screenshot ( F12 ) - erstellt einen Screenshot und speichert ihn unter "C:\[NAME DES SCREENSHOTS]", der Name wird in der Debug-Konsole angezeigt und ist wie folgt aufgebaut: ScreenShot_[JAHR]-[MONAT]-[TAG]_[NUMMER DES BILDES].png
    • Pause ( P ) - bisher ohne Funktion, später wird das Spiel pausiert
    • Beenden - Beendet das Spiel
  • Fokus-Funktion auf Fenster und Input-Boxen
    • Durch die WASD-Steuerung wird nun nicht mehr dauerhaft etwas in die Input-Boxen eingegeben
  • 4 neue Musikstücke
    • 1 Intro-Tusch
    • 1 Menü-Musik
      • The wind of the winter
    • 2 InGame-Musikstücke
      • Peaceful landscape
      • The bleak land
  • Debug-Konsole
    • Zeigt aktuelle Ereignisse an, sowie FPS und ob VSync an ist ( in dieser Version standardmäßig ), später auch Position und andere Daten
    [BUG-FIX]
  • Die Scrollbar einer Liste funktionierte bei wenigen Zeilen nicht richtig
Die Story:
Die Story war Teil des 0.0.2-Updates und ich werde sie in den nächsten Tagen hier veröffentlichen ( muss das ganze noch als Text schreiben und Logik-/Rechtscheibfehler korrigieren ).
Auf dem Arengu-Wiki findet ihr später sehr ausführliche Infos zur Story, Zeitrechnung, politischem System, Karte ( Herzogtümer, etc. ), usw.

Screenshot:
Zu sehen: Debug-Konsole,
Menüleiste ( oben ), Spell-Leiste ( unten )
Video:




http://sourceforge.net/projects/arengu/files/PreAlpha/PreAlpha-0.0.2/arengu-prealpha-0.0.2.7z/download


Bitte äußert eure Meinung zur neuen Version! Auch Kommentare, Fehler, etc. sind immer gern gesehen.

mfg
Hauke

Samstag, 11. Januar 2014

PreAlpha 0.0.1 und MapEditor 0.1.4.1 auch auf YouTube

So, ich habe mich die letzten beiden Tage rangesetzt und habe zwei Videos gemacht, eines, welches Arengu PreAlpha 0.0.1 zeigt und ein anderes, welches eher ein Tutorial sein soll für den MapEditor 0.1.4 und 0.1.4.1.
Viel Spaß beim angucken!

Das PreAlpha 0.0.1-Video ( 10:10 )
    Hier zeige ich alle Funktionen, die es bis zu dieser Version gibt. 

    Alle im Video vorgestellten Downloads findet ihr hier auf diesem Blog unter "Downloads".

Das MapEditor Tutorial ( 12:06 )
    Ein grobes Tutorial, wie man den MapEditor der Versionen 0.1.4 und 0.1.4.1 benuzt um eigene Maps zu erstellen. Dazu kommt die Bedienung des Test-Modus' und die des Coll.-Managers. 

    Alle im Video vorgestellten Downloads findet ihr hier auf diesem Blog unter "Downloads".

Bitte schreibt mir zurück ( auf YouTube oder hier ), wie ihr die Videos findet ( sind leider ein paar mehr oder weniger unschöne Schnitte drin :/ ).

mfg
Hauke

Freitag, 10. Januar 2014

MapEditor Beta: 0.1.4.1

Hier nur eine kleine Änderung am bisherigen MapEditor.

Was wurde geändert?
Das platzieren von Texturen wurde verändert. Bisher war das Feld oben links an der Textur das, auf welchem die Textur lag, nun ist es das unten links ( s. Bild ).

Wieso wurde das geändert?
Im Spiel ist es einfacher dieses System zu verwenden, daher musste der MapEditor angepasst werden.


Um Maps für Arengu 0.0.1 zu erstellen, muss mindestens Version 0.1.4.1 verwendet werden!
( Bei 0.1.4 wird die Map auch angezeigt, Texturen sind jedoch z.T. verschoben )

Der Download erfolgt über Sourceforge.net ( Download ).

mfg
Hauke

Mittwoch, 1. Januar 2014

Arengu PreAlpha-0.0.1 Release

So, endlich ist es soweit, der erste offizielle Release vom "neuen" Arengu!

Seid euch allerdings bewusst, dass wir und noch in der PreAlpha-Phase befinden und dies die aller erste Version überhaupt ist, daher können Fehler und Ungereimtheiten durchaus auftreten und sind daher zu tolerieren ( schreibt aber bitte, wenn euch etwas auffällt, danke! ).

Download - Sourceforge.net
( Achtung: Es wird .Net 3.5 und XNA 4.0 Redistributable benötigt! )

Features:
  • Für Spieler:
    • kurzes, simples Intro
    • Laufen ( W, A, S, D )
    • Rennen ( Shift )
    • Kollisionberechnung(en)
  • Für Entwickler / Interessierte
    • Window-Management
    • Screen-Management
    • Maps ( der Version: "arengu-map-file-4.0" ) laden und darstellen
    • Pseudo-3D Berechnungen ( Charakter kann vor oder hinter einem Objekt stehen )
Screenshots:
Das Hauptmenü von Arengu.
Die Map "map_1" im Spiel.

Spielanleitung ( kurz ):
  • Starte Arengu ( öffne die Datei Arengu.exe )
  • Lies dir das aufkommende Fenster sorgfältig durch
  • Klicke auf "Spiel Starten" um das Spiel zu starten
    • "Spiel laden": Da passiert wenig, wir haben nur das Menü schon vorbereitet
    • "Beenden": Beendet das Spiel
  • Lies dir das zweite, aufkommende Fenster sorgfältig durch
  • Wähle aus zwei vorhandenen und zwei - am Anfang leeren - benutzerdefinierbaren Spielwelten eine aus
  • Habe Spaß mit der Version 0.0.1 :)

Was als nächstes kommt:
Darüber sind wir uns noch nicht ganz im klaren. Wir haben erstmal auf diese Version hingearbeitet und müssen jetzt ( auch ein wenig langfristig ) planen wie es weitergehen soll. Momentan sind einige im Urlaub oder anderweitig nicht erreichbar, weswegen wir uns erst in ein paar Wochen treffen können.

Bisher ist das Spiel noch relativ unspektakulär, da man noch keine ingame-Menüs etc. hat, aber wir befinden uns ja auch noch in der PreAlpha-Phase ( danach Alpha, dann Beta, dann die Release Candidates und danach irgendwann ist die Version 1 fertig. Es dauert also noch ).

Wie immer wäre ich über Anmerkungen, Kommentare, Kritik, etc. sehr dankbar.

Download - Sourceforge.net
( Achtung: Es wird .Net 3.5 und XNA 4.0 Redistributable benötigt! )

mfg
Hauke

Frohes neues Jahr 2014!

So, jetzt ist echt schon 2013 zu ende, kaum zu glauben!

Rückblick ( für Arengu ;) ):
  • 16.02.13: Offizielle Einstellung des Arengu-Projektes
  • 22.05.13: Offizielle Wiederaufnahme^^
    • Twitter-Account erstellt
    • YouTube-Kanal mit Tutorials, PreViews, etc.
    • Arengu in C# mit XNA neu schreiben
  • 26.06.13: Der Map-Editor geht in die Beta-Phase
  • 06.08.13: Arengu ist nun auf Source-Forge vertreten
  • 25.10.13: Eigentliches Spiel angefangen
  • 21.12.13: Fenster-Management fertig
Was 2014 kommen wird:
Ich möchte mich da nicht aus dem Fenster lehnen, daher ist hier nur aufgelistet, was ich mir wünsche, was kommen soll:
  • Arengu in der Alpha-Phase
  • komplette Story
  • vollständiges ( nicht unbedingt voll funktionsfähiges ) ingame-Menü
  • evt. ( !!! ) fertiges Quest-System
Ich wünsche euch allen auch viel Erfolg in dem, was ihr 2014 vor habt und bedanke mich ganz herzlich bei den 3000 Besuchern, die diesen Blog in 2013 besucht haben.

01010110 01101001 01100101 01101100 
01100101 01101110 00100000 01000100 
01100001 01101110 01101011 00100000 
01100001 01101110 00100000 01100001 
01101100 01101100 01100101 00100001
"Vielen Dank an alle!"

mfg
Hauke

PS.: Wenn ich die nächsten Tage fleißig bin, gibts bald die erste PreAlpha-Version von Arengu!