Joonas Rikkonen
083d88a64f
Fixed lightcomponent sprites & broken sprites not being mirrored. Closes #893
2018-11-08 15:32:57 +02:00
Joonas Rikkonen
33d971f5d0
Fixed OnBroken & OnImpact statuseffects not being applied client-side
2018-10-29 20:38:43 +02:00
Joonas Rikkonen
224e9238db
EntityEvents are written and sent even if the entity has been removed at the time of writing. Otherwise the clients may not receive some important events, e.g. when an item applies a statuseffect to something or triggers an explosion and is removed immediately afterwards. I'm not 100% confident that this won't cause any additional issues, so it still needs more testing. See #839
2018-10-29 20:38:10 +02:00
Joonas Rikkonen
9d92b696f0
Fixed clients getting kicked if they receive an entity event that's more recent than the one they're expecting. This happens often even when there's no actual error, for example if the client happens to receive messages in an incorrect order (the messages are sent using the Unreliable delivery method). Instead of getting themselves kicked, the clients should just ignore the event and wait until they receive the correct one.
2018-10-28 21:12:30 +02:00
Joonas Rikkonen
ef9afedf42
Added a level equality check to client error handling to make it easier to diagnose bugs like #848 in the future.
2018-10-18 00:18:57 +03:00
Joonas Rikkonen
9f7fbb0cbe
Fixed client error reporting
2018-10-17 23:48:00 +03:00
juanjp600
13dc008cb5
Client communicates event syncing errors to the server
...
This should help
2018-10-16 17:11:20 -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
a403ca44c5
Fixed inventory sync delay being decremented in two places, causing the delay to be 0.5 seconds instead of the intended 1 s. Closes #788
2018-09-12 14:16:06 +03:00
juanjp600
ae70b973dd
Changed TextureLoader.PreMultiplyAlpha return type to void
2018-09-10 18:09:26 -03:00
itchyOwl
5d2a193471
Line endings.
2018-09-03 10:23:36 +03:00
Joonas Rikkonen
565f14801b
Normalized line endings to CRLF
2018-09-02 19:25:48 +03:00
Joonas Rikkonen
6cb2a7260c
Clients dispose fileTransfers when shutting down (otherwise the files will stay open and cause "used by another process" exceptions when attempting to receive them again)
2018-08-21 16:43:05 +03:00
Joonas Rikkonen
f09fcfc3be
Fabricators show the list of required items even if the character doesn't have the skills to craft the item. Closes #717
2018-08-20 21:19:18 +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
3747852c13
Removed the Entity.MoveWithLevel property, fixed artifacts and other items from ruins not being saved. Closes #694
2018-08-20 16:23:40 +03:00
juanjp600
2f6cb84b5e
Added workaround to tabbing out breaking fullscreen
2018-08-17 19:26:24 -03:00
Joonas Rikkonen
9783ed3750
Backported LOS effect changes from the dev branch (the brightness of the obstructer area is the same as ambient light)
2018-08-17 12:58:23 +03:00
Joonas Rikkonen
0dca8bc940
Clients can be given access to server logs. Closes #366
2018-08-15 12:57:46 +03:00
Joonas Rikkonen
c2f9e1481f
Recommended crew experience is saved using text tags instead of the actual text (-> experience texts can be translated without the translation showing up in sub files).
2018-08-15 12:06:22 +03:00
Joonas Rikkonen
b1f8de887c
Clients use the Revive method instead of just setting health above zero when the host revives a character. Fixes dismembered characters staying dismembered client-side.
2018-08-15 11:52:48 +03:00
Joonas Rikkonen
4866a89253
Servers can disable the disguise feature. Closes #568
2018-08-14 16:06:23 +03:00
Joonas Rikkonen
8160abe109
Fixed nullref exceptions when loading a steering component when a gamesession is running but no locations have been selected (not sure how that can even happen)
2018-08-14 13:28:11 +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
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
Juan Pablo Arce
f1a8db5b47
Fixed stereo sound loading
...
I had already fixed this on the dev branch, backporting because it's gonna take a while until it's released
2018-08-08 20:57:00 -03:00
Joonas Rikkonen
bcd44f79e9
Merge branch 'level-mirroring'
2018-08-08 15:30:41 +03:00
Joonas Rikkonen
5100956bae
Levels are mirrored when traveling backwards through a connection in the campaign mode. Closes #519
2018-08-08 15:30:32 +03:00
Joonas Rikkonen
506c13c929
Again, save before committing
2018-08-08 11:15:05 +03:00
Joonas Rikkonen
0a84d989a8
Fixed wearable sprite colors being calculated wrong. Closes #607
2018-08-08 11:10:48 +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
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
7c93730fc3
Fixed errors in netlobbyscreen when attempting to select a sub that fails to load (for example due to a missing/corrupt file), campaign cannot be started if the selected submarine cannot be loaded
2018-08-06 14:28:54 +03:00
Joonas Rikkonen
af3fa80011
Clients only include the last 20 console messages in the "invalid object header" error messages, and the console messages are not displayed in the console itself. Closes #569
2018-08-06 12:32:00 +03:00
Joonas Rikkonen
362c97ce05
Worn items use the spritecolor set in the sub editor. Closes #574
2018-08-06 11:01:13 +03:00
Joonas Rikkonen
cafcc76064
Fixed wall-attached sections of a wire not rendering when the item is being rewired outside the sub
2018-08-02 16:55:37 +03:00
Joonas Rikkonen
9099b191d0
Fix (or a workaround) to characters teleporting inside/through colliders when leaving a sub (see #552 ). Gaps do a raycast out from the sub to see if there are obstacles outside, and if so, ragdolls place a collider at the corresponding position inside the sub. The collider is simply a straight axis-aligned line atm, so it doesn't work accurately with sloped ice/submarine walls, but does prevent the ragdoll from ending up inside the obstacles. TODO: use a few edges to approximate the shape of the obstacles more closely?
2018-08-02 16:48:51 +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
5ba3f9384a
Debug visualization of docking port colliders
2018-08-01 17:30:07 +03:00
Joonas Rikkonen
027cebafdd
Fixed the previously selected location staying selected but start button staying disabled when returning to the lobby screen in SP campaign. Made it impossible to progress without restarting if there were no other selectable locations. Closes #553
2018-08-01 14:09:22 +03: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
d881a7060b
Updated tutorial info text to match the new color of the sonar display. Closes #550
2018-07-31 10:41:41 +03:00
Joonas Rikkonen
60a563fe75
EntityEvent fixes:
...
- Clients wait for midround syncing to finish before applying the remote state to connection panels and inventories (because the wires connected to the connection panel or items in the inventory may not exist before the EntitySpawner events have been received).
- Server writes 0 as the projectile ID if the projectile doesn't exist anymore when a Turret event is sent.
- More info in networkevent error messages.
2018-07-30 13:35:26 +03:00
Joonas Rikkonen
c66098ca4e
Fixed only the first inventory of an item being synced (e.g. clients wouldn't get notified when an item is contained in the "output inventory" of a fabricator or deconstructor).
2018-07-30 11:00:21 +03:00
Joonas Rikkonen
458c972580
More server-side EntityEvent error logging, Item.ServerWrite does some error checks and writes NetEntityEvent.Type.Invalid as the type of the event instead of attempting to write a potentially unreadable message.
2018-07-29 22:28:56 +03:00
Joonas Rikkonen
6209f48fff
More error logging to diagnose invalid header errors
2018-07-27 16:11:19 +03:00
Joonas Rikkonen
aa5b2a973e
Mirroring levels. Mirroring the wall geometry works, but ruins and background sprites are not placed at the correct positions yet.
2018-07-27 10:36:52 +03:00
Joonas Rikkonen
ce18309a78
Fixed crashing when attempting to increase buy quantity in campaign UI when money is at zero, fixed capping the number input to the value the player can afford (the previous calculation only clamped it above zero). Closes #531
2018-07-26 16:42:11 +03:00
Joonas Rikkonen
40f4e94613
Fixed incorrect debug info when receiving a message with an invalid object header. The method wrote the bytes/bits read SINCE the previous object (= just one byte, the invalid object header) instead of what was read in the previous object. The error message also ignored empty entity events.
2018-07-25 17:00:31 +03:00