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

1

08.10.2014, 15:43

"Spielbares" Spiel basierend auf Graphen

Für ein Informatikprojekt in der Schule sollen wir etwas mit Graphen schreiben. Wegen meinem Enthusiasmus für Computerspiele sollte es natürlich so eines sein ;)

Obwohl ich schon lange im Internet gesucht habe, habe ich leider nichts gefunden. Nur etwas trocken klingende graphentheoretische Probleme, die nicht wirklich "unterhaltsam" aussehen. Deshalb brauche ich eure Vorschläge.

Die einzige zwingende Voraussetzung ist, dass der unterliegende Graph nicht zwingend planar sein müssen darf.

Ansonsten wäre es besser, wenn der Graph auch nicht zwingend schlicht wäre, das Spiel nicht zu schwer zu verstehen wäre und es ein Ein-Spieler Konzept wäre.

Vielen Dank im Voraus für eure Ideen!

2

08.10.2014, 16:19

Das was mir einfallen würde, wäre folgendes:
Es gibt einen einfachen Navigations-Algorithmus der auf Graphen basiert vom Herrn Dijkstra.
Wie wäre es, wenn man selbst den "Algorithmus spielt", heißt, du hast einen Startpunkt für die Figur und musst
sie möglichst über den kürzesten (bzw schnellsten, whatever die Gewichtung besser beschreibt) zum Ziel bringen.
Ziel darf natürlich nicht arg nahe liegen, sonst ists Sinnlos.

Um es nicht einfach zu machen, "sieht" man nur die nächsten Knoten, also die, die man direkt erreichen kann und ihre Kosten.
Man hat dann, je nach Schwierigkeitsgrad verschieden oft, die Möglichkeit sich einen Überblick zu verschaffen.
Heißt auf Leicht hat man z.B. 5 mal die Chance sich das Feld an zu sehen.
Auf Schwer vll nur ein mal.
Um das "cheaten" zu begrenzen, darf man sie sich aber nicht beliebig lange anschauen, sondern nur für sagen wir 5 Sekunden (natürlich kann man über
Strg + Druck das ganze als Bild speichern lol).

Da kann man gut mehrere Level haben und die Punkte werden dann anhand des eigentlich schnellsten Weges berechnet.
Dazu solltest du dann Dijkstra implementieren.

Man kann das ganze noch viel schwerer machen, wie z.B. nach anschauen der Übersichtskarte muss man sich innerhalb der nächsten 5 Sekunden entscheiden (oder generell), die Anzahl der Kanten die ein Knoten hat kann signifikant gesteigert werden (z.B. hat ein Knoten dann 10 Verbindungen, was ziemlich schwer ist).
Da gibt es unendlich viele Möglichkeiten. Ganz schwer wird es, wenn zusätzlich zur Gewichtung der Kanten auch noch eine Richtungsbeschränkung vorliegt.
Hat man sich da verlaufen, kann man schlecht zurück, sodass man evtl sogar einen Umweg in Kauf nehmen muss.

Graphisch in 2D ist das noch nicht mal schwer darzustellen.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »JustJim« (08.10.2014, 16:26)


Sacaldur

Community-Fossil

Beiträge: 2 301

Wohnort: Berlin

Beruf: FIAE

  • Private Nachricht senden

3

08.10.2014, 17:00

Die zu Grunde liegende Aufgabe ist es ja, etwas zu schreiben, was Gebrauch von Graphen macht. JustJim hat zwar etwas vorgeschlagen, was "Graphen" als Thema verwendet, allerdings würde das nicht notwendigerweise auch Graphen für Berechnungen verwenden und es dürfte schwierig werden, das einigermaßen interessant (Darstellung, Spielspaß, ...) umzusetzen.

Wegfindungen werden häufig mit Graphen umgesetzt, wie bereits erwähnt. Willst du ein Spiel entwickeln, wäre das Einfachste also etwas, was intern für bspw. die KI eine solche Wegfindung verwendet. Je nachdem, was von euch genau erwartet wird, ist evtl. die Wegfindung an sich bereits genug, um die Aufgabe zu erledigen.
Damit die Wegfindung etwas interessanter wird, könnte es gewisse "Abkürzungen" geben, wie bspw. die in Portal verwendeten Portale o. ä. Eine Mechanik könnte bspw. sein, dass man über das Anpassen der Wege die verwendeten Wege anpasst. So könnten entweder Feinde von einem abgelenkt werden, der Spieler an statisch positionierten Hindernissen vorbei navigiert werden oder etwas ganz anderes gemacht werden. Wichtig wäre nur, was den Weg suchen soll, wohin dieser führen soll, was die Konsequenzen der Ankunft sind und welche Hindernisse es zwischenzeitlich geben kann, genauso wie deren Umgehung oder Beseitigung.

Da es aber "nur" eine Schulaufgabe, solltest du dich da nicht zu sehr übernehmen und etwas kleines, aber ausreichendes machen. Bei Pac Man versuchen die Geister bei jeder Abbiegung einen möglichst passenden (/kurzen) Weg zum Spieler zu finden, der nicht von einem anderen Geist verwendet wird. Das alleine könnte schon ausreichend sein und es ist ein Spiel. ;)
Spieleentwickler in Berlin? (Thema in diesem Forum)
---
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].

4

08.10.2014, 17:27

Naja gut, die Punkte-Berechnung findet ja aufgrund des Algos statt.
Man könnte ja auch Hints haben, die den Algo nutzen und den nächsten sinnvollen Schritt zeigen.
Und mittles XNA und C# wäre das auch nicht sonderlich schwer umzusetzen.

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

5

09.10.2014, 22:57

Mit einem Graph kann man sowas in der Art darstellen: http://de.wikipedia.org/wiki/Rasende_Roboter

Vielleicht reicht das als Anregung.

Renegade

Alter Hase

Beiträge: 494

Wohnort: Berlin

Beruf: Certified Unity Developer

  • Private Nachricht senden

6

13.10.2014, 01:19

Mir fällt da spontan die Landschaft von Tiny Wings ein.

(Link)
Liebe Grüße,
René

birdfreeyahoo

Alter Hase

Beiträge: 756

Wohnort: Schorndorf

Beruf: Junior Software Engineer

  • Private Nachricht senden

7

13.10.2014, 07:12

Eine Art rundenbasiertes Strategiespiel im Kleinformat?

Werbeanzeige