Nintendo Switch Problem - Titan One and Splatoon 2

Titan One general support. Questions, firmware update, feature request.

Nintendo Switch Problem - Titan One and Splatoon 2

Postby Jackall4BDN » Sat Apr 13, 2019 11:48 am

So i recently got me my Titan One (and will stick with it as for now i cant afford the two or additional dongles)
and got pretty much everything set up and working, i use it mainly for people remote playing my nintendo switch via parsec and it works great, except for one game,
Splatoon 2, where offcourse, Gyroscope Aiming ends up being quintessential to anyone familiar.
However, to circumvent it, and enable a friend who doesnt have a gamecontroller to play Octo Expansion through me, i went for MaxAim and got me a decent M+KB Layout for the Game working, that comes really close to feeling natural,
but close doesnt cut it, the right stick emulated via mouse just cant quite get to feeling precise, no matter how i set it up.

So i thought, why not go for Gyrocontrols, instead. Noted down some values with my normal Procon Attached from the Device Monitor, did the same with an active Script converting some of the CEMU buttons into valuees, adding them together, crushing them by some factors etc, and the values as far as i am concerned, check out when i run them into the Debug Trace,
BUT here is the problem, for some reason i cant write a variable into the slots for GYRO X, Y or Z.
Only Fixed Numbers, which doesnt make a single lick of sense to me:
Image

I allready changed set_val for the Gyros to take The Trace values as seen here, to take my gyr variables and last but not least to the constant number of 20, only the last of which actually set a number in the output under device monitor and ended up having a result ingame, but as you can see, TRACE actually Picks them up, anyone got an idea what could be the cause and how to fix it?

EDIT: Also while connecting a Procon Wired just as passthrough shows all the values in Device Manager, the only values not being passed over are The Ones for Acc and Gyro, even tho they perfectly reflect in the Input Monitor, maybe thats somehow connected

EDIT2: Also the Passthrough that i just mentioned only breaks when Maxaim is Active, but that one seems to be the only way to feed KB and Mouse to the Scripts AAIK, so maybe there is some workaround
User avatar
Jackall4BDN
Corporal
Corporal
 
Posts: 4
Joined: Sat Apr 13, 2019 11:21 am

Re: Nintendo Switch Problem - Titan One and Splatoon 2

Postby Buffy » Sun Apr 14, 2019 1:54 am

This is because you are unmapping both of the gyro's (on top of that, you are settings the gyros to static values TRACE_1 and TRACE_2 respectively, rather than get_val(TRACE_1))

You can read more about it here: https://www.consoletuner.com/kbase/rema ... s=AgAAAQ==

The main part to read though is: "Remappings are evaluated only at the end of each iteration of the main procedure, which means the scripting operations on remapped entries should be made without considering the remapping."
ConsoleTuner Support Team || Discord || Custom Scripts
User avatar
Buffy
Lieutenant
Lieutenant
 
Posts: 422
Joined: Wed Jul 20, 2016 5:23 am

Re: Nintendo Switch Problem - Titan One and Splatoon 2

Postby Jackall4BDN » Sun Apr 14, 2019 9:49 am

i did it without any unmaps before and it produced the same result, i only used the unmaps because usually, 7 of the 9 cemu buttons are allready used in switch mode and like i said, i also allready set them to gyr directly instead of the Traces, which i only used to Debug the values. Since they correctly show the input, i can safely say that the script works fine except for set_val SW_GYRO
User avatar
Jackall4BDN
Corporal
Corporal
 
Posts: 4
Joined: Sat Apr 13, 2019 11:21 am

Re: Nintendo Switch Problem - Titan One and Splatoon 2

Postby Buffy » Sun Apr 14, 2019 7:06 pm

I personally don't have a switch, but using device monitor and your script without the unmaps and tracing part, it was showing the gyros changing value correctly.

Post your full script in text format so I can see.
ConsoleTuner Support Team || Discord || Custom Scripts
User avatar
Buffy
Lieutenant
Lieutenant
 
Posts: 422
Joined: Wed Jul 20, 2016 5:23 am

Re: Nintendo Switch Problem - Titan One and Splatoon 2

Postby Jackall4BDN » Mon Apr 15, 2019 4:42 am

Code: Select all
int gyry = 0;
int gyrx = 0;
int mym = 0;
int myp = 0;
int mxm = 0;
int mxp = 0;
 
unmap CEMU_EXTRA1;
unmap CEMU_EXTRA2;
unmap CEMU_EXTRA3;
unmap CEMU_EXTRA4;
unmap SWITCH_GYROX;
unmap SWITCH_GYROY;
unmap SWITCH_GYROZ;
 
main {
get();
proc();
out();
}
 
function get()
{
myp = get_val(CEMU_EXTRA1);
mym = get_val(CEMU_EXTRA2);
mxm = get_val(CEMU_EXTRA3);
mxp = get_val(CEMU_EXTRA4);
}
 
function proc()
{
gyrx = (mxp - mxm) / 3;
gyry = myp - mym;
}
 
function out()
{
set_val (TRACE_1, gyrx);
set_val (TRACE_2, gyry);
set_val (SWITCH_GYROZ, get_val(TRACE_1));
set_val (SWITCH_GYROY, get_val(TRACE_2));
}


Keep in mind that it only doesnt output it correctly if MaxAim is running, which afaik i need however to feed the Device with Keyboard and Mouseinputs, when Maxaim is closed, the values actually change.
From what i got from the documentation regarding the unmaps, they SHOULD only unmap the inputs from the physical (or virtual) controller, not however from the output, else they would be really pointless, anyways.
But maybe i am overlooking something really simple, thanks for your help in advance.
User avatar
Jackall4BDN
Corporal
Corporal
 
Posts: 4
Joined: Sat Apr 13, 2019 11:21 am

Re: Nintendo Switch Problem - Titan One and Splatoon 2

Postby Buffy » Mon Apr 15, 2019 4:40 pm

Mapping is calculated last, so after main runs all the unmapped values are set to 0 (this is reflected in the device monitor). Using your script without the unmapping's of the gyros the gyro values change accordingly and show up correctly in device monitor.

One last question, the output shows up correct (without the unamps) in device monitor but they don't do anything ingame?
ConsoleTuner Support Team || Discord || Custom Scripts
User avatar
Buffy
Lieutenant
Lieutenant
 
Posts: 422
Joined: Wed Jul 20, 2016 5:23 am

Re: Nintendo Switch Problem - Titan One and Splatoon 2

Postby Jackall4BDN » Mon Apr 15, 2019 6:17 pm

Ok you are right, mapping it again seemed to have solved it, tho i could have sworn that i did that the other day, and it didnt work. Maybe connectinga physical switch controller to the TO physically disables gyro output for some reason, or making the Stacktrace retrieveits own value fixed it...

Anyway, thank you very much for pointing me in the right direction :)

EDIT: And just as i was happy, it is acting weird again, i changed some code, but nothing that would actively break any value, and now only one of the axis would receive output, and once again, the traces work just fine...
However, it would only Affect GYROX now, all the others work :/
User avatar
Jackall4BDN
Corporal
Corporal
 
Posts: 4
Joined: Sat Apr 13, 2019 11:21 am

Re: Nintendo Switch Problem - Titan One and Splatoon 2

Postby Buffy » Mon Apr 15, 2019 11:12 pm

CEMU_EXTRA4 is the equivalent to SWITCH_GYROX.
"The first 4 extra inputs correspond to the motion sensors of Dualshock 3 controllers (Accelerometer X, Accelerometer Y, Accelerometer Z and Gyroscope respectively)"
https://www.consoletuner.com/kbase/layo ... s=AgAAAQ==
ConsoleTuner Support Team || Discord || Custom Scripts
User avatar
Buffy
Lieutenant
Lieutenant
 
Posts: 422
Joined: Wed Jul 20, 2016 5:23 am


Return to Titan One Device

Who is online

Users browsing this forum: No registered users and 123 guests