Commit Graph

29 Commits

Author SHA1 Message Date
Joonas Rikkonen 10ce4bd20d Fixed messageboxes opened by the mp campaign setup UI not being shown until the UI is closed (e.g. shuttle & incompatible content package warnings), renamed MultiplayerCampaign -> MultiPlayerCampaign for consistency. See #315 2018-03-06 16:43:36 +02:00
Joonas Rikkonen f72b4c697f Fixed dedicated servers not resetting votes when a round ends. Closes #307 2018-03-05 11:41:46 +02:00
Joonas Rikkonen a1ccf501c7 Fixes to server settings. Closes #225
- Selected mode and mission type settings are saved and loaded.
- RandomizeSeed setting can be changed via the debug console and it also has an effect in the dedicated server.
- Dedicated server randomizes sub & mode settings if their selection modes are set to random.
2018-01-25 15:09:44 +02:00
juanjp600 093fb12d0b Fixed typo
How'd I even do this
2018-01-08 18:47:55 -03:00
juanjp600 539845665a Made further accuracy improvements to the timing of the dedicated server
TODO: make the dedicated server load all of the settings from
serversettings.xml
2018-01-08 18:11:07 -03:00
Joonas Rikkonen 343895d776 Console command arguments can be autocompleted by hitting tab. Closes #162 2017-12-30 18:30:55 +02:00
juanjp600 07626a1989 Merge branch 'master' of https://github.com/Regalis11/Barotrauma
Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs
2017-12-20 19:46:53 -03:00
juanjp600 7a413aee93 Optimized GameScreen.DrawMap
- Downscaled lightmap, since blurring will make this unnoticeable anyway
(TODO: make this optional)
- Render LOS in fewer passes by using a shader
- Use light volume to calculate LOS
- This also means we can use the override texture to render the diving
suit obstruct effect
- Don't render bunks and labels onto LOS background (TODO: add the
option to render back into the LOS background, i.e. just use
multiplicative blending as if it was the lightmap)
- Prefer SpriteSortMode.Deferred over all others, prefer
SamplerState.LinearClamp/PointClamp over all others
- Remove shader blur in favor of geometry blur (TODO: improve on this
further, right now it has a few artifacts)
- Trim light volumes
- Do some weird shit with the background particles (use DrawTiled
instead of relying on SamplerState.LinearWrap, because that's faster
somehow :/ )
- Pressing up/down in the console only returns a typed command now
2017-12-20 19:41:23 -03: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 3e4d2c5a8a Fixed incorrect positioning of debug console question prompts. The ShowQuestionPrompt method used to take the last textblock in the console and consider that as the question prompt text, even though the text had only been queued and the actual GUITexblock hadn't been instantiated yet. 2017-12-20 18:57:42 +02:00
juanjp600 587040483d Reenabled debugging symbols + Fixed building dedicated server on Linux 2017-12-15 11:40:42 -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
juanjp600 c6ca3572ba Added an option to respawn directly in the main sub 2017-12-05 03:03:37 -03:00
juanjp600 ee04eecd49 Fixed autorestart command being broken in dedicated server 2017-12-01 20:35:34 -03: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 765587efd7 Renamed screens (EditMapScreen -> SubEditorScreen, EditCharacterScreen -> CharacterEditorScreen) 2017-11-18 15:13:03 +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 1ff2054ca8 Converted the GetAttribute methods in the ToolBox class to extension methods 2017-10-04 18:38:40 +03:00
Joonas Rikkonen e26600d088 Added MP campaign setup to the dedicated server & some console commands for managing the campaign 2017-09-17 20:03:18 +03:00
Joonas Rikkonen aaea8bc709 Dedicated servers can use autorestart 2017-07-24 21:21:00 +03:00
Joonas Rikkonen ce3a8df9e0 - Fixed some properties in GameServerSettings not being saved due to being private.
- Fixed serversettings.xml overriding the settings entered in the "host server" menu in the client project.
- Added a default serversettings.xml file.

TODO: either add an error/warning of some sort if trying to use any of the ObjectProperty attributes on a non-public property or make ObjectProperty compatible with private properties. + Refactor Properties.cs, class/method naming in particular.
2017-07-20 21:47:47 +03:00
Joonas Rikkonen 6ad5dd6c1e DebugConsole refactoring : available console commands are stored in a list of "Command" objects which contain the name, help text and the action that's invoked when the command is entered. Commands can also now be autocompleted in the client project by pressing tab (TODO: implement in the server project). + Now it should be easier to implement giving clients the permission to use specific console commands. 2017-07-10 21:10:54 +03:00
Joonas Rikkonen 64ad5e5003 Removed unnecessary using directives 2017-07-05 18:35:09 +03:00
Joonas Rikkonen 60a826f0cd Separate help commands for server and client 2017-07-03 20:55:22 +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 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
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