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
baf6a94e38
Fixed wall damage not being visible if there's only one damaged section
2016-11-24 19:15:38 +02:00
Regalis
d37bad2d44
Wire sections are updated after flipping, made the wire node list private and added public methods which ensure that sections are updated when modifying nodes
2016-11-16 18:41:32 +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
Regalis
c2098f06f8
Removed a redundant DrawRectangle method & redundant sub visibility culling in GameScreen
2016-11-12 18:29:39 +02:00
Regalis
7fa660d38e
Wires can be cloned and moved if both items it's connected to are selected
2016-11-12 15:51:46 +02:00
juanjp600
0e9c20c666
Case-sensitivity checks on Windows
...
Should prevent "TigerThresher" from happening again.
2016-11-10 21:45:59 -03: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
d017817878
Updating wire sections if the wires are moved during loading
2016-11-09 16:23:48 +02:00
Regalis
f4a942414d
More efficient culling, workaround for null exception in CombatMission.GetTeamName
2016-11-06 19:41:32 +02:00
Regalis
bddc673fed
Mapentity visibility culling based on their parent sub (-> subs outside the camera view aren't rendered)
2016-11-06 18:59:05 +02:00
Regalis
92985f3ed9
Position updates not sent for subs docked to the second main sub
2016-11-06 16:56:05 +02: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
Regalis
19683e749d
Waypoint generation fix (submarine collider is ignored when doing visibility checks), regenerated waypoints in vanilla subs
2016-11-01 19:06:33 +02:00
Regalis
1b818b6422
Fixed timestep logic is disabled during loading (less choppy loading screens & no pause at the start of the game), damageable structures visible in LOS again, footstep sound tweaking
2016-11-01 19:05:09 +02:00
Regalis
eb2c51c2f1
Cleanup with resharper (mostly removing redundancies & using collection.Length/Count properties instead of the Count method)
2016-10-31 20:50:20 +02:00
Regalis
df9f89e383
Submarine position syncing
2016-10-25 20:50:47 +03:00
Regalis
62dd055e8d
Merge branch 'master' into animcontroller-overhaul
...
Conflicts:
Subsurface/Content/Characters/Crawler/crawler.xml
Subsurface/Source/Characters/AICharacter.cs
Subsurface/Source/Characters/Animation/FishAnimController.cs
Subsurface/Source/Characters/Animation/Ragdoll.cs
Subsurface/Source/Characters/Character.cs
Subsurface/Source/Map/Submarine.cs
Subsurface/Source/Map/SubmarineBody.cs
Subsurface/Source/Networking/GameClient.cs
Subsurface/Source/Networking/GameServer.cs
Subsurface/Source/Physics/PhysicsBody.cs
2016-10-25 20:09:25 +03:00
Regalis
07f8c966ab
Submarine position is synced using the same logic as the characters, AICharacter position syncing
2016-10-25 19:01:19 +03:00
Regalis
641e579e92
Backported animcontroller-overhaul
2016-10-22 15:18:16 +03:00
Regalis
92b61ee816
Merge branch 'master' into animcontroller-overhaul
2016-10-19 21:15:44 +03:00
Regalis
9fed308705
InGame update messages include a timestamp which is passed to the ClientRead methods
...
Now only used in character position syncing, but some other entities may also have an use for it (e.g. discarding outdated data)
2016-10-18 19:04:32 +03:00
Regalis
f3e74a6a41
Collider-controlled swimming, fixes
2016-10-16 20:07:34 +03:00
juanjp600
7e6ef65eb3
Improved LOS effect
...
It's pretty inefficient (I need to figure out how to set up new shaders), and it might let the player see too much, but it looks way better than pure black.
2016-10-12 16:54:41 -03:00
juanjp600
72033a581e
Merge remote-tracking branch 'refs/remotes/barotrauma/master'
...
Conflicts:
Subsurface/Properties/AssemblyInfo.cs
Subsurface/Source/Characters/Character.cs
Subsurface/Source/GUI/GUI.cs
Subsurface/Source/GameMain.cs
Subsurface/Source/GameSettings.cs
Subsurface/Source/Items/CharacterInventory.cs
Subsurface/Source/Items/Components/ItemComponent.cs
Subsurface/Source/Items/Components/Machines/Pump.cs
Subsurface/Source/Items/Components/Machines/Radar.cs
Subsurface/Source/Items/Components/Machines/Steering.cs
Subsurface/Source/Items/Components/Power/PowerContainer.cs
Subsurface/Source/Items/Inventory.cs
Subsurface/Source/Items/Item.cs
Subsurface/Source/Items/ItemSpawner.cs
Subsurface/Source/Map/Levels/WaterRenderer.cs
Subsurface/Source/Map/LinkedSubmarine.cs
Subsurface/Source/Map/Map/Map.cs
Subsurface/Source/Map/Structure.cs
Subsurface/Source/Map/Submarine.cs
Subsurface/Source/Map/WayPoint.cs
Subsurface/Source/Networking/GameClient.cs
Subsurface/Source/Networking/GameServer.cs
Subsurface/Source/Physics/PhysicsBody.cs
Subsurface/Source/Screens/GameScreen.cs
2016-10-11 20:19:25 -03:00
Regalis
ffc6782025
Removed fixed timestep logic from GameScreen (redundant now because the logic is handled in GameMain)
2016-10-04 19:54:17 +03:00
Regalis
050f7ffc83
Removed fixed timestep logic from GameScreen (redundant now because the logic is handled in GameMain)
2016-10-04 19:21:05 +03:00
juanjp600
bdcd894b83
Flipping sprites of staircases & engine
2016-10-01 16:41:16 -03:00
Regalis
0fe822c96a
Stair body + linkedsub flipping
2016-09-30 20:07:36 +03:00
Regalis
8e8a0e57f0
Cleaned up the flipping logic a bit, overridable MapEntity.FlipX method
2016-09-30 19:48:56 +03:00
Regalis
0da9f58325
Fixed physics item & wire flipping
2016-09-30 19:00:12 +03:00
juanjp600
f6b82eb095
Some progress on flipping subs
...
Press crouch to flip every sub in the map, texture alignment breaks and physics items vanish, but other than that it's working.
2016-09-29 22:20:15 -03:00
juanjp600
e318034a1a
Remove submarines markers from radar in combat missions
...
This should make the mission type a lot more fun.
2016-09-27 19:42:15 -03:00
juanjp600
344947c3c4
Search and destroy mission
...
Featuring ugly code
2016-09-26 22:09:06 -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
790212a20b
Merge branch 'walldamage'
2016-09-26 16:28:52 +03:00
juanjp600
02d98f5d29
Merge remote-tracking branch 'refs/remotes/barotrauma/master'
...
Conflicts:
Subsurface/Source/Networking/FileStreamReceiver.cs
Subsurface/Source/Networking/FileStreamSender.cs
Subsurface/Source/Networking/GameClient.cs
Subsurface/Source/Networking/GameServer.cs
Subsurface/Source/Networking/GameServerLogin.cs
Subsurface/Source/Networking/NetworkEvent.cs
Subsurface/Source/Screens/NetLobbyScreen.cs
2016-09-24 21:28:37 -03:00
juanjp600
d537e8795a
Replace '' (two single quotes) with \" (double quote)
...
We must correct post-traumatic Blitz disorder
2016-09-24 21:26:08 -03:00
Regalis
f8368f464a
Walls have an additional background sprite below the destructible sprite, separate parameters for rgb and alpha lerping in the damage shader
2016-09-19 21:51:37 +03:00
Regalis
b24359464b
Wall damage shader testing (WIP)
2016-09-16 14:47:08 +03:00
juanjp600
bfd8bc6b35
Server serialization functions require client
2016-09-07 17:32:20 -03:00
Regalis
cf77a59c97
Implemented some of the itemcomponent read/write methods, made submarines server serializable
2016-09-02 17:59:08 +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
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
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
d55926a352
Option to choose which submarine to use as the respawn shuttle, submarines can be given "tags" (atm just shuttle and HideInMenu), separate saving window in sub editor
2016-08-05 14:06:05 +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
f8fec79785
Parts of the submarine that are left behind in the level will stay there, it's possible to leave the level without the main sub (e.g. in an escape shuttle)
2016-07-16 16:14:51 +03:00