Textbasiertes Spiel mit JavaScript und / oder PHP

7

Ich möchte ein einfaches textbasiertes Spiel mit JavaScript oder PHP erstellen. Idealerweise möchte ich in der Lage sein, ASCII-Text in einer Art Schwarzkonsolen-Konsolenstil zu rendern (denken Sie an Konsolen-Roguelikes wie Crawl oder Nethack oder alte Infocom-Text-Abenteuerspiele). Das Spiel wäre einfach, meistens Texteingabe und Menüauswahl.

Ist dies einfach mit JS oder PHP möglich? Wenn ja, können Sie mir einige Hinweise geben, und wenn nicht, was könnte ich verwenden, um diese Art von Spiel über einen Browser anstatt über eine ausführbare Datei auszuführen?

Persepolis
quelle
Verwenden Sie keine ausgefallenen Frameworks, nur um dies zu erreichen. Schauen Sie sich auch eine fertige Javascript-Konsole an: openexchangerates.github.io/javascript-sandbox-console Es gibt möglicherweise andere, da ich mich erinnere, dass ich eine andere verwendet habe, aber diese habe ich bei einer Schnellsuche gefunden .
Rootlocus

Antworten:

10

Sie könnten das gesamte Spiel sicher in JavaScript erstellen. Beachten Sie, dass der Quellcode für den Benutzer sichtbar ist. Wenn Sie also über Betrug besorgt sind (wahrscheinlich kein Problem, wenn es sich nur um ein Einzelspieler-Spiel handelt), sollten Sie Ihre Spielelogik auf dem Server haben.

JavaScript und PHP werden definitiv funktionieren.

Wenn ich ein solches Spiel erstellen würde, würde ich Folgendes tun:

  • Verwenden Sie für den Client ein robustes JavaScript-Framework wie jQuery oder Mootools .
  • Schreiben Sie die Spielelogik in PHP. Dies könnte einfaches PHP sein, aber ein Framework wie Zend , Saphire oder Symfony kann die Entwicklung komplexer Projekte erheblich beschleunigen.
  • Versuchen Sie, Ihre Spielquests und Gegenstände in Datendateien oder einer Datenbank zu speichern, um Aktualisierungen Ihrer Spielwelt zu ermöglichen. Vermeiden Sie es, Ihre Daten in Ihrem Code zu haben.
  • Beginnen Sie mit einfachen Seitenanforderungen zum Testen und wechseln Sie dann zu asynchronen Anforderungen (AJAX), um eine bessere Benutzererfahrung zu erzielen.
  • Beginnen Sie immer mit der einfachsten Eingabemethode. Ein Formularfeld und eine Sendetaste sollten ausreichend sein , einige Benutzereingaben an den Server zu starten , sendet. Sie können komplexere Methoden in Ihrem Client implementieren, sobald die grundlegende Kommunikation funktioniert.
  • Traue der Benutzereingabe nicht! Überprüfen / bereinigen Sie immer die vom Client stammenden Daten.
bummzack
quelle
2

Zusätzlich zu Bummzacks Antwort, die ziemlich gut ausgearbeitet ist, würde ich Ihnen einen Rat geben.

Stellen Sie vor dem Animieren sicher, dass Ihr PHP solide ist. Eine gute Möglichkeit zum Testen besteht darin, mehrere Schaltflächen auf der Seite für Ihre verschiedenen Aktionen zu haben und diese mit einem einfachen POST-Aufruf zu verwenden.

Wenn Sie Ihre Spielverarbeitungslogik festnageln können, sollte die Animation ein einfacher Schritt nach vorne sein. Das Debuggen von AJAX-Anforderungen kann jedoch Kopfschmerzen bereiten, wenn Sie nicht vorsichtig sind.

dich
quelle
1

Dies ist in Javascript sehr gut möglich. Sie können auch Ihre bevorzugte Konsolenschrift aus einer .ttfoder .otf-Datei laden .

Moritz Laass
quelle
0

Ja, sollte in HTML / JavaScript ziemlich einfach zu tun sein. Nehmen Sie einen Vorblock und stylen Sie ihn nach Belieben. Für die Eingabe sollten Sie wahrscheinlich Texteingabefelder weglassen und nur die Schlüsselereignisse verwenden.

aaaaaaaaaaaa
quelle