@@ -8,9 +8,9 @@ for folks who want to write ACT triggers for ff14.
8
8
9
9
This guide was last updated for:
10
10
11
- - [ FF14] ( https://na.finalfantasyxiv.com/lodestone/special/patchnote_log/ ) Patch 6.58
12
- - [ FFXIV Plugin] ( https://github.com/ravahn/FFXIV_ACT_Plugin/releases ) Patch 2.7.0.1
13
- - [ OverlayPlugin] ( https://github.com/OverlayPlugin/OverlayPlugin/releases ) Patch 0.19.28
11
+ - [ FF14] ( https://na.finalfantasyxiv.com/lodestone/special/patchnote_log/ ) Patch 7.16
12
+ - [ FFXIV Plugin] ( https://github.com/ravahn/FFXIV_ACT_Plugin/releases ) Patch 2.7.2.3
13
+ - [ OverlayPlugin] ( https://github.com/OverlayPlugin/OverlayPlugin/releases ) Patch 0.19.43
14
14
15
15
## TOC
16
16
@@ -1463,10 +1463,10 @@ When an actor dies, you will get 30-lines for buffs that were removed by it dyin
1463
1463
1464
1464
``` log
1465
1465
Network Log Line Structure:
1466
- 27|[timestamp]|[targetId]|[target]|[?]|[?]|[id]
1466
+ 27|[timestamp]|[targetId]|[target]|[?]|[?]|[id]|[data0]
1467
1467
1468
1468
Parsed Log Line Structure:
1469
- [timestamp] TargetIcon 1B:[targetId]:[target]:[?]:[?]:[id]
1469
+ [timestamp] TargetIcon 1B:[targetId]:[target]:[?]:[?]:[id]:[data0]
1470
1470
```
1471
1471
1472
1472
#### Regexes
@@ -1509,61 +1509,61 @@ It seems likely this was implemented later and nobody wanted to break old conten
1509
1509
1510
1510
#### Head Marker IDs
1511
1511
1512
- ID | Name | Sample Locations | Consistent meaning?
1513
- --- | --- | --- | ---
1514
- 000[ 1-2, 4] | Prey Circle (orange) | o6s, The Burn boss 2 | Yes
1515
- 0007 | Green Meteor | t9n/s | N/A
1516
- 0008 | Ghost Meteor | t9n/s | N/A
1517
- 0009 | Red Meteor | t9n/s | N/A
1518
- 000A | Yellow Meteor | t9n/s | N/A
1519
- 000D | Devour Flower | t6n/s, Sohm Al boss 1 | Yes
1520
- 000E | Prey Circle (blue) | t6n/s, o7s | No
1521
- 0010 | Teal Crystal | Ultima Weapon Ultimate |N/A
1522
- 0011 | Heavenly Laser (red) | t8n/s, e1n | No
1523
- 0017 | Red Pinwheel | Sohm Al boss 2, Susano N/EX, e3n/s | No
1524
- 0028 | Earth Shaker | Sephirot N/EX, o4s | Yes
1525
- 001C | Gravity Puddle | e1n | N/A
1526
- 001E | Prey Sphere (orange) | Dun Scaith boss 3, o7n/s | No
1527
- 001F | Prey Sphere (blue) | t10 | N/A
1528
- 003[ 2-5] | Sword Markers 1-4 | Ravana N/EX, Twinning boss 1 | N/A
1529
- 0037 | Red Dorito | Weeping City boss 2, Ridorana boss 1 | Yes
1530
- 0039 | Purple Spread Circle (large) | Ravana N/EX, Shinryu EX | Yes
1531
- 003E | Stack Marker (bordered) | o8n/s, Dun Scaith | Yes
1532
- 0046 | Green Pinwheel | Dun Scaith boss 1, o5n/s | Yes
1533
- 0048 | Stack Marker | Sephirot | Yes
1534
- 004B | Acceleration Bomb | Weeping City boss 3, Susano N/EX, o4s | Yes
1535
- 004C | Purple Fire Circle (large) | e2n/s | Yes
1536
- 0054 | Thunder Tether (orange) | Titania EX | N/A
1537
- 0057 | Flare | o4n/s, e2n/s | Yes
1538
- 005C | Prey (dark) | Dun Scaith boss 3/4, Holminster Switch boss 3 | No
1539
- 005D | Stack Marker (tank--no border) | Dun Scaith boss 4, e4s | Yes
1540
- 0060 | Orange Spread Circle (small) | Hades N | Yes
1541
- 0061 | Chain Tether (orange) | The Vault boss 3, Shinryu N/EX | Yes
1542
- 0064 | Stack Marker (bordered) | o3s, Ridorana boss 3 | Yes
1543
- 0065 | Spread Bubble | o3s, Byakko EX | N/A
1544
- 006E | Levinbolt | Susano EX | N/A
1545
- 0076 | Prey (dark) | Bahamut Ultimate | N/A
1546
- 0078 | Orange Spread Circle (large) | Akadaemia Anyder | Yes
1547
- 007B | Scatter (animated Play symbol) | Rabanastre boss 4 | N/A
1548
- 007C | Turn Away (animated eye symbol) | Rabanastre boss 4 | N/A
1549
- 007E | Green Crystal | Shinryu N/EX | No
1550
- 0083 | Sword Meteor (Tsukuyomi) | Tsukuyomi EX | N/A
1551
- 0087 | Prey Sphere (blue) | Akadaemia Anyder | N/A
1552
- 008A | Orange Spread Circle (large) | Innocence N/EX, Orbonne boss 3 | Yes
1553
- 008B | Purple Spread Circle (small) | Ridorana boss 1, Hades N | Yes
1554
- 008E | Death From Above | o10s | N/A
1555
- 008F | Death From Below | o10s | N/A
1556
- 009[ 1-8] | Fundamental Synergy Square/Circle | o12s | N/A
1557
- 00A1 | Stack Marker (bordered) | Titania N/EX | Yes
1558
- 00A9 | Orange Spread Circle (small) | o11n/s, e3n/s | Yes
1559
- 00AB | Green Poison Circle | Qitana Ravel | N/A
1560
- 00AC | Reprobation Tether | Innocence EX | N/A
1561
- 00AE | Blue Pinwheel | Sohm Al boss 2 | N/A
1562
- 00B9 | Yellow Triangle (spread) | e4s | N/A
1563
- 00BA | Orange Square (stack) | e4s |N/A
1564
- 00BB | Blue Square (big spread) | e4s |N/A
1565
- 00BD | Purple Spread Circle (giant) | TItania N/EX | Yes
1566
- 00BF | Granite Gaol | e4s | N/A
1512
+ | ID | Name | Sample Locations | Consistent meaning? |
1513
+ | --- | --- | --- | --- |
1514
+ | 000[ 1-2, 4] | Prey Circle (orange) | o6s, The Burn boss 2 | Yes |
1515
+ | 0007 | Green Meteor | t9n/s | N/A |
1516
+ | 0008 | Ghost Meteor | t9n/s | N/A |
1517
+ | 0009 | Red Meteor | t9n/s | N/A |
1518
+ | 000A | Yellow Meteor | t9n/s | N/A |
1519
+ | 000D | Devour Flower | t6n/s, Sohm Al boss 1 | Yes |
1520
+ | 000E | Prey Circle (blue) | t6n/s, o7s | No |
1521
+ | 0010 | Teal Crystal | Ultima Weapon Ultimate | N/A |
1522
+ | 0011 | Heavenly Laser (red) | t8n/s, e1n | No |
1523
+ | 0017 | Red Pinwheel | Sohm Al boss 2, Susano N/EX, e3n/s | No |
1524
+ | 0028 | Earth Shaker | Sephirot N/EX, o4s | Yes |
1525
+ | 001C | Gravity Puddle | e1n | N/A |
1526
+ | 001E | Prey Sphere (orange) | Dun Scaith boss 3, o7n/s | No |
1527
+ | 001F | Prey Sphere (blue) | t10 | N/A |
1528
+ | 003[ 2-5] | Sword Markers 1-4 | Ravana N/EX, Twinning boss 1 | N/A |
1529
+ | 0037 | Red Dorito | Weeping City boss 2, Ridorana boss 1 | Yes |
1530
+ | 0039 | Purple Spread Circle (large) | Ravana N/EX, Shinryu EX | Yes |
1531
+ | 003E | Stack Marker (bordered) | o8n/s, Dun Scaith | Yes |
1532
+ | 0046 | Green Pinwheel | Dun Scaith boss 1, o5n/s | Yes |
1533
+ | 0048 | Stack Marker | Sephirot | Yes |
1534
+ | 004B | Acceleration Bomb | Weeping City boss 3, Susano N/EX, o4s | Yes |
1535
+ | 004C | Purple Fire Circle (large) | e2n/s | Yes |
1536
+ | 0054 | Thunder Tether (orange) | Titania EX | N/A |
1537
+ | 0057 | Flare | o4n/s, e2n/s | Yes |
1538
+ | 005C | Prey (dark) | Dun Scaith boss 3/4, Holminster Switch boss 3 | No |
1539
+ | 005D | Stack Marker (tank--no border) | Dun Scaith boss 4, e4s | Yes |
1540
+ | 0060 | Orange Spread Circle (small) | Hades N | Yes |
1541
+ | 0061 | Chain Tether (orange) | The Vault boss 3, Shinryu N/EX | Yes |
1542
+ | 0064 | Stack Marker (bordered) | o3s, Ridorana boss 3 | Yes |
1543
+ | 0065 | Spread Bubble | o3s, Byakko EX | N/A |
1544
+ | 006E | Levinbolt | Susano EX | N/A |
1545
+ | 0076 | Prey (dark) | Bahamut Ultimate | N/A |
1546
+ | 0078 | Orange Spread Circle (large) | Akadaemia Anyder | Yes |
1547
+ | 007B | Scatter (animated Play symbol) | Rabanastre boss 4 | N/A |
1548
+ | 007C | Turn Away (animated eye symbol) | Rabanastre boss 4 | N/A |
1549
+ | 007E | Green Crystal | Shinryu N/EX | No |
1550
+ | 0083 | Sword Meteor (Tsukuyomi) | Tsukuyomi EX | N/A |
1551
+ | 0087 | Prey Sphere (blue) | Akadaemia Anyder | N/A |
1552
+ | 008A | Orange Spread Circle (large) | Innocence N/EX, Orbonne boss 3 | Yes |
1553
+ | 008B | Purple Spread Circle (small) | Ridorana boss 1, Hades N | Yes |
1554
+ | 008E | Death From Above | o10s | N/A |
1555
+ | 008F | Death From Below | o10s | N/A |
1556
+ | 009[ 1-8] | Fundamental Synergy Square/Circle | o12s | N/A |
1557
+ | 00A1 | Stack Marker (bordered) | Titania N/EX | Yes |
1558
+ | 00A9 | Orange Spread Circle (small) | o11n/s, e3n/s | Yes |
1559
+ | 00AB | Green Poison Circle | Qitana Ravel | N/A |
1560
+ | 00AC | Reprobation Tether | Innocence EX | N/A |
1561
+ | 00AE | Blue Pinwheel | Sohm Al boss 2 | N/A |
1562
+ | 00B9 | Yellow Triangle (spread) | e4s | N/A |
1563
+ | 00BA | Orange Square (stack) | e4s | N/A |
1564
+ | 00BB | Blue Square (big spread) | e4s | N/A |
1565
+ | 00BD | Purple Spread Circle (giant) | TItania N/EX | Yes |
1566
+ | 00BF | Granite Gaol | e4s | N/A |
1567
1567
1568
1568
#### Offset Headmarkers
1569
1569
@@ -2428,12 +2428,12 @@ Parsed Log Line Examples:
2428
2428
2429
2429
The ` id ` parameter is an id into the [ LogMessage table] ( https://github.com/xivapi/ffxiv-datamining/blob/master/csv/LogMessage.csv ) .
2430
2430
2431
- id (hex) | Link | Shortened Message
2432
- --- | --- | ---
2433
- 0x2EE | [ link] ( https://xivapi.com/LogMessage/750?pretty=true ) | You obtain (an item)
2434
- 0x7DC | [ link] ( https://xivapi.com/LogMessage/2012?pretty=true ) | will be sealed off in X seconds
2435
- 0x7DD | [ link] ( https://xivapi.com/LogMessage/2013?pretty=true ) | is sealed off
2436
- 0x7DE | [ link] ( https://xivapi.com/LogMessage/2014?pretty=true ) | is no longer sealed
2431
+ | id (hex) | Link | Shortened Message |
2432
+ | --- | --- | --- |
2433
+ | 0x2EE | [ link] ( https://xivapi.com/LogMessage/750?pretty=true ) | You obtain (an item) |
2434
+ | 0x7DC | [ link] ( https://xivapi.com/LogMessage/2012?pretty=true ) | will be sealed off in X seconds |
2435
+ | 0x7DD | [ link] ( https://xivapi.com/LogMessage/2013?pretty=true ) | is sealed off |
2436
+ | 0x7DE | [ link] ( https://xivapi.com/LogMessage/2014?pretty=true ) | is no longer sealed |
2437
2437
2438
2438
The log message itself determines the other parameters.
2439
2439
It seems that ` IntegerParameter(1) ` in the log message corresponds to ` param1 `
@@ -3040,7 +3040,7 @@ This line is always output for a given Ability hit, regardless of if that Abilit
3040
3040
a corresponding StartsUsing line.
3041
3041
3042
3042
If the ability has no target, or is single-target, the ` dataFlag ` value will be ` 0 ` ,
3043
- and the ` x ` /` y ` /` z ` / ` heading ` fields will be blank.
3043
+ and the ` x ` /` y ` /` z ` fields will be blank.
3044
3044
3045
3045
If the ability targets the ground, for example ` Asylum ` /` Sacred Soil ` /caster LB3, the
3046
3046
` dataFlag ` value will be ` 1 ` and the ` x ` /` y ` /` z ` /` heading ` fields will correspond to the
@@ -3051,12 +3051,16 @@ source actor's position, while `heading` is the direction that the ability is ca
3051
3051
towards.
3052
3052
3053
3053
If there is some sort of error related to parsing this data from the network packet,
3054
- ` dataFlag ` will be ` 256 ` , and the ` x ` /` y ` /` z ` /` heading ` fields will be blank.
3054
+ ` dataFlag ` will be ` 256 ` , and the ` x ` /` y ` /` z ` /` heading ` / ` animationTargetId ` fields will be blank.
3055
3055
3056
3056
` globalEffectCounter ` is equivalent to ` sequence ` field in
3057
3057
[ NetworkAbility] ( #line-21-0x15-networkability ) and
3058
3058
[ NetworkAOEAbility] ( #line-22-0x16-networkaoeability ) .
3059
3059
3060
+ ` animationTargetId ` is the ID of the entity serving as location basis for the ability.
3061
+ For example, Sage's Dyskrasia will have the Sage as the ` animationTargetId ` , as the AoE is centered on the Sage;
3062
+ but Sage's Phlegma will have the primary target as the ` animationTargetId ` , as the AoE is centered on the selected target.
3063
+
3060
3064
Note that unlike [ StartsUsingExtra] ( #line-263-0x107-startsusingextra ) , you do not need
3061
3065
to worry about whether or not there is an actor target, as this represents the final
3062
3066
snapshotted location of the Ability.
@@ -3067,34 +3071,34 @@ snapshotted location of the Ability.
3067
3071
3068
3072
``` log
3069
3073
Network Log Line Structure:
3070
- 264|[timestamp]|[sourceId]|[id]|[globalEffectCounter]|[dataFlag]|[x]|[y]|[z]|[heading]
3074
+ 264|[timestamp]|[sourceId]|[id]|[globalEffectCounter]|[dataFlag]|[x]|[y]|[z]|[heading]|[animationTargetId]
3071
3075
3072
3076
Parsed Log Line Structure:
3073
- [timestamp] 264 108:[sourceId]:[id]:[globalEffectCounter]:[dataFlag]:[x]:[y]:[z]:[heading]
3077
+ [timestamp] 264 108:[sourceId]:[id]:[globalEffectCounter]:[dataFlag]:[x]:[y]:[z]:[heading]:[animationTargetId]
3074
3078
```
3075
3079
3076
3080
#### Regexes
3077
3081
3078
3082
``` log
3079
3083
Network Log Line Regex:
3080
- ^(?<type>264)\|(?<timestamp>[^|]*)\|(?<sourceId>[^|]*)\|(?<id>[^|]*)\|(?<globalEffectCounter>[^|]*)\|(?<dataFlag>[^|]*)\|(?<x>[^|]*)\|(?<y>[^|]*)\|(?<z>[^|]*)\|(?<heading>[^|]*)\|
3084
+ ^(?<type>264)\|(?<timestamp>[^|]*)\|(?<sourceId>[^|]*)\|(?<id>[^|]*)\|(?<globalEffectCounter>[^|]*)\|(?<dataFlag>[^|]*)\|(?<x>[^|]*)\|(?<y>[^|]*)\|(?<z>[^|]*)\|(?<heading>[^|]*)\|(?<animationTargetId>[^|]*)\|
3081
3085
3082
3086
Parsed Log Line Regex:
3083
- (?<timestamp>^.{14}) 264 (?<type>108):(?<sourceId>[^:]*):(?<id>[^:]*):(?<globalEffectCounter>[^:]*):(?<dataFlag>[^:]*):(?<x>[^:]*):(?<y>[^:]*):(?<z>[^:]*):(?<heading>[^:]*)(?:$|:)
3087
+ (?<timestamp>^.{14}) 264 (?<type>108):(?<sourceId>[^:]*):(?<id>[^:]*):(?<globalEffectCounter>[^:]*):(?<dataFlag>[^:]*):(?<x>[^:]*):(?<y>[^:]*):(?<z>[^:]*):(?<heading>[^:]*):(?<animationTargetId>[^:]*) (?:$|:)
3084
3088
```
3085
3089
3086
3090
#### Examples
3087
3091
3088
3092
``` log
3089
3093
Network Log Line Examples:
3090
- 264|2023-11-02T20 :53:56.6450000-04 :00|10001234|0005|000003EF |0|||||9f7371fa0e3a42c8
3091
- 264|2023-11-02T21:39:20.0910000-04 :00|10001234|0085|0000533E |1|0.000|0.000|0.000|2.920|2e9ae29c1b65f930
3092
- 264|2023-11-02T21:39:15.6790000-04 :00|40000D6E|8C45|000052DD |1|-14.344|748.558|130.009|2.483|f6b3ffa6c97f0540
3094
+ 264|2023-11-04T17 :53:45.2940000+01 :00|4000619F|8BC0|00000664 |0||||3.141|1234ABCD|fc680d77fb5897f1
3095
+ 264|2023-11-04T17:53:45.2940000+01 :00|4000619E|8BC0|00000663 |1|0.000|0.000|0.000|-1.589|1234ABCD|711909381311a052
3096
+ 264|2023-11-04T17:53:45.2940000+01 :00|4000619D|8BC0|00000662 |1|1.000|2.000|3.000|1.570|1234ABCD|7e82907c710ee781
3093
3097
3094
3098
Parsed Log Line Examples:
3095
- [20 :53:56.645 ] 264 108:10001234:0005:000003EF :0::::
3096
- [21:39:20.091 ] 264 108:10001234:0085:0000533E :1:0.000:0.000:0.000:2.920
3097
- [21:39:15.679 ] 264 108:40000D6E:8C45:000052DD :1:-14.344:748.558:130.009:2.483
3099
+ [17 :53:45.294 ] 264 108:4000619F:8BC0:00000664 :0::::3.141:1234ABCD
3100
+ [17:53:45.294 ] 264 108:4000619E:8BC0:00000663 :1:0.000:0.000:0.000:-1.589:1234ABCD
3101
+ [17:53:45.294 ] 264 108:4000619D:8BC0:00000662 :1:1.000:2.000:3.000:1.570:1234ABCD
3098
3102
```
3099
3103
3100
3104
<!-- AUTO-GENERATED-CONTENT:END (logLines:type=AbilityExtra&lang=en-US) -->
0 commit comments