(Netplay) Explaining input sharing modes

Decided to write about this since there is no good documentation about these settings.

Digital

“No preference” defaults to Share.

  • Share: Inputs are combined together using bitwise OR. Example: The first player jumps while the second player attacks within the same frame will result in a jump attack.
  • Grapple: Inputs are combined together using bitwise XOR. Example: Two players pressing jump within the same frame will cancel each other out (no jump will be performed).
  • Vote: Requires an absolute majority for the input to register. Example: Two out of three players jump within a frame, the jump will be performed, while two out of four players jump within a frame, the jump will NOT be performed.

Analog

“No preference” defaults to Max.

  • Max: The player with the biggest analog motion has his input registered, while inputs from other players are ignored.
  • Average: Analog motions are added together from all players and then divided by the number of players, this value is then registered as the input.

oh interesting. Thanks for the explanation. Would it make sense to add that to the libretro docs for netplay, as well?

Probably. These settings are pretty cryptic within the menu and I’d to go through the source code to figure what they actually did.

1 Like