Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions docs/GAMEPLAY_PROGRAMMING/external-process-languages/toolchains.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,20 @@ installs every selected item through Windows Package Manager. Lua, JavaScript, a
HTML/CSS are bundled. Additional toolchains can be installed later using **Rustic Game
Engine > Language Toolchain Manager** in the Start menu or by rerunning Setup.

On Windows, Rustic checks the editor's PATH first, then the saved system and user
PATH on each dependency check. For C/C++, it also checks LLVM's registered install
folder and the standard LLVM folders under Program Files and
`%LOCALAPPDATA%\Programs`. An existing LLVM installation does not need to be
reinstalled or added to PATH when it is found in one of those locations. After
installing a toolchain, return to the editor and press **Play** to check again.

If C/C++ is still reported missing, check that the LLVM `bin` folder contains
`clang.exe` for C and `clang++.exe` for C++. For an unregistered custom installation,
add its `bin` folder to your Windows user or system PATH and press **Play** again.
A WinGet package listing alone does not confirm that the required compiler files
are present. Other compiler, SDK, or linker errors appear in the Console after
discovery succeeds; repair the relevant toolchain if compilation fails.

Setup uses one PowerShell process without allocating a console for all selected
toolchains and skips tools that are already installed. A bundled GUI setup helper
launches PowerShell and the agent integration installer under the original user's
Expand Down
5 changes: 4 additions & 1 deletion docs/Scripting/scriptingC/current-limits-and-diagnosis.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@ have three seconds to finish. An exception, invalid engine value, process exit,
timeout, or rejected call disables the behavior. Failed build/reload validation
keeps the last good instance running.

- **Toolchain unavailable:** check PATH in the editor's environment, then restart it.
- **Toolchain unavailable:** check that `clang.exe` (Windows) or your chosen C
compiler exists. On Windows, add a custom compiler folder to the saved user/system
PATH and press **Play** again. On other platforms, restart the editor after a PATH
change.
- **Nothing moves:** check attachment, owner transform, Play focus, and held KeyW.
- **Property rejected:** declare it in the editor and preserve its type.
- **Wrong parent:** pass the ID returned by Find, not the path string.
Expand Down
5 changes: 4 additions & 1 deletion docs/Scripting/scriptingC/setup-and-attachment.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,10 @@

[Back to C](/docs/scripting/c).

1. Install Clang, GCC, or MSVC on PATH (C17). Restart the editor after changing PATH.
1. Install Clang, GCC, or MSVC (C17). On Windows, Rustic also checks the saved
system/user PATH and registered or standard LLVM install folders. After installation
or a saved PATH change, press **Play** to recheck. On other platforms, put the
compiler on PATH before starting the editor.
Check the Project Manager’s **Settings** language tools and the editor **Console** for discovery errors. Contributors with a source checkout can optionally run `cargo xtask doctor` from `Engine/`.
2. Open your game project and scene. Select a **Part** object for this movement example.
3. Use **Programming > Object Component Script** and select C.
Expand Down
5 changes: 4 additions & 1 deletion docs/Scripting/scriptingCpp.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@ compiles each `.cc`, `.cpp`, or `.cxx` behavior as C++20, and runs one isolated
process per instance. The header parses protocol requests and exposes typed native
helpers, so ordinary game code should not emit JSON.

Install `clang++`, `g++`, or MSVC `cl` on `PATH`. Clang/GCC builds use `-Wall
Install `clang++`, `g++`, or MSVC `cl` on `PATH`. On Windows, Rustic also checks
the saved system/user PATH and registered or standard LLVM install folders; press
**Play** after installation to recheck without reinstalling LLVM. A custom compiler
folder can be added to the saved user/system PATH. Clang/GCC builds use `-Wall
-Wextra -Werror -std=c++20`; MSVC uses `/nologo /W4`. The editor also writes an
IntelliSense copy to `.rustic/generated/programming/rustic.hpp`, but Rustic supplies
the authoritative temporary copy when building. Never edit or vendor the generated
Expand Down
Loading