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
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
Joonas Rikkonen
5e6215a37c
Fixed crashing when attempting to generate hulls with the "autohull" command when there are no walls or doors in the sub.
2018-07-24 13:21:02 +03:00
Joonas Rikkonen
be5f168b76
Sending error messages during EntityEvent writing/reading and entity removal to GameAnalytics
2018-07-23 21:16:57 +03:00
Joonas Rikkonen
7977e47359
Fixes
2018-07-23 19:24:44 +03:00
Joonas Rikkonen
4b5a4d66e7
Fixed nullref exception if the player clicks yes on the "download sub from the server" prompt after returning to the main menu.
2018-07-23 18:37:48 +03:00
Joonas Rikkonen
12c6a081a9
Fixed nullref exception in NetLobbyScreen when selecting a level seed that has no background sprite defined
2018-07-23 18:33:04 +03:00
Joonas Rikkonen
9d1c4f3efb
Moved Submarine.ClientRead to the client project
2018-07-23 17:58:28 +03:00
Joonas Rikkonen
25a62b3a51
More physics error checks, ragdoll clamps the velocity returned by PhysicsBody.CorrectPosition to prevent applying excessively high velocities to the collider if the position has changed significantly between frames
2018-07-23 17:58:02 +03:00
Joonas Rikkonen
ee13ea3972
Fixed clients not syncing the position of their controlled character when dead/unconscious
2018-07-23 17:40:40 +03:00
Joonas Rikkonen
ca364af3bc
Merge pull request #507 from NilanthAnimosus/vanillawork
...
Redesign campaign buymenu to use a quantity field
2018-07-22 18:10:02 +03:00
Joonas Rikkonen
41cae8d3c5
Added null check to Sound.StreamVolume
2018-07-22 17:59:13 +03:00
Joonas Rikkonen
bd845488d7
Added exception handling to MainMenuScreen.StartGame
2018-07-22 17:40:17 +03:00
Nilanth Animosus
5177c5b1eb
Fixed clients being unable to see vote counts
...
The clients would check their saved submarines instead of the submarines the server had when receiving the vote count.
2018-07-21 18:38:27 +01:00
Nilanth Animosus
cac1c48aa3
Redesigned campaign buymenu to use a quantity field
...
Additionally sorts the bought items by name then type to attempt to mirror the tabs (Not perfect)
2018-07-20 18:01:38 +01:00
Joonas Rikkonen
f0a663bab0
Added some extra information to OpenAL error messages
2018-07-20 16:10:49 +03:00
Joonas Rikkonen
a61ac1716d
Sending level seed & level gen errors to GameAnalytics
2018-07-20 14:17:59 +03:00
Joonas Rikkonen
07de2b2a0f
Fixed previous items not being cleared from multiplayer campaign UI after a round ends. Closes #505
2018-07-20 13:50:04 +03:00
Joonas Rikkonen
49c6b177e3
Added wrapper methods that check if user statistics are enabled to GameAnalyticsManager
2018-07-20 12:05:13 +03:00
Joonas Rikkonen
8e03ac9284
Fixed nullref exceptions in CharacterHUD & RuinGenerator
2018-07-20 11:36:53 +03:00
Joonas Rikkonen
f13b1b4d84
Fixed camera ScreenToWorld & WorldToScreen returning invalid values when Camera.UpdateTransform has only been called once, because interpolated zoom value is initially 0 which messes up the transformation matrices. Closes #504
2018-07-20 11:36:22 +03:00
Joonas Rikkonen
f1c4bd3c67
- Some of the non-game-crashing error messages are sent to GameAnalytics.
...
- Changed crash severity from Error to Critical.
- Exception handling when loading submarine preview images.
- Checking if position is valid in Ragdoll.SetPosition.
2018-07-19 22:12:50 +03:00
Joonas Rikkonen
c901b75ff1
Fixed round ending tickbox not being visible client-side if the client is not controlling character (despite servers now allowing votes from players who've spawned at least once during the round). Closes #500
2018-07-19 10:47:39 +03:00
Joonas Rikkonen
568cf1a02f
Fixed memory leak caused by submarine preview images, changed Submarine.SavedSubmarines to a property that prevents removing submarines from outside the class without disposing the preview image. Closes #498
2018-07-18 14:23:43 +03:00
Joonas Rikkonen
af4d60db1d
Fixed GameMain.Server.Character not being set to null when the character is removed. Closes #488
2018-07-18 13:05:58 +03:00
Joonas Rikkonen
cbb207dbca
Cleanbuild console command resets the user statistics setting
2018-07-18 12:59:59 +03:00
Joonas Rikkonen
e0455caaaa
Cherry-picked 869b725 from dev
2018-07-18 11:49:36 +03:00
Joonas Rikkonen
d831654690
Fixed linux build
2018-07-17 21:37:44 +03:00
Joonas Rikkonen
23e0a76f37
Character head & gender settings are saved. Closes #474
2018-07-17 13:38:21 +03:00
Joonas Rikkonen
b61898b16f
Fixed clients assigning a wrong name to submarines with dots in their name (e.g. Sub Mk.Iv), because the part after the dots was considered a file extension and stripped out in the submarine constructor. Closes #472
2018-07-16 21:09:01 +03:00
Joonas Rikkonen
ac5bad3011
Dedicated server can give clients the permission to use commands that only exist in the client project (los, lights, control, etc). Closes #476
2018-07-16 11:43:50 +03:00
Joonas Rikkonen
734b86bfba
Fixed clients being unable to give non-permanent or range bans. Closes #481
2018-07-16 11:24:24 +03:00
Joonas Rikkonen
015eacbcb0
Fixed GameAnalytics thread becoming active despite user statistics being disabled, causing the game to stay active in the background when quitting.
2018-07-13 11:29:11 +03:00