243,075 Commits over 3,898 Days - 2.60cph!
Scene.Title, Scene.Description are obsolete
Fix JsonObject.GetPropertyValue not always returning defaultvalue
Add SceneInformation component, replaces Scene.Title, Scene.Description - can create your own meta providers, works in prefabs
Add SceneFile.GetMetadata( name )
Add PrefabFile.GetMetadata( name )
Use SceneMeta instead of Name/Description
second noise layer for coverage
Remove mock GameObject/Prefab code from managed MapEntity
Add CMapGameObject map node with managed counter part that wraps a GameObject
Hammer world's Scene uses HammerSceneEditorSession
Add HammerManagedInspector that can take over if it likes the MapNode. We only like MapGameObject for now
Run Scene.EditorDraw() on MapView for gizmos, remove old Entity.DrawGizmos
Hammer: Create GameObject Test option
More explicit HammerEvents
Managed map node callback interface, a little convoluted because of mapdoclib <-> hammer <-> managed. But this is easier to do callbacks and can return values
And the managed side
Serialize/deserialize CMapGameObject
CMapGameObject::GeneratesEntityModelGeometry()
Expose CMapGameObject JSON to MapBuilder via IHammerMapLoader
Collect CMapGameObjects, compile them into scene.json inside the vpk and let MapInstance load them (Very hacky code needs cleaning up)
MapWorld.Scene sets a Scene.Source in an attempt to make AG happy
Tie Meshes to GameObject button
Add def for CMapNode.GetRootDocument()
ActionGraph source location refactor
Add MapSourceLocation, fix editing action graphs in .vmap files
Check for MapSourceLocation in ActionGraphView
Open source map when inspecting graph from .vmap
Parent action graph editor to hammer window if editing map graph
Push AG serialization options when saving map game object
Makes sure we replace any cached versions of graphs
Implement setting HammerSceneEditorSession.HasUnsavedChanges
Fix action graphs from maps not caching correctly
Only OpenContainingResource if not already open
Fix action graphs in unsaved hammer maps
Associate graphs with a HammerSceneEditorSession if open in hammer,
which is resilient to renaming etc
Normalize map path name
Can tie map meshes to GameObjects, these get built into models and any components on the GameObject with a Model property get populated by it
Trim world builder
Implement CMapGameObject::Copy
Sync native transforms to managed
Scene changes (new component, prop edits, etc.) mark Hammer map as having unsaved changes (otherwise it refuses to save)
Several assumptions of SceneEditorSession.Active.Scene should be GameObject.Scene
Clean up Entity tool as you can no longer add/target games this way
Kill Hammer EntityIO buttons (unusable)
CMapGameObject overrides child selection
Hammer GizmoInstance.Input.IsHovered is controlled by native MapView IsActive()
Add jsoncpp so we can read/write json properly without fucking around with kv3
Replace manual scene serialization with jsoncpp, can map guids to map meshes better and it's cleaner
Clean up MapView tick and scene render list
Hammer sync managed gizmo selections with native selection set (authoritative)
Fix warning
Updates to intro area and blockouts
Allow pasting directly from name
- `paste cars1` will load "cars1" and paste it while persisting current clipboard
Filter entities when pasting instead of copying (allows you to change filters after copying a single time)
- change convars from "copy_npcs" to "paste_npcs"
- filter entities that have no parent when pasting
- add option to filter vehicles
Client trigger, art root setup.
Initial basic facing nearest player logic.
Lets try making the player face correctly again
Sub intro cutscene text
Swap to models of platforms
setup admire anim for metal shield
Fixed rotate
Phys trace
Rotate player onstart to face correct direction
Add "Set to None" option to InputActionControlWidget
https://files.facepunch.com/tony/1b2211b1/0WMKcWO3Z1.png
Third person camera clipping
Use the same collision rules when tracing
Better handling when third person camera is too close
Don't position camera in editor
Switch the rest of the test scenes to use new player controller
Remove tags for moving
Phys character updates
Snakes can now reposition after striking.
Added variables and convars for reposition chance, min/max radius and multipliers.
Merge: from main
Tests: none
Some general cleanup, moved tool to Tools/Cinematic/Pose Tools
Added Undo support to Pose selected, pose random and paste pose options
Merge: from requesttrees_spike
This reduces overhead of streaming grid cells of tree impostors from 3.5m to 1m on a 4.5k server.
Tests: 2 editors(1 server, 1 client) in same session - streamed no changes, removed 1 tree then re-streamed, and streamed with disabled lazy serialization
Avatar field in PoseTools will now persist between editor restarts (saved in EditorPrefs)
Fixed copy/paste buttons not working in PoseTools
merge from kayak_perf_fix
Merge: from main
Tests: none
merge from oases_topology_fixes
merge from voice_chat_cctv
merge from world_update_2
merge from nuking_old_cliffs_in monuments
Leaderboard backup, run #
14837
Correctly scope to current scene when pressing [Button]
Fix gizmos being unavailable during editor tick
IKReachOut ignore player body
PlayerGrabber ignore player body
Try to auto assign player body renderer
No collision sounds on player body
Add button to automagically create the player body
Ensure PhysicsCharacter is axis aligned on startup, but rotate body/eyes
Update a bunch of scenes to use the Physics Character
Fix gizmos being unavailable during editor tick
Correctly scope to current scene when pressing [Button]
handle selection box while camera moving
movement handling for arena bounds and better structure avoiding
offset when moving multiple survivors; change deceleration handling
movespeed tweaks
More docstring elements
https://files.facepunch.com/ziks/2024-10-21/sbox-dev_l5UcrtR1tm.png
Courtesy of bringing my laptop on some long train journeys this weekend
Clothing Updates
Show unambiguous ident subdirectory path in project creator window, resolves Facepunch/sbox-issues#6609
Bring back automatic default project names (My Project 1, 2 etc) now we use idents for project subdirs (and have for ages)
Smite the random third-party cloud references in core assets
Clothing Updates
Move joint attachment mode and local frames to base joint, all joints should have these
Unfuck native physics interface for creating joints, they should all pass in local frames, it's up to C# to calculate local frames for desired setup
Merge branch 'master' into asset-browser-2
test map, pause menu work
Iterating.
Large wall variant.
Add refresh button to the top of the era editor to refresh all items
- used if you change prefabs without using GUI