Release 0.6.4

From LugdunonWiki
Revision as of 13:47, 15 February 2015 by SuperHawksman (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Engine Content: This information applies to the engine and therefore to all servers.

0.6.4


30/05/2014


mods altered in this update:

  • net.lugdunon.world.defaults.audio
  • net.lugdunon.world.defaults.compendium
  • net.lugdunon.world.clover.sprite
  • net.lugdunon.world.clover.tui
  • net.lugdunon.world.tupelo.tui

server mods altered in this update:

  • net.lugdunon.server.worldgen.defaults

/etc files altered in this update:

  • instances/0/placeableItemCache.json
  • instances/0/terrain.dat
  • instanceTemplates/LYCEUM_SHINING_HEART/instance.json
  • instanceTemplates/LYCEUM_SHINING_HEART/npcCache.json
  • instanceTemplates/LYCEUM_SHINING_HEART/placeableItemCache.json
  • instanceTemplates/LYCEUM_SHINING_HEART/terrain.dat
  • instanceTemplates/LYCEUM_SHINING_HEART/waypointCache.json
  • instanceTemplates/RUINS/placeableItemCache.json
  • behaviors.json
  • behaviorStates.json
  • items.json
  • mods.json
  • npcs.json
  • quests.json



Release Notes:

  • Fixed an issue that was causing erroneous logging during the update process.
  • Fixed an issue that was causing quest CountableItemBasedProgress implementors with a specified itemType from properly registering.
  • Fixed another issue that was causing a crash on quit with MacOS.
  • Renamed the primary sprite set to 'Clover' net.lugdunon.world.clover.sprite.
  • Renamed the primary tileset / ui / icons art set to 'Clover' net.lugdunon.world.clover.tui.
  • Added the beginnings of a second tileset / ui / icons art set named Tupelo, featuring the work of Becca Bair: net.lugdunon.world.tupelo.tui.
  • Added net.lugdunon.effects.particle.ParticleUtils to the client-side API.
  • Added a bat sprite and npc def.
  • Added a snake sprite and npc def.
  • Added a rat sprite and npc def.
  • Added a fang attack sprite.
  • Added a dozen new quests.
  • Added a new farm.
  • Added several new NPCs.
  • Added a path to the mine.
  • Moved the stone node that was blocking access to the mine path bridge down a tile.
  • Added a wolf spawn on the western road.
  • Added a 'mage' school named the 'Brotherhood of the Shining Heart'.
  • Increased the durability of all tools and weapons by 100%, with the exception of the stone grade, which was increased by 150%.
  • Reduced the stamina required for all tools and weapons by half.
  • Cross-origin images are now initialized properly in order to not 'taint' any canvases they drawn onto.
  • Fixed an issue that was causing the standalone client settings to fail to properly initialize if the codehelper APIs are unavailable. game.client.getPublicIp() will now return "Service Unavailable" in that case.
  • Fixed an issue that was causing unnecessary escapes of forward slashes in JSON strings.
  • Updated all mod.json artifact URLs to not require forward slash escapes.
  • Progress and wait dialogs now block all input and UI elements when active.
  • Player triggers for placeables now supports npc-specific triggers in addition to player character triggers.
  • Player triggers for placeables now support two modes: stop on tile, and move through tile.
  • Removed need to mirror world mod jars into each world directory.
  • Servers and standalone clients now maintain a single local mod cache shared for all worlds.
  • Added support for subsystems that don't require an implementation class.
  • Added support for subsystems that don't require any persistent storage.
  • Added ICONS subsystem.
  • Added TILESET subsystem.
  • Added UI subsystem.
  • Removed the icon.config server config property.
  • Removed the tileset.config server config property.
  • Removed the ui.config server config property.
  • Added support for mod repository listings. Mod repositories can now enumerate their curated mods (both server and world).
  • Added a UI to the standalone client for users to manage and get info about their mod repositories.
  • Added a UI to the standalone client for users to install new server mods.
  • Added a UI to the standalone client for users to install new world mods.
  • Added /getAvailableServerConfigProps/ to the standalone client REST API.
  • Added /getAvailableWorldConfigProps/ to the standalone client REST API.
  • Added /getRegisteredRepositories/ to the standalone client REST API.
  • Added /addRepository/ to the standalone client REST API.
  • Added /deleteRepository/ to the standalone client REST API.
  • Added /installMod/ to the standalone client REST API.
  • Added /installServerMod/ to the standalone client REST API.
  • Added /removeMod/ to the standalone client REST API.
  • Added /removeServerMod/ to the standalone client REST API.
  • Added /getServerMods/ to the standalone client REST API.
  • Added /getWorldMods/ to the standalone client REST API.
  • Added /toggleServerMod/ to the standalone client REST API.
  • Added /toggleWorldMod/ to the standalone client REST API.
  • Added net.lugdunon.client.runner.InstallModRunner to the standalone client-side code base.
  • Added net.lugdunon.client.runner.InstallServerModRunner to the standalone client-side code base.
  • Added net.lugdunon.client.runner.RegisterRepositoryRunner to the standalone client-side code base.
  • Added net.lugdunon.client.runner.RegisteredRepositoryListingRunner to the standalone client-side code base.
  • Added net.lugdunon.client.util.InstallMod to the standalone client-side code base.
  • Added net.lugdunon.client.util.InstallServerMod to the standalone client-side code base.
  • Added net.lugdunon.client.util.RegisterRepository to the standalone client-side code base.
  • Added net.lugdunon.client.util.RegisteredRepositoryLister to the standalone client-side code base.
  • Added net.lugdunon.client.Client.setLocalServerMods(JSONArray localServerMods) to the standalone client-side API.
  • Added net.lugdunon.client.Client.setLocalMods(JSONArray localMods) to the standalone client-side API.
  • Added net.lugdunon.client.Client.getEnabledServerMods() to the standalone client-side API.
  • Added net.lugdunon.client.Client.getLocalServerMods() to the standalone client-side API.
  • Added net.lugdunon.client.Client.getLocalMods() to the standalone client-side API.
  • Added net.lugdunon.client.Client.toggleServerMod(String mod) to the standalone client-side API.
  • Added net.lugdunon.client.Client.toggleWorldMod(String mod, String world) to the standalone client-side API.
  • Added net.lugdunon.client.Client.getModUsageDataForWorld(final String world) to the standalone client-side API.
  • Added net.lugdunon.client.Client.getModUsageData() to the standalone client-side API.
  • Added net.lugdunon.task.LDRTask to the ant build code base. This task will generate a repository manifest file (repository.ldr).
  • Added net.lugdunon.state.character.NonPlayerCharacter.setLocation(Point location) to the server-side API.
  • Added net.lugdunon.state.character.PlayerCharacter.setLocation(Point location) to the server-side API.
  • Added net.lugdunon.state.item.trigger.player.IPlayerTrigger.playerTriggeredOnStop(PlaceableItemInstance pii, PlayerCharacter pc) to the server-side API.
  • Added net.lugdunon.state.item.trigger.player.IPlayerTrigger.playerTriggeredOnTileEnter(PlaceableItemInstance pii, PlayerCharacter pc) to the server-side API.
  • Added net.lugdunon.state.item.trigger.player.IPlayerTrigger.npcTriggeredOnStop(PlaceableItemInstance pii, NonPlayerCharacter npc) to the server-side API.
  • Added net.lugdunon.state.item.trigger.player.IPlayerTrigger.npcTriggeredOnTileEnter(PlaceableItemInstance pii, NonPlayerCharacter npc) to the server-side API.
  • Removed net.lugdunon.state.item.trigger.player.IPlayerTrigger.playerTriggered(PlaceableItemInstance pii) from the server-side API.
  • Added net.lugdunon.state.subsystem.Subsystems.getTileset() to the server-side API.
  • Added net.lugdunon.state.subsystem.Subsystems.getIcons() to the server-side API.
  • Added net.lugdunon.state.subsystem.Subsystems.getUI() to the server-side API.
  • Added net.lugdunon.state.Manifest.setManifestEntry(String type, String key, String value) to the server-side API.
  • Added net.lugdunon.state.State.getServerModPath() to the server-side API.
  • Added net.lugdunon.state.State.getWorldModPath() to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.listLocalServerMods() to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.getURLConnection(String url) to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.fetchRepositoryManifest(String repoUrl) to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.installMod(String mod, String repoUrl) to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.installServerMod(String mod, String repoUrl) to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.removeMod(String mod) to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.removeServerMod(String mod) to the server-side API.
  • Added net.lugdunon.util.ArtifactUpdater.listLocalMods() to the server-side API.
  • Added net.lugdunon.util.FileUtils.fixJSONContent(String content) to the server-side API. This method strips single and multi-line comments from a string and various other transformations before parsing as json.
  • Added net.lugdunon.world.instance.Instance.NULL_INSTANCE_ID to the server-side API.
  • Added net.lugdunon.world.terrain.Chunk.getPlayerTriggerablePlaceableRefs() to the server-side API.
  • Removed net.lugdunon.world.terrain.Chunk.addPlaceableRef(long pRef) from the server-side API.
  • Added net.lugdunon.world.terrain.Chunk.addPlaceableRef(PlaceableItemInstance pii) to the server-side API.
  • Made net.lugdunon.Server.enumerateRegisteredProperties() public in the server-side API.
  • Added net.lugdunon.server.mod.ServerModCache.getLoadedServerMods() to the server-side API.
  • Removed net.lugdunon.server.worldgen.IWorldGen.getModPath() from the server-side API.
  • Added net.lugdunon.state.subsystem.tui.TUISubsystem to the server-side code base.
  • net.lugdunon.ui.table.cell.content.IconActionCellRenderer now supports a renderer for labels.
  • net.lugdunon.ui.table.cell.content.InlineEditorContentCellRenderer now supports an editable text field + select mode in addition to the default text field mode.
  • Added support for cell-level tooltips to the table class.
  • Added support for cell-level hover labels to the table class.
  • Added an .ellipsis css rule to allow for easy flagging of elements that should show an ellipsis in the event of a text overflow.
  • Added a .stroked css rule to allow for easy flagging of elements that should display text with a black stroke.
  • game.showTooltip() now properly handles empty content.
  • Added game.getGameScreenStateURL(). This returns the current image data url of the game's render state.
  • Added keybinds to hook into the new screenshot APIs (defaults are F1, F2, F3 for the three flavors: undecorated, decorated, and full).
  • Added net.lugdunon.input.keybind.screenshot.TakeDecoratedScreenshotKeybinding to the client-side code base.
  • Added net.lugdunon.input.keybind.screenshot.TakeFullScreenshotKeybinding to the client-side code base.
  • Added net.lugdunon.input.keybind.screenshot.TakeUndecoratedScreenshotKeybinding to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.StandaloneClientSetting.handleKeySelectMode(e) to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.StandaloneClientSetting.handleKeySelectPopulation(select) to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.StandaloneClientSetting.postGetServerMods(data) to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.StandaloneClientSetting.handleModToggle(row) to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.StandaloneClientSetting.renderModToggle(row) to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.StandaloneClientSetting.renderModToggleLabel(row) to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.ServerModsSetting to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.RepositoriesSetting to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.repository.RepositoryManagementDialog to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.repository.AvailableServerModsTooltipRenderer to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.repository.AvailableModsTooltipRenderer to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.repository.sections.ServerModsSection to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.repository.sections.Section to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.repository.sections.ModsSection to the client-side code base.
  • Added net.lugdunon.ui.settingsMenu.settings.standalone.repository.sections.DetailsSection to the client-side code base.
  • Added net.lugdunon.states.tiledGame.TiledGame.takeScreenshot(screenshotMode) to the client-side API.
  • Added net.lugdunon.states.tiledGame.TiledGame.dumpScreenshot() to the client-side API.
  • Added net.lugdunon.states.tiledGame.TiledGame.SCREENSHOT_MODE_NONE to the client-side API.
  • Added net.lugdunon.states.tiledGame.TiledGame.SCREENSHOT_MODE_NO_DECORATION to the client-side API.
  • Added net.lugdunon.states.tiledGame.TiledGame.SCREENSHOT_MODE_DECORATION to the client-side API.
  • Added net.lugdunon.states.tiledGame.TiledGame.SCREENSHOT_MODE_ALL to the client-side API.
  • Added net.lugdunon.states.worldGen.WorldGenState.renderEditModsUI() to the client-side API.
  • Added net.lugdunon.states.worldGen.WorldGenState.postGetWorldMods(data) to the client-side API.
  • Added net.lugdunon.ui.table.Table.addRow(row) to the client-side API.
  • Added net.lugdunon.server.worldgen.defaults.DefaultWorldGen.handleKeySelectMode(e) to the client-side API.
  • Added net.lugdunon.server.worldgen.defaults.DefaultWorldGen.handleKeySelectPopulation(select) to the client-side API.
  • Added the ability for players to enable / disable server mods using the standalone server settings UI.
  • Added the ability for players to enable / disable world mods using the world configuration UI.
  • Fixed an issue with the minimap not tracking correctly when near a map boundary.
  • Fixed an issue that was causing the light map to not be applied correctly on the minimap.
  • Fixed an issue with the quest editor not properly resetting its modified flag when a quest is saved.
  • Fixed an issue with the quest editor not properly reloading the current quest when saved.
  • Fixed an issue with the quest editor not exiting the wait state when saving a new quest.
  • Fixed an issue with countable base quests not properly persisting their completion state.
  • Fixed an issue that was preventing the item reward completion condition UI from rendering.
  • Fixed an issue that was preventing the placeable removal abandon condition UI from rendering.
  • Fixed an issue that was causing a server-side error when occasionally removing metrics listeners.
  • Added support for a player trigger handler attached to a placeable item. The current instance triggers have been updated to use this new feature.
  • Added net.lugdunon.state.item.trigger.player.IPlayerTrigger to the server-side code base.
  • Added net.lugdunon.state.item.trigger.player.InstanceTransistionPlayerTrigger to the server-side code base.
  • Added net.lugdunon.state.item.trigger.player.LinkToStatePlayerTrigger to the server-side code base.
  • Added net.lugdunon.state.item.Item.isPlayerTriggered() to the server-side code base.
  • Added net.lugdunon.state.item.Item.getPlayerTrigger() to the server-side code base.
  • Removed net.lugdunon.state.item.PlaceableItemInstance.isInstanceTrigger() from the server-side code base.
  • Removed net.lugdunon.state.item.PlaceableItemInstance.getInstanceTriggerDef() from the server-side code base.
  • Added net.lugdunon.state.character.behavior.BaseBehavior.reinitStates() to the server-side API.
  • Added net.lugdunon.state.character.behavior.core.CycleBehavior to the server-side code base.
  • Added net.lugdunon.state.character.behavior.core.FaceDirectionBehavior to the server-side code base.
  • Added net.lugdunon.state.character.behavior.core.PerformActionBehavior to the server-side code base.
  • Added anvil strike sound effect to the net.lugdunon.world.defaults.audio mod.
  • Added stone grating sound effect to the net.lugdunon.world.defaults.audio mod.
  • Added coal tending sound effect to the net.lugdunon.world.defaults.audio mod.
  • Added a new NPC at the family farm named Maros, who tends the forge and may have some new quests for players.
  • Added a new farm just to the north of the family farm.
  • Added the Lyceum of The Shining Heart at the southern outskirts of Bibracte. Possible quests and revelations of the ancient mysteries await adventurers there.
  • Added a new item type that allows GMs to create transitions between two points in the same instance. This will allow players to travel between floors in a house, or to descend deeper into a dungeon's depths.
  • Fixed an issue that was allowing multiple shutdown threads to exist simultaneously. This is likely the issue that was causing the standalone client world corruption.
  • Added the first pass at a particle system implementation.
  • Added net.lugdunon.effects.particle.Emitter to the client-side code base.
  • Added net.lugdunon.effects.particle.Particle to the client-side code base.
  • Added net.lugdunon.ParticleTest to the client-side code base.
  • Added net.lugdunon.effects.particle.images.sphere.png to the client-side code base.
  • Added particles.html to the client-side code base.
  • Implemented a process runner API for spawned-process management and interaction in the standalone client code base.
  • Added standaloneServer.props file. This replaces standaloneServer.add and allow for more properties than just the current server address to be noted.
  • Added net.lugdunon.client.Client.startRunner(String runnerId, Runner runner) to the standalone client API.
  • Added net.lugdunon.client.Client.clearRunner(String runnerId) to the standalone client API.
  • Added net.lugdunon.client.Client.getRunner(String runnerId) to the standalone client API.
  • Added net.lugdunon.client.Client.getStandaloneServerProperty(String key) to the standalone client API.
  • Added net.lugdunon.client.Client.setStandaloneServerProperty(String key, Object value) to the standalone client API.
  • Added net.lugdunon.client.Client.saveStandaloneServerProperties() to the standalone client API.
  • Added net.lugdunon.client.runner.Runner to the standalone client code base.
  • Added net.lugdunon.client.runner.ClientUpdaterRunner to the standalone client code base.
  • Added net.lugdunon.client.runner.ServerRunner to the standalone client code base.
  • Added net.lugdunon.client.runner.WorldGeneratorRunner to the standalone client code base.
  • net.lugdunon.world.defaults.compendium.consoleParameterFilters.CodexRESTHandler now contains a boolean value indicating whether or not a parameter filter has a client-side implementation.
  • net.lugdunon.world.defaults.compendium.consoleParameterFilters.Codex now indicates if a parameter filter has a client-side implementation.
  • Added net.lugdunon.Game.INFINITE_COMPLETE_THRESHOLD to the server-side API.
  • Added net.lugdunon.Game.isShutdownInProgress() to the server-side API.
  • net.lugdunon.command.core.ConnectToServerCommand now has an infinite command completion threshold, thereby indicating that it will block indefinitely until completed.
  • net.lugdunon.command.core.console.gm.SaveCommand now has an infinite command completion threshold, thereby indicating that it will block indefinitely until completed.
  • net.lugdunon.command.core.console.gm.ShutdownCommand now has an infinite command completion threshold, thereby indicating that it will block indefinitely until completed.
  • Moved standalone client automatic shutdown when the server super user disconnects from net.lugdunon.command.core.console.QuitCommand to net.lugdunon.state.State.invalidateAccount(Account a).
  • Fixed an issue with net.lugdunon.state.quest.condition.completion.reward.ItemReward that was causing issues with saving quest data.
  • Fixed an issue that was causing RECIPE:CRAFTING.RECIPE.ID to appear in several quest summaries. Read that as 'I totally forgot to implement the following feature for 0.6.3'.
  • Parameter filter support extended for use in text block on the client-side.
  • Added game.filterText(text,actor,props) to client-side API.
  • Added net.lugdunon.command.core.console.parameters.IParameterFilter to the client-side code base.
  • Added net.lugdunon.command.core.console.parameters.IParameterFilter.hasClientSide() to the server-side API.
  • Added net.lugdunon.command.Interpreter.listClientSideParameterFilters() to the server-side API.
  • Fixed match for net.lugdunon.world.defaults.compendium.CraftingRecipeLinkParameterFilter to disregard a trailing '.'.
  • Fixed match for net.lugdunon.world.defaults.compendium.InstancedPlayerItemLinkParameterFilter to disregard a trailing '.'.
  • Fixed match for net.lugdunon.world.defaults.compendium.ModifierLinkParameterFilter to disregard a trailing '.'.
  • Fixed match for net.lugdunon.world.defaults.compendium.SpellLinkParameterFilter to disregard a trailing '.'.
  • Added net.lugdunon.world.defaults.compendium.CraftingRecipeLinkParameterFilter to the client-side code base.
  • Added net.lugdunon.world.defaults.compendium.InstancedPlayerItemLinkParameterFilter to the client-side code base.
  • Added net.lugdunon.world.defaults.compendium.ModifierLinkParameterFilter to the client-side code base.
  • Added net.lugdunon.world.defaults.compendium.SpellLinkParameterFilter to the client-side code base.