Devil May Cry 3: Special Edition

Devil May Cry 3: Special Edition

ProjectXsent Jan 14, 2023 @ 5:46am
I made my non-legit Wireless PS4 Controller and USB Generic Controller worked in this game. (Probably might/not work on your controller as well)
I just wanna share this to everyone. I have a PS4 controller that I bought online and managed to play it wirelessly without the use of 3rd party software like DS4. Here's how.

NOTE : The fixes in this guide may or may not work for you (since my PS4 controller is not genuine), people have had success with these fixes while others have been hit and miss.

1. Connect your controller.
2. Run "joy.cpl" then click OK.
3. At the "Game Controllers" window, you should see the name of your controller then click "Properties".
4. Go to your DMC3 directory and edit your "dmc3se.ini" using Notepad/++/VS Code.
5. You'll see this kind of format inside:

[enter the name of your controller]
Start=
Select=
Circle=
Triangle=
Square=
Cross=
L1=
R1=
L2=
R2=
L3=
R3=
L<->R=

6. At the "Test" tab, try pressing buttons then type in the number of the button you wish to map to a function, minus 1 (probably because of indexing which starts to 0). For example, if you wish to map TRIANGLE, the Properties window says it is button 4 when pressed, so enter 3 for the line to read TRIANGLE = 3. If the button you wish to assign is a trigger, enter the value as 255 instead. (In my case, there is X/Y Rotation readings on the "Properties" but also trigger button numbers at the same time)

The line that reads L<->R = should be set to 1 if the right stick controls Dante. If the left stick controls Dante by default, you can delete the line or set to 0 (kinda common to Xbox Controller users).

7. So in the end, here's my setup. The semicolon stands for a line comment.

[Wireless Controller] ;PS4 Controller
Start=9
Select=8
Circle=2
Triangle=3
Square=0
Cross=1
L1=4
R1=5
L2=6
R2=7
L3=10
R3=11
L<->R=0

8. Make sure to connect your controller first before starting the game.

Source: (remove asterisks)
htt*ps://www*.pcgamingwiki.*com/wiki/Devil_May_Cry_3:_Special_Edition

EDIT1: So I have a Generic USB Joystick, keys are working fine after setup except for the Analog Sticks. Left Stick's Y-Axis is the Left and Right while Right Stick's X-Axis is the Up and Down. Setting the line L<->R=1 make the sticks inverted but it makes the Right Stick move the character correctly while Left Stick moves the camera.

EDIT2: So I managed to use a 3rd party software called XOutput to make my Generic USB Joystick work which made it "convert" and map the buttons into an XBox 360 Controller.
Tutorial: https://www.youtube.com/watch?v=KTMq3vARsko

-After mapping the buttons-
Using XOutput is not enough because there will be 2 controllers in the "Game Controller" window (Generic USB Joystick and Controller (Controller(XBOX 360 For Windows)) in my case). To solve it, you have to install ViGEm Bus Drivers and HidHide (might wanna restart the system after installing).

Run HidHide Configuration Client > Go to Devices tab > Check the joystick that you want to hide (DragonRise Inc. Generic USB Joystick in my case) > Unplug then plug the controller again > Go back to Applications tab > Click the + button then locate for the XOutput exe file (Whitelisting).

The joystick will be hidden (probably the rest of the system) except for the emulated Xbox controller in the Game Controller window but will be shown in the XOutput application.

Going back to the "dmc3se.ini" file, my configurations were:

[Controller (Controller(XBOX 360 For Windows))]
Start=7
Select=6
Circle=1
Triangle=3
Square=2
Cross=0
L1=4
R1=5
L2=255
R2=255
# The 255 value is for Style Switcher 3.1.3 (from Starter Pack).
# If you're using 3.1.6, used XInput Plus and followed the documentation, make it L2=10 and R2=11.
L3=8
R3=9
L<->R=1

The L2=255 and R3=255 for 3.1.3 works because the StyleSwitcher.ini has XinputConverter inside which can be found under [INPUT] section which says
XInputConverter=1
XInputConverter.Delay=100

Tbh, I had trouble working with L2 and R2 since it doesn't work in game at first. The Gamepad Tester (https://gamepad-tester.com) read the Triggers fine though but when I restarted my system, suddenly it magically worked in the game. I don't have explanation on how did L2 and R2 worked yet.

Run XOutput first, start the emulated controller, open the game and test the buttons but keep XOutput open/minimized.

EDIT3: I tried using X360CE v4.17.15.0 for my Generic USB Controller without HidHide and it works on other games but not for DMC3SE even though I made a preset in the ini file. Then I tried using HidHide this time and X360CE can't seem to detect my controller even though I whitelisted the app. BUUUT when I used the built in HidGuardian then checked Auto-Hide Direct Input following the ini setup above, it's fine now.
Last edited by ProjectXsent; Jan 15, 2023 @ 9:57pm
< >
Showing 1-5 of 5 comments
B1tF1ghter Jan 14, 2023 @ 8:15am 
Originally posted by ProjectXsent:
3rd party software like DS4
To my understanding there's no such software as " DS4 ".
There's however DS4windows and a bunch of others... But ok...

Originally posted by ProjectXsent:
Source: (remove asterisks)
Or... just link directly like a normal person. Steam won't block PCGW; meanwhile making it "redacted" will actually make it look MORE sketchy.
https://www.pcgamingwiki.com/wiki/Devil_May_Cry_3:_Special_Edition#Controller_support

But overall, you basically just mapped physical input to in-game input by hand. DS4windows would instead map dualshock4 * input to virtual xbox controller input, then would hide ds4 from software (since NOT doing that would cause issues in a whole lot of soft, such as doubleinput, "2 controllers detected therefore 2 player mode", etc).
No big deal, tho most ppl wouldn't do that, of course you CAN do that, but most people would use more convenient "no thinking" tools like DS4windows.
I'm not hating, I'm just saying.
In fact congrats because most people just wouldn't care to even try this.
Tho beware that some functionality is not possible to map this way. You also won't have control over the lightbar, or sticks deadzone (not much with Windows cpl anyway), etc.

* THis is assuming you even have a genuine dualshock4. YOu may not (I suggest you quadruple check to make sure for your own sake). There's a lot of fakes out there, including some which are very well faked.

But anyway, :47_thumb_up:

:bonfire2:
ProjectXsent Jan 14, 2023 @ 9:08pm 
Originally posted by B1tF1ghter:
Originally posted by ProjectXsent:
3rd party software like DS4
To my understanding there's no such software as " DS4 ".
There's however DS4windows and a bunch of others... But ok...

Originally posted by ProjectXsent:
Source: (remove asterisks)
Or... just link directly like a normal person. Steam won't block PCGW; meanwhile making it "redacted" will actually make it look MORE sketchy.
https://www.pcgamingwiki.com/wiki/Devil_May_Cry_3:_Special_Edition#Controller_support

But overall, you basically just mapped physical input to in-game input by hand. DS4windows would instead map dualshock4 * input to virtual xbox controller input, then would hide ds4 from software (since NOT doing that would cause issues in a whole lot of soft, such as doubleinput, "2 controllers detected therefore 2 player mode", etc).
No big deal, tho most ppl wouldn't do that, of course you CAN do that, but most people would use more convenient "no thinking" tools like DS4windows.
I'm not hating, I'm just saying.
In fact congrats because most people just wouldn't care to even try this.
Tho beware that some functionality is not possible to map this way. You also won't have control over the lightbar, or sticks deadzone (not much with Windows cpl anyway), etc.

* THis is assuming you even have a genuine dualshock4. YOu may not (I suggest you quadruple check to make sure for your own sake). There's a lot of fakes out there, including some which are very well faked.

But anyway, :47_thumb_up:

:bonfire2:
Thank you for the response <3 One thing's for sure that my DS4 controller is not genuine since a legit one might not be named "Wireless Controller" when paired/connected. When it comes to double inputs, HidHide would be a good alternative right?
B1tF1ghter Jan 15, 2023 @ 5:45pm 
Originally posted by ProjectXsent:
Originally posted by B1tF1ghter:
( you don't hv to quote the whole big msg, so I suggest you don't, unless the situation requires it )
:bonfire2:
Thank you for the response <3 One thing's for sure that my DS4 controller is not genuine since a legit one might not be named "Wireless Controller" when paired/connected.
This is an EXAMPLE guide on identifying fakes, this guide absolutely DOES NOT cover all cases.
In fact I can tell you that there are some VERY good fakes out there sometimes that would be hard to identify without taking them apart.
https://www.ifixit.com/Guide/How+to+identify+fake+DualShock+4+controller/125855
READ THE COMMENTS.

I have original V2 dualshock 4 that I bought few years ago from official reseller.
I am not sure what was the EXACT hw name it reports but it does hv "wireless controller" in it, although I don't think it was just that.

When I was looking for better (than what I linked) guides on spotting fakes I also accidentially found out Sony now officially sells some hw directly.
Depending on which country you're in (or where you may have friends in), you may potentially be able to get a genuine DS4 directly from them.
https://direct.playstation.com/en-gb/accessories/ps4

Originally posted by ProjectXsent:
When it comes to double inputs, HidHide would be a good alternative right?
I no longer use Windows now (I switched full-time to Linux for private usage few years ago) so I am not sure.
However before that I used primarily DS4windows, it's imo overall more convenient, even tho it doesn't allow super intricate exotic configs that some other tools or very manual config could allow.
iona401 Oct 13, 2023 @ 11:36am 
Is it work for nier automata?
ProjectXsent Oct 13, 2023 @ 6:25pm 
Originally posted by iona401:
Is it work for nier automata?
According to PCGamingWiki, no and you'll need an XInput wrapper like DS4Windows
< >
Showing 1-5 of 5 comments
Per page: 1530 50