Documentation Index
Fetch the complete documentation index at: https://mintlify.com/danielkrupinski/Osiris/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Osiris supports Windows 10 and later (x64 only). The Windows build outputs Osiris.dll which must be injected into the CS2 game process using a manual mapping injector.Prerequisites
- Microsoft Visual Studio 2022 with Desktop development with C++ workload
- Windows 10 or later (64-bit)
- Visual Studio platform toolset v143 or later
Building from Source
- Visual Studio
- MSBuild (CLI)
- CMake
- Open Osiris.sln in Visual Studio 2022
- Set build configuration to Release | x64
- Press Build Solution (Ctrl+Shift+B)
- The compiled Osiris.dll will be in the output directory
Output File
The Windows build produces Osiris.dll, a dynamically linked library (DLL) that must be injected into the CS2 process. File location:- Visual Studio:
x64/Release/Osiris.dll - CMake:
build/Source/Release/Osiris.dll
Injection Methods
Manual Mapping (Required)
Counter-Strike 2 blocks standardLoadLibrary injection, so you must use a manual mapping (reflective DLL injection) injector.
Entry Point
On Windows, Osiris initializes through the standard DLL entry point:Platform-Specific Implementation
Windows Platform API
Osiris uses custom Windows API wrappers located inSource/Platform/Windows/:
- WindowsPlatformApiImpl.h - Core platform API implementation
- WindowsDynamicLibrary.h - Dynamic library loading
- UserDocumentsFolderPath.h - Configuration file path resolution
- Syscalls/ - Direct syscall implementation to avoid API hooks
Configuration Storage
Configuration files are stored in:SHGetKnownFolderPath(FOLDERID_Documents, ...) from Shell32.dll.
Technical Features
- No C++ Runtime Library (CRT) in release builds
- No static imports (dynamic API resolution via PEB)
- Direct syscalls to avoid usermode hooks
- RTTI parsing for virtual method table location
- Portable Executable (PE) parsing
Build Configurations
- Release
- Debug
Optimized build with:
- No CRT dependencies
- Dynamic API resolution
- Size optimization
- No debugging symbols
Common Issues
Injection Failed
If injection fails:- Ensure you’re using a manual mapping injector
- Verify CS2 is running and not in secure mode
- Check that Osiris.dll is the correct 64-bit build
- Try running the injector as administrator
VAC Detection
Build Errors
If you encounter build errors:- Ensure Visual Studio 2022 is fully updated
- Verify the “Desktop development with C++” workload is installed
- Check that you’re targeting x64 platform
- Clean the solution and rebuild
See Also
- Linux Platform - Linux-specific instructions
- Building - General build information
- Installation - Installation and setup