Joonas Rikkonen
d4752bb6a0
(9f5c9fbcb) Make sure lazy-loaded sprites load their texture when creating a GUIImage, because the image needs to know the size of the texture to scale itself correctly. Fixes location portraits not being visible in the campaign menu when a location is selected for the first time.
2019-04-04 11:08:18 +03:00
Joonas Rikkonen
7491b06a5d
(bbd192053) Rebind Select and Use keys. Refactor GameSettings to support legacy bindings, when they are set. That is, if the new "deselect" and "shoot" keys are not defined, but the player config file is found, use the "select" and the "use" keys instead of the defaults.
2019-04-04 11:08:02 +03:00
Joonas Rikkonen
79ea41e6c9
(4f4395b00) Reduced the size of the disallowed item interface area around the chatbox
2019-04-04 11:07:45 +03:00
Joonas Rikkonen
c8a7815ef8
(6ae5f1e59) Sync the new input with the server.
2019-04-04 11:06:59 +03:00
Joonas Rikkonen
5f05322fdb
(fdc038d5d) Keymapping and UX test: - Map use to "E" and Select to "Left Mouse". - Introduce a dedicated key for deselecting ("Right Mouse"). - Introduce a dedicated key for shooting ("Left Mouse"). - Define certain objects as shootables, which simply means that they use the "Shoot" key instead of using the "Use" key. This required the least amount of refactoring the existing code. - TODO: don't register the "Select" input when aiming or when an interface is open -> should prevent interacting through UI elements. - TODO: sync the new input types with the server.
2019-04-04 11:06:12 +03:00
Joonas Rikkonen
64bec6d3b9
(684bcee1a) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-04-03 16:24:20 +03:00
Joonas Rikkonen
516159fe43
(d404aba3e) Added background color to keybind inputs in the Controls settings layout, to help readability
2019-04-03 16:24:06 +03:00
Joonas Rikkonen
c9ad39da08
(b35e82550) Added a longer delay to getting killed by pressure (5 seconds in max pressure), made the pressure-zoom-in effect appear as soon as the pressure in a room starts to rise (not after it's half-way to lethal pressure), added blood particle effects when under high pressure
2019-04-03 16:23:51 +03:00
Joonas Rikkonen
98cf26178f
(3b3130a00) Added an option to disable mouselook, let camera zoom further when controlling a large monster
2019-04-03 16:23:23 +03:00
Joonas Rikkonen
0ecfc426ff
(45f083a5a) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-04-03 16:22:12 +03:00
Joonas Rikkonen
0dd1823eb1
(44a496915) Added: Template for using a video with the Welcome text in the tutorial if needed. Removed: Old spritesheets. Fixed: Bug in fetching crew with certain jobs
2019-04-03 16:21:57 +03:00
Joonas Rikkonen
5cf66d7343
(ecda2cb2a) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-04-02 12:41:32 +03:00
Joonas Rikkonen
e86d86c41f
(9bd8db487) Allow to aim in ladders when not moving.
2019-04-02 12:41:18 +03:00
Joonas Rikkonen
7d8b489319
(683847e26) Test: disable camera movement completely when an item interface is open (not just when the cursor is on the interface)
2019-04-02 12:41:04 +03:00
Joonas Rikkonen
a46c195532
(2a183f60c) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-04-01 22:51:07 +03:00
Joonas Rikkonen
5d6cbb5898
(b522c4551) Don't assign the attackinglimb if we shouldn't be attacking. Fixes Hammerhead not falling back after hitting the sub.
2019-04-01 22:50:39 +03:00
Joonas Rikkonen
d511ecd4e3
(5218c43a0) Server sends the IDs of both selected characters and selected items to the clients. Previously this wasn't needed, because it wasn't possible to have both a character and an item selected at the same time. Fixes characters floating mid-air client-side when dragging others up stairs, and probably some other undiscovered bugs as well.
2019-04-01 22:50:11 +03:00
Joonas Rikkonen
ae6b797d73
(c2e1b24e2) Fixed remote characters sliding slowly to the left in multiplayer. Happened because linear velocity was written with an accuracy of 12 bits, causing the lowest possible value to be about 1.5 cm/s. Now extremely low velocity values are rounded down to zero. The server also now quantizes the LinearVelocity/AngularVelocity values, which should make position syncing a little more reliable because the server runs the physics using the same rounded values as the clients.
2019-04-01 22:49:58 +03:00
Joonas Rikkonen
3062e4c705
(1a1137b26) Charybdis now also targets the walls. Tweak Charybdis' attacks and priorities. Fix targeting walls for non-aggressiveboarders. Don't double the wall priority.
2019-04-01 22:49:15 +03:00
Joonas Rikkonen
fc9a3893f6
(b9babfcf6) Merge branch 'ragdoll-syncing-improvements' into dev
2019-04-01 22:49:01 +03:00
Joonas Rikkonen
2eaf22683d
(ae643deeb) Added alive checks to a couple of diving gear status effects (don't consume tanks when dead)
2019-04-01 22:47:22 +03:00
Joonas Rikkonen
ec7e23061b
(38b5d9aad) Experimental changes to syncing ragdolled (unconscious/dead) characters: - Higher error tolerance when syncing the positions. It's often hard to get the main limb exactly to the same position as the collider, because the positions of the limbs aren't synced and the pose of the ragdoll may differ between the server and clients. Increasing the tolerance makes it less likely for dead/unconscious characters to "twitch" when the game attempts to force the main limb to the position of the collider. - If the position of the ragdoll differs from the position of the collider so much that CheckDistFromCollider disables limb collisions, apply an additional force to all limbs to force the ragdoll to the correct position. Otherwise the ragdoll can occasionally start "hanging" midair, clipping through solid objects, because the main limb's pull joint doesn't necessarily have enough force to pull the entire ragdoll up to the collider.
2019-04-01 22:47:03 +03:00
Joonas Rikkonen
11f2bf4b38
(f152bbbe1) Servers includes skill identifiers in CharacterInfo data sent to clients. Sending only the levels and assuming the client has the same skills in the same order made it difficult for servers to modify the skills without client-side modifications. Closes #1335
2019-04-01 14:27:11 +03:00
Joonas Rikkonen
84121674b1
(050a72bf3) Server resets remote character inputs if no inputs have been received in the past 0.5 seconds. Previously the server would assume the inputs hadn't changed from the last known ones, which works well when there are brief networking hiccups that cause the server to run out of inputs for a few frames, but if it takes longer, we don't want to keep the character firing a welding tool or whatever else they were doing until the kill disconnect timer kicks in.
2019-03-30 21:44:37 +02:00
Joonas Rikkonen
854c90c89a
(e38a3fef5) Fixed characters not letting go of the character they're grabbing when the health interface is closed with Esc or by clicking outside the window.
2019-03-29 21:51:24 +02:00
Joonas Rikkonen
0b098efbf6
(92a838f87) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-03-29 21:50:58 +02:00
Joonas Rikkonen
6f919a4de0
(f8907b59f) Added: Proper scaling based on resolution for VideoPlayer. Modified: IsFlooding check of contextual tutorial to require water volume
2019-03-29 21:50:44 +02:00
Joonas Rikkonen
902e5e4493
(797046bbf) Fixed deselecting an item with Esc/E causing the character to interact with whatever the cursor is focused on. TODO: Fix autointeracting causing entities to be selected in MP (e.g. picking up an ammunition box by interacting with the loader causes the loader to be selected)
2019-03-29 17:26:40 +02:00
Joonas Rikkonen
ddfd7274e9
(d5ea3c7d5) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-03-29 17:24:17 +02:00
Joonas Rikkonen
ca08b803dc
(891ef87c3) Fixed: CrewManager throwing errors if changing resolutions when a crewmember is dead. Added: Scaling of the objective list when changing resolutions
2019-03-29 17:24:02 +02:00
Joonas Rikkonen
af1f8be4fa
(ad3954bd2) Moved item HUD closing logic to Character.ControlLocal and removed it from ItemInventory. The deselection in ItemInventory was not synced with the server, causing the item to be immediately reselected after the HUD has been closed (and the logic was redundant anyway because it's also handled in Character).
2019-03-29 17:23:33 +02:00
Joonas Rikkonen
d974a5d72f
(3a98135bd) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-03-29 17:21:37 +02:00
Joonas Rikkonen
c0cf060526
(7d7e17231) Implement reversing and make it as an option for attacks. Detach latching with "F" (debug feature).
2019-03-29 17:20:54 +02:00
Joonas Rikkonen
f3dc34dfa3
(d211acd47) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-03-28 18:12:09 +02:00
Joonas Rikkonen
2490951b2b
(6912a70c7) Removed: Unused, old code. Fixed: Formatting
2019-03-28 18:11:54 +02:00
Joonas Rikkonen
f51c9c14df
(54ae135f5) Items can be dragged and dropped directly from the inventory into containers without having to select the container first.
2019-03-28 18:11:40 +02:00
Joonas Rikkonen
7c8f19ee14
(875de4a5a) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-03-27 20:56:29 +02:00
Joonas Rikkonen
86d1102f56
(88961a6ea) Fix wrong spelling: Blatter -> Bladder.
2019-03-27 20:56:01 +02:00
Joonas Rikkonen
81833e7920
(65cb56d24) Merge branch 'dev' of https://github.com/Regalis11/Barotrauma-development into dev
2019-03-27 20:54:53 +02:00
Joonas Rikkonen
6ca760ceda
(93f4e5d57) Allow repair tools to hit structures even if the barrel is inside the structure. Possibly closes #1306
2019-03-27 20:54:40 +02:00
Joonas Rikkonen
ac60c9477e
(d8c40ca6c) Merge branch 'dev' into tutorial-rework
2019-03-27 20:54:27 +02:00
Joonas Rikkonen
4cb3469c4f
(8f9250974) Fix spritesheet orientation offestting the joint widgets in the wrong direction, which made it a bit difficult to use.
2019-03-27 20:54:00 +02:00
Joonas Rikkonen
080ac78ded
(5c35a640e) Update tutorial-rework with dev
2019-03-27 20:52:47 +02:00
Joonas Rikkonen
8b5e18c348
(edf82e6ca) Modified: VideoPlayer video position, medical objective completion, saving segment when objective is completed
2019-03-27 20:50:50 +02:00
Joonas Rikkonen
3f82c9a2cb
(f417b026f) Fetched: Changes for playing video tutorial from local branch
2019-03-27 20:45:14 +02:00
Joonas Rikkonen
14832e2040
(aea5053bf) Fix wall target position not updated when the submarine moves. Fix latchontoai attach positions and distance checks. Detaching should also work both when the characters can get in and when the submarine velocity is enough to detach the characters. Still not synced, but re-enabled for testing.
2019-03-26 14:06:55 +02:00
Joonas Rikkonen
fd5d2b86af
(a97ef2847) AI improvements: - Fix steering issues when attacking (yet again): We still have to offset the sim positions. - Fix the steering vector when escaping from the enemy that is inside the sub. - Enemies can now navigate out from the sub, when escaping. - Fix door tag not being used when targeting items. Change the priority boosts considering doors. Should now entirely ignore the outer doors when inside and inner doors when outside. - Change the way enemies react to characters that are not in the same sub. Halve the priority when the character is not in the same hull. Add some boost to the priority when escaping.
2019-03-25 19:50:02 +02:00
Joonas Rikkonen
19d5ed5d66
(14f26adfa) Take the position of a sub's docking port into account when determining where to place outposts. Humpback's docking port for example is 600 units to the right from the sub's centerpoint, which prevented it from docking in some levels because the left side of the sub hit the wall at the left side of the outpost. Closes #1028
2019-03-25 19:49:48 +02:00
Joonas Rikkonen
7d74b5bd52
(2c717d761) Enable wall targets also inside the sub, so that enemies can get through multiple layers of walls. Don't target walls (intentionally), when the character is already inside the sub. Fix attack world position being calculated wrong when the character is targeting walls inside the sub. Take the sub position into account when assigning the wall target position. Makes things a bit simpler.
2019-03-25 19:49:20 +02:00
Joonas Rikkonen
77a07a95af
1473f77...ece6ead
...
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.
2019-03-23 19:22:13 +02:00