Skip to content

GoMud v0.9.9

Latest

Choose a tag to compare

@Volte6 Volte6 released this 04 Jun 17:13

GoMud v0.9.9 Release Notes

Scripting

  • Added ContainerObject scripting type with methods for inspecting and mutating container contents, lock state, gold, and lifecycle state
  • Added onTryExit room hook to intercept and optionally block player movement before leaving a room (fires for both normal movement and combat flee)
  • Added onTryEnter room hook to intercept and optionally block player movement before entering a destination room
  • Added onTryPurchase item hook to intercept and optionally block a purchase before gold is deducted or stock removed
  • Expanded ActorObject with new methods: GetDescription, GetGold, GetBank, GetWornItems, GetWornItem, FindInBackpack, FindOnBody, IsQuestDone, ClearQuestToken, GetAllSkills, GetSpells, UnLearnSpell, DisableSpell, EnableSpell, GetCooldown, TryCooldown, GetSetting, SetSetting, GetExperience, GetExtraLives, IsInCombat, IsDowned, GetDefense, GetGearValue, GetCarryCapacity, GetZoneVisitProgress, GetAdjectives, HasAdjective, GetActionPoints, GetActionPointsMax, GetHealthAppearance
  • Expanded RoomObject with new methods: GetTitle, SetTitle, GetDescription, SetDescription, GetGold, AddGold, RemoveGold, GetZone, IsPvp, IsBank, GetContainer, SpawnTempContainer, IsCalm, AreMobsAttacking, ArePlayersAttacking, MobCount, PlayerCount, GetVisibility, GetNouns, AddNoun, RemoveNoun, GetSigns, AddSign, HasRecentVisitors; GetContainers now returns []ContainerObject instead of []string
  • Expanded ItemObject with new methods: GetType, GetSubtype, GetValue, GetDescription, GetQuestToken, GetElement, GetBuffIds, GetWornBuffIds, GetStatMods, GetDamageReduction, GetDamage, GetBreakChance, GetKeyLockId, IsCursed, HasUses, IsWearable, IsWeapon
  • Expanded PetObject with new methods: GetItems, FindItem, StoreItem, RemoveItem, GetBuffIds
  • Added actor.PlaySound and actor.PlayMusic scripting methods for triggering audio from mob and room scripts
  • Added room.PlaySound scripting method for broadcasting a sound to all players in a room
  • Applied scripting performance optimizations

Admin Panel

  • Added instance-level script editing for individual mob instances
  • Added syntax highlighting for engine functions in the script editor
  • Added a Coding Reference docs page (/admin/docs-coding) documenting engine extension hooks with field tables and examples
  • Added a YAML viewer for various admin sections
  • Added mob rankings page showing ranked mob statistics
  • Added audio admin page with full create, edit, and delete support for sound identifiers
  • Added audio file browser to the sound editor for selecting files from disk
  • Added inline audio playback preview with a progress bar in the sound editor
  • Added unassigned audio files callout when creating a new sound, with a one-click assign button
  • Added tag support for sound entries to label where sounds are used
  • Added POST /admin/api/v1/audio and DELETE /admin/api/v1/audio/{identifier} API endpoints
  • Added PATCH endpoint for editing individual attack messages in place
  • Redesigned the conversations admin turn editor with phase cards grouping simultaneous commands
  • Changed various admin dropdowns to toggle switches for improved usability
  • Fixed UI display for equipment slots

Gameplay

  • Added permanently bound item flag (CanNeverBeRemoved) that prevents an equipped item from being removed by any in-game action including remove, slot replacement, disarm, and death
  • Bound items are excluded from corpse drops and loot rolls on death and survive permadeath resets
  • The disarm brawling skill refuses to disarm a bound weapon
  • Admin mob and user editors now show a lock icon per equipment slot to toggle the bound state, with visual indicators and tooltips

Web Client

  • Added JSON import and export for web client settings
  • Added a new XP prompt display option
  • Improved party member display on the map
  • Fixed map rendering issues including scroll behavior

Public Site

  • Added a theme system with 20 built-in color themes selectable from a settings modal; choice is persisted in localStorage
  • Redesigned the online player list with theme-aware colors, an AFK badge, and a connected player count
  • Redesigned the server config page with a two-column grid layout and color-coded values
  • Updated background image and site icons

Infrastructure

  • Added experimental auto-install scripts for simplified server setup
  • Added AWS hosting documentation
  • Fixed concurrency issues identified during load testing
  • Improved user index rebuild performance
  • Added explicit YAML struct tags to Character and Mob structs for deterministic serialization

Documentation

  • Expanded scripting reference documentation for all new object methods and hooks
  • Reorganized scripting admin docs to place object references under their own navigation section
  • Updated all scripting page "See Also" links to point to the correct reference anchors
  • Added admin coding reference page for engine hook extension points