Commit Graph

133 Commits

Author SHA1 Message Date
Regalis
4bf01aeba7 Improved MiniMap: shows hull integrity and oxygen levels, and can be configured to only show oxy/water data if the rooms have detectors in place
+ itemprefab "aliases" (allows changing item names while keeping backwards compatibility with older sub files)
2016-09-08 20:21:55 +03:00
juanjp600
8f675e625b Host can ban lobby players from ingame
New menu looks really ugly but it works
2016-08-28 22:16:49 -03:00
juanjp600
86704c7d83 Stricter item interaction check 2016-08-28 20:00:46 -03:00
juanjp600
73fc0cf724 More security checks
This actually looks pretty bad, not gonna lie.
2016-08-28 19:54:31 -03:00
Regalis
e715f07922 - spam filter closeFactor works correctly even if the client has sent less than 20 messages, slightly more aggressive filtering
- anti-husk drug
- resized medicine/chemical physics bodies to match the sprites
- damage done to items is determined by the structureDamage value of an attack
2016-08-28 17:29:32 +03:00
Regalis
6c5452570e More sanity checks to make sure clients aren't doing something they're not allowed to:
- AICharacter, hull, structure and submarine updates from clients are ignored
- character updates from anyone else than the client controlling the character are ignored
- players can't pick/drop items from anyone else's inventory (unless the target is unconscious/stunned/cuffed)
- server has authority over reactor temperature
2016-08-16 17:56:33 +03:00
Regalis
aa2dbab579 PickItem networkevents include whether the item was selected instead of toggling selected/deselected, items can be picked when inside their trigger even if the position of the item isn't visible (i.e. ladders in Nehalennia can be climbed again) 2016-08-13 18:34:47 +03:00
Regalis
ab923c47e3 Error message if a character config file isn't found, Linux version tries to search for "Characterfolder" if "characterfolder" isn't found 2016-08-11 21:31:02 +03:00
Regalis
69933188d6 Ragdoll.SetPosition takes platforms into account if the character isn't ignoring platforms (i.e. forcing a character on top of a platform won't make it fall through it), reaching the top/bottom of a ladder won't make networkplayers fall off, server ignores position updates from dead/unconscious characters, smaller ResetRagdollDistance 2016-08-10 19:16:18 +03:00
Regalis
4252f4b9d0 - clients don't spawn character jobitems themselves (item data is written in the StartGame network message)
- after receiving a StartGame message, clients will wait until the game is loaded before reading new messages from the server
- the Item(prefab, position, submarine) constructor uses the position as the center of the item, not as top-left corner
2016-07-29 18:38:42 +03:00
Regalis
6c79a8c568 Syncinc AICharacter inventories (a husk controlled by the host), clients don't try to read physicsbodyposition messages if the item doesn't have a body, control command works even if the character has spaces in the name 2016-07-25 18:43:09 +03:00
Regalis
8357532fc1 Cargo spawns at the floor of the cargo room, item configs are fetched from the prefab instead of reloading the config files every time when placing an item 2016-07-16 16:12:34 +03:00
Regalis
a5111d33df Tons of AI + pathfinding bugfixes:
- waypoints are created between docked subs and removed when they undock
- fixed start waypoint being left out of steering paths
- NPCs won't close doors/hatches on themselves
- NPCs won't let go of ladders until their feet are above the lower edge of the hull
- fixed FindDivingGear "loops": need to find a suit -> need to get to a suit -> need a suit to get to the suit -> need to find a suit...
- fixed characters constantly turning from side to side in small rooms
- recursive function for finding the button which opens a door (so a button doesn't have to be connected straight to a door for an NPC to be able to open it)
- AIObjectiveGetItem keeps searching for more suitable items even if a path to a matching item has been found
2016-07-08 20:53:11 +03:00
Regalis
19915fc4e5 - server log and item lists in editor can be filtered
- changes to item highlighting logic (easier in cramped subs)
- sub name/description boxes and selected items are reset when leaving the editor
2016-07-06 18:10:22 +03:00
Regalis
38c5251005 Vertical docking port, docking sounds, water flows properly between horizontally docked hulls, falseoutput of signal check components can be changed, lighting and FOW works between hulls (todo: some logic for determining when to update light.HullsInRange when two subs are moving relative to each other) 2016-06-27 17:48:20 +03:00
Regalis
b04e204dc3 - multiple submarines can be "merged" into one file (to be used as escape vessels etc)
- WIP docking ports
2016-06-26 14:31:00 +03:00
Regalis
dc7956274c - camera follows the closest sub
- WIP "respawn shuttle"
- submarine size affects its mass
- electricity fixes
2016-06-18 14:46:40 +03:00
Regalis
cf822cfae6 Submarine saving fixes, impact damage in sub-sub collisions, submarine ambient sounds 2016-06-12 14:23:08 +03:00
Regalis11
c9fd599276 Merge branch 'master' of https://bitbucket.org/Regalis11/barotrauma into multisub
Conflicts:
	Subsurface/Source/GUI/GUI.cs
2016-06-09 18:39:54 +03:00
Regalis11
41569675f3 Started refactoring the submarine class in order to make it possible to add multiple submarines (or other movable structures) 2016-06-09 18:34:43 +03:00
Regalis
14c809b2f2 Debug text tweaking, guiframe for relay component, spears loaded into a harpoon gun don't float in the air, some new names 2016-06-07 20:41:32 +03:00
Regalis
0621f6c9e3 Impulses aren't applied to disabled item bodies when the submarine hits something, velocities of item bodies are reset when the item is dropped, pathfinding errors don't open the debug console 2016-06-01 20:56:07 +03:00
Regalis
b4af92ace2 Small optimization: items have a list of components that have to be drawn 2016-05-24 21:17:38 +03:00
Regalis
00b1ec38e2 Some new wall sprites, wires are automatically dropped if both items they're attached to are removed, other items aren't highlighted while dragging an item in editor 2016-05-22 01:31:36 +03:00
Regalis
b2f83b43f8 Attacks can apply a force to the target (i.e. monsters can throw characters around) 2016-05-22 01:28:46 +03:00
Regalis
a477dad1b2 Renamed the CollisionMisc collision category to CollisionItem, teleporting items inside/outside the sub if their physicsbody leaves/enters a hull, powercontainer charge can be changed in editor (i.e. batteries can be set to fully loaded) 2016-05-19 19:47:26 +03:00
Regalis
4a54788d7b Item.FindHull changes, added depth charges and flashlights to default subs 2016-05-15 17:56:42 +03:00
Regalis11
c546c42a8b - disabled unnecessary hull updates during loading (items/gaps find the hull when everything is loaded instead of every time a hull is created or moved)
- fixed item.Submarine not being set in item.FindHull
2016-05-14 23:01:57 +03:00
Regalis
11e4f5699f PhysicsBodyPosition networkevents aren't sent for items that are inside an inventory (e.g. carried by a character), items can be moved from the inventory to containers by double clicking 2016-05-11 20:22:32 +03:00
Regalis
d5f6fff2c2 Lighting improvements: lightmap is drawn over all structures and blurred, flashlight item, OnContained statuseffects are also applied when the item is contained in a characterinventory 2016-05-07 09:16:29 +03:00
Regalis
63bb78b3ef Using TrySetLimbPosition when flipping a character to prevent limbs from going through walls, changes to outside->inside teleportation logic 2016-05-01 18:53:58 +03:00
Regalis
d3ab7946a8 Using ToLowerInvariant instead of ToLower (the game works for Turkish players now!)
http://www.moserware.com/2008/02/does-your-code-pass-turkey-test.html
2016-04-27 17:14:09 +03:00
Regalis
14ef736176 "Suicide button" is also usable in single player, unconscious characters can't be selected in sp, fixed resizing textblocks with wrapped text 2016-04-23 17:26:56 +03:00
Regalis
83081d98c0 Water forces aren't applied to disabled bodies, logging sound loading 2016-04-22 23:46:36 +03:00
Regalis
3347fcdd20 Server notifies clients about junction boxes breaking (+ clients aren't allowed to break them), fixed explosion lightSource positioning 2016-04-22 17:28:22 +03:00
Regalis
12dc494e42 Displaying the condition of contained items in the inventory slot of the parent item (i.e. the amount of oxygen left in a diving suit is visible without highlighting the suit), some debug logging, colored speech bubbles 2016-04-21 17:17:42 +03:00
Regalis
17d499d70a - clients only apply OnImpact statuseffects on items when the server says so
- fixed characters occasionally teleporting partially inside walls in mp
- made it easier to drag characters while swimming
2016-04-16 21:00:21 +03:00
Regalis
6876bdc481 Crates, some new chemicals, statuseffects that are triggered on impact, explosions can trigger "OnFire" statuseffects, applying impulses to items (and not just characters) when the submarine hits something 2016-04-16 15:33:28 +03:00
Regalis
c5685db0aa - handheld sonar
- junction boxes, sonar monitors, navigation terminals and engines break down if they're underwater long enough
- reactor cools down if it's underwater
- job-specific gear are grouped by job in separate .xml files
2016-04-09 14:31:59 +03:00
Regalis
5f05db7ca4 - fixed "signal loops" causing StackOverFlowExceptions (now the signals can only take 10 "steps" between components per frame)
- parameter for changing the output value of And/Or components when the input conditions aren't met
- or components work properly now
- a limited number of signals (100) can be queued in a delay component
2016-04-02 02:25:44 +03:00
Regalis
3ac8139fc7 - changes to the logic for distributing oxygen through vents: the oxygen generator pushes more oxygen to larger rooms
- bugfixes in HumanoidAnimController.Flip()
- item/itemcomponent statuseffects are stored in a dictionary with the actiontype as a key, so the item doesn't have to iterate over all the components and all their statuseffects
- gap bubble particle tweaking
2016-03-29 17:57:05 +03:00
Regalis
c8597f76be - added med bays to the vanilla subs
- some new wall prefabs
- medical item statuseffect tweaking
- fixed textBoxes not being deselected in waypoint editing hud after applying the changes
2016-03-26 23:25:04 +02:00
Regalis
ca492bf0d4 - health scanner item
- specific skills are required to fabricate some items
- changes to medical syringes: the status effects are defined in the chemical item instead of the syringe
2016-03-26 18:15:44 +02:00
Regalis
f585235887 Performing CPR on unconscious players, a "use on self" button for some items 2016-03-25 15:34:40 +02:00
Regalis
20d61b0647 - fixed light components throwing errors when receiving an invalid color value to the "set_color" input
- fixed it being possible to connect wires to more than two items by selecting another item while dragging the wire
- relay components break if too much power is directed through them
- relay components are active by default and the can be toggled on/off in the editor
- bool properties show as checkboxes in the editor
2016-03-17 19:16:21 +02:00
Regalis
d6a57f9533 Bunch of crew AI bugfixes/improvements:
- replacing empty oxygen tanks
- fixed characters only fixing leaks in the outer hull
- prioritizing large leaks over small ones
- fixed characters doing nothing after fixing all the leaks (and sinking to the bottom if they happen to be outside)
- more accurate welder aiming
- AIObjectiveGetItem makes the characters go to the cabinet/container an item is inside, not to the actual item (which may not be actually positioned at the container)
2016-03-16 17:41:59 +02:00
Regalis
d713874bd6 Tweaked AITarget ranges: now it's possible to evade some monsters by stopping the sub and/or turning off noisy devices, AITarget ranges can be made visible by entering "ShowAITargets" in the console, misc cleanup 2016-03-12 21:35:21 +02:00
Regalis
ad17b1a9bf - "wiring mode" which makes wiring a bit more convenient in editor
- invisible entities (items inside cabinets, hulls/gaps when they've been hidden) can't be highlighted or selected in the editor
- fixed And Components always sending a signal out during the first frame if timeframe is set to 0.0
- fixed moloch not appearing in the tutorial
2016-03-11 16:10:36 +02:00
Regalis
10bb5d061f - WIP attempt at syncing item positions
- Some changes to item floating logic (lift is also applied to items outside the sub, forcefactor is clamped to 1 if the item is fully submerged)
2016-03-07 00:57:15 +02:00
Regalis
c2a2f8374b v0.3.4.1: Temporarily disabled water moving items, bleeding slows down automatically, buttons can be fabricated, mantises don't bleed 2016-03-05 11:29:48 +02:00