Commit Graph

408 Commits

Author SHA1 Message Date
Regalis
1f07b18e5b Merge branch 'master' into new-netcode
Conflicts:
	Subsurface/Properties/AssemblyInfo.cs
	Subsurface/Source/Items/Components/DockingPort.cs
	Subsurface/Source/Items/Components/Signal/Wire.cs
	Subsurface/Source/Items/Item.cs
2016-12-29 22:18:27 +02:00
Regalis
020aac55ea AICharacter position syncing 2016-12-29 22:01:50 +02:00
Regalis
98183c47fb Syncing aim & use inputs (i.e. left and right click) 2016-12-28 22:33:43 +02:00
Regalis
12b7290bad Fixed Ragdoll.HeadInWater not being set to true if the character is inside a water-filled hull but the head is outside the sub, HUDProgressBars aren't created when a non-controlled character repairs something 2016-12-28 20:00:40 +02:00
Regalis
49d4108eeb Fixed character colliders sinking/floating away when using a railgun controller underwater 2016-12-28 19:56:52 +02:00
juanjp600
a733e917dd Readded input enum flags 2016-12-24 18:14:54 -03:00
Regalis
5e8a01636e Fixed exception when trying to remove a limb with no sprite 2016-12-20 16:10:47 +02:00
Regalis
311f388358 Limbs with no sprite don't cause the game to crash anymore, lightsources attached to a limb are drawn at the interpolated position (= DrawPosition) of the limb, lightTexture origin is flipped on the X-axis when parent limb flips 2016-12-17 14:24:54 +02:00
Regalis
b01b38da68 Bunch of new sounds by Omniary, some charactersound & soundplayer refactoring 2016-12-15 21:42:15 +02:00
Regalis
1f454d593e Inventory syncing, objHeader is passed to the ClientRead/ServerRead methods so they can determine how to read the msg (is it an inventory update, position, input, etc) 2016-12-10 16:39:58 +02:00
Regalis
983c54f4b5 CharacterInventory is moved back to the bottom left corner if selecting a character whose inventory has been moved 2016-12-10 13:55:29 +02:00
Regalis
bea523187b The host can send chat messages, fixed client not being passed to ServerRead methods 2016-12-09 16:45:08 +02:00
Regalis
3eec463f5e Anim tweaking, simplified (+ non-broken) water drag logic 2016-12-09 15:02:48 +02:00
Regalis
d95acec6a2 v0.5.4.1 + regenerated waypoints in vanilla subs & FishAnim tweaking 2016-12-04 19:21:17 +02:00
Regalis
deb76d0767 Removed a duplicate line 2016-11-24 20:24:01 +02:00
Regalis
adde3461ea Merge branch 'master' into new-netcode
Conflicts:
	Subsurface/Properties/AssemblyInfo.cs
	Subsurface/Source/Characters/Animation/HumanoidAnimController.cs
	Subsurface/Source/Characters/Character.cs
	Subsurface/Source/Items/Components/Door.cs
	Subsurface/Source/Items/Components/Power/PowerContainer.cs
	Subsurface/Source/Items/Components/Signal/Wire.cs
	Subsurface/Source/Items/Item.cs
	Subsurface/Source/Networking/ChatMessage.cs
	Subsurface/Source/Networking/GameClient.cs
	Subsurface/Source/Networking/GameServer.cs
	Subsurface/Source/Networking/GameServerLogin.cs
	Subsurface/Source/Networking/GameServerSettings.cs
	Subsurface/Source/Networking/NetworkMember.cs
2016-11-24 19:52:40 +02:00
Regalis
12f98268b5 Increased character visibility range (how far monsters can see characters from), enemies manually steer towards their target if their steering path is finished or unreachable, mantis tweaking 2016-11-24 19:17:49 +02:00
Regalis
9d1d64901a Pathfinding fixes:
- determining if a character is close enough to a waypoint works now, even if the character is too short for its collider to overlap with the wp (e.g. crawlers)
- enemies can drop down from platforms
- an extra waypoint is placed at the middle of stairs to prevent characters from choosing a waypoint on a platform above the stairs as the starting point of their path
2016-11-23 22:20:44 +02:00
juanjp600
7a3bce3973 Hull volume helper in editor + Character name matches client name + Better-looking Watcher light source
Also '' is a thing of the past, use \" instead
2016-11-20 18:47:22 -03:00
Regalis
6ca605aa57 Merge branch 'master' of https://gitlab.com/poe.regalis/barotrauma 2016-11-18 18:48:10 +02:00
Regalis
8c90fd1774 Doors push colliders away when closing, small human standing anim tweak 2016-11-18 18:47:58 +02:00
juanjp600
a4ebb116c0 Fixed falling damage 2016-11-17 15:35:15 -03:00
Regalis
a4f00310dc "Floor check" raycasts ignore platforms/stairs based on the bottom pos of the collider instead of the lowest limb, fixed IndoorsSteeringManager node diff checks 2016-11-17 20:00:03 +02:00
Regalis
089b0dbcee Water slows down players based on the depth of the water relative to the bottom of the collider 2016-11-17 19:16:30 +02:00
Regalis
bded421366 Added colliderHeightFromFloor to a few places I missed, some more human collider tweaking, correcting collider y position faster 2016-11-17 19:06:12 +02:00
Regalis
adece20072 Collider height from floor can be changed in the xml files, moved human collider a bit higher to allow climbing over roughly waist-high obstacles 2016-11-17 18:06:43 +02:00
juanjp600
c25ea7c75f Fixed collider not taking previous Submarine value on index change 2016-11-16 22:06:10 -03:00
juanjp600
b68be44864 Fixed ragdoll position not being offset on ladder 2016-11-16 21:44:08 -03:00
juanjp600
fac0c850a5 Changes to collider behavior
The collider now levitates above the ground, which makes small obstacles a non-issue. The raytest also helps the collider stick to staircases, so players don't jump off anymore.
Crouching now changes the collider to a smaller version, so now there is actual functionality to crouching.
I also removed the anchor from corpses of network players. I'm not entirely sure why this was done, but removing it doesn't seem to break anything.
2016-11-16 21:30:49 -03:00
juanjp600
5922fc972d Merge branch 'master' of https://gitlab.com/poe.regalis/barotrauma 2016-11-15 22:26:46 -03:00
juanjp600
d2c17274fe GUI elements now respect render order + some minor distance comparison optimization 2016-11-15 22:26:36 -03:00
Regalis
184c6858cd Removing orphans in PathFinder.GenerateNodes, fixed autopilot steering the wrong way if clicking an already selected destination tickbox 2016-11-15 20:48:52 +02:00
Regalis
335bf00890 Entity removal fixes 2016-11-14 17:52:26 +02:00
Regalis
0c9a55e9e0 - server doesn't create a new EntityEvent if there's a duplicate event waiting to be sent
- hull, radar, steering & pump syncing
2016-11-14 16:58:21 +02:00
Regalis
44d87613b9 - setting SelectedConstruction back to null if a client is too far from it (-> selecting items doesn't become impossible after selecting a cabinet/reactor/whatever and moving away from it)
- closestItem or closestCharacter aren't checked unless the client pressed Select
2016-11-13 21:13:18 +02:00
Regalis
498c72c64a Server sends ServerEntityEvents to clients, NetEntityEvents can contain an object array which will be passed to the serializable entity (now only used for ItemComponent indices) 2016-11-13 13:56:48 +02:00
Regalis
c314b37029 Some classes for syncing entity state changes. Similar to the NetworkEvents in the old netcode, but the logic is split into separate classes which prevent the server from reading updates for entities that aren't IClientSerializable.
todo: add NetEntityEventManagers to server & client, some logic to prevent sending events that don't need to be sent (e.g. duplicate event state updates)
2016-11-12 20:56:06 +02:00
juanjp600
392bc13258 Removed case check from CharacterInfo because it corrects itself
Just make sure to not get the directory casing wrong and we'll be good
2016-11-10 21:58:35 -03:00
juanjp600
0e9c20c666 Case-sensitivity checks on Windows
Should prevent "TigerThresher" from happening again.
2016-11-10 21:45:59 -03:00
Regalis
17a7cb70ed Resetting character position to the server pos if the difference between the positions is large enough 2016-11-09 19:58:05 +02:00
Regalis
e1c2cd4d53 Networked characters can climb ladders without joining the Europan Space Program 2016-11-09 18:17:04 +02:00
Regalis
ac65a431a8 Merge branch 'master' into new-netcode
Conflicts:
	Subsurface/Properties/AssemblyInfo.cs
	Subsurface/Source/Items/Components/Signal/Wire.cs
	Subsurface/Source/Items/Item.cs
	Subsurface/Source/Items/ItemInventory.cs
	Subsurface/Source/Networking/GameServer.cs
2016-11-09 17:58:56 +02:00
Regalis
9eaca68cea Clients move their saved local positions if they don't match the servers position (instead of immediately snapping to the latest server position)
TODO: prevent ladders from sending the character flying, some safeguards in case positions are way off
2016-11-09 17:43:23 +02:00
Regalis
1617cd8f7a Item/statuseffect optimization:
- PowerTransfer components cache power connections instead of rechecking them every frame
- items store connections in a dictionary with the name of the connection as a key (-> finding the correct connection when sending a signal is more efficient)
- storing item tags & StatusEffect targetNames in HashSets
2016-11-08 21:14:29 +02:00
Regalis
1dc08b3019 Added collider to humanhusk.xml, disabled the "zoom effect" when under pressure as a huskified human 2016-11-08 20:15:59 +02:00
Regalis
f259f3fba4 Limiting character movement when collider isn't upright (can't run at full speed if lodged in some tight space), hack-ish way of moving the collider of a character that's being dragged 2016-11-07 18:52:36 +02:00
juanjp600
cd8c927800 Sync InputType.Select 2016-11-06 18:15:13 -03:00
Regalis
de3966ae95 - character colliders stay enabled when the character is unconscious/stunned (prevents getting stuck inside walls when the collider is re-enabled)
- can't climb over obstacles if the contact point is above the center of the character collider
- higher "obstacle climbing velocity"
- limiting collider velocity when dragging another character
2016-11-06 18:56:03 +02:00
juanjp600
160eff85d0 Input fast-forward/catchup when standing still for 15 frames
Also made position correction work based on linear velocity so running doesn't make you twitch nearly as much.
2016-11-06 13:43:53 -03:00
juanjp600
f0acf69065 Merge remote-tracking branch 'barotrauma/master' into new-netcode
# Conflicts:
#	Subsurface/Properties/AssemblyInfo.cs
#	Subsurface/Source/Characters/AI/EnemyAIController.cs
#	Subsurface/Source/Characters/AICharacter.cs
#	Subsurface/Source/Characters/Character.cs
#	Subsurface/Source/Items/Components/Signal/Connection.cs
#	Subsurface/Source/Items/Item.cs
#	Subsurface/Source/Map/Structure.cs
#	Subsurface/Source/Networking/GameClient.cs
#	Subsurface/Source/Networking/GameServer.cs
#	Subsurface/Source/Screens/NetLobbyScreen.cs
2016-11-05 18:18:20 -03:00