This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
kdf_api [2025/03/05 01:16] – kitanoi | kdf_api [2025/05/10 06:14] (current) – kitanoi | ||
---|---|---|---|
Line 43: | Line 43: | ||
return tbl | return tbl | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====dutyid==== | ====dutyid==== | ||
[int][required] This is the localmapid of the dungeon you wish to run. | [int][required] This is the localmapid of the dungeon you wish to run. | ||
Line 54: | Line 54: | ||
* can be obtained by entering the dungeon and typing the above code snippet into the console. | * can be obtained by entering the dungeon and typing the above code snippet into the console. | ||
+ | --------------------------------------------------------------- | ||
====mesh==== | ====mesh==== | ||
[string][optional] The name of the mesh you want to use, or blank. | [string][optional] The name of the mesh you want to use, or blank. | ||
Line 60: | Line 61: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====objectivedestinations==== | ====objectivedestinations==== | ||
[table][required] - The positions of each objective. If the dungeon is linear, you can define each objective as the same position. Ensure there is an entry for the correct amount of objectives in the dungeon. | [table][required] - The positions of each objective. If the dungeon is linear, you can define each objective as the same position. Ensure there is an entry for the correct amount of objectives in the dungeon. | ||
Line 73: | Line 75: | ||
* due to only using a single destination point, you must ensure the mesh you are using is correctly meshed and includes all necessary OMCs. | * due to only using a single destination point, you must ensure the mesh you are using is correctly meshed and includes all necessary OMCs. | ||
+ | --------------------------------------------------------------- | ||
====queuetype==== | ====queuetype==== | ||
[int][required] - 1: synced, 2: unsynced, 3: trusts, 4: squadron, 10: variant, 13: criterion | [int][required] - 1: synced, 2: unsynced, 3: trusts, 4: squadron, 10: variant, 13: criterion | ||
Line 79: | Line 82: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====type==== | ====type==== | ||
[string][required*] * regular duty doesn' | [string][required*] * regular duty doesn' | ||
Line 85: | Line 89: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====vcactions==== | ====vcactions==== | ||
[table][optional] - used to determine which variant dungeon actions to queue with. If nil, cure and rampart are selected. | [table][optional] - used to determine which variant dungeon actions to queue with. If nil, cure and rampart are selected. | ||
Line 99: | Line 104: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====trustdata==== | ====trustdata==== | ||
[table][required*] * required if using type = " | [table][required*] * required if using type = " | ||
Line 108: | Line 114: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====bossids==== | ====bossids==== | ||
[table][optional] - Expects contentid. Will force melee range above 90% HP on those targets. | [table][optional] - Expects contentid. Will force melee range above 90% HP on those targets. | ||
Line 114: | Line 121: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====interacts==== | ====interacts==== | ||
[table][required] - Field is required even if it is just an empty table. | [table][required] - Field is required even if it is just an empty table. | ||
Line 141: | Line 149: | ||
- {objective = 1, value = x} --used for when keys or another collectable item is in objective 1. Like keys in Copperbell mines | - {objective = 1, value = x} --used for when keys or another collectable item is in objective 1. Like keys in Copperbell mines | ||
+ | --------------------------------------------------------------- | ||
====prioritytarget==== | ====prioritytarget==== | ||
[table][req] | [table][req] | ||
Line 167: | Line 175: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====advancedavoid==== | ====advancedavoid==== | ||
[table][optional] | [table][optional] | ||
Line 212: | Line 221: | ||
Using these options, you will move to the point specified around your targeted enemy. Useful for spinning attacks. | Using these options, you will move to the point specified around your targeted enemy. Useful for spinning attacks. | ||
+ | --------------------------------------------------------------- | ||
====overheadmarkers==== | ====overheadmarkers==== | ||
[table][optional] Will be able to specify markers and types and whether to stack or spread. | [table][optional] Will be able to specify markers and types and whether to stack or spread. | ||
Line 263: | Line 273: | ||
* detectwho: me - only detects for the individual character and handle it is the marker is on them, any will detect the marker on any player and do the mechanic whether or not they have a marker. any is designed for stacking, whereas me is for spreading. | * detectwho: me - only detects for the individual character and handle it is the marker is on them, any will detect the marker on any player and do the mechanic whether or not they have a marker. any is designed for stacking, whereas me is for spreading. | ||
* pos [table] individual positions for each character as shown above, in 8 man content you'd need to provide 8 positions. | * pos [table] individual positions for each character as shown above, in 8 man content you'd need to provide 8 positions. | ||
- | * returnpos [table][required] individual positions for each character as shown above, in 8 man content you'd need to provide 8 positions. This is the point to return to after spreading for markers. Useful for when puddles are left. | + | * returnpos [table][required][optional if using movetoentity] individual positions for each character as shown above, in 8 man content you'd need to provide 8 positions. This is the point to return to after spreading for markers. Useful for when puddles are left. |
* timetoreturn [int][required] in seconds to wait before returning to returnpos | * timetoreturn [int][required] in seconds to wait before returning to returnpos | ||
* precise [bool][optional] if false, your character will only move to the specified position if the distance is > 5. Ideal to use when there is some avoidance happening at the same time as the stack marker. | * precise [bool][optional] if false, your character will only move to the specified position if the distance is > 5. Ideal to use when there is some avoidance happening at the same time as the stack marker. | ||
* movetoentity [bool][optional] nil if not being used. Instead of specifying specific locations, you will move to within 5 yalms of the target of the overhead marker. | * movetoentity [bool][optional] nil if not being used. Instead of specifying specific locations, you will move to within 5 yalms of the target of the overhead marker. | ||
+ | * waitforaoe [tbl][optional] comma separated integers {40657, | ||
+ | --------------------------------------------------------------- | ||
====useactions==== | ====useactions==== | ||
[table][optional] Will attempt to use duty actions. Options for target are " | [table][optional] Will attempt to use duty actions. Options for target are " | ||
Line 283: | Line 295: | ||
Replace str with the action name inside of " - case doesn' | Replace str with the action name inside of " - case doesn' | ||
- | | + | |
+ | --------------------------------------------------------------- | ||
====enemytargetdistance==== | ====enemytargetdistance==== | ||
[int][optional] set this to the distance you wish the radius around the tank (or solo) character to be checked when trying to target enemies. If you are finding a nav issue whereas your character runs passed a boss, increase this number until you stop running past. If this option isn't used, the default distance is 30. | [int][optional] set this to the distance you wish the radius around the tank (or solo) character to be checked when trying to target enemies. If you are finding a nav issue whereas your character runs passed a boss, increase this number until you stop running past. If this option isn't used, the default distance is 30. | ||
Line 290: | Line 303: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====dontclearfriendlytargets==== | ====dontclearfriendlytargets==== | ||
[table][optional] | [table][optional] | ||
Line 297: | Line 311: | ||
By default, Dungeon Framework clears target whenever you are targeting a friendly entity. When using UseAction, you may need to be targeting the cannon or object. Put that object contentid in this table and it will not clear the target automatically. | By default, Dungeon Framework clears target whenever you are targeting a friendly entity. When using UseAction, you may need to be targeting the cannon or object. Put that object contentid in this table and it will not clear the target automatically. | ||
+ | --------------------------------------------------------------- | ||
====Free For All==== | ====Free For All==== | ||
[bool][optional] Profile level setting Free For All option. Instead of following the tank (if there is one in the party) run to each objective as if you were solo. | [bool][optional] Profile level setting Free For All option. Instead of following the tank (if there is one in the party) run to each objective as if you were solo. | ||
Line 303: | Line 318: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====meleeavoid==== | ====meleeavoid==== | ||
[bool][optional] Profile level setting to enable or disable melee avoid (melee only). Useful to disable for large bosses like Zodiark to avoid failing to find a safe spot. | [bool][optional] Profile level setting to enable or disable melee avoid (melee only). Useful to disable for large bosses like Zodiark to avoid failing to find a safe spot. | ||
Line 310: | Line 326: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====prioritytargetdistance==== | ====prioritytargetdistance==== | ||
[int][optional] distance to search for priority targets. If this option isn't used, the default distance is 30. | [int][optional] distance to search for priority targets. If this option isn't used, the default distance is 30. | ||
Line 317: | Line 333: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====interactdistance==== | ====interactdistance==== | ||
[int][optional] distance to search for interacts (loot, | [int][optional] distance to search for interacts (loot, | ||
Line 323: | Line 340: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====requeuetimer==== | ====requeuetimer==== | ||
[int][optional] Time required after leaving a dungeon before requeuing. If this option isn't used, the default time is 15 seconds. | [int][optional] Time required after leaving a dungeon before requeuing. If this option isn't used, the default time is 15 seconds. | ||
Line 329: | Line 347: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====meshchange==== | ====meshchange==== | ||
[table][optional] Will change mesh based on below options. Will revert to default / selected mesh when a loading screen is detected. This is useful for fights such as titan where the platform shrinks at certain %. | [table][optional] Will change mesh based on below options. Will revert to default / selected mesh when a loading screen is detected. This is useful for fights such as titan where the platform shrinks at certain %. | ||
Line 342: | Line 361: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====togglewalk==== | ====togglewalk==== | ||
[table][optional] useful when you need precise navigation such as in Dohn Mheg. When inside of the polygon and on the specified mesh, walking will be enabled. If not on the specified mesh, or outside of the polygon, normal running speed it used. | [table][optional] useful when you need precise navigation such as in Dohn Mheg. When inside of the polygon and on the specified mesh, walking will be enabled. If not on the specified mesh, or outside of the polygon, normal running speed it used. | ||
Line 352: | Line 372: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====excludeavoid==== | ====excludeavoid==== | ||
[table][optional] Way to stop my avoidance avoiding some aoes, such as those that are part of a stack marker. channelingid of each cast separated by a comma. | [table][optional] Way to stop my avoidance avoiding some aoes, such as those that are part of a stack marker. channelingid of each cast separated by a comma. | ||
Line 358: | Line 379: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====dontexcludeaoe==== | ====dontexcludeaoe==== | ||
[table][optional] Way to ensure aoes are avoided. This was added for large aoes that are greater than the auto exclude distance shown in the avoidance tab. An example is Zodiark' | [table][optional] Way to ensure aoes are avoided. This was added for large aoes that are greater than the auto exclude distance shown in the avoidance tab. An example is Zodiark' | ||
Line 372: | Line 394: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====tankspecific==== | ====tankspecific==== | ||
[table][optional] Used when you have 2 tanks needing to tank separate enemies at specific locations. Will auto turn on tank stance (will get turned off again on OT) get 100% aggro, then move to designated position. | [table][optional] Used when you have 2 tanks needing to tank separate enemies at specific locations. Will auto turn on tank stance (will get turned off again on OT) get 100% aggro, then move to designated position. | ||
Line 391: | Line 414: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====tankbuster==== | ====tankbuster==== | ||
[table][optional] All characters except tank or the character that is currently has 100% aggro will avoid. | [table][optional] All characters except tank or the character that is currently has 100% aggro will avoid. | ||
Line 397: | Line 421: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====tankat==== | ====tankat==== | ||
[table][optional] Allows you to specify a position, % from and % to to tank at that position. This is useful if you need to be able to move the boss at certain %. This will only work for tanks, or those who are at the top of the aggro list. | [table][optional] Allows you to specify a position, % from and % to to tank at that position. This is useful if you need to be able to move the boss at certain %. This will only work for tanks, or those who are at the top of the aggro list. | ||
Line 403: | Line 428: | ||
[1] = {contentid = 12345, frompercent = 100, topercent = 95, pos = {x = 1, y = 2, z = 3}, desc = "tank boss 12345 at this pos from 100-95%" | [1] = {contentid = 12345, frompercent = 100, topercent = 95, pos = {x = 1, y = 2, z = 3}, desc = "tank boss 12345 at this pos from 100-95%" | ||
}, | }, | ||
+ | | ||
+ | tankat= { | ||
+ | [1] = {contentid = 1644, frompercent = 100, topercent = 0, reqs = [[return not KitanoiFuncs.API.DungeonFramework.GarudaPhased]], | ||
+ | [2] = {contentid = 1644, frompercent = 100, topercent = 0, reqs = [[return | ||
+ | }, | ||
</ | </ | ||
* contentid [required] contentid of the enemy | * contentid [required] contentid of the enemy | ||
Line 408: | Line 438: | ||
* topercent [required] should be the lower % | * topercent [required] should be the lower % | ||
* pos [required] position to tank at | * pos [required] position to tank at | ||
+ | * reqs [optional] must start with " | ||
+ | |||
+ | --------------------------------------------------------------- | ||
+ | ====MaxFollowDist==== | ||
+ | [int][optional] allows you to specify how far ahead the tank can be before they stop and wait for party members to be catch up | ||
+ | --------------------------------------------------------------- | ||
====puddledata==== | ====puddledata==== | ||
[table][optional] Specify spells that leave puddles on the floor. Provide the channelingid, | [table][optional] Specify spells that leave puddles on the floor. Provide the channelingid, | ||
Line 418: | Line 454: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====pullenemyoutofpuddle==== | ====pullenemyoutofpuddle==== | ||
[bool][optional] Used in combination with puddledata. Useful for the final boss of Brayflox Longstop to pull Aiatar out of the puddles. Isn't perfect, but is successful. | [bool][optional] Used in combination with puddledata. Useful for the final boss of Brayflox Longstop to pull Aiatar out of the puddles. Isn't perfect, but is successful. | ||
Line 424: | Line 461: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====incombatinteract==== | ====incombatinteract==== | ||
[table][optional] | [table][optional] | ||
Line 443: | Line 481: | ||
* req [table][optional] castingid and desc | * req [table][optional] castingid and desc | ||
+ | --------------------------------------------------------------- | ||
====avoidentity==== | ====avoidentity==== | ||
[table][optional] - Used to avoid moving entities, like those on the second boss in Stone Vigil. Set the radius slightly larger than where the aoe is. | [table][optional] - Used to avoid moving entities, like those on the second boss in Stone Vigil. Set the radius slightly larger than where the aoe is. | ||
Line 455: | Line 494: | ||
* type: Optional - " | * type: Optional - " | ||
+ | --------------------------------------------------------------- | ||
====forcemeleerange==== | ====forcemeleerange==== | ||
[table][optional] | [table][optional] | ||
Line 463: | Line 503: | ||
* contentid separated by a comma. | * contentid separated by a comma. | ||
+ | --------------------------------------------------------------- | ||
====faceenemyaway==== | ====faceenemyaway==== | ||
[table][optional] | [table][optional] | ||
Line 474: | Line 514: | ||
Tank, when at 100% aggro will attempt to face away any enemy with a matching contentid away from the party. | Tank, when at 100% aggro will attempt to face away any enemy with a matching contentid away from the party. | ||
+ | --------------------------------------------------------------- | ||
====tethers==== | ====tethers==== | ||
handles tethers | handles tethers | ||
Line 491: | Line 532: | ||
* pos: table with any number of positions you want to use. It will check each position isn't in an aoe / puddle(if defined) and move to the first one it finds. Format of the table is : PosTable = { Character1 = {data}, Character2 = {}} | * pos: table with any number of positions you want to use. It will check each position isn't in an aoe / puddle(if defined) and move to the first one it finds. Format of the table is : PosTable = { Character1 = {data}, Character2 = {}} | ||
+ | --------------------------------------------------------------- | ||
====limitbreak==== | ====limitbreak==== | ||
< | < | ||
Line 505: | Line 547: | ||
* type - melee, ranged, magic, tank, healer, dps (encompasses melee, ranged, magic), squadron | * type - melee, ranged, magic, tank, healer, dps (encompasses melee, ranged, magic), squadron | ||
+ | --------------------------------------------------------------- | ||
====dontcastwhenlb==== | ====dontcastwhenlb==== | ||
[optional][bool] | [optional][bool] | ||
Line 510: | Line 553: | ||
will pause ACR/skill profile (doesn' | will pause ACR/skill profile (doesn' | ||
+ | --------------------------------------------------------------- | ||
====tankswap==== | ====tankswap==== | ||
[optional][table] | [optional][table] | ||
Line 517: | Line 561: | ||
castid or channelingid when you wish to tank swap. Ideally you want to turn autostances off in your skill profiles / acr and use the below option as well and let the addon handle tank stances. | castid or channelingid when you wish to tank swap. Ideally you want to turn autostances off in your skill profiles / acr and use the below option as well and let the addon handle tank stances. | ||
+ | --------------------------------------------------------------- | ||
====autotankstance==== | ====autotankstance==== | ||
[optional][bool] | [optional][bool] | ||
Line 524: | Line 569: | ||
Only useful in dungeons where multiple tanks are in use. Ensure auto tank stances are turned off in skill profiles / acrs. | Only useful in dungeons where multiple tanks are in use. Ensure auto tank stances are turned off in skill profiles / acrs. | ||
+ | --------------------------------------------------------------- | ||
====ignoretarget==== | ====ignoretarget==== | ||
[optional][table] | [optional][table] | ||
Line 531: | Line 577: | ||
Comma separated contentid - will exclude these contentids from being targeted. | Comma separated contentid - will exclude these contentids from being targeted. | ||
+ | --------------------------------------------------------------- | ||
====enemylos==== | ====enemylos==== | ||
[optional][bool] | [optional][bool] | ||
Line 538: | Line 585: | ||
true or false - false allows targeting through walls. true will only target when los | true or false - false allows targeting through walls. true will only target when los | ||
+ | --------------------------------------------------------------- | ||
====avoidancetype==== | ====avoidancetype==== | ||
< | < | ||
Line 545: | Line 593: | ||
This code will allow you to determine which avoidance type is used for the profile. Generally speaking, only 1 should ever be used at this point as 2 is deprecated. | This code will allow you to determine which avoidance type is used for the profile. Generally speaking, only 1 should ever be used at this point as 2 is deprecated. | ||
+ | --------------------------------------------------------------- | ||
====largerpulls==== | ====largerpulls==== | ||
[tbl][optional] | [tbl][optional] | ||
Line 556: | Line 605: | ||
</ | </ | ||
+ | --------------------------------------------------------------- | ||
====dontcastwhenmoving==== | ====dontcastwhenmoving==== | ||
[bool][optional] | [bool][optional] | ||
Line 563: | Line 613: | ||
forces skillprofiles / acrs to not cast when your character is moving. Doesn' | forces skillprofiles / acrs to not cast when your character is moving. Doesn' | ||
+ | --------------------------------------------------------------- | ||
+ | ====onentitydeath==== | ||
+ | [tbl][optional] | ||
+ | < | ||
+ | onentitydeath = { | ||
+ | [" | ||
+ | }, | ||
+ | </ | ||
+ | |||
+ | --------------------------------------------------------------- | ||
+ | ====tankmaintainaggro==== | ||
+ | [bool][optional] | ||
+ | |||
+ | --------------------------------------------------------------- | ||
+ | ====tankautoprovoke==== | ||
+ | [bool][optional] | ||
+ | |||
+ | --------------------------------------------------------------- | ||
+ | ====tankstancetargets==== | ||
+ | [tbl][optional] | ||
+ | < | ||
+ | tankstancetargets = { | ||
+ | [" | ||
+ | [1644] = true, --garuda | ||
+ | [2091] = false, --spiny | ||
+ | }, | ||
+ | [" | ||
+ | [1644] = false, --garuda | ||
+ | [2091] = true, --spiny | ||
+ | }, | ||
+ | }, | ||
+ | </ | ||
+ | |||
+ | ====overrideaoedetails==== | ||
+ | [tbl][optional] | ||
+ | < | ||
+ | overrideaoedetails = { | ||
+ | length = { | ||
+ | [1234] = 5, | ||
+ | [5412] = 6, | ||
+ | }, | ||
+ | fan = { | ||
+ | [4213] = " | ||
+ | [13] = " | ||
+ | }, | ||
+ | type = { | ||
+ | [4584] = 10, --make it a donut | ||
+ | [123] = 2, --make it a circle | ||
+ | [1223] = 3, --make it a cone (you need to add to fan as well) | ||
+ | [123222] = 11, --make it a cross | ||
+ | }, | ||
+ | innerrad = { --inner radius override for donut aoes | ||
+ | [1244] = 5, | ||
+ | }, | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | --------------------------------------------------------------- | ||
====staybehindentity==== | ====staybehindentity==== | ||
[optional][table] | [optional][table] | ||
Line 576: | Line 684: | ||
- The character does not have a tether | - The character does not have a tether | ||
+ | --------------------------------------------------------------- | ||
====mapeffects==== | ====mapeffects==== | ||
[optional][table] | [optional][table] |