2013
02.09

DmC : Devil May Cry I know It’s quite late, but 25.01.2013 there was official launch of my first AAA game porting project – DmC: Devil May Cry. It was in the works since march 2012 (I was there since the beginning) and it was developed in parallel with UK based Ninja Theory studio. The project has ended, so I finally I can catch my breath and write some words about it.

I was mainly responsible for user interface/input related things like adding keyboard/mouse, direct input support and handling of PC specific devices configuration. The PC port has also other features like not clamped frames-per-second (there is 30fps upper barrier on XBox360/PS3 consoles) and multi monitor support (ATI Eyefinity technology).

If it comes about input handling I think DmC is best from all recent Unreal Engine PC based ports. You can attach/detach controllers during runtime. For example in titles like Bethesda’s Skyrim and Dishonored (I haven’t checked other ones) after connecting the gamepad, keyboard ceases to work :), which is to be honest very irritating. Other issues, I have noticed (in Skyrim), are, for example, when you remap the ingame controls it affects GUI mappings too, so user interface control hints aren’t valid anymore, which is very annoying. I think that there are more things like that in other games too like nonsense keyboard controls and many more.

In DmC5 port we avoided those issues and we support correctly keyboard/ mouse/ XInput gamepads (e.g. XBox360 pads)/ Direct Input devices (standard PC gamepads) with force feedback. On screen information is updated accordingly to currently used device (keyboard + mouse, XInput devices and Direct input devices) and defined button/key mappings. It required a huge amount of work to get it done correctly – porting games to other platforms on Unreal Engine 3 isn’t just ‘one click’ if something in engine internals is totally screwed up (I know Epic Games says something different ;)).
But this gave me alot of ideas what NOT to do when making input system in my games ;))). Maybe in the future I will write something about fixes that were needed to make everything right and issues that came along the way.

And on the end two movies grabbed from the web which show PC version and multi monitor support.

Here is a review of DmC5 PC port:

Here is a video from DmC5 PC version with multi-monitor support:

Post to Twitter Post to Facebook

  1. Hi, I played the game and I really loved it, but one thing that I find extremely irksome was moves that involved the combination of Spacebar + Mouse Rclick. The buttons must be pressed EXACTLY simultaneously for the moves to be executed. Is there a way to workaround this problem? More allowance should be given for the buttons to be pressed at slightly different times and still allow the moves to be executed.

  2. Turning off Vsync might help a bit, but this is rather crude workaround. Issue could also emerge on gamepads too, on higher framerates (Vsync off).
    You are right about allowance and that it could be improved, keyboard / mouse input is checked in the exact frame. Without some major changes in Unreal win32 driver and Ninja Theory input system this cannot be fixed just like that.
    Maybe if we heard more about this issue earlier (around release date), it could have been fixed somehow.