here you can find smaller Updates/Changes for Pol099:
Code: Select all
12-21-2009 Turley:
Fixed: call of built-in method with ._methodname if overridden
Added: Multis now support method script
12-18-2009 Turley:
Added: file::CreateDirectory( dirname )
returns 1 on success else error
("Error in dirname descriptor","No parent path traversal please.",
"Directory already exists.","Could not create directory.")
Added: file::ListDirectory( dirname, extension := LISTDIR_ALL_FILES, listdirs := LISTDIR_DONT_LIST_DIRS )
extension param can be extension without "." or file.em constant
file.em constants:
const LISTDIR_LIST_DIRS := 0x1;
const LISTDIR_DONT_LIST_DIRS := 0x0;
const LISTDIR_NO_FILES := "";
const LISTDIR_ALL_FILES := "*";
returns array of strings or error
("Error in dirname descriptor","No parent path traversal please.","Directory not found.")
Note: Both functions doesnt check file access rights
12-17-2009 Turley:
Added: uo::CloseWindow( character, type, object ) - Tomi
possible values for type
const CLOSE_PAPERDOLL := 1;
const CLOSE_STATUS := 2;
const CLOSE_PROFILE := 8;
const CLOSE_CONTAINER := 12;
Note: if ( type == CLOSE_CONTAINER ) object has to be a ContainerRef, to close the open container gump.
else object has to be a MobRef to close paperdoll, status or profile of the chosen mob.
12-16-2009 Turley:
Added: Encrypted Client support - Tomi
Changed: uoclient.cfg Listener::Encryption and pol.cfg ClientEncryptionVersion now support
ignition = uorice = none, 2.0.0x and due to autocalculation major.minor.build (no patch)
e.g. 7.0.4 for latest client 7.0.4.1
default for both is "none"
Note: Till OSI changes the encryption type pol now supports every encrypted client without
updating the core (last change was 2.0.4)
12-04-2009 Turley:
Removed: deprecated pol.cfg entries "MasterKey1","MasterKey2","ClientVersion","KeyFile" - Tomi
Added: Gargoyles count as mounted while flying
12-03-2009 Turley:
Added: basic gargoyle flying support (new movemode "F")
Fixed: poison status for newer clients
Note: gargoyles can "fly" on tiles with tiledata flag HOVEROVER (MAPDATA_FLAG_OVERFLIGHT)
rebuilding of all realms is required
currently flymode can only be activated clientside (0xBF:0x32) and if race=RACE_GARGOYLE
renamed uo:TILEDATA_FLAG_NODIAGONAL to uo:TILEDATA_FLAG_HOVEROVER
12-02-2009 Turley:
Added: 0xF3 packet is send instead of 0x1A for clients >= 7 or UO:SA clients - Tomi
Added: polcfg MaxTileID 0x3FFF / 0x7FFF (default 0x3FFF)
since client 7.0.0.0 item graphic can be definied up to 0x7FFF - Tomi
Added: "SA" for expansion type. This includes sending 0x187DF with packet 0xB9. - Tomi
Added: support of new map TerMur - Tomi
Note: uoconvert param:
realm=termur mapid=5 width=1280 height=4096
uoconvert.cfg new stairs since SA:
0x1de0 0x1de1 0x1de2 0x1de3 0x1de4 0x1de5 0x1de6 0x1de7 0x1de8 0x1de9 0x1dea 0x1deb
Added: Gargoyle support (race = uo:RACE_GARGOYLE)
Note: graphics are:
UOBJ_GARGOYLE_MALE 0x029A
UOBJ_GARGOYLE_FEMALE 0x029B
UOBJ_GARGOYLE_MALE_GHOST 0x02B6
UOBJ_GARGOYLE_FEMALE_GHOST 0x02B7
Added: support of UO:KR/SA char create packet 0x8D
Added: new gargoyle hair & beard 0x4258-0x425F & 0x42AD-0x42B0
Added: UO:KR/SA face support
Added: ssopt.SupportFaces 0/1/2 (default 0)
set it to 1 to support basic faces
set it to 2 to support roleplay faces (sets 0x2000 flag in 0xB9 packet)
Note: Faces are normal items (like hair/beard) with layer 15, objtype 0x3B44-0x3B57
roleplay faces 0x3B4E-0x3B57
11-30-2009 Turley:
Added: polsys::MD5Encrypt(str) returns MD5 hash string.
Fixed: RecalcVitals function for vital changes doesnt check if maximum value changed
11-26-2009 Turley:
Added: Syshook CanDie(mobile)
Called when the mobile is about to die, return 0 to stop death.
11-24-2009 Turley:
Fixed: missing realm check for ListenPoints
11-23-2009 Turley:
Added: uotool param staticdefrag [realm=britannia] to defrag/remove duplicate statics (like fiddler does)
11-20-2009 Turley:
Changed: RecalcVitals( character, calc_attribute := RECALC_INTRINSIC_MOD, calc_vital := RECALC_VITALS )
const RECALC_INTRINSIC_MOD := 1;
const RECALC_NO_INTRINSIC_MOD := 0;
const RECALC_VITALS := 1;
const RECALC_NO_VITALS := 0;
possible values for calc_attribute:
RECALC_INTRINSIC_MOD - calls for every attribute the GetIntrinsicModFunction (old behaviour)
RECALC_NO_INTRINSIC_MOD - skips the GetIntrinsicModFunction calls
attribute name string - only calls the GetIntrinsicModFunction for given attribute
possible values for calc_vital:
RECALC_VITALS - calls for every vital the RegenRateFunction & MaximumFunction (old behaviour)
RECALC_NO_VITALS - skips the RegenRateFunction & MaximumFunction calls
vital name string - only calls the RegenRateFunction & MaximumFunction for given vital
- based on Tomi
11-19-2009 Turley:
Changed: chr.setlightlevel() now supports endless duration (-1) return is the new gameclock value - Tomi
Added: [paralyzed] & [deafened] @ singleclick packet - Tomi
Added: ServSpecOpt CoreSendsSeason 1/0 (default 1)
Determines if the core should send season packet on char creation/logon/reconnect and realm
change based on the season entry in realm.cfg. - Tomi
Removed: "You cannot insert that item into the container." sysmsg after container CanInsert script
returns 0 - Tomi
Changed: uo::UpdateMobile(who, flags:=UPDATEMOBILE_UPDATE)
const UPDATEMOBILE_RECREATE := 1;
const UPDATEMOBILE_UPDATE := 0;
if flags is UPDATEMOBILE_UPDATE old behaviour it sends update Mobile packet 0x77,
if set to UPDATEMOBILE_RECREATE it sends recreate packet 0x78 - Tomi
Added: ServSpecOpt CoreHandledTags (default 0xffff)
bitfield to determine which tags are displayed on singleclick, current used bits are:
0x1 [title_guild]
0x2 [frozen]
0x4 [paralyzed]
0x8 [squelched]
0x10 [deafened]
11-17-2009 Turley:
Fixed: possible hang in party system
remove object packet send when container is on a character
several movement code bugs
11-16-2009 Turley:
Added: NPCs receive EnteredArea event on char resurrect
11-11-2009 Turley:
Changed: intern container MaxItems too highest possible value (packet size) its now 3200
Changed: container "can add"-functions to only check weight recursive
10-22-2009 Turley:
Added: Syshook Ouch(mobile,lastx,lasty,lastz)
Called if mobile falls atleast 22 down (fixed Clientside value)
Added: uo::CanWalk(movemode, x1, y1, z1, x2_or_dir, y2 := CANWALK_DIR, realm := _DEFAULT_REALM)
const CANWALK_DIR := -1;
movemode is mobile.movemode string
if y2 is CANWALK_DIR x2 is considered as direction (0-7)
if x2 and y2 is given it calculates the needed direction
returns new z value or error
10-17-2009 Turley:
Added: PrivUpdater for "invul","seeghosts","seehidden" and "seeinvisitems" updates/sends/removes objects
in visual range on enable/disable - Tomi
Changed: .startlog/.stoplog checks now if priv "plogany" is enabled instead of only given - Tomi
Fixed: priv "all" now works as expected if enabled every other priv is also enabled
10-14-2009 MuadDib:
Changed: Methods Char.Squelch() and Char.Deaf() return the gameclock value they are in effect until.
10-14-2009 Turley:
Added: char privilege "canbeheardasghost"
With this privilege everybody can hear you even as a ghost (no 'oO' replacement) - Tomi
Added: pol.cfg TimestampEveryLine 1/0 (default 0) if set every line in pol.log gets timestamp
Added: char.deaf(duration) - duration in seconds. -1=forever, 0=off
Added: char.deafened r/o
Win download : http://downloads.polserver.com/Core/Windows/099/
Linux download : http://downloads.polserver.com/Core/Linux/099/
FreeBSD download : http://downloads.polserver.com/Core/FreeBSD/099/
Feel free to test and report...