Laden...

Kleines 2D RPG in VS 10 (C#)

Erstellt von Dr.Med.Lol vor 13 Jahren Letzter Beitrag vor 13 Jahren 2.705 Views
D
Dr.Med.Lol Themenstarter:in
46 Beiträge seit 2010
vor 13 Jahren
Kleines 2D RPG in VS 10 (C#)

Hallo zusammen,

Ich bin daran ein kleines 2D RPG in VS 10, Windows Form, zu machen.
Habe bereits ein einfaches geschrieben, aber die Karte ist gerade mal 15x17 Felder gross, da sie in der Form Platz haben muss.

Geht das, dass man ein Grosses Bild nimmt, das grösser als die Form ist und dann wenn man sich bewegt auch verschiebt?

Laggt es dan zu fest oder ist das gut möglich?

Gibt es Alternativen dazu?

Lg Dr.Med.Lol

6.911 Beiträge seit 2009
vor 13 Jahren

Hallo,

was bedeutet hier RPG?

Geht das, dass man ein Grosses Bild nimmt, das grösser als die Form ist und dann wenn man sich bewegt auch verschiebt?

Warum nicht?
Entweder mit Graphics.DrawImage das Bild dann neuzeichnen (Doppelpufferung verwenden). Vllt. ist es auch möglich das große Bild in eine PictureBox zu stecken und diese entsprechend zu verschieden (Left und Top anpassen).

Gibt es Alternativen dazu?

Zum WinForms-Ansatz: ja zB XNA.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

D
Dr.Med.Lol Themenstarter:in
46 Beiträge seit 2010
vor 13 Jahren

RPG - Role Play Game

Bin noch nicht ein professioneller Programmierer, hab mir XNA schon angeschaut, aber bin nicht wirklich schlau draus geworden. Möchte zuerst lieber einfachere Sachen machen^^

Ich habe mir auch so was mit der Picturebox voregestellt, aber wenn man dann noch verschiedene Figuren drauf hat, ist es wahrscheinlich einfacher mit DrawImage.

Lg

6.911 Beiträge seit 2009
vor 13 Jahren

Hallo,

ich dachte eher so dass die PictureBox als "Hintergrund" ist und darauf die Figuren gezeichnet werden.

Aber suche mal im Forum - da gibt es schon ein paar Spiele (denke ich mal) wo du sehen kannst wie es gemacht wird.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

5.658 Beiträge seit 2006
vor 13 Jahren

Entweder mit Graphics.DrawImage das Bild dann neuzeichnen (Doppelpufferung verwenden). Vllt. ist es auch möglich das große Bild in eine PictureBox zu stecken und diese entsprechend zu verschieden (Left und Top anpassen).

Siehe dazu auch folgenden Artikel: [Tutorial] Zeichnen in Windows-Programmen (Paint/OnPaint, PictureBox)

Weeks of programming can save you hours of planning

D
Dr.Med.Lol Themenstarter:in
46 Beiträge seit 2010
vor 13 Jahren

Da hat es gute Ideen dabei, aber nicht so nach meinem Geschmack 😉

Werde es zuerst mal versuchen mit dem Grossen Spielfeld.
Ich habe es zurzeit so gemacht, dass die GUI und der Code getrennt sind.
Einerseits ist die Picturebox und anderseits ein 2Dimensionales Feld.

Im Feld wir erkannt was um den Spieler herum ist:

-1 = Leer
-2 = Wand

1 = Spielfigur
2= Monster

...

Bei einer Bewegung (z.B nach Rechts) wird überprüft ob das Feld[PosX,PosY] == -1 ist oder ob es besetzt ist. Wenn es ein Monster ist kann man angreifen, etc.

Hab schon gehört, dass einer verschiedene Bilder(?) gemacht hat, auf denen man mit verschiedenen Farben sieht, was frei ist und was eben nicht. Diese Möglichkeit wäre natürlich super aber hab kein Plan wie das Funktionieren könnte.

Bei meiner Version muss man bei jedem Mapwechsel das komplette Feld neu Initialisieren,was viel Zeit und Code kostet.

Werde noch weiter nach einer guten Idee fürs Spielfeld suchen, und wenn du gleich ne Idee hättest würde ich mir das gerne auch mal ansehen.

EDIT: Weiss jemand eine einfachere Variante als das 2Dim Feld?
Hab schon gesucht aber kein Beispiel für eine Spielkarte gefunden.

Lg Dr.Med.Lol

C
92 Beiträge seit 2010
vor 13 Jahren

Hallo Dr.Med.Lol,

ich weiß, dass es vllt jetzt etwas unpassend ist:

Aber wenn es dir mehr um das RPG-Spiel geht, als um das Programmieren, dann kann ich dir den RPG-Maker empfehlen... da kannste du ne Menge damit machen und musst dich nicht um jede Kleinigkeit kümmern...

mfg Cuin

D
Dr.Med.Lol Themenstarter:in
46 Beiträge seit 2010
vor 13 Jahren

Ich möchte dabei natürlich etwas besser C# kennen lernen 😉

Das Spiel ist einfach als kleines Projekt gedacht.

Aber danke für den Tipp