gcsim icon indicating copy to clipboard operation
gcsim copied to clipboard

Re-Evaluate Particle System and Timings

Open Tsym-or-Tysm opened this issue 3 years ago • 3 comments

Particle generation is not accurate currently since a lot of characters just use "plug" values. We probably need to re-evaluate the overall particle system, since in general particle timings have two major components:

  1. Location of particle spawn
  2. Distance/Movement of character

Not sure we have a database of (1) anywhere, would probably need to go in game and test manually. Some abilities generate particles on enemy hit location (e.g., Ningguang E), whereas others generate particles from the player character (e.g., Beidou E, Favonius).

(2) is trickier and is contingent on a character movement refactor probably...

Current proposed plug solution is the following:

  1. Test each character's particle generation "type" (e.g., from enemy, from character, etc.)
  2. Adjust each character's particle timings based on what type they fall into, along with estimated distance from enemy. Here are a few proposed timings:
    • Spawn from character model: 80 frames
    • Spawn from enemy, but character skill hits in melee range: 100 frames
    • Spawn from enemy, but character skill hits from range: 120-150 frames
    • Spawn from some "turret" with limited range (e.g., Guoba, Mona E): 100-160 frames (depends on type of turret)
    • Others?
  3. Special adjustments needed for characters with movement tied to their skill such as Xiao and Kazuha.

Tsym-or-Tysm avatar Jan 19 '22 04:01 Tsym-or-Tysm

After some testing, it looks like the 100 frames is actually a pretty decent rule of thumb for now. The primary issue with people being unable to collect their particles on the right characters stems from a result of skill/burst frame data not having ending animation frames more so than the particle delivery being too slow.

However we will ultimately want to change the particle system somewhat to make it more accurate probably. Particles generally spawn in game after a hit is registered against the enemy, then spawn up from the ground and then fly towards the character model. This will be much more relevant once #95 is worked on, but the system as it exists now is currently mostly sufficient.

Tsym-or-Tysm avatar Jan 30 '22 18:01 Tsym-or-Tysm

for now added a way to customize particle delay (change from 100). a better system won't be doable until we implement projectiles and movement

srliao avatar Jul 24 '22 16:07 srliao

blocked by #95

k0l11 avatar Jun 18 '23 20:06 k0l11