Release 0.8.0

From LugdunonWiki
Jump to: navigation, search
Engine Content: This information applies to the engine and therefore to all servers.

0.8.0


07/13/2015


Mods altered in this update:

  • net.lugdunon.currency.gsc
  • net.lugdunon.world.clover.tui
  • net.lugdunon.world.tupelo.tui
  • net.lugdunon.world.clover.sprite
  • net.lugdunon.world.defaults.character
  • net.lugdunon.world.defaults.compendium
  • net.lugdunon.world.defaults.environment


Server mods altered in this update:

  • net.lugdunon.server.worldgen.defaults
  • net.lugdunon.server.worldgen.procedural


/etc files altered in this update:

  • areaOfEffectDefinitions.json
  • commands.json
  • items.json
  • itemBaseCosts.json
  • nonPlayerCharacterNamesList.json
  • npcs.json
  • recipes.json


Release Notes:

  • Changed name of default campaign to 'Shadow of Moritasgus'.
  • net.lugdunon.world.clover.tui 0.0.4 -> 0.0.5
  • net.lugdunon.world.tupelo.tui 0.0.5 -> 0.0.6
  • net.lugdunon.world.clover.sprite 0.0.2 -> 0.0.3
  • net.lugdunon.world.defaults.compendium 0.0.3 -> 0.0.4
  • net.lugdunon.world.defaults.character 0.0.3 -> 0.0.4
  • net.lugdunon.world.defaults.environment 0.0.3 -> 0.0.4
  • net.lugdunon.currency.gsc 0.0.2 -> 0.0.3
  • net.lugdunon.server.worldgen.defaults 0.0.6 -> 0.0.7
  • net.lugdunon.server.worldgen.procedural 0.0.1 -> 0.0.2
  • lugdunon-server 0.7.2 -> 0.8.0
  • lugdunon-client-web 0.7.2 -> 0.8.0
  • lugdunon-client 0.2.3 -> 0.2.4
  • Rats are now capable of attack, and grant experience when slain.
  • Streetlamps are now configurable with the wrench.
  • Added a minimum planting radius property to placeable items. Defines the minimum safe distance for when an item is placed programmatically.
  • Added a tent placeable item, instance template, and recipe. This will allow players a much lower barrier of entry to creating housing.
  • Added a mistletoe item. Rarely harvested from a mature oak tree with a scythe. This item currently has no uses.
  • Added CORE.ELECTRIFRY.LEVEL.ONE area of effect for use with the new Electrifier tinkered item.
  • Flowers and trees now have layer restrictions (Dirt, Grass, and Snow).
  • Arcane Reliquaries now require less energy to harvest.
  • Fixed an issue that was causing bridges to not expire when destroyed.
  • Added stone fencing (item, and recipe).
  • Added stone gates (item, and recipe).
  • Added a Bronze Rod item and recipe.
  • Added a Bronze Sheet item and recipe.
  • Added a Bronze Horn item and recipe.
  • Added a Gold Rod item and recipe.
  • Added a Gold Sheet item and recipe.
  • Added a Rat Bite NPC attack.
  • Added a new tinkered item and recipe in 4 grades (copper, bronze, iron, and gold) called an Arc-Powered Loot Siphon. This item serves as a container and when powered, will suck up loot from NPCs that have been slain by the environment.
  • Added a new tinkered item and recipe called an Arc-Powered Electrifier. This item, when powered, will caused an AOE air-based damage pulse to all NPCs nearby.
  • Added a 'stealth' version of the Arc-Powered Electrifier. Functions exactly the same as the regular electrifrier, but is undetectable by players other than the owner.
  • Arc switches and pressure-plates are now capable of switching up to 5 inputs to their respective outputs.
  • Arc-stabilized teleporters now have a proper description.
  • Added net.lugdunon.state.item.arc.handler.matter.LootSiphonMatterArcHandler.
  • Added net.lugdunon.state.item.arc.handler.ElectrifryerArcHandler.
  • Added net.lugdunon.state.item.lootConsumer.ILootConsumer to the server-side code base.
  • Added net.lugdunon.state.item.lootConsumer.LootSiphonLootConsumer to the server-side code base.
  • Added net.lugdunon.state.item.manifestation.LootSiphonManifestationHandler.
  • Added net.lugdunon.state.item.tooltip.LootSiphonTooltipExtension to the client-side code base.
  • Added SPRITE.EFFECTS.AIR.ELECTRIFRY.BASE image asset.
  • Added SPRITE.EFFECTS.LIGHT.HOLYFIRE.BASE image asset.
  • Added EFFECTS.AIR.ELECTRIFRY sprite asset.
  • Added EFFECTS.LIGHT.HOLYFIRE sprite asset.
  • Added a dungeon item indicator icon (for items used in procedurally generated dungeons).
  • Added /ip/ REST service to the auth server for retrieving a client's externally accessible ip address.
  • Added total activated accounts to the /fullReport auth server REST service.
  • Created API to allow for currency to be easily converted to and from currency items.
  • Added net.lugdunon.state.currency.ICurrency.toItems() to the server-side API.
  • Added net.lugdunon.state.currency.ICurrency.fromItems(List<ItemInstance> value) to the server-side API.
  • Implemented new currency API changes in GSC Currency
  • Updated logging to include "craftingRecipeLearned" filter in net.lugdunon.world.defaults.compendium.craftingRecipes.command.PlayerLearnCraftingRecipeCommand.
  • Added world property "default.compendium.crafting.recipe.easy.mode.enable". When set to true, players are no longer required to 'learn' a crafting recipe before it is examinable in the Compendium Lugus.
  • Updated logging to include "experienceGained" filter in net.lugdunon.world.defaults.character.DefaultCharacterStats.
  • Updated logging to include "achievement" filter in net.lugdunon.world.defaults.character.DefaultCharacterStats.
  • Changed a recharging error console.log() statement to Namespace.warn() in net.lugdunon.world.defaults.character.DefaultCharacterStats.
  • Updated logging to include "gmNotification" filter in net.lugdunon.world.defaults.environment.command.SetDateCommand.
  • Updated logging to include "gmNotification" filter in net.lugdunon.world.defaults.environment.command.SetTimeOfDayCommand.
  • Added net.lugdunon.command.core.logging.ClientLogCommand to introduce the ability for clients to log messages to the server as part of the logging overhaul.
  • Added net.lugdunon.command.core.console.GetPropertyCommand to allow clients to query server or world property values from the server.
  • Added logging support to net.lugdunon.server.worldgen.defaults.DefaultWorldGen.
  • Fixed an issue in net.lugdunon.states.tiledGame.PointerInputEvent that was allowing quest interaction with dead NPCs.
  • Fixed an issue in net.lugdunon.ui.advancements.AdvancementsDialog that was causing advancement icons to not display in the standalone client.
  • Fixed an issue in net.lugdunon.util.Color that could result in improperly formatted color strings.
  • Fixed an issue in Namespace.instanceOf that could result in improper return values.
  • Chat filtering implemented. Players can now filter out messages that they deem unimportant, lessening the clutter in the client log.
  • Logging statements in net.lugdunon.command.core.console.HelpConsoleCommand updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.command.core.Command updated to reflect new filtering argument.
  • net.lugdunon.command.core.ConnectToServerCommand updated to initialize logging handlers, and logging level specified by the server.
  • net.lugdunon.command.core.ConnectToServerCommand updated to initialize and register all available chat filters.
  • Logging statements in net.lugdunon.command.core.ErrorCommand updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.command.Client updated to reflect new filtering argument.
  • net.lugdunon.commandCilent updated to use new remote ip sensing REST service now available on the auth server.
  • Logging statements in net.lugdunon.input.GamePad updated to reflect new filtering argument.
  • Currency instantiation in net.lugdunon.state.mail.Mail updated to use the server's specific currency implementation.
  • Logging statements in net.lugdunon.states.list.ServerList updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.states.ActionBarGameState updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.ui.achievements.AchievementsDialog updated to reflect new filtering argument.
  • Added net.lugdunon.ui.dialog.WaitWithLogDialog. This provides the template for a wait dialog that also incorporates a logging frame.
  • Logging statements in net.lugdunon.ui.icon.MailIcon updated to reflect new filtering argument.
  • Updated net.lugdunon.ui.inventory.sub.Container to support loot siphons.
  • Logging statements in net.lugdunon.ui.recipe.RecipeEditorDialog updated to reflect new filtering argument.
  • Added net.lugdunon.ui.settingsMenu.settings.ChatFilterSetting. This provides the UI for players to enable or disable the various available chat filters.
  • Logging statements in net.lugdunon.ui.ActionButton updated to reflect new filtering argument.
  • Added net.lugdunon.ui.Console.isChatFilteredOn(filterMode) to the client-side API.
  • Added filterMode argument to net.lugdunon.ui.Console.log(msg,color,filterMode,foreign,showMissedOnly) in the client-side API.
  • Client live log messages now use a more optimized method of fading out.
  • net.lugdunon.ui.Dialog now properly sets empty content.
  • Added net.lugdunon.ui.Dialog.waitWithLog(title,context,callback) to the client-side API.
  • Added closeDelegate argument to net.lugdunon.ui.Dialog.smallDialog(title,w,h,closeDelegate) in the client-side API. Close delegates need to implement an onclose(dialogueId) function.
  • Logging statements in net.lugdunon.ui.Modifiers updated to reflect new filtering argument.
  • Added net.lugdunon.util.logging.LoggingHandler to the client-side code base. Serves as the 'interface' for custom client logging handlers.
  • Added net.lugdunon.util.logging.ConsoleLoggingHandler to the client-side code base. Implements logging to the browser's debug console.
  • Logging statements in net.lugdunon.util.Color updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.util.GraphicContextExtensions updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.Game updated to reflect new filtering argument.
  • Namespace library updated to implement new logging / logging handlers implementation.
  • Added Namespace.cssRuleForClass(className,rule) to the client-side API. This function will return the value of a css rule defined for a given css class name.
  • Standalone client process now supports customer REST handlers.
  • Standalone client process /updateClientProgress/ REST call. Provides progressive status updates to web client on client update.
  • Standalone client process /createWorldProgress/ REST call. Provides progressive status updates to web client on new world creation.
  • Added net.lugdunon.client.command.rest.IClientCommandRESTHandler to the server-side code base.
  • Added net.lugdunon.client.command.Request to the server-side code base.
  • Changed net.lugdunon.client.command.CommandBridge.initRes(Request request,OutputStream response,int status) from protected to public in the server-side API.
  • Changed net.lugdunon.client.command.CommandBridge.initRes(Request request,OutputStream response,int status,String contentType) from protected to public in the server-side API.
  • Added net.lugdunon.client.runner.ClientUpdateRunner.getLogEntries() to the server-side API.
  • Added net.lugdunon.client.runner.WorldGeneratorRunner.getLogEntries() to the server-side API.
  • net.lugdunon.client.util.WebClient now supports svg files.
  • Updated logging to include "currency" filter in net.lugdunon.command.console.gm.AlterCurrencyCommand.
  • Updated logging to include "gmNotification" filter in net.lugdunon.command.console.gm.BlacklistCommand.
  • Logging statements in net.lugdunon.command.console.gm.BlacklistCommand updated to reflect new filtering argument.
  • Updated logging to include "gmNotification" filter in net.lugdunon.command.console.gm.GameModeCommand.
  • Logging statements in net.lugdunon.command.console.gm.GiveItemCommand updated to reflect new filtering argument.
  • Updated logging to include "gmNotification" filter in net.lugdunon.command.console.gm.GmCommand.
  • Updated logging to include "gmNotification" filter in net.lugdunon.command.console.gm.KickCommand.
  • Updated logging to include "gmNotification" filter in net.lugdunon.command.console.gm.SetMOTDCommand.
  • Logging statements in net.lugdunon.command.console.gm.ShutdownCommand updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.command.console.gm.WaypointCommand updated to reflect new filtering argument.
  • Updated logging to include "gmNotification" filter in net.lugdunon.command.console.gm.WhitelistCommand.
  • Logging statements in net.lugdunon.command.console.gm.WhitelistCommand updated to reflect new filtering argument.
  • net.lugdunon.command.console.ConsoleCommand now adds a new incoming request to the request queue instead of handling processing directly.
  • Logging statements in net.lugdunon.command.console.DebugCommand updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.command.console.EmoteConsoleCommand updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.command.console.FriendCommand updated to reflect new filtering argument.
  • Added net.lugdunon.command.console.GetPropertyCommand. Provides a method for the client to query server or world properties.
  • Logging statements in net.lugdunon.command.console.ListOnlineCharactersCommand updated to reflect new filtering argument.
  • Updated logging to include "ooc" filter in net.lugdunon.command.console.OOCConsoleCommand.
  • Updated logging to include "partyStatus" filter in net.lugdunon.command.console.PartyCommand.
  • Logging statements in net.lugdunon.command.console.PlayedCommand updated to reflect new filtering argument.
  • Updated logging to include "say" filter in net.lugdunon.command.console.SayCommand.
  • Logging statements in net.lugdunon.command.console.TellCommand updated to reflect new filtering argument.
  • Updated logging to include "yell" filter in net.lugdunon.command.console.YellCommand.
  • Added filterMode property to the net.lugdunon.command.console.LogConsoleCommand.
  • net.lugdunon.command.UpdateUserDefinedDataCommand now re/inits lootConsumer implementation when UDD is updated.
  • Added dungeon item support to net.lugdunon.command.AssignItemCommand.
  • Updated logging to include "inventory" filter in net.lugdunon.command.AssignItemCommand.
  • Added dungeon item support to net.lugdunon.command.CraftItemCommand.
  • Added dungeon item support to net.lugdunon.command.MoveInventoryItemCommand.
  • Added net.lugdunon.command.core.logging.ClientLogCommand. This is the core mechanism for enabling clients to log their events to the server.
  • Updated net.lugdunon.command.core.play.ExtinguishFireCommand to include support for dungeon items.
  • Updated net.lugdunon.command.core.play.FillBucketCommand to include support for dungeon items.
  • Updated net.lugdunon.command.core.play.FillMugCommand to include support for dungeon items.
  • Logging statements in net.lugdunon.command.core.play.SetHomeCommand updated to reflect new filtering argument.
  • Updated net.lugdunon.command.core.play.SplitPairedItemCommand to include support for dungeon items.
  • Updated net.lugdunon.command.core.play.UseShearsCommand to include support for dungeon items.
  • Fixed a typo in net.lugdunon.command.core.player.ApplyEffectCommand.getName().
  • Updated logging to include "advancement" filter in net.lugdunon.command.player.PlayerAdvancementCommand.
  • Updated logging to include "playerConnect" filter in net.lugdunon.command.player.PlayerConnectCommand.
  • Updated logging to include "playerDisconnect" filter in net.lugdunon.command.player.PlayerDisconnectCommand.
  • Updated logging to include "quest" filter in net.lugdunon.command.player.QuestUpdatedCommand.
  • Updated logging to include "spellAssignment" filter in net.lugdunon.command.spell.AssignSpellCommand.
  • Updated net.lugdunon.command.core.vendor.SellItemToVendorCommand to include support for dungeon items.
  • Logging statements in net.lugdunon.command.core.ClientNotificationCommand updated to reflect new filtering argument.
  • Updated net.lugdunon.command.core.ConnectToServerCommand updated to support logger handlers.
  • Logging statements in net.lugdunon.command.core.LoadCharacterCommand updated to reflect new filtering argument.
  • Removed require DisplayFlags statements from net.lugdunon.command.core.ScreenResizeCommand.
  • Logging statements in net.lugdunon.command.core.Command updated to reflect new filtering argument.
  • Added enhanced support for console fired commands in net.lugdunon.command.core.CommandRequest.
  • Added net.lugdunon.math.Point.subPoint(Point p) to the server-side API.
  • Added net.lugdunon.math.Point.add(Point p) to the server-side API.
  • Added net.lugdunon.math.Point.sub(Point p) to the server-side API.
  • Fixed an issue with net.lugdunon.server.mod.ServerMod not instantiating an empty etc structure.
  • Added net.lugdunon.server.mod.ServerMod.listClientCommmandRESTHandlers() to the server-side API.
  • Added net.lugdunon.server.mod.ServerModCache.getWorldGenConfiguration(String worldGenId) to the server-side API.
  • Added net.lugdunon.server.worldgen.IWorldGen.getWorldConfiguration() to the server-side API.
  • Added net.lugdunon.server.worldgen.IWorldGen.getInstancePath(long instanceId, String file) to the server-side API.
  • Added net.lugdunon.server.worldgen.BaseWorldGen.getWorldConfiguration() to the server-side API.
  • Added net.lugdunon.server.worldgen.BaseWorldGen.getInstancePath(long instanceId, String file) to the server-side API.
  • Updated net.lugdunon.server.worldgen.WorldGenerator to support a stateless mode that will operate with pre-provided caches and definitions.
  • Added net.lugdunon.server.worldgen.WorldGenerator.setIndependentPreset(String independentPreset) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.setItemDefinitions(ItemDefinitions itemDefinitions) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.setRandom(Random random) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.setTerrain(Terrain terrain) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.setNoState(boolean noState) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.getLayersPreset(long instanceId) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.getItemDefinitions() to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.getRandom() to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.getTerrain(long instanceId) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.isNoState() to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.reset() to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.setServerModCache(ServerModCache smc) to the server-side API.
  • Added net.lugdunon.server.worldgen.WorldGenerator.getServerModCache() to the server-side API.
  • Added net.lugdunon.server.EtcConfig to the server-side code base. Used by world generators to decide content handling with respect to files in the /etc file structure.
  • Updated net.lugdunon.state.character.loot.ItemDrop to include support for dungeon items.
  • Logging statements in net.lugdunon.state.character.party.Party updated to reflect new filtering argument.
  • Updated net.lugdunon.state.character.Character to include support for dungeon items.
  • Fixed an issue with net.lugdunon.state.item.trigger.player.InstanceTransitionPlayerTrigger that could cause portal destinations to be improperly set.
  • Added net.lugdunon.state.item.ItemCache.newDungeonItem(Item itemDef,long dungeonInstanceId) to the server-side API.
  • net.lugdunon.state.item.ItemDefinitions.getItemDef(String itemId) now supports the 'itemId|count' format.
  • net.lugdunon.state.item.ItemDefinitions now supports bounded random values in the 'itemId|count' format, where 'count' takes the form of 'min-max'.
  • net.lugdunon.state.item.ItemDefinitions can now be stateless.
  • Added net.lugdunon.state.item.ItemInstance.flagAsDungeonItem(long dungeonInstanceId) to the server-side API.
  • Added net.lugdunon.state.item.ItemInstance.isDungeonItem() to the server-side API.
  • Added net.lugdunon.state.item.ItemInstance.getDungeonInstanceId() to the server-side API.
  • Logging statements in net.lugdunon.state.metric.item.ItemCraftedMetric updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.state.metric.item.ItemGatheredMetric updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.state.metric.item.ItemLootedMetric updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.state.metric.item.ItemPlacedMetric updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.state.metric.item.ItemReceivedMetric updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.state.metric.item.ItemRemovedMetric updated to reflect new filtering argument.
  • Added net.lugdunon.state.mod.Mod.getEtc() to the server-side API.
  • Added net.lugdunon.state.mod.Mod.getSubsystemImpl(String subsystemId) to the server-side API.
  • Added net.lugdunon.state.mod.Mod.listSubsystems() to the server-side API.
  • Updated logging to include "quest" filter in net.lugdunon.state.quest.QuestData.
  • Updated net.lugdunon.state.recipe.Recipe to include support for dungeon items.
  • net.lugdunon.state.waypoint.WaypointCache constructor now expects an actual Instance object instead of an instance id.
  • Logging statements in net.lugdunon.state.State updated to reflect new filtering argument.
  • Added net.lugdunon.state.State.getLibPath() to the server-side API.
  • net.lugdunon.state.World.seed is now a String value, instead of a long
  • net.lugdunon.state.World.getSeed() now returns an Object.
  • World config property accesses will now only log on the initial access.
  • Added net.lugdunon.state.World.closeInstance(long instanceId) to the server-side API.
  • Added net.lugdunon.state.World.hasActiveInstance(long instanceId) to the server-side API.
  • Added net.lugdunon.state.World.hasInstance(long instanceId) to the server-side API.
  • Removed net.lugdunon.util.logging.ClientFilter.AuditFilter from the server-side API.
  • Removed net.lugdunon.util.logging.ClientFilter.NonAuditFilter from the server-side API.
  • Added net.lugdunon.util.logging.ClientFilter to the server-side code base.
  • Added net.lugdunon.util.logging.ClientLog to the server-side code base.
  • Added net.lugdunon.util.logging.ClientLoggingHandler to the client-side code base.
  • Added net.lugdunon.util.logging.GeneralFilter to the server-side code base.
  • Resolved several issues with net.lugdunon.util.ArtifactUpdater that were producing undesired results.
  • Added net.lugdunon.util.FastMath.randomFromSeed(Object seed) to the server-side API.
  • Added net.lugdunon.util.FastMath.boundedRandomValue(int min, int max) to the server-side API.
  • Added net.lugdunon.util.FastMath.diff(double i, double j) to the server-side API.
  • Added net.lugdunon.util.FastMath.diff(int i, int j) to the server-side API.
  • Added net.lugdunon.util.FastMath.indexToChunkPoint(int i,int w) to the server-side API.
  • Added net.lugdunon.util.FastMath.indexToChunkPoint(int i,int w,Point p) to the server-side API.
  • Added net.lugdunon.util.FileUtils.fileExists(String fileName) to the server-side API.
  • Added net.lugdunon.util.FileUtils.fileExists(String fileName, boolean absolute) to the server-side API.
  • Added net.lugdunon.util.FileUtils.resourceAsStream(String resource) to the server-side API.
  • Added net.lugdunon.util.FileUtils.imageToDataURL(BufferedImage image) to the server-side API.
  • Logging statements in net.lugdunon.Game updated to reflect new filtering argument.
  • Logging statements in net.lugdunon.Server updated to reflect new filtering argument.
  • Added server.logging.level property definition. Set logging level for the server process. (ERROR,WARN,INFO,DEBUG,TRACE)
  • Added client.logging.level property definition. Set logging level for the client process. (ERROR,WARN,INFO,DEBUG,TRACE)
  • Added dungeon.timeout.interval world property definition. The interval in which an unoccupied dungeon will reset.
  • Updated logging.properties to reflect new logging implementation.
  • Server mods can now override (add/remove/modify) individual entries in etc/ files.
  • Logging statements in net.lugdunon.character.Character updated to reflect new filtering argument.
  • Updated net.lugdunon.character.Character to include support for dungeon items.
  • Fixed an issue where quest NPCs were still 'quest interactable' when dead.
  • Updated logging to include "playerDeath" filter in net.lugdunon.character.PlayerCharacter.
  • Updated logging to include "otherPlayerDeaths" filter in net.lugdunon.character.PlayerCharacter.
  • Updated net.lugdunon.item.renderer.DefaultRenderer to include support for dungeon items.
  • Updated net.lugdunon.item.ItemInstance to include support for dungeon items.
  • Fixed an issue with sprites not correctly updating hen palette is changed.
  • Added the java arg '-Dlugdunon.lib.path=./bin/' to all client and server run scripts.
  • Logging statements in net.lugdunon.command.core.console.gm.ImageToTerrainCommand updated to reflect new filtering argument.
  • Added biome support to net.lugdunon.command.core.console.gm.SpawnNPCCommand.
  • Fixed an issue with NPCs not correctly re-initializing their quest giver state when responding.
  • Logging statements in net.lugdunon.command.core.console.gm.TerrainToImageCommand updated to reflect new filtering argument.
  • Fixed an issue where the terrain to image console command could cause a crash if it was invoked with a non-existent instance id.
  • net.lugdunon.command.core.console.gm.TerrainToImageCommand now generates a biome image, in addition to the terrain and elevation images.
  • net.lugdunon.command.core.console.LocCommand now reports the elevation and biome at the player's current location.
  • NPCs that are assigned a biome at spawn can not path out of that biome.
  • Added net.lugdunon.command.CommandProperties.toString() to the server-side API.
  • Added net.lugdunon.command.CommandProperties.getBiome(String key, Biome defaultValue) to the server-side API.
  • Added net.lugdunon.command.CommandProperties.getBiome(String key) to the server-side API.
  • Added net.lugdunon.command.CommandProperties.setBiome(String key, Biome value) to the server-side API.
  • Removed net.lugdunon.state.aoe.AreaOfEffectInstance.handleCharacterEffect(Character pc) from the server-side API.
  • AoE spells can now be triggered by placeable item instances.
  • Added net.lugdunon.state.aoe.AreaOfEffectInstance.handleCharacterEffect(Character pc, Instance i) to the server-side API.
  • Added net.lugdunon.state.aoe.AreaOfEffectInstance.handleSoundEffect(Instance i, Point location, boolean onTarget) to the server-side API.
  • Added biome support to net.lugdunon.state.character.behavior.core.EvolveBehavior.
  • Added biome support to net.lugdunon.state.character.NonPlayerCharacter.
  • Added loot consumer support to net.lugdunon.state.character.NonPlayerCharacter.
  • Added net.lugdunon.state.character.NonPlayerCharacter.getAssignedBiome() to the server-side API.
  • Added net.lugdunon.state.character.NonPlayerCharacter.setAssignedBiome(byte biomeId) to the server-side API.
  • Added biome support to net.lugdunon.state.character.NPCCache.
  • Removed net.lugdunon.state.character.NpcCache(JSONObject o, long instanceId) from the server-side API.
  • Added net.lugdunon.state.character.NpcCache(JSONObject o, Instance instance) to the server-side API.
  • Added net.lugdunon.state.character.NPCCache.listNpcsInBiome(byte biomeId) to the server-side API.
  • Fixed an issue with net.lugdunon.state.item.arc.handler.matter.MatterPumpArcHandler not properly setting its powered state.
  • Added net.lugdunon.state.item.arc.handler.IArcHandler.conduitStateUpdated(int conduitType, int conduitIndex) to the server-side API.
  • Added net.lugdunon.state.item.IPlacementStrategy to the server-side code base. Provides an interface for determining the procedural placement of items in the game world.
  • Added net.lugdunon.state.item.Item.getGroundedLocation(Point location) to the server-side API.
  • Added net.lugdunon.state.item.Item.getGroundedLocationForState(String state, Point location) to the server-side API.
  • Added net.lugdunon.state.item.Item.getGroundingPoint() to the server-side API.
  • Fixed an issue with item worth determination in net.lugdunon.state.item.Item.
  • net.lugdunon.state.item.PlaceableItemCache is now capable of a stateless instantiation.
  • Removed net.lugdunon.state.item.PlaceableItemCache(JSONObject o, long instanceId) from the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache(JSONObject o, Instance instance) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache(Terrain terrain) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache.newPlaceableItemReference(Item itemDef, Point location) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache.listAllItemsInRangeOf(Point location, double range) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache.listItemsInBiome(String itemId, byte biomeId) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache.listAllItemsInBiome(byte biomeId) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache.isItemInBiome(long itemInstanceId,byte biomeId) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemCache.isItemInBiome(PlaceableItemInstance itemInstance,byte biomeId) to the server-side API.
  • Added loot consumer support to net.lugdunon.state.item.PlaceableItemCache.
  • net.lugdunon.state.item.PlaceableItemCache now properly handles update action and loot consumer registration / unregistration in the event of a lifecycle transition.
  • net.lugdunon.state.item.PlaceableItemInstance is now capable of a stateless instantiation.
  • Added loot consumer support to net.lugdunon.state.item.PlaceableItemInstance.
  • Removed net.lugdunon.state.item.PlaceableItemInstance(JSONObject o) from the server-side API.
  • Removed net.lugdunon.state.item.PlaceableItemInstance.setItemDef(Item itemDef) from the server-side API.
  • Removed net.lugdunon.state.item.PlaceableItemInstance.setItemDef(Item itemDef, boolean placedByGM) from the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemInstance(JSONObject o, long instanceId) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemInstance.getLootConsumer() to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemInstance.initLootConsumer() to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemInstance.setItemDef(Item itemDef, boolean initial) to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemInstance.setItemDef(Item itemDef, boolean placedByGM, boolean initial) to the server-side API.
  • Added net.lugdunon.world.biome.Biome to the server-side code base.
  • Added net.lugdunon.world.biome.dynamic.DynamicBiome to the server-side code base.
  • Added net.lugdunon.world.biome.dynamic.DynamicNPC to the server-side code base.
  • Added net.lugdunon.world.biome.dynamic.DynamicPlaceableItem to the server-side code base.
  • Added support for runtime properties to net.lugdunon.world.instance.Instance.
  • Added biome support to net.lugdunon.world.instance.Instance.
  • Added loot consumer support to net.lugdunon.world.instance.Instance.
  • Fixed an issue that was allowing multiple instances of the same updatable to be registered with an instance.
  • Added net.lugdunon.world.instance.Instance.init(String terrainFile, Tileset tileset, Object seed) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.getRuntimeProperty(String key) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.hasRuntimeProperty(String key) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.setRuntimeProperty(String key, Object property) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.registerLootConsumer(ILootConsumer lc) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.unregisterLootConsumer(ILootConsumer lc) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.instanceExists(long instanceId) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.findCharactersInRangeOf(int range, Point location) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.informLootConsumers(Object generator, Point location, ItemDefAndStackSize itemDefAndStackSize, CommandProperties addProps) to the server-side API.
  • Added net.lugdunon.world.instance.Instance.informLootConsumers(Object generator, Point location, ICurrency currency, CommandProperties addProps) to the server-side API.
  • Added et.lugdunon.world.instance.InstanceNotFoundException to the server-side code base.
  • Added net.lugdunon.world.instance.TransientInstanceCache.hasInstance(long instanceId) to the server-side API.
  • Added net.lugdunon.world.instance.TransientInstanceCache.hasActiveInstance(long instanceId) to the server-side API.
  • Fixed several issues that were causing incorrect tile indexing in chunks.
  • Added biome support to net.lugdunon.world.terrain.Terrain.
  • Added procedural generation support to net.lugdunon.world.terrain.Terrain.
  • Added versioning support to net.lugdunon.world.terrain.Terrain. Terrain files now contain a version number to identify the specific format version for correct parsing.
  • Removed net.lugdunon.world.terrain.Terrain(long instanceId, Tileset tileset) from the server-side API.
  • Removed net.lugdunon.world.terrain.Terrain(String layerPreset, BufferedImage[] images, boolean voidElevation) from the server-side API.
  • Removed net.lugdunon.world.terrain.Terrain(JSONObject tilesetConfig, BufferedImage bi, Tileset tileset, long seed) from the server-side API.
  • Removed net.lugdunon.world.terrain.Terrain(Tileset tileset, short size, long seed) from the server-side API.
  • Removed net.lugdunon.world.terrain.Terrain(long instanceId, String terrainFile, Tileset tileset, long seed) from the server-side API.
  • Removed net.lugdunon.world.terrain.Terrain(JSONObject tilesetConfig, String terrainFile, Tileset tileset, long seed) from the server-side API.
  • Removed net.lugdunon.world.terrain.Terrain.saveLayerImage(String outputFile) from the server-side API.
  • Removed net.lugdunon.world.terrain.Terrain.saveElevationImage(String outputFile) from the server-side API.
  • Added net.lugdunon.world.terrain.Terrain(long instanceId, Tileset tileset, JSONObject instanceConfig) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain(long instanceId, short[] terrain, byte[] elevation, byte[] biome, Tileset t, JSONObject instanceConfig, Object seed) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain(String layerPreset, JSONObject instanceConfig, BufferedImage[] images, boolean voidElevation) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain(long instanceId, String terrainFile, Tileset tileset, JSONObject instanceConfig, Object seed) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.initBiomes(JSONObject instanceConfig) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.initPlacementStrategy(JSONObject instanceConfig) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getInstanceId() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getPlacementStrategy() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.listBiomeIds() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getBiome(byte id) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getBiomeIndices() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getIndicesForBiome(byte biomeId) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getBiomeData() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getElevationData() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getTerrainData() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getProbabilityForTile(int x,int y) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getLayersPreset() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.elevationChangeInRangeOf(Point loc, int range) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.terrainChangeInRangeOf(Point loc, int range) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.saveTerrainData(File f) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getBiomeImageData() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getBiomeAt(int x, int y) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.recomputeImpassabilityFlags() to the server-side API.
  • Added biome support to net.lugdunon.world.terrain.Tileset.
  • Added net.lugdunon.world.terrain.Tileset(JSONObject tilesetDef, short chunkSize) to the server-side API.
  • Added net.lugdunon.world.terrain.Tileset.getBiomes(String preset) to the server-side API.
  • Added net.lugdunon.server.worldgen.procedural.biome.MetazeldaDungeonBiome to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.client.command.rest.PreviewImageClientCommandRestHandler to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.client.command.rest.PreviewImageProgressClientCommandRestHandler to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.client.command.rest.PWGConfigClientCommandRestHandler to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.client.runner.PreviewImageGenerator to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.client.runner.PreviewImageGeneratorRunner to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instances.0.instance.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instances.0.npcCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instances.0.placeableItemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instances.0.terrain.dat to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instances.0.waypointCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_CAVERN.instance.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_CAVERN.npcCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_CAVERN.placeableItemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_CAVERN.waypointCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_RUINS.instance.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_RUINS.npcCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_RUINS.placeableItemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.HIGHLAND_RUINS.waypointCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_CAVERN.instance.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_CAVERN.npcCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_CAVERN.placeableItemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_CAVERN.waypointCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_RUINS.instance.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_RUINS.npcCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_RUINS.placeableItemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.LOWLAND_RUINS.waypointCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_CAVERN.instance.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_CAVERN.npcCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_CAVERN.placeableItemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_CAVERN.waypointCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_RUINS.instance.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_RUINS.npcCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_RUINS.placeableItemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.instanceTemplates.MIDLAND_RUINS.waypointCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.itemCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.items.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.npcs.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.quests.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.vendorCache.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.etc.vendors.json to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.instance.spawner.spawn.ISpawnPointGenerator to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.instance.spawner.spawn.MetazeldaDungeonSpawnPointGenerator to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.instance.spawner.spawn.RandomSpawnPointGenerator to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.instance.spawner.ProceduralInstanceSpawner to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.item.placement.metazelda.MetazeldaDungeonPlacementStrategy to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.item.placement.GriddedPlacementStrategy to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.metazelda.constraints.PlanarConstraints to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.metazelda.generator.room.DefaultRoomGenerator to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.metazelda.generator.room.EasedCornersRoomGenerator to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.metazelda.generator.room.IRoomGenerator to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.metazelda.generator.BaseDungeonGeneratorWrapper to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.metazelda. MetazeldaDungeon to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.CaveSystem to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.DiamondSquare to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.DiamondSquare to the client-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.DifferenceNoise to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.INoiseGen to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.noise.INoiseGen to the client-side code base.
  • Added net.lugdunon.server.worldgen.procedural.post.ErosionPostProcessor to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.post.ErosionPostProcessor to the client-side code base.
  • Added net.lugdunon.server.worldgen.procedural.post.IPostProcessor to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.post.IPostProcessor to the client-side code base.
  • Added net.lugdunon.server.worldgen.procedural.room.BaseIntermediaryRoom to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.room.EdgeId to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.ProceduralWorldGen.html to the client-side code base.
  • Added net.lugdunon.server.worldgen.procedural.ProceduralWorldGen to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.ProceduralWorldGen to the client-side code base.
  • Added net.lugdunon.server.worldgen.procedural.ProceduralWorldGen to the server-side code base.
  • Added net.lugdunon.server.worldgen.procedural.ProceduralWorldGenExpert.html to the client-side code base.
  • Added net.lugdunon.server.worldgen.procedural.server.mod.json to the server-side code base.
  • Added standaloneExports.json to the server-side code base.
  • Removed access control block from main container sub panel. Access control on containers must now be accomplished via the standard configuration menu item.
  • Fixed an issue with the crafting grid not reporting the correct contents of its inventory slots.
  • Fixed an issue that was causing shared container inventory status updates to not be shared among clients.
  • Fixed an issue that was causing radial menu button tooltips to persist when a dialog is opened.
  • Fixed an issue that was causing ambient sounds attached to placeable items to ignore the sound volume settings.
  • Fixed the description text on bows.
  • Added a new sword icon, and inventory item. This weapon will obtainable exclusively as a dungeon drop.
  • Added a new bow icon, and inventory item. This weapon will obtainable exclusively as a dungeon drop.
  • Fixed an issue that was causing placeable item access level changes from being recognized by other clients.
  • Fixed an issue that was causing placeable item access level restrictions from being recognized by other clients.
  • Added support for removing specific entries in /etc config files when merging.
  • Removed white, blue, and black plate armor set recipes when using the procedural world gen. These armor sets will obtainable exclusively as dungeon drops.
  • Item and AreaOfEffect classes now support multiple target effects.
  • Durability on dungeon drop weapons increased greatly.
  • Damage on dungeon drop weapons decreased to be more in line with current item progression.
  • Added Midland and Highland Ruins and Caverns.
  • Added net.lugdunon.server.worldgen.procedural.noise.metazelda.generator.room.IRoomGenerator.hasGoal() to the server-side API.
  • Dungeon generation will now generate a goal room attached to the boss' room if the instance metadata specifies a goal item.
  • Procedural dungeon metadata now supports multiple boss definitions (via a | delimited format), from which one will be chosen at random on instance initialization.
  • NPC metadata now supports multiple NPC names (via a | delimited format), from which one will be chosen at random on NPC initialization.
  • Placeable item loot drops are now moddable via the loot drop strategy API. This will allow modders to develop custom loot drop rules.
  • Modified Server property 'npc.name.filter' to allow the | character.
  • Fixed an issue with character / item access checking that could result in an NPE on some occasions.
  • Items can now specify an 'overrideExpireProtection' boolean property that will allow GM-placed items to expire.
  • Fixed an issue with the expirable check on a placeable item that failed to account for expiry conditions only when specific inventory items are used to interact with the placeable in question.
  • Added support for server-side character effects.
  • Removed net.lugdunon.state.aoe.AreaOfEffect.hasTargetEffect() from the server-side API.
  • Removed net.lugdunon.state.aoe.AreaOfEffect.getTargetEffectClass() from the server-side API.
  • Removed net.lugdunon.state.aoe.AreaOfEffect.getTargetEffectInitData) from the server-side API.
  • Added net.lugdunon.state.aoe.AreaOfEffect.hasTargetEffects() to the server-side API.
  • Added net.lugdunon.state.aoe.AreaOfEffect.getTargetEffectCount() to the server-side API.
  • Added net.lugdunon.state.aoe.AreaOfEffect.getTargetEffectClass(int index) to the server-side API.
  • Added net.lugdunon.state.aoe.AreaOfEffect.getTargetEffectInitData(int index) to the server-side API.
  • Removed net.lugdunon.state.aoe.AreaOfEffectInstance.handleSoundEffect(Instance i) from the server-side API.
  • Removed net.lugdunon.state.aoe.AreaOfEffectInstance.handleSoundEffect(Instance i, Point location, boolean onTarget) from the server-side API.
  • Added net.lugdunon.state.aoe.AreaOfEffectInstance.handleSoundEffect() to the server-side API.
  • Added net.lugdunon.state.character.effect.ICharacterEffect to the server-side code base.
  • Added net.lugdunon.state.character.effect.PlaySoundCharacterEffect to the server-side code base.
  • Added net.lugdunon.state.item.loot.ILootDropStrategy to the server-side code base.
  • Added net.lugdunon.state.item.loot.DefaultLootDropStrategy to the server-side code base.
  • Added net.lugdunon.state.item.loot.PooledPercentageLootDropStrategy to the server-side code base.
  • Added net.lugdunon.state.item.loot.DroppedLoot to the server-side code base.
  • Added net.lugdunon.state.item.loot.ILootDropStrategy to the client-side code base.
  • Added net.lugdunon.state.item.loot.DefaultLootDropStrategy to the client-side code base.
  • Added net.lugdunon.state.item.loot.PooledPercentageLootDropStrategy to the client-side code base.
  • Removed net.lugdunon.state.item.Item.hasTargetEffect() from the server-side API.
  • Removed net.lugdunon.state.item.Item.getTargetEffectClass() from the server-side API.
  • Removed net.lugdunon.state.item.Item.setTargetEffectClass(String targetEffectClass) from the server-side API.
  • Removed net.lugdunon.state.item.Item.getTargetEffectInitData() from the server-side API.
  • Removed net.lugdunon.state.item.Item.setTargetEffectInitData(JSONObject targetEffectInitData) from the server-side API.
  • Added net.lugdunon.state.item.Item.hasTargetEffects() to the server-side API.
  • Added net.lugdunon.state.item.Item.getTargetEffectCount() to the server-side API.
  • Added net.lugdunon.state.item.Item.getTargetEffectClass(int index) to the server-side API.
  • Added net.lugdunon.state.item.Item.getTargetEffectInitData(int index) to the server-side API.
  • Added net.lugdunon.state.mail.Mail.attachmentLength() to the server-side API.
  • Added net.lugdunon.state.mail.Mail.hasAttachments() to the server-side API.
  • Added net.lugdunon.command.core.misc.SetLightingStateCommand
  • Added two new tile mappings to Tileset.json.
  • Changed ui layers on cave and ruins/dungeon portals from foreground to background.
  • Procedurally generated dungeons now have a 'fog of war' mechanic. Rooms will be dark until a door leading to that room is opened.
  • Tuned resource nodes in the overworld by reducing the amount of certain nodes.
  • Added shipwrecked cargo resources to the beach biome. These resources will allow players access to seeds and animals for farming. Once gathered, these items will not respawn.
  • Added stone ore nodes to forest and steppe biomes.
  • Added cows to the piedmont biome.
  • Added penguins to the alpine biome.
  • Removed generateDoorForConnector (Instance instance, IDungeon dungeon, Room room, Rect roomDim, int wallThickness, int doorThickness, Direction orientation) from the server-side API.
  • Added generateDoorForConnector (Instance instance, IDungeon dungeon, Room room, Rect roomDim, int wallThickness, int doorThickness, Direction orientation, Edge edge) to the server-side API.
  • Doors and lights are now linked to their respective rooms (in dungeons) via properties stored in the item's user defined data.
  • Added a stub for net/lugdunon/server/worldgen/procedural/ProceduralWorldGenExpert.html.
  • Updated the ace code editor library (used in the client) to the latest version.
  • Fixed an issue with several settings panes that was causing display errors.
  • Fixed an issue with several settings panes that was slider labels to nit display.
  • Fixed an issue with the macro editor that was causing cursor drift.
  • Fixed an issue with the LargeListState that was causing line item button labels to persist in certain cases.
  • Fixed an issue that was causing characters to be placed in 'the void' if the instance transition completed before the character was done pathing.
  • Added net.lugdunon.character.Character.handlePathingComplete() to the client-side API.
  • Removed net.lugdunon.ui.settingsMenu.settings.ChatFilterSetting.html.
  • Removed net.lugdunon.ui.settingsMenu.settings.UISetting.html.
  • Added Array.concatUnique() to the client-side API.
  • Added support for programmatically toggling the lighting state of non-arc controlled lights.
  • Added metazelda.jar to the server build process.
  • net.lugdunon.server.worldgen.procedural is now included in the server.mods lists for client builds.
  • net.lugdunon.server.worldgen.procedural is now included in the server.mods lists for server builds.
  • Added lugdunon-client-web.jar to the class path for client runners.
  • Fixed an issue that was resulting in an empty repository list in the standalone client settings.
  • net.lugdunon.command.core.console.LocCommand now logs the top layer tile score for debugging purposes.
  • Loading required libs now correctly loads and caches the lib for future reference.
  • Populated world checking now looks for an etc structure instead of the world.cfg file. This will allow for easier custom configs on standalone servers.
  • Artifact updating now has more intelligent checking on version numbers. An update will now only be attempted if the repository artifact's version number is higher than the local artifact.
  • Added net.lugdunon.state.item.PlaceableItemInstance.isLightingEnabled() to the server-side API.
  • Added net.lugdunon.state.item.PlaceableItemInstance.setLightingEnabled(boolean lightingEnabled) to the server-side API.
  • Added net.lugdunon.state.World.worldExistsAndIsPopulated(String worldId) to the server-side API.
  • Added net.lugdunon.util.IFatalErrorHandler.handleFatalError(Exception e) to the server-side API.
  • Added net.lugdunon.util.VersionNumber to the server-side code base. Version numbers for artifacts must now adhere to the major.minor.revision format.
  • Removed net.lugdunon.world.terrain.rendering.terrain.IterrainRenderingStrategy.TerrainBlockReference(Point[] tileIndices, Point[] elevationIndices, boolean impassable) from the server-side API.
  • Added net.lugdunon.world.terrain.rendering.terrain.IterrainRenderingStrategy.TerrainBlockReference(Point[] tileIndices, Point[] elevationIndices, byte mappingScore, boolean impassable) to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getMappingScoreAt(int x, int y) to the server-side API.
  • Fixed an issue with the biome image data acquisition requesting biome configuration data from the wrong metadata location.
  • Standalone client will now report any server sub-process startup error to the client (with copyable stack trace).
  • Support for ambient audio for biomes added.
  • Fixed an issue in net.lugdunon.asset.DoubleBufferedAudio.setVolume(volume) that was causing exceptions in certain cases.
  • Fixed net.lugdunon.world.defaults.environment.calendar.SimpleGaulishCalendar.getTimeOfDay() to return the proper value.
  • Added ambient sound to the ocean biome.
  • Added worldGen and worldId props to the getAvailableWorldConfigProps REST call in net.lugdunon.server.worldgen.procedural.ProceduralWorldGen
  • Added net.lugdunon.asset.AssetManager.getBiomeAudioChannels() to the client-side API.
  • Added net.lugdunon.asset.AssetManager.findAudioForBiome(biomeId) to the client-side API.
  • Added net.lugdunon.asset.AssetManager.updateBiomeAudio(biomeDistanceMap, instanceTransitionOccurred) to the client-side API.
  • Added net.lugdunon.states.tiledGame.chunk.ChunkManager.biomeDistanceUpdate(res) to the client-side API.
  • Added net.lugdunon.ui.dialog.CopyableLargeTextDialog.html to the client-side codebase.
  • Added net.lugdunon.ui.dialog.copyableLargeText(title,message,copyableContent,context,callback) to the client-side API.
  • Added Namespace.isNull(o) to the client-side API.
  • Added Namespace.compareObject(o,p) to the client-side API.
  • Added Namespace. to the client-side API.
  • Removed net.lugdunon.world.placeables.PlaceableItemInstance.FALLOFF_PROGRESSION_MODES from the client-side API.
  • Removed net.lugdunon.world.placeables.PlaceableItemInstance.getAudio() from the client-side API.
  • Removed net.lugdunon.world.placeables.PlaceableItemInstance.getAudioVolume() from the client-side API.
  • Removed net.lugdunon.world.placeables.PlaceableItemInstance.getAudioFalloffRadius() from the client-side API.
  • Removed net.lugdunon.world.placeables.PlaceableItemInstance.getAudioFalloffProgression() from the client-side API.
  • Added net.lugdunon.world.placeables.PlaceableItemInstance.initAudioDefinition() to the client-side API.
  • Added net.lugdunon.world.placeables.PlaceableItemInstance.getAudioDefinition() to the client-side API.
  • Added net.lugdunon.util.audio.AudioDefinition. This server and client-side class encapsulates the logic for defining and driving audio in Lugdunon's environment.
  • /getAvailableServerConfigProps/ REST call now also returns the extended properties defined by loaded server mods.
  • /getAvailableWorldConfigProps/ REST call now also returns the extended properties defined by loaded server and world mods.
  • net.lugdunon.client.runner.Runner will now only launch a sub-process in headless mode if it is required.
  • Removed net.lugdunon.client.Client.handleServerFail() from the server-side API.
  • Added net.lugdunon.client.Client.handleServerFail(String message) to the server-side API.
  • Added net.lugdunon.client.Client.getServerFailMessage() to the server-side API.
  • PlaySoundCommand now utilizes the new AudioDefinition API.
  • ActionPerformedCommand now utilizes the new AudioDefinition API.
  • DirectDamageCommand now utilizes the new AudioDefinition API.
  • net.lugdunon.state.aoe.AreaOfEffect now utilizes the new AudioDefinition API.
  • net.lugdunon.state.aoe.AreaOfEffectInstance now utilizes the new AudioDefinition API.
  • net.lugdunon.state.character.effect.PlaySoundCharacterEffect now utilizes the new AudioDefinition API.
  • net.lugdunon.state.item.Item now utilizes the new AudioDefinition API.
  • InstanceTransitionCommand now triggers a biome distance update.
  • PlayerMoveCommand now triggers a biome distance update.
  • LoadCharacterCommand now triggers a biome distance update.
  • Added net.lugdunon.command.CommandProperties.getAudioDefinition(String key, AudioDefinition defaultValue) to the server-side API.
  • Added net.lugdunon.command.CommandProperties.getAudioDefinition(String key) to the server-side API.
  • Added net.lugdunon.command.CommandProperties.setAudioDefinition(String key, AudioDefinition value) to the server-side API.
  • Fixed an issue in net.lugdunon.server.worldgen.BaseWorldGen that was causing null pointer exceptions when loading server mods.
  • Removed net.lugdunon.state.item.Item.getSoundEffect(JSONObject soundEffectDefinition) from the server-side API.
  • Added net.lugdunon.state.item.Item.setSoundEffect(AudioDefinition soundEffectDefinition) to the server-side API.
  • Removed net.lugdunon.util.IFatalErrorHandler.handleFatalError(Exception e) from the server-side API.
  • Added net.lugdunon.util.IFatalErrorHandler.handleFatalError(Throwable t) to the server-side API.
  • Added net.lugdunon.world.biome.Biome.biomeDistanceUpdate(Point location, Instance instance, EnhancedDataOutputStream out) to the server-side API.
  • Added net.lugdunon.world.environment.calendar.BaseCalendar.getTimeOfDay().
  • Added net.lugdunon.world.environment.calendar.BaseCalendar.getTimeOfDayAsPercent().
  • Added net.lugdunon.world.terrain.Terrain.biomesInRangeOf(Point loc, int range) to the server-side API.
  • Added net.lugdunon.Server.listExtendedWorldPropertiesForWorld(String worldGen, String worldId) to the server-side API.
  • Environment layer now affects character labels, targeting circles, and most other UI effects.
  • Fixed an issue that was causing harvested resources to regenerate faster than expected.
  • Removed Farm quest chain completion achievement from procedural world gen worlds.
  • Added support for random npc name generation, with support for custom name lists, in-place random selection, and multiple name parts.
  • Added etc/nonPlayerCharacterNamesList.json to the default world gen.
  • Added BOSS.DUNGEON.LOWLAND.RUINS npc to procedural world gen.
  • Added BOSS.DUNGEON.MIDLAND.RUINS npc to procedural world gen.
  • Added BOSS.DUNGEON.HIGHLAND.RUINS npc to procedural world gen.
  • Adjusted exp rewarded and health for ghostly scholars.
  • Ghostly scholars are now hostile to player characters.
  • Exit portals and npc should no longer spawn in walls.
  • Removed "npc.name.filter" server configuration property.
  • Removed "npc.name.filter.error" server configuration property.
  • Added "npc.name.provider" world configuration property.
  • Added net.lugdunon.world.terrain.Terrain.getSpawnableBiomeIndices() to the server-side API.
  • Added net.lugdunon.world.terrain.Terrain.getSpawnableIndicesForBiome(byte biomeId) to the server-side API.
  • Added net.lugdunon.state.World.getNPCNameProvider() to the server-side API.
  • Added net.lugdunon.state.character.name.INonPlayerCharacterNameProvider to the server-side code base.
  • Added net.lugdunon.state.character.name.NonPlayerCharacterListNameProvider to the server-side code base.
  • Added another new tile mapping to Tileset.json.
  • Each name group in nonPlayerCharacterNamesList.json gets a description, name, and origin.
  • Tuned placeable item spawns in the overworld. Added stone ore nodes to meadow biome and increased cavern and ruin spawns.
  • Added "returnPortalToWall" property to instance.json to instruct the RandomSpawnPointGenerator to place return portals on a northern wall.
  • The ProceduralWorldGen now ensures that separate elevation changes are now properly spaced to prevent artifacts.
  • The server list will now notify users of a server's incompatibility with the client based on version numbering (and prevent connection).
  • Moved net.lugdunon.util.audio.AudioDefinition to client project from server project.
  • Added net.lugdunon.util.VersionNumber to client-side code base.
  • Fixed an issue with shovels not working on flowers and trees.
  • Added net.lugdunon.state.character.name.list.Name to the server-side code base.
  • Added net.lugdunon.state.character.name.list.NamesList to the server-side code base.
  • Fixed candle on reliquary from shifting position on state change.
  • Tuned ruin and cavern placement percentages.
  • Fixed lighting and reliquary placement in ruins instances.
  • Fixed ruins resetting problems.
  • default.compendium.crafting.recipe.easy.mode.enable is now on by default.
  • All trees and flowers ignore ownership when replanted.
  • Default world name changed from "No World Name" to "Shadow of Moritasgus".
  • Fixed initialization error in NonPlayerCharacterManagementCommand.
  • PlaceableItemInstances now evolve properly.
  • DynamicBiome item placement made more random.