56e04823f1
Logging when players attach items on walls or detach them, null exception fix in Throwable (picker is set to null in Item.Drop)
Joonas Rikkonen
2017-07-17 23:28:46 +03:00
575b643c62
Added "user" parameter to Inventory.PutItem and Inventory.TryPutItem. + More descriptive wiring logging: the logs don't list all the wires in a connectionpanel but only the changes a player does to the wiring. Disconnecting wires by picking them up and wiring done by the host are also logged now.
Joonas Rikkonen
2017-07-17 23:27:31 +03:00
50fc576840
When a submarine collides with something, impacts are also applied to docked subs
Joonas Rikkonen
2017-07-16 16:48:59 +03:00
d5aa1d8b97
Selecting an item with no ItemContainer component doesn't prevent equipping/unequipping items by double clicking, added missing "gamescreen" console command
Joonas Rikkonen
2017-07-13 23:33:53 +03:00
cc9ebe9fc2
Interaction logic tweaking again: - Reverted the item distance calculation change in commit c7fd681 (it made interaction way less precise, as items near the character tended to get focus even if the cursor was nowhere near them), and replaced it with: - Aim assist considers the distance to an item to be 0.0 if the cursor is inside a trigger of the item. - Reverted 769a012 and disabled aim assist when an item is selected. Meaning that now items don't have to be deselected before interacting with another item, but the cursor has to be directly on the other item to make accidental interaction less likely. - Removed some redundant trigger calculations from CanInteractWith.
Joonas Rikkonen
2017-07-13 23:32:39 +03:00
8693dc3d3d
Fixed AI crew members swimming too fast, reduced max swimming speed (= the speed when holding shift)
Joonas Rikkonen
2017-07-12 17:53:07 +03:00
1ebc923064
Fixed seeing through walls when under a sub
Joonas Rikkonen
2017-07-11 23:41:47 +03:00
ed7fd7dbc1
Clients don't stop updating the controls/HUD/etc of their character when water pressure reaches lethal levels until the server implodes the character. Requested by nilanthanimosus; doesn't change much in the vanilla game, but modded servers can now disable pressure deaths without characters becoming immobilized in high pressure.
Joonas Rikkonen
2017-07-11 21:41:31 +03:00
af1a681da0
Fixed far-away AI characters staying disabled when switching control to them + minor optimization
Joonas Rikkonen
2017-07-11 20:01:49 +03:00
935b1ff837
Console fixes, logging launched turret projectile and the items contained inside it
Joonas Rikkonen
2017-07-11 19:29:41 +03:00
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.
Joonas Rikkonen
2017-07-10 21:10:54 +03:00
59fba47f63
When the player highlights a wire in a connection panel, the physical wire and the items connected to it are highlighted. Fixes issue #16.
Joonas Rikkonen
2017-07-10 00:37:17 +03:00
630a079679
"MessageBox" chatmessage type. Not used in the vanilla game (yet), but custom servers can use it to display custom message boxes at the clients' end. Closes#17
Joonas Rikkonen
2017-07-09 23:25:41 +03:00
045a48cc33
Logging item throwing and which items are contained in items characters use on themselves (e.g. which meds are inside a syringe)
Joonas Rikkonen
2017-07-09 21:52:13 +03:00
e0c10860ba
Fixes to holdable items again: items can be attached outside hulls in the sub editor, but not in-game
Joonas Rikkonen
2017-07-09 20:23:14 +03:00
f2d603d2f0
Fixed issue #15 (sub/shuttle lists being empty at the client's side after joining a server). The clients would ignore the initial update message if they happened to receive one of the normal update messages before the initial one.
Joonas Rikkonen
2017-07-09 20:19:53 +03:00
cbe7200ff6
Deselecting the currently selected item has a higher priority than interacting with the focused item (i.e. can't interact with another item until the selected item is deselected)
Joonas Rikkonen
2017-07-09 19:19:28 +03:00
769a012776
Items that are in an inventory can't be focused on (otherwise characters would constantly focus on the item they're holding)
Joonas Rikkonen
2017-07-09 19:08:45 +03:00
bd4c7d68d0
Fixed endless messagebox spam when the controlled character turns into a husk, fixed an index our of range exception when merging firesources
Joonas Rikkonen
2017-07-09 16:17:44 +03:00
2598bb1bd3
Fixed attachable items becoming detachable without any tools after they've been detached once
Joonas Rikkonen
2017-07-08 18:32:21 +03:00
d4b58e16b9
Fire & explosion decals
Joonas Rikkonen
2017-07-08 18:30:07 +03:00
4e4983f0a6
If focused on both a character and an item, the one that's closer to the cursor can be interacted with (instead of characters having higher priority, because that would make it impossible to interact with items that are next to a dead/unconscious character). Selected characters can also be deselected without highlighting the character with the cursor.
Joonas Rikkonen
2017-07-08 14:32:01 +03:00
4d2e7c33b1
Decal system (TODO: add decals for explosions and fire), moved some of the client-specific Hull update logic to the client project
Joonas Rikkonen
2017-07-06 21:38:32 +03:00
c7fd6818a4
Some tweaking to the item interaction logic: - FindItemAtPosition uses the distance calculated in CanInteractWith to determine how close an item is to the character. Otherwise very large items (such as ladders) wouldn't be possible to select with aim assist unless the player happens to be holding the cursor close to the center of the item. - The hull-parameter is taken into account in FindItemAtPosition. - Characters are considered to be inside a trigger if either their lower or upper body is inside it. - Added triggers to engines because they are often placed partially inside a wall, making it impossible to rewire them if the center is not inside the sub.
Joonas Rikkonen
2017-07-05 20:14:51 +03:00
b064b979c1
Fixed NotImplementedException in Character.CanInteractWith in the server project
Joonas Rikkonen
2017-07-05 19:41:02 +03:00
64ad5e5003
Removed unnecessary using directives
Joonas Rikkonen
2017-07-05 18:35:09 +03:00
8f3c58de4b
Fixed null exceptions when selecting a sonar in a sub with no hulls
Joonas Rikkonen
2017-07-05 17:39:30 +03:00
e431cc775f
Some null checks, clients log initial lobby update, minor lighting optimization
Joonas Rikkonen
2017-07-04 22:32:14 +03:00
59997b94ab
Split tigerthresher's tail and body into multiple parts
Joonas Rikkonen
2017-07-04 22:17:44 +03:00
9b054ebd50
Added an artifact that attracts creatures, item max health can be changed & items can be made indestructible
Joonas Rikkonen
2017-07-04 22:10:30 +03:00
60a826f0cd
Separate help commands for server and client
Joonas Rikkonen
2017-07-03 20:55:22 +03:00
8aa6ba71b6
Another attempt to fix the "Destination array was not long enough" errors in AddToGUIUpdateList:
Joonas Rikkonen
2017-07-03 19:07:54 +03:00
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
Joonas Rikkonen
2017-07-03 18:28:23 +03:00
8e880b2ded
Added GUINumberInputs to the extra cargo menu, minor additions to GUINumberInput
Joonas Rikkonen
2017-07-02 22:17:12 +03:00
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.
Joonas Rikkonen
2017-07-02 21:36:17 +03:00
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.
Joonas Rikkonen
2017-07-02 18:58:07 +03:00
da71b6bf9c
Option to supply a reason for banning/kicking, logic for handling question prompts in the debug console
Joonas Rikkonen
2017-07-02 15:25:55 +03:00
a1bc622faa
Added new particle sprites to the correct project
Joonas Rikkonen
2017-07-01 15:23:32 +03:00
e15f5a881b
Merge branch 'dedicated-server' (TODO: make sure I didn't break anything)
Joonas Rikkonen
2017-06-30 21:02:52 +03:00
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.
Joonas Rikkonen
2017-06-30 17:28:52 +03:00
bb91c8ce75
Fixed occasional "trying to read past the buffer size" errors when reading messages from the clients
Joonas Rikkonen
2017-06-29 21:21:37 +03:00
1b5c4ae63a
UpdateControlled only runs on the controlled character (-> fixes camera always focusing on the last spawned character)
Joonas Rikkonen
2017-06-29 18:49:54 +03:00
d2f062ca61
Fixed a compilation error when the DEBUG symbol is defined
Joonas Rikkonen
2017-06-29 17:14:22 +03:00
d6228500f4
Fixed submarine positions not being sent
Joonas Rikkonen
2017-06-29 00:17:21 +03:00
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.
Joonas Rikkonen
2017-06-28 23:05:41 +03:00
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)
Joonas Rikkonen
2017-06-28 18:38:24 +03:00
450020b47c
Characters don't attempt to grab grab severed limbs when dragging dead bodies
Joonas Rikkonen
2017-06-28 17:04:37 +03:00
be2074b4f0
Added some convenient console commands
juanjp600
2017-06-22 19:51:19 -03:00
72d5cb227b
Fixed EndGame not working properly + Fixed exception when clients disconnected during a round
juanjp600
2017-06-22 15:20:11 -03:00
03670d735d
Crawlers and mantises can attach to ice walls when idling
Joonas Rikkonen
2017-06-22 20:05:19 +03:00
397e6a5a97
The camera zooms out further when controlling a large non-humanoid character
Joonas Rikkonen
2017-06-22 19:04:22 +03:00
5d5923ab28
Rebuilt freetype6.dll with Visual Studio 2015, statically linked runtime
juanjp600
2017-06-22 12:18:27 -03:00
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.
Joonas Rikkonen
2017-06-22 18:16:00 +03:00
c1780fa7b7
Server sleep time is slightly smarter + loading debug messages
juanjp600
2017-06-22 00:24:30 -03:00
7ab01b8237
Fixed linked subs not spawning
juanjp600
2017-06-21 14:51:36 -03:00
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).
Joonas Rikkonen
2017-06-21 20:45:33 +03:00
38f92acf8e
Bunch of fixes to null reference exceptions caused by removing characters mid-round
Joonas Rikkonen
2017-06-21 16:56:35 +03:00
4ac9aa09c6
Eaten characters disappear, tweaked the movements of the eater a bit
Joonas Rikkonen
2017-06-21 16:55:56 +03:00
0740579f62
Ingame syncing kinda works
juanjp600
2017-06-20 22:28:18 -03:00
db9a77fb25
Fix for IndexOutOfRange exceptions during map generation caused by very large wall cells near the entrance of the level (example seed: i1qecA7V)
Joonas Rikkonen
2017-06-20 21:19:04 +03:00
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
Joonas Rikkonen
2017-06-20 21:16:42 +03:00
d07649463b
Fixed limbs becoming severed even if the character isn't dead, severed limbs fade out after 10 seconds
Joonas Rikkonen
2017-06-20 21:01:59 +03:00
7003214847
Console colors, begin RNG rework
juanjp600
2017-06-19 21:30:57 -03:00
a09367c78f
Updated and refactored how items and characters are chosen for interactions in the world. The new system has more precision, with items under the cursor taking priority (this helps with small items which are in front of large items). A new method CanInteractWith(Item) has been added to the Character class which does all validation of interaction with items, including new distance calculations based on bounding boxes. This gives more consistency in selecting and interacting with all sizes and shapes of items. Because of this pickdistance (not interactdistance) has been removed from all item configurations (in their XML config files) and the default InteractDistance for all items is now 120.
Faerdan
2017-06-18 22:30:54 +01:00
8f37e14917
Split Machines ItemComponents
Juan Pablo Arce
2017-06-18 14:36:11 -03:00
7168a534ed
Further separation of client-specific code
juanjp600
2017-06-16 16:02:07 -03:00
7bc535780c
Reducing usage of #if CLIENT / #elif SERVER
juanjp600
2017-06-14 17:30:40 -03:00
06e23ffe6d
Some tweaks to make enemy attacks less likely to miss: - Option to select which limbs attack force is applied to (e.g. husks and crawlers now lunge forward when attacking). - Enemies attack towards the closest limb of their target instead of the main limb.
Joonas Rikkonen
2017-06-14 20:38:16 +03:00
242da11e3f
Attack configs determine whether an attack can sever limbs (instead of the amount of damage), new blood particles
Joonas Rikkonen
2017-06-14 19:24:49 +03:00
f6425a7229
Characters using FishAnimController twitch for a few seconds after dying
Joonas Rikkonen
2017-06-14 16:27:12 +03:00
680204b2cc
Fixed severed limbs coming back together when SimplePhysicsEnabled is toggled off and on
Joonas Rikkonen
2017-06-14 16:25:39 +03:00
65db119158
Strong attacks can sever limbs (railguns now cut crawlers in half and threshers can rip off limbs)
Joonas Rikkonen
2017-06-13 18:20:57 +03:00
5cd2a5a838
NetEntityEventManager stops writing events to a message if the MTU is about to be exceeded and leaves the remaining events for the next message.
Joonas Rikkonen
2017-06-13 20:47:15 +03:00
12731a8137
New waterblood particle
Joonas Rikkonen
2017-06-13 18:20:38 +03:00
4d8da85956
Configured combat strengths for all enemy types, tweaked attack priorities & movement parameters
Joonas Rikkonen
2017-06-13 17:10:44 +03:00