commit ccacceb16a184f00ecd384eede64ca9c4fab08a0
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 14:05:59 2019 +0200
NetEntityEventManager checks the length of the event data (and logs an error if it's too long) before checking if there's still room to keep writing events in the packet. Checking the available room first could lead to situations where an excessively large event can't fit to any packet, "soft-locking" the EventManager without any error messages.
commit 5ac8259372aa900adc724aa4da1fd81af41ca195
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 13:41:52 2019 +0200
Don't display disabled limbs on sonar (i.e. severed limbs that have "faded out")
commit 5f84df73ad86be96f3678c450351b3905e7317a4
Merge: b981f1635 dc429d6c4
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 13:41:16 2019 +0200
Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
commit b981f163575b2bfc9a83b9925c94eca19b9d4554
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 13:36:19 2019 +0200
Multiplayer campaign fixes:
- Server uses a different temp folder to decompress save/sub files into than the clients. Should fix files occasionally getting corrupted and exceptions when trying to read the files when hosting a server from the main executable.
- Some additional debug logging.
- Use the base names of the adjacent locations as level seeds (i.e. "Vorta" instead of "Vorta Outpost"). The levels should not change when the type (and full name) of the location changes.
commit 42c5d18df77fc7acd5873d8e25f20bdd31b1ed76
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 13:31:06 2019 +0200
Don't transfer files through the network when sending them to the owner of the server (i.e. a client hosting directly from the main executable), but simply tell the client where the file is located.
commit dc429d6c450f4893fe29c51d3c830527e587a871
Author: Daniel Asteljoki <daniel.asteljoki@gmail.com>
Date: Mon Mar 25 13:30:26 2019 +0200
Added labels next to periscopes in Humpback and Dugong
commit 789f02a87a2917dd2ae378f136cbe8dd3236c60d
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 13:29:29 2019 +0200
If loading a submarine fails, wait a bit and retry up to 4 times. Fixes loading occasionally failing when running multiple instances of the game from the same directory.
commit be9ea3a58832992b6226917117247e1bf1efeff9
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 11:03:36 2019 +0200
Fixed a bunch of disconnection messages being in an incorrect format & DisconnectUnauthClient not getting the messages from the xml
commit c6f744b4d6b3520720010f5cd4f22a25b42bfc8b
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Mon Mar 25 10:43:10 2019 +0200
Log entity event errors into server logs when verbose logging is enabled
commit f9e8100140d99d30db551c16523f04cf042fb107
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 20:37:23 2019 +0200
Automatically grab adjacent ladders when the top/bottom of the current ladder is reached. Makes moving through docking ports a little less confusing. Closes#1337
commit 7ad697036299c3dae0145f89dc7e1f4fec22953d
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 20:11:57 2019 +0200
Fixed windows clients being unable to start a campaign in servers running on Linux. Caused by submarine paths not matching because the clients would use backslash in the filepath while Linux uses a slash. The submarine selection logic also had an additional issue: the clients would assume the submarine is in the default Submarines folder, even though the server may actually store them somewhere else. Now the client communicates the selected sub to the server by sending the name and MD5 hash instead of the path, so mismatching paths shouldn't cause problems anymore. Closes#1332
commit 483f2ad4fd9d91b9763d25df592a899cdf39ba67
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 19:19:01 2019 +0200
Instead of making coilgun bolts continuously deteriorate to give them a lifetime of 5 seconds, simply create a delayed status effect that removes them after 5 seconds of being launched.
commit 00b8d48d4d1d933e76a6c0d7df5320c50dc0a07d
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 19:16:40 2019 +0200
Wait at least 0.15 seconds before creating a new condition update event for an item. Some rapidly deteriorating items (e.g. coilgun bolt, faraday artifacts) would otherwise cause new events to be created at an excessively high rate.
commit 84e6948a4898dd040b2a84eb5f1ad97c20dfc69f
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 19:14:58 2019 +0200
Server can send multiple network event packets per update if there's too many events to fit in one packet (up to 4 packets per update).
commit 40797e91d67f965ac6d292367fef5386214abbdb
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 17:34:49 2019 +0200
NetEntityEvent changes:
- Don't restrict the number of events per message, but instead write as many events as the packet can fit (up to a maximum of 1024 bytes to leave some space for other types of data (event IDs, chat messages and such)).
- Decrease the delay after which events can be resent (RTT * 1.5 -> RTT).
commit bfefbb5d7da3ce6a5fe9cb7ff733ec5df37a8a15
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 14:31:03 2019 +0200
Fixed FixDurationLowSkill & FixDurationHighSkill parameters in Repairable being case-sensitive, causing almost none of the xml values to be used. + Moved client-specific repairable methods to the client project, and server-specific to the server project.
commit 311f67c6c6b8d2cd9f4f4ca820e42316938c4f17
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 14:09:10 2019 +0200
Fixed "trying to add a dead character to crewmanager" errors when attempting to revive a character killed by some other affliction than internal damage, bleeding or burns. Closes#1341
commit 7b471b565d49a165ef54357fe6d165bf5df6522b
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sun Mar 24 13:49:53 2019 +0200
Don't apply smoothing to client cursor positions server-side
commit f6a67ca31e98a353bde591789bb42a2f84d1bcc1
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sat Mar 23 22:29:01 2019 +0200
Nuclear shells and nuclear depth charges are removed after they've exploded. Closes#1316
commit 2d7b7b9643d3640f784ba5ab8e84caf55abad6b9
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Sat Mar 23 22:28:26 2019 +0200
Option to configure when afflictions become visible with the health scanner. Closes#1310
commit ece6ead54c021d084f406f4f99daa5a0a7ef4b19
Author: Regalis11 <poe.regalis@gmail.com>
Date: Fri Mar 22 21:52:56 2019 +0200
v0.8.9.7
commit c10dd821ca1a89b4ae62046cf8e558589ff8e6af
Author: Regalis11 <poe.regalis@gmail.com>
Date: Fri Mar 22 21:00:02 2019 +0200
Fixed release builds crashing due to simulatedlatency etc commands not existing in release builds
commit dee0dded80cbbf30d484232b6706dd705a577eb7
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Fri Mar 22 15:24:44 2019 +0200
Fixed nullref exception if a client disconnects while netstats is enabled
commit c45d5bf0c5a4a68200c9eca461cd04090a5de23a
Author: Joonas Rikkonen <poe.regalis@gmail.com>
Date: Fri Mar 22 15:24:26 2019 +0200
Togglehud, toggleupperhud and togglecharacternames don't require a permission to use, made simulatedlatency, simulatedloss and simulatedduplicateschange usable to clients
commit cec1ac6bccac058bc12ddf18c8e060a7a47c9301
Merge: 411cd9726 1473f77ba
Author: itchyOwl <lauri.harkanen@gmail.com>
Date: Fri Mar 22 14:01:58 2019 +0200
Merge branch 'dev' into enemy-ai
commit 411cd9726979668764eea782b515c7510ec4f5a8
Author: itchyOwl <lauri.harkanen@gmail.com>
Date: Fri Mar 22 14:01:09 2019 +0200
If the target has changed, re-evaluate the attacking limb. Fixes Hammerhead getting stuck next to the sub, because it treats the claw as the attacking limb when targeting characters inside the sub. It should use the head, because it has a wall target.
commit 2522bec262f9cb1dea9df75e1d2c22307be5254c
Author: itchyOwl <lauri.harkanen@gmail.com>
Date: Fri Mar 22 13:58:18 2019 +0200
Enemy ai/steering fixes:
- Store both sim and world positions. Offset the simposition with the subposition and use it for steering. Fixes enemy indoorsteering, which was broken.
- Use head or torso for steering instead of always using the main limb. Fixes characters like Mudraptor overshooting their targets badly.
commit c667ff9e4edf8af8f95278fbad42e0c8dd37d84c
Author: itchyOwl <lauri.harkanen@gmail.com>
Date: Fri Mar 22 13:54:21 2019 +0200
Improve the ai debug graphics.
commit 4c6c13e07e43a4e3ce2a11dfc4064961c442044a
Author: itchyOwl <lauri.harkanen@gmail.com>
Date: Thu Mar 21 17:11:17 2019 +0200
Refactor, fix and adjust the enemy targeting logic:
- Change the logic for fading the memories
- When attacking a wall target, set it as the currently selected ai target so that we adjust the right memory
- Significantly reduce the value of character targets that are not in the same submarine
- In aggressive boarding, double the priority of walls when outside. Set the priority to 0 when inside. Reduce the attractiveness of doors, but still keep the values high.
- Redefine priorities for Mudraptor and Crawler (wip)
commit b085a95cff6bcf5e3f13e90dd1b71ac15e5ec1ab
Author: itchyOwl <lauri.harkanen@gmail.com>
Date: Thu Mar 21 13:16:22 2019 +0200
Allow enemies to target walls by decision (not only when they happen to be on their way). TODO: target only outer walls and only when outside of the sub.