Commit graph

6 commits

Author SHA1 Message Date
Paul Campbell
fee662597d fix: Fix new script issues
- Fixed an issue where script assemblies could not be debugged.
- Fixed an issue where script's can't be hotloaded when contents change.
2025-07-03 10:04:32 -04:00
Ryan Yappert
29ee46a1f6 Store MD5 hashes of scripts and use the DLLs when possible to reduce startup time. 2025-06-29 02:07:13 -07:00
Paul Campbell
7c31026f77 feat: Server settings templates and defaults
- Server settings which are read by the C# server software now provide
  defaults in the server code.
- When the server loads, using reflection, it generates a csx setting file
  in a new script_templates directory. The server admin can copy these
  templates into the "settings" module to be loaded and override the
  default settings.
- Server defaults apply first, then settings provided in the script
  override the defaults. The script files only need to provide the
  settings they wish to override. They do not need to provide all
  settings.
- Removed the files GameLogicSettings.csx, SeasonalEvents.csx,
  ChatCommands.csx and PointModifiers.csx.
2025-02-25 20:09:04 -05:00
Paul Campbell
64e1043763 feat: Script module overlay support
Adds the ability for the server admin to have customized scripts without
overwriting the original ones.
2025-02-24 10:43:41 -05:00
Paul Campbell
07f21f7927 feat: Scripted Quests
- Added the ability to define quests using C# script.
- Implemented the 2018 Christmas quests using C# script.
- Implemented the 2017 Halloween quests using C# script.
- Implemented the 2018 Halloween quests using C# script.
- Added the ability to load external scripts from the "libs" directory
  in scripts loaded by the GameServer project.
- Added new documentation for scripts.
- Updated existing 'holiday_personal_quests.md' to include directions
  for enabling the event quests.
2024-12-31 09:40:11 -05:00
Paul Campbell
e6e5073737 refactor: Refactor code and show different scripting example
- Refactored code so implementation can be shared between Server and
  DdonGameServer.
- Moved settings into settings module and implemented an example using a
  less structured scripting module interface.
- Created new ScriptableSettings class to assist with interacting with
  non-structured settings module.
- Created README.md files for suggestions and guidelines for module
  implementation.
2024-12-26 10:38:17 -05:00
Renamed from Arrowgene.Ddon.GameServer/Scripting/ScriptModule.cs (Browse further)