Up to Main Index Up to Journal for April, 2022 JOURNAL FOR SUNDAY 24TH APRIL, 2022 ______________________________________________________________________________ SUBJECT: WolfMUD v0.0.19 released DATE: Sun 24 Apr 20:20:15 BST 2022 The next release of WolfMUD, v0.0.19, is now available for download[1]. WolfMUD v0.0.18 was released 11th April 2021, a little over a year ago. This release is the accumulation of a year’s work to overhaul the entire WolfMUD codebase. Apart from a tidy-up of the download descriptions and release notes, this is the same release as beta6. With one exception, the AArch64/ARM64 Linux build has now been tested on actual hardware[2]. In the release notes I have tried to cover everything that is different in the overhaul, and any actions to be taken when upgrading. Not an easy task when over 90% of the code is new. I’d like to thank everyone who gave their time testing the beta releases and providing valuable feedback. I’d also like to thank everyone that convinced me “the experiment” was a good idea, and that the overhaul was long overdue. Work on v0.0.20 and the new combat system has already begun… Main highlights from the release notes: WolfMUD v0.0.19 is a 90%+ rewrite of WolfMUD v0.0.18. Compatibility with existing zone files and player files has been maintained. While these release notes try to highlight differences between the two versions, see the release notes for the v0.0.19 betas below for more details. Every effort has been made to implement the features and functionality that was previously available in v0.0.18. These release notes serve to document any differences and additions in the v0.0.19 release. The only change between v0.0.19 and v0.0.19-beta.6 are the release notes and a tidy-up/clarafication of the build descriptions. Upgrading Notes - In data/config.wrj, Inventory.CrowdSize is now the minimum number of players to be considered a crowd. Before it was the number of players before they where considered a crowd. The default value has changed from 10 to 11 - 11 or more players is a crowd. See docs/configuration-file.txt for more details. - In data/config.wrj, a separate login timeout has been added: Login.Timeout with a default value of 1m - 1 minute. See docs/configuration-file.txt for more details. - Per IP address connection quotas have been simplified. In data/config.wrj Quota.Timeout and Quota.Stats are no longer used. A new Quota.Slots configuration value has been added, which defaults to 0. Quotas now allow up to Quota.Slots connections per Quota.Window per IP address. There are no quote statistics, however there is a new Debug.Quota flag which provides some additional information. See docs/configuration-file.txt for more details. - In zone and player files the Health field attributes have changed from: [Old format] Health: FREQUENCY→ CURRENT→ MAXIMUM→ REGENERATES→ [New format] Health: AFTER→ JITTER→ CURRENT→ MAXIMUM→ RESTORE→ FREQUENCY has been replaced with AFTER+JITTER to bring Health in line with other events. REGENERATES has been replaced with RESTORE as it is more generic and can be reused on other similar fields. Existing player files will be upgraded. See docs/zone-files.txt for more details. Zone files should be reviewed and mobiles/NPCs updated as necessary. - Players now have a new Permissions field. This can contain the value 'ADMIN' which grants access to all admin commands. Alternatively, access can be granted to specific admin commands only by listing the specific commands. For example: Permissions: ADMIN Permissions: #DUMP #GOTO Per player permissions replace the Debug.AllowDump and Debug.AllowDebug settings in data/config.wrj, which are removed. See the ADMINISTRATORS section in docs/running-the-server.txt for more details. Added - Linux ARM64 is now officially supported with pre-built downloads available. - The matcher now understands 'SELF'. For example: EXAMINE SELF, HIT SELF. - The matcher now understands 'MY' to refer to items in your own inventory. For example: EXAMINE MY SWORD, PUT APPLE MY BAG. - The matcher now understands 'ANY' to refer to a random item when there are multiple matches. For example: GET ANY APPLE, WIELD ANY SWORD. - Duplicate messages sent to players are de-spammed so that fewer duplicates will be seen. - Imps and fungus slugs have been added to zinara_caves.wrj, the "Caves near Zinara" zone. - There are now corpses when the HIT command is used to kill something. - A new /WHOAMI command has been added in case you forget which character is logged in on which terminal. - Zone and player files are now more Unicode friendly, including REF/@refs. - Players now have a command history for up to thee previous three commands. The history can be shown using /HISTORY or the abbreviation '/!'. Commands can be replayed from the history using '!', '!!' and '!!!' respectively. Changed - The output for the #DUMP/#LDUMP commands have been updated to reflect how items are stored internally. There is no Unicode #UDUMP variant yet. - The #DUMP/#LDUMP commands can accept '@' to dump everything in the current location - mnemonic is where you are 'at'. For example: #DUMP @ - New server statistics: A[n] O[n ±n] T[n ±n] E[n ±n] P[n max] A[ n] - runtime allocations since last collection O[n ±n] - runtime objects / change since last collection T[n ±n] - Thing in the world / change since last collection E[n ±n] - in-flight active events / change since last collection P[n max] - current number of players / maximum number of players - In zone and player files the leading '+' for bound qualifiers only may be omitted. For example, SHORT:SWORD and +SHORT:SWORD are equivalent - but the latter is preferred for consistency with non-bound qualifiers. - Player names are now restricted to 15 characters during account creation. - A mobile/NPC is now defined as anything that can self heal. Existing zone files should be checked to make sure mobiles/NPCs, that are intended to be mobiles/NPCs, have a Health record with at least MAXIMUM, RESTORE and AFTER/JITTER attributes set. - The /PROMPT command now has five styles: NONE CURSOR > BRIEF H:30> SHORT H:25/30> LONG Health: 25/30> The prompt does not currently colour current health based on percentage of maximum health yet. - The server no longer logs client connections and disconnections, unless client IP addresses are being logged - Server.LogClient is set true. The server will log player logins and players quitting: [#UID-F] Login by: 16809599915800bb7a67d231daef3b9f [#UID-F] Quitting: 16809599915800bb7a67d231daef3b9f - The stock zones in data/zones have had many improvements and bug fixes. -- Diddymus [1] Download area: ../../../downloads/ [2] I finally got my hands on an 8Gb Raspberry Pi 4 :) Up to Main Index Up to Journal for April, 2022