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
91699b26a6
Giveperm and revokeperm commands work correctly now when used by clients
2017-12-20 18:58:27 +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
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
Joonas Rikkonen
9599137e83
Console command permissions can be changed in the client permission menu, permitted commands are displayed in the client-side permission popup
2017-12-07 18:25:08 +02: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
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
Joonas Rikkonen
1cc33d221d
Moving the sub using IJKL in debug builds is disabled when writing into a textbox.
2017-12-02 16:46:27 +02:00
Joonas Rikkonen
063881701c
Fixed exceptions when attempting to set the value of a serializable rect property by parsing a string
2017-12-02 16:25:21 +02:00
Joonas Rikkonen
c66191ca94
Added exception handling to SerializeProperty.TrySetValue methods
2017-12-02 15:50:40 +02:00
Joonas Rikkonen
ccac8de723
Removed unused NetConfig constants and leftover debug code in GameServer
2017-12-02 15:42:52 +02:00
Joonas Rikkonen
04bcc6b9b1
Modifications to the damage/armor system:
...
- Armor values aren't reduced from the damage taken, but instead multiply the damage (e.g. an item reduces damage by 10% instead of 10 hp). Now armor doesn't make characters invulnerable to small amounts of damage.
- Armoring isn't defined as a single "armor value", but instead there are "damage modifiers" which can be added to items and limbs. The modifiers can only affect specific types of damage and have separate multipliers for the damage amount and bleeding amount.
- Having a fire proof item on a limb doesn't make that limb invulnerable to burn damage. Item's that protect against fire now have a damage modifier for the Burn damage type.
2017-12-02 15:42:13 +02:00
Joonas Rikkonen
deefcafe02
Made the name of the "Linkable/IsLinkable" property consistent
2017-12-02 14:19:23 +02:00
Alex Noir
1394d15c29
fix start pop up saying the host is the target if host becomes traitor
2017-12-02 11:09:06 +03:00
juanjp600
5cb603b3e5
Fixed entity linking not working
2017-12-02 01:05:16 -03:00
Joonas Rikkonen
2fea48287c
Item pickup sounds are only played when the controlled character picks up an item
...
Closes #51
2017-12-01 22:11:14 +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
juanjp600
2d55d41320
Fixed railgun HUD crash when the first linked item doesn't have an ItemContainer
2017-12-01 09:53:07 -03:00
Joonas Rikkonen
5b1798cb50
Fixed monsters not taking damage when they're far enough from the host's camera (or the main sub when using the dedicated server). The limbs of the monsters were disabled when 8000 units away, causing them to become invincible because the collider does not register damage.
...
Closes #50
2017-11-30 17:07:37 +02:00
Joonas Rikkonen
6e9c33fe89
Added radio chat hotkey
2017-11-29 19:16:53 +02:00
Joonas Rikkonen
e4664b3d27
The character spawning debug command doesn't require the config file of the character to be in the default character folder (as long as the character is included in the selected content package).
2017-11-29 19:16:31 +02:00
Joonas Rikkonen
51fe7df481
Railgun HUD (shows supercapacitor charge & how many shells there are left)
2017-11-27 19:34:57 +02:00
Joonas Rikkonen
e79ad3dceb
Fixed AICharacters not playing sounds in mp
2017-11-24 17:49:52 +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
765587efd7
Renamed screens (EditMapScreen -> SubEditorScreen, EditCharacterScreen -> CharacterEditorScreen)
2017-11-18 15:13:03 +02:00
Joonas Rikkonen
903686aed7
Modified particle properties can be saved directly to the config file
2017-11-18 14:18:46 +02:00
Joonas Rikkonen
d13d3101ea
Made enum deserialization case insensitive
2017-11-16 21:00:42 +02:00
Joonas Rikkonen
08cf902cb8
MapEntityPrefabs are deserialized using SerializableProperty
2017-11-15 19:01:55 +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
d072713936
Replaced manual rect parsing in a bunch of places with an extension method
2017-11-14 21:09:07 +02:00
Joonas Rikkonen
913a102591
Option to set aliases for StructurePrefabs
2017-11-14 21:04:49 +02:00
Joonas Rikkonen
5d525865bf
More descriptive error message when a fabricable item can't be found
2017-11-14 20:00:57 +02:00
Joonas Rikkonen
ff926c1da2
Warning texts when water pressure is increasing to dangerous levels and when running out of oxygen, added a method for invoking an arbitrary action after a delay to CoroutineManager
2017-11-14 19:10: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
b3769b383a
- Input field for rects.
...
- Input fields for ItemComponent requiredItems.
- Added tooltips to a bunch of editable ItemComponent properties.
- Misc fixes.
2017-11-13 22:06:13 +02:00
Joonas Rikkonen
f7298c241e
Progress:
...
- Input fields for vectors & colors in SerializableEntityEditor.
- SerializableProperty tooltips.
- GUINumberInput supports floats.
- EditingHUD for structures (atm the only editable property is the color of the sprite)
2017-11-12 20:24:11 +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
ec020f43d3
Fixed creatures seeking towards an incorrect position when trying to eat something (causing larger creatures like threshers and coelanths to swim around the target without ever reaching it), extra check for removed entities in AITarget
2017-11-01 20:58:37 +02:00
Joonas Rikkonen
69d0fac69d
Made the damage range of limb attacks configurable (instead of having it always be half of the distance at which the attack activates) and tweaked the damage ranges of all the creature attacks
2017-11-01 20:42:25 +02:00
Joonas Rikkonen
1f92e31166
HumanAIController calculates the "dangerousness" of an enemy based on the largest amount of damage received from it (assuming it's larger than the attack values of the enemy's limbs). Meaning that an enemy that inflicted lots of damage to the character using items is considered dangerous even if it has no attacks assigned to it's limbs.
2017-10-19 00:01:34 +03:00
Joonas Rikkonen
6bfca5f7fe
- Hitscan projectiles, projectiles can be set to disappear after hitting something.
...
- Option to adjust ranged weapon spread (separate values for "normal spread" and when being used by an unskilled character).
- Option to disable explosion flashes.
2017-10-18 23:48:25 +03:00
Joonas Rikkonen
142920d704
- Added sprites for damaged doors.
...
- Fixed destroyed doors being impossible to repair because the repair tool raycasts wouldn't hit the disabled body of the door.
- Destroyed doors don't cast shadows and the body isn't re-enabled until the door is restored to 50% health.
2017-10-12 19:45:49 +03: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
c444186426
Updated client project (ShiftSummary -> RoundSummary), removed unused drowningtime variable
2017-10-05 21:35:57 +03:00
Joonas Rikkonen
f8dfba91b8
Capped oscillator frequency to 240 Hz to prevent players from causing performance issues by setting it to an excessively high value
2017-10-05 21:19:23 +03:00