Skip to content

p1xel8ted/BepInExPackager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BepInEx Packager

License: MIT PowerShell Platform Steam API BepInEx

A PowerShell utility that automates downloading and packaging BepInEx modding frameworks for Steam games into ready-to-distribute archives.

Features

  • Fetches game information automatically from the Steam API
  • Supports both BepInEx backends:
    • Mono (5.x) - For Unity Mono games
    • IL2CPP (6.x) - For Unity IL2CPP games (bleeding edge builds)
  • Multi-platform support (Windows x64/x86, macOS, Linux)
  • Optional custom BepInEx configuration inclusion
  • Generates ready-to-distribute ZIP packages

Requirements

  • Windows with PowerShell 5.0+
  • GitHub CLI (gh) installed and authenticated
  • Internet connection

Usage

Interactive Mode

Simply run the batch file and follow the prompts:

Package-BepInEx.bat

Command Line

.\Package-BepInEx.ps1 -AppId <SteamAppID> [-Backend <Mono|IL2CPP>] [-Architecture <x64|x86|Both>] [-GameName <CustomName>] [-ConfigPath <PathToConfig>]

Parameters

Parameter Required Description
-AppId Yes Steam App ID of the game
-Backend No BepInEx backend: Mono or IL2CPP (prompted if not provided)
-Architecture No Target architecture: x64, x86, or Both (prompted if not provided)
-GameName No Custom name for output files (defaults to Steam game name)
-ConfigPath No Path to custom BepInEx.cfg file to include

Examples

# Package BepInEx for Valheim (App ID: 892970)
.\Package-BepInEx.ps1 -AppId 892970 -Backend Mono -Architecture x64

# Package for a game with custom config
.\Package-BepInEx.ps1 -AppId 123456 -Backend IL2CPP -ConfigPath ".\my-config.cfg"

# Let the script prompt for all options
.\Package-BepInEx.ps1 -AppId 892970

Output

The script creates ZIP packages in the current directory with the naming convention:

BepInEx-<GameName>-<Platform>.zip

For example:

  • BepInEx-Valheim-win-x64.zip
  • BepInEx-Valheim-linux-x64.zip

How It Works

  1. Queries Steam API for game metadata and supported platforms
  2. Downloads the appropriate BepInEx build:
    • Mono: Latest stable release from GitHub
    • IL2CPP: Latest bleeding edge build from builds.bepinex.dev
  3. Extracts and packages BepInEx with optional custom configuration
  4. Creates platform-specific ZIP archives

License

MIT

Acknowledgments

  • BepInEx - The Unity modding framework
  • Valve's Steam API for game metadata

This project was created entirely with Claude AI by Anthropic.

About

PowerShell tool that packages BepInEx (Mono/IL2CPP) for Steam games using the Steam API

Topics

Resources

License

Stars

Watchers

Forks

Contributors