Difference between revisions of "ChangeLog"
Supreem CS (talk | contribs) |
Supreem CS (talk | contribs) |
||
Line 1: | Line 1: | ||
=== 0.3.5 === | === 0.3.5 === | ||
+ | ==== Engine ==== | ||
* Seed engine system has been overhauled to support overriding of individual seed | * Seed engine system has been overhauled to support overriding of individual seed | ||
groups | groups | ||
Line 27: | Line 28: | ||
Synchronized across all regions | Synchronized across all regions | ||
* Made tents on outlands dynamic objects | * Made tents on outlands dynamic objects | ||
− | Default Rules | + | ==== ==== Default Rules ==== ==== |
* All static global lua files have been moved to subfolders to support the dot notation | * All static global lua files have been moved to subfolders to support the dot notation | ||
* Broadcasts are now cluster wide. | * Broadcasts are now cluster wide. | ||
Line 62: | Line 63: | ||
* Users are now logged out before the server completes its final backup upon shutdown | * Users are now logged out before the server completes its final backup upon shutdown | ||
* DateTime objects can now be stored in an objvar | * DateTime objects can now be stored in an objvar | ||
− | Default Rules | + | ==== Default Rules ==== |
* Improved whod window | * Improved whod window | ||
* Map marker support for quests (See data_quests: search for MapMarkers to see an example) | * Map marker support for quests (See data_quests: search for MapMarkers to see an example) | ||
Line 79: | Line 80: | ||
* Global Variable support added * variables accessible to all regions in a cluster (See lua | * Global Variable support added * variables accessible to all regions in a cluster (See lua | ||
interface documentation under Global Functions) | interface documentation under Global Functions) | ||
− | Default Rules | + | ==== Default Rules ==== |
* Housing ownership and Guild data moved to Global Variables | * Housing ownership and Guild data moved to Global Variables | ||
* Enhanced mod has been removed since guild support now exists in the default rules | * Enhanced mod has been removed since guild support now exists in the default rules | ||
Line 87: | Line 88: | ||
* Fixed the way IP addresses are resolved when external IPs are used in the ServerAddress | * Fixed the way IP addresses are resolved when external IPs are used in the ServerAddress | ||
field | field | ||
− | Default Rules | + | ==== Default Rules ==== |
* Object Search (/search) window has been significantly improved | * Object Search (/search) window has been significantly improved | ||
* Add profiling functions in globals_debug | * Add profiling functions in globals_debug | ||
Line 100: | Line 101: | ||
* ReloadSeeds now takes an optional category argument which causes it to only create the | * ReloadSeeds now takes an optional category argument which causes it to only create the | ||
objects in that category. | objects in that category. | ||
− | Default Rules | + | ==== Default Rules ==== |
* Goto window has been revamped | * Goto window has been revamped | ||
* Teleporter script now has a Set Destination radial menu option for gods. You can /create | * Teleporter script now has a Set Destination radial menu option for gods. You can /create | ||
Line 108: | Line 109: | ||
* Added (optional) advanced network settings options to allow admins to tweak their network | * Added (optional) advanced network settings options to allow admins to tweak their network | ||
performance. See ClusterConfig.xml in the build for details | performance. See ClusterConfig.xml in the build for details | ||
− | Default Rules | + | ==== Default Rules ==== |
* Crafting window no longer shows recipes for items you do not have enough skill to craft. This | * Crafting window no longer shows recipes for items you do not have enough skill to craft. This | ||
is a bandaid optimization since the crafting window was sending very large packets to the client. | is a bandaid optimization since the crafting window was sending very large packets to the client. | ||
We will get a better fix for this soon. | We will get a better fix for this soon. | ||
− | 0.3.1 | + | === 0.3.1 === |
==== Engine ==== | ==== Engine ==== | ||
* If a template does not have a script engine component and something attaches a module | * If a template does not have a script engine component and something attaches a module | ||
Line 121: | Line 122: | ||
vel) | vel) | ||
* Fix Collision on Two Towers map (now usable in mods) | * Fix Collision on Two Towers map (now usable in mods) | ||
− | Default Rules | + | ==== ==== Default Rules ==== ==== |
* Quest System: Now supports repeatable quests | * Quest System: Now supports repeatable quests | ||
* Protect the Great Tree content has been disabled | * Protect the Great Tree content has been disabled | ||
− | 0.3.0 | + | === 0.3.0 === |
==== Engine changes ==== | ==== Engine changes ==== | ||
* SendMessage, ScheduleTimerDelay, and all CreateObj functions now support argument lists. | * SendMessage, ScheduleTimerDelay, and all CreateObj functions now support argument lists. | ||
Line 154: | Line 155: | ||
know what sprites are available. | know what sprites are available. | ||
* Add Invisible button type that allows you to make any part of dynamic window clickable | * Add Invisible button type that allows you to make any part of dynamic window clickable | ||
− | Default Rules | + | ==== ==== Default Rules ==== ==== |
* Moved all multiple argument calls to SendMessage, ScheduleTimerDelay, and all CreateObj | * Moved all multiple argument calls to SendMessage, ScheduleTimerDelay, and all CreateObj | ||
functions from tables to argument lists | functions from tables to argument lists | ||
Line 181: | Line 182: | ||
* Fixed issues with equipping custom heads/skins | * Fixed issues with equipping custom heads/skins | ||
* Stability and memory leak fixes | * Stability and memory leak fixes | ||
− | Default Rules | + | ==== ==== Default Rules ==== ==== |
* Updated create window to include categories and use scrollbars | * Updated create window to include categories and use scrollbars | ||
* Complete revamp of the object info window | * Complete revamp of the object info window | ||
Line 194: | Line 195: | ||
(https://youtu.be/WIyg*f*NsHQ) | (https://youtu.be/WIyg*f*NsHQ) | ||
=== 0.2.4 === | === 0.2.4 === | ||
− | ==== Engine Changes | + | ==== Engine Changes ==== |
* More DynamicWindow improvements (see lua docs) | * More DynamicWindow improvements (see lua docs) | ||
* Rock4A now has collision | * Rock4A now has collision | ||
Line 211: | Line 212: | ||
* Added Enhanced mod to release which includes the guild functionality from the | * Added Enhanced mod to release which includes the guild functionality from the | ||
collaboratorium | collaboratorium | ||
− | + | ==== ==== Default Rules ====et ==== | |
* Modders can now add items to the users hotbar. See AddUserActionToSlot message in | * Modders can now add items to the users hotbar. See AddUserActionToSlot message in | ||
base_player_hotbar (I'll probably make a video about this soon) | base_player_hotbar (I'll probably make a video about this soon) | ||
Line 233: | Line 234: | ||
* Add luaxml library (http://viremo.eludi.net/LuaXML/). See dump_to_xml function in | * Add luaxml library (http://viremo.eludi.net/LuaXML/). See dump_to_xml function in | ||
base/scripts/globals_debug.lua for an example | base/scripts/globals_debug.lua for an example | ||
− | + | ==== ==== Default Rules ====et ==== | |
* Fix “nil source info” error message | * Fix “nil source info” error message | ||
=== 0.2.1 === | === 0.2.1 === | ||
Line 243: | Line 244: | ||
* Move log message for object at 0,0 warning to Verbose setting | * Move log message for object at 0,0 warning to Verbose setting | ||
=== 0.1.14d === | === 0.1.14d === | ||
− | Engine Changes | + | ==== Engine Changes ==== |
* Add ability for public servers to have ServerListVisibility option | * Add ability for public servers to have ServerListVisibility option | ||
* Fix but with autorestart causing commands to fire multiple times | * Fix but with autorestart causing commands to fire multiple times | ||
Line 255: | Line 256: | ||
you will end up with duplicates (right now) | you will end up with duplicates (right now) | ||
* ServerIndex config variable works properly now | * ServerIndex config variable works properly now | ||
− | + | ==== ==== Default Rules ====et ==== | |
* Made more of the gameplay settings work commented out the ones that arent used yet | * Made more of the gameplay settings work commented out the ones that arent used yet | ||
* Added extended Goto window use with /goto with no arguments | * Added extended Goto window use with /goto with no arguments | ||
* Village content is about 30% implemented | * Village content is about 30% implemented | ||
− | Mods | + | ==== Mods ==== |
* Infection: Add overrides for welcome dialog and motd | * Infection: Add overrides for welcome dialog and motd | ||
=== 0.1.14c === | === 0.1.14c === | ||
− | Engine Changes | + | ==== Engine Changes ==== |
* Fix servers not working on non US locales | * Fix servers not working on non US locales | ||
* Fix server side issue with invisible objects | * Fix server side issue with invisible objects | ||
Line 269: | Line 270: | ||
backups) | backups) | ||
* Fix lua errors showing wrong module name | * Fix lua errors showing wrong module name | ||
− | Default Rules | + | ==== ==== Default Rules ==== ==== |
* Fix spelling of resurrect command | * Fix spelling of resurrect command | ||
* Improve /whod command | * Improve /whod command |
Revision as of 00:54, 11 January 2017
Contents
0.3.5
Engine
- Seed engine system has been overhauled to support overriding of individual seed
groups
- WriteGlobalVar and DeleteGlobalVar now takes an optional identifier as the second
parameter. You can now listen for the GlobalVarUpdateResult event type which fires when the write completes. (see docs)
- Fixed DeleteGlobalVar: it was completely broken in 0.3.4
- Scripts subfolder dot notation support: You can now put scripts in subfolders and require
them using dot notation aka java.
- The client now handles a message called “EditObjectTransform” which allows you to
move,scale, and rotate objects. The result of the transform comes back in a ClientObjectCommand event called “transform”. See the Push command in scriptcommands.lua for an example.
- Lots of new icons have been added to the game. See the “custom” window.
- Several new dynamic window widgets have been added. (See Lua Interface Docs) for
more details.
- GetScale/SetScale now take vectors
- SetScale now works on objects
- Seed groups can be excluded from the initial world reset
- Seed groups can dynamically be excluded from the initial world reset in the
engine_callbacks.lua function GetInitialSeedGroups
- GetAllSeedGroups global lua function gives you a list of all groups based on the filter
provided. (See Lua Interface Docs)
- GetSeedGroupData global lua function gives a list of seed data for the given group.
includes template, position, rotation, scale, and objvar overrides.
- New lua global SERVER_STARTTIME which is a DateTime of the cluster startup.
Synchronized across all regions
- Made tents on outlands dynamic objects
==== Default Rules ====
- All static global lua files have been moved to subfolders to support the dot notation
- Broadcasts are now cluster wide.
- Reorganized celador seed objects
- Move all npc speech tables to globals to save memory (see
globals/static_data/npc_speech.lua)
- Master controller: One cluster_controller object will obtain the master controller status.
This allows for code that you want to run once for the entire server
- Search window now has map view option.
- Added StopMusic function.
- Fix search command HasModule option
0.3.4
Engine
- Added Map Markers to the AddMap function for Dynamic Windows
- Added HasEvenHandler GameObj function. Returns true if any module on that object is
listening for the message.
- Added PlayMusic GameObj function to tell a specific user to play a music track
- Release window is now server driven and moddable
- New client message “UpdateChatChannels” allows you to make server defined chat channels.
They will appear in the chat entry dropdown on the client.
- Lots of new icons available
- Over 100 new client objects (See CliendIdReference.txt)
- New Local Effects
* ScreenShakeEffect * configurable shake effect * Blood Spatter Effects * 4 different ones available (BloodSplatter1Effect*BloodSplatter4Effect)
- Lots of new particle effects
- Add “NoInteract” shared object property. When set to true, object will not highlight when
moused over.
- Add CallFunctionDelayed global function (see docs). This will call a function after a period of
time. NOTE: Will not fire after a server restart!
- Initial implementation of "God View" which is an RTS style camera. See controls window for
hotkey
- Users are now logged out before the server completes its final backup upon shutdown
- DateTime objects can now be stored in an objvar
Default Rules
- Improved whod window
- Map marker support for quests (See data_quests: search for MapMarkers to see an example)
- Add bad word filter support. (See globals_badwords)
- Combat overhaul * modded combat systems will need to be reimplemented in the new system.
(I don’t suggest trying to merge)
- Fixed several issues with changeform command
- Added savehotbar and loadhotbar commands which allows you to store hotbars by name.
These hotbars are saved in xml files in the "savedhotbars" folder of the region's working directory
0.3.3
Engine
- Prototype of cluster support (Documentation coming soon. Until then, watch the video in the
admin forums)
- Limbo area moved to its own map
- Global Variable support added * variables accessible to all regions in a cluster (See lua
interface documentation under Global Functions)
Default Rules
- Housing ownership and Guild data moved to Global Variables
- Enhanced mod has been removed since guild support now exists in the default rules
0.3.2c Hotfix
Engine
- Large memory leak fix in NLua
- Fixed the way IP addresses are resolved when external IPs are used in the ServerAddress
field
Default Rules
- Object Search (/search) window has been significantly improved
- Add profiling functions in globals_debug
0.3.2
Engine
- Server can now load the following maps: Limbo, Celador, Outlands, TwoTowers, Catacombs,
Uaran. NOTE: Only Celador is officially supported at this time.
- Starting templates are now set in the config file. The global function "AddStartingTemplate"
has been removed (See ClusterConfig in zip)
- Lots of new client objects (See ClientIdReference.txt in base folder)
- PathToTarget no longer spams Arrived messages when failing to path
- ReloadSeeds now takes an optional category argument which causes it to only create the
objects in that category.
Default Rules
- Goto window has been revamped
- Teleporter script now has a Set Destination radial menu option for gods. You can /create
teleporter and set its destination now.
0.3.1d
Engine
- Added (optional) advanced network settings options to allow admins to tweak their network
performance. See ClusterConfig.xml in the build for details
Default Rules
- Crafting window no longer shows recipes for items you do not have enough skill to craft. This
is a bandaid optimization since the crafting window was sending very large packets to the client. We will get a better fix for this soon.
0.3.1
Engine
- If a template does not have a script engine component and something attaches a module
using AddModule, it will now automatically add the component.
- Fix SkillGainMultiplier server setting
- Fix for calling new stat functions on a mob other than this
(SetStatValue,SetStatMaxValue,SetStatRegenRate,SetStatVisibility,SetRestrictedStatUpdateLe vel)
- Fix Collision on Two Towers map (now usable in mods)
==== Default Rules ====
- Quest System: Now supports repeatable quests
- Protect the Great Tree content has been disabled
0.3.0
Engine changes
- SendMessage, ScheduleTimerDelay, and all CreateObj functions now support argument lists.
You no longer have to send multiple arguments as a table
- Temporary objects * You can now call CreateTempObj to create an object that is not stored in
the world backup. Be careful with this as these objects can still be stored on players if they log out with them in their possession.
- Object stats engine support
* many can now be stored on the objects * you can set the stat visibility of any stat * Global * shared with every user in update range * Restricted * shared if the users attached object is in the restricted update list * Private * Only shared with the attached user (default) * stats by default have a regen value of 0, if you set it to a non*zero number, it will automatically update the CurValue over time on both server and clients * stats by default have a very large max value * See the new stats functions in the lua documentation for more info
- Add support for custom context menus opened directly by the server see
OpenCustomContextMenu in the lua docs
- Add radial menu support for alternate object interactions.
* The ruleset specifies the options for any given object by defining a function in the global lua environment called GetObjectInteractionList (see globals_engine_callbacks.lua in base for the default implementation) * The default interaction (what happens when you double click on an object) for any object is defined by the DefaultInteraction shared object property (in the default rules this is set automaticaly when you call AddUseCase with true for the second parameter) * AddButton now supports a list of custom sprite names for each of the button states (default,hover,pressed,disabled). We still need to provide you with a sprite reference so you know what sprites are available. * Add Invisible button type that allows you to make any part of dynamic window clickable
==== Default Rules ====
- Moved all multiple argument calls to SendMessage, ScheduleTimerDelay, and all CreateObj
functions from tables to argument lists
- Added support for creating packed and temporary objects from the create menu
- Added /portal command (pass a location and it opens a two way portal from your location to
that location)
- Updated dialog windows to use dynamic windows
- Added lots of convenience functions in incl_dialogwindow for buttonmenus, progress bars, and
simple text fields
- Move Str/Agi/Int/Hp/Mana/Stamina to the new object stats system
- The UseObject message now sends a second parameter which is the type of interaction. This
must be checked in any script that handles this message in case multiple scripts add additional use cases.
0.2.5
Engine Changes
- Added RegisterSingleEventHandler which auto unregisters itself after the event is fired, moved
all ModuleAttached and LoadedFromBackup handlers to use this
- Add GetTemplateData function which returns all of the data for a template in a single lua table
- Add SearchRect object searcher (See API)
- Added new spell effects (See EffectReference.txt)
- Fixed lots of bugs with changing the appearance (body type) of a mobile
- Fix text fields that are in a window not using TopLeft anchor
- Fix text field positions with small screen resolutions
- Fixed Dynamic windows that were not TopLeft with position 0,0 were not appearing in the
correct location
- Fixed issues with equipping custom heads/skins
- Stability and memory leak fixes
==== Default Rules ====
- Updated create window to include categories and use scrollbars
- Complete revamp of the object info window
- Move master recipe table to global data file
- Added support for dynamic abilities specified in templates (see creatures in halloween mod)
- First pass on questing system (roundtable on this system soon)
Enhanced Mod
- Quick fixes for guild windows
Halloween Mod
- We’ve removed the Infection mod from the build since it has become outdated. The halloween
mod is now our showcase mod. Watch the roundtable where Supreem goes over the mod (https://youtu.be/WIyg*f*NsHQ)
0.2.4
Engine Changes
- More DynamicWindow improvements (see lua docs)
- Rock4A now has collision
- Fixed male versions of new armor/equipment
- Added new particle effects see EffectReference.txt
0.2.3
Engine Changes
- Added many enhancements to the DynamicWindow system (see lua docs)
- Added GetIconId function which returns the id of a given object for us in dynamic window
Images and UserActions
- NOTE: Buttons in dynamic windows were not taking the title bar width into account so you
might need to fix all your button positions
- Added frame time debugging output to Verbose logging (NOTE: you can turn this on with the
luadebug command)
- Added server collision for lots of objects
- Added Enhanced mod to release which includes the guild functionality from the
collaboratorium
==== Default Rules ====et
- Modders can now add items to the users hotbar. See AddUserActionToSlot message in
base_player_hotbar (I'll probably make a video about this soon)
- You can now reinitialize a mobile's base_mobile (Stats,Skills,Equipment) using the
ChangeMobileToTemplate message
- New crafting window, conversation window, ability window
- Crafting system has been fairly overhauled, many recipes require learning before player can
use them
0.2.1b
Engine Changes =
- Added GetAttachedUserId function (see lua reference under GameObj)
- Fixed 3 memory leaks in LuaVM. Should now be able increase autorestart up to 5 hours (300).
- Fix logging for chardb module.
- Backup files now compact and should be much smaller.
- Add SingleObjectSearcher to track the state of a single object using AddView (see lua
reference under Object * Searchers)
- Reset world now resets permanent objects (trees/rocks) as well. Until we get a new client, you
need to log out and back in to see the rese
- Add luatools folder in base. Modders can add lua extensions to the engine by putting the
lua/dll files in this folder. See luaxml as an example
- Add luaxml library (http://viremo.eludi.net/LuaXML/). See dump_to_xml function in
base/scripts/globals_debug.lua for an example
==== Default Rules ====et
- Fix “nil source info” error message
0.2.1
Engine Changes
- Changes to support new server list
- Add ServerDescription to ClusterConfig
- Fix fog for fly camera on Uaran
- Add lots of missing collision to npc pathing
- Move log message for object at 0,0 warning to Verbose setting
0.1.14d
Engine Changes
- Add ability for public servers to have ServerListVisibility option
- Fix but with autorestart causing commands to fire multiple times
- Added Simple Memory Debugging with /luagc mb and /luagc me (/help luagc for details)
- Added Object id to lua exception messages
- Moved data_ files to globals (saves memory), Note: this means you must restart your server
for changes to data_ files to take effect
- require 'default:globals' in a modded globals.lua now works as expected
- changed backup format to fix a critical crash bug
- /resetworld now ignores objects with the NoReset objvar on them. Note: if it is a seed object
you will end up with duplicates (right now)
- ServerIndex config variable works properly now
==== Default Rules ====et
- Made more of the gameplay settings work commented out the ones that arent used yet
- Added extended Goto window use with /goto with no arguments
- Village content is about 30% implemented
Mods
- Infection: Add overrides for welcome dialog and motd
0.1.14c
Engine Changes
- Fix servers not working on non US locales
- Fix server side issue with invisible objects
- Fix SetHue not persisting across server restarts
- Add AutoRestart and BackupFrequency settings to ClusterConfig (0 means no auto restart or
backups)
- Fix lua errors showing wrong module name
==== Default Rules ====
- Fix spelling of resurrect command
- Improve /whod command