* refactored boat move, fixed truncation of position when switching realm.
more simplifications
added more tests
* move_multi now accepts oldlocation like the other move functions
* added corechanges
* rewrite of saving, replaced operator way with a generic add method, thus
not everywhere the formating of the savefiles is hardcoded.
since its the last spot which uses the old formating lib, remobed the
lib
* removed cmake of old format lib
* testscripts for load/save of UObject,Item,Armor,Weapon
* fixed: member faster_cast_recovery and faster_cast_recovery_mod getter returned
a wrong value
* wrong/missing docs
* test containers, lockable, map, spellbooks
fixed save bug in map and spellbook
removed ancient savestrategy experiments
* added corpse test
splitted testfiles
* fixed loading (ancient bug) and saving (PR bug) of Reportables
added tests for houses, boats, accounts and chars
* fixed include
* fix shutdown leak
* added npc tests
upload complete coretest folder also on failure
* do not write and load RegisteredHouse for NPCs two times
readded extra newline between accounts
* tests for guild, party, realm
added resource cfgs, but a test is not really possible since nothing of
interest is stored
* added datafile, storage test
* activated resource loading, 25year old bug, but since the stored values
are senseless it makes no real difference.
added a few wtf comments
catch all exceptions during formatting of log lines
* replaced .write with explixit .begin, .end and .comment.
for leftovers.txt the StreamSaver was also used, since the format is
different use directly ofstream
* added corechanges
* POLLOG* macros use the new formatting
removed all old logging functions
* removed old fmt lib from everything except StreamWriter
removed unneeded functions
* fixed review comments
* renamed include guard to be able to use both format lib versions in
parallel
* build Fmt lib and link it into clib
* use std::string instead of format Writer for logging
added variant "2" for logging with new fmt lib
* use new logging variant for two logs
* always add \n to flush log, lets see if the assumption holds
* use new lib for tostring
* replaced all INFO_PRINTS in clib
* formatter for Token, BObject and BObjectImp
* started with bsccript
* use function instead of actual object for logging
* remaining bscript, started plib
* logvariant without newline added, more template magic
* format support for base types, added test for format padding
new version for fdump
* chanhed ecompile/runecl fixed compilation with ESCRIPT_PROFILE
* rewrite INFO_PRINT in plib,poltool/uoconvert/uotool
* replaced remaining INFO_PRINTS, renamed macros INFO_PRINT for logging
without newline, INFO_PRINTLN for newline addition.
Replaced also INFO_PRINT_TRACE and renamed it to INFO_PRINTLN_TRACE
* gitignore for fmt lib
* cleanup vim leftovers
* Fix unhandled exception in UBoat::create_component
* Return 0 on unsuccessful boat move with MoveBoat and MoveBoatRelative
* Add boat.set_alternate_multiid
* skip base multiid in alternates boat struct
* Add test for boat.set_alternate_id
* docs, core-changes
* use array equals in test
* 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
* removed pol_distance/inrange* functions
replaced lastxyz with Pos4d
* replaced WorldIterator::InVisualRange with InMaxVisualRange returning
all objects in maximum update range. Adapted each caller, they now have
to check in_visual_range
Multis should now be send to clients with its footprint in mind.
added testscript for boat moving in/out of range
* removed non pos InRange/InBox functions
gamestate.update_range doesnt need to be a Vector, renamed
* corrected send_action_to_inrange
* replaced clip methods with general numeric type clamp function
* added Range2d constructor with radius
* splitted update_range. chr has now a los_size (how far can it see) and
an object has a visible_size (0 for objects 1/2 footprint for multis)
* use in_range instead of pol_distance
* corrected order of checks
* fixed warnings
* fixed visual size of multis
testclient added wornitems pkt support
added tests for los
* corechanges
* 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
* use Pos classes in Map and Door
removed most of the functions in ufacing.cpp
removed Plib::UFACING
added executor getPos2d
* added forward methods to baseobject, lets see where it ends :)
* fix typo
* moved methods to uobject
* replaced baseclass x,y,z,realm members with Pos4d.
Adapted the code, no changes except making the compiler happy
* review changes
* Fixed gotten_item
* fixed copy&waste
* Test: move boat while client on ship
* added f3 pkt
* pkt id on assert failure
* 7090 pkts
* smooth boat pkt
* silent the spam
* syncpoint for moveobjecttolocation of char
* added sync point for silent item updates
* starting actual test for boat movement to check correcr coords
* read z coord as signed short
* clarified names
* smooth boat pkt rewrite. dont include invis objs, send the correct obj count in case of overflows
* core changes
* Fix overflow of new HSA packets when a boat has too many items on the deck. These packets will now be truncated.
* Added setting in ssopt to control the refresh of the decay timer for items on deck after a boat movement
* Core version is now a semantic version, starting at 100.0.0
* Remove 'POL' prefix from POL_VERSION_ID
* re-add dash in between version str and name in POL_VERSION_ID
Co-authored-by: Fernando Rozenblit <rozenblit@gmail.com>
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!