Markdown Converter
Agent skill for markdown-converter
Torappu is an asset unpacker for an anime game (Arknights) focused on resource extraction and analysis. It provides a CLI interface for extracting game assets, processing them, and making them available through structured output directories.
Sign in to like and favorite skills
Torappu is an asset unpacker for an anime game (Arknights) focused on resource extraction and analysis. It provides a CLI interface for extracting game assets, processing them, and making them available through structured output directories.
The project follows a modular architecture with these key components:
torappu/__main__.py): Command-line tool for asset extractiontorappu/core/task/): Pluggable task architecture for processing different asset typestorappu/core/client.py): Handles remote asset fetching and local cachingtorappu/core/task/ - Individual asset processing tasks (20+ specialized tasks)OpenArknightsFBS/ - FlatBuffer schema definitions for game datastorage/ - Local cache for downloaded assets and processed dataassets/ - Static assets and FlatBuffer schema definitionsscripts/ - Utility scripts for data processing# Install project dependencies uv sync
# Basic extraction python -m torappu [CLIENT_VERSION] [RES_VERSION] # With version comparison python -m torappu [CLIENT_VERSION] [RES_VERSION] -c [PREV_CLIENT_VERSION] -r [PREV_RES_VERSION] # Include/exclude specific tasks python -m torappu [CLIENT_VERSION] [RES_VERSION] -i task1,task2 python -m torappu [CLIENT_VERSION] [RES_VERSION] -e task1,task2
# Run directly with Docker docker run torappu [CLIENT_VERSION] [RES_VERSION] # With additional parameters docker run torappu [CLIENT_VERSION] [RES_VERSION] -c [PREV_CLIENT_VERSION] -r [PREV_RES_VERSION]
# Linting uv run ruff check . uv run ruff format . # Type checking (if pyright is available) pyright
Environment variables (via
.env file or system env):
TOKEN: Authentication token for remote APIsENDPOINT: Backend API endpointSENTRY_DSN: Error reporting DSNENVIRONMENT: "production" or "debug"The task system uses a priority-based registry pattern:
torappu/core/task/task.py): Abstract base for all processing taskstorappu.core.task.registry maps priority levels to task classesfrom torappu.core.task import Task class MyNewTask(Task): priority = 5 # Execution priority def check(self, diff_list): # Return True if task should run based on diff return any(d.path.startswith("my/prefix") for d in diff_list) async def start(self): # Task implementation pass
storage/assetbundle/[hash]