17,272 Commits over 1,338 Days - 0.54cph!
Can save/restore in editor style edits https://files.facepunch.com/garry/037591e3-f19e-49f0-92a3-030b545250a0.mp4
Citizen/animgraph: small bits of cleanup
Revert "Saves Games MVP (#722)"
This reverts commit b129f0e185d29828791ed92fbe76a0ace0fedb63.
Saves Games MVP (#722)
* Initial commit
* Add support for SavedGames package meta using SavedGameSettings class
* Start trying to show saved games in lobbies. Add simple project settings page
* Add Metadata class (extend dictionary, add some methods so don't have to deal with JsonElement bs).
* Add SavedGameCard, SavedGameRow and update SavedGames. Display them all. Move GetSavedGames to package(?)
* Fixed paths
* Simply page in project settings. Add map dependent option.
* Automatically clear current saved game if selecting a different map
* Update current map to one dictated by the current saved game
* Add CachedSavedGame and GetSavedGame( string title )
* Invalidate cached saved games for a package when a game is saved
* Some cleanup - don't cache (for now)
* Use a file watcher and only update saved game file cache when a new one is added or removed
* Remove unnecessary selection border
* Clear current saved game selection when changing target gamemode
* Auto update map lobby to saved game map if map dependent - alter SavedGames buildhash to rebuild if any saved game metadata changes
* Rename
* Early out of metadata is null (dont render)
* Add MapPackage to condition
* Auto update map when selecting Saved Game card regardless of if project is map dependent
* Set correct map dependency value in saved games page at start
* Automatically clear selected saved game if it is now invalid (version difference, doesnt exist)
* Casing consistency
* Some refactoring and allow lobby owner to specify a Target Saved Game Name in the Server Settings. Games can choose to use this hint when saving to decide on a save name
* Fixed name
* Auto format saved game file names
* Use StringComparer.OrdinalIgnoreCase for Metadata class
* Further refactor
* Fix casing
* SavedGame class. Merge .meta & .save. Remove option to set name of saved game in lobby. Other stuff.
* Internal deserialize
* Rename some methods to avoid confusion with the byte[] data
* SetData methods that make sense
* Throw an exception if trying to save a game with no data
* Added SavedGame.Read and SavedGame.Write utility methods
* Added SavedGame.GetFileName
* Added SavedGame.Time (returns DateTime when it was last saved)
* Remove unused using statements
* Some PR changes
Let's remove Read and Write. People can just use BinaryWriter/BinaryReader with the raw byte array if they want
Remove unused using statements
Added SavedGame.Time (returns DateTime when it was last saved)
Added SavedGame.GetFileName
New Hair - Thinning Short
https://files.facepunch.com/daniel/1b1311b1/sbox-dev_PNZGQk5dbc.jpg
https://files.facepunch.com/daniel/1b1311b1/Photoshop_ibV1wI1aLn.jpg
LODs to come asap
Added SavedGame.Read and SavedGame.Write utility methods
Throw an exception if trying to save a game with no data
Citizen/animgraph: added Roll_N animation + graph implementation
Speed controlled through a new, generic "speed_scale" float.
SetData methods that make sense
Rename some methods to avoid confusion with the byte[] data
SavedGame class. Merge .meta & .save. Remove option to set name of saved game in lobby. Other stuff.
Internal deserialize
Don't serialize NodeInput.IsValid
Make color node use color property
Write generated shader to bullshit placeholder resource for now
Some cleanup
Use default a and b values for binary nodes when input isn't valid
Cut down on file reading in CreateFromVfxFile so eventually it can be created from memory
Rename vfx create functions to make more sense
Write generated shader to temp dir
Don't generate code if graph compiler has errors
Run shader compiler process for generated shader
Tidy up Lobby class
Add a social bar along the bottom of the menu, put the party deck here
Make PartyDeck suit the bottom left a bit better
PartyDeck razor only view, split logic into static Party class that wraps the lobby
Messed around with PartyDeck some more
Party chatbox
Fix missing using from rebase
Style adjustments to PartyDeck, give a crown to the current party owner, add horizontal padding to player-info
Move Lobby chat to menu chatbox, swap chat type with tab
Style tweaks
Chat channels merge together but display their colour
Simple chat entry style I'm happy enough with for now
When create/join lobby, switch chat channel to lobby. On leave switch back to party automatically
Open Steam profiles in overlay when clicking name in chatbox (will likely put behind a context menu)
Make avatar smaller, more margins, don't shit self on overflow, don't overlay on everything all the time (I'll code something better)
Align chat messages with user info better
Add an unread messages indicator and system messages
Show the latest message over the chat box, dismiss on hover
Fix Popup PositionMode.AboveLeft not working on different screen scales
Stop abusing BuildHash, only need to rebuild the chat messages on new message
Fix showing latest message, add some system messages to test it + unread
Silly hover thing
Fix Popup PositionMode.AboveLeft not working on different screen scales
Stop abusing BuildHash, only need to rebuild the chat messages on new message
Align chat messages with user info better
Add an unread messages indicator and system messages
Show the latest message over the chat box, dismiss on hover
Fix tests to reflect new behaviour of parser
Optional entries for surface shading
Citizen/animgraph: hooked up ledge grab idle/shimmies to "special_movement_states" enum
(This may change later)
Citizen: aligned ledge animations so that the character is centered (ledge isn't at X=0) + added rough pull up animation
Tidy up Lobby class
Add a social bar along the bottom of the menu, put the party deck here
Make PartyDeck suit the bottom left a bit better
PartyDeck razor only view, split logic into static Party class that wraps the lobby
Messed around with PartyDeck some more
Party chatbox
Fix missing using from rebase
Style adjustments to PartyDeck, give a crown to the current party owner, add horizontal padding to player-info
Move Lobby chat to menu chatbox, swap chat type with tab
Style tweaks
Chat channels merge together but display their colour
Simple chat entry style I'm happy enough with for now
When create/join lobby, switch chat channel to lobby. On leave switch back to party automatically
Open Steam profiles in overlay when clicking name in chatbox (will likely put behind a context menu)
Make avatar smaller, more margins, don't shit self on overflow, don't overlay on everything all the time (I'll code something better)
Improve Breakables handling of multi physbody entities
Skip over empty styleblocks
Fix opening stylesheet location when seemingly not clicking the label
Can toggle :hover etc in style editor
Recompile ui_text shader so it uses new scissoring, fixes them clipping badly with transforms
Citizen: raised the ledge animations to 150cm (59in)
Can edit styles in panel's inspector
Try to fix "path must be absolute" exception
Fat gas cylinder
texture tweaks
Merge branch 'master' of sbox
Trolley
Trolley gibs, adding so bug can be fixed with physics
Merge branch 'master' of sbox
New Standard T-shirt and Monobrow!
Two pieces today, standard tshirt with a graphic T design, and a messy monobrow.
https://files.facepunch.com/daniel/1b1211b1/Photoshop_HdLEdOAfPV.jpg
Glow.Material made into a property, get rid of the Error List warning
Fix Editor labels not having callbacks
Can click stylesheet name in panel inspector to open it
Provide filename for stylesheets defined in razor files
Open context menu after dragging an unconnected wire
Use orbit cam for preview, makes more sense
Center on selected error node
Selecting error selects node
Add node types automatically
Show compile errors in output
Copy error to clipboard
Add menu option to focus node with error
Allow optional VS_INPUT and PS_INPUT, also allow optional entry points
Add helpers for determining which shader stage we're processing
Create post_process.hlsl, provide default entry point for vertex and input
The example post processing shader can now just be a pixel shader instead of everyone copying the exact same vertex shader all the time
Base class unary node because it's gonna be the same shit for each