4,581 Commits over 731 Days - 0.26cph!
Pursue target aquisition
Target validity methods
Run thought logic at a lower frequency to action logic
New wait state
MAX/MIN times to be in wander and wait
Move between wandering and waiting if you've been stuck in a state too long
naval_update -> scientist_boat_ai
gifted_bag_tugboat_pickup -> main
Fix not being able to pick up gifted sleeping bags on tugboats/in shelters
Add 'Check.HasBuildingPrivilege' and 'Check.InBuildingPrivilegeArea'
'Check.HasBuildingPrivilege' = you can actually build, gives you a boolean yes or no.
'Check.InBuildingPrivilegeArea' = in an area, might not be able to build
Naming convention was driving me nuts with 'CanBuild()' vs 'GetBuildingPrivilege()' everywhere
naval_update -> scientist_boat_ai
facepunch_assert -> main
(for actual testing and answering basic questions: is it useful? What can I add?)
Bug fixes, general cleanup
Assert throws exceptions
Check wont print anything - just returns state
Helper methods for:
Quickly checking if flags have changed between two flag sets
Quickly checking if flags have changed between two flag sets
Quickly checking if two entities are the same prefab (removes a bunch of GetEntity and prefabID checks)
Quickly checking entity realm
Quickly checking if item is in container
Quickly checking if item is new
Bunch of jakes suggestions:
Renaming
Creation of a general Safety class which can check items and throw exceptions if specific issues come up
Integrate item safety class
Keep assert stuff here as well
full_drone_marketplace_fix -> main
flex_layout_manager_spam -> main
Add a Temp FlexLayoutManager, which will prevent the 'There is no FlexLayoutManager' error spam in bootstrap
assembly definition if i end up convinced to pull this to main
Our own small assertion library. Supports everything you'd expect with minimal overhead.
Minimal abstraction. Throws failed conditions in debug.logerror so we can actually use it on staging effectively.
Allows us to do assertions on CLIENT/SERVER specifically - takes advantage of our symbols
Eg:
FAssert.ThatOnServer(test == 5, "Success!")
compile_simulator_unused_variables -> main
Compile simulator will now treat 'field is assigned but its value is never used' as an error: just like our build server
syncvar_crosssave_fix -> main
Ensure Autosync sets the field value on the server as well as the client
If autoloading a property then invalidate the network cache - this ensures the first set of Autoloads will be replicated properly in all cases
Don't want NuGet either in this case - just take the ZLinq and remove everything else
More changes to ensure videos dont play on the home page
linq_optimisations -> main
main -> linq_optimisations
Simplify prioritize premium sorting - works way better than it did before
Fix CH47 patrol point selection to use a more fair random monument choice
Previously, GetRandomPatrolPoint() picked the first valid monument after a random start index. This biased results when only a few monuments were valid. Now we collect all valid monuments and select one uniformly at random, ensuring a more even distribution.
Fix an issue that could possibly duplicate gunshot sounds if the player was under a decent amount of lag or lower fps server.
Possible duplicated sounds would be local sounds (within network range), played once by the network signal then again with the effect logic. Would be made worse with lag
Fix the server browser duplicating listing results
Much better avoidance results - higher speed in general
Desired gas pedal now goes through a processing layer to stop values that would intentionally crash us into obstacles
naval_update -> scientist_boat_ai
Add support to team bag labels provided you have building priv from a tugboat or shelter
Add support for entity building priv
Eg if you have priv on a tugboat or a shelter
█▄▅▉ ▋▊▆▌▇▇▇▅ ▊▍▄▉▍▉ ▋▊ ▇▍▄▆▉ ▊▋▊█▇██▆▄
▆▌█▉ ▆▌▋▇ ▉▅▊▄▉█ ▆▊ █▉▄ ▅▍█▍▍
Change it to as attachment - to match the storage containers
Fix the translation changes breaking some mods
Fix ammo.snowballgun is missing a display name translation