CryptikLemur.AssetBundleBuilder
1.0.1
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet tool install --global CryptikLemur.AssetBundleBuilder --version 1.0.1
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
dotnet tool install --local CryptikLemur.AssetBundleBuilder --version 1.0.1
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=CryptikLemur.AssetBundleBuilder&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
nuke :add-package CryptikLemur.AssetBundleBuilder --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
AssetBundleBuilder
A command-line tool for building Unity asset bundles for RimWorld mods. No repository cloning or Unity project setup required!
Prerequisites
⚠️ Unity Editor Required: This tool requires Unity Hub and a Unity Editor installation (e.g., 2022.3.35f1) to build asset bundles. The tool will:
- Auto-detect Unity installations in standard locations
- Create temporary Unity projects automatically
- Handle all Unity project configuration
You can download Unity Hub from unity.com/download and install the required Unity version through it.
Installation
.NET Global Tool (Recommended - Cross-Platform)
# Install globally
dotnet tool install --global CryptikLemur.AssetBundleBuilder
# Use anywhere
assetbundlebuilder 2022.3.5f1 "/path/to/assets" "mybundle" "/path/to/output"
Manual Installation (No .NET Required)
Download the appropriate executable for your platform from the Releases Page:
- Windows:
AssetBundleBuilder-win-x64-v1.0.0.zip
- macOS Intel:
AssetBundleBuilder-osx-x64-v1.0.0.zip
- Linux x64:
AssetBundleBuilder-linux-x64-v1.0.0.zip
Extract and run the executable directly - no installation required!
Quick Start
Basic Usage
# Auto-find Unity and build asset bundles
assetbundlebuilder 2022.3.5f1 "/path/to/your/mod/assets" "mybundle" "/path/to/output/directory"
With Custom Bundle Name
# Specify a custom bundle name
assetbundlebuilder 2022.3.5f1 "/path/to/assets" "author.modname" "/path/to/output"
Specific Platform
# Build only for Windows
assetbundlebuilder 2022.3.5f1 "/path/to/assets" "mybundle" "/path/to/output" --target windows
How It Works
- No Setup Required: Tool automatically creates a temporary Unity project
- Unity Auto-Discovery: Finds Unity installations by version number across common paths
- Asset Processing: Copies your assets and applies proper import settings
- Bundle Creation: Builds compressed asset bundles with platform-specific optimizations
- Cleanup: Removes temporary files automatically
Supported Features
- ✅ Unity Version Auto-Discovery - Just specify the version (e.g.,
2022.3.5f1
) - ✅ Cross-Platform - Windows, macOS, and Linux native executables
- ✅ Multiple Build Targets - Windows, macOS, Linux asset bundles
- ✅ Automatic Asset Import Settings - Textures, audio, shaders
- ✅ Terrain Texture Support - Special handling for terrain assets
- ✅ PSD File Support - Basic Photoshop document import
- ✅ Temporary Project Management - No manual Unity project required
- ✅ CI/CD Friendly - Perfect for automated build pipelines
Command Reference
assetbundlebuilder <unity-path-or-version> <asset-directory> <bundle-name> [output-directory] [options]
Arguments
- unity-path-or-version: Either Unity version (e.g.,
2022.3.5f1
) or full path to Unity executable - asset-directory: Directory containing your mod's assets (textures, sounds, etc.)
- bundle-name: Name for the asset bundle (e.g., "mymod", "author.modname")
- output-directory: Where to create the asset bundles (optional, defaults to current directory)
Options
--unity-version <version>
- Explicitly specify Unity version--bundle-name <name>
- Override bundle name (alternative to positional argument)--target <target>
- Build target:windows
,mac
, orlinux
(default:windows
)--temp-project <path>
- Custom location for temporary Unity project--keep-temp
- Don't delete temporary project (for debugging)
Examples
Windows
# Using .NET global tool
assetbundlebuilder 2022.3.5f1 "C:\MyMod\Assets" "mymod" "C:\MyMod\Output"
# Using specific Unity installation
assetbundlebuilder "C:\Unity\2022.3.5f1\Editor\Unity.exe" "C:\MyMod\Assets" "mymod" "C:\MyMod\Output"
macOS
# Using .NET global tool
assetbundlebuilder 2022.3.5f1 "/Users/me/MyMod/Assets" "mymod" "/Users/me/MyMod/Output"
# Using specific Unity installation
assetbundlebuilder "/Applications/Unity/Hub/Editor/2022.3.5f1/Unity.app/Contents/MacOS/Unity" "/Users/me/MyMod/Assets" "mymod" "/Users/me/MyMod/Output"
Linux
# Using .NET Global Tool
assetbundlebuilder 2022.3.5f1 "/home/user/MyMod/Assets" "mymod" "/home/user/MyMod/Output"
# Build only Linux bundles
assetbundlebuilder 2022.3.5f1 "/home/user/MyMod/Assets" "mymod" "/home/user/MyMod/Output" --target linux
Unity Installation Paths
The tool automatically searches these common Unity installation locations:
Windows
C:\Program Files\Unity\Hub\Editor\
C:\Program Files (x86)\Unity\Hub\Editor\
%USERPROFILE%\Unity\Hub\Editor\
macOS
/Applications/Unity/Hub/Editor/
$HOME/Applications/Unity/Hub/Editor/
Linux
/opt/unity/editor/
$HOME/Unity/Hub/Editor/
$HOME/.local/share/Unity/Hub/Editor/
CI/CD Integration
GitHub Actions
- name: Install AssetBundleBuilder
run: dotnet tool install --global CryptikLemur.AssetBundleBuilder
- name: Build Asset Bundles
run: assetbundlebuilder 2022.3.5f1 "./Assets" "mymod" "./Output"
Azure DevOps
- task: DotNetCoreCLI@2
displayName: 'Install AssetBundleBuilder'
inputs:
command: 'custom'
custom: 'tool'
arguments: 'install --global CryptikLemur.AssetBundleBuilder'
- script: assetbundlebuilder 2022.3.5f1 "$(Build.SourcesDirectory)/Assets" "mymod" "$(Build.ArtifactStagingDirectory)"
displayName: 'Build Asset Bundles'
Troubleshooting
Unity Not Found
# Try with full path instead
assetbundlebuilder "/path/to/Unity" "/path/to/assets" "/path/to/output"
# Or install Unity in standard location
Permission Errors (Linux/macOS)
# Make sure executable has proper permissions
chmod +x ./AssetBundleBuilder
# Or use .NET Global Tool instead
dotnet tool install --global AssetBundleBuilder.GlobalTool
Invalid Bundle Name
# Use a valid bundle name (alphanumeric, dots, underscores)
assetbundlebuilder 2022.3.5f1 "/path/to/assets" "valid_bundle_name" "/path/to/output"
Debugging
# Keep temporary project for inspection
assetbundlebuilder 2022.3.5f1 "/path/to/assets" "mybundle" "/path/to/output" --keep-temp
Uninstallation
.NET Global Tool
dotnet tool uninstall --global CryptikLemur.AssetBundleBuilder
Support
- Issues: GitHub Issues
- RimWorld Modding: RimWorld Discord
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.
Version | Downloads | Last Updated |
---|---|---|
4.0.1 | 133 | 9/7/2025 |
4.0.0 | 134 | 9/1/2025 |
3.0.0 | 180 | 8/28/2025 |
2.0.0 | 179 | 8/28/2025 |
1.6.0 | 127 | 8/19/2025 |
1.5.0 | 131 | 8/18/2025 |
1.4.0 | 150 | 8/17/2025 |
1.3.0 | 94 | 8/15/2025 |
1.2.0 | 135 | 8/13/2025 |
1.1.0 | 141 | 8/13/2025 |
1.0.3 | 153 | 8/12/2025 |
1.0.2 | 139 | 8/12/2025 |
1.0.1 | 143 | 8/12/2025 |
1.0.0 | 130 | 8/12/2025 |
Initial release with Unity version auto-discovery and cross-platform support.