-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathtodo.txt
More file actions
88 lines (60 loc) · 3.52 KB
/
todo.txt
File metadata and controls
88 lines (60 loc) · 3.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
# TODO
Content updates:
- Random CPU mode
- Basic achievements
- Add Nirvamma
- Better multiplayer
Balance Patch 3:
Xmon:
- Somniphobia damage buffed [x].
Volthare:
- change dual shock to not inflict zap on self, but instead also damage self?
- change mega star blast to inflict zap on self unless overclocked, buff default accuracy a bit more?
Aurox:
- Give another damaging move that can complement bull rush
- Inspire Greed:
- If the opponent is using a self/other move, instead replace it with:
- deal 10% of max hp to opponent (for X turns)
Sofabbi
- Change guest feature on sofabbi to something else stamina related (gifting stamina to another mon?)
Nirvamma ideas:
Meditate:
- Inflicts sleep on self, boosts defenses by 25%
- 0 stamina
- Upon waking, gain 50% atk, lose defense boost.
Chronoffense:
- When first used, track the current turn.
- When used again, deal damage that scales with how many turns have passed
Modal Bolt
- Ice -> Fire -> Lightning cycling move, can only choose one that hasn't been chosen yet, resets on switch out
- separate into different layers, and then hide the resulting layer when chosen (20% chance to inflict Burn, Frostbite, Zap)
- once all have been chosen, something happens
- Ability: Acclimation
Any time Nirvamma takes take, track the source (if it exists). Any subsequent damage from that type is reduced by 25% (this stacks), resets on switch in, up to a cap of -50% damage (i.e. 2 stacks).
-----------------------------------------------------
Implement https://docs.bungee.exchange/bungee-api/integration-guides/additional-guides/destination-payload to handle bridge + calls
---------------------------------------------------------------------------------------------
LATER FEATURES
0) fix the rng issue in the way StandardAttack decides which effects to apply (rn if an attack is only X% accurate, and an effect has a Y% chance, the lower X is, the higher Y should be (they shld be independent but we use the same rng source currently))
- should fix this, but am afraid of tests needing to be rewritten.
---------------------------------------------------------------------------------------------
KNOWN BUGGY INTERACTIONS
1) If a move forces a switch and triggers before the other player can make its move, then the new mon will try to execute its move still
- The Engine handles the case where the stamina is insufficient (it just skips the move)
Ways to mitigate:
- avoid forcing opponent swap outs unless it's at low priority
- have the engine set the skipTurn flag on newly swapped in mons (if they have yet to run their turn yet)
- look into this later
- or do this w/ a custom condition that can set the flag, and then remove at end of turn
2) If an effect calls dealDamage() and triggers AfterDamage, it can potentially cause an infinite loop!
(either if it calls dealDamage() on the opposing mon who also has a damaging attack with an AfterDamage trigger)
Ways to mitigate:
- deal damage directly (but skip calling dealDamage) on the Engine
- avoid dealing damage in the afterDamage hook itself
- maintain manual mutex to prevent infinite recurse
4) Malicious p0 can commit to a team that has an array of mons, but modify the mon moves prior to starting a battle (after p1 commits)
Ways to mitigate:
- Need to handle on the team registry angle probably
- Atm, restricting it to the same array of mon indices reduces the attack surface somewhat
- OR, just add the move indices to the integrity hash
---------------------------------------------------------------------------------------------