Back to Recent Changes
Scripting changes for the WoD

Since there seems to be a lot of people using the WoD scripts as a basis of their own shard, I guess I should try to keep a lot of all the scripting changes that happen so that those shards can stay on top. I'll try to keep this file up-to-date locally (no promises, though), but probably won't refresh it on the webserver very often (probably only when I update the WoD scripts)

  • Adjusted :magic_dealer:take_item to not accept .own'ed items
  • Added new include file, dolongtermmods.inc. This is similar to dotempmods, but works on statmods that persist across server restarts, but don't need to store their old values. Currently, it supports changes to the maximum values of stats
  • Changed :character:regen systemhook to read modifiers to maximum values of stats from spells and effects
  • Added a new command for Offline player clone AI: 'please go away' causes them to 'cast' the Recall spell and disappear
  • Added 2 new functions to clock.inc: GetTimeDesc and GetShortTimeDesc, which accept seconds and return a string describing the length of time
  • Added a new package: /pkg/world/world_items, which will be for scripts of world-based decorative items
  • Added a new objtype in the world_items package: 0x70b5, which is an item that modifies maxHP
  • Moved the spellbook to the magicitems package itemdesc.cfg file (was in the main itemdesc.cfg file)
  • Added/fixed oninsert and caninsert scripts for spellbook so that you can only put one copy of a particular scroll in a spellbook
  • Added .status command which displays information about the status of players
  • Added a new .inc file, wodinclude.inc, located in /scripts/include. This include file will contain many extremely basic functions that will be used in many scripts
  • Moved IsAGM and SendGMErrorMessage functions from myutil.inc to wodinc.inc
  • Moved Dismount function from utility.inc to wodinc.inc
  • Renamed towns.inc to locations.inc
  • Moved GetDirection funtion from utility.inc to locations.inc
  • Removed the unused weather.inc from /scripts/include (there's still a weather.inc in the weather package)
  • Merged makemenu.inc into crafting.inc
  • Merged myutil.inc into utility.inc
  • Moved gumputil.inc from /scripts/include to the book package (book.src is the only file that uses it anyway)
  • Moved all damage type definitions from magic.inc to wodinc.inc
  • Removed DoSpellDamage function from magic.inc
  • Added DoDamageByType function wo wodinc.inc. This will now be the main function for doing damage, which will make it easy to hook into times when damage is done to mobiles
  • Moved and renamed ":magiceffects:domagicdamage" script to ":combat:dodamage"
  • Removed AddToHitList function from npc_util.inc. This functionallity will no longer be handled by NPC AI (which should be much more accurate)
  • Renamed yesno.inc to gumps.inc
  • Moved SendStringAsHtmlWindow function from myutil.inc to gumps.inc
  • Wrote a new help.src help system that's quite a bit more attractive than the old system
  • Rewrote Snowstorm to fix some crash problems that some players had with it
  • Changed the type of damage that a number of sources do to Fire or Cold based (Dragon breath, for example)
  • Fixed a whole lot of scripts to use the new DoDamage script instead of doing the damage themselves
  • Changes the way that the automatic restart script counts time: makes the server uptime counter more accurate
  • Changed the way that virtue-loss over time functions (located in logon.src)

Script release

Everything above are changes that were included in the last script release (04/21/2003). Everything below here are changes made since then and aren't included in the script release available in the files section

  • Removed some debug messages from autoheal
  • Put in some more checks in the combat attack script to try to fix a problem with "uninitialized item"s breaking
  • Added an extra SendSysMessage in the healer script telling dead players how to 'manifest' (had a few too many help pages about that)
  • Fixed a bugs in itemtypes.inc: Added studded caps to IsLeatherArmor, and sandals to IsLeatherBoots
  • Magic Essence potions can no longer be used when locked down
  • Removed banker's speech elem from NPCtemplate to prevent spam
  • Added check in :druid_spells:summon_player so that the spell can no longer be used to summon players from jail
  • Edited :npcs:npcsetup to accept multiple colorranges in an NPCDesc elem. If it finds more than one, it picks one at random. This doesn't work with 'special' colorranges (such as 'human')
  • Added a server uptime counter to the POL WWW page (server_stats.src)
  • Fixed tinkering and tailoring to make shoes and boots repairable
  • Fixed bladed.src so that packs can be removed from pack animals
  • Magic shovels are no longer magic and no longer need to be ID'ed, and also can now be sold to merchants (changes in :mining:itemdesc.cfg
  • Added 'sell bag' option for special shovels on .options (changes in options.src and :merchants:merchant.src)
  • Added function SendGMErrorMessage to myutil
  • Fixed :lockpicking:relocker script to rename chests 'a locked chest'
  • Rewrote quite a bit of the necro spellbook so that it can be moved around the screen (and will remember its position)
  • Added minimum bid increments to the auctioneer script
  • Fixed :cooking:hunger so that mounts will auto-eat the correct type of food
  • Fixed combat attack script so leopards play correct attack animation
  • Assorted changes to spawners and NPCs
  • Removed some debug messages from the auctioneer script and made some of the messages that were previously said by the auctioneer out loud are now private
  • Made some changes to the control_corpse script so that player corpses won't decay during server restart countdowns or for a few extra minutes after restart
  • Added the script :drocket:world_startup (launched from start.src, also edited) that runs when the server starts (needed for the previous player corpse decay change.)
  • Started work on a new 'quests' package, intended to contain items and functions specifically for seers
  • Added objtype 0x70a4 in the quests package for generic 'questitem'
  • Changed GiveQuestieDirections (in speech.inc) to call function GetDirection (from utility.inc) which should give more accurate directions than previous method
  • Added functionality to TakeItem (in speech.inc) to lauch external script ":quests:questitem_give_npc" when given new 0x70a4 objtype
  • Significant changes to the layers in which armor is equipped on character. This may or may not affect other shards, depending on what version of verdata.mul they're using...
  • Because of this and a weird quirk in POL, though, shoes now have a control script that change their graphic (because in the WoD verdata files, 0x1710 shoes are on a different layer than 0x1709 shoes, and POL automatically creates and equips 0x1710 shoes on a specific layer. Without this fix, creating characters is otherwise impossible with the WoD verdata files.)
  • Added a 'bobby-bugfixer' package who fixes items for players (currently he trades armors that became unequipable for clothing items)
  • Changed placedeed and some config files in the decorations package to use the new graphics included in the wod verdata files
  • Added a new package and NPC, the giftwrapper. Use of this package requires the WoD verdata files. When given an item, the giftwrapper NPC will put it into a nice box with a bow. Double-clicking the giftbox opens it.
  • Added a games package. This package makes chess and checker boards functional
  • Fixed a small annoyance in .point

Script release

Everything above are changes that were included in the last script release (04/21/2003). Everything below here are changes made since then and aren't included in the script release available in the files section

POL 0.95 script changes

These are script changes/additions that I'm noting down as I upgrade the WoD scripts for POL 0.95

  • Integrated the .setmember script with .setprop, and .smember with .getprop (thereby removing .smember and .setmember)
  • Removed a whole lot of other obsolete dot commands
  • Nuked a bunch of unused necro item scripts and make the objtypes no-save (plan to remove them entirely)
  • Added sound effect stuff on the oninsert_chest script
  • Removed unused xlate.cfg file