Release 0.5.11
From LugdunonWiki
Revision as of 16:31, 15 February 2015 by SuperHawksman (Talk | contribs)
|
0.5.11
15/01/2014
Regretfully this release will require a wipe of the demo servers.
/etc files altered in this update:
- advancements.json
- behaviors.json
- commands.json
- dialogue.json
- craftingDisciplines.json
- items.json
- manifest.json
- mods.json
- npcs.json
- recipes.json
- vendorCache.json
- vendors.json
- instanceTemplates/MINESHAFT/instance.json
- instances/0/instance.json
- instances/0/placeableItemCache.json
- instances/0/terrain.dat
- instanceTemplates/MANOR_BIBRACTE/instance.json
- instanceTemplates/MANOR_BIBRACTE/npcCache.json
- instanceTemplates/MANOR_BIBRACTE/placeableItemCache.json
- instanceTemplates/MANOR_BIBRACTE/terrain.dat
- instanceTemplates/MANOR_BIBRACTE/waypointCache.dat
Release Notes:
- ICurrency.multiply() now rounds up the result when decimal values are concerned.
- All vendor markup calculations are performed after the item's stack size is considered.
- Added a wrench cursor definition.
- Updated the net.lugdunon.states.tiledGame.modes.ConfigureItemMode's cursor to net.lugdunon.input.Cursor.CURSORS.WRENCH.
- Added a new instance template: MANOR_BIBRACTE which now represents the interior of the Aeduan Manor house in Bibracte.
- Updated overworld instance to include additional music tracks in the track rotation.
- Increased the worth of all crafting stations.
- Added net.lugdunon.state.World.getRandom() to the server-side API. This serves as an openly accessible java.util.Random instance, initialized with the world's seed value.
- Added a new quest reward: net.lugdunon.state.quest.condition.completion.reward.CurrencyReward.
- Refactored the loot table code a bit to allow for currency to be included, in addition to items, to the factoring of dropped loot.
- The server will now error and exit gracefully upon startup if a mod fails to load.
- Zombies now drop a small amount of currency when killed.
- All of the farm quests, save 'Homeward Bound' now award currency when completed.
- Added COINS sound asset.
- COINS sound is now played whenever an alter currency command completes.
- Fixed an issue that was causing the effect sound volume to not be applied correctly.
- Fixed an issue with the QuestDialog that was causing the dialog to not display if only dialogue was present.
- Fixed an issue with the QuestDialog that was causing incorrect dialogue instances to be displayed.
- Dialogue responses can now specify a custom icon.
- Dialogue responses are now capable of triggering actions.
- If a dialog response has no conversationId and it is clicked, the dialog will close.
- Added icon to net.lugdunon.state.dialogue.Response. Defaults to SPEECH_BUBBLE.
- Added hasTrigger to net.lugdunon.state.dialogue.Response.
- Default setting for master volume changed to 50%.
- Default setting for ambient volume changed to 75%.
- Default setting for music volume changed to 50%.
- Default setting for effects volume changed to 75%.
- Added net.lugdunon.command.core.trigger.DialogTriggeredActionCommand.
- Added net.lugdunon.math.InvalidCoordinatesException to the server-side code base. Thrown by Location.
- Added net.lugdunon.math.InvalidLocationException to the server-side code base. Thrown by Location.
- Added net.lugdunon.math.Location(String locationString) to the server-side API.
- Added net.lugdunon.math.Location(long instanceId, String waypointOrCoords) to the server-side API.
- Added net.lugdunon.math.Location.getCoords(long instanceId, String coords) to the server-side API.
- Added support for providing multiple speak actions from which one is chosen at random when a SpeakTriggeredAction is fired.
- Added net.lugdunon.state.character.trigger.WarpPlayerTriggeredAction to the server-side code base.
- Added net.lugdunon.state.dialogue.Conversation.getResponse(int i) to the server-side API.
- Added net.lugdunon.state.dialogue.Dialogue.getConversation(String conversationId) to the server-side API.
- If an invalid item def is supplied to a vendor slot, the server will warn and exit.
- Added net.lugdunon.state.waypoint.WaypointCache.hasWaypoint(String waypointId) to the server-side API.
- Added three warp icons.
- Added a small limestone house inventory item, and recipe.
- Added a small wooden house inventory item, and recipe.
- Added a food vendor to the Bibracte market.
- Added a blacksmithing vendor to the Bibracte market.
- Added a town guard at the southern entrance to Bibracte that has some useful information for travelers.
- Actually added content to all the in-game signs.
- Removed all the placed jack-o-lanterns from the default world, as Samon has long passed.
- Fixed two issues with manifest generation that were causing problems with composite classpaths on windows. Thanks Marxell for finding and reporting this!
- Vendor icons are now defined as part of the vendor definition.
- Added net.lugdunon.ui.inventory.slot.InventorySlotInteraction.addInventorySlotInteractionListener(listener) to the client-side API.
- Added net.lugdunon.ui.inventory.slot.InventorySlotInteraction.removeInventorySlotInteractionListener(listener) to the client-side API.
- Added net.lugdunon.ui.inventory.slot.InventorySlotInteraction.callInventorySlotInteractionListener(method,data) to the client-side API.
- Inventory Slot Interaction listeners may subscribe to the following events: inventoryItemSelected, inventoryItemUnselected, and inventoryItemDropped.
- Vendor UI now has a sell drop target that becomes visible when a player selects an inventory item. To sell, simply drop the item on the now visible target element.
- The InventoryDialog now attempts to call the parentShown() function, when the dialog is shown, on the subpanel.
- The InventoryDialog now attempts to call the parentHidden() function, when the dialog is hidden, on the subpanel.
- Added showMissedOnly boolean argument to the net.lugdunon.ui.Console.prototype.log(msg,color,foreign,showMissedOnly) function. If this is set to true, the message will only show up in the live log frame, and not the console.
- Added game.getVendorIconForNPC(npcId) to the client-side API.
- Altered currency events will only show a client message in the live log frame, to prevent cluttering up the console.
- The parameter filter API has been modified to make it more useful. Instead of the process and postProcess methods accepting a CommandRequest object, they now accept a Character and CommandProperties objects instead.
- ConsoleCommand now implements IServerInvokedCommand.
- ConsoleFiredCommand now provides a method for server triggered console commands: handle(CommandProperties props, String consoleMessage). This is useful for allowing NPCs to speak and emote.
- EmoteConsoleCommand now callable on the server side.
- SayConsoleCommand now callable on the server side.
- YellConsoleCommand now callable on the server side.
- Added PurchaseItemFromVendorCommand.
- Added UpdateVendorSlotCommand.
- Added support for VendorInstance objects to CommandProperties.
- Added the NPC trigger API, providing a generic method of triggering various actions by NPCs.
- Added PlayerProximityBehavior. This behavior fires a triggered action when a player ventures into the NPCs trigger radius.
- Added net.lugdunon.state.character.Character.canAssignItem(Item item, int amount) to the server-side API.
- Added net.lugdunon.state.character.Character.canAssignItem(Item item, int amount, boolean b, String object) to the server-side API.
- Added net.lugdunon.state.currency.ICurrency.multiply(float multiplier) to the server-side API.
- Players now inform the server of when they are viewing a vendor's wares.
- Added net.lugdunon.state.vendor.slot.IVendorSlot.handlePurchase(PlayerCharacter pc) to the server-side API.
- Added net.lugdunon.state.vendor.slot.IVendorSlot.setVendorInstance(VendorInstance vendorInstance) to the server-side API.
- Added net.lugdunon.state.vendor.slot.IVendorSlot.getVendorInstance() to the server-side API.
- Added a net.lugdunon.state.vendor.slot.RechargingVendorSlot. Slots of this type become unavailable for a certain time after a purchase.
- Added net.lugdunon.state.State.makeObjectFromJSONDefinition(JSONObject o) to the server-side API.
- Added a vendor for brewing supplies.
- Added a warning if a single server timestep frame takes longer than the maximum frame length.
- Added support to dialogs for vertical tabs.
- Added support for labels attached to dialog tabs.
- Items can now be sold to vendors.
- Added game.vendorMarkup to client-side API.
- Added data property to net.lugdunon.ui.inventory.slot.InventorySlotInteraction.enableDeleteDropTarget(el,data).
- Added merchant and buyback tabs to the vendor inventory dialog subpanel.
- Added net.lugdunon.state.currency.ICurrency.clone() to server-side API.
- Added net.lugdunon.state.vendor.VendoredItem to the server-side code base.
- Added a 'vendored item' pool for player characters. Items sold will remain in the pool until repurchased or rotated out by subsequent transactions.
- Added vendor.markup world.cfg var. Contains the amount to markup items purchased via vendors. Defaults to 1.25 (125%).
- Added vendor.max.buyback world.cfg var. Defines the maximum amount of vendored items that can remain in the vendored item pool. Defaults to 10.
- Added net.lugdunon.state.character.PlayerCharacter.listVendoredItems() to the server-side API.
- Added net.lugdunon.state.character.PlayerCharacter.vendorItem(VendoredItem vi) to the server-side API.
- Added net.lugdunon.state.character.PlayerCharacter.buybackItem(VendoredItem vi) to the server-side API.
- Added net.lugdunon.command.core.vendor.SellItemToVendorCommand.
- Added net.lugdunon.command.core.vendor.UpdateVendoredItemsCommand.
- Added 'minimap' option to the UI Settings to allow for an alternate method for showing and hiding the minimap.
- Added support to net.lugdunon.character.NonPlayerCharacter for displaying vendor status.
- Added net.lugdunon.character.NonPlayerCharacter.VENDOR_ICON to the client-side API.
- Added net.lugdunon.character.NonPlayerCharacter.vendor to the client-side API.
- Vendor instance mappings are now sent on server connect.
- Clicking on a vendor NPC when in range will invoke the vendor UI.
- Added net.lugdunon.ui.inventory.slot.InventorySlot.drawItem(item,context,mode) to the client-side API.
- Added net.lugdunon.ui.inventory.slot.InventorySlot.showHighlight(itemInstance,mode) to the client-side API.
- Added net.lugdunon.ui.inventory.slot.InventorySlot.clearHighlight() to the client-side API.
- Added net.lugdunon.ui.inventory.sub.Vendor InventoryDialog sub panel to the client-side code base.
- Added support for getHeaderText() in InventoryDialog sub panels, to allow the sub panel to direct the dialog header text.
- Added game.getVendorIdForNPC(npcId) to the client-side API.
- Added net.lugdunon.command.core.vendor.GetVendorCommand. Returns the data needed to instantiate the specified net.lugdunon.state.vendor.VendorInstance object.
- Added Vendor support to net.lugdunon.state.mod.Mod.
- Added net.lugdunon.state.vendor.Vendor to the server-side code base.
- Added net.lugdunon.state.vendor.VendorCache to the server-side code base.
- Added net.lugdunon.state.vendor.VendorDefinitions to the server-side code base.
- Added net.lugdunon.state.vendor.VendorInstance to the server-side and client-side code bases.
- Added net.lugdunon.state.vendor.slot.IVendorSlot to the server-side and client-side code bases.
- Added net.lugdunon.state.vendor.slot.SimpleVendorSlot to the server-side and client-side code bases.
- Added a farming vendor.
- Added a trifold coin icon.
- Mods can now contain additional recipes.
- Currency now implemented as a subsystem and subsequently a mod has been created for the default implmentation (gsc, or gold / silver / copper).
- Added net.lugdunon.currency.gsc.action.RedeemCoinActionHandler to client-side code base.
- Added net.lugdunon.currency.gsc.command.RedeemCoinCommand.
- Added coin blank, coin mold, gold, silver, and copper coin items and recipes.
- game.currencyImplementation holds the implementing class for this server's currency. It is initialized during the ConnectToServerCommand.
- Items can now have a 'worth'.
- net.lugdunon.item.renderer.DefaultRenderer now shows the buy and sell values for an item of worth.
- game states can now subscribe to currencyUpdated() events by providing a function implementation.
- Added net.lugdunon.states.ActionBarGameState.currencyUpdated(mode,currentValue,changedAmount) to client-side API.
- Added net.lugdunon.states.ActionBarGameState.addCurrencyUpdateListener(id,listener) to client-side API.
- Added net.lugdunon.states.ActionBarGameState.removeCurrencyUpdateListener(id) to client-side API.
- Added currency display to InventoryDialog.
- InventoryDialog no subscribes to currencyUpdated() events.
- Added very rough worth values to a large number of item. Still needs adjusting though.
- Fixed GeoIP discovery for servers in net.lugdunon.states.list.ServerList.fetchServerGeoData(server).
- Added net.lugdunon.state.currency.ICurrency java and js classes.
- Added net.lugdunon.character.Character.setCurrency(currency) to client-side API.
- Added net.lugdunon.command.core.console.gm.AlterCurrencyCommand (/currency, or /cur), which also implements IServerInvokedCommand for programmatic alteration of a character's funds.
- Added currency support to CommandProperties.
- Added a goldsmithing crafting discipline. Goldsmiths will be able to create ornamentation, jewelry, and mint coins from precious metals and gemstones.
- Added the three appropriate advancements for the goldsmithing crafting discipline.
- Added silver ore nodes, silver ore, silver bars (and crafting recipe).
- Added an anvil item and crafting recipe.
- Changed the blacksmith's anvil crafting recipe to require an anvil and steel hammer.
- Crafting a blacksmith's anvil will require the use of another blacksmith's anvil at several points in the process. This being the case, blacksmiths will need access to a pre-existing blacksmith's anvil to create one of their own.
- Added a goldsmith's crafting bench item, station, and recipe.
- Silver and gold ore nodes will now spawn in mineshafts. Silver with a 5% probability, gold with a 2% probability, and iron now has an 18% probability.
- Added a small foundry (blacksmith's anvil and smelting furnace) to the family farm.