Commit Graph

101 Commits

Author SHA1 Message Date
Regalis
67a3020430 Logging when clients use an item on themselves or hit someone with a melee weapon 2017-04-17 19:52:25 +03:00
Regalis
52bf73722f ServerEntityEventManager doesn't process received events until the character inputs of the client for the corresponding frame have been processed (fixes character movement lagging behind EntityEvents at the servers side)
+ split character networking logic into a separate file, characters drop items at the position of their collider instead of hands
2017-02-09 23:09:42 +02:00
Regalis
b5bac67c4a WIP item position syncing 2017-02-02 20:40:58 +02:00
Regalis
8f50cca026 Syncing StatusEffects applied by meleeweapons or using an item on self 2017-01-15 14:49:15 +02:00
Regalis
8a9b322b78 Clients can create firesources if server tells them to, extinguishing fixes 2017-01-11 18:03:01 +02:00
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
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
0b03b78606 Entities that are behind other entities can be selected using a listbox that appears when hovering the cursor over them, itemcomponent GUIFrames aren't added to GUIUpdateList in sub editor (unless in character mode) 2016-11-29 17:30:13 +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
96cedd67f1 ItemComponents that don't implement the IDrawableComponent interface can't be added to the list of drawable components, pickTimer is ignored when deattaching items from the walls in the editor 2016-11-11 17:34:21 +02:00
Regalis
641e579e92 Backported animcontroller-overhaul 2016-10-22 15:18:16 +03:00
Regalis
de203cc424 - a WIP attempt to correct the position of the controlled character based on updates from the server
- fixed server not being able to move character controllers
- renamed IsNetworkPlayer -> IsRemotePlayer
2016-10-19 00:15:29 +03:00
Regalis
f3e74a6a41 Collider-controlled swimming, fixes 2016-10-16 20:07:34 +03:00
juanjp600
f5268c7c6c Fixes
It compiles now, but it's probably really broken.
2016-10-11 21:37:23 -03:00
juanjp600
0ef813f189 Merge remote-tracking branch 'refs/remotes/barotrauma/master'
Conflicts:
	Subsurface/Barotrauma.csproj
	Subsurface/Source/Screens/GameScreen.cs
2016-09-26 17:03:14 -03:00
Regalis
b01b52172a Topwindow sprite fix, fixed null reference exception when welding/cutting walls that aren't part of a sub 2016-09-21 19:39:00 +03:00
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
juanjp600
9416eb64d7 Completely destroyed game
Looks like a lot more than just netcode is getting rewritten. Removing coroutines because there are better ways of handling asynchronous tasks, removing filestream because that's to be reimplemented later
2016-08-30 19:59:14 -03:00
juanjp600
af220dbc2a Removed Fill/ReadNetworkData
These functions needed to be replaced because they rely heavily on reliability.

Instead, new functions called (Write/Read)Data(Server/Client) will be added. 

Separating client and server code into completely separate functions will help ensure that proper security checks are performed.
2016-08-29 20:02:46 -03:00
Regalis
cce3b32a82 v0.5.0.1 2016-08-16 17:11:19 +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
3e3ec5a2ef Fixed fire extinquishers 2016-06-27 18:38:11 +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
41569675f3 Started refactoring the submarine class in order to make it possible to add multiple submarines (or other movable structures) 2016-06-09 18:34:43 +03:00
Regalis
0621f6c9e3 Impulses aren't applied to disabled item bodies when the submarine hits something, velocities of item bodies are reset when the item is dropped, pathfinding errors don't open the debug console 2016-06-01 20:56:07 +03:00
Regalis
da98ade77c - item sprites visible in fabricator menu
- deth charge rotation fix
- sonar tweaking (ruin walls look slightly different from cave walls)
- connector sprite positioning fix
- repairtool is active when in use
2016-05-25 16:18:02 +03:00
Regalis
b4af92ace2 Small optimization: items have a list of components that have to be drawn 2016-05-24 21:17:38 +03:00
Regalis
a477dad1b2 Renamed the CollisionMisc collision category to CollisionItem, teleporting items inside/outside the sub if their physicsbody leaves/enters a hull, powercontainer charge can be changed in editor (i.e. batteries can be set to fully loaded) 2016-05-19 19:47:26 +03:00
Regalis
6537751961 Particle emitters can be assigned to statuseffects, fixed item.Submarine not being set correctly for throwable items, flare particles + sounds, nerfed some of the medical items 2016-05-11 20:16:50 +03:00
Regalis
03626c997b - Fixed shadows not being cast if the lightsource is outside the sub and the convexhull is not
- Option to change the texture of the "light sphere"
- Added "headlights" to the scooters
2016-05-03 00:27:48 +03:00
Regalis
09e8b8b9c6 - RepairTools work for structures that are outside the submarine
- Ruins are visible in sonar
- Fixed ruin generation algorithm occasionally creating too narrow rooms and placing corridors so that they're blocked by corners of a room
- Fix for wall textures being misaligned for map cells with no physics body
2016-05-03 00:14:52 +03:00
Regalis
3114006d86 Alien ruins, some new alien items and a new monster 2016-05-01 18:46:17 +03:00
Regalis
d3ab7946a8 Using ToLowerInvariant instead of ToLower (the game works for Turkish players now!)
http://www.moserware.com/2008/02/does-your-code-pass-turkey-test.html
2016-04-27 17:14:09 +03:00
Regalis
12dc494e42 Displaying the condition of contained items in the inventory slot of the parent item (i.e. the amount of oxygen left in a diving suit is visible without highlighting the suit), some debug logging, colored speech bubbles 2016-04-21 17:17:42 +03:00
Regalis
3ac8139fc7 - changes to the logic for distributing oxygen through vents: the oxygen generator pushes more oxygen to larger rooms
- bugfixes in HumanoidAnimController.Flip()
- item/itemcomponent statuseffects are stored in a dictionary with the actiontype as a key, so the item doesn't have to iterate over all the components and all their statuseffects
- gap bubble particle tweaking
2016-03-29 17:57:05 +03:00
Regalis
0dbfb54b5f - crouching (allows placing signal items at the bottom of a room and may be useful when doctors are added (CPR animation, using medical items on dead bodies?))
- changes to the dying logic: characters will be unconscious when their health or oxygen goes below 0.0, and die when it drops to -100.0 (if either of the values is below zero, it will automatically decrease so the character will quickly die without medical care)
- fixed LightSprite being drawn on LightComponents even if the item is inside an inventory
- characters extend their arm more when placing signal items
2016-03-20 20:15:47 +02:00
Regalis
8df9864db9 - emergency siren and alarm buzzer items
- wires and alarm buzzers can be fabricated
- fixed items selecting constructions outside the hulls
- ItemLabel.TextColor works now
- removed a random dot at the corner of head5.png
- inventory is visible in wiring mode
- fixed null reference exceptions in AIObjectiveGoto and Holdable
2016-03-17 19:28:46 +02:00
Regalis
d6a57f9533 Bunch of crew AI bugfixes/improvements:
- replacing empty oxygen tanks
- fixed characters only fixing leaks in the outer hull
- prioritizing large leaks over small ones
- fixed characters doing nothing after fixing all the leaks (and sinking to the bottom if they happen to be outside)
- more accurate welder aiming
- AIObjectiveGetItem makes the characters go to the cabinet/container an item is inside, not to the actual item (which may not be actually positioned at the container)
2016-03-16 17:41:59 +02:00
Regalis
d1580328ed Some cleanup using ReSharper (mostly removing redundancies) 2016-03-12 15:32:34 +02:00
Regalis
a1c728d207 Networking bugfixes & improvements:
- fixed server not sending kill-events when a monster dies
- some interpolation when correcting character positions
- physicsbody position lerping improvements
- sending AICharacter Dir instead of TargetDir
2016-03-09 16:56:42 +02:00
Regalis
00c1edad09 - Changes in UpdateNetPlayerPosition
- Holdable items don't try to change the pose if hand anim is disabled (e.g. when dragging someone or using a railgun controller)
- Indicator which shows the position of the sub when spectating
- Bugfix in controller selection logic
- Saving attributes on separate lines in serversettings.xml
- Safer validation of received sub files
2016-02-28 14:33:03 +02:00
Regalis
9f8f4e290e Fixed propulsion applying force to _every limb except_ the ones it's supposed to, fixed pressure building up in enclosed rooms that are full of water, fixed netlobby displaying multiple votes for clients, progress on file transfer 2016-02-26 22:21:00 +02:00
Regalis
8672a47a12 Taking structure offset from origin into account when spawning the sub, repairtool automatically targets last section if welding the second-to-last 2016-02-20 14:12:04 +02:00
Regalis
058a269ecb More easily readable netstats (B/kB/MB instead of just B), scrollable netstats client list, possible to wear multiple items in same limb, handcuffs 2016-02-20 13:00:05 +02:00
Regalis
c605adf879 Fixed networkevents crashing due to client trying to access server.connectedclients 2016-02-19 17:18:31 +02:00
Regalis
4ad8105cd6 Characters with no CharacterInfo can't be selected, fixed broken tickboxes in server settings, inventory log tweaking, one gap sound per hull, chat message "commands" changed from /d to d; 2016-02-17 20:43:42 +02:00
Regalis
dd73887aa1 Properly setting serverlog scrollbar size, clown gear 2016-02-16 22:25:06 +02:00