Creation/Dev/GScript: Difference between revisions

From Graal Bible
(Yey, finally some entry.)
(Deleted non working web sites)
 
(119 intermediate revisions by 40 users not shown)
Line 1: Line 1:
[[Category:Scripting Reference]]
==Introduction==
'''GScript''' is [[Graal]]'s scripting language.
'''GScript''' is [[Graal]]'s scripting language.


Its syntax and some of its semantics might seem familiar to those who program in [[WikiPedia:C (Programming Language) | C]] or derived languages, although it lacks some of the expressivity of a real programming language and has special constructs that make programming [[Graal]] [[NPC]]s easier.
Its syntax and some of its semantics might seem familiar to those who program in [[WikiPedia:C (Programming Language) |C]] or [[WikiPedia:Java_programming_language|Java]], it uses ECMA-Script syntax. In some ways it is more dynamic, e.g. supporting dynamicly joining and leaving of classes, and brings support for easy management of online game content.
 
It is used for [[clientside]] tasks like [[GUI | GUI programming]], special effects and custom [[NPC weapon|weapons]], and [[serverside]] systems like player housing, complex baddies or pets.
 
'''If you would like to contribute to the GraalBible's GScript documentation, you might want to [[Creation/Dev/GScript/Contribute|read this article]].'''
 
==Documentation==
In your scripting quest, you may find the following articles to be of use:
 
'''Basic information'''
* [[Creation/Dev/Script/Starting Guide|Starting Guide]]
* [[Creation/Dev/Script/Client|Functions, variables and objects (clientside)]]
* [[Image:Guicontrol_window.png|80px]] [[Creation/Dev/Script/Client/GuiControls_List|GUI Controls]]
 
'''Tutorials'''
* [[Image:s_dummies.png|80px]] [[Creation/Dev/GScript/New Engine GScript for Dummies|New Engine GScript for Dummies]]
* [[Creation/Dev/Excalibur's scripting guide|Excalibur's Scripting Guide]]
 
'''Specific Features'''
* [[Creation/Dev/GS1_To_GS2|GS1 To GS2: Guide for fixing scripts to work with the new engine]]
* [[Creation/Dev/Output Methods|Output methods]]
* [[Creation/Dev/Using Classes Effectively|Use of classes]]
* [[Creation/Dev/GScript/Constants|Constants]]
* [[Creation/Dev/GScript/Understanding GUI Profiles|GUI Features: Understanding GUI profiles]]
* [[Image:Guicontrol_tab.png]] [[Creation/Dev/Creating Tabbed Window Panes|Creating Tabbed Window Panes]]
* [[Particle Engine|Particle Engine]]
* [[Creation/Dev/Graal v4 IRC|Graal IRC Scripting: Graal IRC Scripting Reference]]
* [[Creation/Dev/Troubleshooting Graal v4 IRC|Graal IRC Scripting: Troubleshooting Scripting Reference]]
* [[Creation/Dev/Database_Communication|Indexed Database Communication]]
* [[Vectors]] (3D)
* [[Creation/Dev/wordFilter|Word Filter]]
* [[Creation/Dev/GScript/Stefan_Wisdom|Stefan Wisdom]]
* [http://forums.graalonline.com/forums/showpost.php?p=1573674&postcount=6 Communicating with a webserver]
* [http://forums.graalonline.com/forums/showthread.php?t=134263215 Explanation of vecx & vecy]
 
'''Script Function List'''


GScript started as a very limited language and has since kept up with improvements to the game engine and can now be used for pretty sophisticated scripts that greatly customise the gaming experience.
These are frequently updated, to get the latest list run Graal with the -listscriptfunctions option. You can also get help about script functions with the ''/scripthelp <string>'' command on RemoteControl chat.
* [[Creation/Dev/Script/Clientside_Functions|Client side]]
* [[Creation/Dev/Script Functions: NPC Server|Server side]]


It is used, with minor differences, for [[Clientside]] tasks like [[GUI | GUI programming]], special effects with nifty 3d lighting and custom [[NPC Weapons]] or &quot;engines&quot;, and [[Serverside]] systems like player housing, complex baddies or pets.
==External Links==
Tutorials and other helpful resources.


GScript is soon to be replaced by a new version that is rather advanced, in some way object oriented, and thanks to influence from Torque's scripting language, less brain-damaged in some aspects. No offense.
* [http://gscript.graal.net/Index New GScript Wiki]

Latest revision as of 05:48, 28 February 2024

Introduction

GScript is Graal's scripting language.

Its syntax and some of its semantics might seem familiar to those who program in C or Java, it uses ECMA-Script syntax. In some ways it is more dynamic, e.g. supporting dynamicly joining and leaving of classes, and brings support for easy management of online game content.

It is used for clientside tasks like GUI programming, special effects and custom weapons, and serverside systems like player housing, complex baddies or pets.

If you would like to contribute to the GraalBible's GScript documentation, you might want to read this article.

Documentation

In your scripting quest, you may find the following articles to be of use:

Basic information

Tutorials

Specific Features

Script Function List

These are frequently updated, to get the latest list run Graal with the -listscriptfunctions option. You can also get help about script functions with the /scripthelp <string> command on RemoteControl chat.

External Links

Tutorials and other helpful resources.