Permalink
Browse files

14/12/2011 - Xuri (0.98-4.0i)

	Fixed an issue causing errors when compiling in VS 2008 Express and newer (giwo)
	Added some exception-handling to cScript::DoCallback() in cScript.cpp (spdddmn)
	Added NPCWANDER-type 5 (WT_FROZEN) - which will stop NPCs from moving. Useful for reapers and corpsers and such.
	Added support for six new JS events:
		onBuy( socket, objVendor ) - triggers for vendor before tradegump is opened. Can be used to restrict vendor access.
		onSell( socket, objVendor ) - triggers for vendor before tradegump is opened. Can be used to restrict vendor access.
		onBuyFromVendor(socket, objVendor, objBought ) - triggers for item while item is being bought from an NPC vendor; return false in script to block sale, defaults to true
		onBoughtFromVendor( socket, objVendor, objBought ) - triggers on item after purchase has gone through and item has reached the player's backpack
		onSellToVendor( socket, objVendor, objSold ) - triggers for item while item is being sold to an NPC vendor; return false in script to block sale, defaults to true
		onSoldToVendor( socket, objVendor, objSold ) - triggers on item after sale has gone through and item has reached the vendor's boughtpack
	Included CJSMapping.h and cScript.h in vendor.cpp to support new JS events
	Added onBoughtFromVendor JS events to pet-statue scripts in JS/NPC/PETS/ to automagically turn statues into live pets immediately after being bought
	Added a NULL-check in CJSEngine::AquireObject() in CJSEngine.cpp (spdddmn)
	Added an extra check to CPISellItem to make sure the character trying to sell items still owns those items when accepting trade
	(Added a temporary workaround for NPC pathfinding with long queues of NPCs trying to reach the same target)
	Added new DFN tags for ranged weapons, defining ammunition id required (color optional) and missile-effect id played (color/rendermode optional):
		AMMO=id (color)
		AMMOFX=id (color rendermode)
	Added AMMO and AMMOFX tags to ranged weapons in archery.dfn, aos_weapons.dfn, se_weapons.dfn and baseitem.dfn
	Added support for Fukiya blowguns as an Archery weapon in code
	Added new item DFN tag (and JS item property) to define maximum amount of stones (weight) a container can hold (replaces hardcoded value):
		WEIGHTMAX=# (defaults to 40000 - or 400.00 stones - for all containers)
	Added container-capactity information to item tooltip
	Added "Locked Down" text to item tooltips for locked down items. Refresh seems funky though.
	Fixed an issue where tooltips would display the current weight of and amount of items being spawned by container-spawners
	Fixed a server crash caused by the Item Identification-skill when used on items of type 15 - IT_MAGICWAND
	Fixed item-tooltip that describes remaining charges on an item of type 15 - IT_MAGICWAND.
	Fixed an issue with the JS Method Open for File Objects where it wouldn't allow opening files for appending or writing, only reading
	Fixed name in addmenu for item 0x0F64 (unused torch)
	Fixed TrainerShopping list in DFNDATA/ITEMS/shoplist.dfn - now refers to actual animal-statue items in DFNs
	Fixed DIR values for various wall sconces (DFNDATA/ITEMS/lighting.dfn) and heating stands (DFNDATA/SKILLS/TOOLS/alchemy.dfn)
	Fixed some incorrect scriptIDs for lightsources in jse_fileassociations.scp and jse_objectassociations.scp
	Fixed broken smithing of agapite items due to duplicate item-numbers between agapite and gold crafting DFNs (DFNDATA/CREATE/smithing_agapite.dfn)
	Fixed 'SETRACE command, no longer tries to use non-existing method to set character's race (JS/COMMANDS/setrace.js)
	Fixed some confusion with how vendor buy/sell backpacks were handled internally in code
	Fixed an issue where onCreate JS scripts would not run for duped items
	Updated dictionary-files with some more messages, including a missing systemmessage used to inform of remaining amount of lockdowns in houses
	Changed MAX_NAME to a 128 byte limit to support long item names.
	Changed JS scripts for lights to save DIR to MOREX when turning light off, and load DIR from MOREX when turning on. Sets default DIR if no MOREX value can be found.
	Changed some items spawned through code to use CreateScriptItem (DFN based) instead of CreateItem (Tiledata-based):
		Leftover arrows and crossbow-bolts that appear on ground during combat
		All cases where gold coins are spawned (newbie gold, random fishing, gravedigging, result of trading, NPC escort reward, etc)
		Ingots created from smelting items
		Resurrection robes (DFN entry added to DFNDATA/ITEMS/GEAR/CLOTHING/clothing.dfn for potential tweaking)
	The empty bottles that appear after using a potion will now be DFN based (JS/ITEM/potion.js)
	Fixed an error in JS/ITEM/diceandcup.js (dragon slayer)
	Made spawners of type IT_AREASPAWNER (69) use the MORE value ('set more 0x0000XXYY) to determine offset area to spawn in
	Corrected hit sounds for bows and crossbows, were using dart sound
	Changed miss-sound for bows and crossbows to make them different from melee weapon misses
	Randomized impact-sounds for melee weapons
	Randomized get-hit sounds for male and female human characters
	Revamped spell-damage and magic-resist systems:
		Added new function in magic.cpp to calculate spell-damage after magic-resist and eval-int vs resist-check:
			SI16 CalcSpellDamageMod( CChar *caster, CChar *target, SI16 baseDamage, bool spellResisted )
		Updated cMagic::CheckResist() with magic resistance formulas based on pre-AoS information
		Added BASEDMG tag to a number of spells in DFNDATA/SPELLS/spells.dfn.
			For damage-spells, it's the maximum potential basedamage done before bonuses (or penalties) based on target resist, caster eval int and item resistances.
			For healing spells, it's the maximum potential basehealing done before potential bonuses
		Damage-spells updated to use new methods for calculating damage and magic resistances, both of which should now be close to pre-AoS implementation
		Changed Chain Lightning and Meteor Swarm spells to split the total damage done between all targets
		Mind Blast changes:
			Mind Blast will now never exceed 60% of target max-health, nor above 120% of BASEDMG
			If target's Int stat makes out a larger percentage of his/her total stats (Sum of Str, Dex, Int) than the caster's, spell backfires onto caster
		Debuff-spells like Clumsy, Feeblemind, Weaken and Curse can no longer be fully resisted. Resisting will halve the effect-duration instead.
		Spells will now only do double damaga against non-human NPCs (monsters and animals)
		Exposed CombatExplodeDelay to UOX.INI, and changed the default delay between targeting and damage for the Explosion spell from 0 to 2 seconds
		Updated JS/MAGIC/level1targ.js with new magic damage and resist system, and added noNeedReags check on caster to potentially skip reagent checks
		Fixed (visual-only) issue where damage-numbers would display over head of caster twice if caster was also target
		Added JS Spell property "name" - can be used to get the name of a spell as defined in the dictionary-files (entries 593-662)
  • Loading branch information...
1 parent cb40a28 commit 14cd32fc55d3947948651300826884361d8bba9f xuridabur committed Dec 14, 2011
Showing with 2,300 additions and 677 deletions.
  1. +1 −1 dfns/create/smithing.dfn
  2. +48 −48 dfns/create/smithing_agapite.dfn
  3. +1 −1 dfns/items/ItemMenu.bulk.dfn
  4. +6 −0 dfns/items/containers/leather.dfn
  5. +6 −0 dfns/items/containers/metal.dfn
  6. +5 −0 dfns/items/containers/misc.dfn
  7. +30 −0 dfns/items/containers/wood.dfn
  8. +40 −0 dfns/items/gear/clothing/clothing.dfn
  9. +8 −4 dfns/items/gear/clothing/footwear.dfn
  10. +25 −0 dfns/items/gear/clothing/headwear.dfn
  11. +8 −0 dfns/items/gear/weapons/aos_weapons.dfn
  12. +14 −2 dfns/items/gear/weapons/archery.dfn
  13. +8 −0 dfns/items/gear/weapons/se_weapons.dfn
  14. +10 −10 dfns/items/shoplist.dfn
  15. +2 −0 dfns/items/skills/tools/alchemy.dfn
  16. +4 −16 dfns/npc/agressiveplants.dfn
  17. +79 −2 dfns/spells/spells.dfn
  18. +1 −1 js/commands/setrace.js
  19. +2 −2 js/item/diceandcup.js
  20. +1 −1 js/item/potion.js
  21. +12 −12 js/jse_fileassociations.scp
  22. +14 −15 js/jse_objectassociations.scp
  23. +100 −38 js/magic/level1targ.js
  24. +22 −23 js/npc/pets/static_horse.js
  25. +19 −13 js/npc/pets/static_llama.js
  26. +19 −21 js/npc/pets/static_ostard.js
  27. +19 −14 js/npc/pets/static_packhorse.js
  28. +19 −14 js/npc/pets/static_packllama.js
  29. +2 −0 js/server/data/weapontypes.js
  30. +6 −1 js/server/light/candelabra01_off.js
  31. +13 −1 js/server/light/candelabra01_on.js
  32. +6 −1 js/server/light/candelabra02_off.js
  33. +13 −1 js/server/light/candelabra02_on.js
  34. +6 −1 js/server/light/candle01_off.js
  35. +13 −1 js/server/light/candle01_on.js
  36. +6 −1 js/server/light/candle02_off.js
  37. +14 −2 js/server/light/candle02_on.js
  38. +5 −1 js/server/light/candle03_off.js
  39. +13 −2 js/server/light/candle03_on.js
  40. +6 −1 js/server/light/candle04_off.js
  41. +13 −1 js/server/light/candle04_on.js
  42. +6 −1 js/server/light/candle05_off.js
  43. +13 −1 js/server/light/candle05_on.js
  44. +6 −1 js/server/light/candle06_off.js
  45. +13 −1 js/server/light/candle06_on.js
  46. +6 −1 js/server/light/candle07_off.js
  47. +13 −1 js/server/light/candle07_on.js
  48. +6 −1 js/server/light/candle08_off.js
  49. +14 −2 js/server/light/candle08_on.js
  50. +6 −1 js/server/light/candle09_off.js
  51. +13 −1 js/server/light/candle09_on.js
  52. +6 −1 js/server/light/heatingstand01_off.js
  53. +13 −1 js/server/light/heatingstand01_on.js
  54. +6 −1 js/server/light/heatingstand02_off.js
  55. +14 −2 js/server/light/heatingstand02_on.js
  56. +6 −1 js/server/light/lamp01_off.js
  57. +13 −1 js/server/light/lamp01_on.js
  58. +6 −1 js/server/light/lamp02_off.js
  59. +13 −1 js/server/light/lamp02_on.js
  60. +7 −2 js/server/light/lamp03_off.js
  61. +13 −1 js/server/light/lamp03_on.js
  62. +6 −1 js/server/light/lantern01_off.js
  63. +13 −1 js/server/light/lantern01_on.js
  64. +6 −1 js/server/light/lantern02_off.js
  65. +13 −1 js/server/light/lantern02_on.js
  66. +6 −1 js/server/light/lantern03_off.js
  67. +13 −1 js/server/light/lantern03_on.js
  68. +6 −1 js/server/light/torch01_off.js
  69. +13 −1 js/server/light/torch01_on.js
  70. +6 −1 js/server/light/torch02_off.js
  71. +15 −3 js/server/light/torch02_on.js
  72. +6 −1 js/server/light/torch03_off.js
  73. +13 −1 js/server/light/torch03_on.js
  74. +1 −1 source/CDataList.h
  75. +1 −1 source/CJSEngine.cpp
  76. +28 −6 source/CPacketSend.cpp
  77. +11 −1 source/CResponse.cpp
  78. +71 −0 source/Changelog.txt
  79. +1 −1 source/UOXJSMethods.cpp
  80. +8 −0 source/UOXJSPropertyEnums.h
  81. +28 −2 source/UOXJSPropertyFuncs.cpp
  82. +8 −0 source/UOXJSPropertySpecs.h
  83. +1 −0 source/cBaseObject.h
  84. +37 −51 source/cBaseobject.cpp
  85. +8 −5 source/cChar.cpp
  86. +6 −5 source/cConsole.cpp
  87. +118 −8 source/cItem.cpp
  88. +22 −1 source/cItem.h
  89. +1 −0 source/cMagic.h
  90. +2 −0 source/cMultiObj.cpp
  91. +2 −0 source/cPlayerAction.cpp
  92. +294 −27 source/cScript.cpp
  93. +10 −0 source/cScript.h
  94. +9 −5 source/cServerData.cpp
  95. +1 −1 source/cVersionClass.cpp
  96. +65 −25 source/combat.cpp
  97. +1 −0 source/combat.h
  98. +25 −4 source/effect.cpp
  99. +3 −2 source/enums.h
  100. +20 −2 source/gumps.cpp
  101. +22 −0 source/items.cpp
  102. +300 −175 source/magic.cpp
  103. +19 −10 source/magic.h
  104. +88 −1 source/movement.cpp
  105. +1 −1 source/msgboard.cpp
  106. +10 −7 source/npcs.cpp
  107. +3 −3 source/pcmanage.cpp
  108. +1 −1 source/quantityfuncs.cpp
  109. +11 −8 source/skills.cpp
  110. +7 −1 source/ssection.cpp
  111. +3 −0 source/ssection.h
  112. +19 −18 source/targeting.cpp
  113. +2 −1 source/typedefs.h
  114. +1 −1 source/uox3.cpp
  115. +80 −11 source/vendor.cpp
  116. +3 −2 source/weight.cpp
View
@@ -253,7 +253,7 @@ ID=0x1b72
RESOURCE=0x1bf2 12
SKILL=7 0 150
ADDITEM=0x1b72
-MINRANK=1
+MINRANK=1
MAXRANK=10
SOUND=0x002A
}
@@ -15,46 +15,46 @@ MENU=450
}
[SUBMENU 452]
{ Shields
-ITEM=900
-ITEM=901
-ITEM=902
-ITEM=903
-ITEM=904
-ITEM=905
+ITEM=1200
+ITEM=1201
+ITEM=1202
+ITEM=1203
+ITEM=1204
+ITEM=1205
MENU=450
}
[SUBMENU 453]
{ Ringmail
-ITEM=906
-ITEM=907
-ITEM=908
-ITEM=909
+ITEM=1206
+ITEM=1207
+ITEM=1208
+ITEM=1209
MENU=451
}
[SUBMENU 454]
{ Chainmail
-ITEM=910
-ITEM=911
-ITEM=912
+ITEM=1210
+ITEM=1211
+ITEM=1212
MENU=451
}
[SUBMENU 455]
{ Platemail
-ITEM=913
-ITEM=914
-ITEM=915
-ITEM=916
-ITEM=917
-ITEM=918
+ITEM=1213
+ITEM=1214
+ITEM=1215
+ITEM=1216
+ITEM=1217
+ITEM=1218
MENU=451
}
[SUBMENU 456]
{ Helmets
-ITEM=919
-ITEM=920
-ITEM=921
-ITEM=922
-ITEM=923
+ITEM=1219
+ITEM=1220
+ITEM=1221
+ITEM=1222
+ITEM=1223
MENU=450
}
@@ -104,7 +104,7 @@ SUBMENU=456
// ITEM-ENTRIES
-[ITEM 900]
+[ITEM 1200]
{
NAME=buckler
ID=0x1b73
@@ -116,7 +116,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 901]
+[ITEM 1201]
{
NAME=bronze
ID=0x1b72
@@ -128,7 +128,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 902]
+[ITEM 1202]
{
NAME=metal
ID=0x1b7b
@@ -140,7 +140,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 903]
+[ITEM 1203]
{
NAME=tear kite shield
ID=0x1b78
@@ -152,7 +152,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 904]
+[ITEM 1204]
{
NAME=kite
ID=0x1b74
@@ -164,7 +164,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 905]
+[ITEM 1205]
{
NAME=heater
ID=0x1b76
@@ -176,7 +176,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 906]
+[ITEM 1206]
{
NAME=gloves
ID=0x13f2
@@ -187,7 +187,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 907]
+[ITEM 1207]
{
NAME=sleeves
ID=0x13ee
@@ -198,7 +198,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 908]
+[ITEM 1208]
{
NAME=leggings
ID=0x13f0
@@ -209,7 +209,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 909]
+[ITEM 1209]
{
NAME=tunic
ID=0x13ec
@@ -220,7 +220,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 910]
+[ITEM 1210]
{
NAME=coif
ID=0x13bb
@@ -231,7 +231,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 911]
+[ITEM 1211]
{
NAME=leggings
ID=0x13be
@@ -242,7 +242,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 912]
+[ITEM 1212]
{
NAME=tunic
ID=0x13bf
@@ -253,7 +253,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 913]
+[ITEM 1213]
{
NAME=gorget
ID=0x1413
@@ -264,7 +264,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 914]
+[ITEM 1214]
{
NAME=gloves
ID=0x1414
@@ -275,7 +275,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 915]
+[ITEM 1215]
{
NAME=arms
ID=0x1410
@@ -286,7 +286,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 916]
+[ITEM 1216]
{
NAME=legs
ID=0x1411
@@ -297,7 +297,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 917]
+[ITEM 1217]
{
NAME=tunic
ID=0x1415
@@ -308,7 +308,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 918]
+[ITEM 1218]
{
NAME=female plate
ID=0x1c04
@@ -319,7 +319,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 919]
+[ITEM 1219]
{
NAME=helm
ID=0x140a
@@ -330,7 +330,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 920]
+[ITEM 1220]
{
NAME=bascinet
ID=0x140c
@@ -341,7 +341,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 921]
+[ITEM 1221]
{
NAME=nose helm
ID=0x140e
@@ -352,7 +352,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 922]
+[ITEM 1222]
{
NAME=close helm
ID=0x1408
@@ -363,7 +363,7 @@ MINRANK=1
MAXRANK=10
SOUND=0x002A
}
-[ITEM 923]
+[ITEM 1223]
{
NAME=plate helm
ID=0x1419
@@ -135,7 +135,7 @@ ADDITEM=0x1433
ADDITEM=0x1434
0x1437=candle
ADDITEM=0x1437
-0x0F64=torch%es%
+0x0F64=torch
ADDITEM=0x0F64
<=Previous Menu
ITEMMENU=2
@@ -5,6 +5,7 @@ get=base_item
name=belt pouch
id=0x09b0
weight=100
+weightmax=40000
value=7 3
type=1
restock=10
@@ -18,6 +19,7 @@ get=base_item
name=backpack
id=0x09b2
weight=100
+weightmax=40000
value=18 9
type=1
restock=10
@@ -31,6 +33,7 @@ get=base_item
name=backpack
id=0x0e75
weight=100
+weightmax=40000
value=18 9
type=1
restock=10
@@ -44,6 +47,7 @@ get=base_item
name=bag
id=0x0e76
weight=100
+weightmax=40000
value=7 3
type=1
restock=10
@@ -57,6 +61,7 @@ get=base_item
name=pouch
id=0x0e79
weight=100
+weightmax=40000
value=7 3
type=1
restock=10
@@ -70,6 +75,7 @@ get=base_item
name=picnic basket
id=0x0e7a
weight=100
+weightmax=40000
value=10 5
type=1
restock=10
Oops, something went wrong.

0 comments on commit 14cd32f

Please sign in to comment.