From 0fd748d5369e2ed0cf19b39616added4e8ea434d Mon Sep 17 00:00:00 2001 From: arch_agent Date: Tue, 21 Jul 2026 22:25:28 +0200 Subject: [PATCH] =?UTF-8?q?v3.0=20=E2=80=94=20Correct=20mod=20structure=20?= =?UTF-8?q?with=20ArchiveXL=20localization?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Structure: r6/tweaks/crystal_blades/crystal_blades.yaml ← TweakXL weapon defs archive/pc/mod/crystal_blades.archive.xl ← ArchiveXL localization registration archive/pc/mod/crystal_blades/localization/ en-us/translation_strings.json ← English de-de/translation_strings.json ← German Changes: - .xl file in archive/pc/mod/ (where ArchiveXL scans) - Localization JSONs as real files (not inside .archive) - String keys (crystal_katana_name) in YAML, not LocKey# - primaryKey: 0 for ArchiveXL auto-assignment - Clean 1:1 structure — just copy into game dir --- README.md | 49 +++++++++++++++++++ archive/pc/mod/crystal_blades.archive.xl | 6 +++ .../de-de/translation_strings.json | 26 ++++++++++ .../en-us/translation_strings.json | 26 ++++++++++ r6/tweaks/crystal_blades/crystal_blades.yaml | 23 +++++++++ 5 files changed, 130 insertions(+) create mode 100644 README.md create mode 100644 archive/pc/mod/crystal_blades.archive.xl create mode 100644 archive/pc/mod/crystal_blades/localization/de-de/translation_strings.json create mode 100644 archive/pc/mod/crystal_blades/localization/en-us/translation_strings.json create mode 100644 r6/tweaks/crystal_blades/crystal_blades.yaml diff --git a/README.md b/README.md new file mode 100644 index 0000000..a68ff79 --- /dev/null +++ b/README.md @@ -0,0 +1,49 @@ +# Crystal Blades — Kristallklingen + +Two new Iconic weapons for Cyberpunk 2077, cloned from Satori and Nehan. + +## Requirements +- ArchiveXL +- TweakXL +- RED4ext + +## Installation + +Copy the entire folder structure into your Cyberpunk 2077 game directory (or MO2/Fluorine mods folder): + +``` +cp2077-crystal-blades/ +│ +├── r6/ +│ └── tweaks/ +│ └── crystal_blades/ +│ └── crystal_blades.yaml ← Weapon definitions (clone Satori + Nehan) +│ +└── archive/ + └── pc/ + └── mod/ + ├── crystal_blades.archive.xl ← ArchiveXL localization registration + └── crystal_blades/ + └── localization/ + ├── en-us/ + │ └── translation_strings.json ← English names/descriptions + └── de-de/ + └── translation_strings.json ← German names/descriptions +``` + +## Spawn Commands (CET Console) + +``` +Game.AddToInventory("Items.Preset_Crystal_Katana", 1) +Game.AddToInventory("Items.Preset_Crystal_Knife", 1) +``` + +## Weapons + +### Kristallschneider (Crystal Cleaver) — Katana +- **Base:** Satori (Items.Preset_Katana_Saburo_Legendary) +- **Retains:** Bleeding on hit, hemorrhaging, all hidden GameplayLogicPackages + +### Phantom Splitter — Wurfdolch +- **Base:** Nehan (Items.Preset_Tanto_Saburo_Retrofix) +- **Retains:** Thrown hits apply Bleeding, hemorrhaging on already-bleeding targets, health restoration \ No newline at end of file diff --git a/archive/pc/mod/crystal_blades.archive.xl b/archive/pc/mod/crystal_blades.archive.xl new file mode 100644 index 0000000..479ffa8 --- /dev/null +++ b/archive/pc/mod/crystal_blades.archive.xl @@ -0,0 +1,6 @@ +localization: + onscreens: + en-us: + - crystal_blades\localization\en-us\translation_strings.json + de-de: + - crystal_blades\localization\de-de\translation_strings.json \ No newline at end of file diff --git a/archive/pc/mod/crystal_blades/localization/de-de/translation_strings.json b/archive/pc/mod/crystal_blades/localization/de-de/translation_strings.json new file mode 100644 index 0000000..cf4df61 --- /dev/null +++ b/archive/pc/mod/crystal_blades/localization/de-de/translation_strings.json @@ -0,0 +1,26 @@ +[ + { + "femaleVariant": "Kristallschneider", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_katana_name" + }, + { + "femaleVariant": "Ein Katana mit monomolekularer Kristallklinge. Jeder Treffer verursacht unkontrollierbare Blutung — Rüstung ist bedeutungslos.", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_katana_desc" + }, + { + "femaleVariant": "Phantom Splitter", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_knife_name" + }, + { + "femaleVariant": "Ein Wurfdolch mit monomolekularer Kristallklinge. Geworfene Treffer garantieren Blutung. Wenn das Ziel bereits blutet, verursacht der Dolch innere Blutungen und heilt den Träger.", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_knife_desc" + } +] \ No newline at end of file diff --git a/archive/pc/mod/crystal_blades/localization/en-us/translation_strings.json b/archive/pc/mod/crystal_blades/localization/en-us/translation_strings.json new file mode 100644 index 0000000..92f6907 --- /dev/null +++ b/archive/pc/mod/crystal_blades/localization/en-us/translation_strings.json @@ -0,0 +1,26 @@ +[ + { + "femaleVariant": "Crystal Cleaver", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_katana_name" + }, + { + "femaleVariant": "A katana with a monomolecular crystal blade. Every strike causes uncontrollable bleeding — armor is meaningless.", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_katana_desc" + }, + { + "femaleVariant": "Phantom Splitter", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_knife_name" + }, + { + "femaleVariant": "A throwing knife with a monomolecular crystal edge. Thrown hits guarantee bleeding. If the target is already bleeding, the knife causes hemorrhaging and heals the wielder.", + "maleVariant": "", + "primaryKey": 0, + "secondaryKey": "crystal_knife_desc" + } +] \ No newline at end of file diff --git a/r6/tweaks/crystal_blades/crystal_blades.yaml b/r6/tweaks/crystal_blades/crystal_blades.yaml new file mode 100644 index 0000000..70da3f5 --- /dev/null +++ b/r6/tweaks/crystal_blades/crystal_blades.yaml @@ -0,0 +1,23 @@ +# Crystal Blades — Kristallklingen +# Klon von Satori (Katana) und Nehan (Wurfdolch) +# Alle GameplayLogicPackages, Scripte und Effekte bleiben erhalten + +# ============================================================ +# WAFFE 1: Kristallschneider — Klon von Satori +# ============================================================ + +Items.Preset_Crystal_Katana: + $base: Items.Preset_Katana_Saburo_Legendary + displayName: crystal_katana_name + localizedDescription: crystal_katana_desc + quality: Quality.Legendary + +# ============================================================ +# WAFFE 2: Phantom Splitter — Klon von Nehan +# ============================================================ + +Items.Preset_Crystal_Knife: + $base: Items.Preset_Tanto_Saburo_Retrofix + displayName: crystal_knife_name + localizedDescription: crystal_knife_desc + quality: Quality.Legendary \ No newline at end of file