twinaphex
9fda2bdebd
Add TODO/FIXME comments
2020-06-04 14:09:45 +02:00
twinaphex
65534f0286
(netplay frontend) This variable doesn't need to be so big
2020-05-23 03:09:46 +02:00
twinaphex
0fced84f93
(Netplay) Lower announce rate
2020-05-20 23:01:04 +02:00
twinaphex
03ea12d334
Move discord files to network/
2020-05-20 15:27:27 +02:00
twinaphex
3ad4b057f9
Go back to 1.8.4 netcode
2020-05-10 01:02:47 +02:00
twinaphex
0c1568c4ab
Merge netplay_frontend.c into retroarch.c -
...
This should be the last file we have to roll into retroarch.c
2020-03-01 18:02:55 +01:00
twinaphex
182afe9561
Style nit
2020-03-01 17:30:42 +01:00
twinaphex
177d2a5903
(netplay_frontend.c) Settings cleanups
2020-03-01 16:24:06 +01:00
twinaphex
29d954bab2
Cleanups
2020-03-01 16:08:49 +01:00
twinaphex
69ffcf5648
(netplay_frontend.c) Simplify code
2020-03-01 15:58:17 +01:00
twinaphex
360fdfedbc
(netplay_frontend.c) Cleanups
2020-03-01 15:33:17 +01:00
twinaphex
9dcc941ec5
Reduce get_time_usec calls
2020-02-29 12:51:42 +01:00
twinaphex
74547c0a81
(netplay) Cleanups
2020-02-27 12:02:55 +01:00
twinaphex
85c672a0f6
Settings pointer cleanups
2020-02-19 20:57:02 +01:00
twinaphex
4c95d1af4e
(network) Turn some functions into static functions
2020-02-12 20:06:21 +01:00
twinaphex
013117318c
(network) Get rid of all the settings pointer grabbing
2020-02-12 20:01:48 +01:00
twinaphex
1fafdb2843
Style nits
2020-02-10 13:18:27 +01:00
twinaphex
ac72ba5af8
Revert "(Netplay) Cleanups"
...
This reverts commit 646eba5a92
.
2020-01-28 19:15:05 +01:00
twinaphex
846d9ed391
Revert "Cleanups"
...
This reverts commit 399f039b9e
.
2020-01-28 19:14:37 +01:00
twinaphex
21381ff990
Revert "(netplay_frontend.c) Cleanups"
...
This reverts commit d0a2315098
.
2020-01-28 19:14:22 +01:00
twinaphex
d0a2315098
(netplay_frontend.c) Cleanups
2020-01-28 15:42:55 +01:00
twinaphex
399f039b9e
Cleanups
2020-01-28 15:14:29 +01:00
twinaphex
646eba5a92
(Netplay) Cleanups
2020-01-28 14:56:05 +01:00
twinaphex
4d36f0d356
Remove rarch_get_cpu_architecture_string - don't have two
...
functions that do more or less the same thing
2020-01-27 22:51:20 +01:00
twinaphex
eb4e365820
(libretro-common) Cleanups
2020-01-27 17:00:18 +01:00
twinaphex
e8bc606c20
Move netplay_get_architecture to frontend_driver.c
2020-01-27 16:39:36 +01:00
twinaphex
9f9191819d
(netplay_frontend.c) Cleanups
2020-01-27 16:27:51 +01:00
twinaphex
fa328c1590
(Netplay) Cleanups
2020-01-02 17:07:03 +01:00
twinaphex
fc4a5ad691
Revert "Configurable lobby URL"
...
This reverts commit cc0b7c42d1
.
2020-01-02 15:30:50 +01:00
twinaphex
cc0b7c42d1
Configurable lobby URL
2020-01-02 10:15:21 +01:00
twinaphex
091c5f6092
Should fix netplay for cores that use the new bitmask code
2019-08-16 16:29:18 +02:00
twinaphex
8308c41277
(netplay frontend) Cleanup this code - netplay_data should be
...
properly encapsulated
2019-08-10 17:25:39 +02:00
orbea
e13ec54dc6
Fix --disable-overlay.
2019-07-21 10:26:42 -07:00
twinaphex
5f2e3c283d
(netplay)/network) Style nits/cleanups
2019-06-26 07:13:50 +02:00
radius
34be5f399c
no need to do nat traversal if using relay
2019-05-26 22:39:46 +02:00
Gregor Richards
c0ed989738
Fix stall-out causing total disconnection with >2 players
2019-02-17 21:39:50 -05:00
Twinaphex
9b8efbc712
Merge pull request #8284 from fr500/master
...
[fix] potential crash when username is empty and discord is disabled
2019-02-14 06:46:46 +01:00
radius
7107175b93
[fix] potential crash when username is empty and discord is disabled
2019-02-14 00:31:02 -05:00
twinaphex
386657a366
(menu widgets backport) Re-commit task queue changes
2019-02-08 08:00:32 +01:00
twinaphex
7022786f34
Revert parts of menu_widgets that were causing breakage, but leave
...
all the hooks in so we can add them back piece by piece again
2019-02-08 07:26:43 +01:00
radius
671e90a415
[discord] party & ask to join refinements
2019-02-06 22:45:05 -05:00
natinusala
c20ab3864d
First version of menu widgets (gl only)
2019-02-06 20:48:24 +01:00
radius
79d280e9c3
[discord] use discord username if available
2019-02-02 14:26:14 -05:00
twinaphex
b13777e9fc
Header cleanups
2019-01-20 03:16:58 +01:00
radius
9d0472c3ac
[netplay] finding content works now
...
cleanup
2019-01-14 18:58:56 -05:00
radius
f0b8d2d12e
[netplay] support subsystem type netplay lobbies
2019-01-14 18:58:56 -05:00
orbea
bfc366decc
Squeeze extra blank lines with cat(1).
...
Example:
find . -type f -iname '*.c' | while read -r i; do
cat -s "$i" > "$i.new"
mv "$i.new" "$i"
done
2019-01-08 11:04:58 -08:00
twinaphex
93346fed6b
Buildfix
2019-01-08 17:53:58 +01:00
radius
58e192881a
[netplay] announce subsystems
2019-01-07 23:30:48 -05:00
radius
b8f20e60c2
[discord] rewrite secret/join logic to use a queried lobby name
2019-01-06 19:04:08 -05:00
orbea
d557ab09ce
Fix a gcc -Wformat= warning with C89_BUILD.
...
network/netplay/netplay_frontend.c: In function ‘netplay_announce_cb’:
network/netplay/netplay_frontend.c:734:32: warning: format ‘%X’ expects argument of type ‘unsigned int *’, but argument 3 has type ‘int *’ [-Wformat=]
sscanf(val, "%08X", &host_room->gamecrc);
~~~^ ~~~~~~~~~~~~~~~~~~~
%08X
2018-12-16 19:59:53 -08:00
twinaphex
ff4fa3be7a
Fix more string is too small warnings
2018-11-25 18:49:04 +01:00
twinaphex
a662b62d19
Use runloop_get_libretro_system_info in more places - clean some code up
2018-10-30 17:11:07 +01:00
radius
fed74b9e70
[discord] populate data correctly
2018-09-12 01:45:28 -05:00
radius
4d0729187f
[discord] start getting ready for ask-to-join functionality, cleanup some of the mess
2018-09-12 01:45:27 -05:00
twinaphex
58472cb696
Silence some warnings
2018-09-12 04:09:19 +02:00
Brad Parker
7a76c6a4da
netplay: save lobby details received back from server after first announcement
2018-09-10 21:01:46 -04:00
Gregor Richards
2c07561fc1
Fix compatibility between netplay and runahead
...
Unsurprisingly, netplay and runahead are wildly incompatible; both rely
on internal rewinding, without communicating this fact to each other.
Somewhat more surprisingly, netplay already has all the infrastructure
for negative input latency, as it's structurally the same as receiving
delayed input from a peer. This patch makes the two features
"compatible" by disabling runahead per se when netplay is active, and
using runahead's configuration to adjust netplay's own input latency
feature, which is now allowed to be negative. The effect is mostly the
same (modulo the second core support), and it doesn't confuse netplay
peers.
2018-05-30 22:01:02 -04:00
radius
c52fdc469f
remove task_push_http_transfer_raw, encode before sending data to the task
2018-03-16 22:38:21 -05:00
Brad Parker
6fc0cc4645
send selected MITM server to the lobby
2018-02-02 15:48:45 -05:00
twinaphex
6437e4b4a9
remove tons of unreferenced local variables
2018-01-23 05:49:03 +01:00
Gregor Richards
73bd969ac9
Fixes for slave mode with multiple input devices
2018-01-05 14:27:02 -05:00
Gregor Richards
a96eb24247
Support for keyboards over netplay.
2018-01-05 14:27:02 -05:00
Gregor Richards
c01a199493
Netplay input device abstraction, support for mice
...
This abstracts away the details of particular input devices for netplay,
and adds support for mice and (similar) lightguns. Unfortunately, in
practice, no core handles mice or lightguns in a savestate-safe way, so
they need to be used in stateless mode to be reliable, but they do work.
2018-01-05 14:27:02 -05:00
Gregor Richards
8d5a79fc69
Removing long-obsolete now-disfunctional "netplay flip players" feature
2018-01-05 14:27:02 -05:00
Gregor Richards
f7dba84c67
Netplay mode change improvements
...
(1) All mode change code unified, so server mode changes and client mode
changes and announcements go through the same functions
(2) New messages which are translateable and work with multiple input
devices
2018-01-05 14:26:19 -05:00
Gregor Richards
2104ac44d9
Fixed server mode changes.
2018-01-05 14:24:43 -05:00
Gregor Richards
6eaaaef995
Minor bugfixes in input resolution.
2018-01-05 14:24:43 -05:00
Gregor Richards
74901e6161
Whoops, missed one refactor rename.
2018-01-05 14:24:43 -05:00
Gregor Richards
6946ea1bd3
Netplay support for multiple local devices.
2018-01-05 14:24:43 -05:00
Gregor Richards
ed320fd914
Adding and removing players
...
The new input handling makes adding and removing players more
complicated, since data can be present that's not expected from the
connected clients list, or absent that's expected in the list but
actually shouldn't be there.
2018-01-05 14:24:43 -05:00
Gregor Richards
39243a8d40
Configurable sharing mode.
2018-01-05 14:24:43 -05:00
Gregor Richards
abf045ef0e
Made device requests (badly) configurable.
2018-01-05 14:24:43 -05:00
Gregor Richards
fe80c4ce2c
Added real pad sharing modes.
2018-01-05 14:24:43 -05:00
Gregor Richards
e4029b72c1
Rename things back after renaming for refactoring.
2018-01-05 14:24:42 -05:00
Gregor Richards
b897ba4e30
Re-fixed input simulation.
2018-01-05 14:24:42 -05:00
Gregor Richards
8c551f3990
Fixing some counters.
2018-01-05 14:24:42 -05:00
Gregor Richards
ed69916e59
First cut of input changes (not yet working)
2018-01-05 14:24:42 -05:00
Gregor Richards
6d4119690d
First step (not yet compiling) of changing around Netplay input.
2018-01-05 14:24:42 -05:00
radius
7bdd8e945a
show the frontend name and CPU architecture on netplay rooms
2017-12-17 11:51:50 -05:00
gblues
6904101c44
Clean up trailing whitespace
...
== DETAILS
Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
twinaphex
311b786279
Silence Coverity warning
2017-11-27 04:34:45 +01:00
radius
3991f9b316
add frontend name to netplay announce
2017-11-26 13:40:08 -05:00
Gregor Richards
584e12ed37
Fix disconnection not fully deinitializing Netplay.
2017-08-18 14:13:39 -04:00
radius
32525ea0d3
rename MITM with Relay
2017-07-24 20:54:33 -05:00
radius
f7f613a244
android buildfix
2017-07-24 20:13:53 -05:00
radius
6804540635
improve logging
2017-07-24 20:13:52 -05:00
radius
dcd71b403f
add RetroArch version to the netplay announcement
2017-07-24 06:14:34 +02:00
Gregor Richards
fb3c35dc9f
Handle forwarding of netplay state demotions correctly.
...
Netplay state demotions, i.e. changes from playing to spectating or
disconnected states, could cause chain disconnections of all other
clients. This was due to a bug in when MODE change messages were sent.
Clients rely on the server sending all messages in its own order, and as
a consequence, the server typically holds messages for retransmission
until they can be retransmitted at the correct time. MODE messages were
not held, so could be sent early. When they were sent early, this caused
other clients to panic and disconnect.
A smaller but much stupider secondary bug was also fixed, in which the
first connection could be dropped due simply to writing connections[0]
instead of connections[i] somewhere.
2017-06-06 21:35:09 -04:00
twinaphex
449483206f
Revert "New attempt to fix memory leaks of struct retro_system_info"
...
This reverts commit a1d3dd69dd
.
2017-05-30 01:44:49 +02:00
twinaphex
a1d3dd69dd
New attempt to fix memory leaks of struct retro_system_info
...
char variables
2017-05-29 22:24:10 +02:00
Andrés
abd6dcd57f
Merge pull request #4952 from fr500/fixes
...
fix delimiter for mitm connect
2017-05-21 12:13:02 -05:00
radius
a09a1030c0
fix delimiter for mitm connect
2017-05-21 12:04:50 -05:00
twinaphex
aeddb18e31
Rewrite netplay checks
2017-05-21 14:18:10 +02:00
radius
1de95c6413
further refinement of the netplay workflow
2017-05-16 00:18:29 -05:00
radius
a98033f375
make the --start netplay host-- entry context sensitive
2017-05-15 18:58:46 -05:00
twinaphex
42ebe7a7ad
Merge runloop.c and retroarch.c
2017-05-11 09:11:46 +02:00
twinaphex
de80671658
Simplify content_get_crc
2017-05-06 16:41:22 +02:00
twinaphex
e6ab06a701
Move path variables
2017-04-29 00:39:29 +02:00
twinaphex
05e4ec733e
Move uint variables
2017-04-28 21:03:04 +02:00
twinaphex
7bbd20b31d
Move int settings
2017-04-28 19:12:48 +02:00
twinaphex
ed53be7c81
Move all bool settings
2017-04-28 14:11:34 +02:00
twinaphex
3ec5816259
Rewrite RUNLOOP_CTL_SYSTEM_INFO_GET
2017-04-23 16:41:26 +02:00
Gregor Richards
fbb508ab5e
Make rewind compatible with netplay.
...
This commit adds support for temporary desync in netplay. When frontend
features that can't be truly synced, in particular rewind, are used,
netplay is momentarily disabled. As soon as the feature finished, e.g. a
rewind ending, netplay resumes with a state load. For rewind, netplay
peers won't actually experience the effect of rewind, but they will load
the rewound state.
2017-04-18 15:25:58 -04:00
Brad Parker
c12cc8e5be
netplay: change lobby reannounce period to 600 frames
2017-03-07 12:29:51 -05:00
Brad Parker
bb362f307d
netplay: don't advertise over LAN or try to open a port with UPnP if we're using a MITM server
2017-03-06 21:39:03 -05:00
bparker06
ced1dc10c1
Merge pull request #4732 from GregorR/netplay-server-spectator-fix-2-electric-boogaloo
...
Yet another server-is-spectator bug. Don't ever ignore stalls if we're a client
2017-03-06 21:25:18 -05:00
Brad Parker
4f02450bf9
forgot extra storage for NULL byte
2017-03-06 21:10:27 -05:00
Gregor Richards
2f21a3e370
Yet another server-is-spectator bug. Don't ever ignore stalls if we're a
...
client
2017-03-06 20:13:26 -05:00
Brad Parker
d9c78c75f0
fix setting of netplay has_password in lobby announcement
2017-03-06 16:01:45 -05:00
Twinaphex
4b796ae740
Silence warnings
2017-03-06 12:12:00 +01:00
Brad Parker
6a68a01eb9
msvc2005 buildfix
2017-03-05 22:02:55 -05:00
Brad Parker
12a208f75e
merge reannounce bugfix from radius
2017-03-05 15:49:07 -05:00
Brad Parker
c6b1a4bb48
join MITM server when host starts game, if the announcement requested MITM
2017-03-05 14:19:39 -05:00
Brad Parker
8a01dda5d6
send force MITM setting with lobby announcement
2017-03-05 14:19:38 -05:00
Brad Parker
c7c0e1351a
send CRC as hex string
2017-03-05 14:19:37 -05:00
Brad Parker
4f2cdf3a84
populate system info before reading it
2017-03-05 14:19:36 -05:00
Brad Parker
ad6733b519
add full urlencoder and encode lobby announcement POST data
2017-03-05 14:19:36 -05:00
Brad Parker
0d81b2005f
parse new lobby room listing with JSON
2017-03-05 14:19:35 -05:00
twinaphex
c99d83f15c
Update
2017-03-05 20:14:01 +01:00
Brad Parker
fea8a0f780
Don't stall for spectator data when we're not in spectator mode, thanks @GregorR
2017-02-28 11:31:59 -05:00
Twinaphex
fdbdcfee65
Merge pull request #4691 from GregorR/netplay-slave-mode
...
Netplay slave mode
2017-02-26 21:49:21 +01:00
Twinaphex
b7b3b2cb5f
Try to prevent truckload of warnings on iOS
2017-02-26 10:33:03 +01:00
Gregor Richards
e495671563
In spectator mode, we should never be ahead of our peer.
2017-02-22 23:19:22 -05:00
Gregor Richards
e70ee045bf
Initial implementation of Netplay master/slave mode.
2017-02-22 20:34:17 -05:00
Gregor Richards
972b41f803
Fix race condition in NAT traversal task.
2017-02-20 20:16:53 -05:00
Gregor Richards
5f723d1bda
Moving NAT traversal into a task to avoid blocking the UI.
2017-02-20 19:08:31 -05:00
Gregor Richards
816d7786ac
Re-adding the option to start in spectator mode
...
This used to be a configuration option because spectator mode and "net"
mode were incompatible. When the ability to switch between player and
spectator was added, the configuration option was removed, since it was
no longer a mode toggle. This re-adds it, mainly so that I can use it to
implement regression tests.
2017-02-16 19:17:06 -05:00
Gregor Richards
4c1abfaa71
Support for reset in netplay
...
This patch transfers core_reset across netplay. Resets effectively
worked before thanks to check_frames, but this makes resets work even
without check_frames, and in particular should allow resets to force
sync in savestateless cores, bringing them one step closer to actually
being usable by non-experts.
2017-02-15 14:40:37 -05:00
Brad Parker
6d821132f5
msvc buildfix
2017-02-14 02:37:25 +00:00
Gregor Richards
aa77d688ec
Make announcing netplay on the public lobby optional.
2017-02-06 13:45:58 -05:00
Gregor Richards
1148b8230c
Fixes to stateless+input latency.
2017-02-01 22:54:03 -05:00
Gregor Richards
2ea3936d16
Renaming input_ptr/input_frame_count back to self_.
2017-02-01 22:54:03 -05:00
Gregor Richards
55157e934d
input_latency_frames is now configurable and has a range
2017-02-01 22:54:03 -05:00
Gregor Richards
561eb42c84
Don't enable input latency if we're not connected
2017-02-01 22:54:03 -05:00
Gregor Richards
c4cb94db19
New approach to input latency
2017-02-01 22:54:03 -05:00
radius
cfb882f4fc
add support for no content cores
2017-01-28 22:12:34 -05:00
Gregor Richards
12e8deedb4
Only disable netplay in deinit_netplay if it was actually on
2017-01-25 22:08:05 -05:00
Gregor Richards
263470a66c
Set netplay_enabled to false during deinit_netplay
...
This simply prevents the odd behavior of netplay automatically
restarting, or trying to restart, when you load a new game.
2017-01-25 21:23:55 -05:00
fr500
29a1d504d7
allow different server ports again
2017-01-25 17:48:43 -05:00
fr500
af14da93d5
fix whitespace
2017-01-25 17:43:56 -05:00
fr500
c097c2062e
fix when port is 0
2017-01-25 17:43:17 -05:00
twinaphex
178d959cad
Fix C89_BUILD
2017-01-22 21:24:57 +01:00
Twinaphex
3ff158b907
Merge pull request #4436 from fr500/lobby
...
Basic lobby system (don't merge, just for tracking)
2017-01-22 21:08:43 +01:00
radius
a0e6a24f38
use deferred netplay init
2017-01-22 13:07:30 -05:00
radius
33cc168eb9
allow connecting to lobby port instead of the port in settings
2017-01-22 12:29:29 -05:00
Gregor Richards
addcbb896a
Fixing an incompatibility between stateless mode and the password prompt
...
Previously, the host would time out waiting for the guest to enter a
password, as the timeout was not conditionalized on whether the guest
was actually playing. This fixes that.
2017-01-22 10:43:09 -05:00
twinaphex
96c8ca5a09
Header update #1
2017-01-22 13:40:32 +01:00
radius
0de43b954e
can now connect when starting a game too
2017-01-20 16:04:10 -05:00
radius
dcca2f8131
only announce if host
2017-01-20 14:33:57 -05:00
radius
8a1fb24fe9
update url
2017-01-19 23:21:22 -05:00
radius
930cde21a2
crc is announced now (for cores that don't have needs_fullpath set)
2017-01-19 21:43:46 -05:00
radius
95a2da81e4
start adding ui elements to insert room list into
2017-01-18 22:46:48 -05:00
radius
72cdb390cb
reannounce roughly every minute
2017-01-18 21:31:02 -05:00
radius
ca2c2a8ce7
separate this
2017-01-18 21:12:01 -05:00
radius
f2beb49fd8
Announce netplay games to lobby.libretro.com
2017-01-16 22:24:35 -05:00
Gregor Richards
20c0de352c
Fix to the netplay_is_alive function when server isn't playing
...
Fixes a bug by which very strange things would happen if the server went
to spectator mode with exactly one connected client.
2017-01-02 20:03:00 -05:00
Gregor Richards
cd281d5757
Reverse catch-up, i.e., server-demanded stalling
...
Previously, if two clients were connected to the same server and one of
them was ahead of the server, the only way to rectify that situation was
for the client to get so far ahead that it stalled, as the server could
only catch up with an ahead client if all clients were ahead. That's
unrealistic. This gives the server the alternate option of demanding
that a client stall. This keeps things nicely in line even with >2
players.
2016-12-24 15:25:03 -05:00
twinaphex
77e5cdbfde
Revert "Rename runloop_msg_queue_push to video_driver_msg_queue_push"
...
This reverts commit ad7386913c
.
2016-12-22 23:36:11 +01:00
twinaphex
ad7386913c
Rename runloop_msg_queue_push to video_driver_msg_queue_push
...
and move code to video_driver.c
2016-12-22 13:15:02 +01:00
Gregor Richards
f0bb0a77f8
Make netplay no longer cache passwords
...
Netplay now always loads passwords from the configuration, so that
passwords can be changed mid-session.
2016-12-21 09:51:50 -05:00
Gregor Richards
7bb26eb5c5
Fix some minor checked-return bugs
...
Should resolve Coverity reports 158862, 158861, 158860.
158863 is spurious but I have no idea how to convince Coverity of that.
2016-12-20 19:16:31 -05:00
Twinaphex
1d36c5effa
Silence warnings - remove unused variables
2016-12-19 23:19:59 +01:00
Alcaro
fc1c83d8c0
Shut up false positive warning
2016-12-19 16:38:55 +01:00
Gregor Richards
11a3063fc6
Forgot the other half of that last bugfix
2016-12-18 20:08:21 -05:00
Gregor Richards
8f8e6dfc5f
Unset the netplay callbacks when we deinit netplay
...
This is a bugfix to master that hadn't migrated to my branch.
2016-12-18 19:54:01 -05:00
Gregor Richards
677ffa9ebd
Support different forms of compression from different clients.
2016-12-18 19:28:44 -05:00
Gregor Richards
e79f30604f
Better stall timing
...
We now stall not until we've reached parity (which makes no sense since
we expect latency), but only until we're not likely to stall again.
2016-12-18 19:28:44 -05:00
Gregor Richards
04266cf4f7
Run synchronization even when stalled
...
Previously, we could be stalled by one player but still reading data
from another, which would wedge the client because we would never act
upon the newly-read data. Now we act upon data even if we're stalled.
Fixes bugs in initial connection with high latency.
2016-12-18 19:28:44 -05:00
Gregor Richards
1fa60b396f
Improvements to the communication of netplay pausing.
2016-12-18 19:28:43 -05:00
Gregor Richards
f7f6590156
Goodbye delay_frames! stateless_mode is the new delay_frames=0
2016-12-18 19:28:43 -05:00
Gregor Richards
45d732a014
New sync system
...
The idea:
* Use a fixed number of delay_frames (eventually to be fixed at 120,
currently still uses the config variable, 0 will still be an option)
* Determine how long it takes to simulate a frame.
* Stall only if resimulating the intervening frames would be
sufficiently annoying (currently fixed at three frames worth of
time)
Because clients always try to catch up, the actual frame delay works out
automatically to be minimally zero and maximally the latency. If one
client is underpowered but the other is fine, the powerful one will
automatically take up the slack. Seems like the most reasonable system.
2016-12-18 19:28:43 -05:00
Gregor Richards
6890456ac0
Updated error messages and fixed some stall-related disconnected-client
...
bugs.
2016-12-18 19:28:43 -05:00
Gregor Richards
bade067d9a
Support for catching up if the netplay peer is ahead of us.
2016-12-18 19:28:43 -05:00
Gregor Richards
70d04ec6a5
Apparently the frontend gets really pissy if it can't check the flip state
2016-12-18 19:28:43 -05:00
Gregor Richards
da7efcb939
Cleaning up netplay headers.
2016-12-18 19:28:43 -05:00
Gregor Richards
9c6ac2b934
Only the server can flip users.
2016-12-18 19:28:43 -05:00
Gregor Richards
03415c261d
Added netplay spectator password separate from play password
2016-12-18 19:28:43 -05:00
Gregor Richards
694b7a9723
Don't allow more players to join than are actually being polled
2016-12-18 19:28:43 -05:00
Gregor Richards
7ad4e3f115
Per-connection stalling
2016-12-18 19:28:43 -05:00
Gregor Richards
8c59c7dd77
Starting to refactor: Separating frontend stuff into netplay_frontend.c
2016-12-18 19:28:43 -05:00