Enhanced Training Mode

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#1
I'll post all of my enhancements to training mode here, with the first being an infinite shield toggle. Feel free to suggest other training mode-related mods here, and I'll add them to a running list of ideas for the ultimate Project M training experience.

----------------------
Current Mods
----------------------
Enhanced Training Mode (V.0.3)

----------------------
Coming Soon:
----------------------
 
Last edited:

Hamman88

Smash Cadet
Joined
Dec 9, 2013
Messages
37
#5
Additional Request for 20XX Green on Wait.
That + infinite Shield are probably the two must helpful hacks you can have
 
Joined
Jan 31, 2014
Messages
877
#6
Can you add commands to debug? If so, I think the "colour overlay if immobile" would be best as a debug toggle. Also, since green is already used as invincibility, I'd suggest red or purple, those haven't been used as debug overlays yet.

IASA indicator would be very useful, especially if it can be linked to a state and it doesn't need to be hard-coded into every move.

Some additions to Training Room would be really neat.
Luigi's Mansion pillars are useful, since you can beat up the lower ones forever and it's like practicing shield pressure but you don't have to worry about pushback. Maybe another indestructible object instead, the pillars have some kind of invisible hurtbox in places.

A way to practice ledge teching would be super useful. A ledge with a continuously active hitbox would be sweet, it would allow you to practice ledge teching as well as intangible ledge stalls and good ledge dashes. Ideally there would be two of these, a left ledge and a right ledge, so you could be practice equally.
Any AI OOS options would be unreal. Perhaps you could add that to the Training options and let us select "Grab" (which would grab) or "Fastest" (which would do their fastest option if it's faster than grab).

As always, you're unreal.

 

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#9
I'm not sure if this something that is capable of being done with brawl hacking, but is there a possibilty of 20XX style save-states?
what do you mean by that? like recorded inputs? because i was just thinking of a way to do that

Additional Request for 20XX Green on Wait.
That + infinite Shield are probably the two must helpful hacks you can have
ooh so like green during the wait subaction?
 
Last edited:
Joined
Jan 31, 2014
Messages
877
#10
what do you mean by that? like recorded inputs? because i was just thinking of a way to do that
20XX lets you save the current game state with a button combo, and it stores characters' positions, percents, probably stale move queue, etc. A snapshot of the game in that moment. Then another button combo lets you load all that back.

Commonly used to practice something over and over again, such as ledge teching. You jump off stage and save state, then attempt a ledge tech, and if you fail you load the state and try again. It's just a time saver so that you don't have to wait to respawn, then get more damage added to you, etc.

ooh so like green during the wait subaction?
Exactly.

This video should show you some initial features that pretty much everyone would love to have in PM, such as AI OOS options or "wait subaction" overlay.

This other video demonstrates more advanced features that again, everyone would love to train with, and it probably gives a better understanding of save states than my explanation. CPU freeze states are really cool too.

Also something that I think would be really cool would be the to include all debug/training mode toggles and stuff printed on the background of the Training Room stage. So you could always just pause and move the camera around to find out exactly what button combo you need to press to get each desired effect.
 
Last edited:
Joined
May 5, 2012
Messages
5,610
Location
Fort Polk/Leesville, Louisiana
#12
I dunno what's possible for you to do (I believe you can do anything though) and I dunno how much you're willing to do, so i'll just brain dump everything that'd be useful for us, in order of how useful I think it'd be. Ideally speaking, much of this would be character specific; I understand that because there's so many characters, that would be a lot of work, so if you were to decide to do that, prioritizing top tiers first would be a good idea. These could be implemented as CPU settings in training mode, or just as CPU behaviors in general.

Semi random DI and SDI CPUs with random teching
Don't want the DI to be totally random, as most points on the stick do not produce unique or meaningful DI inputs. Random cardinal inputs for DI (Up, left, down, right, and the diagonal directions) plus half diagonals (ie 22.5 degrees away from vertical or horizontal) would probably be more than enough. SDI inputs could be randomized between 0-3 inputs, each of them a diagonal input in the same general direction (ie never opposing diagonal inputs because that would produce no effect- players tend to hit quarter circle SDI fairly consistently in PM which is two diagonal inputs in adjacent quadrants, ie downleft+upleft or upright+upleft).
Random teching is pretty self explanatory. Favoring tech in place slightly might be ideal since that's generally the hardest option to cover.

Semi random actions on wakeup and actions after hitstun

CPUs could choose between their fastest options for avoiding punishes after their tech options. For most characters, this is options between dash (either direction), jab (any mix-up of them), shield, spotdodge, CC, fast tilts/smashes (think ROB's dsmash or spacie utilt), shine (if they have it), quick up-bs (if they have one, especially if it's invincible).
Same goes for actions after getting combo'd. After their last frame of hitstun, CPUs could jump out (in any direction, favoring extremes/neutral), fall down with a quick aerial, jump+aerial, use a stalling special (like marth's side-b or shine) or any special that shifts momentum (ROB side-b), or simply mashing out of tumble and doing nothing. Delaying any of these options slightly also has value.

CC options

It's kind of an extension of DI/SDI, but it's important enough that it should be a separate mechanic. This might be the hardest to implement effectively, but only because it's hard to know where to stop. As you approach top level, players option select more and more actions to be holding down while they're occurring. Eventually you could see players even going so far as to hold down on the cstick at (almost) all times, in order to get ASDI down during dash dances. Additionally, deciding when to CC and when to simply DI for survival/DI for a combo is hard to pin down, too. You probably *could* tell the CPU to use a rough approximation of when the move can't be ASDI'd down into the ground anymore based on knockback and knockback angle, but that's even remotely close to how humans do it- humans have reaction time, so the ideal scenario is one where the CPUs account for approach options that punish you for CCing (which changes based on percent) and approach options punish you for doing something other than CCing, and determine which is more threatening. The easiest way to implement this might simply be to give the CPUs a decreasing chance based as percent increases to either a: CC the move they get hit by or b: DI the move as normal.

OoS options
This one seems hard to implement effectively, as you'd want the CPU to try to punish the player for doing unsafe things while not trying to punish them for safe things, and defining safe requires evaluation of both spacing and frame advantage. But if you could define to the CPU what is safe and unsafe, you could have them punish the player with shield grabs, quick aerials OoS, up-b OoS, shine OoS, upsmash OoS, or wavedash->any of these things. You could also have CPUs simply try to escape shield pressure, with rolls, wavedashes, and fullhops OoS.

Projectile spam CPUs

Each character has unique options for repeated projectiles so this would likely be a lot of work. There's land cancels, airdodge cancels, glide tosses, simpler projectiles that simply end quickest via IASA. This'd be great for players struggling to learn powershielding and projectile clanking, though.

Additional overlay ideas

Overlay on idle has already been mentioned, but overlay on ledge hold idle shouldn't be overlooked- it'll help people practice their frame-tight ledge options and maximize ledge invincibility. Shield stun overlay would be great too, so it's easier to develop an understanding of how much shieldstun moves have.

I'll add more ideas as I think of them.
Edit: Added CC options
 
Last edited:

iPunch

Smash Rookie
Joined
Dec 25, 2014
Messages
5
Location
Paris, France
#14
Using a roll make you in sleep animation, Using Shield to often make it break .... Things like that to help players going off bad habits
 
Last edited:
Joined
Dec 22, 2014
Messages
63
NNID
CopynPaste
#15
Would it be too much for music to change during Training Mode?
I know I get tired of some songs when in Training Mode for too long, maybe it should change song after 2-4 loops?
 

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#17
Would it be too much for music to change during Training Mode?
I know I get tired of some songs when in Training Mode for too long, maybe it should change song after 2-4 loops?
nothing (for the most part lol) is too much!

Just to give everyone an update, I've been reprogramming how the "Help" section of the Training Mode Menu operates. Players can now toggle options on/off in that section of the menu by pressing "A." A green outline will appear over active selections.
Here's a demonstration of the Wait Overlay option:
https://gfycat.com/MelodicGiganticJaeger
 
Last edited:

mawwwk

Smash Rookie
Joined
Jan 24, 2016
Messages
18
Location
kenosha, WI
#19
if you plan on re-porting debug mode, would you be able to fix the ZSS's whip hitbox bug? they look weirded out in debug mode because it doesn't terminate article hitboxes correctly.
here's an example for comparison:
 

Getsafe

Smash Apprentice
Joined
Jun 20, 2015
Messages
94
Location
Appleton, Wisconsin
#20
My vote is on random tech/DI from cpus that you can adjust (like 20XX)
And after that, OoS options from CPU would be great too.

Agree with almost everything in DrinkingFood's post but those two are most important imo.

Any idea on when you'll have these available?
 

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#21
My vote is on random tech/DI from cpus that you can adjust (like 20XX)
And after that, OoS options from CPU would be great too.

Agree with almost everything in DrinkingFood's post but those two are most important imo.

Any idea on when you'll have these available?
I'm going to release v.0.3 this week, which will feature an easier Hitbox toggle and the wait overlays. v.0.4 will contain the random tech/DI behavior.
 

RPGgrenade

Smash Apprentice
Joined
Jan 20, 2016
Messages
80
#26
I would totally support this with any kind of DI randomization. With like a preference for Combo DI at low percents, and Survival DI at high percents. All that stuff would be amazing.
I can't really say I know what to add to it. But I think DrinkingFood put it best as to what should be implemented.
 

ECHOnce

Smash Lord
Joined
Feb 22, 2014
Messages
1,191
Location
Peachtree City, GA
#28
Projectile spam CPUs
Each character has unique options for repeated projectiles so this would likely be a lot of work. There's land cancels, airdodge cancels, glide tosses, simpler projectiles that simply end quickest via IASA. This'd be great for players struggling to learn powershielding and projectile clanking, though.
FifthCPU made a Spamus AI a while back. Only one char, but along with 20XX HP 3.02 it was useful for learning power shielding projectiles at different speeds/pacing. He took the files down on rip day and I've since lost my own copies; friend was asking for them, so if anyone still has theirs I'd greatly appreciate a pm. He had a random DI Falcon too I believe, which I never got to try before he took it down :/
 
Last edited:

PeachyCoke

Smash Rookie
Joined
Mar 28, 2016
Messages
18
Location
Bermuda Run, NC
3DS FC
2981-8066-3180
#29
Hey PyotrLuzhin PyotrLuzhin I just wanted to let you know that I found a small bug after playing around with the infinite shield mod. I picked Fox as player 1 and after choosing a stage the game soft crashed (no beep). I tried with a few other characters and stages and it worked fine so it must be just Fox. I don't know if this is known but I thought I'd share. Also I have custom codes if that matters.

P. S. I'm the guy on reddit that contacted you about not being able to get your codes to work. I wanted to let you know that I fixed the problem. I took a shot in the dark and increased the Code List End value in the gameconfig.txt file and to my surprise the game loaded.
 
Joined
Jan 31, 2014
Messages
877
#31
It's totally sick!

On your post you said it was still work in progress, but am I correct in saying that the purpose of the "Stale Toggle" is to make moves stale in Training Mode, since they don't normally? If so, it's not working for me but you probably know that.

I think the greatest thing about this project is that it's lots of things together, AND you can toggle them in-game . People have made infinite shield addons and stuff like that before, but you had to compile them all separately, and you had to change the settings every time you booted the game. Being able to change the settings on the fly is insanely useful.

Another idea, would you consider changing the Wait Overlay to a different colour, since Debug already makes invincibility green? Perhaps a colour not already used by Debug like red, pink, purple, or even grey?
 
Last edited:

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#32
It's totally sick!

On your post you said it was still work in progress, but am I correct in saying that the purpose of the "Stale Toggle" is to make moves stale in Training Mode, since they don't normally? If so, it's not working for me but you probably know that.

I think the greatest thing about this project is that it's lots of things together, AND you can toggle them in-game . People have made infinite shield addons and stuff like that before, but you had to compile them all separately, and you had to change the settings every time you booted the game. Being able to change the settings on the fly is insanely useful.

Another idea, would you consider changing the Wait Overlay to a different colour, since Debug already makes invincibility green? Perhaps a colour not already used by Debug like red, pink, purple, or even grey?
i'm thinking about completely remaking the debug overlays tbh, but in the meantime yes, I think that a light grey might look nice.
 
Joined
Jan 31, 2014
Messages
877
#33
i'm thinking about completely remaking the debug overlays tbh, but in the meantime yes, I think that a light grey might look nice.
What do you mean by remake the debug overlays? Like make special ones to add to training mode or change the underlying overlays in Magus' debug mode themselves? Remake as in recolour or make new features?
 
Last edited:

Sunnyknight

Smash Rookie
Joined
Aug 5, 2013
Messages
1
Location
Austin, TX
NNID
Sunnyknight
#35
when trying to boot it soft crashed after the project m main screen
Having the same exact issue. Followed the instructions correctly. Can you only load this patch with a vanilla PM build. I have 3.6 PM build that has custom music and a custom CSS screen, that's all though.
 

PeachyCoke

Smash Rookie
Joined
Mar 28, 2016
Messages
18
Location
Bermuda Run, NC
3DS FC
2981-8066-3180
#37
It would be nice if you could set the player's damage as well as the computer's. Maybe you can make it so that you press A on the set damage option to toggle AI/player. Also, it would really speed up the process of selecting damage if you could choose each digit. If that's not possible, then a simpler solution might be to hold L to increase the value by ten rather than one.

Also, I found an odd quirk. If I turn on wait overlay, side taunt with Samus, turn off wait overlay, and then side taunt again her arm cannon is green for the duration of the taunt. I also had something similar happen with Pit where his sword bow thingy turned green during his neutral B animation.
 

nimigoha

Smash Ace
Joined
Jan 31, 2014
Messages
877
#38
On my friend's setup but not mine, after I did a fresh install using my computer for both SD cards, using the normal 3.6 debug toggle won't activate hitboxes, they can only be done through the training menu toggle. Invincibility and armour will still work but hitboxes don't.
 

PyotrLuzhin

Smash Journeyman
Joined
Jul 1, 2014
Messages
470
Location
Altair's Lair
#39
On my friend's setup but not mine, after I did a fresh install using my computer for both SD cards, using the normal 3.6 debug toggle won't activate hitboxes, they can only be done through the training menu toggle. Invincibility and armour will still work but hitboxes don't.
This was by design, but due to multiple requests to preserve the original debug toggle, I will restore the original input in the next version. Also, here's a demo of the Interrupt Overlay feature!

https://gfycat.com/LoathsomeSophisticatedBighornsheep
 

G13_Flux

Smash Lord
Joined
Jan 1, 2013
Messages
1,076
#40
PyotrLuzhin PyotrLuzhin how can I get this to work with legacy TE? I followed steps 1, 2 and 3 (i.e. I took the rsbe01.gct and moved it to the folder, and used the fuzionizer by clicking apply). I then took the RSBE01 and moved it back to the place where it was in the legacy TE folder. however, the game kinda tweaks out on startup. If i continue to follow steps 4, 5, and 6, It will obviously overwrite most of the legacy files. is there a list of other files I could manually add in?
 
Last edited:
Top