ChangeLog

From Legends of Aria Admin and Modding Wiki
Revision as of 00:54, 11 January 2017 by Supreem CS (talk | contribs)
Jump to: navigation, search

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

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