Skip to content

Commit

Permalink
feat(publish): Get ready to publish to crates.io
Browse files Browse the repository at this point in the history
Signed-off-by: dark0dave <[email protected]>
  • Loading branch information
dark0dave committed Aug 14, 2024
1 parent 4bd9462 commit 03afab9
Show file tree
Hide file tree
Showing 2 changed files with 58 additions and 37 deletions.
24 changes: 20 additions & 4 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,31 @@
name = "mod_installer"
version = "8.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
authors = [ "dark0dave" ]
documentation = "https://raw.githubusercontent.com/dark0dave/mod_installer/main/README.md"
homepage = "https://github.com/dark0dave/mod_installer"
description = "The Infinity Engine Mod Installer is a tool designed to automate the installation of mods for Infinity Engine games such as Baldur's Gate, Icewind Dale, and Planescape: Torment. It uses a file called 'weidu.log' to determine which mods to install and how to install them."
license-file = "LICENSE"
readme = "README.md"
repository = "https://github.com/dark0dave/mod_installer"
categories = [ "command-line-interface", "filesystem" ]
keywords = [
"cli",
"infinity-engine",
"modding-tools",
"terminal",
"tool"
]

[dependencies]
clap = { version = "4.5.9", features = ["derive", "env"] }
env_logger = "0.11.1"
fs_extra = "1.3.0"
log = "*"
log = "0.4.22"
walkdir = "2.3.2"

[dependencies.clap]
version = "4.5.9"
features = [ "derive", "env" ]

[dev-dependencies]
pretty_assertions = "1.3.0"
71 changes: 38 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,46 +11,19 @@
/ /\/\ \ (_) | (_| | | | | | \__ \ || (_| | | | __/ |
\/ \/\___/ \__,_| |_|_| |_|___/\__\__,_|_|_|\___|_|

Automatically install mods from a prepopulated weidu.log file.

## What is this?

The Infinity Engine Mod Installer is a tool designed to automate the installation of mods for Infinity Engine games such as Baldur's Gate, Icewind Dale, and Planescape: Torment. It uses a file called "weidu.log" to determine which mods to install and how to install them.

### Weidu Log
## Installation

The Weidu log file contains a list of installed mods and is typically found in your game directory if you have previously installed mods. Here's an example of what a Weidu log might look like:
`mod_installer` can be installed via crates.io:

```sh
// Log of Currently Installed WeiDU Mods
// The top of the file is the 'oldest' mod
// ~TP2_File~ #language_number #component_number // [Subcomponent Name -> ] Component Name [ : Version]
~TEST_MOD_NAME_1/TEST.TP2~ #0 #0 // test mod one
cargo install mod_installer
```
If you're new to modding Infinity Engine games, we recommend installing mods manually first to familiarize yourself with the process. This will help you understand how mods work and how they interact with your game.

## Getting Started with Weidu Logs

If you're looking for an example `weidu.log` to get started:

Check online forums and modding communities. Experienced players and modders often share their mod lists and corresponding Weidu logs.
Look for "mod packs" or "recommended mod lists" for your specific game. These often come with pre-configured Weidu logs.
Start with a small number of popular mods and gradually build up your log as you become more comfortable with the modding process.
Some mod managers for Infinity Engine games can generate Weidu logs based on your selected mods.

Remember, the Weidu log is a powerful tool, but it's important to understand what you're installing. Always back up your game files before installing mods, and be aware that some mods may conflict with others.

## What does it do?

The Infinity Engine Mod Installer looks at a "weidu.log" file that you provide. This file contains information about mods you want to install. The tool then goes through this list and installs each mod automatically. This saves you time and effort, as you don't have to manually install each mod one by one.

## How can I see it in action?

We have a short video that shows how the tool works:
or you can grab it from the latest releases page on github, [here](https://github.com/dark0dave/mod_installer/releases/latest).

![](docs/mod_installer.gif)

## How do I use it?
## Usage

To use the Infinity Engine Mod Installer, you need to run it from the command line. Here's the basic structure of the command:

Expand All @@ -74,6 +47,38 @@ Let's break down what each part means:

* --mod-directories <MOD_DIRECTORIES>: This is where you tell the program where to find the mod files.

## FAQ

The Infinity Engine Mod Installer looks at a "weidu.log" file that you provide. This file contains information about mods you want to install. The tool then goes through this list and installs each mod automatically. This saves you time and effort, as you don't have to manually install each mod one by one.

### Weidu Log

The Weidu log file contains a list of installed mods and is typically found in your game directory if you have previously installed mods. Here's an example of what a Weidu log might look like:

```sh
// Log of Currently Installed WeiDU Mods
// The top of the file is the 'oldest' mod
// ~TP2_File~ #language_number #component_number // [Subcomponent Name -> ] Component Name [ : Version]
~TEST_MOD_NAME_1/TEST.TP2~ #0 #0 // test mod one
```
If you're new to modding Infinity Engine games, we recommend installing mods manually first to familiarize yourself with the process. This will help you understand how mods work and how they interact with your game.

### Getting Started with Weidu Logs

If you're looking for an example `weidu.log` to get started:

Check online forums and modding communities. Experienced players and modders often share their mod lists and corresponding Weidu logs.
Look for "mod packs" or "recommended mod lists" for your specific game. These often come with pre-configured Weidu logs.
Start with a small number of popular mods and gradually build up your log as you become more comfortable with the modding process.
Some mod managers for Infinity Engine games can generate Weidu logs based on your selected mods.

Remember, the Weidu log is a powerful tool, but it's important to understand what you're installing. Always back up your game files before installing mods, and be aware that some mods may conflict with others.

### Demo
We have a short video that shows how the tool works:

![](docs/mod_installer.gif)

### What options can I use?

**Don't panic** you can use the help command to find all the options listed below:
Expand Down Expand Up @@ -175,7 +180,7 @@ Here's a detailed explanation of all the options you can use:
How to use it: Just add this option to your command if you want to check the version.
Example: mod_installer --version

## How can I see more information about what the program is doing?
### Logging

You can make the program show more information by setting the RUST_LOG environment variable. Here are three levels you can use:

Expand Down

0 comments on commit 03afab9

Please sign in to comment.