AlexLu Posted June 28, 2014 Share Posted June 28, 2014 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 = { Link to comment https://forums.kleientertainment.com/forums/topic/37884-how-to-mod-inputlua/ Share on other sites More sharing options...
simplex Posted June 30, 2014 Share Posted June 30, 2014 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. Link to comment https://forums.kleientertainment.com/forums/topic/37884-how-to-mod-inputlua/#findComment-505851 Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now