* Initial work on boat piloting changes
- Changed: Boat script is now registered as the boat's control script
- Added: Boat piloting via mouse movement
- Added: boatRef.pilot member
- Added: boatRef.pilot([charRef]) method
* add first test
* Fix boat control script attach on scripted create
* move boat move packet warnings to suspicious acts
* set pilot now errors when mutli has no process
* Add test, testclient support for boat move packet
* Touchup pilot members and methods
- Change `pilot` method to `setpilot`. This standarizes it a bit with
the same naming convention of `npc.setmaster`.
- Fix return values in `pilot` member, returning `0` if no pilot.
* Refactor to put functionality inside UBoat
* Address Discord comments
- Remove SuspecisionActs for no boat process.
- Add `relative_direction` to boat move sysevent.
* destroy boatmount on chr death; more error checks
* Fix compilation after master merge
* Fix relative_direction calculation
* wip tests
* Fix boat tests
* Address review comments
- Initialize UBoat::mountpiece
* Add HSA check to boat.setpilot
* Reject movement if boat mountpiece equipped
* docs; test cleanup
* add test for blocked movement
* Address Discord review comments
- Add suspicious acts notice for client movement while piloting
- Return error on attempting to script move a char that is piloting a boat
* Fix compiler warning
* Add Character member .parrychance_mod, additive modificator of the parry_chance from the defender when it has shield equipped. Add parrychance_mod to parry formula.
* Add repsys.cfg General section PartyHarmFullCountsAsCriminal 1/0 default 1. If 0 OnHarm does not set mobile to criminal when they are in the same party.
* fix settings/party namespace
* fix pointer
* add ServSpecOpt UndoGetItemEnableRangeCheck and UndoGetItemDropHere undo getItem behaviour options
* fix code style len
* add missing comas
* special case for no drop item
* if no drop item and was not able to return to original container try to put to backpack
* fix remove item in range (was still displaying item in container, but was not really present there)
* add first simple test
* remove all tests
* remove all tests
* do not export test function
* ReloadConfiguration add reload servspecopt; Testsuite add fileaccess and servspecopt files; Add test fro undo get item
* check what produce SanitizerBuild fail
* run all test to fail on ThreadSanitizer Build
* Add repsys.cfg General section PartyHarmFullCountsAsCriminal 1/0 default 1. If 0 OnHarm does not set mobile to criminal when they are in the same party.
* add ServSpecOpt UndoGetItemEnableRangeCheck and UndoGetItemDropHere undo getItem behaviour options
* add missing comas
* fix remove item in range (was still displaying item in container, but was not really present there)
* remove all tests
* check what produce SanitizerBuild fail
* run all test to fail on ThreadSanitizer Build
* test new reload conf fix
* double check that build successful
* fix test comments; fix change log
* add DefaultAccessibleRange = 2 for tests
* delete unnecessary servspecopt file
* change check to toplevel_pos; add test for toplevel_pos
* try to update backpacks for client; increase distance to on drop backpack
* add heavy robe for tests; use robe instead flooding client with arrows
* fix test messages
---------
Co-authored-by: Oleksii Rebreniuk <oleksii.rebreniuk@shopit.se>
* converted multidef
added to the testsuite a big multi
ListMultisInBox now uses the update range, but since its the only spot
and the chances are low that someone really has such a big multi
corechanges are not really worth it I would say
* Fixed a few grid bugs, one endless loop and changed the range a chr can move while customhouse is active
Authors are not forced to use the clang-format setting, but should
atleast be inspired by the style.
The only thing which is now not allowed are tabs for ident/alignment!
Currently plib/systemstate, pol/uvars, pol/ucfg, pol/multi/multidef
Next step should be to split them based on usage, since its currently a bit of include hell...
added LEAK_DEBUG define:
disables the fixed allocs and uses direct new/delete, useful in conjunction with define of _STLP_USE_NEWALLOC in stlport/stl/config/host.h (rebuild of STLPORT required) to see real leaks
fixed leak of intrinsic weapons
small speedup for map packet
Added: Pol/config/extobj.cfg
Values it accept now and default values are
Tillerman=0xF010
Port_Plank=0xF011
Starboard_Plank=0xF012
Hold=0xF013
Wrestling=0xF020
Mount=0xF021
Secure_Trade_Container=0xFF01
Wornitems_Container=0xFF02
Note: These values HAVE TO BE > pol.cfg max_tile_id and the same as objtype for them in itemdescs
Changed: uoconvert now adds to multis 0x1000 to the ID
Note: boats.cfg uses the same value as multis.cfg and itemdesc graphic entry for multis have to be the same.
itemdesc entries for multis need to have the entry MultiID for updating multis ( you can find values using UOFiddler )
Added: UOExpansion HSA server sends now 0x387DF
Added: polcfg Max_Tile_ID 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
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