You may check the documentation under each project's specific directory at https://github.com/CacoFFF/XC-UT99
=== 24 update:
- Added: LoadPackageContents native (227 mirror).
- Added: MapRoutes native. (enhanced FerBotz route mapper)
- Added: BuildRouteCache native. (enhanced FerBotz route mapper)
- Added: DefinePathsFor native.
- Added: PlayerCalcView native. (replacement of script version)
- Fixed: GetReachSpec native.
- CompactPathList, LockToNavigationChain are static functions now.
- Singular functions can succesfully call parent/global singular functions.
- Reimplemented: GetMapName native.
** Removed 'bSortMapListGlobal' flag in XC_GameEngine, it is now default functionality.
** Added 'bSortMaplistInvert' flag in XC_GameEngine, makes GetMapName return an upside down list.
- Map List generation in game menues is now much faster and crash free.
- Implemented Route Mapper alternative to FindPathToward.
- bAnyFaceOnSkin mode, allows picking any face for a model regardless of skin.
- Monsters no longer attack unarmed SkaarjTrooper.
- Monsters are less likely to attack their own kind.
- Fixed bug causing XC_Engine_Actor derivates to initialize twice on level load.
- Reimplemented PreLoginHook, see XC_Engine.PreLoginHookSystem class for more info.
- Implemented the Event Chain System (enable/disable via bEventChainAddon in XC_Engine.ini)
- Improved bot handling of elevators.
- Bots may consider JumpBoots pickups during pathfinding as part of routes that require high jumps.
- Improved map list generation in game menues (no crashes, behaviour can be altered in Preferences)
- Prevent telefrags on team games during player respawn.
- Added paths for DM-Barricade's main hall elevator.
Event Chain System:
This system runs through a set of markers assigned to most known mechanisms in unreal levels.
Different kind of markers will be generated depending on the mechanisms being tagged and then
new bot AI/Navigation changes will occur depending on the instructions given by said markers.
This system helps bots smartly utilize elevators/teleporters/doors that require previous activation
as well as induce bots to unlock obstructions or other closed paths without any gametype directive.
- Net clients now communicate their tickrate to servers running XC_Engine 24 or above.
- Enhanced relevancy v3.
** Relevancy loop can run at lower rates than server tickrate for players with saturated connections.
** Client tickrate also caps the update rate on the server (for said client).
** Improved visibility checks
** See "Enhanced Netcode" documentation for more info.
- XC_ServerCommandlet visible from UnrealScript
** Improved tickrate stability.
** XC_Engine.ServerCommandlet is a subclass of XC_ServerCommandlet
** You may modify Engine.int and replace the default commandlet with this one.
- Actor List is rearranged twice instead of once (extra time before XC_Init)
** DynamicActors now optimal before gameplay starts.
- PreBeginPlay, BeginPlay, PostBeginPlay, SetInitialState events not immediately called for actors spawned
** They are treated the same as actors loaded with the level.
** Base and Zone setting also not set during this stage.
- Automatic clean up of NavigationPoint actors upon destruction (ReachSpecs and NavigationPointList, not on
- Improved attachment movement, actors are much less likely to overlap/encroach/telefrag each other when
standing on a base that moves horizontally.
- Fixed bug in traces with non-zero extent.
** Players/bots should no longer detach from elevators.
- Greatly improved code and speed. (especially on Linux)
- Fixed minor path builder bugs.
- Script compiler can compile calls to some XC_Engine functions without having to define them.
** See functions in classes XC_EditorLoader and XC_Engine_Actor.
** Dynamic array functions work on any dynamic array type.
- Rewrote multi-line log filter, fixed incorrect grouping.
- Improved XC_Launch tickrate stability.
- Improved logging of UnrealScript's stack trace during crashes (not on net clients).