Du bist nicht angemeldet.

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!

Werbeanzeige

LeBusch

Frischling

  • »LeBusch« ist der Autor dieses Themas

Beiträge: 81

Beruf: Student B.Sc. Informatik

  • Private Nachricht senden

1

22.10.2013, 00:02

Kleine "2D-RPG-Engine"

Guten Abend,

Mein Name ist Fabian, ich bin 17 Jahre alt und besuche momentan die 12. Klasse des Gymnasiums. Ich programmiere seit knapp 4 Jahren in VB(.Net) und Pascal, seit kürzerem auch in C++ und C#. Bei der Entwicklung dieses Projektes entschied ich mich jedoch bewusst für VB.Net, da ich mit VB die meiste Erfahrung habe und sich mit GDI+ ohne allzu großen Aufwand ansehnliche Ergebnisse erzielen lassen.

Nun zur Entstehungsgeschichte:
Mich und viele meiner Freunde verbindet die Leidenschaft des gepflegten Zockens, sodass wir eines Tages den Entschluss fassten, selbst ein Spiel zu entwickeln. Die Arbeitsteilung war mehr oder weniger klar: eine Freundin, die schon jahrelang zeichnet, übernimmt die Tilesets, Charaktere usw., ein Kumpel entwirft (sobald die Basis steht) die Maps und eine Story, ich programmiere. Ursprünglich hatte ich überlegt, das ganze Spiel "geschlossen" zu entwickeln, also keine (offiziellen) Möglichkeiten für Erweiterungen usw. zu bieten. Ich merkte jedoch schnell, dass auf kurz oder lang die Level-Entwicklung per Texteditor nicht funktionieren konnte. Also entwickelte ich zusätzlich noch einen Leveleditor und sorgte dafür, dass auch Charaktere, Tilesets, Musik usw. frei modifizierbar sind. Die neue Leitidee war für mich schnell klar: ich entwickle eine RPG-Engine, die sowohl mit den Tilesets, Charakteren und Storys meiner Freunde, aber auch mit Mods und Content von jedem anderen funktioniert. Theoretisch kann man also ein Level mit Pokemon-Tileset laden und den Pokemon-Charakter auswählen, oder ein Level mit irgendeinem x-beliebigen Tileset und x-beliebigen Charakter laden und beide haben rein gar nichts gemeinsam. Sie funktionieren völlig autark. Soweit funktionierte das auch ganz gut. Mittlerweile bin ich mit dem Projekt bei knapp 10.000 Zeilen angekommen und habe mich entschlossen, noch einmal neu anzufangen. Warum? Weil ich während der Entwicklung so viel dazugelernt habe, dass sich mein Programmierstil im Laufe der Entwicklung (Immerhin knapp 4 Monate) so stark verändert hat, dass ich mich selbst kaum noch darin zurechtfinde. Außerdem sehe ich mittlerweile (vor allen Dingen, seit ich mich mit C++ beschäftigt habe) ein, dass ich an manchen Stellen äußerst unsauber programmiert habe. Viele Fehler lassen sich aber nicht "einfach so" ausbessern, sondern bedürfen drastischer Eingriffe. Und dieser Aufwand lohnt sich meines Erachtens einfach nicht, weshalb ich alles von Grund auf neu schreiben werde.

Warum aber stelle ich das Projekt ausgerechnet jetzt vor, wo ich doch eh alles neu machen möchte? Nunja, in erster Linie, um Feedback darüber zu erhalten, ob ich wieder auf genau diesen Stand hinarbeiten soll bzw. ob das Konzept an sich zusagt. Schonmal im Voraus die Änderungen, die in der neu geschriebenen Version ihren Platz finden:
- Parallelisierung von Rendering und Ticks (Gleichzeitig Begrenzung der FPS auf ~58 - Ergebnis: ca. 8000 statt 170 Ticks pro Sekunde :) )
- Die Kamera ist auf den Spieler fixiert, nicht auf den Mittelpunkt des Levels
- Level haben keine feste Größe mehr

Ansonsten gibt es noch etliche kleine Änderungen, die aber größtenteils für den User nicht bemerkbar bzw. "programmintern" sind.

Screenshots:

(Link)



(Link)


Für den Fall, dass ihr das Spiel ausprobieren wollt, habe ich es bei file-upload hochgeladen: Download. Der Upload als Dateianhang war leider nicht möglich, da das Spiel mit seinen 15MB die Grenze von 1MB knackt.

Ihr benötigt lediglich das .Net-Framework v4.0 und die beigelegte Font-Datei, die als Ersatz für das schöne "fixedsys"-Font dienen muss :( Außerdem würde ich euch empfehlen, die Readme zu lesen. Falls ihr testweise eigene Level entwickeln möchtet, muss ich euch warnen: Der Leveleditor ist noch recht buggy. Er wird im Zuge des kompletten Neuanfangs aber sowieso nochmal neu geschrieben. Die Basics sollten aber gehen, nur Animationen usw. verkraftet er noch nicht wirklich. Die "Server.exe" ist momentan noch nutzlos - zwar kann der Server schon TCP-Clients, die über den Port 1000 funken, erkennen, ansonsten hat er aber noch keine Funktion. Das liegt in erster Linie natürlich daran, dass das entsprechende Gegenstück im Spiel noch fehlt.

Beste Grüße,
Fabian

//EDIT: Steuerung vergessen. "Pfeiltasten" zum bewegen, "Enter" zur Auswahl und zum Ansprechen von Charakteren, "Backspace" zum Öffnen des Pausenmenüs.

Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von »LeBusch« (29.01.2014, 18:24)


David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

2

23.10.2013, 22:17

Sieht sehr schön aus, erinnert mich an die guten alten Zeiten. Hab's aber noch nicht angespielt.
Das mit dem Neuanfangen kenne ich auch nur zu gut. Ich denke aber, dass sich das legt, wenn man mehr Erfahrung hat. Dann macht man instinktiv mehr Dinge richtig ;)

3

24.10.2013, 00:57

Also vom aussenher erinnert es mich an die ersten Pokemonspiele auf den (wie nennt man die nochmal) Gameboy glaube ich. Blau oder rote Edition nannte man die :D

Gefällt mir sehr gut!

4

24.10.2013, 01:15

Wär hier wohl der GameBoy Color :D
Gefällt mir!

MfG
Check

5

29.10.2013, 11:17

Sehr süß gemacht, weiter so!

LeBusch

Frischling

  • »LeBusch« ist der Autor dieses Themas

Beiträge: 81

Beruf: Student B.Sc. Informatik

  • Private Nachricht senden

6

01.11.2013, 20:33

Nabend,

Schön, dass das Spiel bei einigen Erinnerungen an die GBC- und Pokemon-Zeit hervorruft. Denn in die Richtung sollte es auch gehen - der Grafikstil ist beeinflusst durch etliche Stunden Pokemon, Zelda usw. Aber dass das so offensichtlich ist, hatte ich nun auch nicht erwartet :)

Im Anhang findet ihr eine (lauffähige, aber noch sehr "einfache") Version des Neuanfangs. Es wird wieder das "Fixedsys Excelsior"-Font benötigt. Falls ihr es euch herunterladet, wäre es außerdem noch nett, wenn ihr etwaige Bugs oder Probleme melden könntet.

Grüße,
Fabian
»LeBusch« hat folgende Datei angehängt:
  • RPG.zip (202,19 kB - 77 mal heruntergeladen - zuletzt: Gestern, 23:17)

buzz-steve

Frischling

Beiträge: 51

Beruf: Software Architekt

  • Private Nachricht senden

7

03.11.2013, 21:43

Zitat

Aber dass das so offensichtlich ist, hatte ich nun auch nicht erwartet


Naja, du hast in der Demo sogar die Sprites aus Pokémon verwendet und da ist die Inspiration schon sehr offensichtlich ;)

Bifa11

Frischling

Beiträge: 26

Wohnort: Pforzheim

Beruf: Schule

  • Private Nachricht senden

8

04.11.2013, 21:14

Tolles Spiel

Bis jetzt ist ja no ned viel drin aber wen du so weitermachst Respekt! :thumbsup:
Träume nicht dein Leben, sondern lebe deinen Traum!!!! :)

LeBusch

Frischling

  • »LeBusch« ist der Autor dieses Themas

Beiträge: 81

Beruf: Student B.Sc. Informatik

  • Private Nachricht senden

9

05.11.2013, 11:30

Naja, du hast in der Demo sogar die Sprites aus Pokémon verwendet und da ist die Inspiration schon sehr offensichtlich ;)
Das Tileset bzw. den Charakter habe ich mittlerweile ja schon wieder gelöscht. Den hatte ich nur als "Testobjekt" drin, als wir noch kein eigenes Tileset hatten. ;)

Werbeanzeige