Adventure-Script-Sprache - wie sollte sie aussehen?

Der Anlaufpunkt für alle, die selbst ein Adventure programmieren wollen.
Antworten
Gast

Adventure-Script-Sprache - wie sollte sie aussehen?

Beitrag von Gast »

Hallo,

Ich bin gerade dabei von Zeit zu Zeit am Design meiner Adventure-Engine rumzubasteln.
Jetzt bin ich am Überlegen, wie die Script-Sprache aussehen sollte.
Ich habe bis jetzt zwei mögliche Designs überlegt.

Das Grundkonzept steht (angelehnt an objekt-orientierte Programmierung, aber sehr stark vereinfacht), weswegen sich die beiden Varianten von der Technik im Hintergrund wenig unterscheiden.

Das 1. orientiert sich eher an Visual Basic, d.h. es wird wo es geht auf geschweifte Klammern etc. verzichtet. Zudem kann maximal 1 Befehl bzw. Konstrukt (If, Schleifen etc.) in einer Zeile stehen. Zudem müssen alle Blöcke mit einem "end" abgeschlossen werden.

Das 2. lehnt sich grob C++ an.

Ich selbst bin mir unschlüssig welches ich nehmen soll. Das 1. ist zwar leicht einfacher, aber das 2. ist imo flexibler und weil es etwas näher an C++/JavaScript etc. ist vielleicht einfacher zu lernen.

Als Beispiel:

Code: Alles auswählen

object objBaum inherits CStaticObject
[
  bool hatApfel
]

  event OnLook
    Ego.Say("Es ist ein Baum. Schöön!")
  end

  event OnTake
    if hatApfel then
      Ego.Say("Schade, keine Äpfel mehr.")
    else
      hatApfel = false
      Inventory.AddItem(invApfel)
    end
  end

end
Oder die 2. Möglichkeit:

Code: Alles auswählen

object objBaum : CStaticObject
{
  bool hatApfel;

  event OnLook
  {
    Ego.Say("Es ist ein Baum. Schöön!");
  }

  event OnTake
  {
    if(hatApfel)
      Ego.Say("Schade, keine Äpfel mehr.");
    else
    {
      hatApfel = false;
      Inventory.AddItem(invApfel);
    }
  }

}
Oder was würdet ihr noch ändern? Noch ist der Compiler nicht programmiert.
Benutzeravatar
DasJan
Adventure-Treff
Adventure-Treff
Beiträge: 14683
Registriert: 17.02.2002, 17:34
Wohnort: London
Kontaktdaten:

Re:Adventure-Script-Sprache - wie sollte sie aussehen?

Beitrag von DasJan »

Ich würde nicht sagen, dass C++ leichter zu lernen ist, als Visual Basic, eher im Gegenteil. Die Sache ist nur: C++ ist wesentlich verbreiteter und für die, die es schon können, ist Variante 2 natürlich leichter zu lernen.

Ich schätze, die Frage ist, wen du ansprechen willst. Willst du eine Engine für die Fortgeschrittenen und Profis machen (dann würde ich zu Variante 2 tendieren) oder willst du Leute ansprechen, die bis jetzt noch nicht programmiert haben (Variante 1).

Das Jan
"If you are the smartest person in the room, you are in the wrong room."
theDon
Rätselmeister
Rätselmeister
Beiträge: 2219
Registriert: 11.06.2002, 18:22
Wohnort: gone (forever)
Kontaktdaten:

Re:Adventure-Script-Sprache - wie sollte sie aussehen?

Beitrag von theDon »

weitere möglichkeiten wären:
perlembedded (leicht einzubauen)
brainfuck (auch relativ leicht einzubauen)

sonst ganz klar die c++ variante.
Wer Ironie oder beleidigende Inhalte in diesem Beitrag findet, darf sie behalten.

http://www.thwboard.de | http://oph-qfb.sourceforge.net
Benutzeravatar
DasJan
Adventure-Treff
Adventure-Treff
Beiträge: 14683
Registriert: 17.02.2002, 17:34
Wohnort: London
Kontaktdaten:

Re:Adventure-Script-Sprache - wie sollte sie aussehen?

Beitrag von DasJan »

Eine Adventure-Engine mit Brainfuck wäre sicher... einzigartig... aber nicht wirklich publikumswirksam.

Das Jan
"If you are the smartest person in the room, you are in the wrong room."
theDon
Rätselmeister
Rätselmeister
Beiträge: 2219
Registriert: 11.06.2002, 18:22
Wohnort: gone (forever)
Kontaktdaten:

Re:Adventure-Script-Sprache - wie sollte sie aussehen?

Beitrag von theDon »

es gibt auch noch whitespace :D

http://compsoc.dur.ac.uk/whitespace/
Wer Ironie oder beleidigende Inhalte in diesem Beitrag findet, darf sie behalten.

http://www.thwboard.de | http://oph-qfb.sourceforge.net
Antworten