Commit Graph

78 Commits

Author SHA1 Message Date
Joonas Rikkonen 4f0b190371 Some more hard-coded text removal 2017-12-27 14:40:33 +02:00
juanjp600 e2f4431357 Added a command for automatic hull generation
It's not perfect by any means, but it should be usable enough as a
baseline for most subs.
2017-12-23 17:57:19 -03:00
juanjp600 47b5ccd7c6 Merge branch 'master' of https://github.com/Regalis11/Barotrauma 2017-12-21 20:31:24 -03:00
Joonas Rikkonen 4db708335a Readded homoglyph comparisons to client name checking during login (i.e. similar name checks can't be bypassed by using similar-looking characters). Looks like this got removed due to a messed up merge 5bdb57b
Closes #182
2017-12-21 21:57:06 +02:00
juanjp600 c593fdb7c6 Minor networking fixes
- Don't spam the shit out of status updates (TODO: send update
immediately on drastic changes)
- Fixed some potential message misreading
- Readded homoglyph name comparison
2017-12-21 16:00:04 -03:00
Joonas Rikkonen 9ed2871ede Renamed a couple of properties for consistency & removed unnecessary CPR blood particle scaling 2017-12-20 20:26:22 +02:00
Joonas Rikkonen dde320b387 Merge pull request #101 from Crystalwarrior/moRags
Body shoulder-grab, better CPR anims, CPR and Crit overhaul!
2017-12-20 19:37:38 +02:00
Joonas Rikkonen ce37411a29 Merge branch 'permission-overhaul'. Closes #49
Conflicts:
	Barotrauma/BarotraumaShared/Source/DebugConsole.cs
	Barotrauma/BarotraumaShared/Source/Networking/ChatMessage.cs
2017-12-20 19:36:17 +02:00
Joonas Rikkonen b3c3970209 Server responses to clients using console commands ("granted permissions to client", error messages, etc) are displayed in the client's debug console instead of the chat box. Client command usage is included in server logs. 2017-12-20 19:18:32 +02:00
Joonas Rikkonen 0204bc2c49 Added permission presets (or ranks). Current presets are none (no special permissions), moderator (round management & kicking) and admin (almost everything permitted). 2017-12-19 22:27:07 +02:00
Alex Noir 1e5b25bd1a Merge branch 'master' into moRags 2017-12-17 22:41:45 +03:00
Alex Noir d5e409bfff Increase muffling effects with obstruction for spoken speech (barely affects radio chat and wifi components, however it does add extra 100f range to the distance)
Decreased required muffling to 0.3f
Added an "obstructionmult" to intensify speaking obstruction effects
2017-12-17 14:55:35 +03:00
Alex Noir 8ab97af456 Allow sub makers to alter the ID Card's description property on spawn points 2017-12-16 21:30:18 +03:00
Alex Noir 07aeac4fdc Traitor Count/Coefficient and Ragdoll and Karma server settings buttons!!! oh my GOD!!! 2017-12-09 19:09:10 +03:00
Joonas Rikkonen 9bc0931be5 Clients can execute permitted console commands server-side now. The console commands have three different actions: the default action, one that's executed client-side when a client uses it, and one that's executed server-side when a clients requests it. If the client-side action is omitted, the client relays the command to the server as-is. If the third action is omitted, the server executes the default action. 2017-12-06 19:53:05 +02:00
Joonas Rikkonen 91a8e6d0c6 Saving & loading client console command permissions, the permissions are saved as an xml file 2017-12-06 14:04:35 +02:00
Joonas Rikkonen cccdd20401 Fixed exceptions when adding entities to EntitySpawner remove queue in single player mode 2017-12-06 02:39:58 +02:00
Joonas Rikkonen 90986751c3 Merge branch 'antagonists' 2017-12-05 19:05:39 +02:00
Alex Noir 0e586651e7 Adds a [PM] tag
Fixes .Private message type colors being silly
2017-12-05 18:50:36 +03:00
Alex Noir fdd3db82e6 oops fixed logic 2017-12-05 18:22:03 +03:00
Alex Noir d4ce079d65 Lets people use keybinds to start chatting in lobby 2017-12-05 18:01:10 +03:00
Alex Noir fde3ed40a8 Prevent clients from chatting when unconscious on the serverside to prevent clients from "hacking" and enabling chat box. 2017-12-05 17:21:45 +03:00
Alex Noir a290a6a337 Tweak chatting so you can finally use keybinds OTHER than TAB/~ for chat/radio chat by disabling those keybinds when the chat box is active. This is not a problem anymore because pressing enter stops the chat box.
This is a positive change since this is a lot more "industry standard" than the previous system, which initially was very confusing and unfamiliar (at least personally).
2017-12-05 16:25:51 +03:00
juanjp600 c6ca3572ba Added an option to respawn directly in the main sub 2017-12-05 03:03:37 -03:00
juanjp600 e69e316f6b Added the option to disable karma 2017-12-04 20:52:25 -03:00
juanjp600 a0782e5d8d Blowing up the reactor sets karma to 0, all jobs except assistant require a certain karma level 2017-12-04 17:05:22 -03:00
juanjp600 6841bb154b Added Karma, harming players reduces it 2017-12-03 21:51:12 -03:00
juanjp600 f8e5a4f7ab Use SetClientCharacter in AddToRemoveQueue 2017-12-03 19:09:55 -03:00
juanjp600 e323e9dc71 Fixed chat messages being assigned to the wrong sender when their bodies have been eaten 2017-12-03 19:06:01 -03:00
Joonas Rikkonen 0840a29ff3 Started overhauling the client permission system to make it a bit more flexible. Now the clients can have the permission to use specific console commands (atm these commands are relayed to the server as-is).
TODO: make it possible to give clients console command permissions via the menus and the console, save command permissions, deal with commands that don't work as intended when simply relayed to the server and executed server-side, add "ranks" (preconfigured or custom sets of permissions, e.g. moderator, admin, etc).
2017-12-03 22:54:28 +02:00
Alex Noir ca535d295f Merge remote-tracking branch 'origin/master' into antagonists 2017-12-03 13:10:04 +03:00
Alex Noir 56df7b6900 Support for multi-traitors!
It's possible for traitors to share targets and/or target each other.
Todo: code phrases-responses, clientside settings for traitor amount
2017-12-03 00:43:14 +03:00
Joonas Rikkonen ccac8de723 Removed unused NetConfig constants and leftover debug code in GameServer 2017-12-02 15:42:52 +02:00
juanjp600 84ba36aa78 Added timestep accumulator to dedicated server, improved autorestart commands, added client permission commands 2017-12-01 14:25:10 -03:00
Joonas Rikkonen 6e9c33fe89 Added radio chat hotkey 2017-11-29 19:16:53 +02:00
Joonas Rikkonen 1c09f757a2 Renaming fields in the Client class for consistency 2017-11-23 20:43:22 +02:00
Joonas Rikkonen 4689bec441 Clients send the latest received campaign ID to the server when in the lobby instead of requesting it once with a reliable message. -> Now the server reattempts sending the save file if the transfer fails at either end. 2017-11-23 20:16:47 +02:00
Joonas Rikkonen fce7d43ef3 Fixed characters not appearing in the round summary in mp, minor CrewManager refactoring 2017-11-20 20:46:54 +02:00
Joonas Rikkonen 04e3710a65 Renaming fields for consistency 2017-11-14 22:45:22 +02:00
Joonas Rikkonen 5f4bf48449 Replaced instances where MapEntityPrefabs are searched for based on the name with a static Find method that takes the aliases of the prefabs into account. 2017-11-14 21:40:43 +02:00
Joonas Rikkonen 157d9dcaba Fixed errors when attempting to save server logs with illegal characters in the server name 2017-11-14 19:08:45 +02:00
Joonas Rikkonen 8e556f1c76 - Renamed a bunch of ObjectProperty-related stuff (ObjectProperty -> SerializableProperty, IPropertyObject -> ISerializableEntity, the "SerializableProperty" attribute -> Serialize).
- Rectangle serialization.
- Option to restrict numeric properties to a range of values.
- WIP generic ISerializableEntity editor.
2017-11-08 21:15:03 +02:00
Joonas Rikkonen a0d606ef5f Working on improving the serialization system and ObjectProperty/IPropertyObject (TODO: come up with better names). The plan is to:
- Add support for some of the most common types (vectors, colors, rects) so there's no need to parse the values in the setters of the serializable properties (see Holdable.HoldPos for example).
- Make a generic version of the item editing HUD that can be used on any IPropertyObject. Should make it easier to implement things like the character editor, editing structure properties, particle editor, etc.
- Improve the interface of the editing HUD. Instead of having to type in a string value into a textbox, there should be number input fields for numeric properties, sliders for properties that only accept a range of values, a color picker, etc. And tooltips.
2017-11-03 19:41:21 +02:00
Joonas Rikkonen f46dc5da28 Water flow logic tweaking:
- Less fluctuation, water doesn't constantly flow back and forth through gaps.
- Flowing water pushes characters around much more heavily, and the force is applied to the collider in addition to the limbs.
- Vertical gaps don't push characters up/down unless the character is roughly above/below the gap.

+ Renamed some fields in the hull and gap classes (Volume -> WaterVolume, FullVolume -> Volume, public fields start with a capital letter)
2017-10-10 21:07:45 +03:00
Joonas Rikkonen 1ff2054ca8 Converted the GetAttribute methods in the ToolBox class to extension methods 2017-10-04 18:38:40 +03:00
Joonas Rikkonen f127c410b0 Option for clients to spectate the game without respawning 2017-09-25 21:31:21 +03:00
Joonas Rikkonen 5eb1544f1e Clients can be given a permission to select the sub or the game mode 2017-09-24 17:11:10 +03:00
Joonas Rikkonen 04b0c63f30 Campaign mode can't be voted for. The host has to manually create/select the campaign save, so switching to the campaign mode when the host isn't present would cause problems. 2017-09-24 13:41:54 +03:00
Joonas Rikkonen 5a4bc0242d Voting UI fixes:
- The vote count texts are removed when voting is disabled.
- Server sends vote status to joining clients (-> clients see the number of votes immediately, not after someone votes something).
- Server refreshes vote count texts when a client disconnects.
2017-09-21 20:37:30 +03:00
Joonas Rikkonen f291a22976 - Autorestart works in campaign mode.
- The server select a random destination when the campaign starts and after each round, so the campaign can be played even if there's no host/client to choose the destinations. (TODO: make it possible to vote for the destination?)
- Reverting to the previous save if the entire crew is dead works correctly now.
- Clients load the campaign saves after receiving them (-> discovered locations/connections are synced with clients).
2017-09-19 22:05:42 +03:00