Up to Main Index                           Up to Journal for October, 2017

                    JOURNAL FOR TUESDAY 31ST OCTOBER, 2017
______________________________________________________________________________

SUBJECT: WolfMUD v0.0.8 released
   DATE: Tue 31 Oct 09:41:39 GMT 2017

The next release of WolfMUD, v0.0.8, is now available for download[1].

Most of the work in this release has been focused on the internal workings of
WolfMUD, mostly how Inventory attributes and commands are implemented, rather
than user visible changes. However, a new zone has been included for players
to explore. The zone is still a work in progress as some features are not
implemented yet. This release also contains a fix for a data race caused by
the zone loader.

Main highlights from the release notes:

Added

  - The Reset attribute now has an Abort method to cancel reset events.
  - New player zone, Zinara Caves - was the newbie zone in the Java version.

Changed

  - The exits.Within method now take an additional has.Inventory parameter. See
    fixes below for details.
  - Command handlers are now types instead of simple functions.
  - Implementation of JUNK command cleaned up.
  - The VERSION command now includes the version of the compiler used.
  - The handler for the empty command is now in its own cmd/cmd.go file.
  - The state.handleCommand method has been moved to the handler.go file.
  - The cmd package no longer exports the AddHandler function.
  - If something is in the game it is always somewhere. Therefore, we can drop
    redundant checks of where we are from command processing.
  - Logic for removing events has been dropped from the Inventory attribute and
    moved to the GET and TAKE commands. This means the logic does not have to
    processed every time a Thing is moved - only when the GET or TAKE commands
    are used. It also removes a lot of 'magic' from the Inventory code.
  - Logic for adding events has been dropped from the Inventory attribute and
    moved to the DROP and PUT commands. This means the logic does not have to
    processed every time a Thing is moved - only when the DROP or PUT commands
    are used. It also removes a lot of 'magic' from the Inventory code.
  - The JUNK command no longer has to deal with the weird issue of handling
    copies that are spawned when junking a respawnable Thing.
  - The Inventory.Move method no longer checks if a Thing has a Locate
    attribute. This is now only done when a Thing is first added to an
    Inventory.
  - The Inventory Move method no longer returns a Thing.
  - The player count is now included in the DUMP information for an Inventory.
  - The Inventory Add and Remove methods now add and remove Thing to or from
    the Inventory disabled list. The AddDisabled method has been dropped.
  - Split RecordJar encoder/decode in own sub-packages.

Fixed

  - Made exits.Within work as expected/intended. The first returned slice
    should always be the current location. If the current location had no exits
    the parent could not be determined to find the current location so it was
    not populated in the returned slice. As a result the exits.Within method
    now takes an additional has.Inventory parameter for the current location.
  - The Inventory attribute Copy and Free methods should also process Thing in
    the disabled list.
  - The JUNK command should cancel action events and the $RESET command
    re-enable them.
  - The JUNK command should cancel active Cleanup events.
  - Fix Thing spawn check in GET and TAKE commands which prevented Thing
    without a Reset attribute from being taken, even though on screen messages
    indicate success.
  - Fix data race cause by zone loader not locking Inventory attributes while
    manipulating them.


Time to get out the pumpkin again!

                                       __
                                      ///

                                /  __    __  \
                                   \/ __ \/
                                   _  \/  _
                                   \\/\/\//
                                 \  \/\/\/  /

                               HAPPY  HALLOWEEN

--
Diddymus

  [1] Download area: ../../../downloads/


  Up to Main Index                           Up to Journal for October, 2017