pub struct BepInEx { /* private fields */ }Expand description
Loader implementation for BepInEx, a general-purpose Unity mod loader.
BepInEx uses Doorstop to inject into the game process and supports several sub-directories for plugins, patchers, monomod assemblies, and config.
§Examples
use loadsmith_loader::{BepInEx, Loader};
let loader = BepInEx::with_default_rules();
assert_eq!(loader.id(), "BepInEx");Implementations§
Source§impl BepInEx
impl BepInEx
Sourcepub fn with_rules(package_install_ruleset: OwnedInstallRuleset) -> Self
pub fn with_rules(package_install_ruleset: OwnedInstallRuleset) -> Self
Creates a BepInEx loader with a custom install ruleset.
Sourcepub fn with_default_rules() -> Self
pub fn with_default_rules() -> Self
Creates a BepInEx loader with the default install rules.
Default routes:
BepInEx/config(mutable, flat)BepInEx/patchersBepInEx/coreBepInEx/monomod(files with.mm.dllextension)BepInEx/plugins(files with.dllextension) — default rule
Sourcepub fn add_install_rule(&mut self, rule: impl Into<InstallRule>)
pub fn add_install_rule(&mut self, rule: impl Into<InstallRule>)
Adds an install rule to the end of the ruleset.
Sourcepub fn insert_install_rule(
&mut self,
index: usize,
rule: impl Into<InstallRule>,
)
pub fn insert_install_rule( &mut self, index: usize, rule: impl Into<InstallRule>, )
Inserts an install rule at the given index.
Trait Implementations§
Source§impl Loader for BepInEx
impl Loader for BepInEx
Source§fn id(&self) -> &'static str
fn id(&self) -> &'static str
A unique, human-readable identifier for this loader (e.g.
"BepInEx").Source§fn loader_install_rules(&self) -> InstallRuleset<'_>
fn loader_install_rules(&self) -> InstallRuleset<'_>
Returns the install rules for end-user mod packages.
Source§fn package_install_rules(&self) -> InstallRuleset<'_>
fn package_install_rules(&self) -> InstallRuleset<'_>
Returns the install rules for the loader’s own files (the “loader pack”).
Source§fn prepare_launch(&self, ctx: &LaunchContext<'_>) -> Result<()>
fn prepare_launch(&self, ctx: &LaunchContext<'_>) -> Result<()>
Prepares the game directory by copying files from the profile. Read more
Source§fn generate_launch_args(&self, ctx: &LaunchContext<'_>) -> Result<LaunchArgs>
fn generate_launch_args(&self, ctx: &LaunchContext<'_>) -> Result<LaunchArgs>
Builds the command-line arguments and environment variables needed to
launch the game with this loader.
Source§fn package_config_dirs(&self) -> Vec<PathBuf>
fn package_config_dirs(&self) -> Vec<PathBuf>
Directories that contain mutable per-package configuration.
Source§fn log_file(&self) -> Option<PathBuf>
fn log_file(&self) -> Option<PathBuf>
Path to the loader’s log file, relative to the game directory.
Source§fn package_dir(&self, package: &PackageRef) -> Option<PathBuf>
fn package_dir(&self, package: &PackageRef) -> Option<PathBuf>
Returns the directory where a package’s files are placed, if any.
Auto Trait Implementations§
impl Freeze for BepInEx
impl RefUnwindSafe for BepInEx
impl Send for BepInEx
impl Sync for BepInEx
impl Unpin for BepInEx
impl UnsafeUnpin for BepInEx
impl UnwindSafe for BepInEx
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more