It looks like you're new here. If you want to get involved, click one of these buttons!

[GUIDE] Batman: Arkham Knight



  • One3rd said:

    I'll have a look later and see if it still works for me. If it does I'll grab my ini file for you to try out.

    I'll have to try this later, in the meantime here is the ini file I use. FOV binds are F3 and F4.

    Goes in ..\Steam\steamapps\common\Batman Arkham Knight\BMGame\Config location.

    Thanks a lot for taking time for my problem ! I'm gonna try it today and I 'll be back to say if I have problems or not ;)
  • @jpixxxphotogaming
    Hey man can you upload the cheat engine table you downloaded since the dropbox link is currently unavailable.
  • I don't have the original one from the OP that works but do have one based off of it that uses a pause camera. The below link should still work, let me know and I'll add it to the OP.

    There's also a merged "pause camera" table Erika and I worked on that works as well. You will need to use a FOV bind to enable FOV control with the table. Pause the game with the main menu and you can move the camera around while paused. I think the HUD toggle was F11 / Ctrl-F11 and you can go into video settings to remove DOF or also into Photomode (works most of the time).
  • edited February 2017
    well thanks it's working fine but can I change the camera position (angle) and keep it permanent while playing by using this table ??
  • No, the camera coordinates are overwritten when you un-pause the game. It is really for screenshooting only, changing the camera position during gameplay would likely require different addresses.
  • edited February 2017

    There's this as well for emulating the UE3 debug console by from my understanding managing the removed/missing functionality via Cheat-Engine scripting, author has also made tables for Arkham City and Arkham Asylum and I think some of the Ubisoft "Anvil" engine games like Assassin's Creed.

    I haven't used this table myself though and I'm unlikely to reinstall the game until I get at least a stronger GPU but there's a pretty good list of the available commands in that first post. :)
    (Including ToggleDebugCamera and PlayersOnly.)

    EDIT: Well the AMD Fury isn't exactly slow I suppose but 4 GB of VRAM will never be anything but 4 GB regardless of how fast the memory is, newer games get pretty close to exceeding that even without downsampling so a game like this with it's problematic streaming system well the patches helped but it will stutter pretty badly.
    (As far as high-res screenshots go it has the GPU power but it'll hitch and stutter after only a short while in-game and that's pretty annoying, lower framerates is one thing but stuttering or outright stalling - IE Resident Evil 7 - is a big issue too.)

    Nvidia Volta or what it was and AMD Vega will be most interesting once there's some actual details on those available.

    Though going by rumors Nvidia might squeeze in a 1080Ti as a slightly trimmed down Titan X Pascal GPU before they're doing Volta so that might take a while longer still and both Vega and Ryzen or what the CPU variant was called have had some problems it seems so it could be delayed further.
  • Oh wow, that sounds very cool indeed! Thanks for posting it.
  • edited February 2017
    @ JonasBeckman
    mind my ignorance but how can I use the command ToggleDebugCamera or PlayersOnly to achieve my goal ??
  • I see now, that would be me misreading your previous post, if it works then the debug camera feature would allow you to freely move and set the camera pretty much however you want to but to change the camera setup for regular gameplay would be trickier short of using a trainer or Cheat-Engine script to manipulate the camera co-ordinates directly.
    (This isn't very common.)

    There are other camera cvars for UE3.x that can override the default camera behavior but these can vary from game to game if they even work at all.
    (The "camera 1st" cvar would force 1st person perspective for example and "camera 3rd" would force third person but this depends on what the game has named it's camera classes and some use more custom variants such as to simulate 2D and also top-down views.)

    I'll have to search around a bit, it's one thing when a game ships with a fully unlocked dev console but in this case where it's been almost disabled or removed entirely the list of functional cvars might be a bit shorter.
    (Engine itself is also pretty customized from my understanding of it, they might even have their own specific console commands or settings so that complicates things.)
  • Alright thanks.
  • edited February 2017
    This is some seriously unstable game, batman!

    As the CTs don't work in full anymore (fov is broken in all for example) I'm trying to get it to work as a camera tools dll, but it's not a pleasant journey: it crashes so often... The CT with the menu camera picks up the camera in a copy routine, so the original camera is elsewhere but hunting for it requires serious patience. :/

    (edit) FOV is at [pCamera]+58C. This works again in the pause camera. The camera is the same in the menu as in gameplay btw. The problem is of course the write to it, as that's done with a memcopy and where it comes from isn't clear.

    (edit) oh, it's easier, the function you intercept the camera in for the menu, is the sole write code, so nopping that will make the camera move in-game. :) The rotation is really weird tho... Have to ponder on that for a while (I need it to calculate the look vector so movement is related to that)
  • So that pause camera we were getting at through the FOV keybind doesn't work anymore? Either way, a mouse driven rotation camera is so much more appealing than the completely keyboard bound ones we've been using. =)
  • edited February 2017
    One3rd said:

    So that pause camera we were getting at through the FOV keybind doesn't work anymore? Either way, a mouse driven rotation camera is so much more appealing than the completely keyboard bound ones we've been using. =)

    the camera in your CT does work when the pause menu is up, if you first pressed pgdn before opening the menu. The FOV offset in the CT doesn't work anymore as the value is at the offset 58c ;) The camera is the same as the in-game camera, so nopping the writes (which is the routine you intercept the camera address) makes you able to move the camera around without the menu.

    The one thing I have to figure out is what the values for the rotation angles mean, but that shouldn't be too hard. I hope to have something later today :)

    (edit) the angles are actually 2 bytes, and range from 0 to 65535 or 0xFFFF. The axis are: Z into the screen, Y up and X right, classical Direct3D, so the Y rotation is actually the x rotation, but that's of course not important for the CT ;) I have no idea why they use integer math for the angles, as the complete pipeline uses floats, but they must have had their reasons.

    Now to find the byte which reflects the setting enabled/disabled with the keybinds in the OP and we're set to build the camera ;)

    (edit) axis are not default d3d, z is up. Ok... should have looked better at the actual coords instead of the angles. Mostly done though, camera moves like a drunken sailor due to misinterpretation of the axis, but that is fixable :)
  • Camera done but there's a problem with the timestop. The one in the OP has a problem with cutscenes. When you pause the game, the cutscene animation pauses, but the game runs the cutscene through. So when you unpause the game, things are broken. Not sure if it's the command given, or that something else should be executed.

    For the life of me I can't find the timestop based on the menu, I always get stuck with a thousand or so values, and the game crashes rather quickly when going through them. Will look futher to see whether there's another UE3 command to pause the game.
  • edited February 2017
    Ok, went the menu / gfx options route, as that's really the only way besides finding the actual bloody bit in memory. If someone finds it, it's easy to add later.

    Camera tools: https://github.com/FransBouma/InjectableGenericCameraSystem/tree/master/Cameras/BatmanArkhamKnight
    Credits: Otis_Inf/One3rd/Jim2Point0.

    I've written how to do timestop in the readme.txt file, so it should be easy to follow 8).

    To the batmobile!
Sign In or Register to comment.