**REPORTED** Scroll wheel issues on Mac

TimonVS

Terrarian
Steam or GOG
Steam
Single Player/Multiplayer
Both
Operating System
Mac Other
Terraria Version
1.4.0
Controls Used
Keyboard/Mouse
Scrolling to select another item is somewhat broken for me since the last update when using an external mouse on my Mac. When I scroll slowly, I have to scroll like 5-7 notches before it goes to the next item. When I scroll fast, it skips like 5 items at once.

I recorded a video to illustrate the issue better:


I've found a Reddit thread about the same issue: .

It seems to me that this could be related to smooth scrolling on the Magic Mouse, Magic Trackpad and built-in trackpad, because scrolling on the built-in trackpad works just fine.
 
We've been getting a few reports of this and are still looking into solutions. I know at least one reporter indicated that swapping out his mouse fixed it, so it may be a conflict between specific brands of mice.
 
We've been getting a few reports of this and are still looking into solutions. I know at least one reporter indicated that swapping out his mouse fixed it, so it may be a conflict between specific brands of mice.

The mouse I'm using is a Logitech G500s, I have also tested it with a cheap wireless Microsoft mouse (don't know exactly which one anymore). I'm curious as to why switching mice would help since the mouse works fine in other applications and games.
 
As I said, it may be a conflict between certain brands of mice with Terraria, hence why we'll need to look into it :)
 
I have done a lot of testing and I have narrowed down the issue to whatever version of SDL that Terraria uses. I replaced Terraria's SDL binary with a binary I built myself using the latest version of SDL (2.0.12) and this issue completely went away. There may be other side effects of upgrading the SDL version, but I haven't seen any problems yet.

For anyone who wants to apply this workaround:
  • Download libSDL2-2.0.0.dylib.gz.
  • If it doesn't automatically get unzipped, then unzip it.
  • Go into steam and right click Terraria in the Steam library.
  • Select properties.
  • Go to the local files tab.
  • Click browse local files.
  • Right click the Terraria application and select Show Package Contents.
  • Go into Contents > MacOS > osx.
  • Replace libSDL2-2.0.0.dylib with the one you downloaded.
 

Attachments

  • libSDL2-2.0.0.dylib.gz
    594.5 KB · Views: 697
@Silly511 Thanks a lot for the investigation, I'm going to document this in our ticket for the issue, will probably give us a lead!
 
@Silly511 I tried this and now Terraria won't even boot up. In the force quit option it says it isn't responding.
Edit: I tried the steps again and this time it won't even go that far, it boots up and immediately stops.
 
Last edited:
Thanks @Silly511, it mostly fixes the problem!
When I scroll a single notch at a time it goes to the next item. If I scroll a bit faster it still skips over items, this is less of an issue but not ideal.
 
@Silly511 I tried this and now Terraria won't even boot up. In the force quit option it says it isn't responding.
Edit: I tried the steps again and this time it won't even go that far, it boots up and immediately stops.
I don't know why it doesn't work for you, it seems to work for everyone else. You can reverse the changes by going into steam, right-clicking Terraria, clicking properties, going to the local files tab, and clicking the verify integrity of game files button.
 
I don't know why it doesn't work for you, it seems to work for everyone else. You can reverse the changes by going into steam, right-clicking Terraria, clicking properties, going to the local files tab, and clicking the verify integrity of game files button.
I did that a few times, replaced it again. Now it finally works. thanks a lot dude.
 
I have done a lot of testing and I have narrowed down the issue to whatever version of SDL that Terraria uses. I replaced Terraria's SDL binary with a binary I built myself using the latest version of SDL (2.0.12) and this issue completely went away. There may be other side effects of upgrading the SDL version, but I haven't seen any problems yet.

For anyone who wants to apply this workaround:
  • Download libSDL2-2.0.0.dylib.gz.
  • If it doesn't automatically get unzipped, then unzip it.
  • Go into steam and right click Terraria in the Steam library.
  • Select properties.
  • Go to the local files tab.
  • Click browse local files.
  • Right click the Terraria application and select Show Package Contents.
  • Go into Contents > MacOS > osx.
  • Replace libSDL2-2.0.0.dylib with the one you downloaded.
It's not working on Apple chip. I tried building the SDL2 binary from source, but following error is keep happening.
I've tried SDL 2.0.0, 2.0.1, 2.0.12, 2.28.0(latest), but everything is not working. I've checked that the platform is macOS and the arch is x64 while building and the binary output name is same as the original one. Did you specified any other options while building your binary file? @Silly511

Code:
➜  MacOS ./Terraria /gldevice:OpenGL
Error Logging Enabled.
SDL2 was not found! Do you have fnalibs?
================
6/25/2023 9:23:49 PM: Unhandled Exception
Thread: 1 [Main Thread]
Culture: en-US
Exception: System.TypeInitializationException: The type initializer for 'Microsoft.Xna.Framework.FNAPlatform' threw an exception. ---> System.DllNotFoundException: libSDL2-2.0.0.dylib assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) SDL2.SDL.INTERNAL_SDL_GetPlatform()
  at SDL2.SDL.SDL_GetPlatform () [0x00000] in <0d98e7b0b9fd41c99d818f5193269d29>:0
  at Microsoft.Xna.Framework.SDL2_FNAPlatform.ProgramInit (Microsoft.Xna.Framework.LaunchParameters args) [0x0001c] in <0d98e7b0b9fd41c99d818f5193269d29>:0
  at Microsoft.Xna.Framework.FNAPlatform..cctor () [0x00485] in <0d98e7b0b9fd41c99d818f5193269d29>:0
   --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
  at Microsoft.Xna.Framework.Game..ctor () [0x000fe] in <0d98e7b0b9fd41c99d818f5193269d29>:0
  at Terraria.Main..ctor () [0x0024f] in <f066af70dcb24a3f894d56c17fe80d6a>:0
  at Terraria.Program.RunGame () [0x0003a] in <f066af70dcb24a3f894d56c17fe80d6a>:0
  at Terraria.Program.LaunchGame (System.String[] args, System.Boolean monoArgs) [0x00085] in <f066af70dcb24a3f894d56c17fe80d6a>:0
  at Terraria.MacLaunch.Main (System.String[] args) [0x00038] in <f066af70dcb24a3f894d56c17fe80d6a>:0
HResult: -2146233036
================
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'Microsoft.Xna.Framework.FNAPlatform' threw an exception. ---> System.DllNotFoundException: libSDL2-2.0.0.dylib assembly:<unknown assembly> type:<unknown type> member:(null)
  at (wrapper managed-to-native) SDL2.SDL.INTERNAL_SDL_GetPlatform()
  at SDL2.SDL.SDL_GetPlatform () [0x00000] in <0d98e7b0b9fd41c99d818f5193269d29>:0
  at Microsoft.Xna.Framework.SDL2_FNAPlatform.ProgramInit (Microsoft.Xna.Framework.LaunchParameters args) [0x0001c] in <0d98e7b0b9fd41c99d818f5193269d29>:0
  at Microsoft.Xna.Framework.FNAPlatform..cctor () [0x00485] in <0d98e7b0b9fd41c99d818f5193269d29>:0
   --- End of inner exception stack trace ---
  at (wrapper managed-to-native) System.Object.__icall_wrapper_mono_generic_class_init(intptr)
  at Microsoft.Xna.Framework.Game..ctor () [0x000fe] in <0d98e7b0b9fd41c99d818f5193269d29>:0
  at Terraria.Main..ctor () [0x0024f] in <f066af70dcb24a3f894d56c17fe80d6a>:0
  at Terraria.Program.RunGame () [0x0003a] in <f066af70dcb24a3f894d56c17fe80d6a>:0
  at Terraria.Program.LaunchGame (System.String[] args, System.Boolean monoArgs) [0x00085] in <f066af70dcb24a3f894d56c17fe80d6a>:0
  at Terraria.MacLaunch.Main (System.String[] args) [0x00038] in <f066af70dcb24a3f894d56c17fe80d6a>:0

Any other updates @Leinfors ?
 
I have done a lot of testing and I have narrowed down the issue to whatever version of SDL that Terraria uses. I replaced Terraria's SDL binary with a binary I built myself using the latest version of SDL (2.0.12) and this issue completely went away. There may be other side effects of upgrading the SDL version, but I haven't seen any problems yet.

For anyone who wants to apply this workaround:
  • Download libSDL2-2.0.0.dylib.gz.
  • If it doesn't automatically get unzipped, then unzip it.
  • Go into steam and right click Terraria in the Steam library.
  • Select properties.
  • Go to the local files tab.
  • Click browse local files.
  • Right click the Terraria application and select Show Package Contents.
  • Go into Contents > MacOS > osx.
  • Replace libSDL2-2.0.0.dylib with the one you downloaded.
I tried this and i uninstalled it and re installed the file multiple times to no success. Any new fixes?
 
Back
Top Bottom