userConnacancel
reposboxcancel

1,239 Commits over 1,341 Days - 0.04cph!

1 Year Ago
Allow local packages in game menu if we are not ourself a remote package. Fixes sboxgame/issues#3614
1 Year Ago
Fix NRE when trying to mount packages in game menu. Fixes sboxgame/issues#3806 Include token hash in log when unable to find string token
1 Year Ago
Added some extra logging and safety in reading inputs to try investigate sboxgames/issues#3886
1 Year Ago
Fix confusing comment
1 Year Ago
Fixed AE_CL_PLAYSOUND anim events not playing for non-networked client-only entities
1 Year Ago
Minimize conflicts
1 Year Ago
Rider DotSettings
1 Year Ago
Revert AttachSteamAuthTicket
1 Year Ago
Authorization option for WebSocket, remove SetRequestHeader (duplicate functionality)
1 Year Ago
Add SetRequestHeader
1 Year Ago
Revert DisposeAsync, it actually isn't needed. Only dispatch Disconnect if we're connected. Add EnableCompression to set deflate options if their socket server supports.
1 Year Ago
WebSocket implements IAsyncDisposable. When disposing websocket because of TaskSource cancellation, do so async and complete the WS close handshake if we can. If we receive a ConnectionClosedPrematurely message, only actually disconnect + dispose if the connection is no longer open. Call TaskSource.OnSessionEnded in GameMenuDll when resetting environment.
1 Year Ago
Clientside Anim Fix (#1188)
1 Year Ago
Delete unused method Fix and simplify condition that could never be true
1 Year Ago
When setting GameLobby.Game set withLocal to true so that we actually load the local version if we're starting from a local version. This also fixes FileSystem.Data not using the folder with #local in when it should be.
1 Year Ago
StartServerAsync empties savedgame, gamesettings, extensions ConVars Create Game on default menu actually respects Min/Max players in the project settings Using min doens't make sense there actually
1 Year Ago
Saving a game stores current MaxPlayers in metadata. Fixed default menu Load Game not working, make it look OK.
1 Year Ago
Defer OnAfterTreeRender until end of tick to ensure children processed first and references set (#1180) * Defer OnAfterTreeRender until end of tick to ensure children processed first and references set * Only update (run pending events, tick, scroll velocity) after render once - reset that flag on hotload if render tree becomes dirty * Revert "Only update (run pending events, tick, scroll velocity) after render once - reset that flag on hotload if render tree becomes dirty" This reverts commit aae36e1777d11a5649c24985c0f8802ced3397b4.
1 Year Ago
Revert "Only update (run pending events, tick, scroll velocity) after render once - reset that flag on hotload if render tree becomes dirty" This reverts commit aae36e1777d11a5649c24985c0f8802ced3397b4.
1 Year Ago
Only update (run pending events, tick, scroll velocity) after render once - reset that flag on hotload if render tree becomes dirty
1 Year Ago
Max 32 chars for ident edit, don't show sandbox gamemode twice Add icons for all file menu items Add "Open in Editor" context menu option to ProjectRow, shows up for library/tools/addon projects Make StartScreen a BaseWindow, add HasMaximizeButton Add modal package selector to main menu, use `Game.Overlay.ShowPackageSelector( query, onSelect )` https://files.facepunch.com/tony/1b1811b1/sbox_0pbOdyXzXM.mp4 Don't clean up Release path when running processor codegen shit, fixes razor gen when testing release builds Revert "Don't clean up Release path when running processor codegen shit, fixes razor gen when testing release builds" This reverts commit 738d6ef11f5591743600177ff476b7d5138f9741. Trace.RunAll() - return empty array instead of null for no results Fix copying text throwing exception Use s&box logo as window icon for welcome screen 👋 Don't spam Draw: No Material Mode? from RenderTools::Draw, it's valid for there to be no valid mode when you're under tool vis modes Fix crash when dragging cloud models quickly in/out of MapView Merge branch 'master' into render-frag-ref-fix
1 Year Ago
Defer OnAfterTreeRender until end of tick to ensure children processed first and references set
1 Year Ago
Fix setting GameLobby.ConVars not checking correct key for input Remove Map options for Game projects (this stuff to be handled in game menus only in future) Remove map select stuff from LaunchConfig Remove validate map stuff from GameMenuInstance Obsolete ValidateMap, MapSelectionMode and MapList
1 Year Ago
Add .idea to .gitignore
1 Year Ago
Scrape Effects (#1139) * Add props to Surface for impact decal and scrape effects / decals * Use ContactPoint + SurfaceNormal to pass into AddImpactSound * Let's add decals and particle effects for impacts but try only doing it if speed > 30 - maybe we configure this per surface? * Add PhysicsImpact struct and use that to seperate effects for Hard and Soft impacts in Surface description (decals + fx) * Correctly spawn soft or hard physics impact particles + decals based on squared speed * Add normal from first valid manifold on contact to friction events to pass to C# * Enable/Disable physics impacts and scrape events as props for now, pass normal from fiction event to AddFrictionSound and create effects where necessary * Also grab contact center from first manifold and pass to C# * Use contact pos for decals + effects, try to base effect frequency on energy volume scale, fix decal placement remove particles on friction effect stop * Set destroy time to 0.5 (this is a failsafe anyway) * Don't have particles follow entity, do it ourselves so we can set to actual contact pos * Set forward for scrape particles to contact normal * Use method for getting inherited surface values if necessary to avoid repeating same code * Add Mass and Direction named control points for friction particles. Mass is body mass, direction is body velocity normal. CP0 is already setting position and contact normal * Lower destroy time for effects * Reorganize scrape data in surface def, lower default values. Don't fallback to rough by default. If it's a smooth scrape and there's no effects for that - do nothing by default * Surface is considered smooth by default, can set roughness factor higher for rough surfaces... * Get material for triangle by index for shape 2 on friction events should fix all friction events against world surfaces having hit surface be "default" * Store friction hit surface (last) and if we've changed hit surface stop any previous effects and sounds * Remove unused prop * Remove unused var * Make EnableScrapeEffects and EnableImpactEffects internal for now * Make FrictionEffects a dictionary * Call PhysicsGameSystem.Shutdown on GameLoop shutdown to ensure vars cleared * Add an Intensity named control point value (0-1) for scrape particle effects to use
1 Year Ago
Set default value if property does not exist in AddDictionaryPropertyInt as we do in AddDictionaryProperty<T>
1 Year Ago
Add an Intensity named control point value (0-1) for scrape particle effects to use
1 Year Ago
Make EnableScrapeEffects and EnableImpactEffects internal for now Make FrictionEffects a dictionary Call PhysicsGameSystem.Shutdown on GameLoop shutdown to ensure vars cleared
1 Year Ago
TickRate Project Settings (#1134) * TickRate project settings * Def tick rate 50 as it was * Obsolete Game.TickRate.set * take tickrate stuff out of serverconfig
1 Year Ago
Remove unused var
1 Year Ago
take tickrate stuff out of serverconfig
1 Year Ago
Obsolete Game.TickRate.set
1 Year Ago
Def tick rate 50 as it was
1 Year Ago
TickRate project settings
1 Year Ago
Remove unused prop
1 Year Ago
Store friction hit surface (last) and if we've changed hit surface stop any previous effects and sounds
1 Year Ago
Add Mass and Direction named control points for friction particles. Mass is body mass, direction is body velocity normal. CP0 is already setting position and contact normal Lower destroy time for effects Reorganize scrape data in surface def, lower default values. Don't fallback to rough by default. If it's a smooth scrape and there's no effects for that - do nothing by default Surface is considered smooth by default, can set roughness factor higher for rough surfaces... Get material for triangle by index for shape 2 on friction events should fix all friction events against world surfaces having hit surface be "default"
1 Year Ago
Add props to Surface for impact decal and scrape effects / decals Use ContactPoint + SurfaceNormal to pass into AddImpactSound Let's add decals and particle effects for impacts but try only doing it if speed > 30 - maybe we configure this per surface? Add PhysicsImpact struct and use that to seperate effects for Hard and Soft impacts in Surface description (decals + fx) Correctly spawn soft or hard physics impact particles + decals based on squared speed Add normal from first valid manifold on contact to friction events to pass to C# Enable/Disable physics impacts and scrape events as props for now, pass normal from fiction event to AddFrictionSound and create effects where necessary Also grab contact center from first manifold and pass to C# Use contact pos for decals + effects, try to base effect frequency on energy volume scale, fix decal placement remove particles on friction effect stop Set destroy time to 0.5 (this is a failsafe anyway) Don't have particles follow entity, do it ourselves so we can set to actual contact pos Set forward for scrape particles to contact normal Use method for getting inherited surface values if necessary to avoid repeating same code
1 Year Ago
Use method for getting inherited surface values if necessary to avoid repeating same code
1 Year Ago
Set forward for scrape particles to contact normal
1 Year Ago
Also grab contact center from first manifold and pass to C# Use contact pos for decals + effects, try to base effect frequency on energy volume scale, fix decal placement remove particles on friction effect stop Set destroy time to 0.5 (this is a failsafe anyway) Don't have particles follow entity, do it ourselves so we can set to actual contact pos
1 Year Ago
Add normal from first valid manifold on contact to friction events to pass to C# Enable/Disable physics impacts and scrape events as props for now, pass normal from fiction event to AddFrictionSound and create effects where necessary
1 Year Ago
Add PhysicsImpact struct and use that to seperate effects for Hard and Soft impacts in Surface description (decals + fx) Correctly spawn soft or hard physics impact particles + decals based on squared speed
1 Year Ago
Use ContactPoint + SurfaceNormal to pass into AddImpactSound Let's add decals and particle effects for impacts but try only doing it if speed > 30 - maybe we configure this per surface?
1 Year Ago
Add props to Surface for impact decal and scrape effects / decals
1 Year Ago
WIP: Impact and Scrapes (#1072) * strip impact sound stuff from native * put it in c# commented out for implementation there later * Strip CPhysSurfacePropertiesSoundNames * Add GetFrictionNotifications() to IPhysicsWorld * Add FrictionEvent, call c# with friction notifications * Add OnFrictionEvent c# side, add some log for test * Add GetFrictionNotifications override to CPhysicsWorld. put note to call shutdownfrictionsounds in entity InternalDestruct for later * Start re-impl impacts in c# * Remove some logs, ensure impact sound plays from body position * Strip m_audioParams / CPhysSurfacePropertiesAudio * Add ScrapeRough/ScrapeSmooth to Surface sound def, add RoughnessFactor and RoughThreshold * Reorganize code + implement friction sounds in theory * Call StopFrictionSounds in entity destruct * Add friction sound to list.... some debug logs... * Reverse MathX.approach params (it was this way in native :S) * Add some stuff to entity similar to StartTouch/Touch/EndTouch but for scrapes - revise later * Use ScrapeEvent incase we need to add/change params later * Call it ScrapeEventData like CollisionEventData and move it out of Entity * Fix access violation * Test * Remove ScrapeEvent / Entity.Start/EndScrape stuff for now we can look at that later
1 Year Ago
Remove ScrapeEvent / Entity.Start/EndScrape stuff for now we can look at that later
1 Year Ago
Test
1 Year Ago
Muscley Citizen Skin (Work in Progress) https://files.facepunch.com/daniel/1b0111b1/Photoshop_BTmDLMnH03.jpg Initial asset for the Muscley Citizen. In need of some general adjustments and fixes. A more defined set of legs and hairy back coming ASAP. As well as skin colour variations. Fix skin material not being applied to SceneModel clothes Networkable Component References (#1056) * add componentid to IComponent * make component id public - add internal findbyid method, add lookup dict for comp by id * add/remove components from lookup where appropriate * Add VarIComponent to support [Net] IComponent types * Add replicate codegen * VarIComponent -> VarEntityComponent, make ComponentId internal again, remove from IComponent interface. in Replicate..Component search for derived types from EntityComponent * FindById should just return an EntityComponent now FPArms: explicitly reject weapon_root from existing weightlists FPArms: add notes on IKChain nodes Soundscapes always transmit, should fix long initial delay FPArms: fixed left arm IKchain New Skin Variations for the Muscley body Shadingmodel Declutter (#1041) * Start cleaning up material and shadingapi * Allow using functions inside of HLSL structs https://i.imgur.com/t1AwQzr.png * Replace all GatherMaterial bullshit with Material::From() * Remove Material parameter references to things that aren't implemented yet, put TransformNormal in normals file * Cut everything from ShadingModel too and let's start from a static class * Redo light api on shaders, start implementing new dynamic light under this structure, move raytracing shit to it's own folder, add sample shadingmodel * Allow structs in structs ( HLSL 2021 and forwards ) * Most of static light with the new api * Fix shadowing on indexed lights on new light api * Move shadingmodel structures to shadingmodel.hlsl * Fix light static assignment for lighting api, fix shadowing for them too * Stub for EnvironmentMapLight * Implement cubemap light * ShadingModelValve * light.envmap.hlsl becomes light.environment.hlsl for better readability, add debug views to material api, CUSTOM_MATERIAL_INPUTS preprocessor * AmbientLight * Sane implementation atmospherics and debug vis postprocessing for shadingmodel api * Finish debug vis, rename ShadingModelValve to ShadingModelStandard * Start rewriting blendable with new api, port glass to new api * Rewritten blendable shader * Refactor remaining shaders to new shadingmodel api, fix shadergraph not working, readd procedural.hlsl for shadergraph but fix typo on title Fix typo Games can define their own main menus Failing test reproducing #1063 Fixed #1063 New Beard + Adjustments to the zombie skin Hitboxes added to zombie skin, plus a new WIP Beard, will have quite a few adjustments in the future, also needs skinning adjustments and morphs, currently is just static on the face. Stop all sounds when leaving game(menu) Load GameResources from menu filesystem (allows sounds to load) We don't need to access the soundsystem via interfaces, we can live in the dll Bind CSosOperatorStack Implement IsMatchingType for generic type definitions Fixed IsMatchingType for required modifier types Don't warn about attempted fast hotload of generic method Compile fix (!) CSS Drop Shadows (#1069) https://files.facepunch.com/alexguthrie/1b0511b1/drop_shadow.png Video player (#1050) VideoPlayer class that decodes mp4 and webm from paths or urls and provides the texture and audio. ShaderGraph: common/proceedural ->common/procedural ShaderGraph: Only find nodes derived from ShaderNode ShaderGraph: Fix NRE when identing generated code procedural.hlsl isnt in common anymore Add blendmodes.hlsl until shadergraph just generates these functions ShaderGraph: Fix formatting on generated code Fix func_voxelsurface to the new way of getting the surface face Fix order of operations when rendering drop shadows Directly write to Logger during hotloads Include path and member in hotload log messages Allow nested FormattableStrings in log messages So that their args can be inspected too Modeldoc: Compile skeleton with ALL bones no matter if they're used in skinning or not Morph shapes for the Decorated Beard VideoPlayer.Play that takes a url checks if it's actually a url Limit input formats to mp4 and webm Whitelist mp4 and webm to avoid going any further than we have to Fix video player not playing from filesystem path Re-organize the sound classes Sound doesn't need to keep the hash around Sound wraps a SoundHandle Add AudioSystem.Play overloads to play from an entity Fix reading json color32 string not working Fix GameLog not printing all aggregate exceptions Fix transition time parsing Fix GetSavedGames typo Fix IPanel.Depth logic VideoPlayer: Fix repeat not working when user doesn't output sound on a video with sound Avoid threading assert in audio thread Fix border-image not drawing if background unset Support videos as background-image etc Add Texture.LastUsed - the number of frames since last used Texture has a ParentObject (so they can keep things like VideoPlayer from being garbage collected) Add IWeakInteropHandle to interopsystem, so c++ can reference c# objects that can get garbage collected VideoPlayer implement IWeakInteropHandle Add Debug/Full Garbage Collection VideoTextureLoader is weak, will let videos get garbage collected Remove Styles.TextBackgroundImage (not used) UI textures load as they're going to be used, rather than loading everything in the stylesheet Include member and instance path in hotload error reports RedirectFileSystem can resolve full filenames properly Fix Game.Audio not available in menu Fix videoplayer not playing video files (this isn't the correct fix, we should pass in the relative filename and check the extension on that) Failing test for when lambda signatures change Warn on lambda signature change, replace with error-throwing delegate Pass in video ext from managed so we can check that for input format When uploading a menu whitelist, pull in references of the wildcarded assets and add them to the whitelist too Log some more info when #1027 occurs Fix sboxgame/issues/issues/3394 TimeUntil unit tests Fix Time.Now / Time.Delta not being updated properly C# side in PostBotTick Merge branch 'master' of github.com:Facepunch/sbox VideoPlayer: Refactor to remove audio filtering bullshit, resample at 44100 2 channels Editor: Sort input actions by their group name alphabetically Apply mask image & border images in the same way as background images CSS: Fix parsing multiple filters, add a test for it Obsolete SpeechRecognition.Listen. Add SpeechRecognition.Start. Callback for SpeechRecognition.Start passes SpeechRecognitionResult with additional info: Confidence (0-1), how confident are we that this is the right result? And Success, did we find a match? The old SpeechRecognition.Listen method routes through this for backwards compat for now. Fixes sboxgame/issues#2562 Merge branch 'master' of github.com:Facepunch/sbox Merge branch 'master' of github.com:Facepunch/sbox Use init instead of setter for SpeechRecognitionResult properties Actually have SpeechRecognition.Start take an IEnumerable<string> for choices - lets you use string[], Lists, method returning IEnumerable etc Support passing no choices to listen for any text Activity in a game's menu counts as activity in the game Games with custom menus can define their own loading screens https://wiki.facepunch.com/sbox/loading_screen AssetBrowser: Add ability to rename single files Fixed Sound.Stop/SetVolume/SetPitch/SetRandomPitch/SetPosition not working Merge branch 'master' of github.com:Facepunch/sbox Merge branch 'master' into impacts-and-scrapes
1 Year Ago
Fixed Sound.Stop/SetVolume/SetPitch/SetRandomPitch/SetPosition not working Merge branch 'master' of github.com:Facepunch/sbox