Commit Graph

44 Commits

Author SHA1 Message Date
Ivaylo Draganov
18e36b96db Add HPF overlay controls to observer chrome 2022-12-12 23:51:46 +01:00
ThomasChr
6c348620f3 Use Stop button on (production) buildings to reset rally point fixes #20414 2022-11-09 08:44:09 +02:00
RoosterDragon
2d45e67bca Teach HierarchicalPathFinder about Immovable actors.
By tracking updates on the ActorMap the HierarchicalPathFinder can be aware of actors moving around the map. We track a subset of immovable actors that always block. These actors can be treated as impassable obstacles just like terrain. When a path needs to be found the abstract path will guide the search around this subset of immovable actors just like it can guide the search around impassable terrain. For path searches that were previously imperformant because some immovable actors created a bottleneck that needed to be routed around, these will now be performant instead. Path searches with bottlenecks created by items such as trees, walls and buildings should see a performance improvement. Bottlenecks created by other units will not benefit.

We now maintain two sets of HPFs. One is aware of immovable actors and will be used for path searches that request BlockedByActor.Immovable, BlockedByActor.Stationary and BlockedByActor.All to guide that around the immovable obstacles. The other is aware of terrain only and will be used for searches that request BlockedByActor.None, or if an ignoreActor is provided. A new UI dropdown when using the `/hpf` command will allow switching between the visuals of the two sets.
2022-08-31 23:12:42 +02:00
RoosterDragon
5a8f91aa21 Add a hierarchical path finder to improve pathfinding performance.
Replaces the existing bi-directional search between points used by the pathfinder with a guided hierarchical search. The old search was a standard A* search with a heuristic of advancing in straight line towards the target. This heuristic performs well if a mostly direct path to the target exists, it performs poorly it the path has to navigate around blockages in the terrain. The hierarchical path finder maintains a simplified, abstract graph. When a path search is performed it uses this abstract graph to inform the heuristic. Instead of moving blindly towards the target, it will instead steer around major obstacles, almost as if it had been provided a map which ensures it can move in roughly the right direction. This allows it to explore less of the area overall, improving performance.

When a path needs to steer around terrain on the map, the hierarchical path finder is able to greatly improve on the previous performance. When a path is able to proceed in a straight line, no performance benefit will be seen. If the path needs to steer around actors on the map instead of terrain (e.g. trees, buildings, units) then the same poor pathfinding performance as before will be observed.
2022-08-03 23:12:42 +02:00
Ivaylo Draganov
f5ab9d95fe Make remove from control group hotkey available only to players 2022-02-06 09:09:33 -06:00
Ivaylo Draganov
7a93b9ea8c Make control group hotkeys configurable
- Split control groups management to its own interface
- Add hotkeys for selecting, creating, adding to and combining with control groups
- Add a ControlGroups widget to manage the player interaction
2022-01-28 18:38:18 +01:00
Paul Chote
962d6496bd Overhaul depth preview rendering:
* Replace Jet color map with grayscale
* Added Shift + \ hotkey to toggle preview
* Added Shift + [, Shift + ] hotkeys to change contrast
* Added Shift + ;, Shift + ' hotkeys to change offset
2021-08-20 20:17:55 +02:00
Ivaylo Draganov
2d0e7040db Add separate chat panel for spectators and players
Forces the chat and performance panels to be re-initialized when a
player transitions to spectators. This ensures that spectators don't
get to see faction themed widgets.
2021-08-08 12:50:31 +01:00
Matthias Mailänder
7bc17b59f5 Add a generic video player widget. 2021-01-10 10:21:17 +01:00
Paul Chote
fb5b4b3547 Rename Defense button tooltip to Support. 2020-03-24 13:13:18 -05:00
Ivaylo Draganov
1bcad55c1f Add a hotkey to select the current production facility 2020-02-22 20:06:21 +00:00
Paul Chote
85faa5edf6 Add visual indicator when the game is muted. 2020-02-22 14:42:11 +01:00
Paul Chote
fdc0a6e2b9 Rework TS Chrome in preparation for UI scaling. 2020-01-19 20:36:59 +01:00
tovl
79a48765d9 Allow VTOLs to land with force-move 2019-06-30 18:04:43 +02:00
teinarss
b647d46196 Vertical alignment in TS 2019-06-21 12:51:45 +02:00
Paul Chote
5d886b79f1 Remove AlternateTransportsMode.
This conflicts with undeploy orders and has been largely
superseded by queued enter orders.
2019-06-08 02:09:30 +02:00
tovl
ea036d4cc0 Allow move orders to cancel DeployForGrantedCondition. 2019-06-08 02:09:30 +02:00
Paul Chote
9c9cad1a15 Amend Force Attack command bar tooltip. 2019-01-28 00:14:27 +01:00
Andre Mohren
a0ad79e555 Extracted RadarUp and RadarDown notifications to RadarWidget. 2018-09-24 22:43:14 +02:00
Paul Chote
049ed086f9 Add assault move to TS. 2017-09-11 19:08:33 +02:00
Paul Chote
a81749e102 Add frontend code for issuing assault move orders. 2017-09-11 19:08:33 +02:00
Paul Chote
2a6bb0678e Move hardcoded support power keys into yaml. 2017-09-10 21:30:55 +02:00
Paul Chote
4f00d62237 Move hardcoded production keys into yaml. 2017-09-10 21:30:55 +02:00
Paul Chote
2a3a27aa65 Add CommandBarBlacklist to TS. 2017-09-01 11:56:37 +02:00
Paul Chote
9607c09516 Add command bar to TS. 2017-09-01 11:56:37 +02:00
Paul Chote
7997a24559 Adjust chrome.png and yaml layout.
Also cleans up stray whitespace.
2017-09-01 11:56:37 +02:00
Paul Chote
1e0148e092 Migrate ButtonWidget to NamedHotkey. 2017-08-25 21:56:52 +02:00
daVoodooShuffle
53bf52149c Closes #13153
Modified all expressions to contain a space on either side

Only effects the YAML files that contain config variables:

X:
Y:
Width:
Height:
2017-05-06 15:26:41 +10:00
Paul Chote
55f76c02d6 Disable world sounds when the ingame menu is open. 2016-12-23 11:34:23 +00:00
reaperrr
f93779977f Add UnitCommand widget to TS
Fixes units ignoring Stop command.
2016-09-25 20:30:56 +02:00
Paul Chote
73b3f20921 Remove fragile alliances feature. 2016-01-30 20:47:50 +00:00
Paul Chote
4f1d8b7ac9 Remove spurious final newline from mod files. 2016-01-02 20:06:53 +00:00
abcdefg30
b8715b0377 Let the utility fix cosmetics in the chrome yamls 2015-11-28 16:12:17 +01:00
Matthias Mailänder
2917d28545 set up original build click palette to fix dark pixel errors 2015-08-22 16:18:19 +02:00
penev92
b34810c1d3 Rename AddRaceSuffixLogic to AddFactionSuffixLogic 2015-07-25 00:39:29 +03:00
Paul Chote
da70683c03 Split OrderButtonsChromeLogic into smaller classes. 2015-04-26 23:21:02 +12:00
x-a-n-a-x
a8d5542422 Added a new Tiberian Sun mod build palette skin 2015-03-28 10:10:45 +01:00
Paul Chote
2a1e4f70a9 Replace the legacy TS sidebar placeholder with a modern placeholder. 2015-02-19 17:54:01 +00:00
DeadlySurprise
7b53582c5e Implemented Floating Text and radar video 2015-02-18 14:38:30 +01:00
Matthias Mailänder
d4d55bb6dc modularize the remaining legacy ingame interface widgets
and consolidate chrome root initialization
2015-01-04 17:57:38 +01:00
Paul Chote
311a909f18 Fix the in-game widget hierarchy. 2014-10-17 22:11:06 +13:00
Oliver Brakmann
8cec848a0f Add a mission objectives GUI panel 2014-08-08 13:35:49 +02:00
Paul Chote
9626654f87 Redefine orderbutton and menu hotkeys. 2014-08-03 19:28:09 +12:00
Paul Chote
f779606433 Split TS ingame chrome. 2014-07-26 18:20:09 +12:00