ZSR Forums
October 04, 2023, 02:36:48 am *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: ZSR Forums are back - read only!
 
   Home   Help Search Members Login Register  
Pages: [1] 2 3 ... 14
  Print  
Author Topic: VC Control Stick Mapping  (Read 137789 times)
ING-X
Site Editor
Mega Guay

Posts: 613


fuck you and the horse you rode in on

562243965 marikthechao@hotmail.com ingx24
« on: March 03, 2012, 12:40:43 am »

http://pastebin.com/2RNbM9Vm

This is data petrie911 got from the input plugin on Dolphin + the address in the OoT ROM for inputs. The input on the right is the input on the VC version that is needed to get the input on the left. Pretty interesting.
Logged

<complex> byan you're doing that thing again
<complex> the thing where everything you say is fucking retarded


<ethandude> http://en.wikipedia.org/wiki/Homosexual cheak this out luxury it might come in helpful when u wright your resime
Cosmo
Guest


Email
« Reply #1 on: March 03, 2012, 12:59:18 am »

this shows that VC uses 44% of the control stick and the rest is deadzone / max input

i'd love to see a hack that cuts the deadzone in half and cuts the max input into like a quarter (and evenly spaces out the rest of the input).
Logged
ING-X
Site Editor
Mega Guay

Posts: 613


fuck you and the horse you rode in on

562243965 marikthechao@hotmail.com ingx24
« Reply #2 on: March 03, 2012, 01:35:45 am »

Me and the guy who made the N64 adapter that most people use (Raphael) are working on making a new version of the adapter that makes the VC control stick the same as N64. I've already talked to jewyama on SDA about this and he said it was fine since it's just for comfort of control (the VC control transformation is really just a big deadzone and a tiny bit of added sensitivity; ESS is still more than possible with it even if it does feel really awkward). It should be ready within the next month.
Logged

<complex> byan you're doing that thing again
<complex> the thing where everything you say is fucking retarded


<ethandude> http://en.wikipedia.org/wiki/Homosexual cheak this out luxury it might come in helpful when u wright your resime
darkeye14
Regular Guay

Posts: 101


WWW
« Reply #3 on: March 03, 2012, 09:23:31 am »

I did some testing with the F-Zero X WAD, since that game doesn't feel like it has much of a deadzone. On Mupen64, you have to set the controller's x-value to at least 7 to get the car to turn at all; it just goes straight otherwise. On Dolphin, the Gamecube's stick has a default of 128, and you have to set it to at least 150 to turn right (or at most 106 if you want to turn left). Relative to the stick's starting position, you have to push it 7 units left or right on N64, and 22 units left or right on VC to start turning.

What interests me about this is that 22 - 7 = 15. And, from petrie's data 16 - 1 = 15 as well. Perhaps it's nothing, but it seems like that can't be a coincidence.
Logged

[18:38] <Sigless> darkeye is cute too

[18:45] <aleckermit> We get a free pack of cheetos with every vote too Smiley
[18:46] <bluemarth> in the uk we keep our foreskin
ING-X
Site Editor
Mega Guay

Posts: 613


fuck you and the horse you rode in on

562243965 marikthechao@hotmail.com ingx24
« Reply #4 on: March 03, 2012, 04:05:18 pm »

I did some testing with the F-Zero X WAD, since that game doesn't feel like it has much of a deadzone. On Mupen64, you have to set the controller's x-value to at least 7 to get the car to turn at all; it just goes straight otherwise. On Dolphin, the Gamecube's stick has a default of 128, and you have to set it to at least 150 to turn right (or at most 106 if you want to turn left). Relative to the stick's starting position, you have to push it 7 units left or right on N64, and 22 units left or right on VC to start turning.

What interests me about this is that 22 - 7 = 15. And, from petrie's data 16 - 1 = 15 as well. Perhaps it's nothing, but it seems like that can't be a coincidence.


So 7 on N64 = 22 on VC. Same as on OoT. So it seems Nintendo used the same mapping for each game on VC. Good shit.
Logged

<complex> byan you're doing that thing again
<complex> the thing where everything you say is fucking retarded


<ethandude> http://en.wikipedia.org/wiki/Homosexual cheak this out luxury it might come in helpful when u wright your resime
Enterim
Regular Guay

Posts: 153



Email
« Reply #5 on: March 03, 2012, 08:12:50 pm »

Has anyone tried, like, emailing Nintendo and being all "yo, how's the VC control stick mapping? peace."

Very nice work though, you guize.
Logged
UchihaSasuke
Special Guay

Posts: 361


move over Chidori, time to spam infinite Susano'o


WWW
« Reply #6 on: March 03, 2012, 11:10:47 pm »

it would be good if a way to reduce sensitivity existed. FZX is so bad with the VC default.
Logged

"Patience is useful in any moment"

Youtube Account 1
Youtube Account 2
ING-X
Site Editor
Mega Guay

Posts: 613


fuck you and the horse you rode in on

562243965 marikthechao@hotmail.com ingx24
« Reply #7 on: March 03, 2012, 11:17:51 pm »

it would be good if a way to reduce sensitivity existed. FZX is so bad with the VC default.

There probably will be an N64 controller adapter fix for it in the near future (see my above post). Smiley
Logged

<complex> byan you're doing that thing again
<complex> the thing where everything you say is fucking retarded


<ethandude> http://en.wikipedia.org/wiki/Homosexual cheak this out luxury it might come in helpful when u wright your resime
whyieyesya
Special Guay

Posts: 206


Email
« Reply #8 on: August 08, 2012, 02:54:37 pm »

Hi there, I am fairly new to running OoT for if you don't know me.  Wink

Basically the fix for this never got made and that's why I started working on this about a week ago. Today I am happy to announce that I got it working and that ess is a lot easier in my experience with the converter I made.

I still need to do some improvements to it, since I still don't fully understand the scaling between N64 analog and GC analog (my N64 analog stick doesn't really reach values higher than about 75), so I don't know if I use the conversion table ING-X links in his first post correctly. The way I do it now was pretty much a guess and it turns out to work good for me and it makes ess a lot easier than normal. There are also some other improvements left for me to do.

The hardware I am using is the same as the raphnet adapter. To make it compatible with the raphnet adapter I think I only need to change an input/output pin I use, so it shouldn't be a problem to get it to work with it.


I will be posting some basic proof (video I guess) very soon and once I think the adapter and code is completely finished I will be looking into a way to supply everyone who wants an adapter with one. Smiley
« Last Edit: August 08, 2012, 02:56:18 pm by whyieyesya » Logged
ING-X
Site Editor
Mega Guay

Posts: 613


fuck you and the horse you rode in on

562243965 marikthechao@hotmail.com ingx24
« Reply #9 on: August 08, 2012, 05:58:56 pm »

i love you have my babies
Logged

<complex> byan you're doing that thing again
<complex> the thing where everything you say is fucking retarded


<ethandude> http://en.wikipedia.org/wiki/Homosexual cheak this out luxury it might come in helpful when u wright your resime
whyieyesya
Special Guay

Posts: 206


Email
« Reply #10 on: August 08, 2012, 08:51:17 pm »

I just tried out Majora's Mask and it doesn't work as expected. If I hold my analog stick up to maximum value Link doesn't walk at full speed. My guess is that Nintendo uses a different mapping between Gamecube input and the input that is generated to the rom. Would it perhaps be possible for someone to see if this is true, by making an input table for Majora's Mask as well. I would love to do this myself, but have no idea how. Sad

I was already trying to find out myself if the emulator for MM really input differently by injecting OoT into the MM wad and see if Link also doesn't run at full speed then. I tried to use injectuwad for this, but it says the OoT rom is too big and I can't find another injector.
Logged
ING-X
Site Editor
Mega Guay

Posts: 613


fuck you and the horse you rode in on

562243965 marikthechao@hotmail.com ingx24
« Reply #11 on: August 08, 2012, 10:04:22 pm »

You said your N64 control stick goes up to a value of 75, right? If so then it does seem like Nintendo used a different mapping for MM Sad . Sucks.

At least it should work for OoT. As of right now there's no way to get a mapping table for MM since it just crashes in Dolphin.
Logged

<complex> byan you're doing that thing again
<complex> the thing where everything you say is fucking retarded


<ethandude> http://en.wikipedia.org/wiki/Homosexual cheak this out luxury it might come in helpful when u wright your resime
whyieyesya
Special Guay

Posts: 206


Email
« Reply #12 on: August 08, 2012, 10:25:46 pm »

I don't know the exact number my control stick goes up to. I am probably gonna hook it up to my pc some time to find out. The thing is, if the mapping in MM was the same, it should work with any N64 controller that is functional.

I can still try to tweak it a little by hand, but it probably won't be exactly the same as on N64.

By the way are there any wads that MM is known to work with as an injected rom. Because then I can see how MM works with another emulator, that perhaps has the same mapping as OoT. That would confirm that MM uses a different mapping.

Edit:
By the way, if I pushed really hard on my analog stick Link would sometimes do run, so the values aren't that much off I think. I think that if we tweak and guess some values MM should still be very playable with this adapter.

Edit2:
I just downloaded Dolphin and tried it on a MM PAL wad and it didn't crash. I must say that it did run really awful and no sound. What I mean with awful is that it just skips through frames and it seems to run at a way too high speed. I do need to say that my graphics card is really bad.  I guess even with the fact that it runs so awful, the input must be functional, so I guess it should be possible to read out the mapping. If I knew how, I would try this!

Edit3:
MM PAL crashes when pressing start to go to the menu for me. But my guess is that the input layer from the Virtual Console emulator is also active before going into the menu, so it should be possible to read out which analog stick values the Virtual console emulator supplies the game for certain Gamecube controller inputs.

Edit4:
Using Dolphin revision 735 64 bits with PAL Majora's Mask wad. Only this version of Dolphin doesn't give me a crash (except that it crashes after pressing start ofcourse).
« Last Edit: August 09, 2012, 12:11:34 pm by whyieyesya » Logged
whyieyesya
Special Guay

Posts: 206


Email
« Reply #13 on: August 12, 2012, 02:02:53 pm »

Allright I believe I have made a pretty decent mapping for Majora's Mask. I have done this by sending certain analog input values to my Virtual Console version of Majora's Mask and comparing these with corresponding N64 input that I retrieved from the TAS plugin from Mupen. Basically I had three analog stick values to compare with N64: value that Link starts turning, value that Link starts walking, value that Link starts running fastest. Maybe there are more easily recognizable analog input values, if anyone knows them they should tell me, because then I can get a better mapping table for the analog stick.

Here are the values I found:

Link starts turning/essing:
N64: 16
GC : 30

Link starts walking
N64: 28
GC:  41

Link starts running at fastest rate (this one was hard to recognize and might be a little off
N64: 66
GC : 77

Based on these observations I made a mapping table by trying to make a linear function fit with Matlab. I am not very good at math, so I think this process could be done better. One thing to notice is that the region you can hold analog stick to ess in, is kept completely, no matter what conversion is done to generate all the unkown data, because it is generated to go through the values I measured. After this I programmed the new mapping table into my converter and it seems to work very well. I was able to do extended superslides with it.

I also found out that you start essing in OoT at a slighter angle of your analog stick. It only requires a value of 8 and you can hold it up to 26 before Link will start walking. Basically this means that essing was already easier in OoT on the N64 than in MM on the N64. If anyone is able to confirm this is true, then I would be happy, because that would indicate I probably didn't make any mistakes during the process.
Logged
Pheenoh
Site Editor
Special Guay

Posts: 276


Locked in cafde's basement


Email
« Reply #14 on: August 12, 2012, 02:11:01 pm »

Basically this means that essing was already easier in OoT on the N64 than in MM on the N64. If anyone is able to confirm this is true, then I would be happy, because that would indicate I probably didn't make any mistakes during the process.

Yeah, ESS'ing is noticeably easier in OoT.
Logged

<yashichidsf> tompa should default be a mod on everything related to srl
<yashichidsf> while i'm not a big fan of modding bots, i think tompa is really well programmed
Pages: [1] 2 3 ... 14
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.20 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!