====== EventScripts ====== [[http://mattie.info|Mattie!'s]] [[http://mattie.info/cs|EventScripts]] ist ein Interface zum Verwalten von Scripten die für das Verändern bzw. Vereinfachen des [[Gameplay|Gameplay]] geschrieben wurden und stellt ebenfalls die in den Scripten enthaltenen Scriptsprachen zur Verfügung. Einige bekannte Scripte sind Beispielsweise [[wcs_python|WCS:Python]], [[eXtensible Admin]], [[MugMod]] und [[SourceRPG]]. ===== Installation und Scripte ===== [[eventscripts:installation|EventScripts installieren]] - Eine genaue Anleitung zum installieren von EventScripts 2.0.250\\ [[eventscripts:scriptinstallation|Scripte installieren]] - Wie man heruntergeladene Scripte richtig installiert ===== Funktionen ===== Praktisch bietet EventScripts ein umfangreiches Maß an Funktionen. Mit ihnen können Veränderungen realisiert werden, wie Beispielsweise ein kleines Hilfepopup, welches beim Verbinden auf dem Server angezeigt wird oder ein simpler Rateüberprüfer. Es sind auch sehr komplexe und große Scripte realisierbar und auch trotz ihres Umfangs werden diese nicht langsamer, geschweige denn unübersichtlich. Große Scripte sind ähnlich wie ein RPG, Warcraft Mod, Administrationssysteme oder Ranksysteme. Es hängt allein von der Fähigkeit des Programmierers ab, in welchem Umfang die Möglichkeiten genutzt werden können. ===== Scriptsprachen ===== ==== EventScripts Shell ==== Seit Version 0.1 bietet EventScripts die Scriptsprache "EventScripts Shell" an. Diese wurde von Version zu Version ausgebaut und basiert auf dem "Source Server Variablen und Funktions"-Prinzip. Dass heißt dass EventScripts nichts anderes macht, als die Funktionen zu [[w>parsen]] und direkt an die Source Engine weiter gibt. Diese Methode ist sehr langsam da nur 1 Kommando pro [[eventscripts:gameframe|Gameframe]] ausgeführt werden kann und es keine native Unterstützung für Kommandos gibt. Zudem ist die Sprache sehr klotzig aufgebaut, es kann nur ein Kommando pro Zeile ausgeführt werden, if-Schleifen unterstützen keine Verknüpfungsoperatoren und es gibt keine Ausnahmebehandlung. Trotz all dieser Tatsachen kann man durch geschicktes Scripten all diese Mankos aufheben und somit ein perfekt laufendes Script schreiben. ==== Python ==== Neu in Version 2.0 oder höher ist die Integrierung der bekannten Scriptsprache [[w>Python]] (2.5.2). Sie ist um das bis zu 1000fache schneller als EventScripts Shell da Python native Funktionsaufrufe unterstützt und dazu [[gameframe|Gameframeunabhängig]] ist. Der Python Syntax lehnt stark an eine echte Sprache an, dass was man sofort sieht ist auch dass, was später ausgeführt wird. Trotz der Einfachkeit von Python ist die Sprache eine der komplexesten Scriptsprachen der Welt und mächtiger als [[w>Java]] und dennoch schneller als [[w>C#]] und [[w>VB.NET]]. Python ist das komplette Gegenstück zu EventScripts Shell: es unterstützt native Funktions- sowie Klassenaufrufe, native Variablen (intern), komplexe if-Abfragen inklusive Verknüpfungsoperatoren und Ausnahmebehandlungen. ===== Quellen ===== * EventScripts Hauptseite: http://mattie.info/cs/ * Mattie! Forum: http://forums.mattie.info/cs/forums/index.php * Scriptveröffentlichungsforum: http://forums.mattie.info/cs/forums/viewforum.php?f=27 * Scriptmanager: http://addons.eventscripts.com/ * EventScript Shell Wiki: http://www.eventscripts.com/pages/Main_Page * Python Wiki: http://python.eventscripts.com/pages/Main_Page