Joonas Rikkonen
0ca644a559
(4aad704b7) Simplify.
2019-05-16 05:36:42 +03:00
Joonas Rikkonen
28eef39b64
(97c11681e) Abandon the operate item objective if the controller is not found.
2019-05-16 05:36:23 +03:00
Joonas Rikkonen
8280ed9c1a
(3b137aa1a) Merge remote-tracking branch 'origin/dev' into human-ai
2019-05-16 05:36:05 +03:00
Joonas Rikkonen
5ba3c802ea
(d4abdd937) Fix security officers fleeing from the enemy and others ignoring them until attacked :D
2019-05-16 05:35:47 +03:00
Joonas Rikkonen
14e894cbc8
(82dc10a74) Some margin.
2019-05-16 05:35:30 +03:00
Joonas Rikkonen
9fba7b1d7a
(1136677c2) Fix Extinguish fire objective. Implement ConcurrentObjectives property (should use this for Combat).
2019-05-16 05:35:12 +03:00
Joonas Rikkonen
e1584be2f7
(bfd095a0a) Fix a bunch of bugs related to the recent refactoring.
2019-05-16 05:34:56 +03:00
Joonas Rikkonen
6bb7f5f0f1
(5dc7f59e5) Remove an unnecessary check. The priority system should take care of this.
2019-05-16 05:34:37 +03:00
Joonas Rikkonen
70ffc27667
(e80994d9b) Refactor get item.
2019-05-16 05:34:19 +03:00
Joonas Rikkonen
f667ed8e12
(3f4e69c0d) Only unequip items when idling. Fixes bots not being able to repair, because the tools were unequipped (if they were weapons).
2019-05-16 05:34:03 +03:00
Joonas Rikkonen
155cb83f91
(f0f961ac3) Fix some priority related issues.
2019-05-16 05:33:46 +03:00
Joonas Rikkonen
3b72edfe94
(227a6e696) Improve readability.
2019-05-16 05:33:29 +03:00
Joonas Rikkonen
e367f900b8
(2a4bd39c2) Merge branch 'dev' into human-ai
2019-05-16 05:33:13 +03:00
Joonas Rikkonen
a3db11876b
(d34fb2097) Major refactoring: - Replace custom logic regarding subobjectives with generic logic. - Ensure that all the objectives follow the same logic, reduce duplicate code where possible.
2019-05-16 05:32:56 +03:00
Joonas Rikkonen
f46990d539
(d74fee449) Revert "Fix bots not knowing how to use the integrated controllers, effectively failing to use the doors with integrated buttons."
2019-05-16 05:25:20 +03:00
Joonas Rikkonen
4c53a56b20
(e25e32b17) Fix bots not knowing how to use the integrated controllers, effectively failing to use the doors with integrated buttons.
2019-05-16 05:24:11 +03:00
Joonas Rikkonen
053ef60fc4
(deee8cd6d) Merge branch 'dev' into human-ai
2019-05-16 05:23:20 +03:00
Joonas Rikkonen
65e284bf7c
(0fde6c604) Ignore dangerous targets.
2019-05-16 05:18:37 +03:00
Joonas Rikkonen
cbfef49e9d
(d9fd52f40) Change the priority calculations for charge batteries and pump water loops. Tweak the operate item priority calculation.
2019-05-16 05:17:42 +03:00
Joonas Rikkonen
6c777aa91e
(d7e59613a) Ignore broken items.
2019-05-16 05:16:47 +03:00
Joonas Rikkonen
2ae54a01a5
(ac7ab10b0) Pass AIObjectiveManager reference in the constructors instead of methods so that we can always access it.
2019-05-16 05:14:20 +03:00
Joonas Rikkonen
ab2ca90d08
(900eddc26) Take the priority modifier in account when calculating the priority, not the max value.
2019-05-16 05:13:03 +03:00
Joonas Rikkonen
9a1e7f8212
(1c6954251) Add IsLoop property. Fixes operate item orders being removed when they are done. Instead of calling loopable objectives done, let's just use the priority system.
2019-05-16 05:11:01 +03:00
Joonas Rikkonen
781fd44a8c
(4efa46ffe) Limit the base priority due to devotion to 10.
2019-05-16 05:10:42 +03:00
Joonas Rikkonen
171c42f077
(3241b8fe7) Adjust the priorities. The orders should now always have higher priority than other objectives (except find safety and combat).
2019-05-16 05:09:33 +03:00
Joonas Rikkonen
2a0e289a59
(40f4f67f8) Further changes to the calculations.
2019-05-16 05:06:49 +03:00
Joonas Rikkonen
b5db30ec72
(c48cb7804) Change the operate item priority calculation so that it starts from 25 and increases with devotion and is multiplied by the priority modifier. Clamp the result.
2019-05-16 05:06:11 +03:00
Joonas Rikkonen
d0795791e7
(3bb9485ad) Add automatic orders as objectives instead of orders so that we can take advantage of the existing priority system. Turn the priority values defined in the xml into modifiers.
2019-05-16 05:04:53 +03:00
Joonas Rikkonen
5af8170ac6
(372c6e60a) More automatic text scaling + merge fix
2019-05-06 14:15:40 +03:00
Joonas Rikkonen
a11e7db190
(78f064b46) Revert "Cherry pick from human-ai: Fix bots not knowing how to use the integrated controllers, effectively failing to use the doors with integrated buttons."
2019-05-03 13:49:23 +03:00
Joonas Rikkonen
bd659383b4
(1aa050263) Cherry pick from human-ai: Fix bots not knowing how to use the integrated controllers, effectively failing to use the doors with integrated buttons.
2019-05-03 13:48:48 +03:00
Joonas Rikkonen
5031432e77
(513733e88) Check that the character is inside the same room as the target before repairing/operating an item.
2019-05-03 13:47:39 +03:00
Joonas Rikkonen
23687fbf2f
aeafa16...4d3cf73
2019-03-18 22:57:05 +02:00
Joonas Rikkonen
3301bed442
409d4d9...aeafa16 (merge human-ai)
2019-03-18 22:52:17 +02:00
Joonas Rikkonen
6c0679c297
38f1ddb...178a853: v0.8.9.1, removed content folder
2019-03-18 20:39:27 +02:00
Joonas Rikkonen
07d3d69040
Equipped items can be swapped by double-clicking, fixed inventories getting messed up when swapping multi-slot items fails (e.g. drag a jumpsuit on an equipped diving suit).
2018-03-02 15:24:54 +02:00
Joonas Rikkonen
604fc65154
Human AI improvements & fixes:
...
- Replaced item name comparisons with Prefab.NameMatches (-> item names can be changed without breaking the AIs).
- Having an AIObjective set as the current order of the character doesn't automatically cause it to have a high priority. For example, the order to fix leaks has a low priority if there are no leaks to fix.
- AIObjectiveFixLeaks makes sure the character is wearing a diving suit before going to fix a leak. The characters used to run in and out of flooded rooms because the AIObjectiveFindSafety objective would become active as soon as the character entered the room, causing the character to run out, and then immediately run back because they are no longer in immediate danger of drowning, making the FixLeaks objective the most high-priority one.
- Characters attempt to find a room with no water in AIObjectiveIdle even if the character is wearing a diving suit.
- AIObjectiveFindSafety considers flooded rooms dangerous even if the character is wearing a diving suit (-> the character attempts to go into a more dry room instead of happily idling in the flooded one).
- Distance to a hull doesn't decrease its desirability nearly as much in AIObjectiveFindSafety (-> fixes characters not bothering to move into a non-flooded room if it's far away).
- AIObjectiveOperateItem makes sure the item is equipped before using it (-> characters can't weld leaks with the welder in their inventory).
2017-12-21 19:49:26 +02:00
Joonas Rikkonen
bf5a0746ad
Merge branch 'master' of https://github.com/Faerdan/Barotrauma into Faerdan-master
...
Conflicts:
Barotrauma/BarotraumaClient/Source/Map/MapEntity.cs
Barotrauma/BarotraumaClient/Source/Screens/GameScreen.cs
Barotrauma/BarotraumaShared/Source/Characters/Character.cs
Barotrauma/BarotraumaShared/Source/Items/Item.cs
2017-07-05 19:32:34 +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