Commit Graph

4640 Commits

Author SHA1 Message Date
Joonas Rikkonen
d397253fa1 Added missing debugconsole lock 2017-07-04 17:18:33 +03:00
Joonas Rikkonen
2e2249bbf9 Fixed wall rendertriangle generation 2017-07-03 21:26:50 +03:00
Joonas Rikkonen
60a826f0cd Separate help commands for server and client 2017-07-03 20:55:22 +03:00
Joonas Rikkonen
8aa6ba71b6 Another attempt to fix the "Destination array was not long enough" errors in AddToGUIUpdateList:
The errors seem to be caused by adding messages to the debug console from another thread, which may happen if an OpenAL error occurs during sound streaming. Now the debug console queues the messages and creates the necessary UI elements in the main thread, which should(?) make it thread-safe. (TODO: figure out what's causing the OpenAL errors)
2017-07-03 19:08:52 +03:00
Joonas Rikkonen
0d7851367b Dedicated server loads the name, password and other initial settings from the serversettings file. + Fixed not being able to change the server name if the current name is null or empty 2017-07-03 18:44:06 +03:00
Joonas Rikkonen
8e880b2ded Added GUINumberInputs to the extra cargo menu, minor additions to GUINumberInput 2017-07-02 22:17:12 +03:00
Joonas Rikkonen
8ae2fb225c - Ban duration can be set in the UI prompt.
- Ban reasons & durations are listed in the banlist menu.
- Clients tell the server the reason when kicking/banning another client.
- Added GUINumberInput GUIComponent.
- Ban duration saving/loading fixes.
2017-07-02 21:36:17 +03:00
Joonas Rikkonen
df0bdb64d6 - Ban durations (TODO: add a way to set and view the durations through the menus).
- Separated ban & kick methods.
- Fixed compilation errors in DebugConsole when building the server.
2017-07-02 18:58:07 +03:00
Joonas Rikkonen
da71b6bf9c Option to supply a reason for banning/kicking, logic for handling question prompts in the debug console 2017-07-02 15:25:55 +03:00
Joonas Rikkonen
fb5db81d10 Recompiled OpenGL shaders for MonoGame 3.6 2017-07-01 22:09:30 +03:00
Joonas Rikkonen
a1bc622faa Added new particle sprites to the correct project 2017-07-01 15:23:32 +03:00
Joonas Rikkonen
e15f5a881b Merge branch 'dedicated-server' (TODO: make sure I didn't break anything)
Conflicts:
	Barotrauma/Barotrauma.csproj
	Barotrauma/BarotraumaShared/Source/Characters/AI/AIController.cs
	Barotrauma/BarotraumaShared/Source/Characters/AI/EnemyAIController.cs
	Barotrauma/BarotraumaShared/Source/Characters/AICharacter.cs
	Barotrauma/BarotraumaShared/Source/Characters/Animation/Ragdoll.cs
	Barotrauma/BarotraumaShared/Source/Characters/Attack.cs
	Barotrauma/BarotraumaShared/Source/Characters/Character.cs
	Barotrauma/BarotraumaShared/Source/Characters/CharacterNetworking.cs
	Barotrauma/BarotraumaShared/Source/Characters/Limb.cs
	Barotrauma/BarotraumaShared/Source/Events/MonsterEvent.cs
	Barotrauma/BarotraumaShared/Source/Map/Explosion.cs
2017-06-30 21:02:52 +03:00
Joonas Rikkonen
3981b4efa3 - Enemies wander randomly if they can't find a path to a selected attack target.
- Enemies don't select hulls as targets if they're already inside.
- FishAnimController updates the walking animation even if the character is not moving (otherwise the character would just fall down if TargetMovement is zero).
- Eating anim tweaking.
2017-06-30 17:28:52 +03:00
Joonas Rikkonen
bb91c8ce75 Fixed occasional "trying to read past the buffer size" errors when reading messages from the clients 2017-06-29 21:21:37 +03:00
Joonas Rikkonen
1b5c4ae63a UpdateControlled only runs on the controlled character (-> fixes camera always focusing on the last spawned character) 2017-06-29 18:49:54 +03:00
Joonas Rikkonen
d2f062ca61 Fixed a compilation error when the DEBUG symbol is defined 2017-06-29 17:14:22 +03:00
Joonas Rikkonen
84e3c062a6 Merge branch 'ai-overhaul'
Conflicts:
	Barotrauma/Source/Characters/Attack.cs
2017-06-29 17:02:37 +03:00
Joonas Rikkonen
d6228500f4 Fixed submarine positions not being sent 2017-06-29 00:17:21 +03:00
Joonas Rikkonen
0998cdbe01 Server queues entity position updates and delays sending them if there's not enough room in a message after writing the entity events and chat messages.
+ removed unused SparseUpdate
2017-06-28 23:05:41 +03:00
Joonas Rikkonen
b904cb8e0e Fixed crashing if a message has no room for any entityevents (TODO: make sure item position updates don't take up all the space in the messages and prevent entityevents from being sent) 2017-06-28 18:38:24 +03:00
Joonas Rikkonen
450020b47c Characters don't attempt to grab grab severed limbs when dragging dead bodies 2017-06-28 17:08:56 +03:00
juanjp600
4d225c65f2 Updated to MonoGame 3.6 + Directory refactor
- Barotrauma's projects are in the Barotrauma directory
- All libraries are in the Libraries directory
- MonoGame is now managed by NuGet, rather than referenced from the installed files (TODO: consider using PCL for easier cross-platform development?)
- NuGet libraries are not included in the repo, as getting the latest versions automatically should be preferred
- Removed Content/effects.mgfx as it didn't seem to be used anywhere
- Removed some references to Subsurface directory
- Renamed Launcher2 to Launcher
2017-06-27 09:52:57 -03:00
juanjp600
330b24bcf6 Some more cleanup + event desync debug messages 2017-06-25 22:09:41 -03:00
juanjp600
b7a0bff294 Some cleanup 2017-06-23 17:48:49 -03:00
juanjp600
d6d8a5b868 Removed BarotraumaServer's MonoGame dependency 2017-06-23 14:43:43 -03:00
juanjp600
89c92564b5 Consistent Update parameter order
(deltaTime, cam) instead of (cam, deltaTime)
2017-06-23 10:30:45 -03:00
juanjp600
1dc255bc2f Merge branch 'master' into dedicated-server
# Conflicts:
#	BarotraumaClient/Source/GameSettings.cs
#	BarotraumaClient/Source/Screens/NetLobbyScreen.cs
2017-06-23 10:21:02 -03:00
juanjp600
3b343899c0 "seed" command 2017-06-23 10:15:29 -03:00
juanjp600
ad1935fdcf Added commands to change sub, shuttle, gamemode & mission
Also fixed the exe icons
2017-06-22 21:42:09 -03:00
juanjp600
be2074b4f0 Added some convenient console commands 2017-06-22 19:51:19 -03:00
juanjp600
72d5cb227b Fixed EndGame not working properly + Fixed exception when clients disconnected during a round 2017-06-22 15:20:11 -03:00
Joonas Rikkonen
03670d735d Crawlers and mantises can attach to ice walls when idling 2017-06-22 20:05:19 +03:00
Joonas Rikkonen
397e6a5a97 The camera zooms out further when controlling a large non-humanoid character 2017-06-22 19:04:22 +03:00
juanjp600
5d5923ab28 Rebuilt freetype6.dll with Visual Studio 2015, statically linked runtime
Potential fix for issue #3?
2017-06-22 12:18:27 -03:00
Joonas Rikkonen
e090806d3a - Charybdis's and coelanths can eat other creatures.
- Split charybdis's tail into several parts, the single stiff tail limb made it too difficult for it to turn around.
- Option to override the torque that's used to rotate the mainlimb of swimming creatures to the correct direction.
- The scale of the characters' limbs is taken into account in EditCharacterScreen.
2017-06-22 18:16:00 +03:00
juanjp600
c1780fa7b7 Server sleep time is slightly smarter + loading debug messages 2017-06-22 00:24:30 -03:00
juanjp600
6b65e94d41 Fixed map collider generation
I didn't realize the bodies were generated in the same method that generates the mesh triangles, TODO consider splitting that
2017-06-21 18:45:06 -03:00
juanjp600
7ab01b8237 Fixed linked subs not spawning
Turns out the game actually sets Screen.Selected to null when the game starts, so the server would break on EditMapScreen checks.
2017-06-21 14:51:36 -03:00
Joonas Rikkonen
de00eb2ab4 Some fixes to attachable items (buttons, signal items, etc):
- Syncing the attached/detached state of the items. This should fix the "received a position update for an item with no physics body " errors: midround-joining clients didn't get notified if an item had been detached, causing the error to appear every time it receives a position update.
- Detached items can be picked up just like any other item, instead of having to use a wrench and wait for the item to "detach".
- Wires can't be connected to items with a physics body (such as detached buttons).
2017-06-21 20:45:33 +03:00
Joonas Rikkonen
38f92acf8e Bunch of fixes to null reference exceptions caused by removing characters mid-round 2017-06-21 16:56:35 +03:00
Joonas Rikkonen
4ac9aa09c6 Eaten characters disappear, tweaked the movements of the eater a bit 2017-06-21 16:55:56 +03:00
juanjp600
0740579f62 Ingame syncing kinda works
Reminder to self: Submarines must spawn attached shuttles in Dedicated Server, must've been something I missed when moving over client-specific code
2017-06-20 22:28:18 -03:00
Joonas Rikkonen
db9a77fb25 Fix for IndexOutOfRange exceptions during map generation caused by very large wall cells near the entrance of the level (example seed: i1qecA7V) 2017-06-20 21:19:04 +03:00
Joonas Rikkonen
f0873bdae6 Progress on making creatures eat each other, waists of humanoid characters can't be severed from the torso because they're used to anchor colliders to dead characters 2017-06-20 21:16:42 +03:00
Joonas Rikkonen
d07649463b Fixed limbs becoming severed even if the character isn't dead, severed limbs fade out after 10 seconds 2017-06-20 21:01:59 +03:00
juanjp600
7003214847 Console colors, begin RNG rework
This is gonna be a PAIN
2017-06-19 21:30:57 -03:00
juanjp600
384819c528 Merge branch 'dedicated-server' of https://github.com/Regalis11/Barotrauma into dedicated-server 2017-06-19 15:13:15 -03:00
juanjp600
fbe7dfc6fb Dedicated server actually works to some extent
Clients can connect and use chat, the sub list isn't synced properly and there's no way to start a game yet
2017-06-19 15:12:19 -03:00
Joonas Rikkonen
6f75a928ea Fixed a compilation error when the DEBUG symbol is defined 2017-06-19 19:51:22 +03:00
Joonas Rikkonen
d2ab71b07d "Explosion" debug command 2017-06-19 19:26:53 +03:00