Updates to the Modern Distro 2019-06-19.

Discussion about the development of POL's official distribution scripts.

Moderators: POL Developer, Distro Developer

Post Reply
Distro Developer
Posts: 2825
Joined: Thu Feb 02, 2006 1:41 pm

Updates to the Modern Distro 2019-06-19.

Post by Yukiko »

I haven't posted anything here in a while about the updates to the Modern Distro. Our team has been working on improvements but, when it comes to posting anything about it, I am somewhat lazy. The info about additions, fixes, and updates is available in the GitHub commit history but I realize not everyone is going to read through that. :)
So here now, for your reading pleasure, is a copy of the commit history from May the 4th, 2019 to June the 19th, 2019. The list is newest commits to oldest:

Code: Select all

Added the beginnings of documentation for the Distro in the POL root /docs directory.
Added ThisIsMe's message board package.
Replaced  the ICP "control" package with the one from ThisIsMe's shard. It has some improvements over the original.
Added ThisIsMe's body package under the /pkg/mobiles directory. This package has functions to aid in converting a NPC's graphic to the art tileform and back again.
Moved the sysbook GM command createlibrary to the admin level.
Modified the sysbook system to make it more versatile.
Removed the unicodeutils directory which contained some unneeded unicode files from /pkg/foundations.
Removed two sysbook related commands from :commands:admin package that are duplicated in the sysbook pkg.
Updated the forges pkg with modifications made by ThisIsMe to animate the forges with bellows.
 Added a new command level between admin and test, developer. This was long overdue. The plan is to, over time, migrate commands suitable for the developer from test, and possibly admin, over to the developer command level.
Moved tithinggump.src from :commands:test to :commands:developerl just to have something there.
Fixed bug in :sysbook:start.src in the data file initialization that was causing an error to be written to in-game system books. A space was being written to blank lines at the end of a book's contents.
Modified :sysbook:icp.cfg to list the new commands and updated the description and maintainer info.
Added the read only property to sysbooks and changed the ObjType used to create a sysbook. Normally, a sysbooks graphic gets randomly assigned to spawned sysbooks. This has not changed.Minor formatting of :sysbook:itemdesc.cfg started. I like nicely formatted files.
Some commands added, renamed or deleted from the sysbook package.
Modified :gumps:selectionGump.inc to return an error if the "Okay" button is pressed with no selections made.
 Rewrote the sysbook package to store the serials of the bookshelves that spawn "system books" and the maximum books they can have created in a data file. bookShelfMonitor.src is started
 at server start and, at a predetermined time (RestockDelay in sysbook settings.cfg), cycles through the data file and restocks the shelves.
Fixed a bug in :sysbook:start.src. The programme was not clearing the "line" array before creating a new book entry in the datafile. This caused each newly created book to contain erroneous data from other books. A BIG thanks to ThisIsMe for finding and fixing this issue.
Added a new command: newspawnshelf. This command adds a bookshelf to the spawnedbookshelves datafile.
Added a new sysbook GM command: createlibrary. This will generate, in a targetted container, a complete library of all the in-game books contained in the in the datafile.
Added a new GM command to sysbook pkg, findbook <title>. This will look for a book in the data file with a title that matches the title entered with the command. I hope to expand this command in the future. I'm not sure exactly what features I want to add yet.
Updated .gitignore to ignore *.sublime-project and *.sublime-workspace files.
More reorganization of the Modern Distro.
 Added light.src to /pkg/commands/test for setting a player's light level.
Added AAAATest.src and AATest.src to /pkg/commands/test. These are "throw-away scripts intended for writing test scripts. The upper case As are intentional to keep the commands at the top of the file list so they can be located quickly. Linux users take note of the case.
Added braziers to the lighting package. They are in the Classic Distro but somehow they were overlooked in the Modern Distro.
 Removed Lockpicks from the main itemdesc.cfg file in /config. Apparently I forgot to delete them when I put Lockpicks in the lockpicking skill pkg.
Replaced calls to the attributes "wrapper" functions like GetMana(character) with direct calls to the standard Distro attributes functions such as AP_GetVital(character, VITALID_MANA).
Fixed script references in :boats:itemdesc.cfg. I made a mistake in the formatting previously.
Some clean-up of Distro files and quite a bit of code clean-up.
Moved the npcs pkg from the main/pkg directory to the /pkg/mobiles directory.
Moved vetement.inc from /scripts/include to the /npcs/include folder and changed its name to garment.inc.
Changed all files that reference vetement.inc to reflect the changes.
Moved spellAttack.inc from /scripts/include to the magery pkg include folder and changed all referrences to it accordingly.
Moved randName.inc from /scripts/include to the npcs pkg include folder and changed all referrences to it accordingly.
Moved NPCCast.inc from /scripts/include to the npcs pkg include folder and changed all referrences to it accordingly.
Moved trainSkill.inc from /scripts/include to the npcs pkg include folder and changed all referrences to it accordingly.
Moved skillLists.inc from /scripts/include to the npcs pkg include folder and changed all referrences to it accordingly.
Moved NPCBackpacks.inc from /scripts/include to the npcs pkg include folder and changed all referrences to it accordingly.
Moved spellRestrictions.inc from /scripts/include to the magery pkg include folder and changed all referrences to it accordingly.
Moved weaponInfo.inc from /scripts/include to the commands pkg include folder and changed the only call to it in /commands/gm/info.src accordingly.
Removed newPerformAction.inc from /scripts/include. It appeared to be legacy code to add parameters now included in the Core PerformAction function. Changed scripts that referenced it to use the Core function.
Changed any script references to /scripts/util/key.inc to :keys:key.inc and removed /scripts/util/key.inc.
Changed any script references to /scripts/include/yesNo.inc to use :gumps:yesNoSizable.inc and removed yesNo.inc from the main include folder.
Removed references to /scripts/include/facings.inc from files that did not call any of its functions.
Moved isValidLoc.inc from /scripts/include to the magery pkg include folder and changed all referrences to it accordingly.
Removed /scripts/include/containers.inc as it is duplicated in the containers pkg. Changed all effected files.
Changed all scripts that used the anInsert, onInsert, canRemove, and onRemove scripts in /scripts/control  to use those scripts in the containers pkg and removed those scripts from /scripts/control.
Changed any script references to /scripts/include/equipment.inc to :equipment:equipment.inc and removed /scripts/include/equipment.inc.
Changed boat planks in boats itemdesc.cfg file to directly reference the Use Script, WalkOn Script, and Control Script in the boats pkg.
Moved lockpicks from the main itemdesc.cfg file in /config to the lockpicking skill's itemdesc.cfg file.
Changed itemidentification.src from using skillPoints.inc to the attributes system.
Removed a double include reference to garment.inc from /scripts/ai/escortee.src.
Added a function, IsBitOn, to math.inc and cleaned up a lot of the function comment headers.
Changed some variable names from x to str in string.inc for readability.
Moved pickLock.src to the lockpicking pkg.
Changed SOSMessage.src to use :coords:coords.inc rom the removed /scripts/include/coords.inc.
Fixed the virtue system prayer scripts to use :timedScripts:poisonUtil.inc function TS_CurePoison() in the blessing. It was still using the obsolete poison system.
Removed a comment from :magery:spells.inc. 
Changed some text formatting in :damage/config/settings.cfg.
Fixed the include reference in :discordWebHook/commands/admin/testdiscordbot.src from :discordBot::outbound to :discordWebHook:outbound.
Changed the entire contents of  :combat:equipProps.inc to a comment block because the functions were applying the mods to e.g. lower_reagent_cost_mod. The Core will apply the mods.
Removed some functions from /scripts/include/math.inc due them being made obsolete by those functions having been added to the Core.
Changed some text formatting in :itemUtils:itemProps.inc.
Changed the parameter reference in 2 functions from ts to the_struct in :timeutils:time.inc.
 Added TS_ to function definitions in :timedScripts:targetUtil.inc.
Changed Start_Script call to Run_Script where the end timer script is called.
Changed the setting of a CProp to using the _mod member in :timedScripts/subScripts/fishpies/endSpellDamageBoost.src.
Added comment headers to CheckToolWear() and SetDurability() functions in :itemUtils:toolWear.inc. Also changed the include from :attributes:attributes_ex to:attributes:attributes. Added some return 0 and return 1 where appropriate.
Added VS_ to function names in :virtue:virtue.inc.
Added VS_ to all scripts that called functions within virtue.inc.
Changed the comment header in:attributes:regen.inc for AP_LoadVitalRegenRateProp() to correctly explain that function. It had the wrong comment header.
Fixed some comments in :attributes:skills.inc.
Added comment header and fixed some minor text formatting in :attributes:caps.inc.
Added comment headers to DifficultyTooEasy() and DifficultyTooHard() and also made DifficultyTooHard() return a 1 if too hard and a 0 if false.
Added Spell Damage Increase modifier to :magery:spells.inc.
Changed some text formatting in :magery/config/spells.cfg.
Changed damaging spells to call ApplySpellDamageEX instead of ApplyDamageEX.
Added ACCT_ prefix to functions in :accounts:accounts.inc and in :accounts/www/newAccount.src.
Added ACCT_ prefix to a call to CreateNewAccount() in :accounts/auxsvc/newAccount.src. Also in :accounts
Added ACCT_ prefix to the FindValidPlayer function calls in /scripts/ai/banker.src and bucsBanker.src.
Added additional comments to :utilsdate:utilsStrings.inc.
Added ACCT_ prefix to the function call CreateNewAccount() in :accounts/hook/onLogin.src and in :accounts/commands/admin/newaccount.src.
Added the text colour to the SendSysMessages in :equipment/commands/equip.src.
Removed commented out debug Broadcasts from :damage:damage.inc.
Added the ability tor /pkg/items/food_drink/food/use.src to start a timed script based on the "MagicEffect" custom member on a food item.
Added "MagicEffect" custom member to the fish pies with the appropriate info for /pkg/items/food_drink/food/use.src to start the proper timed scripts.
Added info to :timedScripts:timedScripts.cfg for the Magic Fish Pies.
Removed unnecessary variale assignment from :timedScripts/subscripts/magery/medBoost.src and from :timedScripts/subscripts/magery/endMedBoost.src
Added some scripts, potentially for future use, to  :timedScripts/subscripts/combat/
Added the scripts for Magic Fish Pies to  :timedScripts/subscripts/fishpies/
Changed SysMessage in :magery/spellStarter.src on line 101 by adding color := 33 to the parameters.
Changed some SendSysMessages to SendSysMessageCl in :stealth/stealth.src
Changed some PrintTextAbovePrivate function calls to  PrintTextAbovePrivateCL in the stealth skill script.
Changed the stealth skill script to use the stealth attribute to determine the number of stealth steps.
Changed BOWCRAFTFLETCHING constant reference in /scripts/items/fletch.src to BOWCRAFT_FLETCHING.Connector Packages - from DevGiB
Post Reply