Jump to content

Recommended Posts

hello there,

     I did a simple hardcoded dirty hack on input.lua to make it shows xbox360 controller prompts on a linux machine

(Don't Starve recolonized a xbox controller as a generic controller on linux/mac), and I'm curious that is it possible to make this patch a mod? and how?

 

patches:

--- input.lua.bak 2014-06-28 10:13:51.897841317 +0800+++ input.lua 2014-06-28 11:38:07.049859004 +0800@@ -295,6 +295,10 @@if not (nil == intParam) thentext = string.format(text, intParam)end++ for key, rename in pairs(STRINGS.UI.CONTROLSSCREEN.GENERIC_CONTROLLER_RENAMES) do+ text = string.gsub(text, key, rename)+ endend--print ("Input Text:" .. tostring(text))return text;

 

--- strings.lua.bak 2014-06-28 10:12:30.809987420 +0800+++ strings.lua 2014-06-28 20:41:52.488622374 +0800@@ -2171,6 +2171,47 @@      CONTROLSSCREEN=     {+        -- my+        GENERIC_CONTROLLER_RENAMES=+        {+            -- a, b, x, y+            ["%(Button 0%)"] = "\127",+            ["%(Button 1%)"] = "\128",++            ["%(Button 2%)"] = "\129",+            ["%(Button 3%)"] = "\130",++            -- bumper+            ["%(Button 4%)"] = "\135",+            ["%(Button 5%)"] = "\138",++            --start, back+            ["%(Button 6%)"] = "\132",+            ["%(Button 7%)"] = "\131",++            -- Directional+            ["%(DPad %d Up%)"   ] = "\142",+            ["%(DPad %d Down%)" ] = "\139",+            ["%(DPad %d Left%)" ] = "\140",+            ["%(DPad %d Right%)"] = "\141",+            +            -- left thumb+            ["%(%-X Axis%)"] = "\145",+            ["%(%+X Axis%)"] = "\146",+            ["%(%-Y Axis%)"] = "\143",+            ["%(%+Y Axis%)"] = "\144",+            --+            -- triggers+            ["%(%+Z Axis%)"    ] = "\134",+            ["%(%+Z Rotation%)"] = "\137",+            -- right thumb+            ["%(%-X Rotation%)"] = "\149",+            ["%(%+X Rotation%)"] = "\150",+            ["%(%-Y Rotation%)"] = "\147",+            ["%(%+Y Rotation%)"] = "\148",+         },+        -- end here+                 -- Must match the Control enum in DontStarveInputHandler.h         -- Must match constants.lua CONTROLS_*         CONTROLS = {

 

post-338827-0-51679200-1403959112_thumb.

post-338827-0-96531800-1403959124_thumb.

Link to comment
https://forums.kleientertainment.com/forums/topic/37884-how-to-mod-inputlua/
Share on other sites

I'm curious that is it possible to make this patch a mod? and how?

It is. This should work:

ForcedXbox.zip

But Klei really should add proper control detection for non-Windows platforms. This was discussed in the bug tracker before. Currently it only assumes a controler is a Xbox 360 controller if its driver is the official Microsoft driver, which if of course a Windows-only solution.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
  • Create New...