Compare commits
3 Commits
multi-char
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ed9a7b4b11 | ||
|
|
32a73b02f5 | ||
|
|
7d79e626a5 |
219
API_GUIDE.md
Normal file
219
API_GUIDE.md
Normal file
@@ -0,0 +1,219 @@
|
|||||||
|
# GAZE REST API Guide
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
1. Open **Settings** in the GAZE web UI
|
||||||
|
2. Scroll to **REST API Key** and click **Regenerate**
|
||||||
|
3. Copy the key — you'll need it for all API requests
|
||||||
|
|
||||||
|
## Authentication
|
||||||
|
|
||||||
|
Every request must include your API key via one of:
|
||||||
|
|
||||||
|
- **Header (recommended):** `X-API-Key: <your-key>`
|
||||||
|
- **Query parameter:** `?api_key=<your-key>`
|
||||||
|
|
||||||
|
Responses for auth failures:
|
||||||
|
|
||||||
|
| Status | Meaning |
|
||||||
|
|--------|---------|
|
||||||
|
| `401` | Missing API key |
|
||||||
|
| `403` | Invalid API key |
|
||||||
|
|
||||||
|
## Endpoints
|
||||||
|
|
||||||
|
### List Presets
|
||||||
|
|
||||||
|
```
|
||||||
|
GET /api/v1/presets
|
||||||
|
```
|
||||||
|
|
||||||
|
Returns all available presets.
|
||||||
|
|
||||||
|
**Response:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"presets": [
|
||||||
|
{
|
||||||
|
"preset_id": "example_01",
|
||||||
|
"slug": "example_01",
|
||||||
|
"name": "Example Preset",
|
||||||
|
"has_cover": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Generate Image
|
||||||
|
|
||||||
|
```
|
||||||
|
POST /api/v1/generate/<preset_slug>
|
||||||
|
```
|
||||||
|
|
||||||
|
Queue one or more image generations using a preset's configuration. All body parameters are optional — when omitted, the preset's own settings are used.
|
||||||
|
|
||||||
|
**Request body (JSON):**
|
||||||
|
|
||||||
|
| Field | Type | Default | Description |
|
||||||
|
|-------|------|---------|-------------|
|
||||||
|
| `count` | int | `1` | Number of images to generate (1–20) |
|
||||||
|
| `checkpoint` | string | — | Override checkpoint path (e.g. `"Illustrious/model.safetensors"`) |
|
||||||
|
| `extra_positive` | string | `""` | Additional positive prompt tags appended to the generated prompt |
|
||||||
|
| `extra_negative` | string | `""` | Additional negative prompt tags |
|
||||||
|
| `seed` | int | random | Fixed seed for reproducible generation |
|
||||||
|
| `width` | int | — | Output width in pixels (must provide both width and height) |
|
||||||
|
| `height` | int | — | Output height in pixels (must provide both width and height) |
|
||||||
|
|
||||||
|
**Response (202):**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"jobs": [
|
||||||
|
{ "job_id": "783f0268-ba85-4426-8ca2-6393c844c887", "status": "queued" }
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Errors:**
|
||||||
|
|
||||||
|
| Status | Cause |
|
||||||
|
|--------|-------|
|
||||||
|
| `400` | Invalid parameters (bad count, seed, or mismatched width/height) |
|
||||||
|
| `404` | Preset slug not found |
|
||||||
|
| `500` | Internal generation error |
|
||||||
|
|
||||||
|
### Check Job Status
|
||||||
|
|
||||||
|
```
|
||||||
|
GET /api/v1/job/<job_id>
|
||||||
|
```
|
||||||
|
|
||||||
|
Poll this endpoint to track generation progress.
|
||||||
|
|
||||||
|
**Response:**
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"id": "783f0268-ba85-4426-8ca2-6393c844c887",
|
||||||
|
"label": "Preset: Example Preset – preview",
|
||||||
|
"status": "done",
|
||||||
|
"error": null,
|
||||||
|
"result": {
|
||||||
|
"image_url": "/static/uploads/presets/example_01/gen_1773601346.png",
|
||||||
|
"relative_path": "presets/example_01/gen_1773601346.png",
|
||||||
|
"seed": 927640517599332
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Job statuses:**
|
||||||
|
|
||||||
|
| Status | Meaning |
|
||||||
|
|--------|---------|
|
||||||
|
| `pending` | Waiting in queue |
|
||||||
|
| `processing` | Currently generating |
|
||||||
|
| `done` | Complete — `result` contains image info |
|
||||||
|
| `failed` | Error occurred — check `error` field |
|
||||||
|
|
||||||
|
The `result` object is only present when status is `done`. Use `seed` from the result to reproduce the exact same image later.
|
||||||
|
|
||||||
|
**Retrieving the image:** The `image_url` is a path relative to the server root. Fetch it directly:
|
||||||
|
|
||||||
|
```
|
||||||
|
GET http://<host>:5782/static/uploads/presets/example_01/gen_1773601346.png
|
||||||
|
```
|
||||||
|
|
||||||
|
Image retrieval does not require authentication.
|
||||||
|
|
||||||
|
## Examples
|
||||||
|
|
||||||
|
### Generate a single image and wait for it
|
||||||
|
|
||||||
|
```bash
|
||||||
|
API_KEY="your-key-here"
|
||||||
|
HOST="http://localhost:5782"
|
||||||
|
|
||||||
|
# Queue generation
|
||||||
|
JOB_ID=$(curl -s -X POST \
|
||||||
|
-H "X-API-Key: $API_KEY" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{}' \
|
||||||
|
"$HOST/api/v1/generate/example_01" | python3 -c "import sys,json; print(json.load(sys.stdin)['jobs'][0]['job_id'])")
|
||||||
|
|
||||||
|
echo "Job: $JOB_ID"
|
||||||
|
|
||||||
|
# Poll until done
|
||||||
|
while true; do
|
||||||
|
RESULT=$(curl -s -H "X-API-Key: $API_KEY" "$HOST/api/v1/job/$JOB_ID")
|
||||||
|
STATUS=$(echo "$RESULT" | python3 -c "import sys,json; print(json.load(sys.stdin)['status'])")
|
||||||
|
echo "Status: $STATUS"
|
||||||
|
if [ "$STATUS" = "done" ] || [ "$STATUS" = "failed" ]; then
|
||||||
|
echo "$RESULT" | python3 -m json.tool
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
sleep 5
|
||||||
|
done
|
||||||
|
```
|
||||||
|
|
||||||
|
### Generate 3 images with extra prompts
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST \
|
||||||
|
-H "X-API-Key: $API_KEY" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{
|
||||||
|
"count": 3,
|
||||||
|
"extra_positive": "smiling, outdoors",
|
||||||
|
"extra_negative": "blurry"
|
||||||
|
}' \
|
||||||
|
"$HOST/api/v1/generate/example_01"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Reproduce a specific image
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -X POST \
|
||||||
|
-H "X-API-Key: $API_KEY" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"seed": 927640517599332}' \
|
||||||
|
"$HOST/api/v1/generate/example_01"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Python example
|
||||||
|
|
||||||
|
```python
|
||||||
|
import requests
|
||||||
|
import time
|
||||||
|
|
||||||
|
HOST = "http://localhost:5782"
|
||||||
|
API_KEY = "your-key-here"
|
||||||
|
HEADERS = {"X-API-Key": API_KEY, "Content-Type": "application/json"}
|
||||||
|
|
||||||
|
# List presets
|
||||||
|
presets = requests.get(f"{HOST}/api/v1/presets", headers=HEADERS).json()
|
||||||
|
print(f"Available presets: {[p['name'] for p in presets['presets']]}")
|
||||||
|
|
||||||
|
# Generate
|
||||||
|
resp = requests.post(
|
||||||
|
f"{HOST}/api/v1/generate/{presets['presets'][0]['slug']}",
|
||||||
|
headers=HEADERS,
|
||||||
|
json={"count": 1},
|
||||||
|
).json()
|
||||||
|
|
||||||
|
job_id = resp["jobs"][0]["job_id"]
|
||||||
|
print(f"Queued job: {job_id}")
|
||||||
|
|
||||||
|
# Poll
|
||||||
|
while True:
|
||||||
|
status = requests.get(f"{HOST}/api/v1/job/{job_id}", headers=HEADERS).json()
|
||||||
|
print(f"Status: {status['status']}")
|
||||||
|
if status["status"] in ("done", "failed"):
|
||||||
|
break
|
||||||
|
time.sleep(5)
|
||||||
|
|
||||||
|
if status["status"] == "done":
|
||||||
|
image_url = f"{HOST}{status['result']['image_url']}"
|
||||||
|
print(f"Image: {image_url}")
|
||||||
|
print(f"Seed: {status['result']['seed']}")
|
||||||
|
```
|
||||||
121
CLAUDE.md
121
CLAUDE.md
@@ -27,6 +27,7 @@ services/
|
|||||||
sync.py # All sync_*() functions + preset resolution helpers
|
sync.py # All sync_*() functions + preset resolution helpers
|
||||||
job_queue.py # Background job queue (_enqueue_job, _make_finalize, worker thread)
|
job_queue.py # Background job queue (_enqueue_job, _make_finalize, worker thread)
|
||||||
file_io.py # LoRA/checkpoint scanning, file helpers
|
file_io.py # LoRA/checkpoint scanning, file helpers
|
||||||
|
generation.py # Shared generation logic (generate_from_preset)
|
||||||
routes/
|
routes/
|
||||||
__init__.py # register_routes(app) — imports and calls all route modules
|
__init__.py # register_routes(app) — imports and calls all route modules
|
||||||
characters.py # Character CRUD + generation + outfit management
|
characters.py # Character CRUD + generation + outfit management
|
||||||
@@ -44,6 +45,9 @@ routes/
|
|||||||
strengths.py # Strengths gallery system
|
strengths.py # Strengths gallery system
|
||||||
transfer.py # Resource transfer system
|
transfer.py # Resource transfer system
|
||||||
queue_api.py # /api/queue/* endpoints
|
queue_api.py # /api/queue/* endpoints
|
||||||
|
api.py # REST API v1 (preset generation, auth)
|
||||||
|
regenerate.py # Tag regeneration (single + bulk, via LLM queue)
|
||||||
|
search.py # Global search across resources and gallery images
|
||||||
```
|
```
|
||||||
|
|
||||||
### Dependency Graph
|
### Dependency Graph
|
||||||
@@ -60,7 +64,8 @@ app.py
|
|||||||
│ ├── mcp.py ← (stdlib only: subprocess, os)
|
│ ├── mcp.py ← (stdlib only: subprocess, os)
|
||||||
│ ├── sync.py ← models, utils
|
│ ├── sync.py ← models, utils
|
||||||
│ ├── job_queue.py ← comfyui, models
|
│ ├── job_queue.py ← comfyui, models
|
||||||
│ └── file_io.py ← models, utils
|
│ ├── file_io.py ← models, utils
|
||||||
|
│ └── generation.py ← prompts, workflow, job_queue, sync, models
|
||||||
└── routes/
|
└── routes/
|
||||||
├── All route modules ← services/*, utils, models
|
├── All route modules ← services/*, utils, models
|
||||||
└── (routes never import from other routes)
|
└── (routes never import from other routes)
|
||||||
@@ -77,6 +82,8 @@ SQLite at `instance/database.db`, managed by Flask-SQLAlchemy. The DB is a cache
|
|||||||
|
|
||||||
**Models**: `Character`, `Look`, `Outfit`, `Action`, `Style`, `Scene`, `Detailer`, `Checkpoint`, `Settings`
|
**Models**: `Character`, `Look`, `Outfit`, `Action`, `Style`, `Scene`, `Detailer`, `Checkpoint`, `Settings`
|
||||||
|
|
||||||
|
The `Settings` model stores LLM provider config, LoRA/checkpoint directory paths, default checkpoint, and `api_key` for REST API authentication.
|
||||||
|
|
||||||
All category models (except Settings and Checkpoint) share this pattern:
|
All category models (except Settings and Checkpoint) share this pattern:
|
||||||
- `{entity}_id` — canonical ID (from JSON, often matches filename without extension)
|
- `{entity}_id` — canonical ID (from JSON, often matches filename without extension)
|
||||||
- `slug` — URL-safe version of the ID (alphanumeric + underscores only, via `re.sub(r'[^a-zA-Z0-9_]', '', id)`)
|
- `slug` — URL-safe version of the ID (alphanumeric + underscores only, via `re.sub(r'[^a-zA-Z0-9_]', '', id)`)
|
||||||
@@ -85,6 +92,8 @@ All category models (except Settings and Checkpoint) share this pattern:
|
|||||||
- `data` — full JSON blob (SQLAlchemy JSON column)
|
- `data` — full JSON blob (SQLAlchemy JSON column)
|
||||||
- `default_fields` — list of `section::key` strings saved as the user's preferred prompt fields
|
- `default_fields` — list of `section::key` strings saved as the user's preferred prompt fields
|
||||||
- `image_path` — relative path under `static/uploads/`
|
- `image_path` — relative path under `static/uploads/`
|
||||||
|
- `is_favourite` — boolean (DB-only, not in JSON; toggled from detail pages)
|
||||||
|
- `is_nsfw` — boolean (mirrored in both DB column and JSON `tags.nsfw`; synced on rescan)
|
||||||
|
|
||||||
### Data Flow: JSON → DB → Prompt → ComfyUI
|
### Data Flow: JSON → DB → Prompt → ComfyUI
|
||||||
|
|
||||||
@@ -151,10 +160,16 @@ LoRA nodes chain: `4 → 16 → 17 → 18 → 19`. Unused LoRA nodes are bypasse
|
|||||||
|
|
||||||
### `services/job_queue.py` — Background Job Queue
|
### `services/job_queue.py` — Background Job Queue
|
||||||
|
|
||||||
- **`_enqueue_job(label, workflow, finalize_fn)`** — Adds a generation job to the queue.
|
Two independent queues with separate worker threads:
|
||||||
- **`_make_finalize(category, slug, db_model_class=None, action=None)`** — Factory returning a callback that retrieves the generated image from ComfyUI, saves it, and optionally updates the DB cover image.
|
|
||||||
|
- **ComfyUI queue** (`_job_queue` + `_queue_worker`): Image generation jobs.
|
||||||
|
- **`_enqueue_job(label, workflow, finalize_fn)`** — Adds a generation job to the queue.
|
||||||
|
- **`_make_finalize(category, slug, db_model_class=None, action=None)`** — Factory returning a callback that retrieves the generated image from ComfyUI, saves it, and optionally updates the DB cover image.
|
||||||
|
- **LLM queue** (`_llm_queue` + `_llm_queue_worker`): LLM task jobs (tag regeneration, bulk create with overwrite).
|
||||||
|
- **`_enqueue_task(label, task_fn)`** — Adds an LLM task job. `task_fn` receives the job dict and runs inside `app.app_context()`.
|
||||||
|
- **Shared**: Both queues share `_job_history` (for status lookup by job ID) and `_job_queue_lock`.
|
||||||
- **`_prune_job_history(max_age_seconds=3600)`** — Removes old terminal-state jobs from memory.
|
- **`_prune_job_history(max_age_seconds=3600)`** — Removes old terminal-state jobs from memory.
|
||||||
- **`init_queue_worker(flask_app)`** — Stores the app reference and starts the worker thread.
|
- **`init_queue_worker(flask_app)`** — Stores the app reference and starts both worker threads.
|
||||||
|
|
||||||
### `services/comfyui.py` — ComfyUI HTTP Client
|
### `services/comfyui.py` — ComfyUI HTTP Client
|
||||||
|
|
||||||
@@ -165,13 +180,14 @@ LoRA nodes chain: `4 → 16 → 17 → 18 → 19`. Unused LoRA nodes are bypasse
|
|||||||
|
|
||||||
### `services/llm.py` — LLM Integration
|
### `services/llm.py` — LLM Integration
|
||||||
|
|
||||||
- **`call_llm(prompt, system_prompt)`** — OpenAI-compatible chat completion supporting OpenRouter (cloud) and Ollama/LMStudio (local). Implements a tool-calling loop (up to 10 turns) using `DANBOORU_TOOLS` via MCP Docker container.
|
- **`call_llm(prompt, system_prompt)`** — OpenAI-compatible chat completion supporting OpenRouter (cloud) and Ollama/LMStudio (local). Implements a tool-calling loop (up to 10 turns) using `DANBOORU_TOOLS` via MCP Docker container. Safe to call from background threads (uses `has_request_context()` fallback for OpenRouter HTTP-Referer header).
|
||||||
- **`load_prompt(filename)`** — Loads system prompt text from `data/prompts/`.
|
- **`load_prompt(filename)`** — Loads system prompt text from `data/prompts/`.
|
||||||
- **`call_mcp_tool()`** — Synchronous wrapper for MCP tool calls.
|
- **`call_mcp_tool()`** — Synchronous wrapper for MCP tool calls.
|
||||||
|
|
||||||
### `services/sync.py` — Data Synchronization
|
### `services/sync.py` — Data Synchronization
|
||||||
|
|
||||||
- **`sync_characters()`, `sync_outfits()`, `sync_actions()`, etc.** — Load JSON files from `data/` directories into SQLite. One function per category.
|
- **`sync_characters()`, `sync_outfits()`, `sync_actions()`, etc.** — Load JSON files from `data/` directories into SQLite. One function per category.
|
||||||
|
- **`_sync_nsfw_from_tags(entity, data)`** — Reads `data['tags']['nsfw']` and sets `entity.is_nsfw`. Called in every sync function on both create and update paths.
|
||||||
- **`_resolve_preset_entity(type, id)`** / **`_resolve_preset_fields(preset_data)`** — Preset resolution helpers.
|
- **`_resolve_preset_entity(type, id)`** / **`_resolve_preset_fields(preset_data)`** — Preset resolution helpers.
|
||||||
|
|
||||||
### `services/file_io.py` — File & DB Helpers
|
### `services/file_io.py` — File & DB Helpers
|
||||||
@@ -180,6 +196,10 @@ LoRA nodes chain: `4 → 16 → 17 → 18 → 19`. Unused LoRA nodes are bypasse
|
|||||||
- **`get_available_checkpoints()`** — Scans checkpoint directories.
|
- **`get_available_checkpoints()`** — Scans checkpoint directories.
|
||||||
- **`_count_look_assignments()`** / **`_count_outfit_lora_assignments()`** — DB aggregate queries.
|
- **`_count_look_assignments()`** / **`_count_outfit_lora_assignments()`** — DB aggregate queries.
|
||||||
|
|
||||||
|
### `services/generation.py` — Shared Generation Logic
|
||||||
|
|
||||||
|
- **`generate_from_preset(preset, overrides=None)`** — Core preset generation function used by both the web route and the REST API. Resolves entities, builds prompts, wires the workflow, and enqueues the job. The `overrides` dict accepts: `action`, `checkpoint`, `extra_positive`, `extra_negative`, `seed`, `width`, `height`. Has no `request` or `session` dependencies.
|
||||||
|
|
||||||
### `services/mcp.py` — MCP/Docker Lifecycle
|
### `services/mcp.py` — MCP/Docker Lifecycle
|
||||||
|
|
||||||
- **`ensure_mcp_server_running()`** — Ensures the danbooru-mcp Docker container is running.
|
- **`ensure_mcp_server_running()`** — Ensures the danbooru-mcp Docker container is running.
|
||||||
@@ -194,7 +214,9 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
- `routes/checkpoints.py`: `_build_checkpoint_workflow()` — checkpoint-specific workflow builder
|
- `routes/checkpoints.py`: `_build_checkpoint_workflow()` — checkpoint-specific workflow builder
|
||||||
- `routes/strengths.py`: `_build_strengths_prompts()`, `_prepare_strengths_workflow()` — strengths gallery helpers
|
- `routes/strengths.py`: `_build_strengths_prompts()`, `_prepare_strengths_workflow()` — strengths gallery helpers
|
||||||
- `routes/transfer.py`: `_create_minimal_template()` — transfer template builder
|
- `routes/transfer.py`: `_create_minimal_template()` — transfer template builder
|
||||||
- `routes/gallery.py`: `_scan_gallery_images()`, `_enrich_with_names()`, `_parse_comfy_png_metadata()`
|
- `routes/gallery.py`: `_scan_gallery_images()`, `_enrich_with_names()`, `_parse_comfy_png_metadata()`, `_write_sidecar()` — gallery image sidecar JSON I/O
|
||||||
|
- `routes/regenerate.py`: Tag regeneration routes (single + category bulk + all), tag migration
|
||||||
|
- `routes/search.py`: `_search_resources()`, `_search_images()` — global search across resources and gallery
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -212,7 +234,7 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
},
|
},
|
||||||
"styles": { "aesthetic": "", "primary_color": "", "secondary_color": "", "tertiary_color": "" },
|
"styles": { "aesthetic": "", "primary_color": "", "secondary_color": "", "tertiary_color": "" },
|
||||||
"lora": { "lora_name": "Illustrious/Looks/tifa.safetensors", "lora_weight": 0.8, "lora_triggers": "" },
|
"lora": { "lora_name": "Illustrious/Looks/tifa.safetensors", "lora_weight": 0.8, "lora_triggers": "" },
|
||||||
"tags": [],
|
"tags": { "origin_series": "Final Fantasy VII", "origin_type": "game", "nsfw": false },
|
||||||
"participants": { "orientation": "1F", "solo_focus": "true" }
|
"participants": { "orientation": "1F", "solo_focus": "true" }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
@@ -225,7 +247,7 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
"outfit_name": "French Maid",
|
"outfit_name": "French Maid",
|
||||||
"wardrobe": { "full_body": "", "headwear": "", "top": "", "bottom": "", "legwear": "", "footwear": "", "hands": "", "accessories": "" },
|
"wardrobe": { "full_body": "", "headwear": "", "top": "", "bottom": "", "legwear": "", "footwear": "", "hands": "", "accessories": "" },
|
||||||
"lora": { "lora_name": "Illustrious/Clothing/maid.safetensors", "lora_weight": 0.8, "lora_triggers": "" },
|
"lora": { "lora_name": "Illustrious/Clothing/maid.safetensors", "lora_weight": 0.8, "lora_triggers": "" },
|
||||||
"tags": []
|
"tags": { "outfit_type": "Uniform", "nsfw": false }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -236,7 +258,7 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
"action_name": "Sitting",
|
"action_name": "Sitting",
|
||||||
"action": { "full_body": "", "additional": "", "head": "", "eyes": "", "arms": "", "hands": "" },
|
"action": { "full_body": "", "additional": "", "head": "", "eyes": "", "arms": "", "hands": "" },
|
||||||
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" },
|
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" },
|
||||||
"tags": []
|
"tags": { "participants": "1girl", "nsfw": false }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -247,7 +269,7 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
"scene_name": "Beach",
|
"scene_name": "Beach",
|
||||||
"scene": { "background": "", "foreground": "", "furniture": "", "colors": "", "lighting": "", "theme": "" },
|
"scene": { "background": "", "foreground": "", "furniture": "", "colors": "", "lighting": "", "theme": "" },
|
||||||
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" },
|
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" },
|
||||||
"tags": []
|
"tags": { "scene_type": "Outdoor", "nsfw": false }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -257,7 +279,8 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
"style_id": "watercolor",
|
"style_id": "watercolor",
|
||||||
"style_name": "Watercolor",
|
"style_name": "Watercolor",
|
||||||
"style": { "artist_name": "", "artistic_style": "" },
|
"style": { "artist_name": "", "artistic_style": "" },
|
||||||
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" }
|
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" },
|
||||||
|
"tags": { "style_type": "Watercolor", "nsfw": false }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -268,7 +291,8 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
"detailer_name": "Detailed Skin",
|
"detailer_name": "Detailed Skin",
|
||||||
"prompt": ["detailed skin", "pores"],
|
"prompt": ["detailed skin", "pores"],
|
||||||
"focus": { "face": true, "hands": true },
|
"focus": { "face": true, "hands": true },
|
||||||
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" }
|
"lora": { "lora_name": "", "lora_weight": 1.0, "lora_triggers": "" },
|
||||||
|
"tags": { "associated_resource": "skin", "adetailer_targets": ["face", "hands"], "nsfw": false }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -281,7 +305,7 @@ Some helpers are defined inside a route module's `register_routes()` since they'
|
|||||||
"positive": "casual clothes, jeans",
|
"positive": "casual clothes, jeans",
|
||||||
"negative": "revealing",
|
"negative": "revealing",
|
||||||
"lora": { "lora_name": "Illustrious/Looks/tifa_casual.safetensors", "lora_weight": 0.85, "lora_triggers": "" },
|
"lora": { "lora_name": "Illustrious/Looks/tifa_casual.safetensors", "lora_weight": 0.85, "lora_triggers": "" },
|
||||||
"tags": []
|
"tags": { "origin_series": "Final Fantasy VII", "origin_type": "game", "nsfw": false }
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
Looks occupy LoRA node 16, overriding the character's own LoRA. The Look's `negative` is prepended to the workflow's negative prompt.
|
Looks occupy LoRA node 16, overriding the character's own LoRA. The Look's `negative` is prepended to the workflow's negative prompt.
|
||||||
@@ -320,13 +344,14 @@ Checkpoint JSONs are keyed by `checkpoint_path`. If no JSON exists for a discove
|
|||||||
|
|
||||||
### Category Pattern (Outfits, Actions, Styles, Scenes, Detailers)
|
### Category Pattern (Outfits, Actions, Styles, Scenes, Detailers)
|
||||||
Each category follows the same URL pattern:
|
Each category follows the same URL pattern:
|
||||||
- `GET /<category>/` — gallery
|
- `GET /<category>/` — library with favourite/NSFW filter controls
|
||||||
- `GET /<category>/<slug>` — detail + generation UI
|
- `GET /<category>/<slug>` — detail + generation UI
|
||||||
- `POST /<category>/<slug>/generate` — queue generation; returns `{"job_id": ...}`
|
- `POST /<category>/<slug>/generate` — queue generation; returns `{"job_id": ...}`
|
||||||
- `POST /<category>/<slug>/replace_cover_from_preview`
|
- `POST /<category>/<slug>/replace_cover_from_preview`
|
||||||
- `GET/POST /<category>/<slug>/edit`
|
- `GET/POST /<category>/<slug>/edit`
|
||||||
- `POST /<category>/<slug>/upload`
|
- `POST /<category>/<slug>/upload`
|
||||||
- `POST /<category>/<slug>/save_defaults`
|
- `POST /<category>/<slug>/save_defaults`
|
||||||
|
- `POST /<category>/<slug>/favourite` — toggle `is_favourite` (AJAX)
|
||||||
- `POST /<category>/<slug>/clone` — duplicate entry
|
- `POST /<category>/<slug>/clone` — duplicate entry
|
||||||
- `POST /<category>/<slug>/save_json` — save raw JSON (from modal editor)
|
- `POST /<category>/<slug>/save_json` — save raw JSON (from modal editor)
|
||||||
- `POST /<category>/rescan`
|
- `POST /<category>/rescan`
|
||||||
@@ -351,12 +376,34 @@ Each category follows the same URL pattern:
|
|||||||
- `POST /checkpoint/<slug>/save_json`
|
- `POST /checkpoint/<slug>/save_json`
|
||||||
- `POST /checkpoints/rescan`
|
- `POST /checkpoints/rescan`
|
||||||
|
|
||||||
|
### REST API (`/api/v1/`)
|
||||||
|
Authenticated via `X-API-Key` header (or `api_key` query param). Key is stored in `Settings.api_key` and managed from the Settings page.
|
||||||
|
- `GET /api/v1/presets` — list all presets (id, slug, name, has_cover)
|
||||||
|
- `POST /api/v1/generate/<preset_slug>` — queue generation from a preset; accepts JSON body with optional `checkpoint`, `extra_positive`, `extra_negative`, `seed`, `width`, `height`, `count` (1–20); returns `{"jobs": [{"job_id": ..., "status": "queued"}]}`
|
||||||
|
- `GET /api/v1/job/<job_id>` — poll job status; returns `{"id", "label", "status", "error", "result"}`
|
||||||
|
- `POST /api/key/regenerate` — generate a new API key (Settings page)
|
||||||
|
|
||||||
|
See `API_GUIDE.md` for full usage examples.
|
||||||
|
|
||||||
### Job Queue API
|
### Job Queue API
|
||||||
All generation routes use the background job queue. Frontend polls:
|
All generation routes use the background job queue. Frontend polls:
|
||||||
- `GET /api/queue/<job_id>/status` — returns `{"status": "pending"|"running"|"done"|"failed", "result": {...}}`
|
- `GET /api/queue/<job_id>/status` — returns `{"status": "pending"|"running"|"done"|"failed", "result": {...}}`
|
||||||
|
|
||||||
Image retrieval is handled server-side by the `_make_finalize()` callback; there are no separate client-facing finalize routes.
|
Image retrieval is handled server-side by the `_make_finalize()` callback; there are no separate client-facing finalize routes.
|
||||||
|
|
||||||
|
### Search
|
||||||
|
- `GET /search` — global search page; query params: `q` (search term), `category` (all/characters/outfits/etc.), `nsfw` (all/sfw/nsfw), `type` (all/resources/images)
|
||||||
|
|
||||||
|
### Tag Regeneration
|
||||||
|
- `POST /api/<category>/<slug>/regenerate_tags` — single entity tag regeneration via LLM queue
|
||||||
|
- `POST /admin/bulk_regenerate_tags/<category>` — queue LLM tag regeneration for all entities in a category
|
||||||
|
- `POST /admin/bulk_regenerate_tags` — queue LLM tag regeneration for all resources across all categories
|
||||||
|
- `POST /admin/migrate_tags` — convert old list-format tags to new dict format
|
||||||
|
|
||||||
|
### Gallery Image Metadata
|
||||||
|
- `POST /gallery/image/favourite` — toggle favourite on a gallery image (writes sidecar JSON)
|
||||||
|
- `POST /gallery/image/nsfw` — toggle NSFW on a gallery image (writes sidecar JSON)
|
||||||
|
|
||||||
### Utilities
|
### Utilities
|
||||||
- `POST /set_default_checkpoint` — save default checkpoint to session and persist to `comfy_workflow.json`
|
- `POST /set_default_checkpoint` — save default checkpoint to session and persist to `comfy_workflow.json`
|
||||||
- `GET /get_missing_{characters,outfits,actions,scenes,styles,detailers,looks,checkpoints}` — AJAX: list items without cover images (sorted by display name)
|
- `GET /get_missing_{characters,outfits,actions,scenes,styles,detailers,looks,checkpoints}` — AJAX: list items without cover images (sorted by display name)
|
||||||
@@ -378,7 +425,7 @@ Image retrieval is handled server-side by the `_make_finalize()` callback; there
|
|||||||
- Global default checkpoint selector (saves to session via AJAX)
|
- Global default checkpoint selector (saves to session via AJAX)
|
||||||
- Resource delete modal (soft/hard) shared across gallery pages
|
- Resource delete modal (soft/hard) shared across gallery pages
|
||||||
- `initJsonEditor(saveUrl)` — shared JSON editor modal (simple form + raw textarea tabs)
|
- `initJsonEditor(saveUrl)` — shared JSON editor modal (simple form + raw textarea tabs)
|
||||||
- Context processors inject `all_checkpoints`, `default_checkpoint_path`, and `COMFYUI_WS_URL` into every template.
|
- Context processors inject `all_checkpoints`, `default_checkpoint_path`, and `COMFYUI_WS_URL` into every template. The `random_gen_image(category, slug)` template global returns a random image path from `static/uploads/<category>/<slug>/` for use as a fallback cover when `image_path` is not set.
|
||||||
- **No `{% block head %}` exists** in layout.html — do not try to use it.
|
- **No `{% block head %}` exists** in layout.html — do not try to use it.
|
||||||
- Generation is async: JS submits the form via AJAX (`X-Requested-With: XMLHttpRequest`), receives a `{"job_id": ...}` response, then polls `/api/queue/<job_id>/status` every ~1.5 seconds until `status == "done"`. The server-side worker handles all ComfyUI polling and image saving via the `_make_finalize()` callback. There are no client-facing finalize HTTP routes.
|
- Generation is async: JS submits the form via AJAX (`X-Requested-With: XMLHttpRequest`), receives a `{"job_id": ...}` response, then polls `/api/queue/<job_id>/status` every ~1.5 seconds until `status == "done"`. The server-side worker handles all ComfyUI polling and image saving via the `_make_finalize()` callback. There are no client-facing finalize HTTP routes.
|
||||||
- **Batch generation** (library pages): Uses a two-phase pattern:
|
- **Batch generation** (library pages): Uses a two-phase pattern:
|
||||||
@@ -386,6 +433,7 @@ Image retrieval is handled server-side by the `_make_finalize()` callback; there
|
|||||||
2. **Poll phase**: All jobs are polled concurrently via `Promise.all()`, updating UI as each completes
|
2. **Poll phase**: All jobs are polled concurrently via `Promise.all()`, updating UI as each completes
|
||||||
3. **Progress tracking**: Displays currently processing items in real-time using a `Set` to track active jobs
|
3. **Progress tracking**: Displays currently processing items in real-time using a `Set` to track active jobs
|
||||||
4. **Sorting**: All batch operations sort items by display `name` (not `filename`) for better UX
|
4. **Sorting**: All batch operations sort items by display `name` (not `filename`) for better UX
|
||||||
|
- **Fallback covers** (library pages): When a resource has no assigned `image_path` but has generated images in its upload folder, a random image is shown at 50% opacity (CSS class `fallback-cover`). The image changes on each page load. Resources with no generations show "No Image".
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -396,8 +444,10 @@ Text files in `data/prompts/` define JSON output schemas for LLM-generated entri
|
|||||||
- `character_system.txt` — character JSON schema
|
- `character_system.txt` — character JSON schema
|
||||||
- `outfit_system.txt` — outfit JSON schema
|
- `outfit_system.txt` — outfit JSON schema
|
||||||
- `action_system.txt`, `scene_system.txt`, `style_system.txt`, `detailer_system.txt`, `look_system.txt`, `checkpoint_system.txt`
|
- `action_system.txt`, `scene_system.txt`, `style_system.txt`, `detailer_system.txt`, `look_system.txt`, `checkpoint_system.txt`
|
||||||
|
- `preset_system.txt` — preset JSON schema
|
||||||
|
- `regenerate_tags_system.txt` — tag regeneration schema (all per-category tag structures)
|
||||||
|
|
||||||
Used by: character/outfit/action/scene/style create forms, and bulk_create routes.
|
Used by: character/outfit/action/scene/style create forms, bulk_create routes, and tag regeneration. All system prompts include NSFW awareness preamble.
|
||||||
|
|
||||||
### Danbooru MCP Tools
|
### Danbooru MCP Tools
|
||||||
The LLM loop in `call_llm()` provides three tools via a Docker-based MCP server (`danbooru-mcp:latest`):
|
The LLM loop in `call_llm()` provides three tools via a Docker-based MCP server (`danbooru-mcp:latest`):
|
||||||
@@ -411,6 +461,41 @@ All system prompts (`character_system.txt`, `outfit_system.txt`, `action_system.
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Tagging System
|
||||||
|
|
||||||
|
Tags are **semantic metadata** for organizing and filtering resources. They are **not injected into generation prompts** — tags are purely for the UI (search, filtering, categorization).
|
||||||
|
|
||||||
|
### Tag Schema Per Category
|
||||||
|
|
||||||
|
| Category | Tag fields | Example |
|
||||||
|
|----------|-----------|---------|
|
||||||
|
| Character | `origin_series`, `origin_type`, `nsfw` | `{"origin_series": "Final Fantasy VII", "origin_type": "game", "nsfw": false}` |
|
||||||
|
| Look | `origin_series`, `origin_type`, `nsfw` | same as Character |
|
||||||
|
| Outfit | `outfit_type`, `nsfw` | `{"outfit_type": "Uniform", "nsfw": false}` |
|
||||||
|
| Action | `participants`, `nsfw` | `{"participants": "1girl, 1boy", "nsfw": true}` |
|
||||||
|
| Style | `style_type`, `nsfw` | `{"style_type": "Anime", "nsfw": false}` |
|
||||||
|
| Scene | `scene_type`, `nsfw` | `{"scene_type": "Indoor", "nsfw": false}` |
|
||||||
|
| Detailer | `associated_resource`, `adetailer_targets`, `nsfw` | `{"associated_resource": "skin", "adetailer_targets": ["face", "hands"], "nsfw": false}` |
|
||||||
|
| Checkpoint | `art_style`, `base_model`, `nsfw` | `{"art_style": "anime", "base_model": "Illustrious", "nsfw": false}` |
|
||||||
|
|
||||||
|
### Favourite / NSFW Columns
|
||||||
|
|
||||||
|
- `is_favourite` — DB-only boolean. Toggled via `POST /<category>/<slug>/favourite`. Not stored in JSON (user preference, not asset metadata).
|
||||||
|
- `is_nsfw` — DB column **and** `tags.nsfw` in JSON. Synced from JSON on rescan via `_sync_nsfw_from_tags()`. Editable from edit pages.
|
||||||
|
|
||||||
|
### Library Filtering
|
||||||
|
|
||||||
|
All library index pages support query params:
|
||||||
|
- `?favourite=on` — show only favourites
|
||||||
|
- `?nsfw=sfw|nsfw|all` — filter by NSFW status
|
||||||
|
- Results are ordered by `is_favourite DESC, name ASC` (favourites sort first).
|
||||||
|
|
||||||
|
### Gallery Image Sidecar Files
|
||||||
|
|
||||||
|
Gallery images can have per-image favourite/NSFW metadata stored in sidecar JSON files at `{image_path}.json` (e.g. `static/uploads/characters/tifa/gen_123.png.json`). Sidecar schema: `{"is_favourite": bool, "is_nsfw": bool}`.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## LoRA File Paths
|
## LoRA File Paths
|
||||||
|
|
||||||
LoRA filenames in JSON are stored as paths relative to ComfyUI's `models/lora/` root:
|
LoRA filenames in JSON are stored as paths relative to ComfyUI's `models/lora/` root:
|
||||||
@@ -507,5 +592,7 @@ Volumes mounted into the app container:
|
|||||||
- **LoRA chaining**: If a LoRA node has no LoRA (name is empty/None), the node is skipped and `model_source`/`clip_source` pass through unchanged. Do not set the node inputs for skipped nodes.
|
- **LoRA chaining**: If a LoRA node has no LoRA (name is empty/None), the node is skipped and `model_source`/`clip_source` pass through unchanged. Do not set the node inputs for skipped nodes.
|
||||||
- **AJAX detection**: `request.headers.get('X-Requested-With') == 'XMLHttpRequest'` determines whether to return JSON or redirect.
|
- **AJAX detection**: `request.headers.get('X-Requested-With') == 'XMLHttpRequest'` determines whether to return JSON or redirect.
|
||||||
- **Session must be marked modified for JSON responses**: After setting session values in AJAX-responding routes, set `session.modified = True`.
|
- **Session must be marked modified for JSON responses**: After setting session values in AJAX-responding routes, set `session.modified = True`.
|
||||||
- **Detailer `prompt` is a list**: The `prompt` field in detailer JSON is stored as a list of strings (e.g. `["detailed skin", "pores"]`), not a plain string. When merging into `tags` for `build_prompt`, use `extend` for lists and `append` for strings — never append the list object itself or `", ".join()` will fail on the nested list item.
|
- **Detailer `prompt` is a list**: The `prompt` field in detailer JSON is stored as a list of strings (e.g. `["detailed skin", "pores"]`), not a plain string. In generate routes, the detailer prompt is injected directly into `prompts['main']` after `build_prompt()` returns (not via tags or `build_prompt` itself).
|
||||||
- **`_make_finalize` action semantics**: Pass `action=None` when the route should always update the DB cover (e.g. batch generate, checkpoint generate). Pass `action=request.form.get('action')` for routes that support both "preview" (no DB update) and "replace" (update DB). The factory skips the DB write when `action` is truthy and not `"replace"`.
|
- **`_make_finalize` action semantics**: Pass `action=None` when the route should always update the DB cover (e.g. batch generate, checkpoint generate). Pass `action=request.form.get('action')` for routes that support both "preview" (no DB update) and "replace" (update DB). The factory skips the DB write when `action` is truthy and not `"replace"`.
|
||||||
|
- **LLM queue runs without request context**: `_enqueue_task()` callbacks execute in a background thread with only `app.app_context()`. Do not access `flask.request`, `flask.session`, or other request-scoped objects inside `task_fn`. Use `has_request_context()` guard if code is shared between HTTP handlers and background tasks.
|
||||||
|
- **Tags are metadata only**: Tags (`data['tags']`) are never injected into generation prompts. They are purely for UI filtering and search. The old pattern of `parts.extend(data.get('tags', []))` in prompt building has been removed.
|
||||||
|
|||||||
15
app.py
15
app.py
@@ -106,6 +106,7 @@ if __name__ == '__main__':
|
|||||||
('lora_dir_detailers', "VARCHAR(500) DEFAULT '/ImageModels/lora/Illustrious/Detailers'"),
|
('lora_dir_detailers', "VARCHAR(500) DEFAULT '/ImageModels/lora/Illustrious/Detailers'"),
|
||||||
('checkpoint_dirs', "VARCHAR(1000) DEFAULT '/ImageModels/Stable-diffusion/Illustrious,/ImageModels/Stable-diffusion/Noob'"),
|
('checkpoint_dirs', "VARCHAR(1000) DEFAULT '/ImageModels/Stable-diffusion/Illustrious,/ImageModels/Stable-diffusion/Noob'"),
|
||||||
('default_checkpoint', "VARCHAR(500)"),
|
('default_checkpoint', "VARCHAR(500)"),
|
||||||
|
('api_key', "VARCHAR(255)"),
|
||||||
]
|
]
|
||||||
for col_name, col_type in columns_to_add:
|
for col_name, col_type in columns_to_add:
|
||||||
try:
|
try:
|
||||||
@@ -118,6 +119,20 @@ if __name__ == '__main__':
|
|||||||
else:
|
else:
|
||||||
print(f"Migration settings note ({col_name}): {e}")
|
print(f"Migration settings note ({col_name}): {e}")
|
||||||
|
|
||||||
|
# Migration: Add is_favourite and is_nsfw columns to all resource tables
|
||||||
|
_tag_tables = ['character', 'look', 'outfit', 'action', 'style', 'scene', 'detailer', 'checkpoint']
|
||||||
|
for _tbl in _tag_tables:
|
||||||
|
for _col, _type in [('is_favourite', 'BOOLEAN DEFAULT 0'), ('is_nsfw', 'BOOLEAN DEFAULT 0')]:
|
||||||
|
try:
|
||||||
|
db.session.execute(text(f'ALTER TABLE {_tbl} ADD COLUMN {_col} {_type}'))
|
||||||
|
db.session.commit()
|
||||||
|
print(f"Added {_col} column to {_tbl} table")
|
||||||
|
except Exception as e:
|
||||||
|
if 'duplicate column name' in str(e).lower() or 'already exists' in str(e).lower():
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
print(f"Migration note ({_tbl}.{_col}): {e}")
|
||||||
|
|
||||||
# Ensure settings exist
|
# Ensure settings exist
|
||||||
if not Settings.query.first():
|
if not Settings.query.first():
|
||||||
db.session.add(Settings())
|
db.session.add(Settings())
|
||||||
|
|||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "3p_sex_000037",
|
"action_id": "3p_sex_000037",
|
||||||
"action_name": "3P Sex 000037",
|
"action_name": "3P Sex 000037",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "threesome",
|
"base": "threesome, group_sex, 3_people",
|
||||||
"head": "blush, half-closed_eyes",
|
"head": "blush, half-closed_eyes, sweat",
|
||||||
"upper_body": "reaching, nude",
|
"upper_body": "nude, reaching",
|
||||||
"lower_body": "sex, spread_legs",
|
"lower_body": "sex, spread_legs, intercourse",
|
||||||
"hands": "groping",
|
"hands": "groping",
|
||||||
"feet": "toes_curled",
|
"feet": "toes_curled",
|
||||||
"additional": "sweat"
|
"additional": "panting, orgasm, sweat"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/3P_SEX-000037.safetensors",
|
"lora_name": "Illustrious/Poses/3P_SEX-000037.safetensors",
|
||||||
@@ -17,13 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"threesome",
|
"participants": "threesome",
|
||||||
"group_sex",
|
"nsfw": true
|
||||||
"nude",
|
}
|
||||||
"sex",
|
|
||||||
"blush",
|
|
||||||
"groping",
|
|
||||||
"sweat"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "4p_sex",
|
"action_id": "4p_sex",
|
||||||
"action_name": "4P Sex",
|
"action_name": "4P Sex",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "Choreographed foursome group sex scene involving four participants (e.g., 1 girl and 3 boys or 3 girls and 1 boy) engaged in simultaneous sexual acts like double penetration or cooperative fellatio.",
|
"base": "group_sex, foursome, 4p, multiple_partners, sexual_act",
|
||||||
"head": "Moaning expression, open mouth, potentially heavily breathing or performing fellatio., Heart-shaped pupils, ahegao, or rolling back in pleasure.",
|
"head": "moaning, open_mouth, closed_eyes, ahegao, heart_eyes, heavy_breathing, flushed_face, sweat",
|
||||||
"upper_body": "Bracing on the surface (all fours), holding onto partners, or grabbing sheets., Nude, arching back, breasts exposed and pressed or being touched.",
|
"upper_body": "nude, arching_back, standing_on_all_fours, breasts_press, breast_grab, fingers_in_mouth",
|
||||||
"lower_body": "Engaged in intercourse, involving vaginal or anal penetration, potentially double penetration., Spread wide, positioned in all fours, missionary, or reverse cowgirl depending on specific interaction.",
|
"lower_body": "vaginal_intercourse, anal_intercourse, double_penetration, legs_apart, kneeing, missionary_position",
|
||||||
"hands": "Grabbing breasts, holding legs, fingering, or resting on knees/shoulders.",
|
"hands": "breast_fondling, clutching_sheets, on_partner, touching_self",
|
||||||
"feet": "Toes curled, dynamic positioning based on stance (kneeling or lying).",
|
"feet": "toes_curled, barefoot",
|
||||||
"additional": "Sexual fluids, messy after-sex atmosphere, sweat, steaming body."
|
"additional": "bodily_fluids, semen, sweat, messy, erotic, intimate"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/4P_sex.safetensors",
|
"lora_name": "Illustrious/Poses/4P_sex.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 0.6,
|
"lora_weight_min": 0.6,
|
||||||
"lora_weight_max": 0.6
|
"lora_weight_max": 0.6
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"4P_sexV1",
|
"participants": "4people",
|
||||||
"group sex",
|
"nsfw": true
|
||||||
"foursome",
|
}
|
||||||
"4P",
|
|
||||||
"double penetration",
|
|
||||||
"fellatio",
|
|
||||||
"all fours",
|
|
||||||
"uncensored",
|
|
||||||
"hetero",
|
|
||||||
"sex"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "_malebolgia__oral_sex_tounge_afterimage_concept_2_0_illustrious",
|
"action_id": "_malebolgia__oral_sex_tounge_afterimage_concept_2_0_illustrious",
|
||||||
"action_name": "Malebolgia Oral Sex Tounge Afterimage Concept 2 0 Illustrious",
|
"action_name": "Malebolgia Oral Sex Tounge Afterimage Concept 2 0 Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling, leaning forward, engaged in oral activity",
|
"base": "kneeling, leaning_forward, oral_sex",
|
||||||
"head": "facing target, mouth wide open, intense expression, looking up, half-closed",
|
"head": "looking_up, mouth_open, intense_expression, half-closed_eyes",
|
||||||
"upper_body": "reaching forward, angled towards partner",
|
"upper_body": "forward_bend, reaching_forward",
|
||||||
"lower_body": "stationary, kneeling on the floor",
|
"lower_body": "kneeling, legs_spread",
|
||||||
"hands": "grasping partner's thighs or hips",
|
"hands": "grabbing_partner, hand_on_thigh",
|
||||||
"feet": "tucked behind",
|
"feet": "barefoot",
|
||||||
"additional": "afterimage, motion blur, multiple tongues, rapid tongue movement, speed lines, saliva trails"
|
"additional": "afterimage, motion_blur, multiple_tongues, speed_lines, saliva_drool"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,11 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"oral",
|
"participants": "1girl 1boy",
|
||||||
"rapid motion",
|
"nsfw": true
|
||||||
"tongue play",
|
}
|
||||||
"motion blur",
|
|
||||||
"surreal"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "actually_reliable_penis_kissing_3_variants_illustrious",
|
"action_id": "actually_reliable_penis_kissing_3_variants_illustrious",
|
||||||
"action_name": "Actually Reliable Penis Kissing 3 Variants Illustrious",
|
"action_name": "Actually Reliable Penis Kissing 3 Variants Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling in front of standing or sitting partner, leaning forward towards crotch",
|
"base": "kneeling, fellatio, oral sex, kissing penis",
|
||||||
"head": "face aligned with groin, lips pressing against glans or shaft, tongue slightly out, kissing connection, looking up at partner or closed in enjoyment, half-closed",
|
"head": "eyes closed, half-closed eyes, looking up, kissing, tongue",
|
||||||
"upper_body": "reaching forward or resting on partner's legs, leaning forward, arched back",
|
"upper_body": "arched back, leaning forward",
|
||||||
"lower_body": "kneeling pose, hips pushed back, kneeling on the ground",
|
"lower_body": "kneeling",
|
||||||
"hands": "gently holding the shaft, cupping testicles, or resting on partner's thighs",
|
"hands": "holding penis, hand on thigh",
|
||||||
"feet": "toes curled or flat",
|
"feet": "",
|
||||||
"additional": "saliva connection, affectionate oral interaction, unsucked penis"
|
"additional": "saliva, slime, connection"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,13 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"penis kissing",
|
"participants": "1girl 1boy",
|
||||||
"fellatio",
|
"nsfw": true
|
||||||
"oral sex",
|
}
|
||||||
"kneeling",
|
|
||||||
"saliva",
|
|
||||||
"tongue",
|
|
||||||
"close-up"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "after_sex_fellatio_illustriousxl_lora_nochekaiser_r1",
|
"action_id": "after_sex_fellatio_illustriousxl_lora_nochekaiser_r1",
|
||||||
"action_name": "After Sex Fellatio Illustriousxl Lora Nochekaiser R1",
|
"action_name": "After Sex Fellatio Illustriousxl Lora Nochekaiser R1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "completely_nude, lying, on_back, m_legs, spread_legs",
|
"base": "1girl, 1boy, completely_nude, lying, on_back, spread_legs",
|
||||||
"head": "looking_at_viewer, tongue, open_mouth, blush, messing_hair, half-closed_eyes, blue_eyes",
|
"head": "looking_at_viewer, tongue, open_mouth, blush, disheveled_hair, half-closed_eyes",
|
||||||
"upper_body": "arms_at_sides, on_bed, large_breasts, nipples, sweat",
|
"upper_body": "on_bed, large_breasts, nipples, sweat",
|
||||||
"lower_body": "pussy, cum_in_pussy, leaking_cum, m_legs, spread_legs, legs_up",
|
"lower_body": "pussy, cum_in_pussy, leaking_cum, knees_up, thighs_apart",
|
||||||
"hands": "on_bed, pressing_bed",
|
"hands": "on_bed",
|
||||||
"feet": "barefoot, toes",
|
"feet": "barefoot",
|
||||||
"additional": "after_sex, after_vaginal, fellatio, penis, cum, cumdrip, messy_body, bed_sheet"
|
"additional": "after_sex, fellatio, penis, cum, cum_drip, messy_body, sweat, bed_sheet"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/after-sex-fellatio-illustriousxl-lora-nochekaiser_r1.safetensors",
|
"lora_name": "Illustrious/Poses/after-sex-fellatio-illustriousxl-lora-nochekaiser_r1.safetensors",
|
||||||
@@ -17,20 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"after_sex",
|
"participants": "1girl 1boy",
|
||||||
"after_vaginal",
|
"nsfw": true
|
||||||
"fellatio",
|
}
|
||||||
"cum_in_pussy",
|
|
||||||
"m_legs",
|
|
||||||
"lying",
|
|
||||||
"on_back",
|
|
||||||
"on_bed",
|
|
||||||
"cumdrip",
|
|
||||||
"completely_nude",
|
|
||||||
"nipples",
|
|
||||||
"tongue",
|
|
||||||
"penis",
|
|
||||||
"cum"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"action_name": "Afterfellatio Ill",
|
"action_name": "Afterfellatio Ill",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling, leaning_forward, pov",
|
"base": "kneeling, leaning_forward, pov",
|
||||||
"head": "looking_at_viewer, blush, tilted_head, cum_on_face, half-closed_eyes, tears",
|
"head": "looking_at_viewer, blush, tilted_head, cum_on_face, half-closed_eyes, tears, messy_makeup",
|
||||||
"upper_body": "arms_down, reaching_towards_viewer, leaning_forward",
|
"upper_body": "arms_down, reaching_towards_viewer",
|
||||||
"lower_body": "kneeling, kneeling",
|
"lower_body": "kneeling",
|
||||||
"hands": "handjob, touching_penis",
|
"hands": "hands_on_penis",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "cum_string, cum_in_mouth, closed_mouth"
|
"additional": "cum, cum_string, cum_in_mouth, closed_mouth, stringy_cum"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/afterfellatio_ill.safetensors",
|
"lora_name": "Illustrious/Poses/afterfellatio_ill.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"after_fellatio",
|
"participants": "1girl 1boy",
|
||||||
"cum_in_mouth",
|
"nsfw": true
|
||||||
"cum_string",
|
}
|
||||||
"closed_mouth",
|
|
||||||
"blush",
|
|
||||||
"half-closed_eyes",
|
|
||||||
"looking_at_viewer",
|
|
||||||
"kneeling",
|
|
||||||
"pov",
|
|
||||||
"handjob"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "afteroral",
|
"action_id": "afteroral",
|
||||||
"action_name": "Afteroral",
|
"action_name": "Afteroral",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "Character depicted immediately after performing oral sex, often focusing on the upper body and face.",
|
"base": "after_fellatio, post-coital, flushed_face, messy_appearance",
|
||||||
"head": "Messy hair, flushed cheeks, mouth slightly open or panting., Half-closed or dazed expression, potentially with runny mascara or makeup.",
|
"head": "messy_hair, panting, heavy_breathing, half-closed_eyes, dazed, pupil_dilated, flushed, sweat",
|
||||||
"upper_body": "Relaxed or wiping mouth., Heaving chest indicative of heavy breathing.",
|
"upper_body": "smeared_lipstick, runny_makeup, saliva, saliva_trail, cum_on_face, cum_on_mouth, excessive_cum",
|
||||||
"lower_body": "N/A (typically upper body focus), N/A",
|
"lower_body": "",
|
||||||
"hands": "Resting or near face.",
|
"hands": "hands_near_face, curled_fingers",
|
||||||
"feet": "N/A",
|
"feet": "",
|
||||||
"additional": "Presence of bodily fluids like saliva trails or excessive cum on face and messy makeup."
|
"additional": "after_fellatio, cum_drip, mess"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/afteroral.safetensors",
|
"lora_name": "Illustrious/Poses/afteroral.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"after_fellatio",
|
"participants": "solo",
|
||||||
"runny_makeup",
|
"nsfw": true
|
||||||
"smeared_lipstick",
|
}
|
||||||
"saliva_trail",
|
|
||||||
"excessive_cum",
|
|
||||||
"messy_hair",
|
|
||||||
"heavy_breathing",
|
|
||||||
"cum_bubble",
|
|
||||||
"penis_on_face",
|
|
||||||
"sweat"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "afterpaizuri",
|
"action_id": "afterpaizuri",
|
||||||
"action_name": "Afterpaizuri",
|
"action_name": "Afterpaizuri",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling or sitting, displaying upper body aftermath, exhausted posture",
|
"base": "kneeling, sitting, exhausted, post-coital, afterpaizuri",
|
||||||
"head": "flushed face, messy hair, panting, mouth slightly open, tongue out, half-closed eyes, dazed expression, looking at viewer",
|
"head": "flushed, messy_hair, panting, mouth_open, tongue_out, half-closed_eyes, dazed, looking_at_viewer",
|
||||||
"upper_body": "resting on thighs or gesturing towards chest, exposed cleavage, chest covered in white liquid, disheveled clothes",
|
"upper_body": "bare_shoulders, cleavage, semen_on_breasts, disheveled_clothes, bra_removed_under_clothes",
|
||||||
"lower_body": "hips settling back, kneeling posture, kneeling, thighs together or slightly spread",
|
"lower_body": "kneeling, thighs_together, buttocks_on_heels",
|
||||||
"hands": "presenting breasts or cleaning face",
|
"hands": "hands_on_lap",
|
||||||
"feet": "tucked under buttocks or relaxed",
|
"feet": "barefoot",
|
||||||
"additional": "semen on breasts, semen on face, heavy breathing, sweat, sticky fluids"
|
"additional": "semen_on_face, heavy_breathing, sweat, moisture, viscous_liquid, creamy_fluid"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"after paizuri",
|
"participants": "1girl",
|
||||||
"semen on breasts",
|
"nsfw": true
|
||||||
"semen on face",
|
}
|
||||||
"messy",
|
|
||||||
"blush",
|
|
||||||
"dazed",
|
|
||||||
"sweat",
|
|
||||||
"disheveled"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"action_name": "Aftersexbreakv2",
|
"action_name": "Aftersexbreakv2",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "lying, on_back, on_bed, bowlegged_pose, spread_legs, twisted_torso",
|
"base": "lying, on_back, on_bed, bowlegged_pose, spread_legs, twisted_torso",
|
||||||
"head": "messy_hair, head_back, sweaty_face, rolling_eyes, half-closed_eyes, ahegao",
|
"head": "messy_hair, head_back, sweaty, rolling_eyes, half-closed_eyes, ahegao",
|
||||||
"upper_body": "arms_spread, arms_above_head, sweat, nipples, collarbone, heavy_breathing",
|
"upper_body": "arms_spread, arms_above_head, sweat, naked, collarbone, heavy_breathing",
|
||||||
"lower_body": "hips, navel, female_pubic_hair, spread_legs, legs_up, bent_legs",
|
"lower_body": "hips, navel, female_pubic_hair, spread_legs, legs_up, bent_legs",
|
||||||
"hands": "relaxed_hands",
|
"hands": "relaxed_hands",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "condom_wrapper, used_tissue, stained_sheets, cum_pool, bead_of_sweat"
|
"additional": "condom_wrapper, used_tissue, stained_sheets, cum_on_bed, sweat_bead"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/AfterSexBreakV2.safetensors",
|
"lora_name": "Illustrious/Poses/AfterSexBreakV2.safetensors",
|
||||||
@@ -17,24 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"after_sex",
|
"participants": "1girl",
|
||||||
"lying",
|
"nsfw": true
|
||||||
"on_back",
|
}
|
||||||
"on_bed",
|
|
||||||
"fucked_silly",
|
|
||||||
"spread_legs",
|
|
||||||
"bowlegged_pose",
|
|
||||||
"sweat",
|
|
||||||
"blush",
|
|
||||||
"messy_hair",
|
|
||||||
"heavy_breathing",
|
|
||||||
"rolling_eyes",
|
|
||||||
"ahegao",
|
|
||||||
"cum_pool",
|
|
||||||
"condom_wrapper",
|
|
||||||
"used_tissue",
|
|
||||||
"bed_sheet",
|
|
||||||
"stained_sheets"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "against_glass_bs",
|
"action_id": "against_glass_bs",
|
||||||
"action_name": "Against Glass Bs",
|
"action_name": "Against Glass Bs",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "leaning forward, body pressed directly against the viewing plane/glass surface",
|
"base": "against_glass, leaning_forward, pressed_against_surface, glass_surface",
|
||||||
"head": "face close to camera, breath fog on glass, cheek slightly pressed, looking directly at viewer, intimate gaze",
|
"head": "face_pressed, cheek_press, breath_on_glass, looking_at_viewer, intimate_gaze",
|
||||||
"upper_body": "reaching forward towards the viewer, chest squished against glass, leaning into the surface",
|
"upper_body": "chest_pressed_against_glass, leaning_into_glass",
|
||||||
"lower_body": "hips pushed forward or slightly angled back depending on angle, standing straight or knees slightly bent for leverage",
|
"lower_body": "hips_pushed_forward, standing",
|
||||||
"hands": "palms pressed flat against glass, fingers spread, palm prints",
|
"hands": "hands_on_glass, palms_on_glass, fingers_spread",
|
||||||
"feet": "planted firmly on the ground",
|
"feet": "standing",
|
||||||
"additional": "transparent surface, condensation, distortion from glass, surface interaction"
|
"additional": "condensation, translucent_surface, distortion"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,12 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"against glass",
|
"participants": "solo",
|
||||||
"pressed against glass",
|
"nsfw": false
|
||||||
"palms on glass",
|
}
|
||||||
"view through glass",
|
|
||||||
"cheek press",
|
|
||||||
"distorted view"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "amateur_pov_filming",
|
"action_id": "amateur_pov_filming",
|
||||||
"action_name": "Amateur Pov Filming",
|
"action_name": "Amateur Pov Filming",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "selfie pose, standing or sitting, facing viewer or mirror",
|
"base": "pov, selfie, solo, indoors, recording, smartphone, holding_phone",
|
||||||
"head": "looking_at_viewer, blush, maybe open mouth or shy expression, looking_at_viewer, contact with camera",
|
"head": "looking_at_viewer, blush, open_mouth",
|
||||||
"upper_body": "raised to hold phone or camera, upper body in frame, breasts, nipples",
|
"upper_body": "upper_body, breasts, nipples",
|
||||||
"lower_body": "hips visible if full body mirror selfie, standing or sitting",
|
"lower_body": "hips",
|
||||||
"hands": "holding_phone, holding_id_card, or adjusting clothes",
|
"hands": "holding_phone, holding_id_card",
|
||||||
"feet": "barefoot if visible",
|
"feet": "barefoot",
|
||||||
"additional": "phone recording interface, smartphone, mirror, amateur aesthetic"
|
"additional": "mirror_selfie, amateur_aesthetic"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/Amateur_POV_Filming.safetensors",
|
"lora_name": "Illustrious/Poses/Amateur_POV_Filming.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"recording",
|
"participants": "solo",
|
||||||
"pov",
|
"nsfw": true
|
||||||
"selfie",
|
}
|
||||||
"holding_phone",
|
|
||||||
"smartphone",
|
|
||||||
"mirror_selfie",
|
|
||||||
"holding_id_card",
|
|
||||||
"looking_at_viewer",
|
|
||||||
"prostitution",
|
|
||||||
"indoors"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -6,7 +6,7 @@
|
|||||||
"head": "head_back, looking_back, closed_eyes, blush",
|
"head": "head_back, looking_back, closed_eyes, blush",
|
||||||
"upper_body": "arms_support, arched_back",
|
"upper_body": "arms_support, arched_back",
|
||||||
"lower_body": "lifted_hip, kneeling, spread_legs",
|
"lower_body": "lifted_hip, kneeling, spread_legs",
|
||||||
"hands": "grabbing_another's_ass",
|
"hands": "grabbing_butt",
|
||||||
"feet": "toes",
|
"feet": "toes",
|
||||||
"additional": "kiss, sweat, saliva, intense_pleasure"
|
"additional": "kiss, sweat, saliva, intense_pleasure"
|
||||||
},
|
},
|
||||||
@@ -17,12 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"hetero",
|
"participants": "1girl 1boy",
|
||||||
"sex",
|
"nsfw": true
|
||||||
"vaginal",
|
}
|
||||||
"penis",
|
|
||||||
"nude",
|
|
||||||
"indoors"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "arm_grab_missionary_ill_10",
|
"action_id": "arm_grab_missionary_ill_10",
|
||||||
"action_name": "Arm Grab Missionary Ill 10",
|
"action_name": "Arm Grab Missionary Ill 10",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "missionary, lying, on_back, sex, vaginal",
|
"base": "missionary, lying, on_back, sex, vaginal_sex",
|
||||||
"head": "expressive face, open mouth, one_eye_closed, blushing, looking_at_viewer (optional), dilated_pupils",
|
"head": "blushing, open_mouth, one_eye_closed, looking_at_viewer, dilated_pupils",
|
||||||
"upper_body": "arms_up, pinned, restrained, grabbed_wrists, breasts, nipples, medium_breasts",
|
"upper_body": "arms_above_head, pinned, restrained, grabbed_wrists, breasts, nipples, medium_breasts",
|
||||||
"lower_body": "legs_spread, lifted_pelvis, spread_legs, legs_up, knees_up, straddling (if applicable)",
|
"lower_body": "legs_spread, lifted_pelvis, spread_legs, legs_up, knees_up",
|
||||||
"hands": "interlocked_fingers, holding_hands",
|
"hands": "interlocked_fingers, holding_hands",
|
||||||
"feet": "barefoot (implied)",
|
"feet": "barefoot",
|
||||||
"additional": "faceless_male, male_focus, motion_lines, sweat"
|
"additional": "faceless_male, sweat, motion_lines"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/arm_grab_missionary_ill-10.safetensors",
|
"lora_name": "Illustrious/Poses/arm_grab_missionary_ill-10.safetensors",
|
||||||
@@ -17,21 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"missionary",
|
"participants": "1girl 1boy",
|
||||||
"spread_legs",
|
"nsfw": true
|
||||||
"interlocked_fingers",
|
}
|
||||||
"holding_hands",
|
|
||||||
"arms_up",
|
|
||||||
"pinned",
|
|
||||||
"lying",
|
|
||||||
"on_back",
|
|
||||||
"sex",
|
|
||||||
"vaginal",
|
|
||||||
"faceless_male",
|
|
||||||
"one_eye_closed",
|
|
||||||
"open_mouth",
|
|
||||||
"breasts",
|
|
||||||
"nipples"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "ballsdeep_il_v2_2_s",
|
"action_id": "ballsdeep_il_v2_2_s",
|
||||||
"action_name": "Ballsdeep Il V2 2 S",
|
"action_name": "Ballsdeep Il V2 2 S",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "sexual intercourse, variable position (prone, girl on top, or from behind)",
|
"base": "sexual_intercourse, deep_penetration, thrusting, mating_press, from_behind, doggy_style, missionary, cowgirl_position",
|
||||||
"head": "expression of intensity or pleasure, often looking back or face down, rolled back or squeezed shut",
|
"head": "eyes_rolled_back, closed_eyes, open_mouth, flushed_face, sweat, expressionless, intense_expression",
|
||||||
"upper_body": "grasping sheets or holding partner, arched or pressed against contrasting surface",
|
"upper_body": "arched_back, hands_on_own_body, grabbing, fingers_clenched, sweating",
|
||||||
"lower_body": "hips pushed firmly against partner's hips, joined genitals, spread wide or wrapped around partner",
|
"lower_body": "joined_genitals, spread_legs, wrap_legs, hips_thrusting, stomach_bulge, testicles_pressed",
|
||||||
"hands": "clenched or grabbing",
|
"hands": "finger_clutch, gripping",
|
||||||
"feet": "toes curled",
|
"feet": "curled_toes",
|
||||||
"additional": "deep penetration, testicles pressed flat against skin, stomach bulge visible"
|
"additional": "intense, deep_pen, skin_on_skin"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/BallsDeep-IL-V2.2-S.safetensors",
|
"lora_name": "Illustrious/Poses/BallsDeep-IL-V2.2-S.safetensors",
|
||||||
@@ -17,13 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"deep_penetration",
|
"participants": "1girl 1boy",
|
||||||
"testicles",
|
"nsfw": true
|
||||||
"stomach_bulge",
|
}
|
||||||
"sex",
|
|
||||||
"anal",
|
|
||||||
"vaginal",
|
|
||||||
"gaping"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "bathingtogether",
|
"action_id": "bathingtogether",
|
||||||
"action_name": "Bathingtogether",
|
"action_name": "Bathingtogether",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "bathing, sitting, partially_submerged",
|
"base": "bathing, sitting, partially_submerged, bathtub",
|
||||||
"head": "looking_at_viewer, facing_viewer, eye_contact",
|
"head": "looking_at_viewer, eye_contact",
|
||||||
"upper_body": "arms_resting, bare_shoulders",
|
"upper_body": "bare_shoulders, skin_to_skin, arms_around_each_other",
|
||||||
"lower_body": "submerged, knees_up, submerged",
|
"lower_body": "underwater, knees_up",
|
||||||
"hands": "resting",
|
"hands": "hands_on_body",
|
||||||
"feet": "no_shoes",
|
"feet": "barefoot",
|
||||||
"additional": "bathtub, steam, water, bubbles, wet"
|
"additional": "bubbles, water, steam, wet, wet_hair, mirror_reflection"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/bathingtogether.safetensors",
|
"lora_name": "Illustrious/Poses/bathingtogether.safetensors",
|
||||||
@@ -17,14 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"bathing",
|
"participants": "2girls",
|
||||||
"bathtub",
|
"nsfw": false
|
||||||
"partially_submerged",
|
}
|
||||||
"pov",
|
|
||||||
"looking_at_viewer",
|
|
||||||
"wet",
|
|
||||||
"steam",
|
|
||||||
"bare_shoulders"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"action": {
|
"action": {
|
||||||
"base": "2koma, before and after, side-by-side",
|
"base": "2koma, side-by-side, comparison",
|
||||||
"head": "sticky_face,facial, bukkake, cum_on_face, eyes_closed",
|
"head": "facial, cum_on_face, messy_face, eyes_closed, mouth_open, orgasm",
|
||||||
"upper_body": "",
|
"upper_body": "semi-nude, messy, cum_on_breasts",
|
||||||
"lower_body": "",
|
"lower_body": "",
|
||||||
"hands": "",
|
"hands": "hands_on_head",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "cum, close-uo"
|
"additional": "cum, close-up, ejaculation"
|
||||||
},
|
},
|
||||||
"action_id": "before_after_1230829",
|
"action_id": "before_after_1230829",
|
||||||
"action_name": "Before After 1230829",
|
"action_name": "Before After 1230829",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_max": 0.7,
|
"lora_weight_max": 0.7,
|
||||||
"lora_weight_min": 0.6
|
"lora_weight_min": 0.6
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"before_and_after",
|
"participants": "1girl",
|
||||||
"2koma",
|
"nsfw": true
|
||||||
"facial",
|
}
|
||||||
"bukkake",
|
|
||||||
"cum",
|
|
||||||
"cum_on_face",
|
|
||||||
"orgasm",
|
|
||||||
"heavy_breathing",
|
|
||||||
"upper_body",
|
|
||||||
"split_theme"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,11 +2,11 @@
|
|||||||
"action_id": "belly_dancing",
|
"action_id": "belly_dancing",
|
||||||
"action_name": "Belly Dancing",
|
"action_name": "Belly Dancing",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "belly dancing, standing",
|
"base": "belly_dancing, dancing, standing",
|
||||||
"head": "",
|
"head": "",
|
||||||
"upper_body": "hands above head",
|
"upper_body": "arms_up",
|
||||||
"lower_body": "swaying hips",
|
"lower_body": "swaying",
|
||||||
"hands": "palms together",
|
"hands": "own_hands_together",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": ""
|
"additional": ""
|
||||||
},
|
},
|
||||||
@@ -21,8 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"belly dancing",
|
"participants": "solo",
|
||||||
"dance"
|
"nsfw": false
|
||||||
]
|
}
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "bentback",
|
"action_id": "bentback",
|
||||||
"action_name": "Bentback",
|
"action_name": "Bentback",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "bent_over, leaning_forward, from_behind",
|
"base": "bent_over, from_behind, arched_back",
|
||||||
"head": "looking_at_viewer, looking_back, open_eyes",
|
"head": "looking_back, looking_at_viewer",
|
||||||
"upper_body": "arms_at_sides, twisted_torso, arched_back",
|
"upper_body": "twisted_torso, arms_at_sides",
|
||||||
"lower_body": "ass_focus, kneepits",
|
"lower_body": "ass_focus, kneepits, spread_legs",
|
||||||
"hands": "hands_on_legs",
|
"hands": "hands_on_legs",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "unnatural_body"
|
"additional": "leaning_forward"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/BentBack.safetensors",
|
"lora_name": "Illustrious/Poses/BentBack.safetensors",
|
||||||
@@ -17,12 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"bent_over",
|
"participants": "solo",
|
||||||
"from_behind",
|
"nsfw": true
|
||||||
"looking_back",
|
}
|
||||||
"kneepits",
|
|
||||||
"twisted_torso",
|
|
||||||
"ass_focus"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "blowjobcomicpart2",
|
"action_id": "blowjobcomicpart2",
|
||||||
"action_name": "Blowjobcomicpart2",
|
"action_name": "Blowjobcomicpart2",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "3koma, comic layout, vertical panel sequence",
|
"base": "3koma, comic_strip, sequence, vertical_strip",
|
||||||
"head": "tongue_out, open mouth, saliva, empty_eyes, rolled eyes",
|
"head": "tongue_out, open_mouth, saliva, empty_eyes, rolled_eyes",
|
||||||
"upper_body": "arms_down or holding_head, visible torso",
|
"upper_body": "arms_at_sides, torso, standing_on_knees",
|
||||||
"lower_body": "sexual_activity, kneeling or sitting",
|
"lower_body": "sexual_activity, kneeling",
|
||||||
"hands": "fingers_on_penis",
|
"hands": "hands_on_penis, grasping",
|
||||||
"feet": "out_of_frame",
|
"feet": "out_of_frame",
|
||||||
"additional": "fellatio, irrumatio, licking_penis, ejaculation, excessive_cum"
|
"additional": "fellatio, irrumatio, licking, ejaculation, cum_in_mouth, excessive_cum"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/BlowjobComicPart2.safetensors",
|
"lora_name": "Illustrious/Poses/BlowjobComicPart2.safetensors",
|
||||||
@@ -17,15 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"3koma",
|
"participants": "1girl 1boy",
|
||||||
"comic",
|
"nsfw": true
|
||||||
"fellatio",
|
}
|
||||||
"irrumatio",
|
|
||||||
"licking_penis",
|
|
||||||
"ejaculation",
|
|
||||||
"excessive_cum",
|
|
||||||
"empty_eyes",
|
|
||||||
"tongue_out"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "bodybengirl",
|
"action_id": "bodybengirl",
|
||||||
"action_name": "Bodybengirl",
|
"action_name": "Bodybengirl",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "suspended_congress, lifting_person, dangling legs",
|
"base": "suspended_congress, lifted_by_torso, torso_grab",
|
||||||
"head": "",
|
"head": "",
|
||||||
"upper_body": "dangling arms, torso_grab, bent_over",
|
"upper_body": "arms_up, bent_over",
|
||||||
"lower_body": "legs_hanging",
|
"lower_body": "legs_up",
|
||||||
"hands": "",
|
"hands": "",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "1boy, 1girl, suspended, size difference, loli"
|
"additional": "1boy, 1girl, size_difference, loli"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/BodyBenGirl.safetensors",
|
"lora_name": "Illustrious/Poses/BodyBenGirl.safetensors",
|
||||||
@@ -17,13 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"suspended_congress",
|
"participants": "1boy 1girl",
|
||||||
"torso_grab",
|
"nsfw": true
|
||||||
"bent_over",
|
}
|
||||||
"reaching",
|
|
||||||
"standing",
|
|
||||||
"1boy",
|
|
||||||
"1girl"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "bodybengirlpart2",
|
"action_id": "bodybengirlpart2",
|
||||||
"action_name": "Bodybengirlpart2",
|
"action_name": "Bodybengirlpart2",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "body suspended in mid-air, held by torso, bent over forward",
|
"base": "suspended, from_side, bent_over, torso_grab",
|
||||||
"head": "embarrassed, sweating, scared, open, looking away or down",
|
"head": "embarrassed, sweating, scared, mouth_open, looking_away, downcast",
|
||||||
"upper_body": "arms hanging down, limp arms, arms at sides, torso grab, bent forward",
|
"upper_body": "arms_at_sides, limp_arms",
|
||||||
"lower_body": "hips raised if bent over, legs dangling, knees together, feet apart",
|
"lower_body": "legs_dangling, knees_together, bare_feet, feet_dangling",
|
||||||
"hands": "hands open, limp",
|
"hands": "open_hands, limp_hands",
|
||||||
"feet": "feet off ground, dangling",
|
"feet": "bare_feet, dangling",
|
||||||
"additional": "motion lines, sweat drops"
|
"additional": "motion_lines, sweat_drops"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/BodyBenGirlPart2.safetensors",
|
"lora_name": "Illustrious/Poses/BodyBenGirlPart2.safetensors",
|
||||||
@@ -17,14 +17,8 @@
|
|||||||
"lora_weight_min": 0.9,
|
"lora_weight_min": 0.9,
|
||||||
"lora_weight_max": 0.9
|
"lora_weight_max": 0.9
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"torso_grab",
|
"participants": "solo",
|
||||||
"suspension",
|
"nsfw": false
|
||||||
"bent_over",
|
}
|
||||||
"knees_together_feet_apart",
|
|
||||||
"arms_at_sides",
|
|
||||||
"motion_lines",
|
|
||||||
"embarrassed",
|
|
||||||
"sweat"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "bored_retrain_000115_1336316",
|
"action_id": "bored_retrain_000115_1336316",
|
||||||
"action_name": "Bored Retrain 000115 1336316",
|
"action_name": "Bored Retrain 000115 1336316",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "slouching sitting posture, low energy, visually disinterested, exhibiting ennui",
|
"base": "bored, slouching, leaning_forward, ennui, uninterested",
|
||||||
"head": "tilted to the side, resting heavily on hand, cheek squished against palm, blank or annoyed expression, half-lidded, dull gaze, looking away or staring into space, heavy eyelids",
|
"head": "head_on_hand, blank_stare, half-lidded_eyes",
|
||||||
"upper_body": "elbow proped on surface, arm supporting the head, other arm dangling loosely or lying flat, slumped shoulders, curved spine, leaning forward",
|
"upper_body": "slumped, leaning_forward, sitting, arms_crossed",
|
||||||
"lower_body": "sitting back, relaxed weight, stretched out under a table or loosely crossed",
|
"lower_body": "sitting, legs_crossed",
|
||||||
"hands": "palm supporting chin or cheek, fingers lazily curled",
|
"hands": "hand_on_cheek, hand_on_chin",
|
||||||
"feet": "resting idly",
|
"feet": "",
|
||||||
"additional": "sighing context, waiting, lethargic atmosphere"
|
"additional": "sighing, waiting"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,12 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"boredom",
|
"participants": "solo",
|
||||||
"uninterested",
|
"nsfw": false
|
||||||
"slouching",
|
}
|
||||||
"ennui",
|
|
||||||
"tired",
|
|
||||||
"cheek resting on hand"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "breast_pressh",
|
"action_id": "breast_pressh",
|
||||||
"action_name": "Breast Pressh",
|
"action_name": "Breast Pressh",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "sandwiched, girl_sandwich, standing, height_difference, size_difference",
|
"base": "1boy, 2girls, sandwiched, standing, height_difference, size_difference",
|
||||||
"head": "head_between_breasts, face_between_breasts, cheek_squash, eyes_closed, squints",
|
"head": "head_between_breasts, face_between_breasts, cheek_squash",
|
||||||
"upper_body": "hugging, arms_around_waist, breast_press, chest_to_chest",
|
"upper_body": "breast_press, hugging, arms_around_waist, chest_to_chest",
|
||||||
"lower_body": "hips_touching, standing, legs_apart",
|
"lower_body": "hips_touching, legs_apart",
|
||||||
"hands": "hands_on_back",
|
"hands": "hands_on_back",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "1boy, 2girls, multiple_girls, hetero"
|
"additional": "hetero, multiple_girls"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/breast_pressH.safetensors",
|
"lora_name": "Illustrious/Poses/breast_pressH.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 0.6,
|
"lora_weight_min": 0.6,
|
||||||
"lora_weight_max": 0.6
|
"lora_weight_max": 0.6
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"height_difference",
|
"participants": "1boy 2girls",
|
||||||
"girl_sandwich",
|
"nsfw": true
|
||||||
"breast_press",
|
}
|
||||||
"sandwiched",
|
|
||||||
"size_difference",
|
|
||||||
"head_between_breasts",
|
|
||||||
"cheek_squash",
|
|
||||||
"face_between_breasts",
|
|
||||||
"1boy",
|
|
||||||
"2girls"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "breast_smother_illustriousxl_lora_nochekaiser",
|
"action_id": "breast_smother_illustriousxl_lora_nochekaiser",
|
||||||
"action_name": "Breast Smother Illustriousxl Lora Nochekaiser",
|
"action_name": "Breast Smother Illustriousxl Lora Nochekaiser",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "intimate upper body POV or side view, character pressing another's face into their chest",
|
"base": "breast_smother, face_in_cleavage, intimate, (POV:1.2), side_view",
|
||||||
"head": "tilted downwards, chin tucked, affectionate or dominant expression, looking down, half-closed, affectionate gaze",
|
"head": "looking_down, half-closed_eyes, affectionate, dominant",
|
||||||
"upper_body": "wrapping around the partner's head or neck, leaning slightly backward, chest prominent, squished breasts, cleavage",
|
"upper_body": "large_breasts, cleavage, squished_breasts, hugging, embracing, chest_press",
|
||||||
"lower_body": "close contact, standing or sitting, posture relaxed",
|
"lower_body": "close_contact, standing",
|
||||||
"hands": "cradling the back of the head, fingers interlocked in hair, pressing face deeper",
|
"hands": "cradling_head, fingers_in_hair, pressing_head_to_breasts",
|
||||||
"feet": "planted on ground",
|
"feet": "barefoot, feet_on_ground",
|
||||||
"additional": "face buried in breasts, chest covering face, soft lighting, skin compression"
|
"additional": "skin_compression, soft_lighting, motorboating"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,15 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"breast smother",
|
"participants": "1girl 1boy",
|
||||||
"buried in breasts",
|
"nsfw": true
|
||||||
"face in cleavage",
|
}
|
||||||
"motorboating",
|
|
||||||
"breast press",
|
|
||||||
"hugging",
|
|
||||||
"embrace",
|
|
||||||
"pov",
|
|
||||||
"large breasts"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "breast_sucking_fingering_illustriousxl_lora_nochekaiser",
|
"action_id": "breast_sucking_fingering_illustriousxl_lora_nochekaiser",
|
||||||
"action_name": "Breast Sucking Fingering Illustriousxl Lora Nochekaiser",
|
"action_name": "Breast Sucking Fingering Illustriousxl Lora Nochekaiser",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "duo, sexual interaction, close-up, breast sucking, fingering, intimate embrace",
|
"base": "duo, sex, sexual_intercourse, close-up, breast_sucking, fingering, intimate_embrace",
|
||||||
"head": "face buried in breasts, sucking nipple, kissing breast, saliva, eyes closed, heavy breathing, blush, expression of bliss",
|
"head": "face_buried_in_breasts, sucking_nipple, nipples_suck, saliva, eyes_closed, heavy_breathing, blush, expression_of_bliss",
|
||||||
"upper_body": "reaching down, holding partner close, arm around waist, large breasts, exposed nipples, nude torso, pressing bodies",
|
"upper_body": "reaching_down, holding_partner, arm_around_waist, large_breasts, exposed_breasts, nude_torso, pressing_bodies",
|
||||||
"lower_body": "legs spread, pussy exposed, vaginal manipulation, open legs, m-legs, intertwined legs",
|
"lower_body": "legs_spread, pussy_exposed, vaginal_fingering, m_legs, intertwined_legs",
|
||||||
"hands": "fingering, fingers inside, rubbing clitoris, squeezing breast, groping",
|
"hands": "fingering, fingers_inside, clitoris_rubbing, squeezing_breasts, groping",
|
||||||
"feet": "toes curled, relaxed feet",
|
"feet": "toes_curled, relaxed_feet",
|
||||||
"additional": "saliva trail, sweat, motion lines, uncensored"
|
"additional": "saliva_trail, sweat, sweat_drop, uncensored"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"breast sucking",
|
"participants": "1girl 1boy",
|
||||||
"fingering",
|
"nsfw": true
|
||||||
"nipple suck",
|
}
|
||||||
"fingers in pussy",
|
|
||||||
"duo",
|
|
||||||
"sexual act",
|
|
||||||
"exposed breasts",
|
|
||||||
"pussy juice",
|
|
||||||
"saliva",
|
|
||||||
"stimulation"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "brokenglass_illusxl_incrs_v1",
|
"action_id": "brokenglass_illusxl_incrs_v1",
|
||||||
"action_name": "Brokenglass Illusxl Incrs V1",
|
"action_name": "Brokenglass Illusxl Incrs V1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "dynamic shot of character seemingly breaking through a barrier",
|
"base": "breaking_through_barrier, dynamic_pose, impact_frame, dynamic_angle",
|
||||||
"head": "intense expression, face visible through cracks, sharp focus, wide open",
|
"head": "intense_expression, facial_focus, visible_through_glass",
|
||||||
"upper_body": "outstretched towards the viewer or shielding face, twisted slightly to suggest impact force",
|
"upper_body": "reaching_towards_viewer, twisted_torso, arms_extended",
|
||||||
"lower_body": "anchored or mid-air depending on angle, posed dynamically to support the movement",
|
"lower_body": "dynamic_pose, movement",
|
||||||
"hands": "touching the surface of the invisible wall, interacting with fragments",
|
"hands": "hands_up, touching_glass, debris_interaction",
|
||||||
"feet": "grounded or trailing",
|
"feet": "grounded, dynamic",
|
||||||
"additional": "foreground filled with sharp broken glass shards, spiderweb cracks glowing with light, refractive surfaces, cinematic debris"
|
"additional": "broken_glass, glass_shards, shattered, spiderweb_cracks, cinematic_lighting, refraction, debris, explosive_impact"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"broken glass",
|
"participants": "solo",
|
||||||
"shattered",
|
"nsfw": false
|
||||||
"cracked screen",
|
}
|
||||||
"fragmentation",
|
|
||||||
"glass shards",
|
|
||||||
"impact",
|
|
||||||
"cinematic",
|
|
||||||
"destruction"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "butt_smother_ag_000043",
|
"action_id": "butt_smother_ag_000043",
|
||||||
"action_name": "Butt Smother Ag 000043",
|
"action_name": "Butt Smother Ag 000043",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "1boy,1girl,facesitting, character sitting on face, pov from below, dominant pose",
|
"base": "1girl, 1boy, facesitting, pov, first-person_view, dominant_woman, submissive_man",
|
||||||
"head": "looking down at viewer, looking back over shoulder, looking at viewer, half-closed eyes, seductive gaze",
|
"head": "looking_down, looking_away, half-closed_eyes, seductive_expression, facial_expression",
|
||||||
"upper_body": "arms reaching back, supporting weight, back arched, leaning forward",
|
"upper_body": "arms_behind_back, arched_back, upper_body_lean",
|
||||||
"lower_body": "buttocks pressing down slightly, buttocks covering screen, heavy weight, thighs straddling viewer, knees bent, spread legs",
|
"lower_body": "buttocks, ass_focus, heavy_buttocks, spread_legs, kneeling, thighs_straddling",
|
||||||
"hands": "hands spreading buttocks, hands on thighs, hands grasping victim's head",
|
"hands": "hands_on_thighs, hands_on_head",
|
||||||
"feet": "feet planted on ground, toes curled",
|
"feet": "feet_together, curled_toes",
|
||||||
"additional": "extreme close-up, squished face, muffling, soft lighting on skin"
|
"additional": "extreme_close-up, squashed, muffling, soft_lighting, skin_texture"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"facesitting",
|
"participants": "1girl 1boy",
|
||||||
"butt smother",
|
"nsfw": true
|
||||||
"femdom",
|
}
|
||||||
"pov",
|
|
||||||
"big ass",
|
|
||||||
"ass focus",
|
|
||||||
"suffocation",
|
|
||||||
"submissive view"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "buttjob",
|
"action_id": "buttjob",
|
||||||
"action_name": "Buttjob",
|
"action_name": "Buttjob",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "bent over, buttjob",
|
"base": "buttjob, intercrural_sex, sex_positions",
|
||||||
"head": "",
|
"head": "",
|
||||||
"upper_body": "",
|
"upper_body": "bent_over",
|
||||||
"lower_body": "buttjob",
|
"lower_body": "buttjob, genitals_between_buttocks",
|
||||||
"hands": "",
|
"hands": "hands_on_own_thighs",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": ""
|
"additional": "missionary_position"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,8 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"buttjob",
|
"participants": "1girl 1boy",
|
||||||
"butt"
|
"nsfw": true
|
||||||
]
|
}
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "carwashv2",
|
"action_id": "carwashv2",
|
||||||
"action_name": "Carwashv2",
|
"action_name": "Carwashv2",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "washing_vehicle, bending_over",
|
"base": "washing_vehicle, bending_over, suggestive_pose",
|
||||||
"head": "wet_hair",
|
"head": "wet_hair",
|
||||||
"upper_body": "wet_clothes, breast_press, breasts_on_glass",
|
"upper_body": "wet_clothes, breast_press, cleavage, breasts_on_glass",
|
||||||
"lower_body": "",
|
"lower_body": "",
|
||||||
"hands": "holding_sponge, holding_hose",
|
"hands": "holding_sponge, holding_hose",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "car, motor_vehicle, soap_bubbles"
|
"additional": "car, motor_vehicle, soap_bubbles, wet, water_splashing"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/CarWashV2.safetensors",
|
"lora_name": "Illustrious/Poses/CarWashV2.safetensors",
|
||||||
@@ -17,19 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"car",
|
"participants": "1girl",
|
||||||
"motor_vehicle",
|
"nsfw": true
|
||||||
"washing_vehicle",
|
}
|
||||||
"soap_bubbles",
|
|
||||||
"wet",
|
|
||||||
"wet_hair",
|
|
||||||
"wet_clothes",
|
|
||||||
"holding_sponge",
|
|
||||||
"holding_hose",
|
|
||||||
"breasts_on_glass",
|
|
||||||
"breast_press",
|
|
||||||
"outdoors",
|
|
||||||
"car_interior"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cat_stretchill",
|
"action_id": "cat_stretchill",
|
||||||
"action_name": "Cat Stretchill",
|
"action_name": "Cat Stretchill",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling, all_fours, cat_stretch, pose",
|
"base": "cat_stretch, pose, all_fours",
|
||||||
"head": "looking_ahead, head_down, closed_eyes, trembling",
|
"head": "head_down, looking_at_viewer, closed_eyes",
|
||||||
"upper_body": "outstretched_arms, reaching_forward, hands_on_ground, arched_back, chest_down",
|
"upper_body": "arched_back, outstretched_arms, chest_support, hands_on_ground",
|
||||||
"lower_body": "hips_up, buttocks_up, kneeling, knees_on_ground",
|
"lower_body": "hips_up, buttocks_up, kneeling, knees_on_ground",
|
||||||
"hands": "palms_down",
|
"hands": "palms_down",
|
||||||
"feet": "feet_up",
|
"feet": "feet_up",
|
||||||
"additional": "cat_ears, cat_tail, trembling"
|
"additional": "trembling, cat_tail, cat_ears"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/cat_stretchILL.safetensors",
|
"lora_name": "Illustrious/Poses/cat_stretchILL.safetensors",
|
||||||
@@ -17,17 +17,8 @@
|
|||||||
"lora_weight_min": 0.7,
|
"lora_weight_min": 0.7,
|
||||||
"lora_weight_max": 0.7
|
"lora_weight_max": 0.7
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cat_stretch",
|
"participants": "solo",
|
||||||
"kneeling",
|
"nsfw": false
|
||||||
"all_fours",
|
}
|
||||||
"stretching",
|
|
||||||
"arched_back",
|
|
||||||
"outstretched_arms",
|
|
||||||
"hands_on_ground",
|
|
||||||
"downward_dog",
|
|
||||||
"trembling",
|
|
||||||
"cat_ears",
|
|
||||||
"cat_tail"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "charm_person_magic",
|
"action_id": "charm_person_magic",
|
||||||
"action_name": "Charm Person Magic",
|
"action_name": "Charm Person Magic",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "casting_spell, standing, magical_presence",
|
"base": "casting_spell, magic_circle, spell_casting",
|
||||||
"head": "smile, confident_expression, glowing_eyes, looking_at_viewer, glowing_eyes",
|
"head": "smile, confident_expression, glowing_eyes, looking_at_viewer",
|
||||||
"upper_body": "outstretched_hand, reaching_towards_viewer, arms_up, upper_body, facing_viewer",
|
"upper_body": "outstretched_hand, reaching_towards_viewer, arms_up, upper_body",
|
||||||
"lower_body": "n/a, n/a",
|
"lower_body": "",
|
||||||
"hands": "open_hand, hand_gesture",
|
"hands": "open_hand, hand_gesture",
|
||||||
"feet": "n/a",
|
"feet": "",
|
||||||
"additional": "aura, soft_light, magic_effects, sparkling"
|
"additional": "aura, light_particles, glittering, magical_energy"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/charm_person_magic.safetensors",
|
"lora_name": "Illustrious/Poses/charm_person_magic.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 0.7,
|
"lora_weight_min": 0.7,
|
||||||
"lora_weight_max": 0.7
|
"lora_weight_max": 0.7
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"casting_spell",
|
"participants": "solo",
|
||||||
"magic",
|
"nsfw": false
|
||||||
"aura",
|
}
|
||||||
"outstretched_hand",
|
|
||||||
"reaching_towards_viewer",
|
|
||||||
"glowing_eyes",
|
|
||||||
"looking_at_viewer",
|
|
||||||
"smile",
|
|
||||||
"cowboy_shot",
|
|
||||||
"solo"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"action_name": "Cheekbulge",
|
"action_name": "Cheekbulge",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "fellatio",
|
"base": "fellatio",
|
||||||
"head": "cheek_bulge, head_tilt, saliva, penis in mouth, fellatio, looking_up",
|
"head": "cheek_bulge, head_tilt, saliva, penis_in_mouth, fellatio, looking_up, mouth_fill",
|
||||||
"upper_body": "arms_behind_back, upper_body",
|
"upper_body": "arms_behind_back, upper_body",
|
||||||
"lower_body": "kneeling, kneeling",
|
"lower_body": "kneeling, kneeling_position",
|
||||||
"hands": "hands_on_head",
|
"hands": "hands_on_head",
|
||||||
"feet": "plantar_flexion",
|
"feet": "plantar_flexion",
|
||||||
"additional": "deepthroat, pov, penis"
|
"additional": "deepthroat, pov, penis, male_focus"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/cheekbulge.safetensors",
|
"lora_name": "Illustrious/Poses/cheekbulge.safetensors",
|
||||||
@@ -17,13 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cheek_bulge",
|
"participants": "1girl 1boy",
|
||||||
"deepthroat",
|
"nsfw": true
|
||||||
"fellatio",
|
}
|
||||||
"saliva",
|
|
||||||
"head_tilt",
|
|
||||||
"penis",
|
|
||||||
"pov"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"action_name": "Chokehold",
|
"action_name": "Chokehold",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "rear_naked_choke, from_behind, struggling, kneeling",
|
"base": "rear_naked_choke, from_behind, struggling, kneeling",
|
||||||
"head": "head_back, expressionless, open_mouth, rolling_eyes, tearing_up, empty_eyes",
|
"head": "head_back, open_mouth, rolling_eyes, teardrops, veins, suffocation, air_hunger",
|
||||||
"upper_body": "arm_around_neck, struggling, grabbing_arm, leaning_forward, arched_back",
|
"upper_body": "arm_around_neck, struggling, grabbing_arm, posture_leaned_forward, arched_back",
|
||||||
"lower_body": "kneeling, bent_over, kneeling, spread_legs",
|
"lower_body": "kneeling, bent_over, spread_legs",
|
||||||
"hands": "clenched_hands, struggling",
|
"hands": "clenched_hands, struggling",
|
||||||
"feet": "barefoot, toes_curled",
|
"feet": "barefoot, toes_curled",
|
||||||
"additional": "distress, blushing, saliva, veins"
|
"additional": "distress, blushing, drooling, saliva, sweat"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/chokehold.safetensors",
|
"lora_name": "Illustrious/Poses/chokehold.safetensors",
|
||||||
@@ -17,18 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"choke_hold",
|
"participants": "1girl 1boy",
|
||||||
"rear_naked_choke",
|
"nsfw": true
|
||||||
"strangling",
|
}
|
||||||
"arm_around_neck",
|
|
||||||
"from_behind",
|
|
||||||
"struggling",
|
|
||||||
"head_back",
|
|
||||||
"clenched_teeth",
|
|
||||||
"rolling_eyes",
|
|
||||||
"drooling",
|
|
||||||
"saliva",
|
|
||||||
"ohogao"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,11 +3,11 @@
|
|||||||
"action_name": "Cleavageteasedwnsty 000008",
|
"action_name": "Cleavageteasedwnsty 000008",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "leaning_forward, sexually_suggestive",
|
"base": "leaning_forward, sexually_suggestive",
|
||||||
"head": "looking_at_viewer, smile, blush, one_eye_closed, blue_eyes, looking_at_viewer",
|
"head": "looking_at_viewer, smile, blush, one_eye_closed, blue_eyes",
|
||||||
"upper_body": "arms_bent_at_elbows, cleavage, breasts_squeezed_together, areola_slip, bare_shoulders, collarbone",
|
"upper_body": "arms_bent_at_elbows, cleavage, breasts_squeezed_together, areola_slip, bare_shoulders, collarbone",
|
||||||
"lower_body": "n/a, n/a",
|
"lower_body": "",
|
||||||
"hands": "hands_on_own_chest, clothes_pull, adjusting_clothes",
|
"hands": "hands_on_own_chest, pulling_down_clothes, adjusting_clothes",
|
||||||
"feet": "n/a",
|
"feet": "",
|
||||||
"additional": "teasing, undressing"
|
"additional": "teasing, undressing"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
@@ -17,20 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"clothes_pull",
|
"participants": "solo",
|
||||||
"shirt_pull",
|
"nsfw": true
|
||||||
"teasing",
|
}
|
||||||
"breasts_squeezed_together",
|
|
||||||
"areola_slip",
|
|
||||||
"undressing",
|
|
||||||
"leaning_forward",
|
|
||||||
"cleavage",
|
|
||||||
"hands_on_own_chest",
|
|
||||||
"collarbone",
|
|
||||||
"bare_shoulders",
|
|
||||||
"sexually_suggestive",
|
|
||||||
"blush",
|
|
||||||
"one_eye_closed"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"action": {
|
"action": {
|
||||||
"base": "close-up, portrait",
|
"base": "close-up, portrait, face_focus",
|
||||||
"head": "facial, open_mouth, tongue, saliva, blush, looking_at_viewer, eyes_open",
|
"head": "open_mouth, tongue, saliva, blush, looking_at_viewer, eyes_visible",
|
||||||
"upper_body": "",
|
"upper_body": "",
|
||||||
"lower_body": "",
|
"lower_body": "",
|
||||||
"hands": "",
|
"hands": "",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "nsfw, semen, cum"
|
"additional": "cum, messy, fluids"
|
||||||
},
|
},
|
||||||
"action_id": "closeup_facial_illus",
|
"action_id": "closeup_facial_illus",
|
||||||
"action_name": "Closeup Facial Illus",
|
"action_name": "Closeup Facial Illus",
|
||||||
@@ -17,14 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"facial",
|
"participants": "solo",
|
||||||
"close-up",
|
"nsfw": true
|
||||||
"portrait",
|
}
|
||||||
"open_mouth",
|
|
||||||
"tongue",
|
|
||||||
"looking_at_viewer",
|
|
||||||
"saliva",
|
|
||||||
"blush"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cof",
|
"action_id": "cof",
|
||||||
"action_name": "Cum on Figure",
|
"action_name": "Cum on Figure",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "figurine, mini-girl, cum on body, cum on figurine",
|
"base": "faux_figurine, miniature, cum_on_body",
|
||||||
"head": "",
|
"head": "cum_on_face",
|
||||||
"upper_body": "",
|
"upper_body": "",
|
||||||
"lower_body": "",
|
"lower_body": "",
|
||||||
"hands": "",
|
"hands": "",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "cum,excessive cum"
|
"additional": "cum, excessive_cum"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,8 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cum",
|
"participants": "solo",
|
||||||
"figurine"
|
"nsfw": true
|
||||||
]
|
}
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cooperative_grinding",
|
"action_id": "cooperative_grinding",
|
||||||
"action_name": "Cooperative Grinding",
|
"action_name": "Cooperative Grinding",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "duo, standing, carrying, straddling, lift and carry, legs wrapped around waist, body to body",
|
"base": "duo, standing, lift_and_carry, straddling, legs_wrapped_around_waist, physical_contact",
|
||||||
"head": "head thrown back, blushing, heavy breathing, intense pleasure, eyes closed, half-closed eyes, rolled back eyes",
|
"head": "head_thrown_back, blushing, panting, eyes_closed, half-closed_eyes, rolled_back_eyes, expressionless_pleasure",
|
||||||
"upper_body": "arms around neck, holding buttocks, supporting thighs, strong grip, chest to chest, pressed together, close physical contact",
|
"upper_body": "arms_around_neck, holding_buttocks, supporting_thighs, chest_to_chest, close_embrace",
|
||||||
"lower_body": "hips touching, grinding, mating press, pelvic curtain, legs wrapped around, thighs spread, lifted legs",
|
"lower_body": "hips_touching, grinding, mating_press, pelvic_curtain, thighs_spread, lifted_legs",
|
||||||
"hands": "grabbing, squeezing, gripping back",
|
"hands": "grabbing, gripping_back, squeezing",
|
||||||
"feet": "dangling feet, arched toes",
|
"feet": "arched_toes, dangling_feet",
|
||||||
"additional": "sweat, motion lines, intimate, erotic atmosphere"
|
"additional": "sweat, motion_lines, intimate, sexual_intercourse, erotic"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "false",
|
"solo_focus": "false",
|
||||||
@@ -21,12 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"standing sex",
|
"participants": "1boy 2girls",
|
||||||
"carry",
|
"nsfw": true
|
||||||
"legs wrapped around",
|
}
|
||||||
"straddle",
|
|
||||||
"grinding",
|
|
||||||
"lift and carry"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cooperativepaizuri",
|
"action_id": "cooperativepaizuri",
|
||||||
"action_name": "Cooperativepaizuri",
|
"action_name": "Cooperativepaizuri",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "cooperative_paizuri, 2girls, 1boy, sexual_activity",
|
"base": "cooperative_paizuri, 2girls, 1boy, sexual_activity, sex_position",
|
||||||
"head": "smile, open_mouth, facial, looking_at_partner, half_closed_eyes",
|
"head": "smile, open_mouth, facial, looking_at_partner, eyes_closed, flushed",
|
||||||
"upper_body": "arms_around_neck, grabbing_penis, large_breasts, breasts_touching, nipples",
|
"upper_body": "arms_around_neck, breasts_between_breasts, large_breasts, cleavage, nipple_tweaking",
|
||||||
"lower_body": "penis, glans, erection, kneeling, straddling",
|
"lower_body": "penis, glans, erection, kneeling, straddling, cowgirl_position",
|
||||||
"hands": "on_penis, guiding_penis",
|
"hands": "holding_penis, touching_partner, reaching_for_partner",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot, toes_curled",
|
||||||
"additional": "pov, cum_on_body, fluids"
|
"additional": "pov, cum_on_body, fluids, (multiple_girls:1.2), erotic, masterpiece"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/cooperativepaizuri.safetensors",
|
"lora_name": "Illustrious/Poses/cooperativepaizuri.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cooperative_paizuri",
|
"participants": "2girls 1boy",
|
||||||
"2girls",
|
"nsfw": true
|
||||||
"1boy",
|
}
|
||||||
"paizuri",
|
|
||||||
"breasts",
|
|
||||||
"penis",
|
|
||||||
"facial",
|
|
||||||
"pov",
|
|
||||||
"from_side",
|
|
||||||
"large_breasts"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,11 +2,11 @@
|
|||||||
"action_id": "covering_privates_illustrious_v1_0",
|
"action_id": "covering_privates_illustrious_v1_0",
|
||||||
"action_name": "Covering Privates Illustrious V1 0",
|
"action_name": "Covering Privates Illustrious V1 0",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "covering_privates",
|
"base": "covering_genitals, covering_breasts",
|
||||||
"head": "embarrassed, blush, looking_at_viewer",
|
"head": "blush, embarrassed, looking_at_viewer",
|
||||||
"upper_body": "arm_across_chest, upper_body",
|
"upper_body": "arms_crossed, covering_breasts, upper_body",
|
||||||
"lower_body": "hips, legs_together",
|
"lower_body": "legs_together, hips",
|
||||||
"hands": "covering_breasts, covering_crotch",
|
"hands": "covering_crotch",
|
||||||
"feet": "standing",
|
"feet": "standing",
|
||||||
"additional": "modesty"
|
"additional": "modesty"
|
||||||
},
|
},
|
||||||
@@ -17,13 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"covering_privates",
|
"participants": "solo",
|
||||||
"covering_breasts",
|
"nsfw": true
|
||||||
"covering_crotch",
|
}
|
||||||
"embarrassed",
|
|
||||||
"blush",
|
|
||||||
"arm_across_chest",
|
|
||||||
"legs_together"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "coveringownmouth_ill_v1",
|
"action_id": "coveringownmouth_ill_v1",
|
||||||
"action_name": "Coveringownmouth Ill V1",
|
"action_name": "Coveringownmouth Ill V1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "character covering their mouth with their hand",
|
"base": "covering_own_mouth, solo",
|
||||||
"head": "lower face obscured by hand, neutral or expressive (depending on context)",
|
"head": "hand_over_mouth",
|
||||||
"upper_body": "arm raised towards face, upper body visible",
|
"upper_body": "arm_raised",
|
||||||
"lower_body": "variable, variable",
|
"lower_body": "variable",
|
||||||
"hands": "hand placed over mouth, palm inward",
|
"hands": "palm_inward",
|
||||||
"feet": "variable",
|
"feet": "variable",
|
||||||
"additional": "often indicates surprise, embarrassment, or silence"
|
"additional": "pensive, shy, embarrassed, surprise"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/CoveringOwnMouth_Ill_V1.safetensors",
|
"lora_name": "Illustrious/Poses/CoveringOwnMouth_Ill_V1.safetensors",
|
||||||
@@ -17,7 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"covering_own_mouth"
|
"participants": "solo",
|
||||||
]
|
"nsfw": false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cowgirl_position_breast_press_illustriousxl_lora_nochekaiser",
|
"action_id": "cowgirl_position_breast_press_illustriousxl_lora_nochekaiser",
|
||||||
"action_name": "Cowgirl Position Breast Press Illustriousxl Lora Nochekaiser",
|
"action_name": "Cowgirl Position Breast Press Illustriousxl Lora Nochekaiser",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "straddling pose, body leaning forward directly into the camera view",
|
"base": "straddling, pov, on_top, leaning_forward",
|
||||||
"head": "face close to the viewer, looking down or directly ahead, looking at viewer, intense or half-closed gaze",
|
"head": "looking_at_viewer, intense_gaze, half-closed_eyes",
|
||||||
"upper_body": "arms extending forward or bent to support weight, upper body leaning forward, breasts heavily pressed and flattened against the screen/viewer",
|
"upper_body": "arms_extended, breasts_pressed_against_viewer, breast_squish, cleavage",
|
||||||
"lower_body": "hips wide, seated in a straddling motion, knees bent, thighs spread wide apart",
|
"lower_body": "spread_legs, knees_up, straddling_partner",
|
||||||
"hands": "placed on an invisible surface or partner's chest",
|
"hands": "on_man's_chest, hand_on_partner",
|
||||||
"feet": "tucked behind or out of frame",
|
"feet": "out_of_frame",
|
||||||
"additional": "pov, squish, breast deformation, intimate distance"
|
"additional": "breast_deformation, intimate, close-up, first-person_view"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "false",
|
"solo_focus": "false",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cowgirl position",
|
"participants": "1girl 1boy",
|
||||||
"breast press",
|
"nsfw": true
|
||||||
"straddling",
|
}
|
||||||
"pov",
|
|
||||||
"leaning forward",
|
|
||||||
"close-up",
|
|
||||||
"breast deformation",
|
|
||||||
"squish"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cuckold_ntr_il_nai_py",
|
"action_id": "cuckold_ntr_il_nai_py",
|
||||||
"action_name": "Cuckold Ntr Il Nai Py",
|
"action_name": "Cuckold Ntr Il Nai Py",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "from behind, bent over, doggy style, looking back, pov",
|
"base": "from_behind, bent_over, doggy_style, looking_back, pov",
|
||||||
"head": "turned to look back over shoulder, face flushed, heavy breathing, expression of pleasure or distress, looking at viewer, tears, heart-shaped pupils or rolled back",
|
"head": "looking_back, flushed, heavy_breathing, facial_expression, looking_at_viewer, tears, heart_shaped_pupils, eyes_rolled_back",
|
||||||
"upper_body": "supporting body weight on surface, arched back, leaning forward",
|
"upper_body": "arched_back, leaning_forward",
|
||||||
"lower_body": "hips raised high, exposed, kneeling, spread wide",
|
"lower_body": "hips_up, kneeling, legs_spread",
|
||||||
"hands": "gripping sheets or surface tightly",
|
"hands": "hands_gripping_bed_sheets",
|
||||||
"feet": "toes curled",
|
"feet": "curled_toes",
|
||||||
"additional": "sweat, rude, messy hair, partner silhouette implied behind"
|
"additional": "sweat, messy_hair, man_in_background"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,12 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"ntr",
|
"participants": "1girl 1boy",
|
||||||
"cuckold",
|
"nsfw": true
|
||||||
"pov",
|
}
|
||||||
"from behind",
|
|
||||||
"doggy style",
|
|
||||||
"looking back"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cum_bathillustrious",
|
"action_id": "cum_bathillustrious",
|
||||||
"action_name": "Cum Bathillustrious",
|
"action_name": "Cum Bathillustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "reclining or sitting inside a bathtub filled with viscous white liquid, cum pool, partially submerged",
|
"base": "cum_bath, bathtub, viscous_white_liquid, partially_submerged",
|
||||||
"head": "wet hair sticking to face, flushed cheeks, steam rising, half-closed, glossy, looking at viewer",
|
"head": "wet_hair, blush, steam, half-closed_eyes, looking_at_viewer",
|
||||||
"upper_body": "resting on the rim of the bathtub or submerged, naked, wet skin, heavy coverage of white liquid on chest and stomach",
|
"upper_body": "nude, wet, cum_on_chest, cum_on_stomach",
|
||||||
"lower_body": "submerged in pool of white liquid, knees bent and poking out of the liquid or spread slighty",
|
"lower_body": "submerged, knees_up",
|
||||||
"hands": "coated in white fluid, dripping",
|
"hands": "dripping_cum",
|
||||||
"feet": "submerged",
|
"feet": "submerged",
|
||||||
"additional": "tiled bathroom background, steam, excessive cum, sticky texture, overflowing tub"
|
"additional": "bathroom, steam, excessive_cum, sticky"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,13 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cum_bath",
|
"participants": "1girl solo",
|
||||||
"covered_in_cum",
|
"nsfw": true
|
||||||
"bathtub",
|
}
|
||||||
"wet",
|
|
||||||
"naked",
|
|
||||||
"bukkake",
|
|
||||||
"messy"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cum_in_cleavage_illustrious",
|
"action_id": "cum_in_cleavage_illustrious",
|
||||||
"action_name": "Cum In Cleavage Illustrious",
|
"action_name": "Cum In Cleavage Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "passionate upper body focus, intimacy",
|
"base": "upper_body, focus_on_breasts, intimate",
|
||||||
"head": "blush, mouth slightly open, expression of pleasure or service, looking at viewer, potentially heavy lidded or heart-shaped pupils",
|
"head": "blush, open_mouth, expressive_eyes, looking_at_viewer, heavy_lidded_eyes",
|
||||||
"upper_body": "arms bent, hands bringing breasts together, bare chest, medium to large breasts, pronounced cleavage, cum pooling in cleavage",
|
"upper_body": "arms_bent, breasts, cleavage, cum_in_cleavage, bare_breasts, liquid_in_cleavage",
|
||||||
"lower_body": "not visible or seated, not visible",
|
"lower_body": "",
|
||||||
"hands": "holding own breasts, squeezing or pressing breasts together",
|
"hands": "hands_on_breasts, squeezing_breasts",
|
||||||
"feet": "not visible",
|
"feet": "",
|
||||||
"additional": "pool of liquid in cleavage, messy, erotic context"
|
"additional": "messy, erotic, semen, cum_on_skin"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/cum_in_cleavage_illustrious.safetensors",
|
"lora_name": "Illustrious/Poses/cum_in_cleavage_illustrious.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cum_on_breasts",
|
"participants": "1girl",
|
||||||
"paizuri",
|
"nsfw": true
|
||||||
"cleavage",
|
}
|
||||||
"breasts",
|
|
||||||
"breast_lift",
|
|
||||||
"plump",
|
|
||||||
"mature_female",
|
|
||||||
"short_hair",
|
|
||||||
"black_hair",
|
|
||||||
"indoors"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cum_inside_slime_v0_2",
|
"action_id": "cum_inside_slime_v0_2",
|
||||||
"action_name": "Cum Inside Slime V0 2",
|
"action_name": "Cum Inside Slime V0 2",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "front view, focus on midsection, semi-transparent body structure",
|
"base": "front_view, focus_on_midsection, semi-transparent_body, translucent_skin",
|
||||||
"head": "flustered expression, open mouth, heavy blush, tongue out, rolled back, heart-shaped pupils",
|
"head": "flustered, open_mouth, heavy_blush, tongue_out, eyes_rolled_back, heart-shaped_pupils",
|
||||||
"upper_body": "bent at elbows, hands touching abdomen, translucent skin, visible white liquid filling the stomach and womb area, slightly distended belly",
|
"upper_body": "bent_arms, hands_on_stomach, visible_internal_cum, stomach_fill, distended_belly",
|
||||||
"lower_body": "glowing with internal white fluid, see-through outer layer, thighs touching, slime texture dripping",
|
"lower_body": "glowing, slime_texture, dripping, thighs_together",
|
||||||
"hands": "cupping lower belly, emphasizing fullness",
|
"hands": "cupping_stomach",
|
||||||
"feet": "standing firmly or slightly melting into floor",
|
"feet": "standing, melting",
|
||||||
"additional": "internal cum, x-ray, cross-section, viscous liquid, glowing interior"
|
"additional": "internal_cum, x-ray, cross-section, viscous_liquid, bioluminescence"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"slime girl",
|
"participants": "solo",
|
||||||
"monster girl",
|
"nsfw": true
|
||||||
"transparent skin",
|
}
|
||||||
"internal cum",
|
|
||||||
"cum filled",
|
|
||||||
"x-ray",
|
|
||||||
"stomach fill",
|
|
||||||
"viscous"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cum_shot",
|
"action_id": "cum_shot",
|
||||||
"action_name": "Cum Shot",
|
"action_name": "Cum Shot",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "portrait or upper body focus, capturing the moment of ejaculation or aftermath",
|
"base": "cum_shot, cum, from_above",
|
||||||
"head": "tilted back or facing forward, expression of pleasure or shock, closed or rolling back, eyelashes detailed",
|
"head": "cum_on_face, facial, cum_in_eye, cum_in_mouth, open_mouth, messy_face",
|
||||||
"upper_body": "out of frame or hands touching face, chest visible, potentially with cum_on_body",
|
"upper_body": "cum_on_breasts, cum_on_body, sticky",
|
||||||
"lower_body": "usually out of frame in this context, out of frame",
|
"lower_body": "",
|
||||||
"hands": "optional, touching face or wiping",
|
"hands": "",
|
||||||
"feet": "out of frame",
|
"feet": "",
|
||||||
"additional": "white fluids, messy, dripping, shiny skin"
|
"additional": "white_fluid, dripping, shiny_skin, fluid_on_skin"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/cum_shot.safetensors",
|
"lora_name": "Illustrious/Poses/cum_shot.safetensors",
|
||||||
@@ -17,26 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cum",
|
"participants": "1girl",
|
||||||
"facial",
|
"nsfw": true
|
||||||
"ejaculation",
|
}
|
||||||
"cum_on_body",
|
|
||||||
"cum_on_breasts",
|
|
||||||
"cum_in_eye",
|
|
||||||
"cum_in_mouth",
|
|
||||||
"bukkake",
|
|
||||||
"after_sex",
|
|
||||||
"messy_body",
|
|
||||||
"sticky",
|
|
||||||
"white_fluid",
|
|
||||||
"open_mouth",
|
|
||||||
"tongue",
|
|
||||||
"bukkake",
|
|
||||||
"tongue_out",
|
|
||||||
"saliva",
|
|
||||||
"sweat",
|
|
||||||
"blush",
|
|
||||||
"ahegao"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cum_swap",
|
"action_id": "cum_swap",
|
||||||
"action_name": "Cum Swap",
|
"action_name": "Cum Swap",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "two characters in close intimate proximity, upper bodies pressed together",
|
"base": "1girl 1girl, duo, close embrace, intimate, body contact",
|
||||||
"head": "faces close, mouths open and connected, engaging in a deep kiss, half-closed, heavy lidded, blushing cheeks",
|
"head": "kissing, deep kiss, open mouth, closed eyes, blush",
|
||||||
"upper_body": "embracing partner, wrapped around neck or waist, chests touching, leaning inward",
|
"upper_body": "arms around neck, arms around waist, chests touching, leaning in",
|
||||||
"lower_body": "aligned with torso, standing or sitting positions",
|
"lower_body": "leg lock, standing, pressing.",
|
||||||
"hands": "cupping partner's face, holding back of head, fingers entagled in hair",
|
"hands": "face_grabbing, hand in hair, touching partner",
|
||||||
"feet": "grounded or out of frame",
|
"feet": "barefoot, grounded",
|
||||||
"additional": "visible liquid bridge between mouths, thick white fluid transfer, saliva trail, messy chin"
|
"additional": "cum_swap, spit_take, saliva, seminal_fluid, mess, liquid_bridge"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "false",
|
"solo_focus": "false",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cum swap",
|
"participants": "1girl 1girl",
|
||||||
"mouth to mouth",
|
"nsfw": true
|
||||||
"kissing",
|
}
|
||||||
"open mouth",
|
|
||||||
"liquid bridge",
|
|
||||||
"saliva",
|
|
||||||
"semen",
|
|
||||||
"duo",
|
|
||||||
"sharing fluids",
|
|
||||||
"intimacy"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cumblastfacial",
|
"action_id": "cumblastfacial",
|
||||||
"action_name": "Cumblastfacial",
|
"action_name": "Cumblastfacial",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "solo, bukkake",
|
"base": "solo, ejaculation, cumshot",
|
||||||
"head": "facial, head_tilt, looking_up, cum_in_eye",
|
"head": "facial, head_tilt, looking_up, cum_in_eye, cum_on_face, covered_in_cum",
|
||||||
"upper_body": "arms_down, cum_on_upper_body",
|
"upper_body": "arms_at_side, cum_on_upper_body, wet_clothes",
|
||||||
"lower_body": "standing, standing",
|
"lower_body": "standing",
|
||||||
"hands": "hands_down",
|
"hands": "hands_at_side",
|
||||||
"feet": "standing",
|
"feet": "standing",
|
||||||
"additional": "projectile_cum, excessive_cum, ejaculation"
|
"additional": "projectile_cum, excessive_cum, semen, cum_on_hair"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/cumblastfacial.safetensors",
|
"lora_name": "Illustrious/Poses/cumblastfacial.safetensors",
|
||||||
@@ -17,15 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"facial",
|
"participants": "solo",
|
||||||
"projectile_cum",
|
"nsfw": true
|
||||||
"bukkake",
|
}
|
||||||
"excessive_cum",
|
|
||||||
"ejaculation",
|
|
||||||
"head_tilt",
|
|
||||||
"looking_up",
|
|
||||||
"cum_in_eye",
|
|
||||||
"cum_on_hair"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,12 +2,12 @@
|
|||||||
"action_id": "cuminhands",
|
"action_id": "cuminhands",
|
||||||
"action_name": "Cuminhands",
|
"action_name": "Cuminhands",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "after_fellatio",
|
"base": "after_fellatio, ejaculation",
|
||||||
"head": "facial, cum_string, cum_in_mouth, looking_at_hands",
|
"head": "facial, cum_on_face, cum_in_mouth, cum_string, looking_at_hands",
|
||||||
"upper_body": "arms_bent, upper_body",
|
"upper_body": "arms_bent, upper_body",
|
||||||
"lower_body": "n/a, n/a",
|
"lower_body": "",
|
||||||
"hands": "cupping_hands, cum_on_hands",
|
"hands": "cupping_hands, cum_on_hands",
|
||||||
"feet": "n/a",
|
"feet": "",
|
||||||
"additional": "excessive_cum"
|
"additional": "excessive_cum"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
@@ -17,14 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cum_on_hands",
|
"participants": "solo",
|
||||||
"cupping_hands",
|
"nsfw": true
|
||||||
"excessive_cum",
|
}
|
||||||
"facial",
|
|
||||||
"cum_in_mouth",
|
|
||||||
"cum_string",
|
|
||||||
"after_fellatio",
|
|
||||||
"looking_at_hands"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cumshot",
|
"action_id": "cumshot",
|
||||||
"action_name": "Cumshot",
|
"action_name": "Cumshot",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "close-up portrait shot, high angle view",
|
"base": "close-up, high_angle, macro",
|
||||||
"head": "head tilted back, mouth slightly open, tongue out, face covered in white fluid, eyes closed or rolling back, expression of pleasure, wet eyelashes",
|
"head": "head_back, mouth_open, tongue_out, face_covered_in_cum, closed_eyes, rolling_eyes, ecstatic_expression, wet_eyelashes",
|
||||||
"upper_body": "out of frame, upper chest and collarbone visible",
|
"upper_body": "bare_shoulders, cleavage",
|
||||||
"lower_body": "kout of frame, out of frame",
|
"lower_body": "out_of_frame",
|
||||||
"hands": "out of frame",
|
"hands": "out_of_frame",
|
||||||
"feet": "out of frame",
|
"feet": "out_of_frame",
|
||||||
"additional": "seminal fluid dripping from face, splashing liquid, thick texture, messy"
|
"additional": "cum_on_face, facial, seminal_fluid, cum_drip, dynamic_angle, splashing, messy, thick_liquid"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,13 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cum",
|
"participants": "solo",
|
||||||
"cum on face",
|
"nsfw": true
|
||||||
"facial",
|
}
|
||||||
"messy",
|
|
||||||
"tongue out",
|
|
||||||
"seminal fluid",
|
|
||||||
"detailed liquid"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "cumtube_000035",
|
"action_id": "cumtube_000035",
|
||||||
"action_name": "Cumtube 000035",
|
"action_name": "Cumtube 000035",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling or sitting, leaning back slightly to receive contents of tube",
|
"base": "kneeling, leaning_back",
|
||||||
"head": "force feeeding, feeding tube,tilted back, face directed upwards, mouth wide open, tongue extended, chaotic facial mess, looking up, anticipating expression, half-closed or rolled back",
|
"head": "force_feeding, tube, head_tilted_back, mouth_open, tongue_out, facial_fluids, looking_up, eyes_rolled_back",
|
||||||
"upper_body": "raised, holding a large clear cylinder, chest pushed forward, liquid dripping down neck and chest",
|
"upper_body": "arms_raised, holding_object, chest_pushed_forward, fluids_dripping, torso_drenched",
|
||||||
"lower_body": "kneeling, hips resting on heels, legs folded underneath, knees apart",
|
"lower_body": "kneeling, legs_together",
|
||||||
"hands": "firmly grasping the sides of the tube",
|
"hands": "hands_on_object",
|
||||||
"feet": "toes pointed backward",
|
"feet": "toes, feet_together",
|
||||||
"additional": "clear tube filled with white viscous liquid, heavy splatter, overflowing liquid, messy environment, bubbles inside tube"
|
"additional": "clear_tube, cum, white_viscous_liquid, messy, splatter, overflow"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,15 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cumtube",
|
"participants": "1girl",
|
||||||
"viscous liquid",
|
"nsfw": true
|
||||||
"excessive liquid",
|
}
|
||||||
"facial mess",
|
|
||||||
"pouring",
|
|
||||||
"drinking",
|
|
||||||
"holding object",
|
|
||||||
"open mouth",
|
|
||||||
"wet skin"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"action_name": "Cunnilingus On Back Illustriousxl Lora Nochekaiser",
|
"action_name": "Cunnilingus On Back Illustriousxl Lora Nochekaiser",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "lying, on_back, spread_legs, nude",
|
"base": "lying, on_back, spread_legs, nude",
|
||||||
"head": "torogao, blush, sweat, half-closed_eyes",
|
"head": "torogao, blush, sweat, half-closed_eyes, tongue_out",
|
||||||
"upper_body": "bent_arms, navel, nipples, sweat",
|
"upper_body": "navel, nipples, sweat",
|
||||||
"lower_body": "cunnilingus, pussy, spread_legs, thighs",
|
"lower_body": "cunnilingus, vulva, spread_legs, thighs",
|
||||||
"hands": "hands_on_own_chest",
|
"hands": "hands_on_chest",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "on_bed, pillow, from_side"
|
"additional": "on_bed, pillow, profile"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/cunnilingus-on-back-illustriousxl-lora-nochekaiser.safetensors",
|
"lora_name": "Illustrious/Poses/cunnilingus-on-back-illustriousxl-lora-nochekaiser.safetensors",
|
||||||
@@ -17,20 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cunnilingus",
|
"participants": "1girl 1boy",
|
||||||
"lying",
|
"nsfw": true
|
||||||
"on_back",
|
}
|
||||||
"spread_legs",
|
|
||||||
"hands_on_own_chest",
|
|
||||||
"torogao",
|
|
||||||
"half-closed_eyes",
|
|
||||||
"sweat",
|
|
||||||
"blush",
|
|
||||||
"navel",
|
|
||||||
"nipples",
|
|
||||||
"hetero",
|
|
||||||
"on_bed",
|
|
||||||
"from_side"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "danglinglegs",
|
"action_id": "danglinglegs",
|
||||||
"action_name": "Danglinglegs",
|
"action_name": "Danglinglegs",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "suspended_congress, lifting_person, standing_sex",
|
"base": "suspended_congress, lifting_person, standing_sex, sex_from_behind",
|
||||||
"head": "clenched_teeth, head_back, eyes_closed",
|
"head": "clenched_teeth, head_back, eyes_closed",
|
||||||
"upper_body": "arms_around_neck, body_lifted",
|
"upper_body": "arms_around_neck, body_lifted, breasts_pressed_against_body",
|
||||||
"lower_body": "hips_held, legs_apart, feet_off_ground",
|
"lower_body": "penis_in_vagina, hips_held, legs_apart, feet_off_ground",
|
||||||
"hands": "hands_on_shoulders",
|
"hands": "hands_on_shoulders, grabbing_shoulders",
|
||||||
"feet": "toes_up, barefoot",
|
"feet": "toes_curled, barefoot",
|
||||||
"additional": "size_difference, larger_male, sex_from_behind"
|
"additional": "size_difference, larger_male, orgasm, sweat"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/danglinglegs.safetensors",
|
"lora_name": "Illustrious/Poses/danglinglegs.safetensors",
|
||||||
@@ -17,14 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"suspended_congress",
|
"participants": "1girl 1boy",
|
||||||
"lifting_person",
|
"nsfw": true
|
||||||
"standing_sex",
|
}
|
||||||
"sex_from_behind",
|
|
||||||
"size_difference",
|
|
||||||
"toes_up",
|
|
||||||
"barefoot",
|
|
||||||
"clenched_teeth"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "deep_kiss_000007",
|
"action_id": "deep_kiss_000007",
|
||||||
"action_name": "Deep Kiss 000007",
|
"action_name": "Deep Kiss 000007",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "intimate couple pose, two characters kissing passionately, bodies pressed tightly together in an embrace",
|
"base": "1girl, 1boy, duo, kissing, deep_kiss, french_kiss, romantic, passionate, intimacy",
|
||||||
"head": "heads tilted, lips locked, mouths open, french kiss, tongue touching, cheeks flushed, eyes tightly closed, passionate expression",
|
"head": "eyes_closed, open_mouth, tongue, tongue_touching, flushed, blushing, tilted_head",
|
||||||
"upper_body": "arms wrapped around neck, arms holding waist, engulfing embrace, chest to chest contact, breasts pressed against chest",
|
"upper_body": "embrace, hugging, holding_each_other, arms_around_neck, arms_around_waist, chest_to_chest",
|
||||||
"lower_body": "hips pressed together, zero distance, standing close, interlocked or one leg lifted behind",
|
"lower_body": "hips_pressed_together, standing_close",
|
||||||
"hands": "cupping face, fingers running through hair, gripping shoulders or back",
|
"hands": "cupping_face, hands_in_hair, gripping, back_embrace",
|
||||||
"feet": "standing, on tiptoes",
|
"feet": "tiptoes, standing",
|
||||||
"additional": "saliva trail, saliva string, connecting tongue, romantic atmosphere"
|
"additional": "saliva, dripping_saliva, saliva_string, tongue_kiss"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,20 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"deep kiss",
|
"participants": "1girl 1boy",
|
||||||
"french kiss",
|
"nsfw": true
|
||||||
"kissing",
|
}
|
||||||
"tongue",
|
|
||||||
"saliva",
|
|
||||||
"saliva trail",
|
|
||||||
"open mouth",
|
|
||||||
"couple",
|
|
||||||
"intimate",
|
|
||||||
"romance",
|
|
||||||
"love",
|
|
||||||
"passionate",
|
|
||||||
"eyes closed",
|
|
||||||
"duo"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "deepthroat_ponytailhandle_anime_il_v1",
|
"action_id": "deepthroat_ponytailhandle_anime_il_v1",
|
||||||
"action_name": "Deepthroat Ponytailhandle Anime Il V1",
|
"action_name": "Deepthroat Ponytailhandle Anime Il V1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "irrumatio, fellatio, 1boy, 1girl, duo",
|
"base": "irrumatio, fellatio, 1boy, 1girl, duo, deepthroat",
|
||||||
"head": "forced_oral, head_back, mouth_open, saliva, drooling, crying, tears, glare, wide_eyes",
|
"head": "forced, head_back, mouth_open, saliva, drooling, crying, tears, expressionless, wide_eyes",
|
||||||
"upper_body": "arms_at_sides, upper_body",
|
"upper_body": "arms_at_sides, upper_body",
|
||||||
"lower_body": "n/a, n/a",
|
"lower_body": "",
|
||||||
"hands": "hands_down",
|
"hands": "hands_on_hair, grabbing_hair",
|
||||||
"feet": "n/a",
|
"feet": "",
|
||||||
"additional": "grabbing_another's_hair, penis, deepthroat, ponytail"
|
"additional": "penis, ponytail, pov"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/Deepthroat_PonytailHandle_Anime_IL_V1.safetensors",
|
"lora_name": "Illustrious/Poses/Deepthroat_PonytailHandle_Anime_IL_V1.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"irrumatio",
|
"participants": "1boy 1girl",
|
||||||
"deepthroat",
|
"nsfw": true
|
||||||
"fellatio",
|
}
|
||||||
"grabbing_another's_hair",
|
|
||||||
"ponytail",
|
|
||||||
"drooling",
|
|
||||||
"tears",
|
|
||||||
"crying",
|
|
||||||
"penis",
|
|
||||||
"forced"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "defeat_ntr_il_nai_py",
|
"action_id": "defeat_ntr_il_nai_py",
|
||||||
"action_name": "Defeat Ntr Il Nai Py",
|
"action_name": "Defeat Ntr Il Nai Py",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling on the ground, slumped forward in defeat, on hands and knees, orz pose, sex from behind",
|
"base": "kneeling, on_all_fours, orz, slumped, defeat, dogeza, sex_from_behind",
|
||||||
"head": "bowed head, looking down, face shadowed or hiding face, crying, tears, empty eyes, or eyes squeezed shut in anguish",
|
"head": "bowed_head, looking_down, shadowed_face, crying, tears, empty_eyes, closed_eyes, anguish",
|
||||||
"upper_body": "arms straight down supporting weight against the floor, hunched back, crushed posture, leaning forward",
|
"upper_body": "arms_on_ground, hunched_back, leaning_forward",
|
||||||
"lower_body": "hips raised slightly or sitting back on heels in submission, knees on ground, kneeling",
|
"lower_body": "hips_up, kneeling, on_knees",
|
||||||
"hands": "hands flat on the ground, palms down, or clenched fists on ground",
|
"hands": "hands_on_ground, palms_down, clenched_hand",
|
||||||
"feet": "tops of feet flat on floor",
|
"feet": "barefoot, curled_toes",
|
||||||
"additional": "gloom, depression, dramatic shadows, humiliation, emotional devastation"
|
"additional": "gloom, depression, dramatic_shadows, humiliation, emotional_breakdown"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"defeat",
|
"participants": "1girl 1boy",
|
||||||
"on hands and knees",
|
"nsfw": true
|
||||||
"all fours",
|
}
|
||||||
"despair",
|
|
||||||
"crying",
|
|
||||||
"orz",
|
|
||||||
"humiliation",
|
|
||||||
"kneeling",
|
|
||||||
"looking down",
|
|
||||||
"tears"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "defeat_suspension_il_nai_py",
|
"action_id": "defeat_suspension_il_nai_py",
|
||||||
"action_name": "Defeat Suspension Il Nai Py",
|
"action_name": "Defeat Suspension Il Nai Py",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "suspended sex, holding waist, dangling legs, full body suspended in air, hanging limp, defeated posture, complete lack of resistance",
|
"base": "suspension, hanging, bondage, arms_up, limp, dangling, defeated, total_submission",
|
||||||
"head": "head hanging low, chin resting on chest, looking down, neck relaxed, eyes closed, unconscious, pained expression, or empty gaze",
|
"head": "head_down, hair_over_eyes, eyes_closed, unconscious, expressionless",
|
||||||
"upper_body": "arms stretched vertically upwards, arms above head, shoulders pulled up by weight, torso elongated by gravity, ribcage visible, stomach stretched",
|
"upper_body": "arms_above_head, stretched_arms, chest_up, ribcage",
|
||||||
"lower_body": "hips sagging downwards, dead weight, legs dangling freely, limp legs, knees slightly bent or hanging straight",
|
"lower_body": "limp_legs, dangling_legs, sagging_hips",
|
||||||
"hands": "wrists bound together, hands tied overhead, handcuffs, shackles",
|
"hands": "bound, wrists_bound, handcuffs",
|
||||||
"feet": "feet pointing downwards, hovering off the ground, toes dragging",
|
"feet": "barefoot, dangling",
|
||||||
"additional": "ropes, chains, metal hooks, dungeon background, exhaustion"
|
"additional": "ropes, chains, dungeon, interior"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,15 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"suspension",
|
"participants": "solo",
|
||||||
"hanging",
|
"nsfw": true
|
||||||
"bound",
|
}
|
||||||
"arms_up",
|
|
||||||
"limp",
|
|
||||||
"unconscious",
|
|
||||||
"dangling",
|
|
||||||
"bdsm",
|
|
||||||
"bondage"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "defeatspitroast_illustrious",
|
"action_id": "defeatspitroast_illustrious",
|
||||||
"action_name": "Defeatspitroast Illustrious",
|
"action_name": "Defeatspitroast Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "oral sex, vaginal, threesome, double penetration, suspended sex, dangling legs",
|
"base": "threesome, double penetration, oral, vaginal, spitroast, suspended, dangling_legs",
|
||||||
"head": "tilted back or looking aside, mouth wide open, tongue sticking out, exhausted expression, rolled back, half-closed, ahegao",
|
"head": "head_back, mouth_open, tongue_out, exhausted, eyes_rolled_back, semi-closed_eyes, ahegao",
|
||||||
"upper_body": "bent at elbows, supporting upper body weight, sweaty, deeply arched spine",
|
"upper_body": "arms_bent, arched_back, sweaty",
|
||||||
"lower_body": "ass up, presenting rear, kneeling, thighs spread wide",
|
"lower_body": "ass_up, kneeling, spread_legs",
|
||||||
"hands": "gripping the ground or sheets, clenching",
|
"hands": "gripping, clenching",
|
||||||
"feet": "toes curled",
|
"feet": "toes_curled",
|
||||||
"additional": "messy hair, trembling, heavy breathing, defeated posture"
|
"additional": "messy_hair, trembling, heavy_breathing, defeated"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,18 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"doggystyle",
|
"participants": "1girl 2boys",
|
||||||
"spitroast",
|
"nsfw": true
|
||||||
"double_penetration",
|
}
|
||||||
"all_fours",
|
|
||||||
"ass_up",
|
|
||||||
"open_mouth",
|
|
||||||
"tongue_out",
|
|
||||||
"ahegao",
|
|
||||||
"sweat",
|
|
||||||
"looking_back",
|
|
||||||
"",
|
|
||||||
"1girl"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,11 +2,11 @@
|
|||||||
"action_id": "disinterested_sex___bored_female",
|
"action_id": "disinterested_sex___bored_female",
|
||||||
"action_name": "Disinterested Sex Bored Female",
|
"action_name": "Disinterested Sex Bored Female",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "1girl,hetero,doggystyle,faceless male, (solo focus:1.2)",
|
"base": "1girl, hetero, doggystyle, male_focused, (solo_focus:1.2)",
|
||||||
"head": "on stomach, resting on pillow, looking at smartphone, bored",
|
"head": "lying, stomach, on_stomach, pillow, looking_at_phone, bored, uninterested, expressionless",
|
||||||
"upper_body": "",
|
"upper_body": "lying, stomach",
|
||||||
"lower_body": "",
|
"lower_body": "doggystyle",
|
||||||
"hands": "holding phone",
|
"hands": "holding_phone",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": ""
|
"additional": ""
|
||||||
},
|
},
|
||||||
@@ -21,7 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"bored"
|
"participants": "1girl 1boy",
|
||||||
]
|
"nsfw": true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "display_case_bdsm_illus",
|
"action_id": "display_case_bdsm_illus",
|
||||||
"action_name": "Display Case Bdsm Illus",
|
"action_name": "Display Case Bdsm Illus",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "trapped inside a rectangular glass display case, standing or kneeling limitation, whole body confined",
|
"base": "glass_box, confinement, trapped, human_exhibit, enclosure",
|
||||||
"head": "looking out through the glass, potentially gagged or expressionless, open, staring at the viewer through reflections",
|
"head": "looking_at_viewer, open_mouth, empty_eyes, expressionless",
|
||||||
"upper_body": "restricted movement, potentially bound behind back or pressed against glass, upright relative to the container, visible behind glass",
|
"upper_body": "bound, arms_behind_back, arms_pressed_against_glass, restricted_movement",
|
||||||
"lower_body": "hips aligned with the standing or kneeling posture, straight or folded to fit inside the box",
|
"lower_body": "kneeling, standing",
|
||||||
"hands": "palms pressed against the transparent wall or tied",
|
"hands": "hands_pressed_against_glass, bound_hands",
|
||||||
"feet": "resting on the bottom platform of the case",
|
"feet": "barefoot",
|
||||||
"additional": "glass reflections, airtight container aesthetic, museum or auction setting, objectification"
|
"additional": "reflections, glass, transparent_wall, exhibit, bondage, bdsm"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,12 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"glass box",
|
"participants": "solo",
|
||||||
"confinement",
|
"nsfw": true
|
||||||
"exhibitionism",
|
}
|
||||||
"trapped",
|
|
||||||
"through glass",
|
|
||||||
"human exhibit"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "display_case_illustr",
|
"action_id": "display_case_illustr",
|
||||||
"action_name": "Display Case Illustr",
|
"action_name": "Display Case Illustr",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "standing stiffly like an action figure, encased inside a rectangular transparent box",
|
"base": "standing, action_figure, encased, display_box, transparent_packaging",
|
||||||
"head": "neutral expression, facing forward, slightly doll-like, fixed gaze, looking at viewer",
|
"head": "neutral_expression, face_forward, fixed_gaze, doll_joint",
|
||||||
"upper_body": "resting at sides or slightly bent in a static pose, facing front, rigid posture",
|
"upper_body": "rigid_posture, standing_stiffly, front_view",
|
||||||
"lower_body": "aligned with torso, standing straight, feet positioned securely on the box base",
|
"lower_body": "standing_straight, feet_together",
|
||||||
"hands": "open palms or loosely curled, possibly pressing against the front glass",
|
"hands": "hands_at_sides, open_palm, pressing_against_glass",
|
||||||
"feet": "flat on the floor of the case",
|
"feet": "flat_feet",
|
||||||
"additional": "transparent plastic packaging, cardboard backing with product design, barcode, reflections on glass, sealed box"
|
"additional": "cardboard_backing, toy_packaging, barcode, reflections_on_glass, sealed_box, plastic_container"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,15 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"display case",
|
"participants": "solo",
|
||||||
"action figure",
|
"nsfw": false
|
||||||
"packaging",
|
}
|
||||||
"in box",
|
|
||||||
"plastic box",
|
|
||||||
"collectible",
|
|
||||||
"sealed",
|
|
||||||
"toy",
|
|
||||||
"transparent"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "doggydoublefingering",
|
"action_id": "doggydoublefingering",
|
||||||
"action_name": "Doggydoublefingering",
|
"action_name": "Doggydoublefingering",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "Three females arranged side-by-side in a row, all facing away from viewer or towards viewer depending on angle, engaged in group sexual activity",
|
"base": "3girls, group_sex, doggystyle, fingering, multiple_females_fingered",
|
||||||
"head": "various expressions, blushing, sweating, looking back or down, open or closed in pleasure",
|
"head": "blushing, sweating, facial_expression, eyes_closed, looking_at_viewer",
|
||||||
"upper_body": "varied, gripping sheets or supporting body, leaning forward, breasts visible if from front",
|
"upper_body": "leaning_forward, upper_body_focus",
|
||||||
"lower_body": "hips raised, bent over, kneeling on all fours",
|
"lower_body": "all_fours, spread_legs, hips_up",
|
||||||
"hands": "resting on surface or gripping",
|
"hands": "arms_extended, fingers_touching_surface",
|
||||||
"feet": "resting on bed or ground",
|
"feet": "kneeling, soles_of_feet",
|
||||||
"additional": "center female receiving vaginal penetration from behind (doggystyle), two distinct side females being fingered simultaneously, male figure or disembodied hands performing the fingering"
|
"additional": "male_focus, male_fingering, multiple_females, group_sex, vaginal_penetration, doggystyle_from_behind, shared_pleasure"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/DoggyDoubleFingering.safetensors",
|
"lora_name": "Illustrious/Poses/DoggyDoubleFingering.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"3girls",
|
"participants": "3girls, 1boy",
|
||||||
"group_sex",
|
"nsfw": true
|
||||||
"doggystyle",
|
}
|
||||||
"fingering",
|
|
||||||
"all_fours",
|
|
||||||
"sex_from_behind",
|
|
||||||
"vaginal",
|
|
||||||
"hetero",
|
|
||||||
"harem",
|
|
||||||
"male_fingering"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "dunking_face_in_a_bowl_of_cum_r1",
|
"action_id": "dunking_face_in_a_bowl_of_cum_r1",
|
||||||
"action_name": "Dunking Face In A Bowl Of Cum R1",
|
"action_name": "Dunking Face In A Bowl Of Cum R1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling, all fours, head_down, held down, close-up, from below, humiliation, (solo focus:1.2)",
|
"base": "kneeling, all_fours, head_down, humiliation, close-up, from_below, solo",
|
||||||
"head": "face_down, cum in mouth, cum bubble, hand on anothers head, crying, closed_eyes",
|
"head": "face_down, cum_in_mouth, cum_bubble, crying, closed_eyes",
|
||||||
"upper_body": "",
|
"upper_body": "",
|
||||||
"lower_body": "",
|
"lower_body": "",
|
||||||
"hands": "",
|
"hands": "clutching_head",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "cum bowl"
|
"additional": "bowl, cum, drowning, air_bubble"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/Dunking_face_in_a_bowl_of_cum_r1.safetensors",
|
"lora_name": "Illustrious/Poses/Dunking_face_in_a_bowl_of_cum_r1.safetensors",
|
||||||
@@ -17,19 +17,8 @@
|
|||||||
"lora_weight_min": 0.4,
|
"lora_weight_min": 0.4,
|
||||||
"lora_weight_max": 0.6
|
"lora_weight_max": 0.6
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"1girl",
|
"participants": "1girl",
|
||||||
"solo",
|
"nsfw": true
|
||||||
"leaning_forward",
|
}
|
||||||
"head_down",
|
|
||||||
"clutching_head",
|
|
||||||
"drowning",
|
|
||||||
"air_bubble",
|
|
||||||
"crying",
|
|
||||||
"tears",
|
|
||||||
"embarrassed",
|
|
||||||
"disgust",
|
|
||||||
"bowl",
|
|
||||||
"cum"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "ekiben_ill_10",
|
"action_id": "ekiben_ill_10",
|
||||||
"action_name": "Ekiben Ill 10",
|
"action_name": "Ekiben Ill 10",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "duo, 1boy, 1girl, standing, male lifting female, carrying, sexual position",
|
"base": "duo, 1boy, 1girl, male_lifting_female, standing, holding, sexual_position, intercourse",
|
||||||
"head": "looking at another, head back or looking down, eye contact or eyes closed",
|
"head": "looking_at_each_other, head_back, closed_eyes",
|
||||||
"upper_body": "arms supporting legs, arms around neck, chest to chest, upright",
|
"upper_body": "arms_around_neck, chest_to_chest, close_embrace, torso_embrace",
|
||||||
"lower_body": "connected, groins touching, spread legs, legs up, legs around waist, m-legs, bent knees",
|
"lower_body": "connected, groins_touching, legs_around_male, legs_up, m_legs, bent_knees",
|
||||||
"hands": "holding legs, grabbing thighs, gripping",
|
"hands": "hands_on_thighs, gripping_thighs, holding_legs",
|
||||||
"feet": "dangling feet, plantar flexion",
|
"feet": "dangling_feet, toes_curled",
|
||||||
"additional": "strength, suspension, height difference"
|
"additional": "strength, suspension, height_difference, lifting_person"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"ekiben",
|
"participants": "1boy, 1girl, duo",
|
||||||
"lifting",
|
"nsfw": true
|
||||||
"carrying",
|
}
|
||||||
"standing",
|
|
||||||
"spread legs",
|
|
||||||
"holding legs",
|
|
||||||
"duo",
|
|
||||||
"sex"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "elbow_squeeze__concept_lora_000008",
|
"action_id": "elbow_squeeze__concept_lora_000008",
|
||||||
"action_name": "Elbow Squeeze Concept Lora 000008",
|
"action_name": "Elbow Squeeze Concept Lora 000008",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "Character standing with upper arms pressed tightly against the torso, emphasizing the chest area through the pressure of the elbows.",
|
"base": "standing, arms_at_sides, upper_body, elbow_squeeze, pushing_together",
|
||||||
"head": "Facing forward, slightly tucked chin or tilted, expression often shy or teasing., Looking directly at viewer.",
|
"head": "looking_at_viewer, shy, teasing",
|
||||||
"upper_body": "Upper arms squeezing inward against the sides of the ribs/chest, elbows tucked tight to the body., Chest pushed upward or compressed slightly by the lateral pressure of the arms.",
|
"upper_body": "arms_pressed_against_body, cleavage, breast_compression, arms_crossed_under_breasts",
|
||||||
"lower_body": "Neutral stance., Standing straight or slightly knock-kneed for a shy effect.",
|
"lower_body": "standing, standing_on_one_leg, knock-kneed",
|
||||||
"hands": "Forearms angled out or hands clasped near the navel/chest area.",
|
"hands": "hands_together, hand_on_torso",
|
||||||
"feet": "Planted firmly.",
|
"feet": "barefoot, shoes",
|
||||||
"additional": "Clothing often pulled tight across the chest due to the arm position."
|
"additional": "tight_clothes"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,11 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"elbow squeeze",
|
"participants": "solo",
|
||||||
"arms at sides",
|
"nsfw": false
|
||||||
"upper body",
|
}
|
||||||
"squeezing",
|
|
||||||
"tight clothes"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "extreme_sex_v1_0_illustriousxl",
|
"action_id": "extreme_sex_v1_0_illustriousxl",
|
||||||
"action_name": "Extreme Sex V1 0 Illustriousxl",
|
"action_name": "Extreme Sex V1 0 Illustriousxl",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "sitting, engaging in sexual activity, intense body language",
|
"base": "sexual_activity, sex, multiple_positions",
|
||||||
"head": "tilted back, expression of ecstasy, rolling_eyes, loss of focus, cross-eyed (ahegao)",
|
"head": "ahegao, rolling_eyes, head_back, mouth_open, drooling, saliva_trail",
|
||||||
"upper_body": "clinging or holding partner, heaving, covered in sweat",
|
"upper_body": "sweaty, flushed, messy_hair, heavy_breathing",
|
||||||
"lower_body": "engaged in action, wrapped around or spread",
|
"lower_body": "legs_spread, wrapped_around_partner",
|
||||||
"hands": "grasping details",
|
"hands": "hands_on_partner, gripping",
|
||||||
"feet": "toes curled",
|
"feet": "curled_toes",
|
||||||
"additional": "drooling, saliva_trail, flushing, messy_hair"
|
"additional": "passionate, climax, facial_flush, intense_expression"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/extreme-sex-v1.0-illustriousxl.safetensors",
|
"lora_name": "Illustrious/Poses/extreme-sex-v1.0-illustriousxl.safetensors",
|
||||||
@@ -17,17 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"rolling_eyes",
|
"participants": "1girl 1boy",
|
||||||
"ahegao",
|
"nsfw": true
|
||||||
"drooling",
|
}
|
||||||
"sweat",
|
|
||||||
"open_mouth",
|
|
||||||
"tongue_out",
|
|
||||||
"messy_hair",
|
|
||||||
"heavy_breathing",
|
|
||||||
"blush",
|
|
||||||
"mind_break",
|
|
||||||
"sex"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "face_grab_illustrious",
|
"action_id": "face_grab_illustrious",
|
||||||
"action_name": "Face Grab Illustrious",
|
"action_name": "Face Grab Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "POV close-up of a character having their face grabbed by the viewer",
|
"base": "pov, first-person_view, close-up, grabbing_another's_face",
|
||||||
"head": "forced expression, open mouth, tongue out, pout, grabbing cheeks or chin, looking at viewer, crying, streaming tears",
|
"head": "forced_expression, open_mouth, tongue_out, pout, crying, streaming_tears, looking_at_viewer",
|
||||||
"upper_body": "often not visible or passive, upper body, often nude or partially visible",
|
"upper_body": "upper_body, nude, partially_clad",
|
||||||
"lower_body": "usually out of frame, out of frame",
|
"lower_body": "out_of_frame",
|
||||||
"hands": "pov hands, hand grabbing face",
|
"hands": "pov_hands, grabbing_face",
|
||||||
"feet": "out of frame",
|
"feet": "out_of_frame",
|
||||||
"additional": "context often after fellatio with fluids on face or tongue"
|
"additional": "after_fellatio, cum_on_tongue, cum_on_face"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/face_grab_illustrious.safetensors",
|
"lora_name": "Illustrious/Poses/face_grab_illustrious.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 0.5,
|
"lora_weight_min": 0.5,
|
||||||
"lora_weight_max": 0.5
|
"lora_weight_max": 0.5
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"grabbing_another's_face",
|
"participants": "1girl 1boy",
|
||||||
"pov",
|
"nsfw": true
|
||||||
"pov_hands",
|
}
|
||||||
"after_fellatio",
|
|
||||||
"cum_on_tongue",
|
|
||||||
"open_mouth",
|
|
||||||
"tongue_out",
|
|
||||||
"pout",
|
|
||||||
"streaming_tears",
|
|
||||||
"cheek_pinching"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,10 +3,10 @@
|
|||||||
"action_name": "Facesit 08",
|
"action_name": "Facesit 08",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "sitting_on_face, cunnilingus, oral",
|
"base": "sitting_on_face, cunnilingus, oral",
|
||||||
"head": "looking_at_viewer, looking_down, looking_at_viewer",
|
"head": "looking_at_viewer, looking_down",
|
||||||
"upper_body": "head_grab, nude, close-up",
|
"upper_body": "hand_on_head, nude, close-up",
|
||||||
"lower_body": "panties_aside, clitoris, pussy_juice, spread_legs",
|
"lower_body": "pussy, spread_legs, vaginal_fluids, clitoris",
|
||||||
"hands": "on_head",
|
"hands": "hands_on_head",
|
||||||
"feet": "out_of_frame",
|
"feet": "out_of_frame",
|
||||||
"additional": "yuri, female_pov, 2girls"
|
"additional": "yuri, female_pov, 2girls"
|
||||||
},
|
},
|
||||||
@@ -17,20 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"2girls",
|
"participants": "2girls",
|
||||||
"female_pov",
|
"nsfw": true
|
||||||
"close-up",
|
}
|
||||||
"looking_at_viewer",
|
|
||||||
"sitting_on_face",
|
|
||||||
"oral",
|
|
||||||
"cunnilingus",
|
|
||||||
"spread_legs",
|
|
||||||
"pussy_juice",
|
|
||||||
"clitoris",
|
|
||||||
"yuri",
|
|
||||||
"panties_aside",
|
|
||||||
"head_grab",
|
|
||||||
"looking_down"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "fellatio_from_below_illustriousxl_lora_nochekaiser",
|
"action_id": "fellatio_from_below_illustriousxl_lora_nochekaiser",
|
||||||
"action_name": "Fellatio From Below Illustriousxl Lora Nochekaiser",
|
"action_name": "Fellatio From Below Illustriousxl Lora Nochekaiser",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "squatting, fellatio, from_below",
|
"base": "fellatio, from_below, squatting",
|
||||||
"head": "facing_viewer, open_mouth, looking_down",
|
"head": "looking_at_viewer, open_mouth, looking_down",
|
||||||
"upper_body": "arms_visible, nude, navel, nipples",
|
"upper_body": "nude, navel, breasts, nipples",
|
||||||
"lower_body": "nude, pussy, spread_legs, squatting, bent_legs",
|
"lower_body": "nude, pussy, spread_legs, bent_legs",
|
||||||
"hands": "hands_visible",
|
"hands": "hands_on_ground",
|
||||||
"feet": "feet_visible",
|
"feet": "barefoot",
|
||||||
"additional": "penis, testicles, oral, sweat, cum"
|
"additional": "penis, testicles, fellatio, sweat, cum"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/fellatio-from-below-illustriousxl-lora-nochekaiser.safetensors",
|
"lora_name": "Illustrious/Poses/fellatio-from-below-illustriousxl-lora-nochekaiser.safetensors",
|
||||||
@@ -17,18 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"fellatio",
|
"participants": "1girl 1boy",
|
||||||
"from_below",
|
"nsfw": true
|
||||||
"squatting",
|
}
|
||||||
"penis",
|
|
||||||
"testicles",
|
|
||||||
"completely_nude",
|
|
||||||
"hetero",
|
|
||||||
"oral",
|
|
||||||
"navel",
|
|
||||||
"nipples",
|
|
||||||
"sweat",
|
|
||||||
"pussy"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "fellatio_on_couch_illustriousxl_lora_nochekaiser",
|
"action_id": "fellatio_on_couch_illustriousxl_lora_nochekaiser",
|
||||||
"action_name": "Fellatio On Couch Illustriousxl Lora Nochekaiser",
|
"action_name": "Fellatio On Couch Illustriousxl Lora Nochekaiser",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "fellatio, sitting, on_couch, hetero, oral",
|
"base": "fellatio, oral, sitting, on_couch, sex, hetero",
|
||||||
"head": "blush, sweat, head_down, looking_down, eyes_closed",
|
"head": "blush, sweat, head_down, eyes_closed, looking_down",
|
||||||
"upper_body": "arms_at_side, breast_press, nipples, nude, leaning_forward",
|
"upper_body": "nude, breasts, breast_press, leaning_forward",
|
||||||
"lower_body": "sitting, nude, sitting, legs_apart",
|
"lower_body": "sitting, spread_legs, nude",
|
||||||
"hands": "hands_on_legs",
|
"hands": "hands_on_legs",
|
||||||
"feet": "feet_on_floor",
|
"feet": "feet_on_floor",
|
||||||
"additional": "couch, penis, testicles, uncensored"
|
"additional": "couch, penis, testicles, focus_on_penis"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/fellatio-on-couch-illustriousxl-lora-nochekaiser.safetensors",
|
"lora_name": "Illustrious/Poses/fellatio-on-couch-illustriousxl-lora-nochekaiser.safetensors",
|
||||||
@@ -17,20 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"fellatio",
|
"participants": "1girl 1boy",
|
||||||
"on_couch",
|
"nsfw": true
|
||||||
"hetero",
|
}
|
||||||
"penis",
|
|
||||||
"oral",
|
|
||||||
"sitting",
|
|
||||||
"testicles",
|
|
||||||
"blush",
|
|
||||||
"sweat",
|
|
||||||
"breast_press",
|
|
||||||
"nipples",
|
|
||||||
"nude",
|
|
||||||
"uncensored",
|
|
||||||
"couch"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "femdom_face_between_breasts",
|
"action_id": "femdom_face_between_breasts",
|
||||||
"action_name": "Femdom Face Between Breasts",
|
"action_name": "Femdom Face Between Breasts",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "upper body view, female character pressing a person's face into her chest",
|
"base": "upper_body, 1girl, 1boy, couple, breast_smother",
|
||||||
"head": "looking down, chin tucked, dominant expression, narrowed, looking down at the person",
|
"head": "looking_down, dominant, smirk, narrowed_eyes, looking_at_viewer",
|
||||||
"upper_body": "wrapping around the person's head, holding head firmly, chest pushed forward, breasts pressed tightly together around a face",
|
"upper_body": "arms_around_head, chest, breasts_pressed_together, cleavage, breast_smother",
|
||||||
"lower_body": "neutral alignment, standing or sitting",
|
"lower_body": "standing",
|
||||||
"hands": "fingers tangled in hair, or pressing the back of the head",
|
"hands": "hands_in_hair, holding_head",
|
||||||
"feet": "not visible",
|
"feet": "",
|
||||||
"additional": "male face buried in breasts, squished face, soft lighting, close-up"
|
"additional": "face_buried_in_breasts, squished_face, dominance, sexual_intercourse, suggestive"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,13 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"breast smother",
|
"participants": "1girl 1boy",
|
||||||
"buried in breasts",
|
"nsfw": true
|
||||||
"face between breasts",
|
}
|
||||||
"facesitting",
|
|
||||||
"femdom",
|
|
||||||
"big breasts",
|
|
||||||
"cleavage"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "femdom_held_down_illust",
|
"action_id": "femdom_held_down_illust",
|
||||||
"action_name": "Femdom Held Down Illust",
|
"action_name": "Femdom Held Down Illust",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "girl_on_top, straddling, lying_on_back",
|
"base": "straddling, pin, 1girl, 1boy, lying_on_back",
|
||||||
"head": "looking_down, looking_at_another, forced_eye_contact",
|
"head": "looking_down, looking_at_viewer, intense_expression",
|
||||||
"upper_body": "holding_another's_wrists, arms_above_head, on_back",
|
"upper_body": "arms_above_head, holding_wrists, dominant_female",
|
||||||
"lower_body": "straddled, spread_legs",
|
"lower_body": "spread_legs, crotch_straddle",
|
||||||
"hands": "grab, clenched_hands",
|
"hands": "hands_holding, grasping, clenched_hand",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "femdom, struggling, pinned, assertive_female"
|
"additional": "femdom, power_dynamic, struggle, restraint"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/Femdom_Held_Down_Illust.safetensors",
|
"lora_name": "Illustrious/Poses/Femdom_Held_Down_Illust.safetensors",
|
||||||
@@ -17,15 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"femdom",
|
"participants": "1girl 1boy",
|
||||||
"assertive_female",
|
"nsfw": true
|
||||||
"rough_sex",
|
}
|
||||||
"girl_on_top",
|
|
||||||
"straddling",
|
|
||||||
"holding_another's_wrists",
|
|
||||||
"lying_on_back",
|
|
||||||
"pinned",
|
|
||||||
"struggling"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "fertilization_illustriousxl_lora_nochekaiser",
|
"action_id": "fertilization_illustriousxl_lora_nochekaiser",
|
||||||
"action_name": "Fertilization Illustriousxl Lora Nochekaiser",
|
"action_name": "Fertilization Illustriousxl Lora Nochekaiser",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "sex, vaginal, on_bed, nude, cowboy_shot",
|
"base": "sex, vaginal, on_bed, nude, cowboy_shot, ejaculation",
|
||||||
"head": "ahegao, blush, open_mouth, head_back, rolled_eyes, half_closed_eyes",
|
"head": "ahegao, flushed, open_mouth, head_back, rolled_eyes, half-closed_eyes",
|
||||||
"upper_body": "arms_at_sides, nude, nipples, navel",
|
"upper_body": "nude, nipples, navel, arms_at_sides",
|
||||||
"lower_body": "pussy, cum_in_pussy, internal_cumshot, penis, hetero, spread_legs, legs_up",
|
"lower_body": "pussy, cum_in_pussy, internal_cumshot, penis, hetero, spread_legs, legs_up",
|
||||||
"hands": "clenched_hands",
|
"hands": "clenched_hands",
|
||||||
"feet": "bare_feet",
|
"feet": "bare_feet",
|
||||||
"additional": "cross-section, fertilization, impregnation, uterus, ovum, sperm_cell, ovaries, ejaculation"
|
"additional": "cross-section, fertilization, pregnancy, uterus, ovum, sperm_cell, ovaries"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/fertilization-illustriousxl-lora-nochekaiser.safetensors",
|
"lora_name": "Illustrious/Poses/fertilization-illustriousxl-lora-nochekaiser.safetensors",
|
||||||
@@ -17,18 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"fertilization",
|
"participants": "1girl 1boy",
|
||||||
"cross-section",
|
"nsfw": true
|
||||||
"ovum",
|
}
|
||||||
"sperm_cell",
|
|
||||||
"impregnation",
|
|
||||||
"uterus",
|
|
||||||
"internal_cumshot",
|
|
||||||
"cum_in_pussy",
|
|
||||||
"vaginal",
|
|
||||||
"ovaries",
|
|
||||||
"ahegao",
|
|
||||||
"on_bed"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "fff_imminent_masturbation",
|
"action_id": "fff_imminent_masturbation",
|
||||||
"action_name": "Fff Imminent Masturbation",
|
"action_name": "Fff Imminent Masturbation",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "hand_on_own_crotch, trembling, legs_together, knock-kneed",
|
"base": "hand_on_crotch, trembling, legs_together, knock-kneed, blushing, arousal",
|
||||||
"head": "heavy_breathing, sweating, looking_down, narrowed_eyes, half-closed_eyes, dilated_pupils",
|
"head": "heavy_breathing, sweat, looking_down, narrowed_eyes, half-closed_eyes, dilated_pupils, flushed",
|
||||||
"upper_body": "arms_down, hand_between_legs, arched_back, squirming",
|
"upper_body": "arched_back, squirming, knees_together",
|
||||||
"lower_body": "hips_forward, legs_together, knock-kneed",
|
"lower_body": "hips_forward, standing, legs_together",
|
||||||
"hands": "hand_on_own_crotch, squeezing, rubbing_crotch",
|
"hands": "hand_on_crotch, grasping, squeezing, rubbing_crotch",
|
||||||
"feet": "standing",
|
"feet": "standing, feet_together",
|
||||||
"additional": "clothed_masturbation, urgency, arousal, through_clothes"
|
"additional": "clothed_masturbation, urgency, arousal, intimate_touch"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/FFF_imminent_masturbation.safetensors",
|
"lora_name": "Illustrious/Poses/FFF_imminent_masturbation.safetensors",
|
||||||
@@ -17,16 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"hand_on_own_crotch",
|
"participants": "solo",
|
||||||
"heavy_breathing",
|
"nsfw": true
|
||||||
"trembling",
|
}
|
||||||
"sweat",
|
|
||||||
"blush",
|
|
||||||
"legs_together",
|
|
||||||
"clothed_masturbation",
|
|
||||||
"hand_between_legs",
|
|
||||||
"aroused",
|
|
||||||
"rubbing_crotch"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "ffm3some_footjob_efeme3ftfe_il_1475115",
|
"action_id": "ffm3some_footjob_efeme3ftfe_il_1475115",
|
||||||
"action_name": "Ffm3Some Footjob Efeme3Ftfe Il 1475115",
|
"action_name": "Ffm3Some Footjob Efeme3Ftfe Il 1475115",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "FFM threesome scenario, one male lying on back receiving stimulation, two females sitting or reclining near his, performing a double footjob",
|
"base": "ffm, threesome, 1boy, 2girls, footjob, multiple_partners, sexual_activity",
|
||||||
"head": "females looking down at their feet, male head bathed in pleasure, expressions of focus and arousal, looking at penis, eyes closed, eye contact with male",
|
"head": "looking_down, male focus, arousal, eyes_closed, looking_at_penis, eye_contact",
|
||||||
"upper_body": "females arms resting behind them for support or on their own legs, male torso exposed supine, females upper bodies leaning back or sitting upright",
|
"upper_body": "supine, bare_torso, torso_focus, arms_at_sides, reclining",
|
||||||
"lower_body": "hips positioned to extend legs towards the male, females legs extended towards center, male legs spread or straight",
|
"lower_body": "spread_legs, legs_up, legs_spread",
|
||||||
"hands": "hands resting on bed sheets, gripping sheets, or touching own legs",
|
"hands": "gripping_sheets, hands_on_bed, hands_on_legs",
|
||||||
"feet": "barefoot, soles rubbing against penis, toes curling, sandwiching penis between feet, four feet visible",
|
"feet": "barefoot, soles, toes_curling, sandwich, four_feet",
|
||||||
"additional": "indoors, bed, crumpled sheets, sexual activity, multiple partners"
|
"additional": "indoors, bed, crumpled_sheets, climax, sweaty"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "false",
|
"solo_focus": "false",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"footjob",
|
"participants": "1boy, 2girls, ffm, threesome",
|
||||||
"ffm",
|
"nsfw": true
|
||||||
"threesome",
|
}
|
||||||
"2girls",
|
|
||||||
"1boy",
|
|
||||||
"soles",
|
|
||||||
"barefoot",
|
|
||||||
"legs",
|
|
||||||
"penis",
|
|
||||||
"sexual"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"action_name": "Ffm Threesome Kiss And Fellatio Illustrious",
|
"action_name": "Ffm Threesome Kiss And Fellatio Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "ffm_threesome, 2girls, 1boy, group_sex, sandwich_position",
|
"base": "ffm_threesome, 2girls, 1boy, group_sex, sandwich_position",
|
||||||
"head": "kissing, sucking, head_grab, closed_eyes, looking_at_partner",
|
"head": "kissing, fellatio, head_grab, closed_eyes, tilted_head",
|
||||||
"upper_body": "arms_around_neck, holding_penis, hand_on_head, leaning_forward, physical_contact",
|
"upper_body": "arms_around_neck, hand_on_head, leaning_forward, physical_contact, messy_hair, collarbone",
|
||||||
"lower_body": "sitting, straddling, kneeling, spread_legs",
|
"lower_body": "kneeling, sitting, straddling, spread_legs, barefoot",
|
||||||
"hands": "stroking",
|
"hands": "stroking, hand_on_penis",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "indoor, couch, faceless_male, saliva, blush"
|
"additional": "indoor, couch, faceless_male, saliva, blush, intimate, pleasure"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/FFM_threesome_-_Kiss_and_Fellatio_Illustrious.safetensors",
|
"lora_name": "Illustrious/Poses/FFM_threesome_-_Kiss_and_Fellatio_Illustrious.safetensors",
|
||||||
@@ -17,21 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"2girls",
|
"participants": "1boy, 2girls",
|
||||||
"1boy",
|
"nsfw": true
|
||||||
"ffm_threesome",
|
}
|
||||||
"group_sex",
|
|
||||||
"hetero",
|
|
||||||
"kissing",
|
|
||||||
"fellatio",
|
|
||||||
"faceless_male",
|
|
||||||
"sitting",
|
|
||||||
"couch",
|
|
||||||
"indoor",
|
|
||||||
"nude",
|
|
||||||
"blush",
|
|
||||||
"saliva",
|
|
||||||
"sandwich_position"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "ffm_threesome_doggy_style_front_view_illustrious",
|
"action_id": "ffm_threesome_doggy_style_front_view_illustrious",
|
||||||
"action_name": "Ffm Threesome Doggy Style Front View Illustrious",
|
"action_name": "Ffm Threesome Doggy Style Front View Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "threesome, 2girls, 1boy, doggy style, all fours, kneeling, from front, bodies overlapping",
|
"base": "threesome, 2girls, 1boy, doggy_style, from_front, all_fours, kneeling, bodies_overlapping",
|
||||||
"head": "looking at viewer, head raised, blushing, sweating, tongues out, open eyes, heart-shaped pupils, eye contact",
|
"head": "looking_at_viewer, head_raised, blushes, sweat, tongue_out, open_eyes, heart_pupils, eye_contact",
|
||||||
"upper_body": "arms straight, supporting weight, hands on ground, leaning forward, arched back, breasts hanging",
|
"upper_body": "arms_straight, hands_on_ground, leaning_forward, arched_back, breasts_hanging",
|
||||||
"lower_body": "hips raised high, buttocks touching, knees bent, kneeling, legs spread",
|
"lower_body": "hips_raised, buttocks, knees_bent, kneeling, legs_spread",
|
||||||
"hands": "palms flat, fingers spread, on bed sheet",
|
"hands": "palms_flat, fingers_spread, on_bed",
|
||||||
"feet": "toes curled, feet relaxed",
|
"feet": "toes_curled, feet_relaxed",
|
||||||
"additional": "sex, penetration, vaginal, motion lines, saliva trail, indoors, bed"
|
"additional": "sex, penetration, vaginal_intercourse, motion_lines, saliva_trail, indoors, bed"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "false",
|
"solo_focus": "false",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"threesome",
|
"participants": "2girls 1boy",
|
||||||
"2girls",
|
"nsfw": true
|
||||||
"1boy",
|
}
|
||||||
"doggy style",
|
|
||||||
"from front",
|
|
||||||
"all fours",
|
|
||||||
"sex",
|
|
||||||
"penetration",
|
|
||||||
"blush",
|
|
||||||
"sweat"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "ffm_threesome_girl_sandwichdouble_dip_illustrious",
|
"action_id": "ffm_threesome_girl_sandwichdouble_dip_illustrious",
|
||||||
"action_name": "Ffm Threesome Girl Sandwichdouble Dip Illustrious",
|
"action_name": "Ffm Threesome Girl Sandwichdouble Dip Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "Three-person stack on a bed: one girl lying flat on her back, the male (often faceless/obscured) positioned in the middle, and the second girl straddling on top of the pile.",
|
"base": "ffm_threesome, 2girls, 1boy, sandwiched, bed, messy_bed",
|
||||||
"head": "Girls' faces visible, often with flushed cheeks or ahegao expressions; male face usually out of frame or obscured., rolled_back, closed_eyes, or looking_at_viewer",
|
"head": "ahegao, flushed, closed_eyes, rolled_back_eyes, looking_at_viewer",
|
||||||
"upper_body": "Arms embracing the partner in the middle or holding bed sheets., Sandwiched torsos, breasts pressed against the middle partner.",
|
"upper_body": "embracing, cleavage, breasts_pressed_together, holding_bed_sheet",
|
||||||
"lower_body": "Interconnected pelvises, implied penetration., Bottom girl with legs_spread, top girl straddling.",
|
"lower_body": "straddling, legs_spread, pelvis_against_pelvis, implied_penetration",
|
||||||
"hands": "grabbing_sheet or touching_partner",
|
"hands": "grabbing_sheet, touching_partner",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "Scene typically set on a bed with messy sheets."
|
"additional": "group_sex, orgasm, erotic, indoors"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/FFM_threesome_girl_sandwichdouble_dip_Illustrious.safetensors",
|
"lora_name": "Illustrious/Poses/FFM_threesome_girl_sandwichdouble_dip_Illustrious.safetensors",
|
||||||
@@ -17,23 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"ffm_threesome",
|
"participants": "1boy, 2girls",
|
||||||
"group_sex",
|
"nsfw": true
|
||||||
"sandwiched",
|
}
|
||||||
"2girls",
|
|
||||||
"1boy",
|
|
||||||
"girl_on_top",
|
|
||||||
"on_back",
|
|
||||||
"lying",
|
|
||||||
"straddling",
|
|
||||||
"faceless_male",
|
|
||||||
"male_on_top",
|
|
||||||
"stack",
|
|
||||||
"sex",
|
|
||||||
"implied_penetration",
|
|
||||||
"ahegao",
|
|
||||||
"bed_sheet",
|
|
||||||
"messy_bed"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -3,12 +3,12 @@
|
|||||||
"action_name": "Ffm Threesome One Girl On Top And Bj",
|
"action_name": "Ffm Threesome One Girl On Top And Bj",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "ffm_threesome, cowgirl_position, straddling, lying, on_back",
|
"base": "ffm_threesome, cowgirl_position, straddling, lying, on_back",
|
||||||
"head": "blush, half-closed_eyes, half-closed_eyes",
|
"head": "blush, half-closed_eyes, heavy_breathing, open_mouth",
|
||||||
"upper_body": "arms_at_sides, nude, breasts",
|
"upper_body": "nude, breasts",
|
||||||
"lower_body": "legs_apart, straddling, kneeling, bent_legs",
|
"lower_body": "legs_apart, straddling, kneeling, bent_legs",
|
||||||
"hands": "hands_on_chest",
|
"hands": "hands_on_body, touching_self",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "fellatio, licking, penis, testicles, size_difference, 2girls, 1boy"
|
"additional": "fellatio, penis, testicles, multiple_girls, 2girls, 1boy, sex"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/FFM_threesome_one_girl_on_top_and_BJ.safetensors",
|
"lora_name": "Illustrious/Poses/FFM_threesome_one_girl_on_top_and_BJ.safetensors",
|
||||||
@@ -17,21 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"ffm_threesome",
|
"participants": "1girl 1boy 1girl",
|
||||||
"cowgirl_position",
|
"nsfw": true
|
||||||
"fellatio",
|
}
|
||||||
"straddling",
|
|
||||||
"2girls",
|
|
||||||
"1boy",
|
|
||||||
"reaction",
|
|
||||||
"lying",
|
|
||||||
"on_back",
|
|
||||||
"nude",
|
|
||||||
"sex",
|
|
||||||
"penis",
|
|
||||||
"testicles",
|
|
||||||
"erotic",
|
|
||||||
"cum"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "ffmnursinghandjob_ill_v3",
|
"action_id": "ffmnursinghandjob_ill_v3",
|
||||||
"action_name": "Ffmnursinghandjob Ill V3",
|
"action_name": "Ffmnursinghandjob Ill V3",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "threesome, 2girls, 1boy, ffm, male lying on back, two females kneeling or straddling",
|
"base": "threesome, 2girls, 1boy, ffm, male_lying_on_back, females_kneeling, straddle",
|
||||||
"head": "blushing faces, looking down, ecstatic expressions, tongue out, half-closed eyes, heart-shaped pupils, looking at penis",
|
"head": "blush, looking_down, ecstatic, tongue_out, half-closed_eyes, heart-shaped_pupils, looking_at_penis",
|
||||||
"upper_body": "holding breasts, offering breast, reaching for penis, exposed breasts, leaning forward, nipples visible",
|
"upper_body": "holding_breasts, reaching_for_penis, exposed_breasts, leaning_forward, nipples",
|
||||||
"lower_body": "hips positioned near male's face or chest, kneeling, spread legs",
|
"lower_body": "kneeling, spread_legs, phallus_straddle",
|
||||||
"hands": "double handjob, stroking penis, squeezing breasts",
|
"hands": "double_handjob, stroking_penis, squeezing_breasts",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "lactation, breast milk, saliva string, messy"
|
"additional": "lactation, breast_milk, saliva, mess"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "false",
|
"solo_focus": "false",
|
||||||
@@ -21,18 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"threesome",
|
"participants": "1boy, 2girls, threesome",
|
||||||
"2girls",
|
"nsfw": true
|
||||||
"1boy",
|
}
|
||||||
"ffm",
|
|
||||||
"handjob",
|
|
||||||
"double_handjob",
|
|
||||||
"nursing",
|
|
||||||
"breast_feeding",
|
|
||||||
"lactation",
|
|
||||||
"breast_milk",
|
|
||||||
"big_breasts",
|
|
||||||
"kneeling"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "finish_blow_ill_v0_90_000004",
|
"action_id": "finish_blow_ill_v0_90_000004",
|
||||||
"action_name": "Finish Blow Ill V0 90 000004",
|
"action_name": "Finish Blow Ill V0 90 000004",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "highly dynamic combat pose, delivering a final powerful strike, lunging forward or mid-air jump",
|
"base": "dynamic_pose, fighting_stance, lunging, aerial_pose, mid-air",
|
||||||
"head": "intense battle expression, shouting or gritted teeth, hair flowing with motion, fierce gaze, focused on target, angry eyes",
|
"head": "intense_expression, screaming, gritted_teeth, flowing_hair, fierce_eyes, glare",
|
||||||
"upper_body": "swinging wildy, outstretched with weapon, motion blur on limbs, twisted torso for momentum, leaning into the attack",
|
"upper_body": "weapon_swing, motion_blur, torso_twist, dynamic_angle",
|
||||||
"lower_body": "hips rotated to generate power, low center of gravity, wide stance, knees bent, dynamic foreshortening",
|
"lower_body": "wide_stance, knees_bent, rotated_hips, foreshortening",
|
||||||
"hands": "tightly gripping weapon, two-handed grip, or clenched fist",
|
"hands": "grip, clenched_hand, holding_weapon, two-handed_weapon",
|
||||||
"feet": "planted firmly on ground or pointed in air, debris kicks up",
|
"feet": "standing_on_ground, mid-air",
|
||||||
"additional": "light trails, speed lines, impact effects, shockwaves, cinematic lighting, dutch angle, weapon smear"
|
"additional": "speed_lines, impact_frames, shockwave, cinematic_lighting, dutch_angle, smear_frame"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,12 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"action shot",
|
"participants": "solo",
|
||||||
"fighting",
|
"nsfw": false
|
||||||
"masterpiece",
|
}
|
||||||
"motion blur",
|
|
||||||
"intense",
|
|
||||||
"cinematic composition"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "fixed_perspective_v3_1558768",
|
"action_id": "fixed_perspective_v3_1558768",
|
||||||
"action_name": "Fixed Perspective V3 1558768",
|
"action_name": "Fixed Perspective V3 1558768",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "Character positioned with exaggerated depth, utilizing strong foreshortening to create a 3D effect aimed at the viewer",
|
"base": "foreshortening, exaggerated_perspective, depth, 3d, cinematic_composition",
|
||||||
"head": "Face centered and close to the camera, looking directly at the viewer, Intense eye contact, detailed eyes",
|
"head": "extreme_close_up, looking_at_viewer, eye_contact, detailed_eyes, face_focus",
|
||||||
"upper_body": "One or both arms reaching towards the lens, appearing larger due to perspective, Angled to recede into the background",
|
"upper_body": "reaching_towards_viewer, hand_in_foreground, perspective_distortion, angled_body",
|
||||||
"lower_body": "Visually smaller, further back, Trailing off into the distance, significantly smaller than the upper body",
|
"lower_body": "diminutive, distant, perspective_shift",
|
||||||
"hands": "Enlarged hands/fingers reaching out (foreshortened)",
|
"hands": "enlarged_hand, fingers_spread, reaching, holding_frame",
|
||||||
"feet": "Small or out of frame due to depth",
|
"feet": "",
|
||||||
"additional": "Fisheye lens effect, dramatic camera angle, depth of field, high distortion, 3D composition"
|
"additional": "fisheye, low_angle, depth_of_field, wide_angle_lens, distortion"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,13 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"foreshortening",
|
"participants": "solo",
|
||||||
"perspective",
|
"nsfw": false
|
||||||
"fisheye",
|
}
|
||||||
"reaching",
|
|
||||||
"dynamic angle",
|
|
||||||
"portrait",
|
|
||||||
"depth of field"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "fixed_point_v2",
|
"action_id": "fixed_point_v2",
|
||||||
"action_name": "Fixed Point V2",
|
"action_name": "Fixed Point V2",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "kneeling on floor in bedroom",
|
"base": "kneeling, on_floor, indoors, bedroom",
|
||||||
"head": "looking at viewer, open eyes",
|
"head": "looking_at_viewer, open_eyes",
|
||||||
"upper_body": "resting on bed, facing viewer",
|
"upper_body": "leaning_on_bed, torso_facing_viewer",
|
||||||
"lower_body": "kneeling, kneeling",
|
"lower_body": "kneeling, legs_together",
|
||||||
"hands": "resting",
|
"hands": "hands_resting",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "full room view, fxdpt"
|
"additional": "fxdpt, wide_shot, room_interior"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/fixed_point_v2.safetensors",
|
"lora_name": "Illustrious/Poses/fixed_point_v2.safetensors",
|
||||||
@@ -17,14 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"kneeling",
|
"participants": "solo",
|
||||||
"on_floor",
|
"nsfw": false
|
||||||
"indoors",
|
}
|
||||||
"bedroom",
|
|
||||||
"bed",
|
|
||||||
"wide_shot",
|
|
||||||
"from_above",
|
|
||||||
"perspective"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "flaccid_after_cum_illustrious_000009",
|
"action_id": "flaccid_after_cum_illustrious_000009",
|
||||||
"action_name": "Flaccid After Cum Illustrious 000009",
|
"action_name": "Flaccid After Cum Illustrious 000009",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "exhausted post-coital slump, relaxing",
|
"base": "post-coital, exhausted, lying, bed",
|
||||||
"head": "flushed face, head tilted back, disheveled hair, half-closed, ahegao or glazed expression",
|
"head": "flushed_face, eyes_rolled_back, messy_hair, half-closed_eyes, expressionless",
|
||||||
"upper_body": "limp, resting at sides, sweaty skin, heaving chest",
|
"upper_body": "sweaty, bare_chest, heaving_chest",
|
||||||
"lower_body": "flaccid penis exposed, soft, seminal fluid leaking, spread wide, relaxed",
|
"lower_body": "flaccid_penis, soft_penis, semen, legs_spread",
|
||||||
"hands": "relaxed, open",
|
"hands": "relaxed_hands",
|
||||||
"feet": "loose",
|
"feet": "relaxed_feet",
|
||||||
"additional": "messy bed sheets, heavy breathing, steamy atmosphere"
|
"additional": "messy_bed, steam"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/Flaccid_After_Cum_Illustrious-000009.safetensors",
|
"lora_name": "Illustrious/Poses/Flaccid_After_Cum_Illustrious-000009.safetensors",
|
||||||
@@ -17,15 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"after_sex",
|
"participants": "1boy",
|
||||||
"flaccid",
|
"nsfw": true
|
||||||
"cum_in_pussy",
|
}
|
||||||
"sweat",
|
|
||||||
"heavy_breathing",
|
|
||||||
"messy_hair",
|
|
||||||
"cum_on_body",
|
|
||||||
"cum_in_mouth",
|
|
||||||
"after_fellatio"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "fleshlight_position_doggystyle_dangling_legs_sex_from_behind_hanging_legs_ponyilsdsdxl",
|
"action_id": "fleshlight_position_doggystyle_dangling_legs_sex_from_behind_hanging_legs_ponyilsdsdxl",
|
||||||
"action_name": "Fleshlight Position Doggystyle Dangling Legs Sex From Behind Hanging Legs Ponyilsdsdxl",
|
"action_name": "Fleshlight Position Doggystyle Dangling Legs Sex From Behind Hanging Legs Ponyilsdsdxl",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "doggystyle, sex from behind, hanging legs, vaginal",
|
"base": "doggystyle, sex, vaginal, from_behind, hanging_legs",
|
||||||
"head": "facing down or looking back over shoulder, half-closed or expression of pleasure",
|
"head": "looking_back, expressionless, open_mouth, closed_eyes",
|
||||||
"upper_body": "supporting upper body weight, elbows often bent, prone, leaning forward, back deeply arched",
|
"upper_body": "arched_back, leaning_forward, elbows_on_bed",
|
||||||
"lower_body": "elevated and pushed back to the edge of the surface, dangling down off the edge, knees slightly bent, not supporting weight",
|
"lower_body": "raised_hips, legs_dangling, dangling",
|
||||||
"hands": "gripping the sheets or resting flat on the surface",
|
"hands": "hands_on_bed, gripping_bedclothes",
|
||||||
"feet": "hanging freely, toes connecting with nothing, off the ground",
|
"feet": "barefoot, curled_toes",
|
||||||
"additional": "on edge of bed, precarious balance, from behind perspective"
|
"additional": "on_bed, from_behind, sex_position"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"doggystyle",
|
"participants": "1girl 1boy",
|
||||||
"dangling legs",
|
"nsfw": true
|
||||||
"hanging legs",
|
}
|
||||||
"edge of bed",
|
|
||||||
"prone",
|
|
||||||
"arched back",
|
|
||||||
"from behind",
|
|
||||||
"raised hips",
|
|
||||||
"feet off ground",
|
|
||||||
"sex act"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "folded_xl_illustrious_v1_0",
|
"action_id": "folded_xl_illustrious_v1_0",
|
||||||
"action_name": "Folded Xl Illustrious V1 0",
|
"action_name": "Folded Xl Illustrious V1 0",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "Character standing in a confident or defensive posture with weight shifted to one side",
|
"base": "standing, crossed_arms, posture",
|
||||||
"head": "Chin slightly raised, facing the viewer directly, Sharp gaze, expressing confidence, skepticism, or annoyance",
|
"head": "looking_at_viewer, chin_up, confident_expression, skeptical_expression, annoyed",
|
||||||
"upper_body": "Both arms crossed firmly over the chest (folded arms), Upright posture, chest slightly expanded",
|
"upper_body": "crossed_arms",
|
||||||
"lower_body": "Hips slightly cocked to one side for attitude, Standing straight, legs apart or one knee relaxed",
|
"lower_body": "standing, hip_cocked",
|
||||||
"hands": "Hands tucked under the biceps or grasping the opposite upper arm",
|
"hands": "hands_on_upper_arms",
|
||||||
"feet": "Planted firmly on the ground",
|
"feet": "feet_together, standing",
|
||||||
"additional": "Often implies an attitude of arrogance, patience, or defiance"
|
"additional": "arrogance, defiance"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,13 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"crossed arms",
|
"participants": "solo",
|
||||||
"standing",
|
"nsfw": false
|
||||||
"confident",
|
}
|
||||||
"attitude",
|
|
||||||
"looking at viewer",
|
|
||||||
"skeptical",
|
|
||||||
"upper body"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "forced_cunnilingus",
|
"action_id": "forced_cunnilingus",
|
||||||
"action_name": "Forced Cunnilingus",
|
"action_name": "Forced Cunnilingus",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "female lying on back, legs spread wide, partner positioning head between legs performing oral sex",
|
"base": "cunnilingus, oral_sex, lying_on_back, legs_spread, partner_positioning, 1girl, 1boy",
|
||||||
"head": "head tilted back, blushing, expression of distress or shock, mouth slightly open, teary eyes, squeezed shut or looking away",
|
"head": "head_tilted_back, blushing, distressed, tears, mouth_open, looking_away, teary_eyes",
|
||||||
"upper_body": "arms pinned above head or held down against surface, arched back, chest heaving",
|
"upper_body": "arms_pinned, arched_back, chest_heaving",
|
||||||
"lower_body": "hips lifted slightly, exposed crotch, legs spread, m-legs, knees bent, thighs held apart by partner",
|
"lower_body": "hips_lifted, spread_legs, m_legs, knees_bent, exposed_crotch",
|
||||||
"hands": "clenched fists, wrists held",
|
"hands": "clenched_hands, held_wrists",
|
||||||
"feet": "toes curled in tension",
|
"feet": "curled_toes",
|
||||||
"additional": "cunnilingus, saliva trail, partner's head buried in crotch, struggle, non-consensual undertones"
|
"additional": "saliva, head_between_thighs, struggle, non-consensual"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,17 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"cunnilingus",
|
"participants": "1girl 1boy",
|
||||||
"oral sex",
|
"nsfw": true
|
||||||
"lying on back",
|
}
|
||||||
"legs spread",
|
|
||||||
"legs held",
|
|
||||||
"pinned down",
|
|
||||||
"distressed",
|
|
||||||
"blushing",
|
|
||||||
"crying",
|
|
||||||
"vaginal",
|
|
||||||
"sex act"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "foreskin_fellatio_ilxl",
|
"action_id": "foreskin_fellatio_ilxl",
|
||||||
"action_name": "Foreskin Fellatio Ilxl",
|
"action_name": "Foreskin Fellatio Ilxl",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "close-up view of an oral sex act with specific emphasis on penile anatomy",
|
"base": "fellatio, oral, oral_sex, close_up, body_focus",
|
||||||
"head": "positioned directly in front of the groin, mouth open and engaging with the penis, gaze directed upward at partner or focused on the act, potentially closed",
|
"head": "kneeling, head_between_legs, looking_up, mouth_open, tongue",
|
||||||
"upper_body": "reaching forward to stabilize or hold the partner, leaning deeply forward",
|
"upper_body": "leaning_forward",
|
||||||
"lower_body": "kneeling or crouching posture, knees bent, supporting the upper body",
|
"lower_body": "kneeling, knees_together",
|
||||||
"hands": "gripping the penile shaft, fingers specifically manipulating, pulling back, or holding the foreskin",
|
"hands": "hands_on_penis, gripping, foreskin_retraction",
|
||||||
"feet": "tucked behind or resting on the floor",
|
"feet": "barefoot",
|
||||||
"additional": "uncut penis, highly detailed foreskin, skin retraction, glans exposure, saliva strands"
|
"additional": "uncut, foreskin, glans, saliva, cum_on_penis"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,15 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"nsfw",
|
"participants": "1girl 1boy",
|
||||||
"fellatio",
|
"nsfw": true
|
||||||
"oral sex",
|
}
|
||||||
"blowjob",
|
|
||||||
"uncut",
|
|
||||||
"foreskin",
|
|
||||||
"penis",
|
|
||||||
"male anatomy",
|
|
||||||
"sexual act"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "foreskinplay_r1",
|
"action_id": "foreskinplay_r1",
|
||||||
"action_name": "Foreskinplay R1",
|
"action_name": "Foreskinplay R1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "close-up focus on genital area, male solo",
|
"base": "1boy, solo, close-up, genital_focus",
|
||||||
"head": "looking down or out of frame, focused on crotch",
|
"head": "looking_down",
|
||||||
"upper_body": "reaching down, lower abs visible, nude or shirt lifted",
|
"upper_body": "reaching_down, abs",
|
||||||
"lower_body": "erection, uncircumcised penis, glans exposure, thighs visible, spread slightly",
|
"lower_body": "erection, uncircumcised, glans, thighs, spread_legs",
|
||||||
"hands": "fingers manipulating foreskin, pulling back foreskin, pinching skin",
|
"hands": "hands_on_penis, pulling_foreskin",
|
||||||
"feet": "not visible",
|
"feet": "",
|
||||||
"additional": "detailed foreskin texture, phmosis, skin stretching"
|
"additional": "skin_stretching"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"nsfw",
|
"participants": "solo",
|
||||||
"penis",
|
"nsfw": true
|
||||||
"uncircumcised",
|
}
|
||||||
"foreskin",
|
|
||||||
"masturbation",
|
|
||||||
"male focus",
|
|
||||||
"penis close-up",
|
|
||||||
"glans"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "frenchkissv1il_000010",
|
"action_id": "frenchkissv1il_000010",
|
||||||
"action_name": "Frenchkissv1Il 000010",
|
"action_name": "Frenchkissv1Il 000010",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "two subjects in a close intimate embrace, bodies pressed against each other",
|
"base": "kissing, french_kiss, intimate, duo, 1girl, 1boy, close_up, upper_body",
|
||||||
"head": "heads tilted in opposite directions, profiles visible, mouths open and connected in a deep kiss, closed eyes, eyelashes visible, expression of passion",
|
"head": "deep_kiss, mouth_open, tongue, closed_eyes, tilted_head, blushing, flushed_face",
|
||||||
"upper_body": "braided around each other, one set reaching up to the neck, the other around the waist, chests pressed firmly together, zero distance",
|
"upper_body": "embrace, hugging, arms_around_waist, arms_around_neck, body_contact, breasts_pressed_against_body",
|
||||||
"lower_body": "hips aligned and touching, standing close, intertwined, or stepping between partner's legs",
|
"lower_body": "close_contact, pelvis_pressed_together",
|
||||||
"hands": "cupping the face, fingers tangling in hair, or gripping the back of the partner",
|
"hands": "hands_in_hair, hand_on_neck, hand_on_hip",
|
||||||
"feet": "grounded, or one person on tiptoes",
|
"feet": "tiptoes",
|
||||||
"additional": "exchange of saliva, tongues touching, liquid bridge, blush on cheeks, atmospheric lighting"
|
"additional": "saliva, tongue_interaction, passion, dramatic_lighting, cinematic_lighting"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"french kiss",
|
"participants": "1girl 1boy",
|
||||||
"kissing",
|
"nsfw": true
|
||||||
"couple",
|
}
|
||||||
"duo",
|
|
||||||
"intimate",
|
|
||||||
"romance",
|
|
||||||
"tongue",
|
|
||||||
"saliva",
|
|
||||||
"deep kiss",
|
|
||||||
"profile view"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "frog_embrace_position_il_nai_py",
|
"action_id": "frog_embrace_position_il_nai_py",
|
||||||
"action_name": "Frog Embrace Position Il Nai Py",
|
"action_name": "Frog Embrace Position Il Nai Py",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "intimate couple pose, lying on back, sexual intercourse, intense intimacy",
|
"base": "frog_pose, mating_press, lying_on_back, intimate_couple_pose, intercourse, sex, penetration",
|
||||||
"head": "tilted back on pillow, expression of pleasure, heavy blushing, half-closed eyes, eyes rolled back, ahegao",
|
"head": "head_tilted_back, looking_up, expressionless, pleasure, heavy_blushing, half-closed_eyes, eyes_rolled_back, ahegao, open_mouth",
|
||||||
"upper_body": "arms reaching up, clinging to partner's back or shoulders, back slightly arched, chest pressed or exposed",
|
"upper_body": "arms_around_partner, holding_partner, arched_back, upper_body_focus",
|
||||||
"lower_body": "pelvis lifted, fully engaged with partner, legs spread wide, knees bent deeply outwards, m-shape legs, legs wrapped around partner's waist or driven back",
|
"lower_body": "pelvis_lifted, legs_spread_wide, knees_up, m-shape_legs, legs_wrapped_around_partner",
|
||||||
"hands": "hands clutching partner's back or gripping bedsheets",
|
"hands": "hands_on_back, hands_grabbing, clutching_bedsheets",
|
||||||
"feet": "toes curled, feet usually visible in air or against partner's back",
|
"feet": "toes_curled, feet_up",
|
||||||
"additional": "sweat drops, heart symbols, motion lines, messy bed"
|
"additional": "sweat, heart_symbol, motion_lines, messy_bed"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,14 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"frog pose",
|
"participants": "1girl 1boy",
|
||||||
"mating press",
|
"nsfw": true
|
||||||
"legs wrapped around",
|
}
|
||||||
"legs spread",
|
|
||||||
"m-shape legs",
|
|
||||||
"sex",
|
|
||||||
"intricate interaction",
|
|
||||||
"lying on back"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "full_body_blowjob",
|
"action_id": "full_body_blowjob",
|
||||||
"action_name": "Full Body Blowjob",
|
"action_name": "Full Body Blowjob",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "fellatio, full_body, from_side",
|
"base": "fellatio, full_body, from_side, 1girl, 1boy",
|
||||||
"head": "cheek_bulge, half-closed_eyes",
|
"head": "cheek_bulge, half-closed_eyes, expressionless, open_mouth",
|
||||||
"upper_body": "reaching, leaning_forward, nude",
|
"upper_body": "leaning_forward, nude, hands_on_penis",
|
||||||
"lower_body": "kneeling, kneeling",
|
"lower_body": "kneeling, on_knees, spread_legs",
|
||||||
"hands": "penis_grab",
|
"hands": "head_grab, grasping",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot",
|
||||||
"additional": "saliva_trail, head_grab"
|
"additional": "saliva, saliva_trail, penis"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/full_body_blowjob.safetensors",
|
"lora_name": "Illustrious/Poses/full_body_blowjob.safetensors",
|
||||||
@@ -17,18 +17,8 @@
|
|||||||
"lora_weight_min": 0.9,
|
"lora_weight_min": 0.9,
|
||||||
"lora_weight_max": 0.9
|
"lora_weight_max": 0.9
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"fellatio",
|
"participants": "1girl 1boy",
|
||||||
"full_body",
|
"nsfw": true
|
||||||
"from_side",
|
}
|
||||||
"kneeling",
|
|
||||||
"penis",
|
|
||||||
"nude",
|
|
||||||
"1girl",
|
|
||||||
"1boy",
|
|
||||||
"oral",
|
|
||||||
"cheek_bulge",
|
|
||||||
"head_grab",
|
|
||||||
"penis_grab"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "futa_on_female_000051_1_",
|
"action_id": "futa_on_female_000051_1_",
|
||||||
"action_name": "Futa On Female 000051 1",
|
"action_name": "Futa On Female 000051 1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "2girls, futa_with_female, sex",
|
"base": "2girls, futanari_on_female, sex, missionary_position",
|
||||||
"head": "looking_at_viewer, blush, open_eyes",
|
"head": "looking_at_viewer, blush, open_eyes, sweat",
|
||||||
"upper_body": "braided_arms, grabbing_hips, breasts, nipples",
|
"upper_body": "futanari, breasts, nipples, arms_around_waist, grabbing_hips",
|
||||||
"lower_body": "futanari, penis, vaginal, pussy, spread_legs, straddling",
|
"lower_body": "penis, vaginal_intercourse, pussy, spread_legs, straddling, thigh_rub",
|
||||||
"hands": "on_hips",
|
"hands": "hands_on_hips",
|
||||||
"feet": "barefoot",
|
"feet": "barefoot, toes",
|
||||||
"additional": "duo, bodily_fluids"
|
"additional": "duo, bodily_fluids, semen, glistening_skin"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/Futa_on_Female-000051(1).safetensors",
|
"lora_name": "Illustrious/Poses/Futa_on_Female-000051(1).safetensors",
|
||||||
@@ -17,12 +17,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"futa_with_female",
|
"participants": "futanari (female-to-male), female",
|
||||||
"futanari",
|
"nsfw": true
|
||||||
"2girls",
|
}
|
||||||
"vaginal",
|
|
||||||
"sex",
|
|
||||||
"breasts"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "gameandsex",
|
"action_id": "gameandsex",
|
||||||
"action_name": "Gameandsex",
|
"action_name": "Gameandsex",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "playing games, on stomach, sex from behind",
|
"base": "playing_game, on_stomach, doggystyle, from_behind",
|
||||||
"head": "",
|
"head": "",
|
||||||
"upper_body": "",
|
"upper_body": "",
|
||||||
"lower_body": "",
|
"lower_body": "",
|
||||||
"hands": "",
|
"hands": "holding_gamepad",
|
||||||
"feet": "",
|
"feet": "",
|
||||||
"additional": "handheld game"
|
"additional": "gamepad, video_game"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,16 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"mr game and watch",
|
"participants": "1girl 1boy",
|
||||||
"minimalist",
|
"nsfw": true
|
||||||
"flat color",
|
}
|
||||||
"silhouette",
|
|
||||||
"lcd screen",
|
|
||||||
"retro",
|
|
||||||
"meme",
|
|
||||||
"simple background",
|
|
||||||
"parody",
|
|
||||||
"stick figure"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "gd_v3_0_000010_1462060",
|
"action_id": "gd_v3_0_000010_1462060",
|
||||||
"action_name": "Giant Dom",
|
"action_name": "Giant Dom",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "size difference, domination, sex from behind",
|
"base": "size_difference, domination, sex_from_behind, towering",
|
||||||
"head": "tilted slightly downward, chin tucked, focused forward, intense gaze",
|
"head": "looking_down, intense_gaze, neck_tilted",
|
||||||
"upper_body": "raised in front of chest in a boxing or martial arts guard, elbows tight to ribs, leaned forward slightly, core engaged",
|
"upper_body": "martial_arts_stance, raised_arms, tensed_muscles, core_strength",
|
||||||
"lower_body": "rotated slightly for balance, knees bent, legs spread in a wide stable base, one leg forward",
|
"lower_body": "wide_stance, knees_bent, legs_apart, dynamic_pose",
|
||||||
"hands": "clenched into fists guarding the face and torso",
|
"hands": "clenched_hands, fists, guarding",
|
||||||
"feet": "planted firmly on the ground, weight distributed",
|
"feet": "wide_foot_stance, stable_stance",
|
||||||
"additional": "ready for action, tension in muscles"
|
"additional": "male_focus, power_pose, dominant"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,11 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"fighting_stance",
|
"participants": "1girl 1boy",
|
||||||
"martial_arts",
|
"nsfw": true
|
||||||
"defensive_pose",
|
}
|
||||||
"clenched_hands",
|
|
||||||
"crouching"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "giantdomv2_1",
|
"action_id": "giantdomv2_1",
|
||||||
"action_name": "Giantdomv2 1",
|
"action_name": "Giantdomv2 1",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "low angle, from below, worm's-eye view, extreme perspective, towering, foreshortening, size difference, standing tall",
|
"base": "low_angle, worm's-eye_view, extreme_foreshortening, size_difference, towering, standing, omnipotent_view",
|
||||||
"head": "looking down, chin tucked, smug expression, scornful look, face shaded, narrowed eyes, cold gaze, looking at viewer, glowing eyes",
|
"head": "looking_down, smug, condescending, glare, narrowed_eyes, shadowed_face",
|
||||||
"upper_body": "arms crossed under chest, elbows out, upper body looming, chest prominent due to perspective",
|
"upper_body": "arms_crossed, looming, chest_focus",
|
||||||
"lower_body": "hips wide, towering over camera, immense legs, thick thighs, legs apart, wide stance",
|
"lower_body": "wide_stance, immense_legs, perspective_distortion",
|
||||||
"hands": "hidden, or gripping biceps",
|
"hands": "arms_crossed, gripping_biceps",
|
||||||
"feet": "feet planted firmly, boots, crushing perspective",
|
"feet": "boots, feet_planted, ground_level_view",
|
||||||
"additional": "shadow cast over viewer, tiny buildings in background, cinematic lighting, intimidating aura"
|
"additional": "shadow, cinematic_lighting, intimidating_aura, scale_comparison, city_background"
|
||||||
},
|
},
|
||||||
"participants": {
|
"participants": {
|
||||||
"solo_focus": "true",
|
"solo_focus": "true",
|
||||||
@@ -21,12 +21,8 @@
|
|||||||
"lora_weight_min": 1.0,
|
"lora_weight_min": 1.0,
|
||||||
"lora_weight_max": 1.0
|
"lora_weight_max": 1.0
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"giantess",
|
"participants": "1girl",
|
||||||
"low angle",
|
"nsfw": false
|
||||||
"femdom",
|
}
|
||||||
"size difference",
|
|
||||||
"foreshortening",
|
|
||||||
"dominance"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
@@ -2,13 +2,13 @@
|
|||||||
"action_id": "giantess_cunnilingus_illustrious",
|
"action_id": "giantess_cunnilingus_illustrious",
|
||||||
"action_name": "Giantess Cunnilingus Illustrious",
|
"action_name": "Giantess Cunnilingus Illustrious",
|
||||||
"action": {
|
"action": {
|
||||||
"base": "A tall female giantess standing, often leaning back against a wall, while a much shorter male performs cunnilingus.",
|
"base": "giantess, cunnilingus, standing_cunnilingus, size_difference, 1girl, 1boy, short_male, tall_female",
|
||||||
"head": "Looking down, often laughing or with a happy/aroused expression., Looking down at partner.",
|
"head": "looking_down, laughing, happy, aroused, looking_at_partner",
|
||||||
"upper_body": "Hands placed on the partner's head, pressing it into her crotch or grabbing their hair., Leaning back slightly, often against a vertical surface.",
|
"upper_body": "hands_on_another's_head, hair_grabbing, leaning_back, against_wall",
|
||||||
"lower_body": "Thrust forward or positioned for access., Standing, legs apart or one leg lifted (leg lock).",
|
"lower_body": "leg_lock, legs_apart, crotch_focus",
|
||||||
"hands": "Hands upon another's head, holding head.",
|
"hands": "hands_on_another's_head, holding_head",
|
||||||
"feet": "Standing on ground.",
|
"feet": "standing, feet_on_ground",
|
||||||
"additional": "Extreme size difference emphasized."
|
"additional": "extreme_size_difference, femdom"
|
||||||
},
|
},
|
||||||
"lora": {
|
"lora": {
|
||||||
"lora_name": "Illustrious/Poses/Giantess_Cunnilingus_Illustrious.safetensors",
|
"lora_name": "Illustrious/Poses/Giantess_Cunnilingus_Illustrious.safetensors",
|
||||||
@@ -17,20 +17,8 @@
|
|||||||
"lora_weight_min": 0.8,
|
"lora_weight_min": 0.8,
|
||||||
"lora_weight_max": 0.8
|
"lora_weight_max": 0.8
|
||||||
},
|
},
|
||||||
"tags": [
|
"tags": {
|
||||||
"giantess",
|
"participants": "1girl 1boy",
|
||||||
"cunnilingus",
|
"nsfw": true
|
||||||
"standing_cunnilingus",
|
}
|
||||||
"femdom",
|
|
||||||
"size_difference",
|
|
||||||
"tall_female",
|
|
||||||
"short_male",
|
|
||||||
"hands_on_another's_head",
|
|
||||||
"leaning_back",
|
|
||||||
"against_wall",
|
|
||||||
"laughing",
|
|
||||||
"looking_down",
|
|
||||||
"face_in_crotch",
|
|
||||||
"leg_lock"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user