About this mod
This mod allows you to smoothly play as any Witcher, Witcheress or Sorceress. Fully customizable appearance. New magic combat system and new questline for Sorceress type, fully voiced. All Geralt animations adapted for female player. Female Geralt voicelines for all languages. Easy integration. Made on the edge of modding possibilities.
- Requirements
- Permissions and credits
-
Translations
- Portuguese
- Changelogs
This mod allows you to smoothly play as any Witcher, Witcheress or Sorceress. Fully customizable appearance. New magic combat system and new questline for Sorceress type, fully voiced. All Geralt animations adapted for female player. Female Geralt voicelines for all languages. Easy integration in redkit projects. Made on the edge of modding possibilities.
The trailer sequentally reveals main mod features:
The mod grants you a lot of new gameplay possibilities:
- play as Witcher, Witcheress or Sorceress with any custom appearance
- you can use any existing npc appearance, armor set appearance or construct your unic one (there is also real-equipment mode - allows you to be synced with Geralt equippment)
- retargeted female animations for gameplay and cutscenes, no more stretched skeleton
- new magic combat system for Sorceress, with spells improved over usage
- new story quest for Sorceress, which allows you to learn new spells
- [separate mod] female Geralt voicelines for better immersion (enabled automatically for female player types, doesn't replace vanilla Geralt speech)
List of available languages (text for the mod, speech for the Sorceress quest):
- English: text + speech
- Russian: text + speech
- Turkish: text
- Spanish: text
- Polish: text
- French: text
- Chinese: text
- Czech: text
- Thai: text (int The Witcher 3/dlc/dlcCustomPlayerCharacters/content/: rename thai.w3strings to tr.w3strings if you use this mod)
Installation: --> video guide <--
0. Make sure you have latest NextGen version of the game and Hearts of Stones, Blood and Wine installed.
1. Download main Custom Player Characters 7z file.
2. Unpack archive contents into your game directory.
3. Verify installation: there should be dlcCustomPlayerCharacters folder in <game dir>/dlc/ and modCustomPlayerCharacters in <game dir>/mods/.
4. Install Community Patch - Shared Imports. [required for scripts to work]
5. Add these lines to the end of file input.settings, located in "Documents/The Witcher 3" (use notepad++ or any text editor):
- the same lines are inside "add_to_input.settings" file in mod archive -
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[BoatPassenger]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Combat]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Diving]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[EMPTY_CONTEXT]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Exploration]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_P=(Action=NREnterScene)
IK_Pad_B_CIRCLE=(Action=NREnterScene)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
IK_0=(Action=NRSelect0)
IK_Pad_LeftTrigger=(Action=NRSelect0)
IK_Alt=(Action=NRDodge)
IK_Pad_B_CIRCLE=(Action=NRDodge)
[Exploration_Replacer_Ciri]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_P=(Action=NREnterScene)
IK_0=(Action=NRSelect0)
IK_Pad_LeftTrigger=(Action=NRSelect0)
[Horse]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[JumpClimb]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Swimming]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Scene]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
6. (Recommended): Install Female voices for Geralt [for better immersion with female player]
7. (Recommended): Install Geralt's Armors for Female Character v2 [for more apperance variants with female player]
8. (Recommended): Install Immersive Wildlife project ("Dhu cats" file). [for high-quality cat appearance in quest and polymorphism spell]
9. (Optional): Install matching compability patch(es) from optional files if you have one of these mods:
- Brother in Arms (main part and/or optional Add-on)
Give the compability patch higher mod priority than to CPC and conflicting mods.
11. The mod will launch automatically on gamesave start, if you have killed ghouls in White Orchard intro quest "Lilac and Gooseberries".
It will auto-add special "Chameleon" potion in your inventory, you should click on it and press E (Consume), then leave inventory to launch player setup scene OR (since v3.0.0) press [E] + [P] hotkey. Enjoy!
Please endorse the mod if you like it :)
Updating: --> do NOT use mod manager! <--
1. Download main Custom Player Characters 7z file.
2. Remove old folders in Mods directory (if they exist): mod_sharedutils_oneliners, mod_sharedutils_storage, modCustomPlayerCharacters.
3. Unpack archive contents into your game directory. Agree to overwrite all files.
4. Verify installation: there should be dlcCustomPlayerCharacters folder in <game dir>/dlc/ and modCustomPlayerCharacters in <game dir>/mods/.
5. (Recommended): Update to v2 of Geralt's Armors for Female Character [for more apperance variants with female player]
6. (If you haven't added before) Add these lines to the end of file input.settings, located in "Documents/The Witcher 3" (use notepad++ or any text editor):
- the same lines are inside "add_to_input.settings" file in mod archive -
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[BoatPassenger]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Combat]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Diving]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[EMPTY_CONTEXT]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Exploration]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_P=(Action=NREnterScene)
IK_Pad_B_CIRCLE=(Action=NREnterScene)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
IK_0=(Action=NRSelect0)
IK_Pad_LeftTrigger=(Action=NRSelect0)
IK_Alt=(Action=NRDodge)
IK_Pad_B_CIRCLE=(Action=NRDodge)
[Exploration_Replacer_Ciri]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_P=(Action=NREnterScene)
IK_0=(Action=NRSelect0)
IK_Pad_LeftTrigger=(Action=NRSelect0)
[Horse]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[JumpClimb]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Swimming]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
[Scene]
IK_E=(Action=NRUse)
IK_Pad_A_CROSS=(Action=NRUse)
IK_I=(Action=NREquipmentSwitch)
IK_1=(Action=NRSelect1)
IK_Pad_DigitLeft=(Action=NRSelect1)
IK_2=(Action=NRSelect2)
IK_Pad_DigitRight=(Action=NRSelect2)
IK_3=(Action=NRSelect3)
IK_4=(Action=NRSelect4)
IK_5=(Action=NRSelect5)
IK_6=(Action=NRSelect6)
IK_7=(Action=NRSelect7)
IK_8=(Action=NRSelect8)
IK_9=(Action=NRSelect9)
6. (Optional) Reinstall optional mod files (patches) with latest version(s).
7. Launch Script Merger to resolve script changes.
8. Enjoy. All old saves are compatible with new version.
Uninstallation:
WARNING - the mod stores data inside gamesaves, so you won't be able to load the saves made after the mod was installed.
If you only want to continue playing as Geralt, there is no need in uninstalling anything - just switch back to Geralt (vanilla) in player setup scene.
1. Remove dlcCustomPlayerCharacters folder in <game dir>/dlc/.
2. Remove modCustomPlayerCharacters in <game dir>/mods/.
Non-supported mods (do not work correctly with CPC mod):
- W3EE Redux
- Better Call Ciri
- Animation mods like SCAAR
Please do not ask about patches for these mods - I have no time and power to work on them
Questions and Answers:
Q: I want to translate the mod into my language, how can I do this?
A: Download english mod strings from Miscellaneous files, then use any good text editor (notepad++ for example) to translate content inside it and send me the file. I recommend first to play the Sorceress questline to avoid any spoilers.
For speech translations of the quest please contact me: discord.
Q: Are Wild Hunt / Vampire / Dwarf models supported?
A: No, only male and female rigs are supported. And Uma :)
Q: How can I learn all the spells as Sorceress?
A: Magic skills can be learned depending on your magic level, and magic level depends on player level -> to quickly learn them all and "complete" magic training, I'd advice to start the Sorceress quest on late-game save (where player level > 35 for usual game, > 70 for ng+).
Also there is cheat-menu in sorceress setup scene (appears after you become mage's apprentice) to improve your magic level without required player level.
Q: Is it for Next-Gen (v4.x)? Will there be Old-Gen (v1.32) support?
A: It is for Next-Gen only, I do not plan to support old game versions.
Q: There is a mod which conflicts with yours. How to solve this?
A: For some mods there may be compability patches available - check the list in installation part.
Some other are non-supported (check the list above). In other cases contact me, please.
Q: Is it made with redkit?
A: Not really, I spent 2.5+ years on making this mod, there were a bunch of tools which I used, including some ehich I had to write myself (wolvenkit Json converter, many python scripts for processing entities, meshes, generating setup scenes etc). The mod is built in radish system. Redkit was helpful in fixing some animation bugs on last development stages.
Q: Are you planning any other projects?
A: Yes, I would like to continue Sorceress questline with some interesting story.
Supported custom dlc (quest) mods:
- A Night to Remember
- Ciri Sole memento
- Little Sisters
- A Small Tribute to Essi Daven
- Escaping the cage
- Strange things
- Boat Races
- Multi Companion Mod
- Party at Chameleon
- Content Expansion
- The Stable
- Geralt and Friends
Supported custom dlc (appearance) mods:
- Bsbah's Fringilla Upgrade
- Triss (G)Lorified
- TW2 Triss
- Armor of the Underdark
- Vagabond Armor DLC
- Ciri - Alternative look - DLC
- Book Inspired set Cos Wiecej - Standalone DLC
- Official Cyberpunk Prototype Attire
- Different shirts for Geralt (DLC Version)
- GHC Armors
- More Robes
- Novigradian Armor Set
- Rogue Armor Set
- Spooky Yennefer
- Spooky Triss
- Triss Appearance Overhaul (not available atm)
Known issues:
- Female animations - some wrong item (sword, crossbow) placements in anims: all this can't be fixed without huge amount of time which I don't have...
- Male-skeleton stretched animation for female player during "Leaving horse cutscene" (when you enter some scene on a horse this cutscene is played) - as there is only one engine-hardcoded cutscene, you can fix it by installing "Female Leaving horse cutscene animation" optional file (but then there will be female cutscene anim for male player too, so choose the lesser evil)
- There is no "quickslot 4" button on steamdeck: Solution - bind extra steamdeck button (one of those 4 on the back or touchpad) in steamdeck controls setting (not the game) to default slot 4 keyboard button.
- Too low head position of female - can be fixed by setting player scale to 104% (in apperance setup scene), but causes anim placement problems in cutscenes.. I don't recommend doing that as low head seems to be the lesser evil.
- NOT A BUG - Sorceress quest objective "Become an Arch-mistress" never ends
For mod creators:
- DLC: Integrating new appearances (clothes, items etc) into CPC mod
- REDKIT: Changing player in your quest >> video guide <<
- Strings-idspace reserved by the mod is 2115940000-2115940999, and 2100000000-2100021000 for female Geralt voicelines. Do not use it please, to avoid overlaps
- What vanilla files do this mod change and why?: here is the full list
Basically, the mod changes 2 types of vanilla files:- quest (w2quest/w2phase) - if there is CQuestChangeWorldBlock, I insert special pre-condition for it (NR_QuestCond_PlayerManagerReady) to make sure that custom player type and appearance are loaded, otherwise there were cases when right after changing the world some scene started, and changing the player at this moment could break the scene
- scene (w2scene) - if there is any cutscene section or Geralt's dialog line, the scene was patched to branch after every CStorySceneInput on special fact (indicating if the player uses female speech) - on false it goes "vanilla" way, on true it goes "patched" way. Where patched means 100% copy of vanilla sections graph with all their elements and events, but with replaced dialogline ids and cutscene paths
Credits:
- CD Project Red for the amazing game
- rmemr for radish modding tools
- Traderain, rfuzzo and others for Wolvenkit
- Ding for his Maya animation plugin
- geoffharvey, GioeleFazzeri, Hot_Dope, Magnetic_Trailer, Musictown, SergeQuadrado, JCI21 for their amazing tracks (used in new magic location)
- DhuBlaidd for allowing me to use her fox models in CPC
- STaRkIlLeR for adapting dress models to female skeleton
- Merigoldmaribor for Turskish text translation
- Elisandras for Spanish text translation
- Antkoland for Polish text translation
- Kniouky for French text translation
- GeraltOfZhongduCounty for Chinese text translation
- Lamecode0 for Czech text translation
- maakinaocch for Thai text translation
- Defaltsiuncula for mixing spell lines for the quest
- Lodge-addicted team for bugtesting and their magic addiction :D
Support me:
https://boosty.to/nikich340/donate
CPC mod discord server:
https://discord.gg/AseRP2q9kt
Check out my other projects: