Fixed duplicate critters being added to the target list for AI

Edited hookscripts.txt to mention the fix.

Tweaked the default settings for world map travel markers.

Some code correction.
This commit is contained in:
NovaRain
2020-01-09 11:38:44 +08:00
parent af049eaa38
commit fece180f0b
11 changed files with 157 additions and 62 deletions
+9 -9
View File
@@ -107,6 +107,11 @@ FadeMultiplier=100
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
[Interface]
;Set to 1 to expand the number of action points displayed on the interface bar
;Requires new IFACE_E.frm and HR_IFACE_<res>E.frm files in art\intrface\ (included in sfall.dat) to display correctly
;The minimum supported version of High Resolution Patch is 4.1.8
ActionPointsBar=0
;Set to 1 to use the expanded world map interface
;Set to 2 to skip correcting the position of entrance markers on town maps
;You can use resized FRMs in 700x682 for town maps in the expanded world map interface
@@ -114,22 +119,17 @@ FadeMultiplier=100
;The resolution of hi-res patch must be set to at least 890x720
ExpandWorldMap=0
;Set to 1 to expand the number of action points displayed on the interface bar
;Requires new IFACE_E.frm and HR_IFACE_<res>E.frm files in art\intrface\ (included in sfall.dat) to display correctly
;The minimum supported version of High Resolution Patch is 4.1.8
ActionPointsBar=0
;Set to 1 to enable drawing a dotted line when traveling on the world map (similar to Fallout 1)
WorldMapTravelMarkers=0
;Uncomment these lines to change the appearance of the markers
;The color index in Fallout default palette (valid range: 1..255; default is 133)
;TravelMarkerColor=133
;The color index in Fallout default palette (valid range: 1..255; default is 134)
;TravelMarkerColor=134
;The lengh of the dots in pixels (valid range: 1..10)
;TravelMarkerLength=1
;TravelMarkerLength=2
;The spacing between the dots in pixels (valid range: 1..10)
;TravelMarkerSpaces=2
;Set to 1 to display terrain types when moving the cursor over a green triangle on the world map
;Set to 1 to display terrain types when moving the cursor over the green triangle on the world map
WorldMapTerrainInfo=0
;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+7 -1
View File
@@ -192,9 +192,15 @@ HOOK_FINDTARGET (hs_findtarget.int)
Runs when the ai is trying to pick a target in combat. Fallout first chooses a list of 4 likely suspects, then normally sorts them in order of weakness/distance/etc depending on the ai caps of the attacker.
This hook replaces that sorting function, allowing you to sort the targets in some arbitrary way.
The return values can include critters that weren't in the list of possible targets, but the additional targets may still be discarded later on in the combat turn if they are out of the attackers perception or the chance of a successful hit is too low. The list of possible targets often includes duplicated entries.
The return values can include critters that weren't in the list of possible targets, but the additional targets may still be discarded later on in the combat turn if they are out of the attackers perception or the chance of a successful hit is too low. The list of possible targets often includes duplicated entries, but this is fixed in sfall 4.2.3/3.8.23.
Use sfall_return to give the 4 targets, in order of preference. If you want to specify less than 4 targets, fill in the extra spaces with 0's or pass -1 to skip the return value.
NOTE: The engine can choose targets by the following criteria:
1) The nearest enemy to the attacker.
2) The enemy that attacked the attacker.
3) The enemy that attacked an NPC from the same team as the attacker.
4) The enemy that is attacked by an NPC from the same team as the attacker.
critter arg1 - The attacker
critter arg2 - A possible target
critter arg3 - A possible target