1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Welcome to Smashboards, the world's largest Super Smash Brothers community! Over 250,000 Smash Bros. fans from around the world have come to discuss these great games in over 19 million posts!

    You are currently viewing our boards as a visitor. Click here to sign up right now and start on your path in the Smash community!

  3. Use the Smashboards Store to get awesome Smash stuff and support the site, like a Nintendo Controller or the Wii U - Gamecube adaptor ! Check out the inventory in our store and support Smashboards with your purchase today!

Official Ask Anyone Frame Things Thread

Discussion in 'Melee Discussion' started by Strong Bad, Nov 8, 2011.

  1. Magus420

    Magus420
    Expand Collapse
    Smash Master

    Joined:
    Dec 13, 2003
    Messages:
    4,541
    Location:
    Close to Trenton, NJ Posts: 4,071
    Shield Stuff

    ____________________________________________________________

    Variable Shield Input
    Digital/Max Analog = 1 (140/140)
    Z Shield = 0.35 (49/140)
    Min Analog = 0.30714 (43/140)
    -- Range of analog 0.00-1.00 is analog increments 0-140. 0-42 (0.00-0.30) are ignored
    -- If dip under 0.30 while shield remains up, use last > 0.30 amount


    ____________________________________________________________

    Shield Size
    Shield Size = {[(Shield Health * Analog Effect) / 60] * 0.85 + 0.15} * Shield Size Attribute * Model Scale
    -- Analog Effect = 1 - {0.5 * [(Analog Shield - 0.3) / 0.7]}

    Max Shield Health = 60
    Shield Break Health = 30 (does not regen while dazed)
    Max Shield Health Scale = 1
    Min Shield Health Scale = 0.15
    Powershield Reflect Collision Scale = 0.75

    -- Mario Shield Size: 10.75
    -- Mario Model Scale: 1.1

    Full Health (60)
    Code:
    Analog  Size	Actual
    ------------------------
    0.30	10.75	11.825
    0.30714	10.7034	11.7737
    0.35	10.4237	11.466
    0.50	9.44464	10.3891
    0.65	8.46563	9.31219
    1.00	6.18125	6.79938

    30 Health
    Code:
    Analog  Size
    -----------------
    0.30	6.18125
    0.30714	6.15795
    0.35	6.01808
    0.50	5.52857
    0.65	5.03906
    1.00	3.89688

    15 Health
    Code:
    Analog  Size
    -----------------
    0.30	3.89688
    0.30714	3.88523
    0.35	3.81529
    0.50	3.57054
    0.65	3.32578
    1.00	2.75469

    0 Health
    Code:
    Analog  Size
    -----------------
    0.30	1.6125
    0.30714	1.6125
    0.35	1.6125
    0.50	1.6125
    0.65	1.6125
    1.00	1.6125

    ____________________________________________________________

    Shield Degeneration/Regeneration
    Shield Degeneration = (Analog Effect + 0.1) * 0.14
    -- Analog Effect = 1.9 * [(Analog Shield - 0.3) / 0.7]

    Shield Regeneration = 0.07

    Code:
    Analog  Degen
    -----------------
    0.30714	0.01672
    0.35	0.03300
    0.50	0.09000
    0.65	0.14700
    1.00	0.28000

    ____________________________________________________________

    Shield Damage
    Shield Damage = [(floor(Damage) + Shield Damage Param) * (Analog Effect + 0.7)] * X
    -- Analog Effect = 0.2 * {1 - [(Analog Shield - 0.3) / 0.7]}
    -- X = 1 for Normal, 0 for Powershield


    Min Shield (0.307143)
    Code:
    Damage  S.Damage
    -----------------
    01	0.898
    02	1.7959
    03	2.6939
    04	3.5918
    ...
    50	44.898
    Shield Damage = (Damage + Shield Damage Param) * 0.89796


    Z Shield (0.35)
    Code:
    Damage  S.Damage
    -----------------
    01	0.8857
    02	1.7714
    03	2.6571
    04	3.5429
    ...
    50	44.2857
    Shield Damage = (Damage + Shield Damage Param) * 0.885714


    Half Shield (0.65)
    Code:
    Damage  S.Damage
    -----------------
    01	0.8
    02	1.6
    03	2.4
    04	3.2
    ...
    50	40.0
    Shield Damage = (Damage + Shield Damage Param) * 0.8


    Hard Shield (1.0)
    Code:
    Damage  S.Damage
    -----------------
    01	0.7
    02	1.4
    03	2.1
    04	2.8
    ...
    50	35.0
    Shield Damage = (Damage + Shield Damage Param) * 0.7

    ____________________________________________________________

    Shield Stun
    Shield Stun = {[floor(Damage) * (Analog Effect + 0.3)] * 1.5} + 2
    -- Analog Effect = 0.65 * {1 - [(Analog Shield - 0.3) / 0.7]}
    --- Yoshi is unaffected by shield stun
    --- NOTE: Due to the way the game calculates the animation speed for the 20 frame stun animation [(Animation Frames + 0.1) / ShieldStun], it causes the actual resulting stun time to be 1 less than calculated shieldstun if:
    20.1 / ShieldStun * floor{ShieldStun} >= 20
    On full 1.00 shield input that happens with damages of 20,29,40, 49, 58, and 60 for example.


    Code:
    80092DA0:  C084028C	lfs	f4,652(r4)	# f4=1.5
    80092DA4:  EC421828	fsubs	f2,f2,f3	# f2=Damage (floored). last step of an int->float cast
    80092DA8:  C0040290	lfs	f0,656(r4)	# f0=2
    80092DAC:  807D0028	lwz	r3,40(r29)
    80092DB0:  EC220072	fmuls	f1,f2,f1	# f1=0.3 on hard shield
    80092DB4:  EFE4007A	fmadds	f31,f4,f1,f0
    Code:
    Analog  f1 (Analog effect + 0.3)
    -----------------
    0.30714 0.943367
    0.35    0.903571
    0.50    0.764285
    0.65    0.625
    1.00    0.300

    ____________________________________________________________

    Shield Knockback
    Defender Shield KB = {[floor(Damage) * (Defender Analog Effect + 0.09)] + 0.4} * X
    -- Defender Analog Effect = 0.195 * {1 - [(Analog Shield - 0.3) / 0.7]}
    -- X = 0.6 for Normal, 1 for Powershield
    --- Maximum = 2


    Defender (Yoshi) Shield KB = (floor(Damage) * Defender Analog Effect) + 0.4
    -- Defender Analog Effect = 0.3 * {1 - [(Analog Shield - 0.3) / 0.7]}
    --- Maximum = n/a


    Attacker Shield KB = (floor(Damage) * Attacker Analog Effect) + 0.02
    -- Attacker Analog Effect = (Analog Shield - 0.3) * 0.1]
    --- Maximum = n/a


    Min Shield (0.307143)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.40981 0.0207143
    02      0.57961 0.0214286
    03      0.74942 0.0221429
    Defender Shield KB = (Damage * 0.169806) + 0.24
    Attacker Shield KB = (Damage * 0.0007143) + 0.02

    Z Shield (0.35)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.40264 0.025
    02      0.56529 0.030
    03      0.72793 0.035
    04      0.89057 0.040
    05      1.05321 0.045
    Defender Shield KB = (Damage * 0.162644) + 0.24
    Attacker Shield KB = (Damage * 0.005) + 0.02

    Lightish Shield (0.50)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.37757 0.04
    02      0.51514 0.06
    03      0.65271 0.08
    Defender Shield KB = (Damage * 0.137571) + 0.24
    Attacker Shield KB = (Damage * 0.02) + 0.02

    Half Shield (0.65)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.3525  0.055
    02      0.4650  0.09
    03      0.5775  0.125
    Defender Shield KB = (Damage * 0.1125) + 0.24
    Attacker Shield KB = (Damage * 0.035) + 0.02

    Hard Shield (1.0)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.294   0.090
    02      0.348   0.160
    03      0.402   0.230
    04      0.456   0.300
    05      0.510   0.370
    06      0.564   0.440
    07      0.618   0.510
    08      0.672   0.580
    09      0.726   0.650
    10      0.780   0.720
    11      0.834   0.790
    12      0.888   0.860
    13      0.942   0.930
    14      0.996   1.000
    15      1.050   1.070
    16      1.104   1.140
    17      1.158   1.210
    18      1.212   1.280
    19      1.266   1.350
    20      1.320   1.420
    21      1.374   1.490
    22      1.428   1.560
    23      1.482   1.630
    24      1.536   1.700
    ...
    50      2.000   3.520
    Defender Shield KB = (Damage * 0.054) + 0.24
    Attacker Shield KB = (Damage * 0.07) + 0.02

    Power Shield (1.0)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.490   0.090
    02      0.580   0.160
    03      0.670   0.230
    04      0.760   0.300
    05      0.850   0.370
    06      0.940   0.440
    07      1.030   0.510
    08      1.120   0.580
    09      1.210   0.650
    10      1.300   0.720
    11      1.390   0.790
    12      1.480   0.860
    13      1.570   0.930
    14      1.660   1.000
    15      1.750   1.070
    16      1.840   1.140
    17      1.930   1.210
    18      2.000   1.280
    19      2.000   1.350
    20      2.000   1.420
    21      2.000   1.490
    22      2.000   1.560
    23      2.000   1.630
    24      2.000   1.700
    ...
    50      2.000   3.520
    Defender Shield KB = (Damage * 0.09) + 0.4
    Attacker Shield KB = (Damage * 0.07) + 0.02

    Yoshi (0.307143)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.69694 0.0207143
    02      0.99388 0.0214286
    03      1.29082 0.0221429
    ...
    50      15.2469 0.0557142
    Defender (Yoshi) Shield KB = (Damage * 0.296939) + 0.4
    Attacker Shield KB = (Damage * 0.0007143) + 0.02

    Yoshi (1.0)
    Code:
    Damage  Defendr Attackr
    -------------------------
    01      0.400   0.090
    02      0.400   0.160
    03      0.400   0.230
    ...
    50      0.400   3.520
    Defender (Yoshi) Shield KB = (Damage * 0) + 0.4
    Attacker Shield KB = (Damage * 0.07) + 0.02

    ____________________________________________________________
     
    #1081 Magus420, Dec 11, 2015
    Last edited: Dec 11, 2015
    Strong Bad, Pauer, Kadano and 8 others like this.
  2. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    I think it all makes sense now, but I'm confused as to why in this link http://smashboards.com/threads/captain-falcon-shield-pressure-data-wip.308010/ if you look in the "low short hop knee" category, it displays

    24 / 24 Knee hits
    25 / hitlag
    26 / hitlag
    27 / hitlag
    28 / hitlag
    29 / hitlag
    30 / hitlag
    31 / hitlag
    32 / hitlag
    33 / landlag
    34 / landlag
    35 / landlag
    36 / landlag
    37 / landlag
    38 / landlag
    39 / landlag
    40 / landlag
    41 / landlag
    42 / 25
    43 / Stun ends

    for kneeing on a shield. Knee does 18 damage. The fact that it's electrical has no influence on shield hitlag/shieldstun. (18/3 + 3) = 9 damage of hitlag (from frame 24 to 32). After hitlag, just like in your example, the defender will experience shieldstun. So far everything makes sense.

    Shieldstun = floor ((18+4.45)/2.35 ) = 9 frames of shieldstun. In the link I quoted, frames 33 to 43 are shieldstun which is 11 frames. 9 doesn't equal 11 though, so am I missing something?
     
  3. Sycorax

    Sycorax
    Expand Collapse
    Smash Journeyman

    Joined:
    Jul 7, 2014
    Messages:
    485
    Location:
    Atlanta, GA
    Your forumula is wrong, it should be floor ((18+4.45)/2.235) which = 10. That's still not equal to 11. I checked in debug mode and they got their frames wrong. Falcon's fair does 10 frames of shieldstun. I think they just accidentally colored "43 / Stun ends" wrong.

    Technically, Shield Stun = {[floor(Damage) * (Analog Effect + 0.3)] * 1.5} + 2 where Analog Effect = 0.65 * {1 - [(Analog Shield - 0.3) / 0.7]}
     
    #1083 Sycorax, Dec 12, 2015
    Last edited: Dec 12, 2015
    reverie2 likes this.
  4. Roukiske

    Roukiske
    Expand Collapse
    Smash Journeyman

    Joined:
    Oct 13, 2014
    Messages:
    377
    Location:
    CA
    NNID:
    Roukiske
    Anyone know if any of Fox's dair variations (fullhop/shorthop/fastfall or not) can be shield grabbed (whoever has the fastest) if used up close, L-cancelled, and shined right after? I don't care about post shine, just shield grabbed in between the dair and shine.
     
  5. Vestboy_Myst

    Vestboy_Myst
    Expand Collapse
    NJ TO & Peach knitwit

    • Moderator
    • Rankings Staff
    Joined:
    Jan 10, 2014
    Messages:
    602
    Location:
    NJ
    here's an interesting optimization problem:

    lets say peach is under the inner corner of one of YS/DL/PS/BF's side plats, and fox is standing on the platform at the outside corner (rolled to that edge). Between the following options, which is the fastest way to cover the vertical (jump up to platform + land) and horizontal (travelling the length of the plat) distance? Lets assume that shes going for a regrab techchase and therefore only needs to get within her grab box range

    1) jump straight up onto the inner corner > horizontal waveland toward fox
    2) diagonal jump past the midpoint of plat > DJL next to fox

    DJL is obviously superior to waveland when its done in-place, but adding in the horizontal vector makes it a bit trickier. i'd imagine its stage dependent, and my gut reaction is that higher platforms (DL/BF) would favor Opt 1 since it is less distance traveled in her slow jump, but I'm not sure if her waveland speed makes up for it. Perhaps Opt 2 is a straight up improvement on some of the stages?

    If anyone needs me to clarify or draw a diagram I can

    some data on DJL (vertical jump) http://smashboards.com/threads/dj-land-onto-platform-stage-specifics.385827/

    edit:
    realized there were a few other questions i am unsure about that pertain to this
    -are diagonal DJLs easier / harder or the same as vertical jumps (in terms of input window)?
    -are diagonal DJLs possible on ALL platform heights?
    -is just running to the outer corner then doing a vertical jump to DJL (Opt 3) faster than both for all platform heights?
    -ive been assuming all diagonal jumps were still her standard 'neutral jump' for the whole post, but at an angle. What about her other jump animations (like her 'backflip' if she was falcon) ? do they make the DJL input any harder/easier? could they make it possible to DJL sooner than neutral jump?

    paging some of the frame jockeys @Vesne @DarkRijin @#SplitsOnTrees @schmooblidon
     
    #1085 Vestboy_Myst, Dec 23, 2015
    Last edited: Dec 23, 2015
  6. Sycorax

    Sycorax
    Expand Collapse
    Smash Journeyman

    Joined:
    Jul 7, 2014
    Messages:
    485
    Location:
    Atlanta, GA
    It really doesn't matter how Fox jumps before he dairs. What matters is how soon he started the dair before he landed. I can describe the details more if you want, but the gist is that, since it is a multi-hit move making it hard to land on the frame after it hits shield, there is a 2/3 chance the the dair will be able to be shield grabbed. Your opponent isn't going to be able to know if a grab is possible or not, so it's a crap shoot if they try to go for it.

    Edit: 2/3

    You misunderstand Melee physics. It is not the case that jumping at an angle lowers your vertical velocity in order to contribute to horizontal velocity (like it would in the real world). Instead, when you jump, there is an initial vertical velocity, and an initial horizontal velocity. The vertical velocity is always there as essential to the jump lol. The horizontal velocity comes from residual momentum from the grounded state plus the analog jump effect. Therefore, it takes the same amount of time to reach a platform regardless of whether you jump completely vertically or not. Because of this, the waveland method is always slower. The ten frames of lag are simply not made up for by the increased speed of a waveland. Under any platform, Peach can get to a certain desirable spot the quickest by dashing, then jumping, then using analog control to aim where she wants to go. I'm not even sure the dashing is necessary.

    -are diagonal DJLs easier / harder or the same as vertical jumps (in terms of input window)?
    The same.

    -are diagonal DJLs possible on ALL platform heights?
    Of the legal stages, yes. Like I said above, vertical height is not diminished by horizontal momentum.

    -is just running to the outer corner then doing a vertical jump to DJL (Opt 3) faster than both for all platform heights?
    I don't understand the situation you're describing.

    -ive been assuming all diagonal jumps were still her standard 'neutral jump' for the whole post, but at an angle. What about her other jump animations (like her 'backflip' if she was falcon) ? do they make the DJL input any harder/easier? could they make it possible to DJL sooner than neutral jump?
    The difference in the bottom of the ECB is minuscule. On Battlefield it doesn't make a difference. I doubt any other stage does. There may be tiny sections on Yoshi's where you get an extra frame, but it'd be TAS level precision.

    Edit: "Frame Jockey" :088: :3 Lol, can you change my status from "Smash Apprentice" to "Frame Jockey"? Does mod power allow you to do that?
     
    #1086 Sycorax, Dec 24, 2015
    Last edited: Dec 25, 2015
    Roukiske and tm like this.
  7. Vestboy_Myst

    Vestboy_Myst
    Expand Collapse
    NJ TO & Peach knitwit

    • Moderator
    • Rankings Staff
    Joined:
    Jan 10, 2014
    Messages:
    602
    Location:
    NJ
    @#SplitsOnTrees OOPS lol...
    I had NO IDEA that it disobeyed real world physics like that! I'm a physics major too, so I didn't even bother thinking otherwise. i always pictured typical vectors when i heard the horizontal/vertical speed stuff... I'm happy that you were able to realize that was what I was going for, and thanks for answering thoroughly. I must get to work on DJLing asap

    for Opt 3, i was describing techchasing a fox rolling to the outer edge by running UNDER the platform a bit toward fox, then doing a straight up DJL to regrab (basically Opt 1 in reverse: horizontal THEN vertical movement)

    also yeah, you know, a frame jockey! surely someone else has heard this term before. I don't think I can give you the title sadly, but it could make a good banner someday. you guys are basically melee physicists

    Frame Jockey [fraym jok-ee] (n) (pl: jockeys)
    a) one with a public reputation for their knowledge and manipulation of frame data in a videogame, who then uses this talent to improve current methods of play and to educate the general public
    b) a horserider used for scapegoating
    "Kadano and Magus are frame jockeys renowned for their work on Smashboards"
     
  8. Sycorax

    Sycorax
    Expand Collapse
    Smash Journeyman

    Joined:
    Jul 7, 2014
    Messages:
    485
    Location:
    Atlanta, GA
    Agonyyyy!

    Also, upon further thought, there may be situations in which the waveland is preferable to the DJL. If you're trying to cover tech options on reaction, DJL may be too slow (despite taking fewer frames to become actionable on a platform) because it requires reacting at an earlier time. With the waveland method, you can jump first regardless of their tech option and then waveland a certain way on reaction to their tech option. With the DJL method, you need to react at the moment of your analog jump input which is a good 10 frames or more earlier than the waveland reaction.

    On further thought though, it is usually rather obvious where they will land. Therefore, you could option select DJL at their landing and be ready to cover tech in place or tech rolls on reaction. Reacting to tech rolls should be rather easy on platforms and often possible with dash grab (which I think is preferable to dash attack).
     
    Vestboy_Myst likes this.
  9. tauKhan

    tauKhan
    Expand Collapse
    Smash Lord

    Joined:
    Feb 9, 2014
    Messages:
    1,300
    Actually it's shield grabbable 2/3 of the times if we assume each gap between hit and landing is equally likely. Dair does 3 frames of stun and 9 frames of landing lag, so only in the perfect scenario the fox would be able to shine on the frame the grab hitbox comes out and dodge it with the shine intangibility.

    In my experience dair is very vulnerable to shield grabs. I won't say it's impossible to learn certain shffl timings that lead to frame perfect landings, but it definitely isn't easy.
     
    Sycorax and Roukiske like this.
  10. Sycorax

    Sycorax
    Expand Collapse
    Smash Journeyman

    Joined:
    Jul 7, 2014
    Messages:
    485
    Location:
    Atlanta, GA
    Discovery:

    We all know forbidden smash DI prevents the bottom of your ECB from colliding with the floor. However, when you SDI straight down, but the ground is less than 6mm below the bottom of your ECB, instead of the SDI not happening, your TopN bone will be lowered to the floor. Often times, in the air, your ECB is raised above your TopN bone and this quirk is useless. However, if you are in the first 10 frames of going airborne, say, from your jump, when the bottom of your ECB is attached to your TopN bone, you can SDI down towards the ground to become adjacent to the ground, and then ASDI down to collide with the ground. The SDI still won't cause a collision with the ground. It will merely lower you to be level with the ground. Later, you can ASDI to collide with the ground.
     
    #1090 Sycorax, Dec 29, 2015
    Last edited: Dec 29, 2015
    tauKhan, V_D_X, Comet7 and 2 others like this.
  11. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    Anyone have step by step instructions of how to calculate DI angle from control stick X and Y, then how that angle is applied to the trajectory (how the stick angle turns into a degree offset? or something like that), and also how the angle translates into SDI and ASDI X and Y.

    I know Trajectory DI has a maximum offset of 18 degrees in either direction, and how the more perpendicular the angle, the higher the offset, but not the precise maths.
     
  12. Comet7

    Comet7
    Expand Collapse
    Smash Lord

    Joined:
    Aug 2, 2013
    Messages:
    1,022
    Location:
    Somewhere over the rainbow
    NNID:
    Comet7
    ..........................
     
    #1092 Comet7, Jan 2, 2016
    Last edited: Jan 7, 2016
  13. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    I have kind of a simple question... If I spam fox's dair on a shield, the timing to fast fall and L-cancel should be 100% identical to spamming dair onto a character not shielding right? Because the only thing different between the 2 is shieldstun, which only the defender experiences after hitlag. The hitlag on the attacker (me) should be the exact same right? It seems like dairing on a shield is a bit slower but i dont know if that's just in my head
     
  14. Kadano

    Kadano
    Expand Collapse
    Magical Express

    • Moderator
    • Premium
    Joined:
    Feb 26, 2009
    Messages:
    2,138
    Location:
    Vienna, Austria
    The timing is not always 100% the same due to damage staling. For example, a fresh dair will cause 4 frames of hitlag on hit (assuming you connect the sweetspot), but only 3 frames of hitlag for all subsequent hits. A fresh dair on shield will deal 4 frames of hitlag with every hit (again assuming you always connect the sweetspot).

    (In Melee, multi-hit moves add to the stale queue with every single part-hit that deals damage.)
     
    #1094 Kadano, Jan 2, 2016
    Last edited: Jan 2, 2016
  15. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    So the stale queue only contains hits that connect to an actual character (not their shield) right? And if i'm understanding correctly, if a multi-hit move is 3 parts, if i hit with the first part and the first part stales, but miss the last 2 parts, the next time i hit with the same move, only the first part is staled?
     
  16. Traivlin

    Traivlin
    Expand Collapse
    Smash Rookie

    Joined:
    Sep 25, 2015
    Messages:
    24
    It's 18*sin²(x), where x is the angle at which you hold the analog stick in relation to the launch trajectory.
    18*sin(90)*sin(90) = 18, so that would be perpendicular DI.
     
  17. Kadano

    Kadano
    Expand Collapse
    Magical Express

    • Moderator
    • Premium
    Joined:
    Feb 26, 2009
    Messages:
    2,138
    Location:
    Vienna, Austria
    Only hits that deal damage add to the staling queue, yes.
    There is no distinction between the individual hits. Dealing damage with a hit adds its attack into the staling queue. However, an attack will be only staled once even if multiple hits of a single execution connect and deal damage.
     
    #1097 Kadano, Jan 2, 2016
    Last edited: Jan 5, 2016
    reverie2 likes this.
  18. Vestboy_Myst

    Vestboy_Myst
    Expand Collapse
    NJ TO & Peach knitwit

    • Moderator
    • Rankings Staff
    Joined:
    Jan 10, 2014
    Messages:
    602
    Location:
    NJ
    does pummeling during a grab count toward the stale queue?
    and i guess that means counter moves don't unless triggered
     
  19. tauKhan

    tauKhan
    Expand Collapse
    Smash Lord

    Joined:
    Feb 9, 2014
    Messages:
    1,300
    #1099 tauKhan, Jan 3, 2016
    Last edited: Jan 3, 2016
    reverie2 and Kadano like this.
  20. Traivlin

    Traivlin
    Expand Collapse
    Smash Rookie

    Joined:
    Sep 25, 2015
    Messages:
    24
    That's exactly what I meant. Sorry, if I wasn't clear enough.
     
  21. tauKhan

    tauKhan
    Expand Collapse
    Smash Lord

    Joined:
    Feb 9, 2014
    Messages:
    1,300
    The function you posted depends only on the angle, and it doesn't work for weak inputs. It's correct for full inputs though. Expanded function:

    18*(sin(x)*L)² where x is the angle and L is the length of the input.
     
  22. Traivlin

    Traivlin
    Expand Collapse
    Smash Rookie

    Joined:
    Sep 25, 2015
    Messages:
    24
    Ah yes, that's true. Good that you clarified that.
     
  23. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    How does it determine perpendicular distance?

    I tried using trig and came up with

    x = x input
    y = y input
    a = perpendicular angle
    p = perpendicular distance

    p = cos(a-arctan(x/y))*sqrt(x^2+y^2)

    and it was sooo wrong edit: my b, changing it to arctan makes it sooo right

    edit: wait is tanh the same as tan-1 ? my trig so rusty. oh **** they are not, arc was the abbreviation i forgot.
     
    #1103 schmooblidon, Jan 3, 2016
    Last edited: Jan 3, 2016
  24. tauKhan

    tauKhan
    Expand Collapse
    Smash Lord

    Joined:
    Feb 9, 2014
    Messages:
    1,300
    @schmooblidon
    p = sin(a)*sqrt(x^2+y^2) where a is the angle between launch angle and your control stick input and x,y represent their respective control stick values. (L = sqrt(x^2+y^2) in the function I previously posted)
     
    #1104 tauKhan, Jan 3, 2016
    Last edited: Jan 3, 2016
  25. Sycorax

    Sycorax
    Expand Collapse
    Smash Journeyman

    Joined:
    Jul 7, 2014
    Messages:
    485
    Location:
    Atlanta, GA
    I wonder if the game actually calculates angles or not. It may not be "technically correct" to say that DI is done with angles. Trying to solve for the perpendicular distance between the control stick input and the line of trajectory could be done using angles and trig, or with lines, points, and linear algebra.

    I know barely anything about coding, but if they wanted to do trig functions in code they'd probably do some sort of Taylor series polynomial expansion that was truncated at some point to yield enough significant digits. That seems inefficient compared to linear algebra equations. I don't know the exact math for the linear algebra, but it would require like one or two matrices and the distance formula.
     
  26. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    Ohhh I think I get it. So that basically means p = sin(90-a-arctan(x/y))*sqrt(x^2+y^2) on mine, but how do I get the angle without having to do 90-a-arctan(x/y), feel like I'm missing something obvious.
     
  27. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    why are you're using arctan(x/y) in the first place? Let's say an attack sends you upwards, and you hold stick 50 degrees right. arctan (x/y) is the same as a. 90 - 2a =/= a. The formula you're using and the one magus/tau khan provided are completely different... ???
     
  28. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    This is starting to get confusing, cos we are using a for different things.

    I use a-arctan(x/y) (where a = launch angle) to calculate the angle between the control stick input and the launch angle.
     
  29. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    Oh yeah we're using the definition of a differently. But if we do assume a is the launch angle, a-arctan(x/y) is not the angle between the control stick input and the launch angle though. a-arctan(y/x) is. I don't really see a reason to use a as a launch angle though, all you need to know is the angle you're DI'ing relative to the launch angle
     
    #1109 reverie2, Jan 3, 2016
    Last edited: Jan 3, 2016
  30. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    [​IMG]

    Green is the launch angle/perpendicular. Red is the controller input point.

    I want to find the blue angle, I know a, and I calculate theta by doing arctan(x/y)

    I want to calculate DI'ed trajectory from only x and y input values.
     
    #1110 schmooblidon, Jan 3, 2016
    Last edited: Jan 3, 2016
  31. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    Oh so according to your diagram, yeah you can use inverse tan to find theta, and then you can find the angle between your DI and your launch trajectory. If you're given nothing but x, y, and launch trajectory with the "a" you mentioned, I don't think there's an easier way to find that angle in between. When you actually encounter a launch trajectory in smash though, wouldn't it make sense to just think of what angle you want to Di relative to the launch trajectory so you don't even have to worry about doing trig and just plug that angle into 18*(sin(x)*L)²?

    You called the variable "a" a perpendicular angle in an earlier post which is different than what your diagram is showing, but I'm just assuming it will always be less than 90 degrees no matter what quadrant it's in?
     
    #1111 reverie2, Jan 3, 2016
    Last edited: Jan 3, 2016
  32. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    I'm building a trajectory simulator with gentlefox and I think it'd be more intuitive to calculate with x and y inputs, so I can just give the user a control stick pretty much (could even allow gc controller adapter maybe) to set the angle to see the altered trajectory. There is also the deadzones to consider.

    Ah ye that was because I was drawing out an example that I was simultaneously testing on 20XX, and the x and y inputs I choose and attack's angle made sense to use the perpendicular. So yeah it's pretty much just use which ever line is in the same quadrant so you get less than 90.
     
  33. tauKhan

    tauKhan
    Expand Collapse
    Smash Lord

    Joined:
    Feb 9, 2014
    Messages:
    1,300
    I think you have use arctan and use the launch angle, you're not missing anything. For me it would be more natural to solve the angle as the difference of the control stick angle and launch angle compared to a base line, in this case horizontal line. So I'd do sin(arctan(y/x) - a)*sqrt(x^2+y^2), but it's still basically the same as arctan(y/x) = 90 - arctan(x/y).
     
  34. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    Ok I think I got it working!

    There are a bunch of ifs that need to be addressed, here is the code in javascript if anyone is interested

    Code:
           var angleConversion = Math.PI / 180;
           //used to convert degrees to radians
    
           var deadzone = false;
            if (x < 0.2875 && x > -0.2875){
              x = 0;
            }
            if (y < 0.2875 && y > -0.2875){
              y = 0;
            }
    
            if (x == 0 && y < 0){
              diAngle = 270;
            }
            else if (x == 0 && y > 0){
              diAngle = 90;
            }
            else if (x == 0 && y == 0){
              deadzone = true;
            }
            else {
              diAngle = Math.atan(y/x) * (180 / Math.PI);
              if (x < 0){
                diAngle += 180;
              }
              else if (y < 0) {
                diAngle += 360;
              }
            }
    
            if (!deadzone){
              var rAngle = launchAngle - diAngle;
              if (rAngle > 180){
                rAngle -= 360;
              }
    
              var pDistance = Math.sin(rAngle * angleConversion) * Math.sqrt(x*x+y*y);
    
              var angleOffset = pDistance * pDistance * 18;
              if (angleOffset > 18){
                angleOffset = 18;
              }
    
              if (rAngle < 0 && rAngle > -180){
                  angleOffset *= -1;
              }
            }
            else {
              var angleOffset = 0;
            }
    
            return (launchAngle - angleOffset);
    Thanks for all your help guys! If anyone wants to test it out, I'll PM you a link.
     
    #1114 schmooblidon, Jan 5, 2016
    Last edited: Jan 5, 2016
  35. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    Hold on... Just so I'm 100% understanding correctly, if I hit a Fox dair with 3 hits, the 2nd hit will have reduced damage, and the 3rd will have more reduced damage because all hits add to the staling queue right?
     
  36. tauKhan

    tauKhan
    Expand Collapse
    Smash Lord

    Joined:
    Feb 9, 2014
    Messages:
    1,300
    No, when the first hit connects, the attack will be added to the stale queue, so the consecutive hits do a bit less dmg (unless the move was already fully staled ofc). However the attack is only added once to the queue even if it hits multiple times, so the 3rd hit will do exact same dmg as 2nd hit with fox dair.
     
    Strong Bad and reverie2 like this.
  37. tauKhan

    tauKhan
    Expand Collapse
    Smash Lord

    Joined:
    Feb 9, 2014
    Messages:
    1,300
    Can anyone (@Kadano, @schmooblidon) figure out why I can combo fox dair into turn utilt on DK in practice mode. When I calculate the expected hitstun using drill properties (30 WDSK, 100 KBG, 0 BKB) in the formula, the result is 15,57. The result apparently includes 1 frame of hitlag in the value, so the stun should be 14 frames. Dair should have 9 frames of landing lag and utilt comes out frame 5, so turn utilt shouldn't come out faster than frame 15, and the combo shouldn't work. Where do I go wrong?
     
  38. schmooblidon

    schmooblidon
    Expand Collapse
    Smash Journeyman

    Joined:
    Feb 18, 2014
    Messages:
    485
    Magus physics repeats your results, so I don't believe there is an error in your calculations.

    I think training mode considers it a combo if hit on the first actionable frame. Tested a bunch of other scenarios like it and it counted it as a combo.
     
    tauKhan likes this.
  39. Bones0

    Bones0
    Expand Collapse
    Smash Legend

    Joined:
    Aug 31, 2005
    Messages:
    10,982
    Location:
    Jarrettsville, MD
    Yeah, Training Mode gives an extra frame of leniency for combos. If you're testing grounded combos you can always just hold shield for the defender to make sure you're not crazy.
     
  40. reverie2

    reverie2
    Expand Collapse
    Smash Apprentice

    Joined:
    May 3, 2015
    Messages:
    145
    Couple questions...
    1. Can you tech during hitlag or does it have to be hitstun only
    2. What is the earliest you can tech falcon's up-b? I've been doing it as soon as falcon releases me. when I'm like adjacent to a wall I miss it all the time. Does falcon's up-b incur hitlag?
    3. For special attacks like fox's up-b and side b here http://smashboards.com/threads/complete-fox-hitboxes-and-frame-data.285177/ there are both land lag and landfallspecial lag. Do I just add both those up to get the total landing lag? I'm looking at the marth frame data thread here http://smashboards.com/threads/complete-marth-hitboxes-and-frame-data.285324/ and it only has landfallspecial lag
     

Share This Page

Users Viewing Thread (Users: 0, Guests: 0)

We know you don't like ads
Why not buy Premium?