Edge scrolling in this game seems a little off. The hotspot for top scrolling isn't near the top of the screen, and the right-down diagonal scroll doesn't seem to work at all. Is there any way to fix this? What about scroll speed, can that be adjusted?
2 Answers
For the top of screen the scrolling hot spot isn't actually the top of the screen, it's just below the menu, which you can see in the below image (the black bars roughly indicate the spot to move your mouse to scroll up on the screen).
If you don't like this you can actually adjust by going to your Civ VI folder and editing the file Base\Assets\UI\WorldInput.xml
. Go to the following line (should be line 24):
<Container ID="TopScreenEdge" Anchor="L,T" Size="Full,30" Offset="0,28" />
Once here you can adjust the Size and Offset parameters to control when edge scrolling happens. Size indicates how large the mouse hot spot area is, with the first value being the horizontal length and the second being the vertical length. Offset controls the position on the screen this hotbox appears, with the first value indicating how far from the left of the screen this area starts and the right indicating how far from the top of the screen to starts. The Anchor value will actually change which side of the screen the offset starts from, but I'm really not sure why you'd want to change this and I'd strongly suggest leaving it alone.
So if you wanted to move the scroll up hotspot up higher than you'd want to update Offset so that that 28 value is lower. You'll want to decrease the 30 in Size as well or the hot spot will take up the entire top menu bar (which makes it impossible to use the top menu without also scrolling the screen). The game will see updates from this file immediately (so you don't need to restart the game), so you can tweek these values until you find something you like. There are entries for every side of the screen, so you can even adjust the left, right and bottom too if you want:
<Container Size="Full,Full">
<Container ID="LeftScreenEdge" Anchor="L,T" Size="30,Full" />
<Container ID="RightScreenEdge" Anchor="R,T" Size="30,Full" />
<Container ID="TopScreenEdge" Anchor="L,T" Size="Full,30" Offset="0,28" />
<Container ID="BottomScreenEdge" Anchor="L,B" Size="Full,30" Offset="0,0" />
</Container>
The scrolling speed can also be adjusted. Just open up Base\Assets\UI\WorldInput.lua
and adjust the following line:
local PAN_SPEED :number = 1;
This should be line 34, and changing that 1 to a higher value will increase the scrolling speed. You can decrease it by lowering this number as well, but I'm not sure why anyone would want to do that. Just like the previous file changes from here take effect without the need for a restart.
I have yet to find a way to fix the right-left edge scrolling, and it looks like everything around the "next turn button" doesn't have edge scrolling enabled. You can still do this using the arrow keys, though, and I suspect this is something we'll need to wait on patch for in order to be fixed.
-
Quick note: you can actually change these values while the game is running! Very helpful for finding the perfect number :)– RobinCommented Jan 7, 2017 at 2:54
-
If you have issues with bottom and/or right screen edge scrolling, with still having to find the "sweet spot" with your mouse (like you will have using 4K resolution), use
Size="Full,30" Offset="0,-10"
forBottomScreenEdge
andSize="30,Full" Offset="-10,0"
forRightScreenEdge
(negative offset!)– MitjaCommented Jul 9, 2017 at 21:55
As Mitja sais in his comment, this problem is common with 4k monitors, but after testing I suspect it will bother anyone using a UI scaling option other than 100%. He're the fix I use at 4K resolution with 200% UI scaling, and I think this fix should work for any res/scaling (In the \Steam\SteamApps\common\Sid Meier's Civilization VI\Base\Assets\UI\EdgeScroll.xml file) :
<Context>
<Container Size="parent,parent">
<Container ID="LeftScreenEdge" Anchor="L,T" Size="2,parent" />
<Container ID="RightScreenEdge" Anchor="R,T" Size="2,parent+1" Offset="-1,0" />
<Container ID="TopScreenEdge" Anchor="L,T" Size="parent,2" />
<Container ID="BottomScreenEdge" Anchor="L,B" Size="parent+1,2" Offset="0,-1" />
</Container>
</Context>