Skriptsprache gesucht



  • guten Tag,

    ich programmiere zur Zeit an einem Rollenspiel.
    dieses Spiel programmiere ich mit Visual C++ 2005 Express und Allegro.
    einen großen Teil möchte ich dabei in Skripten auslagern, um später anderen
    die Möglichkeit zu geben, das Spiel zu modifizieren.
    zunächst habe ich es mit LUA versucht.
    da LUA allerdings eine imperative Skriptsprache ist und somit keine Objekte und Klassen unterstützt, ist LUA eben nicht so gut für mein Vorhaben geeignet.

    also suche ich jetzt nach einer Skriptsprache, die OOP unterstützt, sich in C++ einbinden lässt und die Möglichkeit bietet, den Sprachumfang um eigene Klassen und Funktionen zu erweitern.

    Man sollte mit der Sprache Skriptdateien interpretieren können.
    Auch nützlich wäre es, wenn man diese Skripte dann kompilieren könnte und auch diese kompilierten Skripte interpretieren könnte.

    schonmal danke im voraus.

    MfG DrakoXP



  • Wie wärs mit Phyton? Ich mein die kann OOP etc. Muss mal bei google.de gucken.

    MFG Lars



  • Falls du dich auf Windows beschränkst ist es vielleicht erwägenswert, .Net als Schnittstelle zu den Skriptsprachen zu benutzen. Du kannst zum Beispiel C++/CLI verwenden, um deine Schnittstelle nach außen zu schreiben, dadurch können die Skripter eine Sprache ihrer Wahl benutzen und du kannst in deinem Spiel deren Code dynamisch reinladen und compilieren. Die Performance ist dementsprechend ziemlich gut. Und du kannst auch relativ gute Sicherheit erreichen, indem du nur verifizierbaren Code zulässt, das verhindert, dass dein Spiel Amok läuft, wenn andere Programmierfehler machen.

    Außerdem vereinfacht das die Interaktion mit deinem Spiel enorm. Andere können von deinen Klassen ableiten, um zum Beispiel eigene Charaktere und Waffen zu erstellen. Also voller support für objektorientiertes Programmieren, was dir ja anscheinend wichtig ist. Auf gut deutsch: Du brauchst keine bestimmte Skriptsprache mehr, sondern stellst nur ein objektorientiertes API bereit, mit dem man das Spiel erweitern und verändern kann.


  • Mod

    ich finde gamemonkey ist eine sehr schoene scriptsprache fuer spiele

    Tut1
    Tut2

    btw.falls eine scriptsprache performance ausmacht, dann wird sie falsch eingesetzt 😉



  • also danke erstmal für die Antworten.
    wegen Python und GameMonkey werde ich mal schauen, ob mir eins davon zusagt.
    was .NET angeht, ich kann mir zwar denken, dass .NET die Zukunft ist, aber
    vorerst soll das ganze noch mit Standardmitteln und nem bisschen Windows-API laufen.



  • DrakoXP schrieb:

    also suche ich jetzt nach einer Skriptsprache, die OOP unterstützt, sich in C++ einbinden lässt und die Möglichkeit bietet, den Sprachumfang um eigene Klassen und Funktionen zu erweitern.

    Eigentlich kann lua das alles. Man kann damit sehr gut objekt orientiert programmieren. Und mit luabind kannst du C++-Objekte in lua verfügbar machen, inklusive Operatorüberladung, Vererbung, Properties mit automatischen Settern/Gettern ... du kannst damit sogar in lua neue Unterklassen von C++-Klassen erstellen.



  • hm, wenn das so ist.
    allerdings weiß ich jetzt nicht, wie das geht
    und in der englischen LUA Dokumentation hab ich
    nichs dazu finden können.
    also wenn du mir das bitte erklären könntest?



  • Geh auf die Seite von luabind und lass es dir dort erklären.



  • ok, danke, werd mir das gleich mal anschauen


Anmelden zum Antworten