Programming Game
- Game
- Resources
- Docs
Updates to trade mechanics, lots of bug fixes
August 16, 2025 - v0.3.0
Lots of client updates improving the api for trading and interacting with storage. New trade recipes, lots of bug fixes, some server performance improvements.
New Features
- Added crafting recipes for
copperSword
,copperGreatSword
, andcopperShield
- The trade object defined on players now automatically updates when they can no longer fulfill the trade.
- This should trigger whenever you
drop
,buy
,sell
,respawn
,use
,eat
,deposit
,equip
, orcraft
/setSpellStones
.
- This should trigger whenever you
Miscellaneous
- Buying, selling, setting trade, and interacting with storage now consume your global cooldown.
- To prevent abuse, only the players calling
.buy
and.sell
will incur a global cooldown. Players buying/selling with other players via previoussetTrade
calls will not incur a global cooldown.
- To prevent abuse, only the players calling
- Eating now consumes the global cooldown, this happens even if you fail to eat.
- Reduce trade (
buy
,sell
,deposit
,withdraw
) range from 4 meters to 2 meters. - Reduce
acceptQuest
andturnInQuest
range from 4 meters to 2 meters. - Imps now drop
tatteredCottonCloth
instead oftatteredLinenCloth
. - Marked some internal testing items as deprecated, these will never be obtainable within the game.
- Minor server performance improvements.
Breaking Changes
- Updated
buy
andsell
client api to accept a map of items that you want to buy/sell instead of the requiring anuntil
field.- You can now buy (or sell) as many items as you want in a single transaction.
SellIntent
andBuyIntent
are also deprecated in favor ofSellItemsIntent
andBuyItemsIntent
use
no longer takes anuntil
parameter, the client will now keep track of this and send it to the server as needed.eat
no longer takes an until parameter, the client will now keep track of this and send it to the server as needed.unit.trades.offers
andunit.trades.wants
are now deprecated in favor ofunit.trades.buying
andunit.trades.selling
- The previous fields only allowed for prices, the new fields allow for both quantity and price.
- The client/server api has been updated, older clients will default to a quantity of 1 for both buying and selling.
trades.offers
andtrades.wants
will remain in the game for backwards compatibility reasons, but will be removed in the future.
cast
,use
,attack
, anduseWeaponSkill
now takeUnit
based targets instead ofid
based targets.drop
now takes an object{ item, amount }
, previously tookitem, until
.
Bug Fixes
- Fixed an issue with item duplication related to buying from other players.
- Fixed an issue where vendors would sell items for their
sellToVendor
price. - Fixed an issue where buy/sell would move a player closer to their target even if outside of vision range.
- Fixed a bug where client would update inventory incorrectly when un-equipping items.
- Fixed a bug where clients would misattribute
updatedTrade
events to themselves instead of the acting unit. - Fixed bugs related to quests misattributing events to the current player instead of the acting unit.
- Fixed a bug where you could drop more items than you're holding.
- Fixed a UI issue with turn in steps not rendering as completed.