13,176 Commits over 1,522 Days - 0.36cph!
Report native library not loading as a special exception
SystemInfo has StorageSizeAvailable, StorageSizeTotal
Rename ErrorReports to NativeErrorReporter to create a distinction
Load version info as soon as possible
Move error reporting out of Bootstrap
Catch startup errors
Remove max thread count from pooled dynamic vb/ib, fixing crash when used from too many threads (.net threads with unreliable ids)
Fix NRE in VrHand.cs
Fix NRE in Terrain.UpdateMaterialsBuffer - @handsomematt might wanna check this
Ignore packaged message deserialize errors - assume they're happening while we're joining and don't have the types yet
Diagnose sockets[i] somehow being null
Fix NRE in Input.Process
Ignore NaN positions with a warning instead of an exception
Fix being able to double destroy components
Make CallbackBatch 'safer' by making it always require a scene
Add twist/pull forces to particle effect
https://files.facepunch.com/garry/9f0a0575-f148-46d6-8f1f-75cdb8d1b8aa.mp4
Fix mesh trace fraction, causing incorrect best result when tracing render meshes and physics world at same time
Fix scene mesh block tool not working on terrain, just ignore box drag when bounding box gizmo is pressed
Terrain_Normal: dY was inverted
Reenable terrain specular and recompile it with normal fixes
Terrain_Normal calculates world space normals properly now, remove sobel filter to just a simple bilinear
https://files.facepunch.com/sam/1b2711b1/qNolcysYRH.png
Enable indirect lighting from IBL in volumetric fog shader, can be toggled with volume_fog_ibl_indirect
https://files.facepunch.com/sam/1b2711b1/PIwbCCNGYB.png
Fix MapInstance NRE, add breadcrumbs
Fix NRE in Package.FindAsync
SceneObject: If the model is bad, just use an error model
Nicer exception when __sync_SetValue exceptions
Ship with pdb's to our managed dlls
Fix NRE in SoundEvent.GetNextSound
Retry download after a HttpRequestException
Diagnose NRE in ProcessIncomingMessages
Fix NRE in TickSceneStats
Fix NRE in ReceiveMessagesOnChannel
Check there's an active scene when calling ISerializer on GameObject/Component
SerializerPacker wraps reader/writer and prints errors
Handle inability to save cookies
Protect against host being null when downloading network files
Keep a count of the number of hosts a lobby has had
Mark lobby as toxic if became owner while joining
LargeNetworkFiles output num files
Tweak JoinBestLobby logic
Don't show toxic lobbies
Fix RunDownloadQueue using wrong connection
Don't disconnect from own server and mark it as toxic!
Disconnect from active lobby if it becomes toxic
Fix open_asset crashing in non-tools
Don't show lobby cards for games marked as hidden (unless you're in that org)
Only show lobbies of the same game build
Another out of memory fatal error
Fix error when map couldn't be downloaded
Less simultaneous downloads
Add some high level sentry breadcrumbs
Fix possible NRE in network connect
Add commented out DSN for testing sentry un-rate-limited
Fix NRE in Prop
Add breadcrumb for failed downloads, let us diagnose why it's happening
Don't let OnNetworkSpawn errors break everything
Tweak how httpimages are loaded to make errors more obvious
Wrap RPC resume so things don't fall to bits if it errors
Fix NRE in Rigidbody.OnDisabledInternal
Validate descriptor bindings of a shader (for real this time, not in a dead method) - prevent crashing by not loading these invalid shaders
Tag map for sentry too (if launched with a map)
Fix WorldPanel NRE (if the underlying panel gets deleted, somehow)
Don't report TargetInvocationException, report its InnerException
Fix steam callback crash
Fix text cannot be empty exception
Remove Compiler.OnCompilePartialSuccess , don't load assemblies on compile fail, fixes BadImageFormatException
Promote task exceptions to errors, instead of warnings
Fix exception with no camera
Some error reporting breadcrumbs/tag for identifying game package
Breadcrumb pipeline creation to see what shaders crashing us
Running out of video and system memory is a fatal error
Move all terrain attributes into 1 structured buffer, create a Terrain class any shader can use to provide things like Terrain::GetHeight( worldPos )
Use an AssetPicker for browsing terrain materials instead
Fix possible project startup NREs
Use is valid checks in rigidbody
Fix index out of range accessing backing data collision attributes
Apply aggregate tags in C# instead of this massive inline bind function
PhysicsGroupDescription grabs physics tags from aggregate backing data so they can be string token cached. This allows trace result tags to be valid because they'll be reversable by string token
Fix NRE in SceneNetworkSystem.OnLeave
Add ParticleTrailRenderer, TrailRenderer components
Add a margin to the right of component sheet, to accommodate the scrollbar
Set collision attributes on map instance collision shapes, I missed this out when switching from native aggregate instances
Stop big server lists squashing the rows, styling tweaks Facepunch/sbox-issues#5943
Stick verbose network files messages behind 'debug_network_files' convar, print elapsed time Facepunch/sbox-issues#5912
Make sure directory tree exists when downloading from server
UI: Do not render invalid texture background images
Fix missing map select button
Autoswitch to game tab when going into playmode again (oops)
Expose BlendMode
Move D_BLENDMODE to common/blendmode.hlsl - so we can pull it into other shaders easy
SceneLineObject supports texture + uvs
Disallow np2 textures, crashes the DXT compressor we use, plus disables mips etc.
CRenderDeviceBase::AsyncSetTextureData2: Fix nullptr crash with invalid rects
Don't completely fail to start with an invalid controller plugged in, needs to be properly fixed in C++ though
Don't set active scene on tab hover but still do gizmo hover interactions, drag drop etc. Avoid needing awkward 2nd input, Facepunch/sbox-issues#5728
Use same asset picker size/location cookie regardless of what control created it
Get rid of special case map picker
Reference package.base from libraries when publishing
Fixes Facepunch/sbox-issues#5899
Cache versioned packages separately
AssertNoGraphErrorsInScene: assert downloaded package version
Package.FetchAsync: allow fetching specific version
Disable AssertNoGraphErrorsInScene test temporarily
Added OnOrg to PackageCard and PackageList. Added basic Org Page when clicking org on Main Menu. Helps users find games made by the same creator(s).
https://files.facepunch.com/CarsonKompon/2024/July/26_01-31-CuddlyCaracal.mp4
VectorInts are fields instead of properies (like they used to) with [JsonInclude] fields