Commit Graph

141 Commits

Author SHA1 Message Date
ChillyDoom 3d7934f1a1 - Fixed: Part of Net_CheckLastReceived treated Net_Arbitrator as a node number rather than a player number. 2015-02-09 20:16:57 +00:00
Christoph Oelckers e047902d56 - resanitation of FDynamicBuffer::SetData. 2015-02-08 17:58:24 +01:00
Christoph Oelckers ae78aeaacb - if this buffer is freed, the pointer referring to it must also be deleted. 2015-02-08 11:48:41 +01:00
Christoph Oelckers 45117b2603 Merge branch 'codesanity' of https://github.com/ZzZombo/zdoom
Conflicts:
	src/info.h
2015-02-08 11:47:49 +01:00
Christoph Oelckers 4959932df7 Merge branch 'changemap2-fix' of https://github.com/Edward850/zdoom 2015-02-08 09:07:12 +01:00
ZzZombo 2c06987f67 - Fixed the sanity commit. 2015-02-08 14:35:45 +08:00
Christoph Oelckers 7789975b6c - reverted a few of Zzombo's changes. 2015-02-07 17:02:46 +01:00
Christoph Oelckers 4e2763e5fa Merge branch 'master' of https://github.com/ZzZombo/zdoom-modified 2015-02-07 16:45:44 +01:00
ZzZombo 322742d4b1 - Fixed various instances of unused variables, accessing arrays out of bounds, initialization of non-primitive members in constructor's body, dead code, passing parameters by value instead of reference, usage of uninitialized variables, as reported by cppcheck. 2015-02-07 23:35:23 +08:00
Christoph Oelckers 6801d0faec Merge branch 'pause' of https://github.com/Edward850/zdoom 2015-02-07 13:03:33 +01:00
Edward Richardson cbb066f1fb Keep gameticker running to let the thread sleep 2015-02-05 22:43:42 +13:00
Edward Richardson b2fbeb24c4 DEM_CHANGEMAP2 wasn't properly skipped 2015-01-24 16:09:15 +13:00
Randy Heit 86986446a5 Fixed: TicSpecial could run out of space when writing data
- Fixed: TicSpecial::CheckSpace() never thought it ran out of space due to
  unsigned math.
- Fixed: TicSpecial::GetMoreSpace() assumed only relatively small amounts
  of data would be written at a time so made no effort to ensure it
  actually got enough space. This assumption could be violated by writing
  a very long string, which can happen when replicating a string cvar.
2015-01-01 17:57:09 -06:00
Christoph Oelckers 4384811745 Merge branch 'NetFix' of https://github.com/ChillyDoom/zdoom 2014-12-24 10:45:38 +01:00
Edward Richardson b24f173d03 Allow players to be popped in packet-server 2014-12-23 22:20:39 +13:00
ChillyDoom f7405a1d24 - Changed two loops from using doomcom.numnodes back to MAXPLAYERS as nodeingame[i] is not necessarily the same as playeringame[playerfornode[i]]. 2014-12-22 20:48:27 +00:00
Edward Richardson 16e0f79fd7 Fix alt-tabbed desync with demos
- Fixed: Stop the game timer if the window looses focus
2014-11-11 02:18:52 +13:00
ChillyDoom 8532b52ffb - Bots are no longer removed when the net arbitrator disconnects. 2014-11-08 17:38:56 +00:00
ChillyDoom a613da43dd - Bot movement is now calculated locally. 2014-11-08 17:38:09 +00:00
ChillyDoom 1b7c07df65 - Fixed: Bots added by different setting controllers could be assigned the same player number. 2014-10-25 14:58:10 +01:00
Christoph Oelckers 20b740d5fc Merge branch 'DBot' of https://github.com/ChillyDoom/zdoom 2014-10-21 14:20:01 +02:00
ChillyDoom db323643f8 - Renamed FBot to DBot and made it inherit from DThinker.
- Fixed: Bots added by players other than the net arbitrator did not have their skill set.
2014-10-14 19:57:11 +01:00
Edward Richardson 29cf6b0daa Fixed PredictionActor size and typo 2014-10-14 12:54:03 +13:00
ChillyDoom 83d84eaae9 - Moved bot related variables from player_t into a new FBot class. 2014-10-13 18:40:25 +01:00
Edward Richardson c9d603d1c3 Unreliable isn't exactly the problem 2014-10-05 18:52:56 +13:00
Edward Richardson 0c1fde81ad Remove PacketServer auto select
PacketServer has the tendency to amplify netgame latency times, so it
really shouldn't be auto selected.
Added a notice in case it's used.
2014-10-05 18:32:32 +13:00
Edward Richardson ae71f94ed2 Remove disconnecting players safely
Players who were disconnecting would be removed outside of the playsims
control, causing problems with sector lists.
2014-10-05 18:04:11 +13:00
Edward Richardson e25b91d5a1 Cleanup 2014-09-26 16:11:52 +12:00
Edward Richardson 84cf799803 Final changes to balancing 2014-09-26 15:48:46 +12:00
Edward Richardson 8f82243f4c Don't balance if already the slowest node
- Network balancing shouldn't be run if already too far behind
- Don't save network settings
- Added net_fakelatency for debug builds
2014-09-26 15:48:45 +12:00
Edward Richardson ad0a1ad865 Readded -extratic for compatibility with launchers 2014-09-26 15:48:45 +12:00
Edward Richardson 530f474673 Shifted netmode reporting for guests
- The netmode is now reported after a guest has received it.
- Minor code cleanup
2014-09-26 15:48:44 +12:00
Edward Richardson c661da2995 Stop negative tic counts from corrupting messages 2014-09-26 15:48:44 +12:00
Edward Richardson 4db8b3e421 Made delay updates less erratic 2014-09-26 15:48:44 +12:00
Edward Richardson c585eee82b Don't need to MAX() mode 2 2014-09-26 15:48:43 +12:00
Edward Richardson 78f8bf19d2 Extratics mode 3 didn't work well
- Removed Extratics mode 3
- Fixed a typo
2014-09-26 15:48:43 +12:00
Edward Richardson ded3bc73be New extratic method
- Extratic changed to server var, that can be changed at any time
(net_extratic)
- Added net_extratic 2 which resends all unconfirmed tics
- Corrected bad variable typo in delay reporting
2014-09-26 15:48:43 +12:00
Edward Richardson 97586c317e Further refinements to network balancing
- Added delay times of all players to the scoreboard
- Removed balancing from packet-server (tried it, didn't work)
- Calculations remove an extra tic to account for possible bias
2014-09-26 15:48:42 +12:00
Edward Richardson 542b8a7171 Added network load balancing
- Guests can now attempt to match latency with the arbitrator.
(net_loadbalance)
- Added althud feature to show arbitrator and local latency.
(hud_showlag 1 is on for netgames, 2 is always on)
2014-09-26 15:48:42 +12:00
Edward Richardson 6af441c4d7 Dup frames shouldn't adapt.
Adapting during a dup frame caused jittery network performance
(especially when using high dup values).
The demoplayback check also didn't need to be there anyway.
2014-07-29 11:09:46 +12:00
Edward Richardson f99a84b498 Changes to maketic/menu/console updates
- Console and Menu will now update cleanly during stalls.
- Moved net adaption so uncapped framerate will always use it.
2014-07-17 11:29:30 +12:00
Braden Obrzut 2020769967 - Fixed: Player turned into a zombie if exiting telefragged in buddha mode.
- Fixed: Players could drop their inventory after dying.
2014-07-15 20:16:28 -04:00
Christoph Oelckers cfef894867 This can be done better... 2014-05-18 09:41:13 +02:00
Edward Richardson 26b1abe3da Fix netgame arbitration with long map lump names 2014-05-18 18:38:54 +12:00
Edward Richardson d3dcc04666 Fix nettic run-out at end of demo playback 2014-05-17 00:36:43 +12:00
Christoph Oelckers 24886b6734 - removed the last static character arrays from FLevelLocals. 2014-05-13 23:16:13 +02:00
Edward Richardson 90e9937b71 Stop NetUpdate from corrupting demo playback 2014-05-05 22:47:48 +12:00
Edward Richardson 455145d611 Stall testing for interpolation
Uncapped framerate never triggered the stall detection code, as it never
tried to process a frame to start with.
2014-01-02 00:04:32 +13:00
Edward Richardson 7045f195f3 Removed excess value from stall debug output
The debug output for a stalled Arbitrator had an excess Net_Arbitrator
value, bumping the gametic+counts value off the output.
2013-12-02 06:23:22 +13:00
Edward Richardson a967b05290 Improvements to restoring stalled netgames
- The waiting message is now always cleared, regardless if it needed to
be in the first place. It's a rather simple for-loop so I doubt it
matters.
- Nodes are also cleared from the list if they catch up while other
nodes are still behind.
- "lastglobalrecvtime" is now bumped after the waiting loop if a tic was
successful, rather then bumping it every time a packet was received. It
appears that you can receive a packet before the game knows it stalled,
thus stalling it anyway.
- Instead of comparing the nettics to the local node, all nodes are
tested against gametic+counts (the real reason why the game has
stopped).
- More then one node can be marked as late at any one time.
- In a packet-server game, the arbitrator is now assumed slow, rather
then testing it. There is no point, seeing as we already know the game
has stalled because of it.
2013-11-11 20:42:54 +13:00