Added all the OnMouseX overrides from Panel to PanelComponent. Resolves Facepunch/sbox-issues#6678
Clothing Updates
Asset Browser 2 (#1670)
Remove logs
Improve spotlight gizmos
Fix new project location file dialog not setting initial directory
Add Jump To Code option to properties https://files.facepunch.com/f5a729e8-da9c-4e20-bf95-eea8a5fc4e84.png
Manually Paint the Button widget, make it tintable
Naming consistency between Widget, Option, GraphicsItem
Tooltip -> ToolTip
StatusText -> StatusTip
Expose Menu.ToolTipsVisible, add Menu.PathElement.Description
Node menu rewrite, add tooltips
https://files.facepunch.com/ziks/2024-10-26/sbox-dev_BqmtPdWalM.png
Disable Forward/Back buttons in the Asset Browser if you cannot go forward/backward instead of throwing error
https://files.facepunch.com/CarsonKompon/2024/October/26_10-32-LightcyanAntarcticfurseal.png
Unify all asset delete methods, fix delete not working for certain assets. Resolves Facepunch/sbox-issues#6692
Fix button colors
Fix warnings in editor projects
Do not do a recursive destroy on mesh copies when loading fbx blend shapes, this seems to fuck up the original mesh it was copied from https://files.facepunch.com/layla/1b2711b1/sbox-dev_NPHzQrVaHv.png
Finish bone update on renderer transform change to ensure bones are up to date in situations where transform changes after animation update
Revert, this is likely going to break threaded animation
Finish bone updates at end of update if transform has changed after updating bones
Humans: added WalkFast_E + NE/SE (roughs)
Humans: remove animation-processing VMDL prefab instances living under currently disabled nodes, to work around issue #1681
Add WithExtension(this string path, string ext)
Refactor rename flyout in asset browser, add error flyout
Fixed Facepunch/sbox-issues#6695
https://files.facepunch.com/ziks/2024-10-28/sbox-dev_do9WlbwLbF.mp4
Restore fix for dragging in installed cloud assets, resolves Facepunch/sbox-issues#6703
Save launcher cookies to it's own file
Make sure launcher doesn't save editor cookies, they would stomped on close
Remove mock GameObject/Prefab code from managed MapEntity
Clean up Entity tool as you can no longer add/target games this way
# Conflicts:
# game/editor/Hammer/Code/Tools/EntityTool.cs
# game/editor/Hammer/Code/Tools/EntityTool/EntitySelector.cs
Remove Hammer EntityIO UI
Remove unused complicated stuff from worldbuilder: point templates, some hardcoded ents, dioramas, ...
remove nav markup volumes from fgd
ActionGraph source location refactor
Fix asset browser not saving to cookies, bring back history cookie logic
(this is all in the project cookie now too)
Always update the path widget even if it's not a real location
Fixed Facepunch/sbox-issues#6696
Dedicated Server (#1679)
* Initial branch commit for dedi server message routing
* Try to synchronize Connection State through ConnectionInfo where possible
* Use Connection.All for filtered broadcasts so that will use ConnectionInfo if exists
* TargetedMessage support for byte[] array for already packed messages, and pass in NetTransmission flags for routing as well
* For now, one idea is to override SendRawMessage on MockConnection - for these type of Connection we can route through the host
* Store Connection internal state if ConnectionInfo doesn't exist then we can just use that
* Better synchronization of Connection State - now working as it was before, but should also synchronize other clients properly when on a dedicated server
* For filtered connection list / broadcast - if we're the host then use the connections we have, otherwise we should use Connection.All
* Include Connection with available connections when broadcasting - as Dedicated Server won't be included in Connection.All (maybe it should, or maybe people should just use Connection.Host)
* Serialize TargetMessage flags as byte
* system must be set to SendMessage to a Connection. Fix an issue with SenderId when receiving a TargetedMessage - this can't be local, so try to find the connection but if we can't find it just use the source.
* Test logs
* Some cleanup - fix issue where system isn't initialized so can't serialize. Could be wrong here, but only one system can be active so just use that.
* Remove this log
* Remove unusued code
* Add NetTransmission flag support when using SendMessage via Steam Sockets
* Don't forget to add arg to header
* Clearer docs here, only log warning if networking debug is enabled here
* Some tidy up here
* Reset local connection state to Unconnected when closing network system - some debug log for other machine
* Close these connections
* Remove this log
* Add Dedicated Server page to Project Config with its own option for a Startup Scene. When loading a game, if we're headless, use that if its set instead of the usual one.
* Don't call INetworkListener.OnActive for dedicated server, similarly don't call OnDisconnected. OnConnected will never get called anyway because it doesn't go through the handshake.
* This bit isn't needed actually
* Test boot back to main menu
* Properly get when disconnected
* Use CollectionExtensions properly
* Fix test, re-add system member
* Fix this state
---------
Co-authored-by: Garry Newman <garrynewman@users.noreply.github.com>
Remove baked cubemaps code from Hammer
Fix Hammer default layout. Also add Cloud Browser by default
Fixes Facepunch/sbox-issues#6708
Update Dedicated Server bootstrap logs
Show full file path in window status bar on hover again, resolves Facepunch/sbox-issues#6709
Only try to filter by asset type if we have any filters on, fixes excluding most files from search
If we're headless, we should shut down SteamGameServer when disconnecting from network system
Pass actual version into SteamGameServer init for version. Test server list cmd
Add 'copy absolute path' option
Find root paths automatically instead of just using current project
Show base, citizen, and core
Better sidebar separation
Hide cloud browser when not requested
Limit file count for now, need pagination
Docs
Use full paths for engine asset locations
Add flat view back
Don't try add menu project if we're headless
Fix asset icons at 16x16, centre
Use 16x16 icon for unknown files so that doesn't get cut off
Pretty up file modified date, standardised w/ leading zeros so it's nicer in column view
Don't show the menu path for custom assets' file type, just the title
Add "Open File Location" shortcut for files in search results, meta locations etc. Tweak context menu icons.
Show 'open with' dialog if we can't open a file
Set hammer material when selected (both in cloud and asset browsers)
Moving selected facet dropdown entry fetches from current facet entries rather than copying
Re-implemented FilterAssetTypes in AssetBrowser and CloudBrowser. ResourceControlWidgets will now only show the selected resources
Unify "Show In Explorer" icons in Asset Browser
Don't show Games in the Cloud Browser. Don't include in type facet
Don't hide compiled assets if no source file is available
Citizen/animgraph: improved turn poses (and enabled them) as well as standing shuffle
Fix path breadcrumbs not working outside of main asset browser
IsValid() wrapper for main asset browser instance
Fix Folder Icons not being centered
Added Folder Metadata window. Allows you to change folder Color/Icon and see additional information. Resolves Facepunch/sbox-issues#6705
https://files.facepunch.com/CarsonKompon/2024/October/28_13-38-MeagerIbizanhound.png
Humans: fixed compile errors
Add SteamItemDefinitionId to Clothing
Fix asset context menus in native tools, resolves Facepunch/sbox-issues#6722
Add failing hotload test, reproducing #1673
Stricter AreEquivalentTypes, fixes #1673
Fix crash in CModelStream::CopyValuesFromStream, assert out of bounds
Reorganise cloud browser sidebar, add type shortcuts
Add count badge to cloud Installed node
Fix qt exception when installing cloud assets
Cloud browser: Update facet dropdown selection from actual value in query, avoid putting crap in the searchbar from sidebar shortcuts
Cloud browser: Still show facet title when there's a selection
Long Folder names will wrap in Asset Browser icon view
Use cloud asset type instead of file extension for filters in Cloud Browser. Resolves Facepunch/sbox-issues#6721
Steam inventory service
Catch case when ResourceProperty has no asset
Fix compiled asset filtering
Add "Go To Folder" in recents
Fix warning
Fade out items you don't own in avatar scene
Add scroll layout enter/exit events to ListView
Asset browser: only render thumbnails for assets within visible scroll region, dequeue when culled
Don't refresh whole browser content when a thumbnail is updated
Just do a single thumbnail render per frame for now, feels less janky
Mouse back/forward buttons in asset browser
Clean up history logic a bit
Added Distance/Falloff to Sounds (#1682)
Store pages, checkout
Fix SoundEvent JsonUpgrader to accommodate for RangedFloat values.
Add TreatWarningsAsErrors compiler option
Add TreatWarningsAsErrors to built-in addons
Helps us catch warnings before the build fails because of BuiltInTests.NoWarnings
Add some default lighting to game object thumbs if scene is unlit
Can give an optional target to scene event nodes
Fixes Facepunch/sbox-issues#6726
Adjust sound defaults and hopefully fix most falloff-related issues.
PreviewSound gradient now visually follows the Falloff of the sound instead of purely being there for aesthetics
https://files.facepunch.com/CarsonKompon/2024/October/29_18-40-LightsalmonBudgie.mp4
Move Folder Metadata from EditorCookies to ProjectCookies. Use relative paths instead of absolute paths.
Folder Metadata is applied to FolderNodes
Humans: reworked WalkFast_N
Fix messed specular on skin shader that was using old normalization curve
https://files.facepunch.com/sampavlovic/1b3011b1/zPO0P1wuPT.png
Depth of Field 2 (#1657)
Don't do AssetListEntry scroll events in list mode
Don't show libraries in cloud browser
Add windows-style subdirectory flyout to path separator
https://files.facepunch.com/solw/2024/October/30_09-20-IllfatedUlyssesbutterfly.png
Include final path separator if the directory has subdirs
Fix asset dependency list with new browser
Save/restore asset inspector tabs to cookie
Failing tests reproducing Facepunch/sbox-issues#6731
Fix Facepunch/sbox-issues#6731
Clean up string.To{Numeric} extension methods
Add Vector3.SmoothDamped, Vector3.SpringDamped
Add HeaderAttribute, SpaceAttribute , HelpUrlAttribute
Keep General feature first always
Add ParticleModelEmitter
Add ParticleTextRenderer
Add SceneVolume system
Seal up some classes
Add DspVolume
Display distance on dragged sound in PreviewSound widget
PreviewSound Falloff preview updates as you edit the Curve
Fix path widget error with meta locations
We shouldn't need these SteamInput files anymore
Fix FloatControl shitting itself when it's nullable
Fix exception when deleting a component
Make ClothingContainer more useful
Clothing Updates
When creating a component, if the typename has a conflict, then prioritize the type that exists in addon code
PlayerController component
Player Controller prefab
Fix UI sounds having Occlusion, Attenuation, Absorption and Transmission applied to them. [HideIf] those properties when UI is true. Resolves Facepunch/sbox-issues#6742
Fix asset browser not opening if last opened directory from previous session was deleted/moved
Add Model extension to create bone objects
Rework skinned renderer to use create bone objects extension. Ignore absolute bone objects.
Fix [Placeholder] attribute not actually setting PlaceholderText
Humans: brand-new data sets for hitboxes, physics joints, and physics shapes + improved WalkFast_E + added WalkFast_W
https://files.facepunch.com/maxlebled/1b3111b1/2024-10-31%2001-49-11.mp4
Clothing Updates
Clothing Updates
Use [FontName] for TextRendering.Scope, resolves Facepunch/sbox-issues#6752
https://files.facepunch.com/tony/1b3111b1/sbox-dev_VBbuYDiPZN.png
HelpUrl for PlayerController
HelpUrl adds (?) button to component header, fixed component header rebuilding multiple times
Fix vignietting on DoF
DoF Blur size is in pixels, make it relative to screen resolution so size is consistent, do uv offset a bit after first sample so there's less shimmer
Cloud asset uninstall flow/ui
- removes all references to the package from your project
- deletes all files that're no longer needed from disk
- updates package references to remaining installed package where there's shared files
https://files.facepunch.com/solw/2024/October/31_13-07-ComposedAmericancreamdraft.png
Prevent cloud browser from shitting pant with duplicate facet tags in query
Don't add type tag twice when FilterAssetTypes is specified for cloud browser
Cloud browser: Hide sidebar type locations when FilterAssetTypes is specified
Add pivot to sprite renderers
AssetPicker: Standardise initial selection logic, prefer selecting cloud package for cloud assets (and not .sbox disk path)
Fix focusing AssetList on entry sneakily not working
Wait for cloud browser to receive results before selecting initial selection
Add clear button to asset/cloud browser search bars
Switch case node
https://files.facepunch.com/ziks/2024-10-31/sbox-dev_YiyL34b2CY.mp4
Add more optional functions to IPressable, for hovering and update
Slow down default player turn speed
PlayerController camera can be moved left/right
PlayerController has "use"ing built in
Don't let the user drag AssetPicker tabs about/outside the window (lol)
AssetPicker: Disable type facet dropdown if FilterAssetTypes is specified
AssetPicker: Default to project assets folder when no initial selection is given
Fix CloudBrowser not saving/restoring from cookie
Shift cloud locations around again, this makes more sense I think
AssetPicker: make sure we're raising the tab you'd expect by default
Remove the need for CGameTrace and delete it, the less trace result structs we have, the better
Allow physics shape to associate with a bone index so SceneTraceResult.Bone works when hitting physics shape, as the summary suggests https://files.facepunch.com/layla/1b3111b1/sbox-dev_016MWrhQrI.mp4
Don't early out of model collider when there isn't a bone for part
Fix UI sounds still playing spatially.
Citizen/animgraph: improve look & feel of turning while moving
https://files.facepunch.com/maxlebled/1b0111b1/2024-11-01%2005-08-50.mp4 (NB: this video has several of the parameters non-functional due to the current state of the physics-based player controller, so it's not a complete picture, but it does show off this specific improvement)
Normalize quaternions in AddPoses to prevent drift in model space blending
Remove extra quat normalize that isn't doing anything
Fix exception in Asset.ReadJson()
Fix NRE in GetBoneObject() when using the wrong name
Properties with [Hide] don't contribute to features tabs
Don't need these Hammer prefab templates anymore
InspectorWidgets are explicitly marked with [Inspector( Type )] instead of [CanEdit( Type )], created with InspectorWidget.Create( SerializedObject )
Unify UI and ListenLocal, should have complete parity with how it was before 🤞
Hammer GameObjects (#1675)
* Hammer Scene is serialized in MapWorld and gets written into VPK as world.scene_c
* MapInstance additive loads the SceneFile from inside the VPK
Tie Meshes to GameObject:
* Replaces Entity
* GameObjects with meshes tied have a HammerMesh component which procedurally creates a ModelRenderer and ModelCollider
* HammerMesh is setup at map compile time with generated models.
Editor:
* Add HammerManagedInspector which can take over native inspector if it likes the MapNode type
* Add HammerSceneEditorSession for handling saving properly
* Gizmo interactions work in MapView, Hammer gizmo selectionset syncs with native selection set (native has authority)
* Clean up MapView loop: run Scene.EditorDraw() for gizmos, remove old Entity.DrawGizmos
Hammer Outliner:
* Managed sets DragData of map nodes in Hammer outliner
* Defer selection until mouse release so it acts like our managed treeview, allows dragging without selecting instantly
* Removed duplicate entity list
* Add "Create Game Object" button
ActionGraph:
* Add MapSourceLocation for editing action graphs in .vmap files
* Open source map when inspecting graph from .vmap
* Parent action graph editor to hammer window if editing map graph
---------
Co-authored-by: James King <james.king@facepunchstudios.com>
Fix readonly string control widget
Clothing Update
Clothing Updates
Citizen/animgraph: removed several unused parameters + skid now relies on 2 new parameters, skid_x/skid_y, instead of move_x/move_y
Quick fix to diving outfit
Merge branch 'master' of sbox
Wrap property tooltips in rich text tags so they wrap, resolves Facepunch/sbox-issues#6723
Do Widget.AdjustSize before ConstrainToScreen
Fix colour picker relying on late sizing and not constraining to screen properly, Facepunch/sbox-issues#6717
Animgraph: Add blend cycle option to state machine transitions - blends cycle on transition instead of resetting to zero https://files.facepunch.com/layla/1b0211b1/sbox-dev_fR7ScCdFuP.mp4
If setting local transform to default, set it to Transform.Zero
Add Texture.CreateFromSvgSource
PlayerController: Fix hiding other players bodies
PlayerController: Tweak how body rotation works, clamp rotation to always be within RotationAngleLimit vs eye angles
PlayerController: Only apply "viewer" tag to render body if set
Svg's have mips, can keep aspect ratio
Fix warning
Get rid of my partial class check for SourceLocation codegen, it's actually the culprit for Facepunch/sbox-issues#6753 - re-publish your game and it'll be fine
Get shortest SourceLocation path when setting TypeDescription.SourceLine/File
- This should've been the original fix for opening code files that have partial class defs
Citizen/animgraph: added b_firstperson parameter; intended to be used when showing the body in first-person view while looking down
mapbuilder: don't try to parse empty scene json
fixes Facepunch/sbox-issues#6777
Fix Prefabs not serializing ISceneMetadata components that are on the root GameObject
Fix PrefabFile.GetMetadata() reading the wrong property name
Can drag scene prefabs into Hammer map view
If no [Inspector] found keep falling back on [CanEdit]
Fixes Facepunch/sbox-issues#6784
Fog TAA + Tiled Rendering
* Fixes artifacts
* Improves perfomance
* Removes Clipmaps
* Lights are culled with tiles
* Makes fog render until far-z
* Removes ghosting
* Simplifies codebase a lot
Grt rid of log spam in OnAnimationEvent
new Model.Attachments API
Remove Log.Info in AssetBrowser
Add CreateAttachments property to ModelRenderer
Simplify skeleton bone rendering
Fix SoundEvent JsonUpgrader only working for certain formats of RangedFloat. Resolves Facepunch/sbox-issues#6790
Update Facepunch.ActionGraphs
Fixes Facepunch/sbox-issues#6736
Download initial server packages (on join) in parallel, Facepunch/sbox-issues#6786
Improve Bootstrap::Init error output to show diagnostic errors if they exist - we get a lot of users asking about this, and the original exception is not very useful
https://files.facepunch.com/tony/1b0411b1/sbox-dev_GUQ7oMB8Eh.png
Flag scene unsaved changes in a better place, fixes not being flagged in some cases, Facepunch/sbox-issues#6799
Consistently style scene tab titles in titlecase
Copying, shift transforms & undoing all work on hammer game objects. Only had to change all the callbacks to a new system again
Hammer can paste gameobjects copied from scene editor
Resolves Facepunch/sbox-issues#6762
Asset browser: double clicking a folder in the left pane expands it + highlight current folder in sidebar
Asset browser: Re-build sidebar locations when we make a new folder
Asset browser: can highlight scene file by right clicking the tab
https://files.facepunch.com/alexguthrie/1b0411b1/sbox-dev_glaXsIVvIP.mp4
Add Component.ITemporaryEffect, add it to particleeffect, particleemitter, soundpoint
make RenderOptions.Apply public
Scene hierarchy search searches whole scene, rather than just filtering visible nodes
Scene Hierarchy: explicit t: token for searching by component type
Scene Hierarchy: tag: token to filter by GameObject tags
Scene Hierarchy: hide children in flat search view
Scene Hierarchy: skip root, objects with hidden flag
Scene Hierarchy: hide clear search button when there's no value, styling tweaks
Fix Remove Component not being included in the Undo Stack
Clothing Updates
Clothing Updates
Tweaked editor startup, don't pop up this cloud progress window, compile assets faster
Shorten "Group with new GameObject"
Update Facepunch.ActionGraphs
Fix Project.EditUrl wrong link
Fix asset browser showing compiled alt files of files we have the source to
Play asset sound when clicking on asset
Tweak TabBar style for icon legibility, consistent positioning
Consistent placeholder text for search widgets
Asset browser: Stop sticking "Resource" on the end of most asset type names
Asset browser: Fix dragging assets only including the first thing, resolves Facepunch/sbox-issues#6810
Asset browser supports multi asset selection
[CustomEditor] supports properties marked with [Editor( "editorname" )]
Converted OrganisationProperty to OrganisationControlWidget
Fix button with no icon padding
Fix NRE in attachments
Model preview better guess if it's a viewmodel
Can multiple select and right click assets to batch publish, and select an org
Ident maxlength increased to 64
Fix warning
EditorUtility.PlayAssetSound supports sound events
Asset browser: Play overlay for sounds
Fix button text not being vertically aligned by one pixel. Resolves Facepunch/sbox-issues#6805
Clean up EditorUtility.PlayAssetSound a bit
Ignore edging when drawing text outlines, helps with `font-smooth: never;` in combination with `text-stroke`
Facepunch/sbox-issues/issues/6764
Fix video background color random
Should fix editor startup error
Hammer: Can hover and select managed scene render meshes (ModelRenderer) as well as gizmo render bounds, whilst working alongside native traces
Cache looking up types by name
Added a DateTime ControlWidget. Resolves Facepunch/sbox-issues#6787
https://files.facepunch.com/CarsonKompon/2024/November/05_13-28-CourageousUrutu.mp4
DateTimeControlWidget supports DateTimeOffset as well
Added `[Expand]` attribute, which expands the control for that property onto a new line, making it fill the width of the sheet. Resolves Facepunch/sbox-issues#6800
https://files.facepunch.com/CarsonKompon/2024/November/05_14-34-QuarrelsomeFinch.mp4
Don't show properties of incompatible types when assigning Prefab Variables
Ensure GUID is saved all the time. And some validation: delete CMapGameObjects that have no GUIDs on load & create CMapGameObjects for scene gameobjects that don't have a match
Suppress native transform change callbacks too which were causing angles & scale changes to not execute
Transform changes on managed execute EventPropertyEditorCoreAttributeChange_t so gizmos follow properly
Clothing Updates
Remove notion of installing cloud assets as preview
Cloud assets are either on disk or not, this preview state confuses stuff without any real benefit. The important thing is that the references get stored in the assets - which they're not going to if we're not installing the cloud assets.
Asset picker previews cloud sounds
Call OnAssetHighlighted when highlighting cloud assets in picker
Add (hidden) to cloud packages that are hidden
Preview sounds when clicking on them in cloud browser
Get rid of the package download notice (if we want this, we have to find a less abrasive way)
Lets be more explicit with IsPromise, isolate it to GameResource, make it internal, and make sure it gets set to false on load
Fix warnings
Run assettags.updated only on the main thread
Protect against a SceneDock not existing for some reason
Protect against GameObjects being added during Serialize somehow
Renamed [Expand] -> [WideMode] with optional parameter to hide the label completely
Sound Occlusion traces now follow the rules of the "sound" collision group, which defaults to only collide with "solid".
Fix ProjectSettings.ReadWithFallback not running JsonUpgraders on old meta fallbacks
fix smoke1.vtex
IsCloudInstalled doesn't care about versions by default
Skip installing remote package if there's already an installed version by default, always download when explicitly installing/updating etc
Remove manual package install button
fix log interpolation
Clothing Update
EntityTreeModel::mimeData calls base again so native interactions still work
Hammer GameObjects can have children
https://files.facepunch.com/matt/1b0611b1/sbox-dev_icF9jl1PDP.png
Gizmo.Settings.GizmosEnabled applies to DrawGizmos as well, resolves #1539
https://files.facepunch.com/tony/1b0611b1/sbox-dev_cW3C5AFArY.mp4
Fix broken loading screen characters
Fix occlusion not using proper listener position and constantly overriding the target
Multicast action graph delegates
https://files.facepunch.com/ziks/2024-11-05/sbox-dev_ntUf9trdvk.png
Add CommandList
* Add CommandList
* Add CameraComponent.Hud
Remove unused OpenXR launch environment variables
Update Facepunch.XR to ec56d1c119e0251cbc105be8a26792e266b68ed3, fixes some minor launching issues
VR hand component fixes
VR world input component
Remove unused VR bits in MenuSystem
Basic VR scene menu, loads automatically if VR is enabled
Fix Prefab Tabs not having a Context Menu, can now Show Prefab in Asset Browser
Added Sound Point Prefab Template and fixed Soundscape Prefab Template
https://files.facepunch.com/CarsonKompon/2024/November/06_13-23-RubberyNeondwarfgourami.png
Fix not being able to right click a scene/prefab tab if it has unsaved changes
Make Right Click clear in the Collision Matrix since the tooltip says it should
SoundComponents now use the AudioDistanceFloat controls for Distance. Updated SoundPointComponent gizmos.
Gizmo.Draw.Grid can be drawn at an offset
Clothes Update
Add TrailRenderer.Emitting to control when new points should be added to the trail or not
Fix camera shader node typo with FarPlane
Make sure ListView itemsPerRow can't be zero
Fix map drop object for local maps
Dedicated Server Querying and Session Authentication (#1690)
* Authentication and encryption can now be enabled (by default)
* Session authentication is added for authentication tickets - this is what makes the player count go up on a server or down when they leave
* Dedicated servers use a Fake IP and can be connected to either by their Fake IP or by their associated Steam Id
* Dedicated servers can be queried from the master server using the GameSocketShare mode and so can now be fetched in-game for displaying in some UI later (Steam Server Browser does not display them due to using Fake IP)
* Added Rich Presence support for players who are connected to a dedicated server (and other players can join the game)
* Fixed some issues with headless mode such as when things were attempting to use ISteamFriends or some texture methods
* Stale connections are properly disposed of and cleaned up within a network system where in some cases before they were not
* Ensure that we disconnect from the network system when closing the game/app, this makes sure that the Steam Game Server is properly shut down
* Fixed / implemented Steam Game Server callbacks
* Moved Steam Network Sockets configuration to C# and set them in the right place now
* Ensure that we disallow a player to connect to a dedicated server if there are no player slots remaining
Add +hostname support for dedicated servers. For now, just so we have a way of seeing them, bundle dedicated servers in with other lobbies when querying lobbies so they show in the lobby list for a game.
Use AppIsDedicatedServer() to determine if should print warning log in texturebase. Don't run Panel.TickInternal if we're a dedicated server - makes no sense for Panels to even exist.
Make dedicated server console window title s&box Dedicated Server
We can omit this warning too if we're a dedicated server
Create assets/folders from sidebar folder nodes
Fix asset type filters excluding compiled assets that should be shown, resolves Facepunch/sbox-issues#6814
Tidy/refactor search widget, asset type filtering works in both flat and normal views
Make sure picker-enforced filters are shown in the search widget, disable user editing
Implement stubbed Search Bar in HomeWidget, moving it outside of the filters popup
https://files.facepunch.com/CarsonKompon/2024/November/07_07-14-FakeMillipede.mp4
Use error model for sceneobject when model has no valid render meshes
Do the same for scenemodel
Cloud browser: maintain location query when searching, clear facet selection with sidebar shortcut
Remove unused folder node logic for cloud locations
Skip dropdowns for facets included in the base/location query
Fix LobbyCard NRE
fix glass vtex
Fix some compiled assets wrongly being hidden, Facepunch/sbox-issues#6814
Categorize Create Asset menu, can create code files, add templates for compute, material, unlit shaders
Use GameResource.Category in New Asset menu
Give built in resources categories too, merge with gameresources
Create templates for c# empty, component, razor code files and compute, material, unlit shaders
Update Refit
Update Facepunch.XR and defs to 24b8e70e5c89d04b3f42d8b022bf97e05b82349f, adds check for headset/runtime availablity
VR initialization changes - always load VR extensions if there's a runtime and headset available, so we can init mid-session
Editor: Make ToggleSwitch look nicer
Add toggle switch in editor for VR
https://files.facepunch.com/alexguthrie/1b0711b1/sbox-dev_k3x5LXNKca.png
When creating a Sound Event, the file extension is now replaced instead of appended. Resolves Facepunch/sbox-issues#6816
Update Facepunch.XR to 1dce6d64669f0c19b0e43936bf53b1770d50a6f8, cache HasHeadset value
Don't build VR Toggle Widget if there's no headset or runtime
Cache native physics body shapes so GetShape can have direct access to them
Disable rendering on sceneobject when model renderer uses model that has no valid render meshes
Fix opening .action resources
Fixes Facepunch/sbox-issues#6841
Fix Create/Save File Dialogs opening in the folder above your current directory
Fix Asset Browser NREs when filtering by file extension and file has no extension
Menu refresh
* razor: Invalidate render tree when setting RenderFragment - fixes sections of razor ui not updating until hovered
* updated menu UI
* deleted old menu styles
Hooked up Texture Editor Browser and gave it the proper Filter type
Filtering by Image in the Asset Browser now shows all supported file types instead of just JPG
Fix [Feature] properties not being added to a ControlSheet when non-Feature properties don't exist. Resolves Facepunch/sbox-issues#6842
Fix Select Map button
Remove unused
Fix clicking map opening two modals
Fix Map modal buttons
Fix can't join game
Fix server list modal broken design
Fix game/map modals not hotloading
Fix binds modal
Fix review modal
Remove [StyleSheet] from everything, because it's not needed now
Use ResourceName as default name for prefab templates instead of just adding an empty entry
Prevent "General" tab from displaying even if a Component has no Features
Fixed the Main Menu OrganizationModal
Add hover/press sounds to packages in games/maps list, prevent x-scrolling.
Selected Tags in PackageTagFilters will still show up if their results are 0, so you can remove the tag instead of it being hidden
Clothing Update
Add PhysicsBody.IsTouching( body )
Rework triggers to check for exit events at the end of physics step, should be more reliable than ref counting touch events
Fix touching colliders only being added to triggers
Fix PhysicsBody.IsTouching returning too early
Reduce memory allocations in PhysicsShape::GetTriangulation
Runs around 35% faster with the changes in my use case (1100μs avg -> 700μs avg)
Latest services api
Expose news api in Sandbox.Services.News
Add MenuUtility.GetPlayerFeed( take )
Add apis to get notification counts, mark read, get array of latest notifications
Add DateTime.Humanize(), TimeSpan.Humanize()
Add number.ToMetric() (1100 to 1.1k)
Fix clicking packagecard title opening website
Fix settingspage button heights
Added notifications
Fix NRE in trigger rework
Add Package.ThumbTall and Package.ThumbWide
Fix button href debug
Player feed
Delete Cardboard Trousers
Delete office skirt
Delete Cardboard Chest
Delete Dry Suit
Delete Hivis Jacket
Delete LongSleeve
Delete smart jacket
Delete bucket helmet
Delete Chefs Skull Cap
Delete Leather Gloves
Delete Long White Gloves
Delete Army Gloves
Delete V Neck Tshirt
Delete Buttoned Shirt
Delete Chainmail
Delete Longsleeve Shirt
Delete Priest Shirt
Delete Smart Shoes
Delete Necklace
Delete Stylish Glasses
Delete Diving_Rebreather
Delete chest armor
Delete eye cover
AchievementDeck
Fix Integer Control Widget when nullable
Clothing updates
Fix store page not handling more than 2 items
Front page
Fix menu being fucked for one frame after switching from avatar editor
Lets have a name tag
Scene tweak
Add backlight
.clothing File updates
Revert trigger changes
When applying clothing, try to avoid error models by pre-evaluating the list
Add mainmenu default font size so it's not tiny by default
Change hub icon
Hotload ignore Refit Fixes Facepunch/sbox-issues#6843
Merge pull request #1693 from Facepunch/optimize-physshape-triangulation-allocations
Reduce memory allocations in PhysicsShape::GetTriangulation
Support for @ key razor attribute, Facepunch/sbox-issues#4103
InteropGen: Add IsError to resources
Model.IsError propertly detects when we're error.vmdl
Applying clothing correctly detects invalid models
Fix jeans using the wrong model location
Fix settings apply button not working
Fix storage page
Fix menu missing material
Humans: re-enabled automatic citizen-to-human animation hack for now while proper animations are being worked on
Fix Popup Panels not closing when in game (but worked in menu)
Sausage toggle
Left the wrong model enabled
Body Group Fix
Human Bodygroup adjustments - Clothing fixes
Service update
Save/load avatar to/from the cloud
.Clothing fixes
Some changes to time sync. Seems to fix Facepunch/sbox-issues#6865 locally. Needs re-test.
Fix popup being orphaned when clicked on
Set in_editor ub richpresence when in editor
Popup supports AboveCenter
Stop making the popups red!
Friends in footer, delete friends list
Change notifications to a real popup
Start putting the party system back together
Some additional troublesome Vulkan layer disables
Update documentation for methods in INetworkListener to indicate that they're only called for the host.
Add net_fakelag ConVar. It's working for both Steam Networking Sockets and TCP / local instance. Can also be changed in the editor like this https://files.facepunch.com/conna/1b1211b1/sbox-dev_jpOfxVrwEr.mp4
Also commit this important file
Rework triggers to check contact points instead of ref counted touches. Add ITriggerListener.OnTriggerEnter/Exit for game objects that contain multiple colliders
Hide "available parties"
Update clothing
Add NETSDK1138 no nowarn
Make writing clothing more deterministic
When dressing, if we have a citizen model - but not a human model, make clothing invalid
Merge branch 'master' into net9