pmdsky-debug-py 10.0.24__py3-none-any.whl → 10.0.26__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pmdsky_debug_py/_release.py +1 -1
- pmdsky_debug_py/eu.py +118 -1
- pmdsky_debug_py/eu_itcm.py +118 -1
- pmdsky_debug_py/jp.py +124 -7
- pmdsky_debug_py/jp_itcm.py +118 -1
- pmdsky_debug_py/na.py +124 -7
- pmdsky_debug_py/na_itcm.py +118 -1
- pmdsky_debug_py/protocol.py +65 -0
- {pmdsky_debug_py-10.0.24.dist-info → pmdsky_debug_py-10.0.26.dist-info}/METADATA +1 -1
- pmdsky_debug_py-10.0.26.dist-info/RECORD +14 -0
- {pmdsky_debug_py-10.0.24.dist-info → pmdsky_debug_py-10.0.26.dist-info}/WHEEL +1 -1
- pmdsky_debug_py-10.0.24.dist-info/RECORD +0 -14
- {pmdsky_debug_py-10.0.24.dist-info → pmdsky_debug_py-10.0.26.dist-info}/top_level.txt +0 -0
pmdsky_debug_py/_release.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
RELEASE = "v0.10.0+
|
|
1
|
+
RELEASE = "v0.10.0+9a6fbc4328"
|
pmdsky_debug_py/eu.py
CHANGED
|
@@ -1785,7 +1785,7 @@ class EuArm9Functions:
|
|
|
1785
1785
|
[0x200EB48],
|
|
1786
1786
|
None,
|
|
1787
1787
|
"TestItemAiFlag",
|
|
1788
|
-
"
|
|
1788
|
+
"Returns a boolean indicating whether the item is consumable, throwable at an ally, or throwable at an enemy, depending on item_flag.\nThe table used for this is inaccessible in the code, as it is loaded from a file in the ROM at runtime.\nBit 7 in the table corresponds to ITEM_FLAG_CONSUMABLE, bit 6 to ITEM_FLAG_THROWABLE_AT_ALLY, and bit 5 to ITEM_FLAG_THROWABLE_AT_ENEMY.\n\nr0: item_id enum\nr1: item_flag enum. Function will test a different allowed AI action depending on the value.\nreturn: bool",
|
|
1789
1789
|
None,
|
|
1790
1790
|
)
|
|
1791
1791
|
|
|
@@ -24188,6 +24188,15 @@ class EuOverlay29Functions:
|
|
|
24188
24188
|
None,
|
|
24189
24189
|
)
|
|
24190
24190
|
|
|
24191
|
+
SetDecoyAiTracker = Symbol(
|
|
24192
|
+
[0x1F3C4],
|
|
24193
|
+
[0x22FBF44],
|
|
24194
|
+
None,
|
|
24195
|
+
"SetDecoyAiTracker",
|
|
24196
|
+
"If there is a decoy on the floor that the entity can see, sets the entity's decoy_ai_tracker to 1 or 2,\ndepending on whether the attacker who caused the decoy status is on the team or not, respectively.\n\nr0: Entity pointer",
|
|
24197
|
+
None,
|
|
24198
|
+
)
|
|
24199
|
+
|
|
24191
24200
|
CheckSpawnThreshold = Symbol(
|
|
24192
24201
|
[0x1F478],
|
|
24193
24202
|
[0x22FBFF8],
|
|
@@ -24602,6 +24611,33 @@ class EuOverlay29Functions:
|
|
|
24602
24611
|
None,
|
|
24603
24612
|
)
|
|
24604
24613
|
|
|
24614
|
+
CheckVariousStatuses2 = Symbol(
|
|
24615
|
+
[0x246C4],
|
|
24616
|
+
[0x2301244],
|
|
24617
|
+
None,
|
|
24618
|
+
"CheckVariousStatuses2",
|
|
24619
|
+
"Returns 0 if none of these conditions holds for the given entity:\nblinded (checked only if blind_check == 1),\nasleep, paused, infatuated, wrapping, wrapped, biding, petrified, or terrified.\n\nr0: Entity pointer\nr1: If true, return 1 if entity is blinded\nreturn: bool",
|
|
24620
|
+
None,
|
|
24621
|
+
)
|
|
24622
|
+
|
|
24623
|
+
CheckVariousConditions = Symbol(
|
|
24624
|
+
[0x249EC],
|
|
24625
|
+
[0x230156C],
|
|
24626
|
+
None,
|
|
24627
|
+
"CheckVariousConditions",
|
|
24628
|
+
"Returns 0 if none of these conditions holds for the given entity: is a rescue client,\ndoesn’t gain experience (a mission client/story teammate?), is a terrified non-team-leader,\nmeets any of the conditions in CheckVariousStatuses2 (with blind_check = 0), is charging a two-turn move.\n\nr0: Entity pointer\nreturn: bool",
|
|
24629
|
+
None,
|
|
24630
|
+
)
|
|
24631
|
+
|
|
24632
|
+
CheckVariousStatuses = Symbol(
|
|
24633
|
+
[0x24B5C],
|
|
24634
|
+
[0x23016DC],
|
|
24635
|
+
None,
|
|
24636
|
+
"CheckVariousStatuses",
|
|
24637
|
+
"Returns 0 if none of these conditions holds for the given entity: asleep, frozen, petrified, biding.\n\nr0: Entity pointer\nreturn: bool",
|
|
24638
|
+
None,
|
|
24639
|
+
)
|
|
24640
|
+
|
|
24605
24641
|
CanMonsterMoveInDirection = Symbol(
|
|
24606
24642
|
[0x24D24],
|
|
24607
24643
|
[0x23018A4],
|
|
@@ -24827,6 +24863,15 @@ class EuOverlay29Functions:
|
|
|
24827
24863
|
None,
|
|
24828
24864
|
)
|
|
24829
24865
|
|
|
24866
|
+
MonsterCanThrowItems = Symbol(
|
|
24867
|
+
[0x26214],
|
|
24868
|
+
[0x2302D94],
|
|
24869
|
+
None,
|
|
24870
|
+
"MonsterCanThrowItems",
|
|
24871
|
+
"Returns a boolean indicating whether or not the given monster can throw items based on its monster id.\n\nr0: Monster pointer\nreturn: bool",
|
|
24872
|
+
None,
|
|
24873
|
+
)
|
|
24874
|
+
|
|
24830
24875
|
UpdateStateFlags = Symbol(
|
|
24831
24876
|
[0x2626C],
|
|
24832
24877
|
[0x2302DEC],
|
|
@@ -25358,6 +25403,33 @@ class EuOverlay29Functions:
|
|
|
25358
25403
|
None,
|
|
25359
25404
|
)
|
|
25360
25405
|
|
|
25406
|
+
AiDecideUseItem = Symbol(
|
|
25407
|
+
[0x32808],
|
|
25408
|
+
[0x230F388],
|
|
25409
|
+
None,
|
|
25410
|
+
"AiDecideUseItem",
|
|
25411
|
+
"Decides whether or not an AI should use its held item and updates its action_data fields accordingly.\n\nr0: Entity pointer",
|
|
25412
|
+
None,
|
|
25413
|
+
)
|
|
25414
|
+
|
|
25415
|
+
GetPossibleAiThrownItemDirections = Symbol(
|
|
25416
|
+
[0x32CA4],
|
|
25417
|
+
[0x230F824],
|
|
25418
|
+
None,
|
|
25419
|
+
"GetPossibleAiThrownItemDirections",
|
|
25420
|
+
"If the entity can throw an item at a target in a certain direction,\nadds that direction to AI_THROWN_ITEM_DIRECTIONS and the probability of throwing it to AI_THROWN_ITEM_PROBABILITIES (if it is not already present).\nThe size of the arrays will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\nThe caller function will select the direction to throw the item by iterating through the array(s), rolling the probability, and then throwing in that direction if the roll succeeds.\nNothing will be thrown if all rolls fail.\n\nr0: Entity pointer\nr1: Integer in {1, 2}. If 1, target allies; if 2, target enemies.\nr2: Item struct pointer\nr3: If false, will call GetAiUseItemProbability to get the probability of throwing in a certain direction.\nIf true, the added probability will always be 100.",
|
|
25421
|
+
None,
|
|
25422
|
+
)
|
|
25423
|
+
|
|
25424
|
+
GetPossibleAiArcItemTargets = Symbol(
|
|
25425
|
+
[0x32F20],
|
|
25426
|
+
[0x230FAA0],
|
|
25427
|
+
None,
|
|
25428
|
+
"GetPossibleAiArcItemTargets",
|
|
25429
|
+
"Gets the positions of all targets that an AI can hit with an item thrown in an arc, such as a Gravelerock.\nThe number of positions in the array will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\n\nr0: Entity pointer\nr1: Item struct pointer\nr2: [output] Array of size 20 for storing position structs\nr3: If false, will roll GetAiUseItemProbability every time a position is checked and not add it if it rolls false.",
|
|
25430
|
+
None,
|
|
25431
|
+
)
|
|
25432
|
+
|
|
25361
25433
|
TryNonLeaderItemPickUp = Symbol(
|
|
25362
25434
|
[0x33058],
|
|
25363
25435
|
[0x230FBD8],
|
|
@@ -26924,6 +26996,15 @@ class EuOverlay29Functions:
|
|
|
26924
26996
|
None,
|
|
26925
26997
|
)
|
|
26926
26998
|
|
|
26999
|
+
IsChargingAnyTwoTurnMove = Symbol(
|
|
27000
|
+
[0x48504],
|
|
27001
|
+
[0x2325084],
|
|
27002
|
+
None,
|
|
27003
|
+
"IsChargingAnyTwoTurnMove",
|
|
27004
|
+
"Returns a boolean indicating whether or not the given entity is charging any two-turn move.\n\nr0: Entity pointer\nr1: Unused boolean which was supposed to make function return true if the entity is under the effect of Charge (the Electric-type move).\n However, the conditional which uses this boolean will never be activated, as the loop will always terminate before getting to it.\nreturn: bool",
|
|
27005
|
+
None,
|
|
27006
|
+
)
|
|
27007
|
+
|
|
26927
27008
|
HasMaxGinsengBoost99 = Symbol(
|
|
26928
27009
|
[0x48680],
|
|
26929
27010
|
[0x2325200],
|
|
@@ -29959,6 +30040,15 @@ class EuOverlay29Data:
|
|
|
29959
30040
|
"struct exclusive_item_effect_id_8[8]",
|
|
29960
30041
|
)
|
|
29961
30042
|
|
|
30043
|
+
AI_THROWN_ITEM_ACTION_CHOICE_COUNT = Symbol(
|
|
30044
|
+
[0x7777C],
|
|
30045
|
+
[0x23542FC],
|
|
30046
|
+
0x4,
|
|
30047
|
+
"AI_THROWN_ITEM_ACTION_CHOICE_COUNT",
|
|
30048
|
+
"[Runtime] Used to store the number of positions output by GetPossibleAiArcItemTargets and the number of directions/probabilities output by GetPossibleAiThrownItemDirections.",
|
|
30049
|
+
"uint32_t",
|
|
30050
|
+
)
|
|
30051
|
+
|
|
29962
30052
|
EXCL_ITEM_EFFECTS_EVASION_BOOST = Symbol(
|
|
29963
30053
|
[0x77790],
|
|
29964
30054
|
[0x2354310],
|
|
@@ -31695,6 +31785,33 @@ class EuRamData:
|
|
|
31695
31785
|
"struct loaded_attack_sprite_data*",
|
|
31696
31786
|
)
|
|
31697
31787
|
|
|
31788
|
+
AI_THROWN_ITEM_DIRECTION_IS_USED = Symbol(
|
|
31789
|
+
[0x37D5D0],
|
|
31790
|
+
[0x237D5D0],
|
|
31791
|
+
0x8,
|
|
31792
|
+
"AI_THROWN_ITEM_DIRECTION_IS_USED",
|
|
31793
|
+
"[Runtime] Used in GetPossibleAiThrownItemDirections to indicate whether a certain direction enum value is already being used or not.",
|
|
31794
|
+
"bool[8]",
|
|
31795
|
+
)
|
|
31796
|
+
|
|
31797
|
+
AI_THROWN_ITEM_DIRECTIONS = Symbol(
|
|
31798
|
+
[0x37D5D8],
|
|
31799
|
+
[0x237D5D8],
|
|
31800
|
+
0x20,
|
|
31801
|
+
"AI_THROWN_ITEM_DIRECTIONS",
|
|
31802
|
+
"[Runtime] Used to store the directions output by GetPossibleAiThrownItemDirections.",
|
|
31803
|
+
"uint32_t[8]",
|
|
31804
|
+
)
|
|
31805
|
+
|
|
31806
|
+
AI_THROWN_ITEM_PROBABILITIES = Symbol(
|
|
31807
|
+
[0x37D5F8],
|
|
31808
|
+
[0x237D5F8],
|
|
31809
|
+
0x20,
|
|
31810
|
+
"AI_THROWN_ITEM_PROBABILITIES",
|
|
31811
|
+
"[Runtime] Used to store the probabilities matching the directions in THROWN_ITEM_DIRECTIONS.",
|
|
31812
|
+
"uint32_t[8]",
|
|
31813
|
+
)
|
|
31814
|
+
|
|
31698
31815
|
ROLLOUT_ICE_BALL_MISSED = Symbol(
|
|
31699
31816
|
None,
|
|
31700
31817
|
None,
|
pmdsky_debug_py/eu_itcm.py
CHANGED
|
@@ -1739,7 +1739,7 @@ class EuItcmArm9Functions:
|
|
|
1739
1739
|
None,
|
|
1740
1740
|
None,
|
|
1741
1741
|
"TestItemAiFlag",
|
|
1742
|
-
"
|
|
1742
|
+
"Returns a boolean indicating whether the item is consumable, throwable at an ally, or throwable at an enemy, depending on item_flag.\nThe table used for this is inaccessible in the code, as it is loaded from a file in the ROM at runtime.\nBit 7 in the table corresponds to ITEM_FLAG_CONSUMABLE, bit 6 to ITEM_FLAG_THROWABLE_AT_ALLY, and bit 5 to ITEM_FLAG_THROWABLE_AT_ENEMY.\n\nr0: item_id enum\nr1: item_flag enum. Function will test a different allowed AI action depending on the value.\nreturn: bool",
|
|
1743
1743
|
None,
|
|
1744
1744
|
)
|
|
1745
1745
|
|
|
@@ -23613,6 +23613,15 @@ class EuItcmOverlay29Functions:
|
|
|
23613
23613
|
None,
|
|
23614
23614
|
)
|
|
23615
23615
|
|
|
23616
|
+
SetDecoyAiTracker = Symbol(
|
|
23617
|
+
None,
|
|
23618
|
+
None,
|
|
23619
|
+
None,
|
|
23620
|
+
"SetDecoyAiTracker",
|
|
23621
|
+
"If there is a decoy on the floor that the entity can see, sets the entity's decoy_ai_tracker to 1 or 2,\ndepending on whether the attacker who caused the decoy status is on the team or not, respectively.\n\nr0: Entity pointer",
|
|
23622
|
+
None,
|
|
23623
|
+
)
|
|
23624
|
+
|
|
23616
23625
|
CheckSpawnThreshold = Symbol(
|
|
23617
23626
|
None,
|
|
23618
23627
|
None,
|
|
@@ -24027,6 +24036,33 @@ class EuItcmOverlay29Functions:
|
|
|
24027
24036
|
None,
|
|
24028
24037
|
)
|
|
24029
24038
|
|
|
24039
|
+
CheckVariousStatuses2 = Symbol(
|
|
24040
|
+
None,
|
|
24041
|
+
None,
|
|
24042
|
+
None,
|
|
24043
|
+
"CheckVariousStatuses2",
|
|
24044
|
+
"Returns 0 if none of these conditions holds for the given entity:\nblinded (checked only if blind_check == 1),\nasleep, paused, infatuated, wrapping, wrapped, biding, petrified, or terrified.\n\nr0: Entity pointer\nr1: If true, return 1 if entity is blinded\nreturn: bool",
|
|
24045
|
+
None,
|
|
24046
|
+
)
|
|
24047
|
+
|
|
24048
|
+
CheckVariousConditions = Symbol(
|
|
24049
|
+
None,
|
|
24050
|
+
None,
|
|
24051
|
+
None,
|
|
24052
|
+
"CheckVariousConditions",
|
|
24053
|
+
"Returns 0 if none of these conditions holds for the given entity: is a rescue client,\ndoesn’t gain experience (a mission client/story teammate?), is a terrified non-team-leader,\nmeets any of the conditions in CheckVariousStatuses2 (with blind_check = 0), is charging a two-turn move.\n\nr0: Entity pointer\nreturn: bool",
|
|
24054
|
+
None,
|
|
24055
|
+
)
|
|
24056
|
+
|
|
24057
|
+
CheckVariousStatuses = Symbol(
|
|
24058
|
+
None,
|
|
24059
|
+
None,
|
|
24060
|
+
None,
|
|
24061
|
+
"CheckVariousStatuses",
|
|
24062
|
+
"Returns 0 if none of these conditions holds for the given entity: asleep, frozen, petrified, biding.\n\nr0: Entity pointer\nreturn: bool",
|
|
24063
|
+
None,
|
|
24064
|
+
)
|
|
24065
|
+
|
|
24030
24066
|
CanMonsterMoveInDirection = Symbol(
|
|
24031
24067
|
None,
|
|
24032
24068
|
None,
|
|
@@ -24252,6 +24288,15 @@ class EuItcmOverlay29Functions:
|
|
|
24252
24288
|
None,
|
|
24253
24289
|
)
|
|
24254
24290
|
|
|
24291
|
+
MonsterCanThrowItems = Symbol(
|
|
24292
|
+
None,
|
|
24293
|
+
None,
|
|
24294
|
+
None,
|
|
24295
|
+
"MonsterCanThrowItems",
|
|
24296
|
+
"Returns a boolean indicating whether or not the given monster can throw items based on its monster id.\n\nr0: Monster pointer\nreturn: bool",
|
|
24297
|
+
None,
|
|
24298
|
+
)
|
|
24299
|
+
|
|
24255
24300
|
UpdateStateFlags = Symbol(
|
|
24256
24301
|
None,
|
|
24257
24302
|
None,
|
|
@@ -24783,6 +24828,33 @@ class EuItcmOverlay29Functions:
|
|
|
24783
24828
|
None,
|
|
24784
24829
|
)
|
|
24785
24830
|
|
|
24831
|
+
AiDecideUseItem = Symbol(
|
|
24832
|
+
None,
|
|
24833
|
+
None,
|
|
24834
|
+
None,
|
|
24835
|
+
"AiDecideUseItem",
|
|
24836
|
+
"Decides whether or not an AI should use its held item and updates its action_data fields accordingly.\n\nr0: Entity pointer",
|
|
24837
|
+
None,
|
|
24838
|
+
)
|
|
24839
|
+
|
|
24840
|
+
GetPossibleAiThrownItemDirections = Symbol(
|
|
24841
|
+
None,
|
|
24842
|
+
None,
|
|
24843
|
+
None,
|
|
24844
|
+
"GetPossibleAiThrownItemDirections",
|
|
24845
|
+
"If the entity can throw an item at a target in a certain direction,\nadds that direction to AI_THROWN_ITEM_DIRECTIONS and the probability of throwing it to AI_THROWN_ITEM_PROBABILITIES (if it is not already present).\nThe size of the arrays will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\nThe caller function will select the direction to throw the item by iterating through the array(s), rolling the probability, and then throwing in that direction if the roll succeeds.\nNothing will be thrown if all rolls fail.\n\nr0: Entity pointer\nr1: Integer in {1, 2}. If 1, target allies; if 2, target enemies.\nr2: Item struct pointer\nr3: If false, will call GetAiUseItemProbability to get the probability of throwing in a certain direction.\nIf true, the added probability will always be 100.",
|
|
24846
|
+
None,
|
|
24847
|
+
)
|
|
24848
|
+
|
|
24849
|
+
GetPossibleAiArcItemTargets = Symbol(
|
|
24850
|
+
None,
|
|
24851
|
+
None,
|
|
24852
|
+
None,
|
|
24853
|
+
"GetPossibleAiArcItemTargets",
|
|
24854
|
+
"Gets the positions of all targets that an AI can hit with an item thrown in an arc, such as a Gravelerock.\nThe number of positions in the array will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\n\nr0: Entity pointer\nr1: Item struct pointer\nr2: [output] Array of size 20 for storing position structs\nr3: If false, will roll GetAiUseItemProbability every time a position is checked and not add it if it rolls false.",
|
|
24855
|
+
None,
|
|
24856
|
+
)
|
|
24857
|
+
|
|
24786
24858
|
TryNonLeaderItemPickUp = Symbol(
|
|
24787
24859
|
None,
|
|
24788
24860
|
None,
|
|
@@ -26349,6 +26421,15 @@ class EuItcmOverlay29Functions:
|
|
|
26349
26421
|
None,
|
|
26350
26422
|
)
|
|
26351
26423
|
|
|
26424
|
+
IsChargingAnyTwoTurnMove = Symbol(
|
|
26425
|
+
None,
|
|
26426
|
+
None,
|
|
26427
|
+
None,
|
|
26428
|
+
"IsChargingAnyTwoTurnMove",
|
|
26429
|
+
"Returns a boolean indicating whether or not the given entity is charging any two-turn move.\n\nr0: Entity pointer\nr1: Unused boolean which was supposed to make function return true if the entity is under the effect of Charge (the Electric-type move).\n However, the conditional which uses this boolean will never be activated, as the loop will always terminate before getting to it.\nreturn: bool",
|
|
26430
|
+
None,
|
|
26431
|
+
)
|
|
26432
|
+
|
|
26352
26433
|
HasMaxGinsengBoost99 = Symbol(
|
|
26353
26434
|
None,
|
|
26354
26435
|
None,
|
|
@@ -29281,6 +29362,15 @@ class EuItcmOverlay29Data:
|
|
|
29281
29362
|
"struct exclusive_item_effect_id_8[8]",
|
|
29282
29363
|
)
|
|
29283
29364
|
|
|
29365
|
+
AI_THROWN_ITEM_ACTION_CHOICE_COUNT = Symbol(
|
|
29366
|
+
None,
|
|
29367
|
+
None,
|
|
29368
|
+
None,
|
|
29369
|
+
"AI_THROWN_ITEM_ACTION_CHOICE_COUNT",
|
|
29370
|
+
"[Runtime] Used to store the number of positions output by GetPossibleAiArcItemTargets and the number of directions/probabilities output by GetPossibleAiThrownItemDirections.",
|
|
29371
|
+
"uint32_t",
|
|
29372
|
+
)
|
|
29373
|
+
|
|
29284
29374
|
EXCL_ITEM_EFFECTS_EVASION_BOOST = Symbol(
|
|
29285
29375
|
None,
|
|
29286
29376
|
None,
|
|
@@ -30973,6 +31063,33 @@ class EuItcmRamData:
|
|
|
30973
31063
|
"struct loaded_attack_sprite_data*",
|
|
30974
31064
|
)
|
|
30975
31065
|
|
|
31066
|
+
AI_THROWN_ITEM_DIRECTION_IS_USED = Symbol(
|
|
31067
|
+
None,
|
|
31068
|
+
None,
|
|
31069
|
+
None,
|
|
31070
|
+
"AI_THROWN_ITEM_DIRECTION_IS_USED",
|
|
31071
|
+
"[Runtime] Used in GetPossibleAiThrownItemDirections to indicate whether a certain direction enum value is already being used or not.",
|
|
31072
|
+
"bool[8]",
|
|
31073
|
+
)
|
|
31074
|
+
|
|
31075
|
+
AI_THROWN_ITEM_DIRECTIONS = Symbol(
|
|
31076
|
+
None,
|
|
31077
|
+
None,
|
|
31078
|
+
None,
|
|
31079
|
+
"AI_THROWN_ITEM_DIRECTIONS",
|
|
31080
|
+
"[Runtime] Used to store the directions output by GetPossibleAiThrownItemDirections.",
|
|
31081
|
+
"uint32_t[8]",
|
|
31082
|
+
)
|
|
31083
|
+
|
|
31084
|
+
AI_THROWN_ITEM_PROBABILITIES = Symbol(
|
|
31085
|
+
None,
|
|
31086
|
+
None,
|
|
31087
|
+
None,
|
|
31088
|
+
"AI_THROWN_ITEM_PROBABILITIES",
|
|
31089
|
+
"[Runtime] Used to store the probabilities matching the directions in THROWN_ITEM_DIRECTIONS.",
|
|
31090
|
+
"uint32_t[8]",
|
|
31091
|
+
)
|
|
31092
|
+
|
|
30976
31093
|
ROLLOUT_ICE_BALL_MISSED = Symbol(
|
|
30977
31094
|
None,
|
|
30978
31095
|
None,
|
pmdsky_debug_py/jp.py
CHANGED
|
@@ -1785,7 +1785,7 @@ class JpArm9Functions:
|
|
|
1785
1785
|
[0x200EAD0],
|
|
1786
1786
|
None,
|
|
1787
1787
|
"TestItemAiFlag",
|
|
1788
|
-
"
|
|
1788
|
+
"Returns a boolean indicating whether the item is consumable, throwable at an ally, or throwable at an enemy, depending on item_flag.\nThe table used for this is inaccessible in the code, as it is loaded from a file in the ROM at runtime.\nBit 7 in the table corresponds to ITEM_FLAG_CONSUMABLE, bit 6 to ITEM_FLAG_THROWABLE_AT_ALLY, and bit 5 to ITEM_FLAG_THROWABLE_AT_ENEMY.\n\nr0: item_id enum\nr1: item_flag enum. Function will test a different allowed AI action depending on the value.\nreturn: bool",
|
|
1789
1789
|
None,
|
|
1790
1790
|
)
|
|
1791
1791
|
|
|
@@ -24179,6 +24179,15 @@ class JpOverlay29Functions:
|
|
|
24179
24179
|
None,
|
|
24180
24180
|
)
|
|
24181
24181
|
|
|
24182
|
+
SetDecoyAiTracker = Symbol(
|
|
24183
|
+
None,
|
|
24184
|
+
None,
|
|
24185
|
+
None,
|
|
24186
|
+
"SetDecoyAiTracker",
|
|
24187
|
+
"If there is a decoy on the floor that the entity can see, sets the entity's decoy_ai_tracker to 1 or 2,\ndepending on whether the attacker who caused the decoy status is on the team or not, respectively.\n\nr0: Entity pointer",
|
|
24188
|
+
None,
|
|
24189
|
+
)
|
|
24190
|
+
|
|
24182
24191
|
CheckSpawnThreshold = Symbol(
|
|
24183
24192
|
[0x1F1E0],
|
|
24184
24193
|
[0x22FCAC0],
|
|
@@ -24593,6 +24602,33 @@ class JpOverlay29Functions:
|
|
|
24593
24602
|
None,
|
|
24594
24603
|
)
|
|
24595
24604
|
|
|
24605
|
+
CheckVariousStatuses2 = Symbol(
|
|
24606
|
+
[0x2431C],
|
|
24607
|
+
[0x2301BFC],
|
|
24608
|
+
None,
|
|
24609
|
+
"CheckVariousStatuses2",
|
|
24610
|
+
"Returns 0 if none of these conditions holds for the given entity:\nblinded (checked only if blind_check == 1),\nasleep, paused, infatuated, wrapping, wrapped, biding, petrified, or terrified.\n\nr0: Entity pointer\nr1: If true, return 1 if entity is blinded\nreturn: bool",
|
|
24611
|
+
None,
|
|
24612
|
+
)
|
|
24613
|
+
|
|
24614
|
+
CheckVariousConditions = Symbol(
|
|
24615
|
+
[0x24644],
|
|
24616
|
+
[0x2301F24],
|
|
24617
|
+
None,
|
|
24618
|
+
"CheckVariousConditions",
|
|
24619
|
+
"Returns 0 if none of these conditions holds for the given entity: is a rescue client,\ndoesn’t gain experience (a mission client/story teammate?), is a terrified non-team-leader,\nmeets any of the conditions in CheckVariousStatuses2 (with blind_check = 0), is charging a two-turn move.\n\nr0: Entity pointer\nreturn: bool",
|
|
24620
|
+
None,
|
|
24621
|
+
)
|
|
24622
|
+
|
|
24623
|
+
CheckVariousStatuses = Symbol(
|
|
24624
|
+
[0x247B4],
|
|
24625
|
+
[0x2302094],
|
|
24626
|
+
None,
|
|
24627
|
+
"CheckVariousStatuses",
|
|
24628
|
+
"Returns 0 if none of these conditions holds for the given entity: asleep, frozen, petrified, biding.\n\nr0: Entity pointer\nreturn: bool",
|
|
24629
|
+
None,
|
|
24630
|
+
)
|
|
24631
|
+
|
|
24596
24632
|
CanMonsterMoveInDirection = Symbol(
|
|
24597
24633
|
[0x2497C],
|
|
24598
24634
|
[0x230225C],
|
|
@@ -24657,8 +24693,8 @@ class JpOverlay29Functions:
|
|
|
24657
24693
|
)
|
|
24658
24694
|
|
|
24659
24695
|
GetTreatmentBetweenMonsters = Symbol(
|
|
24660
|
-
[
|
|
24661
|
-
[
|
|
24696
|
+
[0x253EC],
|
|
24697
|
+
[0x2302CCC],
|
|
24662
24698
|
None,
|
|
24663
24699
|
"GetTreatmentBetweenMonsters",
|
|
24664
24700
|
"Called to check if a monster should treat another as an ally, enemy, or ignore it.\n(Examples of the 'ignore' case: target is a shopkeeper, there is a decoy on the floor, etc.)\n\nr0: Pointer to entity 1\nr1: Pointer to entity 2\nr2: If false, return TREATMENT_IGNORE if entity 2 is invisible and entity 1 cannot see invisible monsters\nr3: If true, return TREATMENT_IGNORE if entity 1 is a team member and entity 2 has the STATUS_PETRIFIED status\nreturn: Treatment that monster 1 should apply to monster 2",
|
|
@@ -24818,6 +24854,15 @@ class JpOverlay29Functions:
|
|
|
24818
24854
|
None,
|
|
24819
24855
|
)
|
|
24820
24856
|
|
|
24857
|
+
MonsterCanThrowItems = Symbol(
|
|
24858
|
+
[0x25FD8],
|
|
24859
|
+
[0x23038B8],
|
|
24860
|
+
None,
|
|
24861
|
+
"MonsterCanThrowItems",
|
|
24862
|
+
"Returns a boolean indicating whether or not the given monster can throw items based on its monster id.\n\nr0: Monster pointer\nreturn: bool",
|
|
24863
|
+
None,
|
|
24864
|
+
)
|
|
24865
|
+
|
|
24821
24866
|
UpdateStateFlags = Symbol(
|
|
24822
24867
|
[0x26030],
|
|
24823
24868
|
[0x2303910],
|
|
@@ -25349,6 +25394,33 @@ class JpOverlay29Functions:
|
|
|
25349
25394
|
None,
|
|
25350
25395
|
)
|
|
25351
25396
|
|
|
25397
|
+
AiDecideUseItem = Symbol(
|
|
25398
|
+
[0x32570],
|
|
25399
|
+
[0x230FE50],
|
|
25400
|
+
None,
|
|
25401
|
+
"AiDecideUseItem",
|
|
25402
|
+
"Decides whether or not an AI should use its held item and updates its action_data fields accordingly.\n\nr0: Entity pointer",
|
|
25403
|
+
None,
|
|
25404
|
+
)
|
|
25405
|
+
|
|
25406
|
+
GetPossibleAiThrownItemDirections = Symbol(
|
|
25407
|
+
[0x32A0C],
|
|
25408
|
+
[0x23102EC],
|
|
25409
|
+
None,
|
|
25410
|
+
"GetPossibleAiThrownItemDirections",
|
|
25411
|
+
"If the entity can throw an item at a target in a certain direction,\nadds that direction to AI_THROWN_ITEM_DIRECTIONS and the probability of throwing it to AI_THROWN_ITEM_PROBABILITIES (if it is not already present).\nThe size of the arrays will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\nThe caller function will select the direction to throw the item by iterating through the array(s), rolling the probability, and then throwing in that direction if the roll succeeds.\nNothing will be thrown if all rolls fail.\n\nr0: Entity pointer\nr1: Integer in {1, 2}. If 1, target allies; if 2, target enemies.\nr2: Item struct pointer\nr3: If false, will call GetAiUseItemProbability to get the probability of throwing in a certain direction.\nIf true, the added probability will always be 100.",
|
|
25412
|
+
None,
|
|
25413
|
+
)
|
|
25414
|
+
|
|
25415
|
+
GetPossibleAiArcItemTargets = Symbol(
|
|
25416
|
+
[0x32C88],
|
|
25417
|
+
[0x2310568],
|
|
25418
|
+
None,
|
|
25419
|
+
"GetPossibleAiArcItemTargets",
|
|
25420
|
+
"Gets the positions of all targets that an AI can hit with an item thrown in an arc, such as a Gravelerock.\nThe number of positions in the array will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\n\nr0: Entity pointer\nr1: Item struct pointer\nr2: [output] Array of size 20 for storing position structs\nr3: If false, will roll GetAiUseItemProbability every time a position is checked and not add it if it rolls false.",
|
|
25421
|
+
None,
|
|
25422
|
+
)
|
|
25423
|
+
|
|
25352
25424
|
TryNonLeaderItemPickUp = Symbol(
|
|
25353
25425
|
[0x32DC0],
|
|
25354
25426
|
[0x23106A0],
|
|
@@ -26745,8 +26817,8 @@ class JpOverlay29Functions:
|
|
|
26745
26817
|
)
|
|
26746
26818
|
|
|
26747
26819
|
GetAiUseItemProbability = Symbol(
|
|
26748
|
-
[
|
|
26749
|
-
[
|
|
26820
|
+
[0x41C28],
|
|
26821
|
+
[0x231F508],
|
|
26750
26822
|
None,
|
|
26751
26823
|
"GetAiUseItemProbability",
|
|
26752
26824
|
"Called to get the probability of an item being used or thrown by an AI on the current turn.\n\nr0: Pointer to either the user if it is an item used by the AI or the target if it is an item thrown by the AI\nr1: Pointer to item\nr2: Size-2 bitvector: if bit 0 is set, the AI is throwing the item. If bit 1 is set, it is targeting an ally with the item.\nreturn: Integer in range [0, 100]",
|
|
@@ -26754,8 +26826,8 @@ class JpOverlay29Functions:
|
|
|
26754
26826
|
)
|
|
26755
26827
|
|
|
26756
26828
|
IsAdjacentToEnemy = Symbol(
|
|
26757
|
-
[
|
|
26758
|
-
[
|
|
26829
|
+
[0x424BC],
|
|
26830
|
+
[0x231FD9C],
|
|
26759
26831
|
None,
|
|
26760
26832
|
"IsAdjacentToEnemy",
|
|
26761
26833
|
"Called to check if a hostile entity is present in any of the tiles adjacent to an entity.\n\nr0: Pointer to entity\nreturn: True if yes, false if no",
|
|
@@ -26915,6 +26987,15 @@ class JpOverlay29Functions:
|
|
|
26915
26987
|
None,
|
|
26916
26988
|
)
|
|
26917
26989
|
|
|
26990
|
+
IsChargingAnyTwoTurnMove = Symbol(
|
|
26991
|
+
[0x481CC],
|
|
26992
|
+
[0x2325AAC],
|
|
26993
|
+
None,
|
|
26994
|
+
"IsChargingAnyTwoTurnMove",
|
|
26995
|
+
"Returns a boolean indicating whether or not the given entity is charging any two-turn move.\n\nr0: Entity pointer\nr1: Unused boolean which was supposed to make function return true if the entity is under the effect of Charge (the Electric-type move).\n However, the conditional which uses this boolean will never be activated, as the loop will always terminate before getting to it.\nreturn: bool",
|
|
26996
|
+
None,
|
|
26997
|
+
)
|
|
26998
|
+
|
|
26918
26999
|
HasMaxGinsengBoost99 = Symbol(
|
|
26919
27000
|
[0x48348],
|
|
26920
27001
|
[0x2325C28],
|
|
@@ -29852,6 +29933,15 @@ class JpOverlay29Data:
|
|
|
29852
29933
|
"struct exclusive_item_effect_id_8[8]",
|
|
29853
29934
|
)
|
|
29854
29935
|
|
|
29936
|
+
AI_THROWN_ITEM_ACTION_CHOICE_COUNT = Symbol(
|
|
29937
|
+
[0x7709C],
|
|
29938
|
+
[0x235497C],
|
|
29939
|
+
None,
|
|
29940
|
+
"AI_THROWN_ITEM_ACTION_CHOICE_COUNT",
|
|
29941
|
+
"[Runtime] Used to store the number of positions output by GetPossibleAiArcItemTargets and the number of directions/probabilities output by GetPossibleAiThrownItemDirections.",
|
|
29942
|
+
"uint32_t",
|
|
29943
|
+
)
|
|
29944
|
+
|
|
29855
29945
|
EXCL_ITEM_EFFECTS_EVASION_BOOST = Symbol(
|
|
29856
29946
|
[0x770B0],
|
|
29857
29947
|
[0x2354990],
|
|
@@ -31583,6 +31673,33 @@ class JpRamData:
|
|
|
31583
31673
|
"struct loaded_attack_sprite_data*",
|
|
31584
31674
|
)
|
|
31585
31675
|
|
|
31676
|
+
AI_THROWN_ITEM_DIRECTION_IS_USED = Symbol(
|
|
31677
|
+
None,
|
|
31678
|
+
None,
|
|
31679
|
+
None,
|
|
31680
|
+
"AI_THROWN_ITEM_DIRECTION_IS_USED",
|
|
31681
|
+
"[Runtime] Used in GetPossibleAiThrownItemDirections to indicate whether a certain direction enum value is already being used or not.",
|
|
31682
|
+
"bool[8]",
|
|
31683
|
+
)
|
|
31684
|
+
|
|
31685
|
+
AI_THROWN_ITEM_DIRECTIONS = Symbol(
|
|
31686
|
+
None,
|
|
31687
|
+
None,
|
|
31688
|
+
None,
|
|
31689
|
+
"AI_THROWN_ITEM_DIRECTIONS",
|
|
31690
|
+
"[Runtime] Used to store the directions output by GetPossibleAiThrownItemDirections.",
|
|
31691
|
+
"uint32_t[8]",
|
|
31692
|
+
)
|
|
31693
|
+
|
|
31694
|
+
AI_THROWN_ITEM_PROBABILITIES = Symbol(
|
|
31695
|
+
None,
|
|
31696
|
+
None,
|
|
31697
|
+
None,
|
|
31698
|
+
"AI_THROWN_ITEM_PROBABILITIES",
|
|
31699
|
+
"[Runtime] Used to store the probabilities matching the directions in THROWN_ITEM_DIRECTIONS.",
|
|
31700
|
+
"uint32_t[8]",
|
|
31701
|
+
)
|
|
31702
|
+
|
|
31586
31703
|
ROLLOUT_ICE_BALL_MISSED = Symbol(
|
|
31587
31704
|
None,
|
|
31588
31705
|
None,
|
pmdsky_debug_py/jp_itcm.py
CHANGED
|
@@ -1739,7 +1739,7 @@ class JpItcmArm9Functions:
|
|
|
1739
1739
|
None,
|
|
1740
1740
|
None,
|
|
1741
1741
|
"TestItemAiFlag",
|
|
1742
|
-
"
|
|
1742
|
+
"Returns a boolean indicating whether the item is consumable, throwable at an ally, or throwable at an enemy, depending on item_flag.\nThe table used for this is inaccessible in the code, as it is loaded from a file in the ROM at runtime.\nBit 7 in the table corresponds to ITEM_FLAG_CONSUMABLE, bit 6 to ITEM_FLAG_THROWABLE_AT_ALLY, and bit 5 to ITEM_FLAG_THROWABLE_AT_ENEMY.\n\nr0: item_id enum\nr1: item_flag enum. Function will test a different allowed AI action depending on the value.\nreturn: bool",
|
|
1743
1743
|
None,
|
|
1744
1744
|
)
|
|
1745
1745
|
|
|
@@ -23613,6 +23613,15 @@ class JpItcmOverlay29Functions:
|
|
|
23613
23613
|
None,
|
|
23614
23614
|
)
|
|
23615
23615
|
|
|
23616
|
+
SetDecoyAiTracker = Symbol(
|
|
23617
|
+
None,
|
|
23618
|
+
None,
|
|
23619
|
+
None,
|
|
23620
|
+
"SetDecoyAiTracker",
|
|
23621
|
+
"If there is a decoy on the floor that the entity can see, sets the entity's decoy_ai_tracker to 1 or 2,\ndepending on whether the attacker who caused the decoy status is on the team or not, respectively.\n\nr0: Entity pointer",
|
|
23622
|
+
None,
|
|
23623
|
+
)
|
|
23624
|
+
|
|
23616
23625
|
CheckSpawnThreshold = Symbol(
|
|
23617
23626
|
None,
|
|
23618
23627
|
None,
|
|
@@ -24027,6 +24036,33 @@ class JpItcmOverlay29Functions:
|
|
|
24027
24036
|
None,
|
|
24028
24037
|
)
|
|
24029
24038
|
|
|
24039
|
+
CheckVariousStatuses2 = Symbol(
|
|
24040
|
+
None,
|
|
24041
|
+
None,
|
|
24042
|
+
None,
|
|
24043
|
+
"CheckVariousStatuses2",
|
|
24044
|
+
"Returns 0 if none of these conditions holds for the given entity:\nblinded (checked only if blind_check == 1),\nasleep, paused, infatuated, wrapping, wrapped, biding, petrified, or terrified.\n\nr0: Entity pointer\nr1: If true, return 1 if entity is blinded\nreturn: bool",
|
|
24045
|
+
None,
|
|
24046
|
+
)
|
|
24047
|
+
|
|
24048
|
+
CheckVariousConditions = Symbol(
|
|
24049
|
+
None,
|
|
24050
|
+
None,
|
|
24051
|
+
None,
|
|
24052
|
+
"CheckVariousConditions",
|
|
24053
|
+
"Returns 0 if none of these conditions holds for the given entity: is a rescue client,\ndoesn’t gain experience (a mission client/story teammate?), is a terrified non-team-leader,\nmeets any of the conditions in CheckVariousStatuses2 (with blind_check = 0), is charging a two-turn move.\n\nr0: Entity pointer\nreturn: bool",
|
|
24054
|
+
None,
|
|
24055
|
+
)
|
|
24056
|
+
|
|
24057
|
+
CheckVariousStatuses = Symbol(
|
|
24058
|
+
None,
|
|
24059
|
+
None,
|
|
24060
|
+
None,
|
|
24061
|
+
"CheckVariousStatuses",
|
|
24062
|
+
"Returns 0 if none of these conditions holds for the given entity: asleep, frozen, petrified, biding.\n\nr0: Entity pointer\nreturn: bool",
|
|
24063
|
+
None,
|
|
24064
|
+
)
|
|
24065
|
+
|
|
24030
24066
|
CanMonsterMoveInDirection = Symbol(
|
|
24031
24067
|
None,
|
|
24032
24068
|
None,
|
|
@@ -24252,6 +24288,15 @@ class JpItcmOverlay29Functions:
|
|
|
24252
24288
|
None,
|
|
24253
24289
|
)
|
|
24254
24290
|
|
|
24291
|
+
MonsterCanThrowItems = Symbol(
|
|
24292
|
+
None,
|
|
24293
|
+
None,
|
|
24294
|
+
None,
|
|
24295
|
+
"MonsterCanThrowItems",
|
|
24296
|
+
"Returns a boolean indicating whether or not the given monster can throw items based on its monster id.\n\nr0: Monster pointer\nreturn: bool",
|
|
24297
|
+
None,
|
|
24298
|
+
)
|
|
24299
|
+
|
|
24255
24300
|
UpdateStateFlags = Symbol(
|
|
24256
24301
|
None,
|
|
24257
24302
|
None,
|
|
@@ -24783,6 +24828,33 @@ class JpItcmOverlay29Functions:
|
|
|
24783
24828
|
None,
|
|
24784
24829
|
)
|
|
24785
24830
|
|
|
24831
|
+
AiDecideUseItem = Symbol(
|
|
24832
|
+
None,
|
|
24833
|
+
None,
|
|
24834
|
+
None,
|
|
24835
|
+
"AiDecideUseItem",
|
|
24836
|
+
"Decides whether or not an AI should use its held item and updates its action_data fields accordingly.\n\nr0: Entity pointer",
|
|
24837
|
+
None,
|
|
24838
|
+
)
|
|
24839
|
+
|
|
24840
|
+
GetPossibleAiThrownItemDirections = Symbol(
|
|
24841
|
+
None,
|
|
24842
|
+
None,
|
|
24843
|
+
None,
|
|
24844
|
+
"GetPossibleAiThrownItemDirections",
|
|
24845
|
+
"If the entity can throw an item at a target in a certain direction,\nadds that direction to AI_THROWN_ITEM_DIRECTIONS and the probability of throwing it to AI_THROWN_ITEM_PROBABILITIES (if it is not already present).\nThe size of the arrays will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\nThe caller function will select the direction to throw the item by iterating through the array(s), rolling the probability, and then throwing in that direction if the roll succeeds.\nNothing will be thrown if all rolls fail.\n\nr0: Entity pointer\nr1: Integer in {1, 2}. If 1, target allies; if 2, target enemies.\nr2: Item struct pointer\nr3: If false, will call GetAiUseItemProbability to get the probability of throwing in a certain direction.\nIf true, the added probability will always be 100.",
|
|
24846
|
+
None,
|
|
24847
|
+
)
|
|
24848
|
+
|
|
24849
|
+
GetPossibleAiArcItemTargets = Symbol(
|
|
24850
|
+
None,
|
|
24851
|
+
None,
|
|
24852
|
+
None,
|
|
24853
|
+
"GetPossibleAiArcItemTargets",
|
|
24854
|
+
"Gets the positions of all targets that an AI can hit with an item thrown in an arc, such as a Gravelerock.\nThe number of positions in the array will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\n\nr0: Entity pointer\nr1: Item struct pointer\nr2: [output] Array of size 20 for storing position structs\nr3: If false, will roll GetAiUseItemProbability every time a position is checked and not add it if it rolls false.",
|
|
24855
|
+
None,
|
|
24856
|
+
)
|
|
24857
|
+
|
|
24786
24858
|
TryNonLeaderItemPickUp = Symbol(
|
|
24787
24859
|
None,
|
|
24788
24860
|
None,
|
|
@@ -26349,6 +26421,15 @@ class JpItcmOverlay29Functions:
|
|
|
26349
26421
|
None,
|
|
26350
26422
|
)
|
|
26351
26423
|
|
|
26424
|
+
IsChargingAnyTwoTurnMove = Symbol(
|
|
26425
|
+
None,
|
|
26426
|
+
None,
|
|
26427
|
+
None,
|
|
26428
|
+
"IsChargingAnyTwoTurnMove",
|
|
26429
|
+
"Returns a boolean indicating whether or not the given entity is charging any two-turn move.\n\nr0: Entity pointer\nr1: Unused boolean which was supposed to make function return true if the entity is under the effect of Charge (the Electric-type move).\n However, the conditional which uses this boolean will never be activated, as the loop will always terminate before getting to it.\nreturn: bool",
|
|
26430
|
+
None,
|
|
26431
|
+
)
|
|
26432
|
+
|
|
26352
26433
|
HasMaxGinsengBoost99 = Symbol(
|
|
26353
26434
|
None,
|
|
26354
26435
|
None,
|
|
@@ -29281,6 +29362,15 @@ class JpItcmOverlay29Data:
|
|
|
29281
29362
|
"struct exclusive_item_effect_id_8[8]",
|
|
29282
29363
|
)
|
|
29283
29364
|
|
|
29365
|
+
AI_THROWN_ITEM_ACTION_CHOICE_COUNT = Symbol(
|
|
29366
|
+
None,
|
|
29367
|
+
None,
|
|
29368
|
+
None,
|
|
29369
|
+
"AI_THROWN_ITEM_ACTION_CHOICE_COUNT",
|
|
29370
|
+
"[Runtime] Used to store the number of positions output by GetPossibleAiArcItemTargets and the number of directions/probabilities output by GetPossibleAiThrownItemDirections.",
|
|
29371
|
+
"uint32_t",
|
|
29372
|
+
)
|
|
29373
|
+
|
|
29284
29374
|
EXCL_ITEM_EFFECTS_EVASION_BOOST = Symbol(
|
|
29285
29375
|
None,
|
|
29286
29376
|
None,
|
|
@@ -30973,6 +31063,33 @@ class JpItcmRamData:
|
|
|
30973
31063
|
"struct loaded_attack_sprite_data*",
|
|
30974
31064
|
)
|
|
30975
31065
|
|
|
31066
|
+
AI_THROWN_ITEM_DIRECTION_IS_USED = Symbol(
|
|
31067
|
+
None,
|
|
31068
|
+
None,
|
|
31069
|
+
None,
|
|
31070
|
+
"AI_THROWN_ITEM_DIRECTION_IS_USED",
|
|
31071
|
+
"[Runtime] Used in GetPossibleAiThrownItemDirections to indicate whether a certain direction enum value is already being used or not.",
|
|
31072
|
+
"bool[8]",
|
|
31073
|
+
)
|
|
31074
|
+
|
|
31075
|
+
AI_THROWN_ITEM_DIRECTIONS = Symbol(
|
|
31076
|
+
None,
|
|
31077
|
+
None,
|
|
31078
|
+
None,
|
|
31079
|
+
"AI_THROWN_ITEM_DIRECTIONS",
|
|
31080
|
+
"[Runtime] Used to store the directions output by GetPossibleAiThrownItemDirections.",
|
|
31081
|
+
"uint32_t[8]",
|
|
31082
|
+
)
|
|
31083
|
+
|
|
31084
|
+
AI_THROWN_ITEM_PROBABILITIES = Symbol(
|
|
31085
|
+
None,
|
|
31086
|
+
None,
|
|
31087
|
+
None,
|
|
31088
|
+
"AI_THROWN_ITEM_PROBABILITIES",
|
|
31089
|
+
"[Runtime] Used to store the probabilities matching the directions in THROWN_ITEM_DIRECTIONS.",
|
|
31090
|
+
"uint32_t[8]",
|
|
31091
|
+
)
|
|
31092
|
+
|
|
30976
31093
|
ROLLOUT_ICE_BALL_MISSED = Symbol(
|
|
30977
31094
|
None,
|
|
30978
31095
|
None,
|
pmdsky_debug_py/na.py
CHANGED
|
@@ -1785,7 +1785,7 @@ class NaArm9Functions:
|
|
|
1785
1785
|
[0x200EAA0],
|
|
1786
1786
|
None,
|
|
1787
1787
|
"TestItemAiFlag",
|
|
1788
|
-
"
|
|
1788
|
+
"Returns a boolean indicating whether the item is consumable, throwable at an ally, or throwable at an enemy, depending on item_flag.\nThe table used for this is inaccessible in the code, as it is loaded from a file in the ROM at runtime.\nBit 7 in the table corresponds to ITEM_FLAG_CONSUMABLE, bit 6 to ITEM_FLAG_THROWABLE_AT_ALLY, and bit 5 to ITEM_FLAG_THROWABLE_AT_ENEMY.\n\nr0: item_id enum\nr1: item_flag enum. Function will test a different allowed AI action depending on the value.\nreturn: bool",
|
|
1789
1789
|
None,
|
|
1790
1790
|
)
|
|
1791
1791
|
|
|
@@ -24186,6 +24186,15 @@ class NaOverlay29Functions:
|
|
|
24186
24186
|
None,
|
|
24187
24187
|
)
|
|
24188
24188
|
|
|
24189
|
+
SetDecoyAiTracker = Symbol(
|
|
24190
|
+
[0x1F2F8],
|
|
24191
|
+
[0x22FB538],
|
|
24192
|
+
None,
|
|
24193
|
+
"SetDecoyAiTracker",
|
|
24194
|
+
"If there is a decoy on the floor that the entity can see, sets the entity's decoy_ai_tracker to 1 or 2,\ndepending on whether the attacker who caused the decoy status is on the team or not, respectively.\n\nr0: Entity pointer",
|
|
24195
|
+
None,
|
|
24196
|
+
)
|
|
24197
|
+
|
|
24189
24198
|
CheckSpawnThreshold = Symbol(
|
|
24190
24199
|
[0x1F3AC],
|
|
24191
24200
|
[0x22FB5EC],
|
|
@@ -24600,6 +24609,33 @@ class NaOverlay29Functions:
|
|
|
24600
24609
|
None,
|
|
24601
24610
|
)
|
|
24602
24611
|
|
|
24612
|
+
CheckVariousStatuses2 = Symbol(
|
|
24613
|
+
[0x245D8],
|
|
24614
|
+
[0x2300818],
|
|
24615
|
+
None,
|
|
24616
|
+
"CheckVariousStatuses2",
|
|
24617
|
+
"Returns 0 if none of these conditions holds for the given entity:\nblinded (checked only if blind_check == 1),\nasleep, paused, infatuated, wrapping, wrapped, biding, petrified, or terrified.\n\nr0: Entity pointer\nr1: If true, return 1 if entity is blinded\nreturn: bool",
|
|
24618
|
+
None,
|
|
24619
|
+
)
|
|
24620
|
+
|
|
24621
|
+
CheckVariousConditions = Symbol(
|
|
24622
|
+
[0x24900],
|
|
24623
|
+
[0x2300B40],
|
|
24624
|
+
None,
|
|
24625
|
+
"CheckVariousConditions",
|
|
24626
|
+
"Returns 0 if none of these conditions holds for the given entity: is a rescue client,\ndoesn’t gain experience (a mission client/story teammate?), is a terrified non-team-leader,\nmeets any of the conditions in CheckVariousStatuses2 (with blind_check = 0), is charging a two-turn move.\n\nr0: Entity pointer\nreturn: bool",
|
|
24627
|
+
None,
|
|
24628
|
+
)
|
|
24629
|
+
|
|
24630
|
+
CheckVariousStatuses = Symbol(
|
|
24631
|
+
[0x24A70],
|
|
24632
|
+
[0x2300CB0],
|
|
24633
|
+
None,
|
|
24634
|
+
"CheckVariousStatuses",
|
|
24635
|
+
"Returns 0 if none of these conditions holds for the given entity: asleep, frozen, petrified, biding.\n\nr0: Entity pointer\nreturn: bool",
|
|
24636
|
+
None,
|
|
24637
|
+
)
|
|
24638
|
+
|
|
24603
24639
|
CanMonsterMoveInDirection = Symbol(
|
|
24604
24640
|
[0x24C38],
|
|
24605
24641
|
[0x2300E78],
|
|
@@ -24664,8 +24700,8 @@ class NaOverlay29Functions:
|
|
|
24664
24700
|
)
|
|
24665
24701
|
|
|
24666
24702
|
GetTreatmentBetweenMonsters = Symbol(
|
|
24667
|
-
[
|
|
24668
|
-
[
|
|
24703
|
+
[0x2551C],
|
|
24704
|
+
[0x230175C],
|
|
24669
24705
|
None,
|
|
24670
24706
|
"GetTreatmentBetweenMonsters",
|
|
24671
24707
|
"Called to check if a monster should treat another as an ally, enemy, or ignore it.\n(Examples of the 'ignore' case: target is a shopkeeper, there is a decoy on the floor, etc.)\n\nr0: Pointer to entity 1\nr1: Pointer to entity 2\nr2: If false, return TREATMENT_IGNORE if entity 2 is invisible and entity 1 cannot see invisible monsters\nr3: If true, return TREATMENT_IGNORE if entity 1 is a team member and entity 2 has the STATUS_PETRIFIED status\nreturn: Treatment that monster 1 should apply to monster 2",
|
|
@@ -24825,6 +24861,15 @@ class NaOverlay29Functions:
|
|
|
24825
24861
|
None,
|
|
24826
24862
|
)
|
|
24827
24863
|
|
|
24864
|
+
MonsterCanThrowItems = Symbol(
|
|
24865
|
+
[0x26128],
|
|
24866
|
+
[0x2302368],
|
|
24867
|
+
None,
|
|
24868
|
+
"MonsterCanThrowItems",
|
|
24869
|
+
"Returns a boolean indicating whether or not the given monster can throw items based on its monster id.\n\nr0: Monster pointer\nreturn: bool",
|
|
24870
|
+
None,
|
|
24871
|
+
)
|
|
24872
|
+
|
|
24828
24873
|
UpdateStateFlags = Symbol(
|
|
24829
24874
|
[0x26180],
|
|
24830
24875
|
[0x23023C0],
|
|
@@ -25356,6 +25401,33 @@ class NaOverlay29Functions:
|
|
|
25356
25401
|
None,
|
|
25357
25402
|
)
|
|
25358
25403
|
|
|
25404
|
+
AiDecideUseItem = Symbol(
|
|
25405
|
+
[0x326D4],
|
|
25406
|
+
[0x230E914],
|
|
25407
|
+
None,
|
|
25408
|
+
"AiDecideUseItem",
|
|
25409
|
+
"Decides whether or not an AI should use its held item and updates its action_data fields accordingly.\n\nr0: Entity pointer",
|
|
25410
|
+
None,
|
|
25411
|
+
)
|
|
25412
|
+
|
|
25413
|
+
GetPossibleAiThrownItemDirections = Symbol(
|
|
25414
|
+
[0x32B70],
|
|
25415
|
+
[0x230EDB0],
|
|
25416
|
+
None,
|
|
25417
|
+
"GetPossibleAiThrownItemDirections",
|
|
25418
|
+
"If the entity can throw an item at a target in a certain direction,\nadds that direction to AI_THROWN_ITEM_DIRECTIONS and the probability of throwing it to AI_THROWN_ITEM_PROBABILITIES (if it is not already present).\nThe size of the arrays will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\nThe caller function will select the direction to throw the item by iterating through the array(s), rolling the probability, and then throwing in that direction if the roll succeeds.\nNothing will be thrown if all rolls fail.\n\nr0: Entity pointer\nr1: Integer in {1, 2}. If 1, target allies; if 2, target enemies.\nr2: Item struct pointer\nr3: If false, will call GetAiUseItemProbability to get the probability of throwing in a certain direction.\nIf true, the added probability will always be 100.",
|
|
25419
|
+
None,
|
|
25420
|
+
)
|
|
25421
|
+
|
|
25422
|
+
GetPossibleAiArcItemTargets = Symbol(
|
|
25423
|
+
[0x32DEC],
|
|
25424
|
+
[0x230F02C],
|
|
25425
|
+
None,
|
|
25426
|
+
"GetPossibleAiArcItemTargets",
|
|
25427
|
+
"Gets the positions of all targets that an AI can hit with an item thrown in an arc, such as a Gravelerock.\nThe number of positions in the array will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\n\nr0: Entity pointer\nr1: Item struct pointer\nr2: [output] Array of size 20 for storing position structs\nr3: If false, will roll GetAiUseItemProbability every time a position is checked and not add it if it rolls false.",
|
|
25428
|
+
None,
|
|
25429
|
+
)
|
|
25430
|
+
|
|
25359
25431
|
TryNonLeaderItemPickUp = Symbol(
|
|
25360
25432
|
[0x32F24],
|
|
25361
25433
|
[0x230F164],
|
|
@@ -26752,8 +26824,8 @@ class NaOverlay29Functions:
|
|
|
26752
26824
|
)
|
|
26753
26825
|
|
|
26754
26826
|
GetAiUseItemProbability = Symbol(
|
|
26755
|
-
[
|
|
26756
|
-
[
|
|
26827
|
+
[0x41E1C],
|
|
26828
|
+
[0x231E05C],
|
|
26757
26829
|
None,
|
|
26758
26830
|
"GetAiUseItemProbability",
|
|
26759
26831
|
"Called to get the probability of an item being used or thrown by an AI on the current turn.\n\nr0: Pointer to either the user if it is an item used by the AI or the target if it is an item thrown by the AI\nr1: Pointer to item\nr2: Size-2 bitvector: if bit 0 is set, the AI is throwing the item. If bit 1 is set, it is targeting an ally with the item.\nreturn: Integer in range [0, 100]",
|
|
@@ -26761,8 +26833,8 @@ class NaOverlay29Functions:
|
|
|
26761
26833
|
)
|
|
26762
26834
|
|
|
26763
26835
|
IsAdjacentToEnemy = Symbol(
|
|
26764
|
-
[
|
|
26765
|
-
[
|
|
26836
|
+
[0x426B0],
|
|
26837
|
+
[0x231E8F0],
|
|
26766
26838
|
None,
|
|
26767
26839
|
"IsAdjacentToEnemy",
|
|
26768
26840
|
"Called to check if a hostile entity is present in any of the tiles adjacent to an entity.\n\nr0: Pointer to entity\nreturn: True if yes, false if no",
|
|
@@ -26922,6 +26994,15 @@ class NaOverlay29Functions:
|
|
|
26922
26994
|
None,
|
|
26923
26995
|
)
|
|
26924
26996
|
|
|
26997
|
+
IsChargingAnyTwoTurnMove = Symbol(
|
|
26998
|
+
[0x483DC],
|
|
26999
|
+
[0x232461C],
|
|
27000
|
+
None,
|
|
27001
|
+
"IsChargingAnyTwoTurnMove",
|
|
27002
|
+
"Returns a boolean indicating whether or not the given entity is charging any two-turn move.\n\nr0: Entity pointer\nr1: Unused boolean which was supposed to make function return true if the entity is under the effect of Charge (the Electric-type move).\n However, the conditional which uses this boolean will never be activated, as the loop will always terminate before getting to it.\nreturn: bool",
|
|
27003
|
+
None,
|
|
27004
|
+
)
|
|
27005
|
+
|
|
26925
27006
|
HasMaxGinsengBoost99 = Symbol(
|
|
26926
27007
|
[0x48558],
|
|
26927
27008
|
[0x2324798],
|
|
@@ -29957,6 +30038,15 @@ class NaOverlay29Data:
|
|
|
29957
30038
|
"struct exclusive_item_effect_id_8[8]",
|
|
29958
30039
|
)
|
|
29959
30040
|
|
|
30041
|
+
AI_THROWN_ITEM_ACTION_CHOICE_COUNT = Symbol(
|
|
30042
|
+
[0x774BC],
|
|
30043
|
+
[0x23536FC],
|
|
30044
|
+
None,
|
|
30045
|
+
"AI_THROWN_ITEM_ACTION_CHOICE_COUNT",
|
|
30046
|
+
"[Runtime] Used to store the number of positions output by GetPossibleAiArcItemTargets and the number of directions/probabilities output by GetPossibleAiThrownItemDirections.",
|
|
30047
|
+
"uint32_t",
|
|
30048
|
+
)
|
|
30049
|
+
|
|
29960
30050
|
EXCL_ITEM_EFFECTS_EVASION_BOOST = Symbol(
|
|
29961
30051
|
[0x774D0],
|
|
29962
30052
|
[0x2353710],
|
|
@@ -31693,6 +31783,33 @@ class NaRamData:
|
|
|
31693
31783
|
"struct loaded_attack_sprite_data*",
|
|
31694
31784
|
)
|
|
31695
31785
|
|
|
31786
|
+
AI_THROWN_ITEM_DIRECTION_IS_USED = Symbol(
|
|
31787
|
+
None,
|
|
31788
|
+
None,
|
|
31789
|
+
None,
|
|
31790
|
+
"AI_THROWN_ITEM_DIRECTION_IS_USED",
|
|
31791
|
+
"[Runtime] Used in GetPossibleAiThrownItemDirections to indicate whether a certain direction enum value is already being used or not.",
|
|
31792
|
+
"bool[8]",
|
|
31793
|
+
)
|
|
31794
|
+
|
|
31795
|
+
AI_THROWN_ITEM_DIRECTIONS = Symbol(
|
|
31796
|
+
None,
|
|
31797
|
+
None,
|
|
31798
|
+
None,
|
|
31799
|
+
"AI_THROWN_ITEM_DIRECTIONS",
|
|
31800
|
+
"[Runtime] Used to store the directions output by GetPossibleAiThrownItemDirections.",
|
|
31801
|
+
"uint32_t[8]",
|
|
31802
|
+
)
|
|
31803
|
+
|
|
31804
|
+
AI_THROWN_ITEM_PROBABILITIES = Symbol(
|
|
31805
|
+
None,
|
|
31806
|
+
None,
|
|
31807
|
+
None,
|
|
31808
|
+
"AI_THROWN_ITEM_PROBABILITIES",
|
|
31809
|
+
"[Runtime] Used to store the probabilities matching the directions in THROWN_ITEM_DIRECTIONS.",
|
|
31810
|
+
"uint32_t[8]",
|
|
31811
|
+
)
|
|
31812
|
+
|
|
31696
31813
|
ROLLOUT_ICE_BALL_MISSED = Symbol(
|
|
31697
31814
|
[0x37CA69],
|
|
31698
31815
|
[0x237CA69],
|
pmdsky_debug_py/na_itcm.py
CHANGED
|
@@ -1739,7 +1739,7 @@ class NaItcmArm9Functions:
|
|
|
1739
1739
|
None,
|
|
1740
1740
|
None,
|
|
1741
1741
|
"TestItemAiFlag",
|
|
1742
|
-
"
|
|
1742
|
+
"Returns a boolean indicating whether the item is consumable, throwable at an ally, or throwable at an enemy, depending on item_flag.\nThe table used for this is inaccessible in the code, as it is loaded from a file in the ROM at runtime.\nBit 7 in the table corresponds to ITEM_FLAG_CONSUMABLE, bit 6 to ITEM_FLAG_THROWABLE_AT_ALLY, and bit 5 to ITEM_FLAG_THROWABLE_AT_ENEMY.\n\nr0: item_id enum\nr1: item_flag enum. Function will test a different allowed AI action depending on the value.\nreturn: bool",
|
|
1743
1743
|
None,
|
|
1744
1744
|
)
|
|
1745
1745
|
|
|
@@ -23613,6 +23613,15 @@ class NaItcmOverlay29Functions:
|
|
|
23613
23613
|
None,
|
|
23614
23614
|
)
|
|
23615
23615
|
|
|
23616
|
+
SetDecoyAiTracker = Symbol(
|
|
23617
|
+
None,
|
|
23618
|
+
None,
|
|
23619
|
+
None,
|
|
23620
|
+
"SetDecoyAiTracker",
|
|
23621
|
+
"If there is a decoy on the floor that the entity can see, sets the entity's decoy_ai_tracker to 1 or 2,\ndepending on whether the attacker who caused the decoy status is on the team or not, respectively.\n\nr0: Entity pointer",
|
|
23622
|
+
None,
|
|
23623
|
+
)
|
|
23624
|
+
|
|
23616
23625
|
CheckSpawnThreshold = Symbol(
|
|
23617
23626
|
None,
|
|
23618
23627
|
None,
|
|
@@ -24027,6 +24036,33 @@ class NaItcmOverlay29Functions:
|
|
|
24027
24036
|
None,
|
|
24028
24037
|
)
|
|
24029
24038
|
|
|
24039
|
+
CheckVariousStatuses2 = Symbol(
|
|
24040
|
+
None,
|
|
24041
|
+
None,
|
|
24042
|
+
None,
|
|
24043
|
+
"CheckVariousStatuses2",
|
|
24044
|
+
"Returns 0 if none of these conditions holds for the given entity:\nblinded (checked only if blind_check == 1),\nasleep, paused, infatuated, wrapping, wrapped, biding, petrified, or terrified.\n\nr0: Entity pointer\nr1: If true, return 1 if entity is blinded\nreturn: bool",
|
|
24045
|
+
None,
|
|
24046
|
+
)
|
|
24047
|
+
|
|
24048
|
+
CheckVariousConditions = Symbol(
|
|
24049
|
+
None,
|
|
24050
|
+
None,
|
|
24051
|
+
None,
|
|
24052
|
+
"CheckVariousConditions",
|
|
24053
|
+
"Returns 0 if none of these conditions holds for the given entity: is a rescue client,\ndoesn’t gain experience (a mission client/story teammate?), is a terrified non-team-leader,\nmeets any of the conditions in CheckVariousStatuses2 (with blind_check = 0), is charging a two-turn move.\n\nr0: Entity pointer\nreturn: bool",
|
|
24054
|
+
None,
|
|
24055
|
+
)
|
|
24056
|
+
|
|
24057
|
+
CheckVariousStatuses = Symbol(
|
|
24058
|
+
None,
|
|
24059
|
+
None,
|
|
24060
|
+
None,
|
|
24061
|
+
"CheckVariousStatuses",
|
|
24062
|
+
"Returns 0 if none of these conditions holds for the given entity: asleep, frozen, petrified, biding.\n\nr0: Entity pointer\nreturn: bool",
|
|
24063
|
+
None,
|
|
24064
|
+
)
|
|
24065
|
+
|
|
24030
24066
|
CanMonsterMoveInDirection = Symbol(
|
|
24031
24067
|
None,
|
|
24032
24068
|
None,
|
|
@@ -24252,6 +24288,15 @@ class NaItcmOverlay29Functions:
|
|
|
24252
24288
|
None,
|
|
24253
24289
|
)
|
|
24254
24290
|
|
|
24291
|
+
MonsterCanThrowItems = Symbol(
|
|
24292
|
+
None,
|
|
24293
|
+
None,
|
|
24294
|
+
None,
|
|
24295
|
+
"MonsterCanThrowItems",
|
|
24296
|
+
"Returns a boolean indicating whether or not the given monster can throw items based on its monster id.\n\nr0: Monster pointer\nreturn: bool",
|
|
24297
|
+
None,
|
|
24298
|
+
)
|
|
24299
|
+
|
|
24255
24300
|
UpdateStateFlags = Symbol(
|
|
24256
24301
|
None,
|
|
24257
24302
|
None,
|
|
@@ -24783,6 +24828,33 @@ class NaItcmOverlay29Functions:
|
|
|
24783
24828
|
None,
|
|
24784
24829
|
)
|
|
24785
24830
|
|
|
24831
|
+
AiDecideUseItem = Symbol(
|
|
24832
|
+
None,
|
|
24833
|
+
None,
|
|
24834
|
+
None,
|
|
24835
|
+
"AiDecideUseItem",
|
|
24836
|
+
"Decides whether or not an AI should use its held item and updates its action_data fields accordingly.\n\nr0: Entity pointer",
|
|
24837
|
+
None,
|
|
24838
|
+
)
|
|
24839
|
+
|
|
24840
|
+
GetPossibleAiThrownItemDirections = Symbol(
|
|
24841
|
+
None,
|
|
24842
|
+
None,
|
|
24843
|
+
None,
|
|
24844
|
+
"GetPossibleAiThrownItemDirections",
|
|
24845
|
+
"If the entity can throw an item at a target in a certain direction,\nadds that direction to AI_THROWN_ITEM_DIRECTIONS and the probability of throwing it to AI_THROWN_ITEM_PROBABILITIES (if it is not already present).\nThe size of the arrays will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\nThe caller function will select the direction to throw the item by iterating through the array(s), rolling the probability, and then throwing in that direction if the roll succeeds.\nNothing will be thrown if all rolls fail.\n\nr0: Entity pointer\nr1: Integer in {1, 2}. If 1, target allies; if 2, target enemies.\nr2: Item struct pointer\nr3: If false, will call GetAiUseItemProbability to get the probability of throwing in a certain direction.\nIf true, the added probability will always be 100.",
|
|
24846
|
+
None,
|
|
24847
|
+
)
|
|
24848
|
+
|
|
24849
|
+
GetPossibleAiArcItemTargets = Symbol(
|
|
24850
|
+
None,
|
|
24851
|
+
None,
|
|
24852
|
+
None,
|
|
24853
|
+
"GetPossibleAiArcItemTargets",
|
|
24854
|
+
"Gets the positions of all targets that an AI can hit with an item thrown in an arc, such as a Gravelerock.\nThe number of positions in the array will be stored in AI_THROWN_ITEM_ACTION_CHOICE_COUNT.\n\nr0: Entity pointer\nr1: Item struct pointer\nr2: [output] Array of size 20 for storing position structs\nr3: If false, will roll GetAiUseItemProbability every time a position is checked and not add it if it rolls false.",
|
|
24855
|
+
None,
|
|
24856
|
+
)
|
|
24857
|
+
|
|
24786
24858
|
TryNonLeaderItemPickUp = Symbol(
|
|
24787
24859
|
None,
|
|
24788
24860
|
None,
|
|
@@ -26349,6 +26421,15 @@ class NaItcmOverlay29Functions:
|
|
|
26349
26421
|
None,
|
|
26350
26422
|
)
|
|
26351
26423
|
|
|
26424
|
+
IsChargingAnyTwoTurnMove = Symbol(
|
|
26425
|
+
None,
|
|
26426
|
+
None,
|
|
26427
|
+
None,
|
|
26428
|
+
"IsChargingAnyTwoTurnMove",
|
|
26429
|
+
"Returns a boolean indicating whether or not the given entity is charging any two-turn move.\n\nr0: Entity pointer\nr1: Unused boolean which was supposed to make function return true if the entity is under the effect of Charge (the Electric-type move).\n However, the conditional which uses this boolean will never be activated, as the loop will always terminate before getting to it.\nreturn: bool",
|
|
26430
|
+
None,
|
|
26431
|
+
)
|
|
26432
|
+
|
|
26352
26433
|
HasMaxGinsengBoost99 = Symbol(
|
|
26353
26434
|
None,
|
|
26354
26435
|
None,
|
|
@@ -29281,6 +29362,15 @@ class NaItcmOverlay29Data:
|
|
|
29281
29362
|
"struct exclusive_item_effect_id_8[8]",
|
|
29282
29363
|
)
|
|
29283
29364
|
|
|
29365
|
+
AI_THROWN_ITEM_ACTION_CHOICE_COUNT = Symbol(
|
|
29366
|
+
None,
|
|
29367
|
+
None,
|
|
29368
|
+
None,
|
|
29369
|
+
"AI_THROWN_ITEM_ACTION_CHOICE_COUNT",
|
|
29370
|
+
"[Runtime] Used to store the number of positions output by GetPossibleAiArcItemTargets and the number of directions/probabilities output by GetPossibleAiThrownItemDirections.",
|
|
29371
|
+
"uint32_t",
|
|
29372
|
+
)
|
|
29373
|
+
|
|
29284
29374
|
EXCL_ITEM_EFFECTS_EVASION_BOOST = Symbol(
|
|
29285
29375
|
None,
|
|
29286
29376
|
None,
|
|
@@ -30973,6 +31063,33 @@ class NaItcmRamData:
|
|
|
30973
31063
|
"struct loaded_attack_sprite_data*",
|
|
30974
31064
|
)
|
|
30975
31065
|
|
|
31066
|
+
AI_THROWN_ITEM_DIRECTION_IS_USED = Symbol(
|
|
31067
|
+
None,
|
|
31068
|
+
None,
|
|
31069
|
+
None,
|
|
31070
|
+
"AI_THROWN_ITEM_DIRECTION_IS_USED",
|
|
31071
|
+
"[Runtime] Used in GetPossibleAiThrownItemDirections to indicate whether a certain direction enum value is already being used or not.",
|
|
31072
|
+
"bool[8]",
|
|
31073
|
+
)
|
|
31074
|
+
|
|
31075
|
+
AI_THROWN_ITEM_DIRECTIONS = Symbol(
|
|
31076
|
+
None,
|
|
31077
|
+
None,
|
|
31078
|
+
None,
|
|
31079
|
+
"AI_THROWN_ITEM_DIRECTIONS",
|
|
31080
|
+
"[Runtime] Used to store the directions output by GetPossibleAiThrownItemDirections.",
|
|
31081
|
+
"uint32_t[8]",
|
|
31082
|
+
)
|
|
31083
|
+
|
|
31084
|
+
AI_THROWN_ITEM_PROBABILITIES = Symbol(
|
|
31085
|
+
None,
|
|
31086
|
+
None,
|
|
31087
|
+
None,
|
|
31088
|
+
"AI_THROWN_ITEM_PROBABILITIES",
|
|
31089
|
+
"[Runtime] Used to store the probabilities matching the directions in THROWN_ITEM_DIRECTIONS.",
|
|
31090
|
+
"uint32_t[8]",
|
|
31091
|
+
)
|
|
31092
|
+
|
|
30976
31093
|
ROLLOUT_ICE_BALL_MISSED = Symbol(
|
|
30977
31094
|
None,
|
|
30978
31095
|
None,
|
pmdsky_debug_py/protocol.py
CHANGED
|
@@ -14555,6 +14555,11 @@ class Overlay29FunctionsProtocol(Protocol):
|
|
|
14555
14555
|
None,
|
|
14556
14556
|
]
|
|
14557
14557
|
|
|
14558
|
+
SetDecoyAiTracker: Symbol[
|
|
14559
|
+
Optional[list[int]],
|
|
14560
|
+
None,
|
|
14561
|
+
]
|
|
14562
|
+
|
|
14558
14563
|
CheckSpawnThreshold: Symbol[
|
|
14559
14564
|
Optional[list[int]],
|
|
14560
14565
|
None,
|
|
@@ -14785,6 +14790,21 @@ class Overlay29FunctionsProtocol(Protocol):
|
|
|
14785
14790
|
None,
|
|
14786
14791
|
]
|
|
14787
14792
|
|
|
14793
|
+
CheckVariousStatuses2: Symbol[
|
|
14794
|
+
Optional[list[int]],
|
|
14795
|
+
None,
|
|
14796
|
+
]
|
|
14797
|
+
|
|
14798
|
+
CheckVariousConditions: Symbol[
|
|
14799
|
+
Optional[list[int]],
|
|
14800
|
+
None,
|
|
14801
|
+
]
|
|
14802
|
+
|
|
14803
|
+
CheckVariousStatuses: Symbol[
|
|
14804
|
+
Optional[list[int]],
|
|
14805
|
+
None,
|
|
14806
|
+
]
|
|
14807
|
+
|
|
14788
14808
|
CanMonsterMoveInDirection: Symbol[
|
|
14789
14809
|
Optional[list[int]],
|
|
14790
14810
|
None,
|
|
@@ -14910,6 +14930,11 @@ class Overlay29FunctionsProtocol(Protocol):
|
|
|
14910
14930
|
None,
|
|
14911
14931
|
]
|
|
14912
14932
|
|
|
14933
|
+
MonsterCanThrowItems: Symbol[
|
|
14934
|
+
Optional[list[int]],
|
|
14935
|
+
None,
|
|
14936
|
+
]
|
|
14937
|
+
|
|
14913
14938
|
UpdateStateFlags: Symbol[
|
|
14914
14939
|
Optional[list[int]],
|
|
14915
14940
|
None,
|
|
@@ -15205,6 +15230,21 @@ class Overlay29FunctionsProtocol(Protocol):
|
|
|
15205
15230
|
None,
|
|
15206
15231
|
]
|
|
15207
15232
|
|
|
15233
|
+
AiDecideUseItem: Symbol[
|
|
15234
|
+
Optional[list[int]],
|
|
15235
|
+
None,
|
|
15236
|
+
]
|
|
15237
|
+
|
|
15238
|
+
GetPossibleAiThrownItemDirections: Symbol[
|
|
15239
|
+
Optional[list[int]],
|
|
15240
|
+
None,
|
|
15241
|
+
]
|
|
15242
|
+
|
|
15243
|
+
GetPossibleAiArcItemTargets: Symbol[
|
|
15244
|
+
Optional[list[int]],
|
|
15245
|
+
None,
|
|
15246
|
+
]
|
|
15247
|
+
|
|
15208
15248
|
TryNonLeaderItemPickUp: Symbol[
|
|
15209
15249
|
Optional[list[int]],
|
|
15210
15250
|
None,
|
|
@@ -16075,6 +16115,11 @@ class Overlay29FunctionsProtocol(Protocol):
|
|
|
16075
16115
|
None,
|
|
16076
16116
|
]
|
|
16077
16117
|
|
|
16118
|
+
IsChargingAnyTwoTurnMove: Symbol[
|
|
16119
|
+
Optional[list[int]],
|
|
16120
|
+
None,
|
|
16121
|
+
]
|
|
16122
|
+
|
|
16078
16123
|
HasMaxGinsengBoost99: Symbol[
|
|
16079
16124
|
Optional[list[int]],
|
|
16080
16125
|
None,
|
|
@@ -17708,6 +17753,11 @@ class Overlay29DataProtocol(Protocol):
|
|
|
17708
17753
|
Optional[int],
|
|
17709
17754
|
]
|
|
17710
17755
|
|
|
17756
|
+
AI_THROWN_ITEM_ACTION_CHOICE_COUNT: Symbol[
|
|
17757
|
+
Optional[list[int]],
|
|
17758
|
+
Optional[int],
|
|
17759
|
+
]
|
|
17760
|
+
|
|
17711
17761
|
EXCL_ITEM_EFFECTS_EVASION_BOOST: Symbol[
|
|
17712
17762
|
Optional[list[int]],
|
|
17713
17763
|
Optional[int],
|
|
@@ -18778,6 +18828,21 @@ class RamDataProtocol(Protocol):
|
|
|
18778
18828
|
Optional[int],
|
|
18779
18829
|
]
|
|
18780
18830
|
|
|
18831
|
+
AI_THROWN_ITEM_DIRECTION_IS_USED: Symbol[
|
|
18832
|
+
Optional[list[int]],
|
|
18833
|
+
Optional[int],
|
|
18834
|
+
]
|
|
18835
|
+
|
|
18836
|
+
AI_THROWN_ITEM_DIRECTIONS: Symbol[
|
|
18837
|
+
Optional[list[int]],
|
|
18838
|
+
Optional[int],
|
|
18839
|
+
]
|
|
18840
|
+
|
|
18841
|
+
AI_THROWN_ITEM_PROBABILITIES: Symbol[
|
|
18842
|
+
Optional[list[int]],
|
|
18843
|
+
Optional[int],
|
|
18844
|
+
]
|
|
18845
|
+
|
|
18781
18846
|
ROLLOUT_ICE_BALL_MISSED: Symbol[
|
|
18782
18847
|
Optional[list[int]],
|
|
18783
18848
|
Optional[int],
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
pmdsky_debug_py/__init__.py,sha256=xvXjdxEqeoQaaS6ssZYVI9jARzv5M4q6FNwA3Z6fOw4,1831
|
|
2
|
+
pmdsky_debug_py/_release.py,sha256=IFmu9W2IMKCDipnYJVJtJyx6_Ik0aBzcRvtPqW5QajM,31
|
|
3
|
+
pmdsky_debug_py/eu.py,sha256=XxKfSOvehHFSEobRMQt37k9UtKGBOoIIs0YIcXnGa1g,1107715
|
|
4
|
+
pmdsky_debug_py/eu_itcm.py,sha256=xnArhVivFjYBiHJmpuAWUT6m_D7Kqeiqqo7njyE3xtE,1057806
|
|
5
|
+
pmdsky_debug_py/jp.py,sha256=0NhVX2F27mwxBw3xH8QE83kh1YfhGARSCd54ezbGCsc,1104177
|
|
6
|
+
pmdsky_debug_py/jp_itcm.py,sha256=n9GHMXvzYgz9qvXU3ZG2eE4EbnsMfPgrpS9JZqPVZQY,1057796
|
|
7
|
+
pmdsky_debug_py/na.py,sha256=8ad9tV1lGMK5fyeuuMdpPOf5irZLdxpxvsIK7gLfhhA,1108723
|
|
8
|
+
pmdsky_debug_py/na_itcm.py,sha256=f3EOGphMf1_71Fv7_GjvSaIulIOJkVIkFevAfO80cUQ,1057826
|
|
9
|
+
pmdsky_debug_py/protocol.py,sha256=RHgZ9O1kK7TELA3kzsPRQWSmhWdqza5C5orxh0al0wo,326510
|
|
10
|
+
pmdsky_debug_py/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
+
pmdsky_debug_py-10.0.26.dist-info/METADATA,sha256=bUPxFmXfxGtZgOBhCuJBB4sar_rX3874BnS2K73cFCU,1374
|
|
12
|
+
pmdsky_debug_py-10.0.26.dist-info/WHEEL,sha256=UvcQYKBHoFqaQd6LKyqHw9fxEolWLQnlzP0h_LgJAfI,91
|
|
13
|
+
pmdsky_debug_py-10.0.26.dist-info/top_level.txt,sha256=cqvpcJbud2s8IyBAc1MfCySwniko_6qO5LWSSxNIoXI,16
|
|
14
|
+
pmdsky_debug_py-10.0.26.dist-info/RECORD,,
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
pmdsky_debug_py/__init__.py,sha256=xvXjdxEqeoQaaS6ssZYVI9jARzv5M4q6FNwA3Z6fOw4,1831
|
|
2
|
-
pmdsky_debug_py/_release.py,sha256=4TcfztC8mVpEEIVFvmmRFV8Lpc7VdWWT8ENJQdnk6Fs,31
|
|
3
|
-
pmdsky_debug_py/eu.py,sha256=K6UXvAxST5LHTpwvvn1r8cZNU5B1kX50Pkp8jvj5P_0,1101892
|
|
4
|
-
pmdsky_debug_py/eu_itcm.py,sha256=K7kzXjZEJxR6KzOF6XEEPDUoVRITgomdhMgU3TlQwNc,1052140
|
|
5
|
-
pmdsky_debug_py/jp.py,sha256=lx2AkWautzJxGPiJ0KvOJvqIminRMAXzsDSBa5J1gMY,1098403
|
|
6
|
-
pmdsky_debug_py/jp_itcm.py,sha256=sLfkbfD-s8Wur8J2F7rVIsYUOkzEm-PVA3AVv6SIsaI,1052130
|
|
7
|
-
pmdsky_debug_py/na.py,sha256=KLdF3-dJONPSrhtzuriA_ED_n0p9E3kcdJmUfkjOWfE,1102937
|
|
8
|
-
pmdsky_debug_py/na_itcm.py,sha256=_ETqTwiDhEXf--oYREnlgrbCRYxTsG6GLZKU_JFKsLM,1052160
|
|
9
|
-
pmdsky_debug_py/protocol.py,sha256=1sfuOEO4hj3qoao_pKshyM2AYbAxQW1P10u_34HCLy8,325324
|
|
10
|
-
pmdsky_debug_py/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
-
pmdsky_debug_py-10.0.24.dist-info/METADATA,sha256=6awy1b6GZsQi-tWlOI_lwh_L2edW8TZWeZbvDlEMTZ8,1374
|
|
12
|
-
pmdsky_debug_py-10.0.24.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
|
|
13
|
-
pmdsky_debug_py-10.0.24.dist-info/top_level.txt,sha256=cqvpcJbud2s8IyBAc1MfCySwniko_6qO5LWSSxNIoXI,16
|
|
14
|
-
pmdsky_debug_py-10.0.24.dist-info/RECORD,,
|
|
File without changes
|