Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Ein paar von euch haben es vielleicht schon im IRC mitbekommen, dass ich seit "geraumer" Zeit an einem Konsolen-RPG arbeite und da ich nun - imo - in einem herzeigbarem Stadium angelagt bin, wollte ich hier jetzt eine Präsentation erstellen um etwas Feedback zu erhalten.
Bei dem Projekt ging es mir primär eigentlich darum, mal ein fertiges(!), einfaches Spiel in C++ zu programmieren. Da mein Lieblingsgenre Rollenspiele sind und ich schon vor Jahren und zu meinen Anfängen immer wieder einmal kleine, unfertige Konsolen-RPGs geschrieben habe, wollte ich in dieses Projekt all meine Energie, Ideen und v.a. Motivationen reinstecken.
Das Spiel selbst ist nichts großes. Eine kleine Story mit den Standarddingen, was ein RPG eben so brauch (NPCs, Items, Zauber, ...).
Für die Konsole habe ich mich v.a. deswegen entschieden, weil es mich an meine Anfangszeiten zurückerinnern lässt, wo ich mit dem Ganzen begonnen habe und weil ich mich nicht mit Grafiken herumplagen wollte. Characters tuns auch
Dass ich es, wenn es soweit in der Konsole fertig ist und ich halbwegs zufrieden bin, in SDL umgeschrieben wird (oder irrlicht) und dann mit Grafik und Maussteuerung erweitert wird, ist eigentlich schon eingeplant, aber ist vorerst mal nebensächlich.
Aber genug der vielen Worte...
Was will ich eigentlich?
Mir persönlich geht es v.a. darum, dass mir erfahrenere Leute Feedback zu meinem Code geben und Verbesserungsvorschläge liefern oder Anregungen, wie ich was besser machen könnte.
Wie anderen das Spiel gefällt, oder was Ihr davon hält, ist mir vorerst mal nicht so wichtig. Es ist eben kein weltbewegendes Spiel mit epischer Atmosphäre, sondern einfache ein simples textbasiertes Spiel, das viele vermutlich nicht mal begeistern wird.
Ebenso versuche ich das Projekt so sauber wie möglich runterzuziehen, weshalb im Code teilweise mehr Kommentarzeilen als eigentlich Code zu finden sind
Weiters habe ich einen kleinen Überblick über die Klassen, Spielprinzipien, Spielwelt, usw. angefangen. V.a. das Klassendiagramm und die Beschreibungen sind noch nicht 100% fertig, da ich beim Programmieren selbst oft dahinterkomme, dass ich Dinge anders lösen will/muss.
Was kann man bereits tun?
Derzeit kann man sich mit dem Held über die Karten bewegen und mit den 3 NPCs im Dorf unterhalten. Ebenso gibt es schon ein Handelsfenster und Itemverwaltung (wie z.B. Ausrüstungtauschen, wenn man zwei Waffen kauft[z.B. Knüppel und Kurzschwert]).
Woran ich derzeit arbeite?
Momentan habe ich die Itemverwaltung( Ausrüstung für den Helden, Handeln, Itemtausch, usw. ) "abgeschlossen" und werde als nächstes ein einfaches Questsystem soweit Kampfsystem angehen. Dabei werde ich wohl eine einfach "Scriptsprache" entwerfen, die nicht viel beinhalten wird, außer Einheiten erstellen, Questfortschritt updaten, wenn bestimmte Ereignisse eintreten/Bedingungen erfüllt sind, u.ä.
Update:
Habe jetzt soweit die ganzen Grundbausteine des Spiels fertig. Das Questsystem läuft und die NPC Stateverwaltung läuft auch soweit fehlerfrei.
Als nächstes kommt jetzt ein einfaches Kampfsystem.
Projekt Daten
Grafik: über die Konsole mit den entsprechenden Funktionen
Sound: Irrklang
Eingabe: GetAsyncKeyState
"Objektdatenverwaltung": Die läuft hauptsächlich über xml files, die ich im Code dann parse und die entsprechenden Werte zuweise.
Backspace -> Text ohne Wartezeit anzeigen, Kampfbildschirm verlassen
Credits
Tales of Phantasia [SNES] -> Sounds
Lufia2 [SNES] -> Sounds
Ensifeerum Victory Song (Fnafare und Todessound)
Irrklang -> Soundwiedergabe
IrrXML -> xml parsen
dot -> hilft mir eigentlich immer weiter, sofern er Zeit hat
nox_firefly -> dito
Aktuelles für neue Version
texte kann man jetzt ohne wartezeit mittels BACKSPACE anzeigen lassen. dadurch wird die wartezeit zwischen den characters für eine "bildschirmlänge" auf 0 gesetzt.
das "flackern" zwischen dem equippmentchangewindow und handelsfenster wurde gefixed
im kaufmenü kann man jetzt bei item0 auch nach oben gehen um sofort zum punkt abbrechen zu gelangen und umgekehrt.
gegenstand wechseln bildschirm ist jetzt besser formatiert. weiters sieht man jetzt auf einen blick, ob der neue gegenstand besser/schlechter ist, in dem der wert rot(schlechter),weiß(gleich) oder grün(besser) angezeigt wird.
in der heldeninformation wird der itembonus jetzt korrekt zu den heldenwerten hinzugezählt. 12 (+5) heißt z.b., dass der held 7 schaden austeilt und 5 zustzälichen schaden durch gegenstände = 12 schaden insgesamt.
auf der karte befinden sich jetzt gegner, die bei kollision einen kampf auslösen (kampf ist noch nicht implementiert. wird wohl für die nächste version ein simples zuschlagen werden.)
Die erste Quest ist fertig. Sprecht mit dem Blumenmädchen im Dorf (durch ein B gekennzeichnet). Ebenso wurden der Älteste, Schmied und Händler etwas "erweitert". Man muss jetzt zuerst mit dem Ältesten reden, bevor Schmied und Händler ihre Waren anbieten.
Danke, danke, danke, danke, danke. Dass ich so etwas noch erleben darf.
Ja, da kann ich nur zustimmen. Bis jetzt sieht es soweit alles recht gelungen aus und wenn du weiter daran arbeitest, kann ich mir vorstellen, dass es bestimmt ein gutes Spiel wird.
Dein Code sieht auch recht sortiert und durchdacht aus.
Ich hab es angespielt und fand es etwas komisch.
Das Gespräch mit dem ältesten dauert irgendwie unnötig lange, weil man den Text nicht schneller scrollen lassen kann. Wenn man ihn ein zweites mal anspricht, kann man den Text nicht schneller erscheinen lassen, oder sonstwie abbrechen, aber nach dem ersten Abschnitt blinkte irgendwas kurz auf und dann war ich im Charakterbildschirm. Irgendwie ist da das hin und her springen zwischen den einzelnen Zuständen sehr merkwürdig.
Das selbe gilt auch irgendwie für die Steuerung, die ist etwas schwammig oder wird verspätet ausgeführt.
Den Rest fand ich aber eigentlich ganz lustig. So ein Konsolen spiel nochmal zu sehen hat schon was. Die Musik passt da auch ganz gut rein und lässt das ganze nicht so altmodisch wirken.
Allerdings konnte ich schön aus dem Dorf rauslaufen, aber dann kam nix interessantes mehr. Nur recht große Levels mit vielen Laufwegen aber keinem einzigen Gegner.
Insgesamt solltes du versuchen, die Spieleinstieg möglichst einfach und intuitiv zu gestalten. Dann könnte es ein ganz interessantes Spiel werden.
wie gesagt ist es ja noch lange nicht fertig.
habe die wartezeit bei den texten bei mir zum testen natürlich ausgestellt, aber das soll v.a. das alte feeling vermitteln (man kennt es vl aus snes rollenspielen, wo auch so buchstabe für buchstabe erschien mit nem "biepton" ).
dass man den kompletten text ohne wartezeit anzeigen lassen kann, wird kein problem sein und wird auch definitiv noch eingebaut.
die steuerung selbst ist leider wirklich etwas schwammig, weil GetAsyncKeyState iwie die tastendrücke für kurze zeit zu speichern scheint.
mir ist das jedenfalls aufgefallen, dass wenn ich ins heldeninfo menü gehe und escape vor enter drücke, wird das spiel danach beendet, weil er sich das escape iwie merkt.
wie man das fixed, weiß ich leider nicht. ich weiß nur, dass das bei der sdl-variante dann nicht mehr so sein wird, da dort die tastenabfrage fehlerloser(frei) funktionierte.
hatte auch im irc einmal nach einer alternativvariante gefragt OHNE zusatz dlls oder sonstigem quatsch. leider keine antwort erhalten :/
Zitat
Ich schreibe grad an einer OpenGL-basierten 2D Engine, die ich für den selben Zweck verwenden wollte. Wie wärs?
mal schauen
ich habe teilweise recht viel im RL zu tun und bin nicht immer am programmieren, wenn ich mal freizeit habe. deswegen kann es schonmal vorkommen, dass ich ein monat pause einlege, bis ich mal wieder weitermache.
würde nach persönlicher einschätzung sagen, dass ich noch bis zum sommer minimum brauchen werde, bis alles so läuft, wie ich es gerne hätte.
Ich schreibe grad an einer OpenGL-basierten 2D Engine, die ich für den selben Zweck verwenden wollte. Wie wärs?
mal schauen
ich habe teilweise recht viel im RL zu tun und bin nicht immer am programmieren, wenn ich mal freizeit habe. deswegen kann es schonmal vorkommen, dass ich ein monat pause einlege, bis ich mal wieder weitermache.
würde nach persönlicher einschätzung sagen, dass ich noch bis zum sommer minimum brauchen werde, bis alles so läuft, wie ich es gerne hätte.
Ist bei mir nicht anders. Aber wenn du dann noch Interesse hast, melde dich ruhig.
...im Übrigen ein toller Ava. Viel Erfolg weiterhin!
Da werden Erinnerungen wach.. Freut mich das du die Console RPG's wieder etwas aufleben lässt ^_^ Ich wünschte Tears of Blood wäre jemals fertig geworden..