Main > Main Forum
720 controls design - wouldn't this be better??
<< < (4/9) > >>
RandyT:

--- Quote from: SavannahLion on October 10, 2009, 12:21:35 am ---Because MAME doesn't emulate mechanical hardware and MAME supports lowest common denominator setup, namely keyboard, vanilla joystick and mouse.

--- End quote ---

Actually, that has supposedly been a secondary concern.  True emulation of this title requires that there be an input associated with the pulse line for that hardware.  Otherwise, it is incomplete.  Perhaps it wasn't the presence of this input that ruffled feathers, rather the implementation?

I think we need to persuade Derek to figure this one out.

RandyT
Xiaou2:
 If you have the recalibrate ON  (correct behavior) , and no calibration is taking place
regularly... it probably messes up the games input.    Thus, since they believe nobody
will have, build or buy a proper controller... they Disabled the support.

 In fact, if I recall correctly,  they went so far as to change the game to support
"Analog joystick" instead of true spinner aim.  This really takes the cake.


 While this is an OK solution for the temporary test that a person might want to try...
There should be a way to select the proper input methods.

 
 The "Core Input"  selection system,  Should be used to assign the kind of
control you wanted... to the control that is in game.
The system does not seem to be hooked up correctly... AND, it does not take into
consideration blatant emulation abuses such as in this game.

 Every game should give you the Option of what kind of setup you wish to use.


 Sure, if you want to default to "Hack Mode"  so the non serious players can
try a game out... then Fine.  But Allow a Switch for true "Arcade" mode, so we with
correct controls can use them properly.

 The problem is that the devs couldnt care less... And, no dev wants to Touch the
GUI system.   None of them.   To the Dev, the games are meaningless.  Its the
challenge that makes them happy.  However... the challenge of making a good
proper working GUI - is beyond them... and does nothing for them.

 The few Devs or people that MIGHT want to work on the problems Wont... simply
because they know that Some Dev probably will just ignore or reject their work.

 So, the games will Suffer as a result.


 Edit:

  I can understand why a Dev would have a hard time taking on a proper revamp
of the entire crappy  GUI.   However, there is no reason why a game can not have
a simply  "  /arcade   "  mode switch.. or similar..  so that a real control can be used...
as a temporary solution Until a proper working GUI can be designed and programmed.
RandyT:

--- Quote from: Xiaou2 on October 10, 2009, 01:59:00 am --- If you have the recalibrate ON  (correct behavior) , and no calibration is taking place
regularly... it probably messes up the games input.    Thus, since they believe nobody
will have, build or buy a proper controller... they Disabled the support.

--- End quote ---

I'm going to play Sherlock Holmes for a moment, mainly because I don't have a real board to test it with.  I have a strong feeling that the game doesn't care about the calibration pulse.  The main thing that makes me think that is the fact that the default / start orientation of the player seems to be different on different screens.  This would mean that a calibration pulse must occur at some point to align it with the control, but that fact cannot change the fact that the user must be able to turn the player in order for it to happen.  There's really no value in coding timeouts, or other nonsense in a game, that would ultimately do little more than prevent the game from being playable at all, should there be a problem with that part.

I tend to think that the calibration bit is simply ignored.  Anything else would probably mean a major alteration of the input system, just to make it run at all....not that an analog control doesn't fall into that same category :P.

I don't want to be hard on the Devs.  Without the tireless efforts of those folks, we'd be at the mercy of even worse ports of these titles.  It just seems like it's one more of those "contradictory to the stated goals" types of things that unfortunately pop up on occasion. 

RandyT
Xiaou2:
The game does count the pulses on the encoder disc.  However, if one or two
of the encoders spokes was bent, broken, or clogged with crud... the games
character would end up facing the wrong way  -  and not be in sync with the
controller.

 This is verified in a picture posted in one of the links in this very thread.  It shows the
test screen, and missed spots in the rotation.

 Its hard to know exactly if the programmer actually put logic into the game to
cause an error if no calibration was sensed in some time.   Maybe you are correct,
that it does not.

 However... since the Devs decided to change the behavior of the game from
Spinner to Analog joystick, without any other options elsewise,
... they then removed the calibration input.    Both decisions: Mind Blowing.

 What the heck good is a classic arcade game without knowledge, documentation,
and functionality of its originally designed controllers?!

 The entire game is a work of art, and all parts of it are equally valuable.

 A  "Lamborghini"  ,for example... is more than just an "engine".   And, you cant, nor
should not... be forced to drive one with a keyboard.

 So, what we have in Mame here is a Lamborghini with no pedals, no shell, and
no steering wheel.   In replace, there is an analog wheel-chair stick in there.
Such a Disgrace...
Such a Shame..

u_rebelscum:
As one who came up with an analog-joystick-as-the-input hack before one like it was added to mame (aaron's, the one in mame now, is much better, even though he credits me), I can tell you mame currently (partially*) simulates the index quadrature sequence (it's not "a pulse", but a specific on/off sequence of two sensors the game decodes as the index).

The index sequence is used two ways. :
1. On turn on, the stick is not indexed.  No matter what direction the stick is pointing*, the skater always points the same direction (right IIRC).  The first time the index quadrature happens, the skater jumps to the correct direction.  (Initial index)
2. After that, the index sequence seems to correct for up to one missed tooth and one gap (72 teeth = 144 counts per rotation, and the index can correct for 2 out of the 144).  The game know which direction to correct for by the order the index sequence happens.  I assume it can do two per index sequence because there are two gaps in the index wheel.  (constant correction index)  
*Note that the current code in mame only does one count per revolution, however, which is why I say partially.  Mine did the same.

I figured most of this out while trying to add the different inputs (original controller, analog joystick & 8-way joystick) to Mame:Analog+ (and my 720 controller still partially worked  :'().  I didn't reverse the original game code, so I could be off on some details (like exactly how does it know which way to correct).


If no one else does, I'll (e)make a hack so mame can use an original controller when ram-controls comes out with the reproduction of the 720 controller.  


FWIW, official mame never used the index wheel correctly back when it was trying to emulate the controller as a single dial.  Aaron and I discussed the analog joystick simulating inputs vs original controller emulation after he switched; I wasn't happy that the "real" controller input was dropped.  However, since ATT there was zero original controllers for sale for PCs, and millions of analog joystick, and the index wasn't emulated correctly anyway, and most importantly mame's policy is to do only one (mame) input per game input, it was either an input that didn't work for any controller, or the analog joystick simulation.
Navigation
Message Index
Next page
Previous page

Go to full version