The Witcher: Enhanced Edition

The Witcher: Enhanced Edition

81 ratings
Full controller support
By ckbucu and 1 collaborators
This guide makes the game fully playable with a gamepad.
 
Rate  
Favorite
Favorited
Unfavorite
Introduction
I did not like using external utilities but it is necessary for a gamepad controlled enviroment. Now I am in love with antimicro and my 360 gamepad in my living room pc.
This guide is for a Witcher profile. On a 360 gamepad:
left stick controls movement (you can also walk if you have Flash mod),
right stick behaves as mouse,
dpad left draws steel sword (pressing again switches styles),
dpad right draws silver sword (pressing again switches styles),
dpad down enters non-combat mode,
LT flips OTS camera,
RT show object tooltips,
A+Lstick rolls and leaps,
B casts sign,
X attacks (mouse left click),
Y pauses combat,
BACK quicksaves,
START shows system options (escape),
LB is a modifier for switching styles (A fast, B group, X strong) and Signs (Y for next sign), RB for looting (control+lclick).
Installation
You need a text editor, like notepad, and antimicro, which is available at github[https://github.com/Ryochan7/antimicro/releases]. I prefer the zipped version that has no installer; just unzip and run the program. Save the empty profile. Open notepad, paste the script below and save as "witcher1.amgp". Load this profile on antimicro. Your game now has full controller support!
Antimicro profile (part 1)
<?xml version="1.0" encoding="UTF-8"?>
<gamecontroller configversion="16" appversion="2.12">
<!--The SDL name for a joystick is included for informational purposes only.-->
<sdlname>X360 Controller</sdlname>
<!--The GUID for a joystick is included for informational purposes only.-->
<guid>00000000000000000000000000000000</guid>
<names/>
<sets>
<set index="1">
<stick index="1">
<deadZone>10947</deadZone>
<diagonalRange>62</diagonalRange>
<mode>eight-way</mode>
<stickbutton index="2">
<slots>
<slot>
<code>0x57</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>0x44</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="8">
<slots>
<slot>
<code>0x57</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>0x41</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="5">
<slots>
<slot>
<code>0x53</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="4">
<slots>
<slot>
<code>0x53</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>0x44</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="7">
<slots>
<slot>
<code>0x41</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="6">
<slots>
<slot>
<code>0x53</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>0x41</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="1">
<slots>
<slot>
<code>0x11000021</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>81</code>
<mode>distance</mode>
</slot>
<slot>
<code>0x57</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="3">
<slots>
<slot>
<code>0x44</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
</stick>
<stick index="2">
<deadZone>12482</deadZone>
<stickbutton index="5">
<slots>
<slot>
<code>2</code>
<mode>mousemovement</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="7">
<slots>
<slot>
<code>3</code>
<mode>mousemovement</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="1">
<slots>
<slot>
<code>1</code>
<mode>mousemovement</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="3">
<slots>
<slot>
<code>4</code>
<mode>mousemovement</mode>
</slot>
</slots>
</stickbutton>
</stick>
<dpad index="1">
<dpadbutton index="2">
<slots>
<slot>
<code>0x45</code>
<mode>keyboard</mode>
</slot>
</slots>
</dpadbutton>
<dpadbutton index="8">
<slots>
<slot>
<code>0x51</code>
<mode>keyboard</mode>
</slot>
</slots>
</dpadbutton>
<dpadbutton index="4">
<slots>
<slot>
<code>0x1000001</code>
<mode>keyboard</mode>
</slot>
</slots>
</dpadbutton>
</dpad>
Antimicro profile (part 2)
<trigger index="1">
<triggerbutton index="2">
<slots>
<slot>
<code>0x46</code>
<mode>keyboard</mode>
</slot>
</slots>
</triggerbutton>
</trigger>
<trigger index="2">
<triggerbutton index="2">
<slots>
<slot>
<code>0x1000023</code>
<mode>keyboard</mode>
</slot>
</slots>
</triggerbutton>
</trigger>
<button index="1">
<setselect>2</setselect>
<setselectcondition>while-held</setselectcondition>
</button>
<button index="2">
<slots>
<slot>
<code>3</code>
<mode>mousebutton</mode>
</slot>
</slots>
</button>
<button index="3">
<slots>
<slot>
<code>1</code>
<mode>mousebutton</mode>
</slot>
</slots>
</button>
<button index="4">
<slots>
<slot>
<code>0x20</code>
<mode>keyboard</mode>
</slot>
</slots>
</button>
<button index="5">
<slots>
<slot>
<code>0x1000034</code>
<mode>keyboard</mode>
</slot>
</slots>
</button>
<button index="7">
<slots>
<slot>
<code>0x1000000</code>
<mode>keyboard</mode>
</slot>
</slots>
</button>
<button index="10">
<setselect>3</setselect>
<setselectcondition>while-held</setselectcondition>
</button>
<button index="11">
<slots>
<slot>
<code>0x1000021</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>1</code>
<mode>mousebutton</mode>
</slot>
</slots>
</button>
</set>
<set index="2">
<stick index="1">
<mode>four-way</mode>
<stickbutton index="3">
<slots>
<slot>
<code>0x44</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>250</code>
<mode>pause</mode>
</slot>
<slot>
<code>0x44</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="1">
<slots>
<slot>
<code>0x57</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>250</code>
<mode>pause</mode>
</slot>
<slot>
<code>0x57</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="7">
<slots>
<slot>
<code>0x41</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>250</code>
<mode>pause</mode>
</slot>
<slot>
<code>0x41</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
<stickbutton index="5">
<slots>
<slot>
<code>0x53</code>
<mode>keyboard</mode>
</slot>
<slot>
<code>250</code>
<mode>pause</mode>
</slot>
<slot>
<code>0x53</code>
<mode>keyboard</mode>
</slot>
</slots>
</stickbutton>
</stick>
<button index="1">
<setselect>1</setselect>
<setselectcondition>while-held</setselectcondition>
</button>
</set>
<set index="3">
<button index="1">
<slots>
<slot>
<code>0x58</code>
<mode>keyboard</mode>
</slot>
</slots>
</button>
<button index="2">
<slots>
<slot>
<code>0x43</code>
<mode>keyboard</mode>
</slot>
</slots>
</button>
<button index="3">
<slots>
<slot>
<code>0x5a</code>
<mode>keyboard</mode>
</slot>
</slots>
</button>
<button index="4">
<slots>
<slot>
<code>0x2d</code>
<mode>keyboard</mode>
</slot>
</slots>
</button>
<button index="10">
<setselect>1</setselect>
<setselectcondition>while-held</setselectcondition>
</button>
</set>
</sets>
</gamecontroller>
Switching profiles automatically
You do not want your gamepad to behave like that all the time, so you need to tell antimicro to switch profiles automatically. Go to Options, Settings, Auto Profile. Click "Add" and select an empty profile, like the default. Click "Set as Default for Controller". Now your gamepad will behave normally outside of Witcher.
Click on "Add". In "Profile" specify the one you created before, which in my example is Witcher1.amgp.
"Title" does not matter, "Witcher" is fine. In "Applcation" you must enter the game's exe path, which is something like "C:\Program Files(x86)\Steam\steamapps\common\The Witcher Enhanced Edition Director's Cut/System/witcher.exe".
Now your profile loads automatically when you play.
Conclusion
Steam Big Picture has essentially turned my PC into a very powerfull console while gaming. Until SteamOS overcomes Windows, an external utility is needed to control the operating system with a gamepad. I prefer antimicro because it is open source and continually developed. I have a a generic profile for navigating Windows and one for every game that does not have full controller support.
I chose antimicro but I am always open to suggestions. The guide is not totally noob friendly (no pictures!) because I think it is clear enough but I can provide clarifications if needed.
< >
17 Comments
bababooey194 Jun 26, 2017 @ 10:53am 
when I unzip this antimicro program where do I install it, in what directory? I'm totaly new to this, an in depth description would be appreciated, thanks.
bababooey194 Jun 26, 2017 @ 10:44am 
Where do I save the witcher1.amgp file. In what directory exactly? Then what do I do?
Synaxs Mar 29, 2017 @ 8:37am 
Antimicro crashes everytime I press A or LB
Merugo-Surry Sep 2, 2016 @ 2:15pm 
Man that's incredible ! I want to create a profile to control my computer just with my controler now :D
toffeemuffincupcake Jul 7, 2016 @ 11:42am 
You might be interested to know that Antimicro has moved and can now be found at https://github.com/AntiMicro/antimicro =)
Wardlink Jan 8, 2016 @ 2:02am 
My AntiMicro seems to crash every time I press a few buttons.
Do you know how to fix this?
'Kestrel Jun 20, 2015 @ 12:26pm 
Hi, there 3 missings importants buttons.
- Show MAP Menu
- Show Inventory menu
- My idea for add auto-sprint W pressed on/off while running for "L3" on analog stick pressed.
Arionex Jun 16, 2015 @ 6:49am 
Okay, I will give this a try, if I encounter any problem I will let you know, thanks for taking time to help others out.
Hyperion Roche May 25, 2015 @ 2:26pm 
Thank you for this, really appreciated and very easy instructions to follow too, looked overwhelming when i saw how long the post was though but good job
mucusSTfriend  [author] May 24, 2015 @ 2:03pm 
@Pantsless Aaron:
Set the empty profile to Steam (or any program) and then select is a default.
@alper5104:
This profile is for a 360 controller. You can use the guide for any gamepad though.
@Ryukojin:
Yes, paste in one file. We split it because of Steam's limitations on guides.

Let me know if you have any issues.