Joonas Rikkonen
2eaf22683d
(ae643deeb) Added alive checks to a couple of diving gear status effects (don't consume tanks when dead)
2019-04-01 22:47:22 +03:00
Joonas Rikkonen
ec7e23061b
(38b5d9aad) Experimental changes to syncing ragdolled (unconscious/dead) characters: - Higher error tolerance when syncing the positions. It's often hard to get the main limb exactly to the same position as the collider, because the positions of the limbs aren't synced and the pose of the ragdoll may differ between the server and clients. Increasing the tolerance makes it less likely for dead/unconscious characters to "twitch" when the game attempts to force the main limb to the position of the collider. - If the position of the ragdoll differs from the position of the collider so much that CheckDistFromCollider disables limb collisions, apply an additional force to all limbs to force the ragdoll to the correct position. Otherwise the ragdoll can occasionally start "hanging" midair, clipping through solid objects, because the main limb's pull joint doesn't necessarily have enough force to pull the entire ragdoll up to the collider.
2019-04-01 22:47:03 +03:00
Joonas Rikkonen
fa2a338d73
(b8f75ee96) Fixed level inequality errors caused by 866621c. Accessing the level start/end location properties during level generation caused the seed of RandSync.Server to be changed. Now generating a new random location uses a new MTRandom instance and doesn't touch RandSync.Server.
2019-03-31 19:12:27 +03:00
Joonas Rikkonen
080ac78ded
(5c35a640e) Update tutorial-rework with dev
2019-03-27 20:52:47 +02:00
Joonas Rikkonen
3f82c9a2cb
(f417b026f) Fetched: Changes for playing video tutorial from local branch
2019-03-27 20:45:14 +02:00
Joonas Rikkonen
965a378f0e
(5d67aa3f5) Merge remote-tracking branch 'origin/dev' into enemy-ai
2019-03-25 19:50:58 +02:00
Joonas Rikkonen
fd5d2b86af
(a97ef2847) AI improvements: - Fix steering issues when attacking (yet again): We still have to offset the sim positions. - Fix the steering vector when escaping from the enemy that is inside the sub. - Enemies can now navigate out from the sub, when escaping. - Fix door tag not being used when targeting items. Change the priority boosts considering doors. Should now entirely ignore the outer doors when inside and inner doors when outside. - Change the way enemies react to characters that are not in the same sub. Halve the priority when the character is not in the same hull. Add some boost to the priority when escaping.
2019-03-25 19:50:02 +02:00
Joonas Rikkonen
19d5ed5d66
(14f26adfa) Take the position of a sub's docking port into account when determining where to place outposts. Humpback's docking port for example is 600 units to the right from the sub's centerpoint, which prevented it from docking in some levels because the left side of the sub hit the wall at the left side of the outpost. Closes #1028
2019-03-25 19:49:48 +02:00
Joonas Rikkonen
044fd3344b
2f107db...5202af9
2019-03-18 21:42:26 +02:00
Joonas Rikkonen
6c0679c297
38f1ddb...178a853: v0.8.9.1, removed content folder
2019-03-18 20:39:27 +02:00
Joonas Rikkonen
5100956bae
Levels are mirrored when traveling backwards through a connection in the campaign mode. Closes #519
2018-08-08 15:30:32 +03:00
Joonas Rikkonen
a61ac1716d
Sending level seed & level gen errors to GameAnalytics
2018-07-20 14:17:59 +03:00
Joonas Rikkonen
49c6b177e3
Added wrapper methods that check if user statistics are enabled to GameAnalyticsManager
2018-07-20 12:05:13 +03:00
Joonas Rikkonen
88abbe28e3
Fixed entity IDs getting messed up and causing desync because of purchased items in multiplayer campaign. The server created cargo items first and then mission-related entities, while the clients only spawned mission entities and relied on the server to spawn the cargo, which caused mission entities to have wrong IDs. Closes #484
2018-07-17 12:50:04 +03:00
Joonas Rikkonen
015eacbcb0
Fixed GameAnalytics thread becoming active despite user statistics being disabled, causing the game to stay active in the background when quitting.
2018-07-13 11:29:11 +03:00
Joonas Rikkonen
c7e220d222
Collecting some more usage statistics: selected game mode, mission, submarine, content package, traitors on/off, kills
2018-07-10 15:49:08 +03:00
Joonas Rikkonen
f931d81aed
Mission refactoring (mission prefabs) and option to select which types of missions can be selected when mission type is set to random (TODO: a way to set the allowed types from the UI).
2018-05-17 23:45:29 +03:00
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
375e135672
Made round summary scrollable (long summary texts don't overflow anymore), listbox scissorrects work correctly now on nested listboxes
2018-02-22 12:18:09 +02:00
Joonas Rikkonen
57667b3169
Fixed removed (e.g. eaten) characters not appearing in the round summary, but still spawning during the next round
2017-10-05 21:18:01 +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
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
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
b292a301cf
MP campaign additions/fixes:
...
- Store tab & cargo spawning
- Sub & shuttle lists and level seed box are disabled when a campaign is active.
- Campaign UI is recreated if a new campaign is started while another one is active.
2017-09-16 19:16:56 +03:00
Joonas Rikkonen
63bca3c7ea
Syncing campaign state & save files with clients (WIP)
2017-09-11 21:32:48 +03:00
Joonas Rikkonen
3feee93c53
Campaign saving fixes
2017-09-03 13:08:10 +03:00
Joonas Rikkonen
c1f5e3cbda
Progress on multiplayer campaign:
...
- Moved SaveUtils to the shared project.
- Moved the "new game"/"load game" menu logic to a separate class.
- Somewhat functional campaign UI in the server lobby (only the map view is usable atm though).
2017-08-31 18:53:37 +03:00
Joonas Rikkonen
a75fd12020
Started moving single player campaign logic to an abstract CampaignMode class to make it reusable in the eventual multiplayer campaign
2017-08-28 20:19:21 +03:00
Joonas Rikkonen
729108c7b9
Replaced usages of "shift" with "round" for consistency
2017-08-28 17:59:08 +03:00
Joonas Rikkonen
c2da3a6af4
- Added "LevelTriggers", areas that apply statuseffects and/or damage to entities. Atm can only be attached to background sprites.
...
- Moved background sprites to the shared project.
- The debug textures of physics bodies have a maximum size of 128x128 pixels to prevent large bodies from taking up excessive amounts of memory.
- Attacks can be set to only affect humans.
2017-08-23 20:37:30 +03:00
Joonas Rikkonen
6cf0f966aa
Refactored event/task logic:
...
- Instead of configuring a commonness value and difficulty for an event and creating new random events until the maximum difficulty of the selected level is reached, the number of events per level can be configured directly (and overridden for specific level types).
- Removed task logic. The initial idea was to display the unfinished tasks to the player somehow and to use them as objectives for the AI crew, but those were scrapped and the tasks only ended up controlling which type of music to play. TODO: implement some kind of logic to determine when to play repair/monster music clips.
2017-08-22 21:12:06 +03:00
Joonas Rikkonen
64ad5e5003
Removed unnecessary using directives
2017-07-05 18:35:09 +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