Automated pipeline to generate custom outfit textures for Haydee using Gemini API.
Project description
Haydee Outfit Generator (Powered by Gemini)
Automated Python pipeline to generate custom outfit textures for the game Haydee using the Google Gemini API.
[!TIP] Not a fan of the command line? Check out the Haydee AI Outfit Generator GUI! It's a modern, ready-to-use graphical interface that lets you easily generate custom outfits without messing with terminals or environment variables. Download the latest release to get started instantly!
✨ Generation Examples
📋 Prerequisites
- Python 3.12+
🔑 Getting a Gemini API Key
- Go to Google AI Studio.
- Sign in with your Google account.
- Click the "Create API key" button.
- If prompted, read and accept the terms of service.
- Click on "Create API key in new project" (or use an existing project).
- Copy the generated key. You will need it for the
.envfile in the setup steps below. - Note: Generating and using the Gemini API key is completely free within generous rate limits.
💻 Setup (Local)
Install via pip (Recommended)
The easiest way to install the generator is directly from PyPI:
pip install haydee-outfit-generator
Install from Source
-
Clone the repository.
-
Install dependencies:
pip install .
-
Copy
.env.exampleto.env(or create one) and configure your variables:
GEMINI_API_KEY: Your Google Gemini API Key.HAYDEE_PATH: Absolute path to your Haydee installation directory.IMAGE_RESOLUTION: (Optional) Output resolution. Default is4K. Can be set to2K(2048x2048) if needed.
🐳 Setup (Docker)
If you prefer to run the project without installing Python locally, you can use Docker.
- Install Docker Desktop.
- Create your
.envfile and setGEMINI_API_KEYandHAYDEE_PATH.- Note:
HAYDEE_PATHin.envmust be the absolute path on your host Windows machine (e.g.,C:\Program Files (x86)\Steam\steamapps\common\Haydee).
- Note:
🚀 Usage
Running Locally
Run the script by providing the mod name and the desired style description:
haydee-gen --name "NeonSurge" --style "cyberpunk neon lights with dark carbon fiber armor"
Running with Docker
You can use Docker Compose to automatically mount your Haydee directory and run the command:
docker-compose run --rm generator --name "NeonSurge" --style "cyberpunk neon lights with dark carbon fiber armor"
The script will automatically read the base texture, contact the Gemini API, convert the formats, and generate the mod inside your Haydee/Outfits folder.
📤 Publishing to Steam Workshop
When you are ready to share your generated outfit, you can upload it directly to the Steam Workshop using the game's built-in tools.
1. Prepare a Thumbnail
- Create a preview image for your mod (
preview.pngorpreview.jpg). - The image should be square (e.g., 512x512 or 256x256).
- Place this image in your mod folder.
2. Launch Edith Editor
The upload tools are located in the game's editor, not the game itself:
- Go to your Haydee root installation folder.
- Run
Edith.exe. - In the top menu bar, select Tool -> Workshop Uploader.
3. Fill in the Uploader Data
In the uploader window, fill out the following fields:
- Mod Content: At the very top of the upload form, there is a text field with a Browse button beneath it. You will use this to build the list of files to upload:
- Click Browse and add your mod's main folder (for example, select
Outfits/NeonSurge). - Click Browse again and add your
.outfitdefinition file (for example, selectOutfits/NeonSurge.outfit). (This ensures you include the full set of files required for the mod to work).
- Click Browse and add your mod's main folder (for example, select
- Title: The name of your outfit (this will be displayed on Steam).
- Description: A short description of the mod (what it is, special features, etc.).
- Visibility: It is recommended to set this to Private first to verify how everything looks on the Steam page, and change it to Public later.
- Preview Image: Select the thumbnail image you prepared in step 1.
Once filled out, click Upload. If everything goes well, the status at the bottom will show "Success".
🧪 Testing
This project uses pytest for automated testing.
- Install the development dependencies:
pip install -r requirements-dev.txt
- Run the test suite with coverage:
pytest
Note: Valid API Keys or a real Haydee installation are not required to run the tests, as external dependencies and the filesystem are safely mocked.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file haydee_outfit_generator-1.0.3.tar.gz.
File metadata
- Download URL: haydee_outfit_generator-1.0.3.tar.gz
- Upload date:
- Size: 16.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb321b55737f3ab4518c25dc430efba563c10b68f1818258d1b5e88d99015a11
|
|
| MD5 |
89ce4377ae8f8892c2e086bf39bb7de5
|
|
| BLAKE2b-256 |
ef525d9f4926982932b81d709a03fe87da90a17a54d8f0bb4983510975bb9968
|
Provenance
The following attestation bundles were made for haydee_outfit_generator-1.0.3.tar.gz:
Publisher:
publish.yml on thegamerbay/haydee-ai-outfit-generator
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
haydee_outfit_generator-1.0.3.tar.gz -
Subject digest:
cb321b55737f3ab4518c25dc430efba563c10b68f1818258d1b5e88d99015a11 - Sigstore transparency entry: 995788404
- Sigstore integration time:
-
Permalink:
thegamerbay/haydee-ai-outfit-generator@bb2f127a04007c4ef5e30a92c56492996b190e49 -
Branch / Tag:
refs/tags/v1.0.3 - Owner: https://github.com/thegamerbay
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bb2f127a04007c4ef5e30a92c56492996b190e49 -
Trigger Event:
release
-
Statement type:
File details
Details for the file haydee_outfit_generator-1.0.3-py3-none-any.whl.
File metadata
- Download URL: haydee_outfit_generator-1.0.3-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aab2cbca7d88d222f7f3f3e3edb51bc0a0ec4e2cb5209bd5183e551a583e6c97
|
|
| MD5 |
185db75abbff5be03d481a95ed8b8932
|
|
| BLAKE2b-256 |
d3e13b6768b8aeb0c59fabcf967e6e2ba469311836aefcd15b438b16896d46c2
|
Provenance
The following attestation bundles were made for haydee_outfit_generator-1.0.3-py3-none-any.whl:
Publisher:
publish.yml on thegamerbay/haydee-ai-outfit-generator
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
haydee_outfit_generator-1.0.3-py3-none-any.whl -
Subject digest:
aab2cbca7d88d222f7f3f3e3edb51bc0a0ec4e2cb5209bd5183e551a583e6c97 - Sigstore transparency entry: 995788405
- Sigstore integration time:
-
Permalink:
thegamerbay/haydee-ai-outfit-generator@bb2f127a04007c4ef5e30a92c56492996b190e49 -
Branch / Tag:
refs/tags/v1.0.3 - Owner: https://github.com/thegamerbay
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bb2f127a04007c4ef5e30a92c56492996b190e49 -
Trigger Event:
release
-
Statement type: