S&box: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Rewrote some of the more difficult to read portions, updated some of the word usage to more accurately represent the state of the game (Beta access is VERY different to a Developer preview, in that a Developer preview is looking exclusively for devs))
Line 8: Line 8:


<!-- Left -->
<!-- Left -->
{{s&box|4}} is an engine developed by [https://facepunch.com/ Facepunch] studio. Initially, the development was based on Unreal Engine 4, but as soon as {{hla|4}} came out, Facepunch immediately requested the engine of the newly-minted game. This received a positive response in the form of the 1st terabyte of source data, after which, in 2020, S&box's transition to {{source2|4}} was announced. This event was the first time that Source 2 was transferred to third-party developers.
{{s&box|4}} is a platform and game development toolkit developed by [https://facepunch.com/ Facepunch] studio powered by {{source2|4}}. Initially, the development was based on Unreal Engine 4, but as soon as {{hla|4}} came out, Facepunch immediately requested the engine branch of the newly-published game. A few weeks later Valve gave Facepunch access to the terabyte large repository, after which, in 2020, S&box's transition to {{source2|4}} was announced. This is the first (and currently only) time that Source 2 was licensed to third-party developers.


{{ModernNote|S&box is not a game! It is the name of a modified Source 2 with some set of tools and resources that you can use in your games and addons for them, created for [https://sw.facepunch.com/ S&Works].}}
{{ModernNote|S&box is not just a modding game! It is a complete package including a modified and fully featured {{source2|4}} engine toolkit with C# bindings, and a distribution platform named [https://sw.facepunch.com/ S&Works].}}


<br>__TOC__
<br>__TOC__


== User Access ==
== User Access ==
S&box is currently in closed beta testing. It is not possible to get access to the engine (as of May 5, 2022) due to the termination of the test recruitment in December 2021.
S&box is currently in closed developer testing, as of May 5, 2022, the automated queue has been shut down indefinitely due to the termination of the test recruitment in December 2021.


Previously, access was available from the addon developers [https://sbox.facepunch.com/dev/ page], which now takes care of redirecting users to the S&Works home page.
Previously, access was available from the addon developers [https://sbox.facepunch.com/dev/ page], which now takes care of redirecting users to the S&Works home page.
Line 28: Line 28:
== Addons ==
== Addons ==
S&box currently supports 4 types of add-ons:
S&box currently supports 4 types of add-ons:
* '''Games''' - addons that run through the main menu of the engine
* '''Games''' - addons that run through the main menu of S&box
* '''Maps''' - game locations that are addons for games
* '''Maps''' - Add-ons that typically house maps to be played by a game addon.
* '''Content''' - probably these are future addons for games (the publication is temporarily unavailable)
* '''Content''' - probably these are future addons for games (the publication is temporarily unavailable)
* '''Tools''' - improved or created-from-scratch editors, compilers, etc. designed to make your life easier (the publication is temporarily unavailable)
* '''Tools''' - From additions to existing editors to tools built completely from scratch, these addons are meant to help you improve, automate, or completely integrate your workflow into the engine, without having to build game-based or external toolsets.


{{ModernNote|There are plans for addons (Weapons, NPCs, etc.) for the games, as reported on the [https://wiki.facepunch.com/sbox/ S&box Wiki], but work is currently underway to improve the API, preventing Facepunch from focusing on developing the addon system from Garry's Mod. It's important to note that Sandbox—the official addon for S&box—first introduced a feature called [https://sw.facepunch.com/ S&Works], similar to [https://maurits.tv/data/garrysmod/wiki/wiki.garrysmod.com/index8f6f.html Garry's Mod Toybox]. S&Works, with its own website and support for all types of addons, allows you to download models and all their content on the go, so you can use downloadable props in real time without restarting the game.}}
{{ModernNote|There are plans for addons (Weapons, NPCs, etc.) for the games, as reported on the [https://wiki.facepunch.com/sbox/ S&box Wiki], but is a lesser priority to the API, the base toolset, along with the currently implemented addon types. As such, Garry's Mod-style addons are not currently implemented. It's important to note that Sandbox, (the official Garry's Mod style sandbox add-on for S&box) first introduced a feature called [https://sw.facepunch.com/ S&Works], similar to [https://maurits.tv/data/garrysmod/wiki/wiki.garrysmod.com/index8f6f.html Garry's Mod Toybox]. S&Works, with its own website and support for all (currently available) types of add-ons. It allows you to download models and all their content on the fly, so you can load props from S&Works in real-time without restarting the game.}}


== Maps ==
== Maps ==
[[File:Sbox-Hammer-6may2022.png|300px|S&box Hammer dated May 6, 2022|thumbnail]]
[[File:Sbox-Hammer-6may2022.png|300px|S&box Hammer dated May 6, 2022|thumbnail]]


Map creators are provided with a partially rewritten Hammer map editor.
Mappers are provided with a modified version of the Source 2 Hammer map editor, with some parts exposed for C# scripting for increased flexibility.


<h5 style="color: rgba(255,255,255,.9); font-weight: 400;">Addon control panel</h5>
<h5 style="color: rgba(255,255,255,.9); font-weight: 400;">Addon control panel</h5>
In the control panel, you can write supported games, thereby prohibiting the search for a map in the general list of maps for games that are not included in the list.
In the addons menu in the dev tools, you can restrict map selection for your game mode. You can limit it to specific curated maps or maps tagged with supporting the game mode.  


<h5 style="color: rgba(255,255,255,.9); font-weight: 400;">Publication</h5>
<h5 style="color: rgba(255,255,255,.9); font-weight: 400;">Publication</h5>
Currently, maps cannot be launched directly from the game, so they have to be released as a separate addon (one for each map). The map is published by clicking on a special button in the addon control panel.
Currently, maps cannot be launched directly from the game, so they have to be released as a separate addon (one for each map). The map is published by clicking on a special button in the addons menu in the developer toolkit.


<h5 style="color: rgba(255,255,255,.9); font-weight: 400;">Characteristics</h5>
<h5 style="color: rgba(255,255,255,.9); font-weight: 400;">Characteristics</h5>
Line 60: Line 60:
{{ModernWarning|The nav mesh has not yet been adapted for large spaces, which will cause your OS to freeze if the size of the available territory exceeds 32768 units. In the event of a freeze, the only way out will be an emergency shutdown of the computer. Turn off the navigation mesh in the map compilation window!}}
{{ModernWarning|The nav mesh has not yet been adapted for large spaces, which will cause your OS to freeze if the size of the available territory exceeds 32768 units. In the event of a freeze, the only way out will be an emergency shutdown of the computer. Turn off the navigation mesh in the map compilation window!}}


{{ModernWarning|There are problems in Floating point precision. Polygons start behaving incorrectly if you are too far from the zero coordinates (faint defects start after crossing 8 km, and extremely noticeable after 20 km)}}
{{ModernWarning|There are problems with Floating point precision. Polygons start behaving incorrectly if you are too far from the zero coordinates (faint defects start after crossing 8 km, and are extremely noticeable after 20 km)}}


== Shaders ==
== Shaders ==
S&box supports HLSL Shader Model 3.0, 4.0 and 5.0. You can create your own shaders and customize their interface for the material editor.
S&box supports HLSL Shader Model 3.0, 4.0 and 5.0. You can create your own shaders and customize their interface for the material editor.


{{ModernNote|At the moment, S&box does not have any interfaces for editing shaders, so they are written manually.}}
{{ModernNote|At the moment, S&box does not have any visual scripting or any other form of shader generation, leaving the end-user to write shaders manually in a language similar to HLSL}}


== Sounds ==
== Sounds ==
Line 72: Line 72:
Currently, the sounds are arranged in an extremely primitive way due to the content associated with them cut from the engine.
Currently, the sounds are arranged in an extremely primitive way due to the content associated with them cut from the engine.


An analogue of Steam Audio using C# is currently being developed. In addition, a convenient sound editor based on graph nodes is being developed.
An analog of Steam Audio using C# is currently being developed. In addition, a convenient sound editor based on graph nodes is being developed.
{{clr}}
{{clr}}


== Programming ==
== Programming ==
S&box uses C#, which greatly expands the possibilities for developers in comparison with the same Lua, which is used in Garry's Mod.
S&box uses C#, which is significantly more powerful than the Lua scripting language used in Garry's Mod, as it is a fully-fledged scripting language.


Currently, the API is underdeveloped, and not all ideas can be fully implemented.
Currently, the C# API and tools are in heavy development. API breaks happen semi-frequently and there are areas of the engine bindings that are underdeveloped. There are also APIs completely missing at this time. These restrictions in many cases make at best engine integration impossible or tedious. At worst it bars you from implementing a feature entirely.  


== Gallery ==
== Gallery ==

Revision as of 22:05, 6 June 2022

English (en)Français (fr)Русский (ru)中文 (zh)Translate (Translate)

id Tech 2 id Tech 2GoldSrc GoldSrcSource SourceSource 2 Source 2

Stub

This article or section is a stub. You can help by expanding it.


File:Sbox-Logo-5may2022.png
S&box logo dated May 5, 2022

S&box S&box is a platform and game development toolkit developed by Facepunch studio powered by Source 2 Source 2. Initially, the development was based on Unreal Engine 4, but as soon as Half-Life: Alyx Half-Life: Alyx came out, Facepunch immediately requested the engine branch of the newly-published game. A few weeks later Valve gave Facepunch access to the terabyte large repository, after which, in 2020, S&box's transition to Source 2 Source 2 was announced. This is the first (and currently only) time that Source 2 was licensed to third-party developers.

Template:ModernNote


User Access

S&box is currently in closed developer testing, as of May 5, 2022, the automated queue has been shut down indefinitely due to the termination of the test recruitment in December 2021.

Previously, access was available from the addon developers page, which now takes care of redirecting users to the S&Works home page.

Release Date

An exact release date is unknown, but Facepunch plans to release S&box around 2023, according to a post on the project’s description page: “Our plan is to get to a releasable state over the next 6–12 months, then improve it over 10–20 years.”

The approximate dates for the completion of primary work were first announced by Garry Newman on February 19, 2022, on the official S&box Discord server:

Message from Garry Newman

Addons

S&box currently supports 4 types of add-ons:

  • Games - addons that run through the main menu of S&box
  • Maps - Add-ons that typically house maps to be played by a game addon.
  • Content - probably these are future addons for games (the publication is temporarily unavailable)
  • Tools - From additions to existing editors to tools built completely from scratch, these addons are meant to help you improve, automate, or completely integrate your workflow into the engine, without having to build game-based or external toolsets.

Template:ModernNote

Maps

S&box Hammer dated May 6, 2022

Mappers are provided with a modified version of the Source 2 Hammer map editor, with some parts exposed for C# scripting for increased flexibility.

Addon control panel

In the addons menu in the dev tools, you can restrict map selection for your game mode. You can limit it to specific curated maps or maps tagged with supporting the game mode.

Publication

Currently, maps cannot be launched directly from the game, so they have to be released as a separate addon (one for each map). The map is published by clicking on a special button in the addons menu in the developer toolkit.

Characteristics
Available territory
Unlimited for models, but 32768 units (624.23 m / 2048 ft) for meshes
Visibility
The player currently sees approximately 131233.6 units (2.5 km / 8202,1 ft) in front of him

Template:ModernWarning

Template:ModernWarning

Template:ModernWarning

Shaders

S&box supports HLSL Shader Model 3.0, 4.0 and 5.0. You can create your own shaders and customize their interface for the material editor.

Template:ModernNote

Sounds

Future Node Graph Editor

Currently, the sounds are arranged in an extremely primitive way due to the content associated with them cut from the engine.

An analog of Steam Audio using C# is currently being developed. In addition, a convenient sound editor based on graph nodes is being developed.

Programming

S&box uses C#, which is significantly more powerful than the Lua scripting language used in Garry's Mod, as it is a fully-fledged scripting language.

Currently, the C# API and tools are in heavy development. API breaks happen semi-frequently and there are areas of the engine bindings that are underdeveloped. There are also APIs completely missing at this time. These restrictions in many cases make at best engine integration impossible or tedious. At worst it bars you from implementing a feature entirely.

Gallery

External Links

For Developers
Other