Textadventure - Welche Sprache?

letitbeknown

Lieutenant
Registriert
Aug. 2012
Beiträge
710
Servus,

ich habe Lust ein eigenes kleines Spiel zu entwickeln, welches textbasiert ist.

Das ganze soll dann in etwa so ablaufen:

'A cave troll attacks you. What do you do?'

und dann muss man ein bestimmtes Wort oder einen Satz eingeben wie z.B. 'Attack' und dann werden dem Troll HP abgezogen und man kann weiter 'Attack' schreiben etc. etc.

Nun die Frage:

In welcher Sprache schreibe ich das denn am einfachsten?

Ich möchte nichts kompliziertes machen, wirklich nur if -> then Sachen und so etwas.

Am besten wäre es, wenn es zu dieser Sprache in Quicktutorial für Einsteiger gäbe, da ich sowas noch nie gemacht habe :)
 
Das ginge ja sogar in der einzigen Sprache die ich in der Schule gelernt habe: QuickBasic. Aber bestimmt gibts da auch was "angenehmeres".

Klingt übrigens sehr nach dem was Sheldon in einer Folge von Big Bang Theory spielt :D
 
Du meinst das Spiel Zork? :)

Ja ich hatte so eine Idee schon länger und jetzt habe ich gerade richtig Lust drauf :D

Ist QuickBasic nicht die Sprache die von VisualStudio undso verwendet wird?
 
Ich kann dir PHP empfehlen.

Vorteile:
- du machst alles sofort online, kannst es also mit freunden teilen
- sehr einfach zu lernen, du brauchst dich nicht mit etlichen initialisierungen oder typecasts rumärgern, sondern kannst sofort drauf los programmieren (Trial&Error wird dir sehr behilflich sein, meines erachtens nach ist das die beste methode um zu lernen)
- es gibt tausende tutorials und eine super dokumentation

Nachteile:
- du brauchst webspace. Den bekommst du aber auch kostenlos, z.B. bei bplaced.net
- Du solltest etwas html für die aus/eingabe beherrschen

Alternative: Java mit BlueJ, auch trotz der aufwändigeren Sprache noch gut für Anfänger geeignet.
 
Richtig, denk über php nach, html5 sollte auch in betracht gezogen werden .... leicht zu lernen und die beiden sprachen kannste auch danach noch nüzlich einsetzen.
 
Online möchte ich lieber nicht, ich möchte nicht an einen Webspace gebunden sein und das Spiel als ausführbare Datei mit mir herumtragen können.

Was ist BlueJ bzw. was sind Vorteile, Besonderheiten?
 
Ich würde Deutsch nehmen!
:D
 
semiogeny schrieb:
Du meinst das Spiel Zork? :)

Ja ich hatte so eine Idee schon länger und jetzt habe ich gerade richtig Lust drauf :D

Ist QuickBasic nicht die Sprache die von VisualStudio undso verwendet wird?

Richtig. das gute ist, dass du ja echt nur Grundbefehle brauchst. Also im prinzip nur:
DIM aktion AS STRING
INPUT 'A cave troll attacks you. What do you do?', aktion
IF aktion="attack" THEN GOTO 30


so ungefähr säh das dann aus...bei Zeile 30 hättst du dann die nächste Textausgabe. geht natürlich auch mit ELSE Bedingungen
 
Ja ähm .. und wie mach ich das jetzt?
Und was ist DIM aktion AS STRING?
String ist wahrscheinlich eine Folge von Zeichnen in Form eines Satzes? :D

Kleines Tutorial bräuchte ich dann doch :b
 
Da braucht man keine General-Purpose Sprache für nehmen. Es gibt Inform für genau das.
Einen Textparser zu schreiben ist nichts für mal eben so nebenbei. Vor Allem, wenn man
nichtmal weiß, welche Sprache man nehmen soll, also tendentiell nicht unbedingt Experte
ist.

http://en.wikipedia.org/wiki/Inform
 
Prinzipiell geht's in fast jeder Sprache, außer Deutsch... :P
Da du ja anscheinend relativ unerfahren bist im Programmieren würde ich meine Entscheidung nach dem grundlegenden Interesse fällen. Soll heißen: Willst du da mal mehr machen?

Sofern du die Frage mit Ja beantwortest, würde ich QuickBasic, bzw. den angesprochenen Programmierstil von Hippocampus eher vermeiden.. mit dem goto-Befehl lassen sich ein paar unschöne Sachen anstellen, und da geht die Übersichtlichkeit schnell flöten xD. Java wär für den Anfang nicht schlecht, leicht zu erlernen und die Sachen lassen sich alle recht einfach umsetzen. Mit dem BufferedReader/Scanner für die Eingabe und simples System.out.println hättest du quasi die ganze Konsolenein- und ausgabe. Tutorial such ich morgen mal raus, die meisten finde ich für schnelle Resultate etwas ungeeignet. Python wäre auch einen Blick wert, soll auch rel. simpel sein, habe mich aber damit noch nicht beschäftigt.

Sofern du dich dafür nicht interessierst, wäre neben Basic auch AutoIt eine Empfehlung wert, die Scripte lassen sich auch als Konsolenanwendung ausführen. Für die einfachen Kontrollstrukturen reicht ein kurzer Blick in das Tutorial, und für dein Vorhaben das Nachschlagen der Console-Funktionen in der Funktionsreferenz.
 
Frage mich wieso keiner an ruby denkt?

Ist direkt OOP, hat nette sprachkonstrukte wie yields, auto get/set etc.
War für mich auch recht leicht zu lernen, ein halb tages intensiv kurs sollte reichen, wenn man gar keine programmier vorkenntnisse hat vlt. einmal nen buch durcharbeiten.

damit kannst direkt ausführbare datein erstellen oder mit Ruby on Rails auch ne webanwendung + das du damit in die Zukunft investierst. PHP steht ja seit jahren still und wenn man sich mal alle Benchmarks und Geschwindigkeitsvergleiche ansieht ist Ruby der klare gewinner, weshalb ich meine projekte nun auch nach und nach in ruby umwandel.

Was ich allerdings noch sagen wollte, das du ein text adventure nur mit if...then... anweisungen bauen willst, aber auch soetwas wie kämpfe drinne haben möchtest du dir ein nahezu unmögliches Projekt aufgehalst hast.

Ein wenig mit Types (Basic) oder structs (c) oder klassen (objekt orientiert) sollte man vlt. schon arbeiten, einfach um code der das selbe tut nicht auch jedesmal komplett neu einfügen zu müssen.

Ansonsten haben wir uns früher auch mal an textadventures gewagt und damals glaub ich BlitzBasuc benutzt?
Ansonsten ist DarkBasic sehr interessant!

Das ist eine an Basic angelehnte Sprache für Direct X10.

So kann man das ganze auch schnell ein wenig Grafisch aufhübschen da man direkt mit Sprites oder sogar mit 3D Modellen arbeiten kann, wenn man will und die Sprache sich um die sonstige Konfiguration kümmert.

Gibt außerdem eine einigermaßen aktive community ;)

http://www.thegamecreators.com/
 
Zuletzt bearbeitet:
Leute, Leute...

Geht es hier darum, dem OP zu helfen, oder seine Lieblingsprogrammiersprache zu propagieren?

Inform habe ich noch nie benutzt und keine Ahnung, ob ich es mag, aber es ist GENAU DAS, was OP braucht.
 
semiogeny schrieb:
Ja ähm .. und wie mach ich das jetzt?
Und was ist DIM aktion AS STRING?
String ist wahrscheinlich eine Folge von Zeichnen in Form eines Satzes? :D

Kleines Tutorial bräuchte ich dann doch :b

Mit einem Tutorial ist es sicherlich nicht getan, wenn Du noch gar keinen Kontakt mit Programmiersprachen hattest!

Wenn das Ziel nicht sein soll, eine Hochsprache zu lernen, würde ich Dir auch ein Autorensystem wie Inform empfehlen, das speziell für Text Adventures entwickelt wurde!

Inform 7 Introductory Screencast
 
Ich hab ja gleich gesagt, dass es bestimmt bessere Sprachen gibt.
Der einzige Vorteil den Basic liefert: Man lernt wie das Programmieren an sich abläuft, quasi als einstieg zu komplizierteren Sprachen.

nur um die Frage vom TE noch zu beantworten:

semiogeny schrieb:
Und was ist DIM aktion AS STRING?Kleines Tutorial bräuchte ich dann doch :b

Die Zeile braucht man, damit die variable "aktion" (könnte man natürlich auch einfach nur x nennen) den Typ STRING bekommt, also eine Zeichenfolge ...und nicht etwa eine Zahl oder ein wahr/falsch Wert etc

ein kleines Tutorial wirst du dir bei jeder Sprache durchlesen müssen.
 
Zurück
Oben