Joonas Rikkonen
c2d0fa4e03
Fixed non-continuous RegEx components only sending out a signal once
2018-11-15 21:32:11 +02:00
Joonas Rikkonen
c4c2967065
Option to make RegEx component only send a signal when it receives a signal (not continuously according to the last received signal), added FalseOutput property to RegEx component. Closes #846 , Closes #911
2018-11-15 20:52:15 +02:00
Joonas Rikkonen
df202d5a18
Melee weapons can only hit one character per swing (makes stun batons & medical syringes less OP). Closes #814 , closes #865
2018-11-15 20:45:04 +02:00
Joonas Rikkonen
cea5d5b074
Fixed client-side docking ports creating duplicate bodies on doors, causing characters to collide with an invisible door when trying to move between docked subs (until the server forces them through it). + TODO note about bugged hull finding logic in UpdateNetPlayerPosition!
2018-11-10 20:21:43 +02:00
Joonas Rikkonen
481f51f3d8
Docking ports automatically stretch the hulls between them to cover the area between the docked subs. Otherwise there may be areas uncovered by hulls if the docking port is positioned slightly outside the extents of the submarine's hulls, causing characters to implode or get thrown back when they try to pass from sub to another.
2018-11-10 18:34:18 +02:00
Joonas Rikkonen
33d971f5d0
Fixed OnBroken & OnImpact statuseffects not being applied client-side
2018-10-29 20:38:43 +02:00
Joonas Rikkonen
2b1dacbf2f
The ActionType of an Attack's statuseffect is considered "OnEating" instead of "OnUse" if the target is dead. Prevents husks from gaining health by attacking corpses (which allowed players to huskify themselves on purpose and stay alive indefinitely).
2018-10-08 11:23:52 +03:00
Joonas Rikkonen
fec7740378
Fixed a bunch of bugs when dragging characters up ladders (see e0504042). The dragging logic didn't take into account that the characters are not necessarily in the same sub, which caused the dragged character to launch away at a high speed when climbing from a sub to another (for example when climbing down to the shuttle in Aegir). The pull joint on the target's torso was never disabled, so the character stayed floating mid-air after getting off the ladders.
...
+ Made Limb.pullJoint private. Now it can only be accessed by properties of the Limb, and there's some error checks in place to prevent WorldAnchorB from being set to an invalid value.
2018-09-24 21:19:18 +03:00
Joonas Rikkonen
bf87006bc3
Attempt to fix items dropping client-side when moving them from inventory another ( #558 ).
...
The clients delay applying the received remote state of an inventory they just put an item inside, because otherwise the inventory may revert to an old state if items are moved in rapid succession. I think the problem was that the delay was not applied to the inventory the item is _taken from_, so it was possible that the clients applied an old delayed state even though an item had just been moved out of the inventory. Another problem was that the server didn't create an event for the inventory the item was removed from, so if there were any wrong items in a client-side inventory, they would just be dropped instead of being moved back to the correct inventory.
2018-09-12 15:22:52 +03:00
Joonas Rikkonen
34c721bf89
Hitscan weapons can hit targets outside the sub when firing from the inside and vice versa. Closes #639
2018-09-10 13:56:53 +03:00
Joonas Rikkonen
57c9e5a731
Fixed IndexOutOfRange exceptions when cloning items with requiredItems that aren't present in the xml, + some more exception handling & error logging
2018-09-10 12:06:39 +03:00
Joonas Rikkonen
2b18a1265a
Fixed railguns and depth charge tubes being directly usable by characters (= they could be launched simply by selecting them and left clicking, without the need to use a railgun controller). Closes #754
2018-08-30 10:42:25 +03:00
Joonas Rikkonen
105461beb3
Fixed LightComponents staying active on broken items. Closes #759
2018-08-29 16:45:35 +03:00
Joonas Rikkonen
8d83580b75
Docking port fixes again. Closes #551
...
- Non-saveable entities aren't removed from the linkedTo-list during saving, because that causes gaps to become unlinked with the hulls between docking ports when starting a campaign round.
- Hull rechecks are disabled on docking port gaps, because moving linked subs into place may cause the gaps to become unlinked if they're positioned in a certain way (for example in some subs the hulls between the docking ports end up inside the gap).
- Dockingports only connect the waypoints linked to their gap to each other, instead of every waypoint that happens to be inside the gap.
2018-08-29 13:38:56 +03:00
Joonas Rikkonen
48e14347a3
Fixed projectiles colliding with railguns due to 1e02d74
2018-08-24 14:18:51 +03:00
Joonas Rikkonen
afc2e63b55
Client-side door state prediction fix: the clients wouldn't set the door to the correct state if the predicted state was the same as the door's previous known correct state, even if the latest state sent by the server was different (= a convoluted way of saying that door syncing works correctly now with complex door setups like the ones in SS Odyssey, see #579 ).
2018-08-23 14:57:13 +03:00
Joonas Rikkonen
012245fbaa
Items outside the sub cannot be deattached. Closes #562
2018-08-20 20:42:57 +03:00
Joonas Rikkonen
898e8dfdb1
Added a property for locking connection panels (better than the old hacky way of changing the required item to something else). Locked panels can still be rewired in the sub editor. Closes #679
2018-08-20 20:12:33 +03:00
Joonas Rikkonen
1e02d7406d
Added a collider to railgun (-> cannot go through walls or enemy subs anymore). Closes #444
2018-08-14 15:39:10 +03:00
Joonas Rikkonen
6cb6e26b94
Servers can modify all Editable item properties using ChangeProperty events (not just InGameEditable ones). Closes #675
2018-08-14 12:01:56 +03:00
Joonas Rikkonen
8d5e5a8a15
Fixed characters being able to aim with items that have no aimPos configured (causing them to hold two-handed items like shells an crates in one hand when holding the aim button). Closes #613
2018-08-13 17:14:49 +03:00
Joonas Rikkonen
d98de2c305
Fire probability and the voltage required for a PowerTransfer item to take damage can be configured in the xml. Docking ports & hatches don't get broken by excess voltage. Closes #589
2018-08-11 17:09:36 +03:00
Joonas Rikkonen
f99bec4ed2
If the distance is excessively large when forcing the collider of a dead character to follow the body, the collider is teleported instead of moving it by setting the velocity. + More physics error logging
2018-08-09 14:13:08 +03:00
Joonas Rikkonen
f697ec7582
Melee weapons don't stop the swing when they hit the first target (but only damage each target once per swing). Fixes weapons not hitting the target in tight spaces due to touching the ceiling/walls first, and allows hitting multiple characters with one swing. Closes #622
2018-08-09 12:55:52 +03:00
Joonas Rikkonen
7a7c92a2ce
Server writes item condition at full accuracy instead of just using 8 bits. The more inaccurate condition caused issues when the value was just above some specific threshold (e.g. minimum condition for a fabricator ingredient) server-side and below it client-side. Closes #616
2018-08-09 12:39:14 +03:00
Joonas Rikkonen
45939a9144
Fixed oxygen tank & welding fuel tank crafting causing everyone to desync. The item condition NetEntityEvent was created before the spawn event of the item, preventing clients from reading the condition event because the item doesn't exist yet. Closes #617
2018-08-09 12:08:47 +03:00
Joonas Rikkonen
2f0236d99b
Fixed PowerContainer RechargeSpeed being capped to the MaxRechargeSpeed set in the prefab due to RechargeSpeed being loaded before MaxRechargeSpeed. Closes #612
2018-08-08 15:56:19 +03:00
Joonas Rikkonen
5e093faaa2
Fixed max recharge speeds of PowerContainers resetting to the default value after saving and reloading a sub. Closes #605
2018-08-08 11:27:03 +03:00
Joonas Rikkonen
4aeaf93af8
Fixed engines trying to apply infinite force to the submarine if MinVoltage is set to zero.
2018-08-07 14:36:08 +03:00
Joonas Rikkonen
4b0c54d664
Dockingport gap linking fixes. Closes #551
...
- Dockingports force the hatch/door gaps to be connected to the hulls between the ports, because connecting them automatically may fail if the ports are positioned in a non-standard way.
- Gaps don't recheck hulls in OnMapLoaded if rechecks have been disabled.
- Item.UpdateHulls and Gap.UpdateHulls are not called when OnMapLoaded is called during ruin generation.
2018-08-07 12:45:45 +03:00
Joonas Rikkonen
5354670288
Fixed StatusEffects being multiplied by deltatime when a client uses an item with the "use on self" buttons (even though the effect should be instantaneous). Caused effects with no duration to do almost nothing, making calyxanide and other meds with instantaneous effects basically useless. Closes #587
2018-08-07 11:36:53 +03:00
Joonas Rikkonen
cfc03f8443
Controllers can't focus the camera on broken items (none of the current focusable items can break but may be useful for modders). Closes #590
2018-08-06 22:43:54 +03:00
Joonas Rikkonen
e60ebc1930
Handling and logging exceptions thrown by ItemComponent constructors, added stack traces to a couple of error messages
2018-08-06 14:53:28 +03:00
Joonas Rikkonen
c463baed44
Made medical & toxic cabinets waterproof. Closes #578
2018-08-06 14:08:00 +03:00
Joonas Rikkonen
e57eb739e2
Cloned items copy the RequiredItems from the original item. Closes #581
2018-08-06 11:19:10 +03:00
Joonas Rikkonen
6a415afaa1
Merge branch 'master' of https://github.com/Regalis11/Barotrauma
2018-08-06 10:53:25 +03:00
Joonas Rikkonen
141b77f838
Fixed connectionpanel syncing. Closes #575
2018-08-06 10:50:32 +03:00
Joonas Rikkonen
a69c52b3c1
Fixed servers failing to write network events for wires with too many nodes, causing clients syncing to fail and everyone getting kicked out due to desync. Now the wire events are split into multiple events, and there's a hard cap (255) on the number of nodes per wire. Closes #563
...
+ Writing too much data into an event no longer breaks event syncing completely, if it happens the server just logs an error and writes an empty event.
2018-08-03 21:32:28 +03:00
Joonas Rikkonen
708f72c883
Fixed items occasionally dropping instead of being moved to another inventory client-side. Closes #558
2018-08-02 13:24:56 +03:00
Joonas Rikkonen
9ab5d76ed1
Fixed attachable items dropping on the ground when deattaching them (but still staying in the inventory of the character detaching them). Closes #559
2018-08-02 12:18:03 +03:00
Joonas Rikkonen
1379460ad9
Fixed holdable components reverting their RequiredItems back to the prefab values during loading. Closes #557
2018-08-02 11:22:49 +03:00
Joonas Rikkonen
274a29bada
Fixed fabricated items always appearing to be in full condition client-side (e.g. oxygen tanks which should be empty after being fabricated). Cherry-picked from 64896b0f. Closes #561
2018-08-02 10:50:38 +03:00
Joonas Rikkonen
7f58e4619b
Merge pull request #560 from ursinewalrus/placeItemsWhereHandIs
...
Place items where hand is
2018-08-02 10:44:45 +03:00
Josh Kerxhalli-Kleinfield
8c8d3e300f
Comment update
2018-08-01 19:07:35 -05:00
Joonas Rikkonen
5a6a8e2501
Wifi components can't communicate with the enemy sub in combat missions. Fixes #554
2018-08-01 13:52:47 +03:00
ursinewalrus
bec2cd5323
more accurate placement
2018-07-31 19:46:55 -05:00
ursinewalrus
d8559ad63c
attaches item to wall where hand is, not at center of body
2018-07-31 18:50:38 -05:00
Joonas Rikkonen
82103cf394
Controllers don't have to be wired directly to an item for camera focus to work (= railguns and cameras can be used over wifi). Closes #535
2018-07-31 15:03:20 +03:00
Joonas Rikkonen
d81ee1a27e
Added a bunch of checks to make sure a normalized zero vector (= NaN, NaN) is not used in any position/velocity/movement calculations. There were at least three places where it was causing problems according to error reports: when a character that can't enter a sub spawns at the center of a hull and when using an underwater scooter or throwing something while the cursor is at the position of the character, but there were tons of other places as well where it may have potentially caused physics errors.
2018-07-31 12:28:04 +03:00
Joonas Rikkonen
b4d0a1bd38
Inventory sync fix (component index included in events created when the server receives an inventory update from a client).
2018-07-30 14:28:04 +03:00