Trine 3: The Artifacts of Power

Trine 3: The Artifacts of Power

View Stats:
loui1986 Dec 8, 2017 @ 3:35am
Controller UI
So I'm using an xbox360 controller and the game gives me pretty stupid instructions, like press button 16, press button 18, shows 3 buttons which need to be pressed in sequence with no separators (I'd expect the other boxes to be at-least less opaque) at most some form of symbol mnemonic less opaque until you need to push.

[button 3][button 4][button 2] is ambiguous. I've played the first two games but don't game often so when I bought this I thought it'd be as clear as the 1st 2 games.
< >
Showing 1-9 of 9 comments
JLarja  [developer] Dec 8, 2017 @ 4:58am 
Are you playing on Windows? I think it should have Xbox controller images.

-JLarja / Frozenbyte
loui1986 Dec 9, 2017 @ 4:12am 
Why wouldn't any OS have the controller images? They are not patented, I have two controllers both referencing Axis 5, Axis 6 (which are actually LT, RT). Button 18 (WTF that is when the controller has less than 18 buttons).

I could understand when it was the non-stock controller, but then when the stock controller was switched (which needed a restart of the engine to pick-up) then It seems really strange that it knew it was an XBox360 gamepad, but gave confusing controller instructions.
Last edited by loui1986; Dec 9, 2017 @ 4:14am
JLarja  [developer] Dec 9, 2017 @ 5:33am 
Linux and OS X versions have no easy way to know whether an Xbox controller or some other sort of controller is used. OS X doesn't even support Xbox controller out of the box. On Linux, axis and button configuration depends on drivers, so it doesn't make much sense to guess. If you were to try Windows version with some non-Xinput (Xbox 360 compatible) gamepad, you would see that it also just displays generic button 1, 2, 3 messages.

-JLarja / Frozenbyte
loui1986 Dec 10, 2017 @ 7:12am 
Thanks for your insight JLarja. Can you explain how my Linux Trine (2009) and Trine 2 (2011) support the xbox360 gamepad with symbols?
JLarja  [developer] Dec 10, 2017 @ 8:54am 
Original Trine port to Linux was not done by Frozenbyte (and I wasn't even working there when original Trine was done), so I have no idea about that. For Trine 2, my guess is that there were some hacks there that made it recognize gamepad as Xinput gamepad, but those hacks didn't work for Trine 3 anymore (it uses different version of SDL and is compiled against different set of libraries anyway) or would have needed some sort of rewrite. It's actually pretty likely that those hacks were written by me.

You can actually deduce stuff from USB IDs or simply from controller name. The problem with such hacks is that it is hard to get them right. For example, there are at least three variations of PS4 gamepads, with differencies in names and IDs. I don't know about Xbox 360 gamepads (or Xinput gamepads), but generally speaking I don't think it makes much sense to spend time on such hacks.

There are public controller databases that could be used, but unfortunately we've never had time or resources to really research those (we could have during Trine 2 development, but back then they didn't exist). Steam also has some sort of controller API nowadays, but I haven't looked into it at all. It also wouldn't help DRM free or GoG versions of the games, so more work for limited benefit.

-JLarja / Frozenbyte
loui1986 Dec 10, 2017 @ 9:42am 
From lsusb in-case it helps for another time, below are my two XBOX360 controller ID's. 045e is Microsoft specific covers a heap of their usb devices.

ID 162e:beef
ID 045e:028e Microsoft Corp. Xbox360 Controller

There are a few wireless PC adapters too and a usb driver for the wireless pad when plugged into usb.

I get Trine 3 is a shipped product so what is, kinda is. I Also appreciate your cander. It just has a rather significant impact on gameplay. Shadwen for example has to be bound to keyboard and mouse. Something I used to do in the 90's for controller support. I read somewhere there was a multi-milion budget for Trine3 (I get it mostly went some-place other than coding).

Have a great weekend!
JLarja  [developer] Dec 10, 2017 @ 11:59am 
Yeah, those are the sort of hacks I was talking about. Works OK for Microsoft's Xbox 360 controller, but doesn't necessarily work for clones. Text ID is also different for wired and wireless one (I now recall that the first hack for Trine 2 didn't work for wireless controller, because the name was spelled differently).

Trine 3's Linux version was really done with extremely low budget (well, there was no official budget at all, so I can't tell you any numbers), so any hacks like that, which require testing and perhaps fixing after the game is released and more people have played it, were very much secondary. Still, I should say that Linux people can feel lucky that the game got released with most features intact. PS4 never got online co-op.

-JLarja / Frozenbyte
gamename Dec 19, 2019 @ 10:02pm 
Sorry to bump an old thread. I've just been encountering this recently. I know thiere will probably be no update, or practical reason for mentioning this, but .... Seems to me that the more annoying problem, for users, is the labeling, not the calibration. I think many of us are OK with spending some time fiddling with the initial setup / calibration, we only need to do that once. Having set it up, though, it's hard to remember all these buttons by number (on a per-game basis, ofc, if we have other games that do similar). So, you could have handled this by:

1) You could have included the Xbox-stlye button icons, a few ways. Tied to the action, user-assignable, or tied to the event/button-number you expect (maybe the one you test with). For that last, even if a few showed up wrong, it's easier for users to remember 'a and b are flipped in this game', than '1-18 are ....'.
2) User-configurable icons. Put defaults (maybe the xbox-style ones) in a folder, let us rename them, or replace with same-format images, and/or use a config .txt
3) Prompt by action, not button. (Or both)

FWIW, I mostly use a PS3 gamepad that gets recognized 'automatically' by many games, which then often prompt using Xbox-style prompts. Actually, I don't remember right now if I used that for Trine3 or a generic USB ... either way, I'm not far in, and might switch to mouse+kbd, which is how I played 1&2, but less convenient for my current setup.
AuraFB  [developer] Dec 20, 2019 @ 4:24am 
No worries, it's alright to respond to old threads and we do try to keep an eye on new messages in all threads, both old and new. There are sadly no updates planned at the moment but thanks for the feedback, I've forwarded it.
< >
Showing 1-9 of 9 comments
Per page: 1530 50