Commit Graph

277 Commits

Author SHA1 Message Date
Regalis
96a61ab2ea HUDProgressBars are drawn over the LOS effect, progressbar not displayed when attempting to weld/cut platforms 2016-09-20 19:36:58 +03:00
Regalis
5918e845ac Progress bars that show the health of wall sections when welding/cutting 2016-09-20 18:40:30 +03:00
Regalis
94cec67a2b Characters that aren't inside a hull or can't enter subs won't attempt to play a walking animation 2016-09-07 20:18:52 +03:00
Regalis
9463b18993 Huskification bugfixes 2016-09-07 18:19:42 +03:00
Regalis
98b04f1147 Merge branch 'master' of https://gitlab.com/poe.regalis/barotrauma
Conflicts:
	Subsurface/Barotrauma.csproj
2016-09-04 19:24:00 +03:00
Regalis
3b394976e4 A new monster, some changes to fish animation logic (creatures don't need to have a head, more pronounced swimming movement, option to select the position where steering forces are applied) 2016-09-04 19:18:44 +03:00
Sebastian Broberg
400084f9e5 BackgroundCreatureManager and BackgroundSpriteManager can be overridden via Content packages
Changed "topshaft"
2016-09-03 18:05:26 +02:00
juanjp600
52270e3a35 Hacked clients can't send chat messages from other characters anymore
Also added sendername as userdata in chat messages, for now it's not used for anything but we'll probably find something where this is useful
2016-08-30 17:35:58 -03:00
juanjp600
bf686ae997 A few more security checks 2016-08-29 18:38:06 -03:00
Regalis
ca5ad3ece4 Added some husk chems to the subs, attack key is included in the default config, fixed character and wiring modes crashing the game 2016-08-29 21:23:35 +03:00
Regalis
9955856c0c Tweaked the item interaction distance checks a bit:
- using worldposition instead of simposition (an item outside the airlock can be close enough to pick up even if it's far away in physics sim coordinates)
- checking if the player is inside the interact trigger of the item
- better way of checking if the item is a ladder
2016-08-29 18:26:24 +03:00
juanjp600
d27cafffa9 Fixed access to items without PickDistance
The ladder check is a horrible hack, but if you're horribly desynced then trying to interact with one will just kill you :)
2016-08-28 20:26:36 -03:00
juanjp600
73fc0cf724 More security checks
This actually looks pretty bad, not gonna lie.
2016-08-28 19:54:31 -03:00
juanjp600
6e67c86fb6 Item interaction distance checks
Another anti-hack measure, hopefully this stops them from wrecking the sub instantly
2016-08-28 18:35:38 -03:00
Regalis
2c5d272acd - special death messages for husk infections
- fixed husk infections not being removed from clients
- more accurate bleeding indicators
- humanoid standing anim tweaking
2016-08-28 20:22:45 +03:00
Regalis
e2885a912d Husk infections, manually attacking when controlling a creature 2016-08-28 16:16:02 +03:00
Regalis
fda251898b Limb attack refactoring (moved attack update logic from EnemyAIController to Limb, removed the Hit/PinchCW/PinchCCW attacktypes) 2016-08-26 20:38:28 +03:00
Regalis
dc67eeebd4 Humans can be spawned through console in multiplayer 2016-08-23 14:19:50 +03:00
Regalis
d476ebdc8d Fixed letting go of dragged character when entering/exiting the sub, fixed spawnitems not being visible in the job info window 2016-08-22 16:49:43 +03:00
Regalis
7c8e866030 Fixed the door collision bug at docking ports 2016-08-16 20:21:33 +03:00
Regalis
6c5452570e More sanity checks to make sure clients aren't doing something they're not allowed to:
- AICharacter, hull, structure and submarine updates from clients are ignored
- character updates from anyone else than the client controlling the character are ignored
- players can't pick/drop items from anyone else's inventory (unless the target is unconscious/stunned/cuffed)
- server has authority over reactor temperature
2016-08-16 17:56:33 +03:00
Regalis
8a2ad8eb64 NPCs don't try to use depth charge tubes when given the "operate railgun" command 2016-08-16 17:37:08 +03:00
Regalis
aa2dbab579 PickItem networkevents include whether the item was selected instead of toggling selected/deselected, items can be picked when inside their trigger even if the position of the item isn't visible (i.e. ladders in Nehalennia can be climbed again) 2016-08-13 18:34:47 +03:00
Regalis
66df9c1dd0 Reverted the Ragdoll.SetPosition changes done in commit 6993318, won't work when standing partially through a platform 2016-08-13 18:31:55 +03:00
Regalis
eb33746907 Forcing hull/gap ids to correct ones if receiving a dockingport network event and the hulls/gaps have already been created, ItemContainers are active by default (to always check for potential statuseffects of the contained items), fixed NullReferenceException in Wire.Connect if attempting to connect to something outside the sub (shouldn't be possible unless messing something up in the editor) 2016-08-11 21:52:57 +03:00
Regalis
ab923c47e3 Error message if a character config file isn't found, Linux version tries to search for "Characterfolder" if "characterfolder" isn't found 2016-08-11 21:31:02 +03:00
Regalis
69933188d6 Ragdoll.SetPosition takes platforms into account if the character isn't ignoring platforms (i.e. forcing a character on top of a platform won't make it fall through it), reaching the top/bottom of a ladder won't make networkplayers fall off, server ignores position updates from dead/unconscious characters, smaller ResetRagdollDistance 2016-08-10 19:16:18 +03:00
Regalis
d4338580c7 updated changelog, transparent debug console frame, stuff 2016-08-08 23:32:32 +03:00
Regalis
581a7d5d9f Highlighted items glow in the dark, health bars are hidden when health is full, usernames and health bars are drawn at full brightness 2016-07-31 19:13:08 +03:00
Regalis
1a0451d0a8 - items can be equipped/unequipped by double clicking
- items inside the respawn shuttle
- using the teleport method when moving a character into or out from a sub
- removing dropped items from the respawn shuttle when respawning
2016-07-29 22:25:48 +03:00
Regalis
4252f4b9d0 - clients don't spawn character jobitems themselves (item data is written in the StartGame network message)
- after receiving a StartGame message, clients will wait until the game is loaded before reading new messages from the server
- the Item(prefab, position, submarine) constructor uses the position as the center of the item, not as top-left corner
2016-07-29 18:38:42 +03:00
Regalis
c773320a55 Autopilot can avoid other subs, characters won't go outside in idle state 2016-07-28 21:45:35 +03:00
Regalis
357a853342 A bunch of fixes to syncing clients who join mid-round:
- syncing items spawned/removed mid-round
- syncing characters spawned mid-round (through the console or by respawning)
- making sure that item IDs of the spawned characters match
- syncing wall damage
2016-07-25 18:48:48 +03:00
Regalis
6c79a8c568 Syncinc AICharacter inventories (a husk controlled by the host), clients don't try to read physicsbodyposition messages if the item doesn't have a body, control command works even if the character has spaces in the name 2016-07-25 18:43:09 +03:00
Regalis
dd9b78f8ff Handling exceptions thrown at any point during coroutine update, not just at Coroutine.MoveNext, dirty workaround for a (rare?) pathfinding bug I haven't been able to reproduce 2016-07-21 21:20:21 +03:00
Regalis
911846acff - submarines send position updates more frequently when they're moving faster
- small AICharacter syncing optimizations
- respawning can be disabled in server setting
- netstats show the total amount of bytes sent for each networkevent type
2016-07-20 17:20:27 +03:00
Regalis
b81417ad16 Characters can be left behind in levels and they will stay there until the player returns, other subs visible in sonar 2016-07-20 17:13:34 +03:00
Regalis
03a3a156ba - fixed camera "twitching" when trying to move it above the upper limit of the level
- fixed duplicate hulls/gaps being placed at docking ports when saving and loading
- fixed linkedsubmarines moving when saving and reloading if the center of the wall vertices isn't he same as the center of the sub
- moving docked submarines along with the main sub when syncing the position
- characters are killed when the client controlling them disconnects (+ cause of death: disconnected)
- fixed the description box in server lobby
2016-07-15 19:21:10 +03:00
Regalis
a5111d33df Tons of AI + pathfinding bugfixes:
- waypoints are created between docked subs and removed when they undock
- fixed start waypoint being left out of steering paths
- NPCs won't close doors/hatches on themselves
- NPCs won't let go of ladders until their feet are above the lower edge of the hull
- fixed FindDivingGear "loops": need to find a suit -> need to get to a suit -> need a suit to get to the suit -> need to find a suit...
- fixed characters constantly turning from side to side in small rooms
- recursive function for finding the button which opens a door (so a button doesn't have to be connected straight to a door for an NPC to be able to open it)
- AIObjectiveGetItem keeps searching for more suitable items even if a path to a matching item has been found
2016-07-08 20:53:11 +03:00
Regalis
19915fc4e5 - server log and item lists in editor can be filtered
- changes to item highlighting logic (easier in cramped subs)
- sub name/description boxes and selected items are reset when leaving the editor
2016-07-06 18:10:22 +03:00
Regalis
cd3ecd36e8 Merge branch 'multisub'
Conflicts:
	.gitignore
	Subsurface/Source/Characters/Animation/HumanoidAnimController.cs
	Subsurface/Source/Items/Components/Holdable/RepairTool.cs
	Subsurface_Solution.v12.suo
2016-07-04 17:42:31 +03:00
Regalis
aae24b2b2c Better logic for determining which convex hulls are in the range of a lightsource (separate convexhull lists for each sub) 2016-06-30 17:50:02 +03:00
Regalis
34c6569313 Server can inflict impact damage on clients, character oxygen level syncing bugfix, hulls send a networkevent when oxygen level changes by >=5%, limb velocities aren't reset when receiving a network update 2016-06-29 17:26:26 +03:00
Regalis
38c5251005 Vertical docking port, docking sounds, water flows properly between horizontally docked hulls, falseoutput of signal check components can be changed, lighting and FOW works between hulls (todo: some logic for determining when to update light.HullsInRange when two subs are moving relative to each other) 2016-06-27 17:48:20 +03:00
Regalis
b04e204dc3 - multiple submarines can be "merged" into one file (to be used as escape vessels etc)
- WIP docking ports
2016-06-26 14:31:00 +03:00
Regalis
296c5a14ed - host can respawn
- respawn info texts
- camera clamped to the the upper edge of the level
- fixed submarinebody being generated from all walls (and not just the ones belonging to that specific sub)
2016-06-23 18:23:20 +03:00
Regalis
dc7956274c - camera follows the closest sub
- WIP "respawn shuttle"
- submarine size affects its mass
- electricity fixes
2016-06-18 14:46:40 +03:00
Regalis
495a0f4124 - teleporting from sub to another works now
- repairtool fix
- submarines collide with each other
- every submarine is updated (so MainSub isn't the only one that can move)
- submarinebody vertex generation fix
2016-06-11 17:55:47 +03:00
Regalis
7349cdd310 Progress (compiles now) 2016-06-09 22:15:50 +03:00
Regalis11
c9fd599276 Merge branch 'master' of https://bitbucket.org/Regalis11/barotrauma into multisub
Conflicts:
	Subsurface/Source/GUI/GUI.cs
2016-06-09 18:39:54 +03:00