![]() |
GS3 conversion tool (Updatedx2)
We have worked on a tool for converting GraalScript2 to the new Graalscript3 syntax:
http://graalscript3.graalonline.com/ You can use it to test a little bit and see how the new scripting will look like. We plan to release GS3 officially in a few weeks, after improving compatibility and features. Edit: Updated on June 21 to add better support for global functions and types! You have to restart the npcserver. Edit: Updated on June 24 to fix object attributes like player.account (TServerPlayer.account), no additional restart required. |
PHP Code:
NPC Code:Unexpected symbol 'if' But apart from that, looking good! |
Fails to convert a 50 line script when I tried..
(No error just stays at "Converting..." forevor) |
Quote:
|
Sweet. Looking forward to an official release.
|
Quote:
It's fixed now. Your script is reporting more meaningful errors. Please note that built-in global functions are only partially supported: "keydown" and "setTimer" are still being reported as not existing functions. |
It'd be nice if this were integrated into RC, and not a web page that people have to find via the forums. (Most likely months later.)
|
Quote:
|
Quote:
|
Quote:
|
Quote:
|
Quote:
|
Failed completely :/
PHP Code:
|
Quote:
After trying the above code on http://graalscript3.graalonline.com/, it reports successful conversion. The conversion is not really perfect though. For example, the converter tool cannot guess the type of the "acc" parameter in the "NewRC" function. When checking syntax, several errors are reported. Some errors are valid, others are not (for example "md5" function is not supported yet). Could you please detail what is going wrong on your side? Do you have any error reported? Is the conversion running forever maybe? |
No, it converts it with errors.
The main problem is the md5, the rest I could convert myself, and did. How would I reference md5? It would be cool if we could do something like global::md5() or using namespace global; |
Quote:
The converter is more an helper tool to learn and play with the GS3 syntax. It automatically converts scripts but only to some extent. If you want to improve the conversion, you can annotate types like for example the "acc" parameter. Then, you iterate:
In order to reference missing global functions, you can use extern declarations. Example: HTML Code:
extern global { |
Quote:
|
The "md4" function does not exist, this was just to provide you with an example of how to declare extern global functions.
This code is valid and should not produce any errors when converting or checking syntax online, or when compiling on GS3-enabled NPC servers. In the meantime, all client-side and server-side global functions and classes are now available for the online conversion tool (including md5 et al.). If you add //#CLIENTSIDE, you can actually test at the same time the server-side and client-side conversion / syntax. |
We have updated the conversion tool and also updated the //#GS3 support on servers but you need to restart the npcserver.
Like Julien said, it's now correctly reporting global functions and types and also supports //#CLIENTSIDE (some functions only exist on server-side or client-side). It also prints some more warnings and fixes some bugs (arrays etc.), improving the support for inline-classes. If you have any ideas or comments then please let us know :) |
Quote:
|
Julien, I know md4 doesn't exist in Graal, I tried it with md5, my whole point is, how the hell do you call methods like md5. It just errors that it doesn't exist.
|
The latest version has been uploaded yesterday to all machines but you might need to restart the npcserver. Normally all global functions should work fine now. There are still some errors though (player.account shows an error), and you are welcome to report problems. We hope to soon use it for important scripts though, like for the iPhone servers.
|
Quote:
PHP Code:
|
Yes follow the instructions at
http://wiki.graal.net/index.php/Creation/Dev/GScript3 |
We have fixed object attributes like player.account (TServerPlayer.account), no additional restart required.
|
graal, using hashtags since npc-server was released :cool:
//#CLIENTSIDE //#YOLO |
Quote:
PHP Code:
|
Quote:
else we're going to have a bad time |
Quote:
|
Quote:
|
All times are GMT +2. The time now is 10:20 AM. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.