SVN Revision 3399 - Game Server Scripts Super Powers

View and discuss the latests SVN commits, to ensure the best efficiency in our work.

Moderators: Support Team, Developer Team

SVN Revision 3399 - Game Server Scripts Super Powers

Postby Leodagan » Sun Dec 07, 2014 1:54 pm

Upgrade to GameServerScript to Allow for Modular Behavior.

Revision 3394 to 3396

Main upgrades are around Compilation Assembly References that should now be automated for locally copied libraries.

This mean you can now drop-in any dependency DLL in Dawn of Light "lib" directory and they will be automatically referenced when building game server scripts.

This enable distribution of complete "Modules" through GSS, dependencies copied to "lib", sources copied to "scripts" and Runtime Compilation will enable all of this for you !

Another Feature to handle these new modules correctly is around ServerProperty, up to know they were only registering the Core Properties hard-coded in ServerProperty.Properties.

Script Manager will now trigger another lookup of all "ServerProperty" available in GameServerScript Assembly !

The Refresh Handler has been updated to reflect this behavior, thus /refresh command will now work for scripted properties too...


As an example Proof of Concept a new project "DOLNancyWeb" can be checked out, through : https://github.com/dol-leodagan/DOLNancyWeb

Simply "Download ZIP" and extract to your working Dawn of Light Directory, this will copy the necessary DLL and the according Scripts Sources to your server's "scripts" directory, next time you'll start your server you will be able to use a "Demo" Web Page embedded in DOL

New ServerProperties will be available in your database to setup this Embedded Server, no serverconfig.xml updates are needed !

Default access : http://localhost:10200/
User avatar
Leodagan
Developer
 
Posts: 1350
Joined: Tue May 01, 2012 9:30 am
Website: https://daoc.freyad.net
Location: Lyon

Re: SVN Revision 3396 - Modular GSS

Postby Leodagan » Sun Dec 07, 2014 5:07 pm

GameServerScript is Becoming one of the Best way of providing new Code to Dawn of Light

Revion : 3398.

Using some re-ordering in Server Startup Sequence, GSS now have more "Super Powers" !

GSS is compiled right after the server is started and Core Tables Initialized.

Once GSS is compiled it checks for new Tables in GSS Script, as well as new ServerProperty in previous patch.

With some update I enabled Database Updater to Look in GSS Assembly for Update Script, then moved the Existing Database Update Script to GSS where users can handle them (enabling/disabling/editing...)

We can now distribute Database Migration Script directly in Source Format to be dropped anywhere in GSS directory ;)

This all happen before the ScriptLoadedEvent, where most Object have initialization method based on Database Query, this way we can enforce Data Change before Scripts even try to use anything.

Some whole server mechanisms could be handled through Scripts with this prerequisite !

I expect to be able to distribute "Data Career" Startup kit as a DataBase Updater Script :idea:
User avatar
Leodagan
Developer
 
Posts: 1350
Joined: Tue May 01, 2012 9:30 am
Website: https://daoc.freyad.net
Location: Lyon

Re: SVN Revision 3399 - Game Server Scripts Super Powers

Postby Graveen » Mon Dec 08, 2014 9:06 am

Wow, brilliant ! This worths the try :)

Kudos !
Image
* pm me to contribute in Dawn of Light: code, database *
User avatar
Graveen
Project Leader
 
Posts: 12660
Joined: Fri Oct 19, 2007 9:22 pm
Location: France


Return to “%s” DOL SVN Commits

Who is online

Users browsing this forum: No registered users and 1 guest