No edit summary |
Final Ultima (talk | contribs) mNo edit summary |
||
Line 65: | Line 65: | ||
| Testament | | Testament | ||
| [https://twitter.com/hashtag/GGST_TE?src=hash #GGST_TE] | | [https://twitter.com/hashtag/GGST_TE?src=hash #GGST_TE] | ||
|- | |||
| Bridget | |||
| [https://twitter.com/hashtag/GGST_BR?src=hash #GGST_BR] | |||
|} | |} | ||
Line 258: | Line 261: | ||
=== R.I.S.C. Damage Reduction === | === R.I.S.C. Damage Reduction === | ||
When striking an opponent with negative | When striking an opponent with a negative [[GGST/Damage#R.I.S.C. Level|R.I.S.C. Level]], the output damage is reduced. This is colloquially known as "combo scaling". | ||
As a first approximation, take the table below, and see the "percentage" column - that is how much the damage is scaled for respective R.I.S.C. | As a first approximation, take the table below, and see the "percentage" column - that is how much the damage is scaled for respective R.I.S.C. Level. | ||
{| class="wikitable" style="text-align:right;" | {| class="wikitable" style="text-align:right;" | ||
! R.I.S.C. !! | ! R.I.S.C. Level !! Factor !! Percentage | ||
|- | |- | ||
|| | || -100 || 256 || 100.00% | ||
|- | |- | ||
|| | || -1700 || 200 || 78.13% | ||
|- | |- | ||
|| | || -3300 || 152 || 59.38% | ||
|- | |- | ||
|| | || -4900 || 112 || 43.75% | ||
|- | |- | ||
|| | || -6500 || 80 || 31.25% | ||
|- | |- | ||
|| | || -8100 || 48 || 18.75% | ||
|- | |- | ||
|| | || -9700 || 32 || 12.50% | ||
|- | |- | ||
|| -11300 || | || -11300 || 16 || 6.25% | ||
|- | |- | ||
|| -12900 || | || -12900 || 8 || 3.13% | ||
|- | |- | ||
|} | |} | ||
The exact math is as follows: | The exact math is as follows: | ||
# | # Find the two closest R.I.S.C. Level values in the left column of the table above, look up the corresponding values in the factor column. | ||
# | # Do the linear interpolation between the values obtained; round down to nearest integer. | ||
# | # Multiply the base attack damage by the number obtained, then divide by 256 and round down. | ||
# | # The result would be the damage taken by your opponent. | ||
{| class="mw-collapsible mw-collapsed wikitable" | {| class="mw-collapsible mw-collapsed wikitable" | ||
! Example, in prose | ! Example, in prose | ||
|- | |- | ||
| Let's say we are landing 30 | | Let's say we are landing a 30 damage attack on an opponent with a R.I.S.C Level of -4000. | ||
The two closest R.I.S.C. values in the table above would be 3300 (factor of 152) and 4900 (factor of 112) | The two closest R.I.S.C. Level values in the table above would be -3300 (factor of 152) and -4900 (factor of 112). For simplification purposes, the negatives can be omitted. We then do the linear interpolation of the two (i.e. "finding the average of the values, accounting for the proximity", roughly) as follows: | ||
We do the linear interpolation of the two (i.e. "finding the average of the values, accounting for the proximity", roughly) as follows: | |||
factor_a + (factor_b - factor_a)*(risc - risc_a)/(risc_b - risc_a) | factor_a + (factor_b - factor_a) * (risc - risc_a) / (risc_b - risc_a) | ||
= 152 + (112 - 152) * (4000 - 3300) / (4900 - 3300) | = 152 + (112 - 152) * (4000 - 3300) / (4900 - 3300) | ||
= 152 + (-40) * 700 / 1600 | = 152 + (-40) * 700 / 1600 | ||
Line 304: | Line 306: | ||
= 134.5 | = 134.5 | ||
Round it down, getting 134; and get the final answer as <code>30 * 134 / 256 = 15.7 = (rounding down once more) = 15</code> damage. | |||
|- | |- | ||
|} | |} | ||
Line 313: | Line 315: | ||
| | | | ||
fn scale_attack(attack_damage: int, risc: int) | fn scale_attack(attack_damage: int, risc: int) | ||
if(risc>= 0) { return attack_damage; } // positive risc does not affect damage at all | if(risc >= 0) {return attack_damage;} // positive risc does not affect damage at all | ||
if(risc >= -12800) {risc = -12800} // can't go lower than this | if(risc >= -12800) {risc = -12800} // can't go lower than this | ||
risc = abs(risc); // flip the sign so it's easier to work with | risc = abs(risc); // flip the sign so it's easier to work with | ||
// table from above, with sign flipped | // table from above, with sign flipped | ||
let risc_factor_table = {100: 256, 1700: 200, 3300: 152, 4900: 112, 6500: 80, 8100: 48, 9700: 32, 11300:16, | let risc_factor_table = {100: 256, 1700: 200, 3300: 152, 4900: 112, 6500: 80, 8100: 48, 9700: 32, 11300: 16, 12900: 8}; | ||
let risc_ordinal = floor((risc - 100)/1600); | let risc_ordinal = floor((risc - 100) / 1600); | ||
let risc_lower = risc_ordinal * 1600 | let risc_lower = risc_ordinal * 1600 + 100; | ||
let risc_upper = (risc_ordinal+1) * 1600 + 100; | let risc_upper = (risc_ordinal + 1) * 1600 + 100; | ||
let factor_lower = risc_factor_table[risc_lower]; | let factor_lower = risc_factor_table[risc_lower]; | ||
let factor_upper = risc_factor_table[risc_upper]; | let factor_upper = risc_factor_table[risc_upper]; | ||
// linear interpolation | // linear interpolation | ||
let factor_interpolated = factor_lower + floor( (factor_upper - factor_lower) * (risc - risc_lower) / (risc_upper - risc_lower) ); | let factor_interpolated = factor_lower + floor((factor_upper - factor_lower) * (risc - risc_lower) / (risc_upper - risc_lower)); | ||
let out_damage = floor(attack_damage * factor_interpolated / 256); | let out_damage = floor(attack_damage * factor_interpolated / 256); |
Revision as of 06:48, 8 August 2022
Finding content on Twitter
With the ease of posting videos and discussion to Twitter, it can be helpful to know how to track this information down. Each character in the game has a specific hashtag which people should aim to use when posting tweets for ease of searching. The current list of these hashtags is as follows:
Sol Badguy | #GGST_SO |
Ky Kiske | #GGST_KY |
May | #GGST_MA |
Axl Low | #GGST_AX |
Chipp Zanuff | #GGST_CH |
Potemkin | #GGST_PO |
Faust | #GGST_FA |
Millia Rage | #GGST_MI |
Zato-1 | #GGST_ZA |
Ramlethal Valentine | #GGST_RA |
Leo | #GGST_LE |
Nagoriyuki | #GGST_NA |
Giovanna | #GGST_GI |
Anji Mito | #GGST_AN |
I-No | #GGST_IN |
Goldlewis Dickinson | #GGST_GO |
Jack-O' | #GGST_JC |
Happy Chaos | #GGST_HA |
Baiken | #GGST_BA |
Testament | #GGST_TE |
Bridget | #GGST_BR |
Input Shortcuts
Certain specials and Overdrives allow you skip directional inputs for their commands and still execute the attack. Below are the known valid input shortcuts for their usual directional commands (additional directional inputs within the given shortcuts will also work, as long as the minimum inputs as shown in the shortcut are met, e.g. 62146 is valid because 6246 is valid).
Command | Shortcuts |
41236 (63214) |
|
236236 (214214) |
|
632146 |
|
632147896 (360 motion) |
|
Low-End Considerations
Strive is a graphically-extensive game that will greatly bar out the lower end of older computers, needing much more power as opposed to Xrd just to run minimal settings (seeing as the game usually takes up around 4GB of RAM on its own). There are a few things you can try to alleviate any issues with stability in running the game, but there is only so much you can do before you're out of luck.
Settings
Firstly, be sure to set your resolution to lower than the default 1920x1080, such as 1280x720.
As usual, set your graphics setting all to the lowest values/OFF minus the Scaling Resolution and Effect Quality. Lowering Scaling Resolution will severely lower the pixel density of the in-game 3D graphics on your screen to speed things up along and use less power, but obviously this will adversely affect how you view gameplay - while it's still technically playable at 0, you'd have to question your decisions at that point. The minimum you might want to handle is 50, depending on your tastes and tolerance, with 75 being a good mix of seeing what's happening and performance. You'll have to play around with these values and judge it for yourself with screenshots. Note that this does not affect UI elements like text, gauges, buttons, so on.
Lastly, at the time of writing, there seems to be an oversight where not setting your Effect Quality to Best gives a very strange and ugly bloom/lighting effect on characters. However, you do not have to keep the setting at Best! At any point of the game, all you need to do is press Alt and Enter on your keyboard, which will toggle your fullscreen. Do just that and the bloom issues should no longer be present for the game's current session.
Scalability.ini
Thanks to this article's observation, another step can be made to slightly increase performance of your game. Make sure your game is closed, then navigate to Windows Explorer and type in %localappdata%. Hit enter and it should bring you to a folder called Local. In there, find GGST -> Saved -> Config and lastly open the Scalability.ini file that's in there. Copy and paste the following contents into there, then save the file.
[AntiAliasingQuality@0]
r.MSAA.CompositingSampleCount=1
[ViewDistanceQuality@0]
r.SkeletalMeshLODBias=5
r.ViewDistanceScale=0.0
[ShadowQuality@0]
r.ShadowQuality=0
r.Shadow.CSM.MaxCascades=0
r.Shadow.MaxResolution=0
r.Shadow.RadiusThreshold=0.0
r.Shadow.DistanceScale=0.0
r.AllowLandscapeShadows=0
[PostProcessQuality@0]
r.MotionBlurQuality=0
r.AmbientOcclusionMipLevelFactor=0
r.AmbientOcclusionRadiusScale=0
r.RenderTargetPoolMin=200
r.BloomQuality=0
r.Upscale.Quality=0
r.Filter.SizeScale=0
r.Tonemapper.Quality=0
[TextureQuality@0]
r.Streaming.MipBias=3
r.MaxAnisotropy=0
r.Streaming.PoolSize=800
[FoliageQuality@0]
r.ParticleLightQuality=0
Next, you probably don't want the game to override these settings if you're satisfied, so right-click the ini, go to Properties, and set the Read-Only flag to checked and confirm it.
Stages
Unfortunately, not all stages in Strive are built the same, with some being more hardware intensive than others. This can be very detrimental when playing online with strangers especially if you're on Player 2 side, as having performance issues such as frame drops or lag spikes will leading to high rollback frames or worse the game slowing down. Observations on which stages are more intensive than others can be compared here, so you can use this to tell your friends which stages you can play on better if you're the low-end one out. However, remember that PC hardware is not unified so one stage might not give your PC any problems but it might give someone else's PC problems - these are all relative at best, but stages listed as A-OK should be the least intensive. So if you're experience some form of netplay lag on a specific stage try to check with an FPS counter like the one in the Steam overlay if your PC is running at a completely stable 60 fps and if possible ask the opponent to do the same.
Stage | Lagginess |
---|---|
Castle of the Silver Feet | Little Lag |
Lars Canyon | A-OK |
Seventh Heaven District | A-OK |
12-Dimensional Flux Observatory | A-OK |
Ajatar Hunting Ground | Very Laggy |
"A Happy Family" | A-OK |
L'oro Di Illyria | Some Lag |
Council of Three | A-OK |
Jellyfish Skyarium | Very Laggy |
Original Times Square | Some Lag |
Lap of the Kami | Very Laggy |
White House Reborn | Some Lag |
Note: White House Reborn is generally banned in tournament play, because the rubble that spawns after a Wall Break stays on screen for too long, obscuring post-Wall Break interactions.
Using Mods
Thankfully, modders have jumped into action to customize things like audio, models, and textures, but fortunately this also gives a possibility of fixing the offending stages for low-end setups. Using the following mods created by DraftFGC, much of the resource-hogging models on stages will be removed and not be rendered, which is a better visual alternative to completely removing all of the stage's characteristics.
- This page has the most recent and most recommended edits, with per-stage selections that remove much of offending objects within stages without sacrificing the overall appearance like the other mods do. You should choose from this page if your slowdowns are mild. Alternative mirror here.
- The first set of removals are here, which are collective and also remove skies and Character Selection Screen assets. Individual and manual downloads (without those extreme edits) can be found in this MEGA folder. For if Lite really doesn't fix it - this should do the job.
- Another mod to make Ajatar Hunting Ground into a solid color exists (for green-screening), but you can only load one of either version of the mod.
After downloading the stages you've chosen, to manually install these mods, follow these steps:
- Navigate to C:\Program Files (x86)\Steam\steamapps\common\GUILTY GEAR STRIVE\RED\Content\Paks\ (whichever drive/directory your game is saved in)
- In the Paks folder, make another folder called ~mods
- Extract and drop your downloaded contents into that folder and test in-game (in other words, you should have Paks/~mods/*.pak and *.sig).
You should no longer have to worry about fighting strangers or asking people to swap stages with these mods. Unfortunately, though, if your game is still having issues running even after all these steps, then there likely isn't any more you can do aside from upgrading your setup.
Training Mode Shortcuts
- Direction + Reset
- Left + Reset to reset both characters to the left corner. (P1 in the corner)
- Right + Reset to reset both characters to the right corner. (P2 in the corner)
- Down + Reset to reset both characters to round start position.
- Up + Reset to reset both characters to the previous starting position with their player sides switched.
- Play + Record = Reset
- Pressing both Play and Record at the same time is the same as pressing the Reset button.
Technical Calculations
These are not required to utilise game mechanics, but these sections further elaborate on the mathematical calcuations for various system mechanics, which are otherwise too complex for their respective sections.
Base R.I.S.C. Gain
Base R.I.S.C Gain is tied to Attack Level, using the formula:
⌊(5 + 5 × Attack Level) ÷ Number of hits⌋ × 100
- While values are normally rounded down before the ×100 multiplier, they will instead round up to 1 if the result is lower than 1.
- Projectiles ignore Attack Level for their base R.I.S.C. Gain, acting like Level 0 attacks regardless of their actual level.
- A fully charged Dust Attack functions like a Level 4 for the opponent on block despite being Level 2, including R.I.S.C. Gain.
- R.I.S.C. Gain is reduced by 25% if the blocked attack is a low or an overhead.
R.I.S.C. Damage Reduction
When striking an opponent with a negative R.I.S.C. Level, the output damage is reduced. This is colloquially known as "combo scaling".
As a first approximation, take the table below, and see the "percentage" column - that is how much the damage is scaled for respective R.I.S.C. Level.
R.I.S.C. Level | Factor | Percentage |
---|---|---|
-100 | 256 | 100.00% |
-1700 | 200 | 78.13% |
-3300 | 152 | 59.38% |
-4900 | 112 | 43.75% |
-6500 | 80 | 31.25% |
-8100 | 48 | 18.75% |
-9700 | 32 | 12.50% |
-11300 | 16 | 6.25% |
-12900 | 8 | 3.13% |
The exact math is as follows:
- Find the two closest R.I.S.C. Level values in the left column of the table above, look up the corresponding values in the factor column.
- Do the linear interpolation between the values obtained; round down to nearest integer.
- Multiply the base attack damage by the number obtained, then divide by 256 and round down.
- The result would be the damage taken by your opponent.
Example, in prose |
---|
Let's say we are landing a 30 damage attack on an opponent with a R.I.S.C Level of -4000.
The two closest R.I.S.C. Level values in the table above would be -3300 (factor of 152) and -4900 (factor of 112). For simplification purposes, the negatives can be omitted. We then do the linear interpolation of the two (i.e. "finding the average of the values, accounting for the proximity", roughly) as follows: factor_a + (factor_b - factor_a) * (risc - risc_a) / (risc_b - risc_a) = 152 + (112 - 152) * (4000 - 3300) / (4900 - 3300) = 152 + (-40) * 700 / 1600 = 152 - 17.5 = 134.5 Round it down, getting 134; and get the final answer as |
Pseudocode |
---|
fn scale_attack(attack_damage: int, risc: int) if(risc >= 0) {return attack_damage;} // positive risc does not affect damage at all if(risc >= -12800) {risc = -12800} // can't go lower than this risc = abs(risc); // flip the sign so it's easier to work with // table from above, with sign flipped let risc_factor_table = {100: 256, 1700: 200, 3300: 152, 4900: 112, 6500: 80, 8100: 48, 9700: 32, 11300: 16, 12900: 8}; let risc_ordinal = floor((risc - 100) / 1600); let risc_lower = risc_ordinal * 1600 + 100; let risc_upper = (risc_ordinal + 1) * 1600 + 100; let factor_lower = risc_factor_table[risc_lower]; let factor_upper = risc_factor_table[risc_upper]; // linear interpolation let factor_interpolated = factor_lower + floor((factor_upper - factor_lower) * (risc - risc_lower) / (risc_upper - risc_lower)); let out_damage = floor(attack_damage * factor_interpolated / 256); return out_damage |
Dash Acceleration
For each frame a dash is held (excluding Leo, Giovanna, and I-No's unique dashes), the dash speed will be:
vₙ₊₁ = ⌊vₙ + Acceleration - (vₙ/Friction)⌋
Where:
- vₙ is the current speed
- vₙ₊₁ is the speed next frame
- Acceleration is the character's base acceleration
- Friction is the character's base friction value
- v cannot exceed 38.5
- The value in ⌊ ⌋ is rounded down to the nearest 0.001
Initial dash speed is the value of v when n=0, therefore frame 1 will always be slightly faster. For the sake of calculation, friction is inverse, a higher value maintains speed, while a lower value loses acceleration quicker.
Due to rounding and the mechanics of friction there is no simple way to estimate speed from an arbitrary frame, without calculating the entire series.
Additional Data Charts
6P Values
chara | startup | active | recovery | onBlock | onHit | invuln | |
---|---|---|---|---|---|---|---|
chara | startup | active | recovery | onBlock | onHit | invuln | |
A.B.A | 11 | 6 | 20 | -12 | -9 | 1-2 Upper Body/3-16 Above Knees | |
Anji Mito | 10 | 6 | 25 | -17 | KD +19 | 1-3 Upper Body 4-15 Above Knees | |
Asuka R | 11 | 6 | 17 | -9 | KD | 1-3 Upper Body 4-16 Above Knees | |
Axl Low | 12 | 5 | 22 | -13 | +2 | 1-3 Upper Body 4-16 Above Knees | |
Baiken | 9 | 5 | 19 | -10 | -7 | 1-2 Upper Body 3-13 Above Knees | |
Bedman | 11 | 6 | 24 | -16 | KD +19 | 1-2 Upper Body 3-16 Above Knees | |
Bridget | 10 | 6 | 20 | -12 | KD +23 | 1-3 Upper Body 4-17 Above Knee | |
Chipp Zanuff | 9 | 5 | 25 | -16 | -13 | 1-2 Upper Body 3-13 Above Knee | |
Elphelt Valentine | 9 | 4 | 20 | -10 | KD +25 | 1-2 Upper Body 3-12 Above Knee | |
Faust | 9 | 3 | 32 | -21 | KD +21 | 1-3 Upper Body 4-11 Above Knees | |
Giovanna | 12 | 8 | 15 | -9 | KD +22 | 1-3 Upper Body 4-19 Above Knees | |
Goldlewis Dickinson | 12 | 6 | 27 | -19 | -16 | 1-2 Upper Body 3-17 Above Knees | |
Happy Chaos | 9 | 5 | 25 | -16 | -13 | 1-3 Upper Body 4-13 Above Knees | |
I-No | 9 | 5 | 18 | -9 | -6 | 1-2 Upper Body 3-13 Above Knees | |
Jack-O | 10 | 6 | 20 | -12 | KD +21 | 1-3 Upper Body 4-12 Above Knees | |
Johnny | 11 | 6 | 17 | -9 | KD | 1-3 Upper Body 4-16 Above Knee | |
Ky Kiske | 9 | 5 | 17 | -8 | -5 | 1-3 Upper Body 4-13 Above Knees | |
Leo Whitefang | 10 | 5 | 17 | -5 | +7 | 1-2 Upper Body 3-14 Above Knees | |
May | 12 | 6 | 18 | -7 | KD +25 | 1-3 Upper Body 4-17 Above Knees | |
Millia Rage | 9 | 9 | 16 | -11 | -8 | 1-2 Upper Body 3-11 Above Knee | |
Nagoriyuki | 12 | 5 | 15 | -6 | -3 | 1-3 Upper Body 4-17 Above Knee | |
Potemkin | 11 | 7 | 25 | -15 | KD +17 | 1-3 Upper Body 4-17 Above Knees | |
Ramlethal Valentine | 9 | 5 | 18 | -9 | -6 | 1-3 Upper Body 4-13 Above Knees | |
Sin Kiske | 11 | 6 | 20 | -12 | -9 | 1-3 Upper Body 4-16 Above Knee | |
Sol Badguy | 9 | 5 | 20 | -11 | -8 | 1-2 Upper Body 3-13 Above Knees | |
Testament | 11 | 6 | 15 | -7 | KD +28 | 1-3 Upper Body 4-17 Above knees | |
Zato-1 | 12 | 8 | 12 | -6 | KD +23 | 1-3 Upper Body 4-15 Above Knees |
Reversal Values
chara | input | startup | active | recovery | onBlock | onHit | invuln | |
---|---|---|---|---|---|---|---|---|
chara | input | startup | active | recovery | onBlock | onHit | invuln | |
Anji Mito | 632146S | 1 | 30 | 10 | Guard 1-30 | |||
Axl Low | 632146P Attack | 8+1+0 | 1 | 11 | 0 | +140 | 8-9F Full | |
Axl Low | j.632146P Attack | 8+1+0 | 1 | 11 | 0 | +140 | 8-9F Full | |
Giovanna | 632146H | 5+4 | 4(4)4(4)4(4)4(4)7 | 49 | -37 | HKD +18 | 1-10F Full | |
Goldlewis Dickinson | 632146P | 6+(135 Flash)+4 | 5 | 46 | -33 | HKD +62 | 1-14F Full | |
Goldlewis Dickinson | 720P | 11+(191 Flash)+4 | 5 | 46 | -33 | 1-19F Full | ||
Goldlewis Dickinson | 1080P | 16+(230 Flash)+4 | 5 | 46 | -33 | 1-24F Full | ||
Ky Kiske | 623S | 11 | 4 | 43 | -33 [-28] | KD +22 [KD +34] | 1-14f Strike | |
Ky Kiske | 632146H | 8+1 | 3×4(20)2 | 99 | -82 | HKD +20 | 1-10F Full | |
Ky Kiske | DI 632146H | 8+1 | 2×8(20)2×3 | 99 | -79 | HKD +26 | 1-15F Full | |
Potemkin | 236236S | 12+0 | 15 | 16 | N/A | HKD +65 | 1-12F Full | |
Ramlethal Valentine | 236236S | 7+2 | 6 | 51 | -38 [-38] {-43} | HKD +28 | 1-14F Full | |
Sin Kiske | 632146H | 11+5 | 12 | 25+32 After Landing | -55 | HKD +20 | 1-18F Full |
- Anji Mito [★]
- Asuka R♯ [★]
- Axl Low [★]
- Baiken [★]
- Bedman? [★]
- Bridget [★]
- Chipp Zanuff [★]
- Faust [★]
- Giovanna [★]
- Goldlewis [★]
- Happy Chaos [★]
- I-No [★]
- Jack-O' [★]
- Johnny [★]
- Ky Kiske [★]
- Leo Whitefang [★]
- May [★]
- Millia Rage [★]
- Nagoriyuki [★]
- Potemkin [★]
- Ramlethal [★]
- Sin Kiske [★]
- Sol Badguy [★]
- Testament [★]
- Zato-1 [★]
Click [★] for character's full frame data
Essentials
• HUD •
Controls •
FAQ •
The Basics
• Movement/Canceling •
Offense •
Defense •
Gauges •
Universal Strategy •
Detailed & Advanced Information
• Damage/Combo •
Frame Data & System Data •
Attack Attributes •
Misc •
Archived Information
• Patch Notes • Tier Lists •
- Attack Level
- Blocking
- Burst Gauge
- Cancels
- Clash
- Dash Cancel
- Faultless Defense
- Frame Advantage
- Gatling
- Gravity
- Guard Crush
- Guts
- Hitstop
- Hitstun
- Instant Air Dash (IAD)
- Instant Block
- Instant Faultless Defense
- Invalid Combos
- Knockdown Recovery
- Low Profile
- Minimum Damage
- Negative Penalty
- Off the Ground (OTG)
- Positive Bonus
- Prejump
- Proration
- Psych Burst
- Punish
- Overdrive (Super Attack)
- R.I.S.C. Level
- Roman Cancel (RC)
- Stagger Recovery
- Tension Gauge
- Throw
- Throw Clash
- Wall