• 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!

Crazy Hand v1.31 - Character editing program

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
Okay, thanks for clearing that up for me. I have another question for you @ Stratocaster Stratocaster if you don't mind me asking:

I've been messing with the FSM stuff for a little while now just to get a better understanding of how they work before I add them into my program. However, I've been having trouble getting them to work on my own.

I think there needs to be a pointer or something that directs the game to that chunk of code, right? If so, I don't know where that would go.

When I use the Start.dol file that achilles has already set up on his own here i can get it working just fine. However, when I try to inject the code on my own it doesn't seem to do anything. The game just runs as if nothing was changed, probably because nothing that the game tries to read has been changed.
 
Last edited:

Stratocaster

Smash Ace
Joined
Oct 6, 2007
Messages
672
Location
Knoxville, TN
Yes you are totally right. I forgot to include that earlier.

This redirects the code at the end of an update animation frame and script timers function to execute the custom function:
@ Offset 0x6FF18 write 48398578

I think that should do it.
 

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
@ Tater Tater , have you made any progress on the special move editing aspect of the program? I'm planning to release the next version today or tomorrow with a couple of minor tweaks and changes, so If you have anything ready I could add that into the update. Or if you're close to being ready but need a few days I can wait for you. If you aren't close to being ready (which is totally understandable) then I'll just go ahead and release my stuff and save yours for the next update.
 

CeLL

Smash Lord
Joined
Jan 26, 2014
Messages
1,026
Location
Washington
Oh so my problem with not being able to find tilts is that Marth/Fox's utilts apparently don't work? I checked in Masterhand and it says the same thing.
 

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
Oh so my problem with not being able to find tilts is that Marth/Fox's utilts apparently don't work? I checked in Masterhand and it says the same thing.

You sure about that? They seem to be working fine for me. You might be looking at the wrong subaction.

Uptilt is b'AttackHi3, but Upward angled forward tilt is b'AttackS3Hi. Very similar, but completely different.

However, Ganon's uptilt doesn't seem to have any hitboxes shown, so I don't know how it works.
 

CeLL

Smash Lord
Joined
Jan 26, 2014
Messages
1,026
Location
Washington
You sure about that? They seem to be working fine for me. You might be looking at the wrong subaction.

Uptilt is b'AttackHi3, but Upward angled forward tilt is b'AttackS3Hi. Very similar, but completely different.

However, Ganon's uptilt doesn't seem to have any hitboxes shown, so I don't know how it works.
Wow apparently it works. Idk what I was thinking. Maybe I mixed them up.

Also I suggest adding throws if you haven't already.
 

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
Wow apparently it works. Idk what I was thinking. Maybe I mixed them up.

Also I suggest adding throws if you haven't already.
That's on my to do list, although I don't know a lot about throws atm so it might be a little while before I get to that point.
 

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
Hey everybody, the next version of my program is now available. There was a pretty positive response to changing the program's name to "Crazy Hand", so it has been officially changed to this.

What's new:
--You can now edit both of the Wireframe characters, Giga Bowser, and the Sandbag.
--The names for attack subactions are now much more intuitive.
--More intuitive "smash charge editing", similar to how hitboxes are displayed. (Thanks to @Itaru and @Lanceinthepants for their documentation on this. Lance, I ended up using your descriptions for the auras word for word in my program. I should have asked permission, but I hope you're fine with it.)
--You can now edit all subactions (excluding special move/character specific ones) for each character.
--Within hitboxes, you can now edit sounds and hitbox interactions. They are no longer drop down menus.
--There's now a "Restore defaults" button that you can use to reset characters to default values.
--Character randomization. What better way to kick off the launch of the new name "Crazy Hand" than with a crazy feature? I just decided to throw this in for giggles. My roommate and I got some pretty good laughs messing around with it. Basically all it does is "randomize" values for every character's hitboxes, and some of their more important basic attributes. It's not completely random though, what it does is it takes the current value and multiplies it by a random number from 0.5x to 2.0x. So if the value starts out at 0, it will stay at 0. If it's a negative number, it will stay a negative number.


That's it for now. This was a pretty small update but you can expect much more to come in the future. I have a lot of stuff planned.

Here is the download link: Crazy Hand v1.00
 
Last edited:

Tater

Smash Journeyman
Joined
Apr 10, 2014
Messages
201
Location
Socal
NNID
Taternater
3DS FC
2406-5307-2936
@ Ampers Ampers sorry I dropped off the face of the earth, I've been a little busy the past few days IRL. I'm halfway done with categorizing the special moves but I've been slacking off on them while working on a couple other features:

Throw editing(Complete)

Body aura editing(Read more at: http://smashboards.com/threads/changing-color-effects-in-melee.313177/page-2#post-14490878) (WIP, nearly finished)

I've also been looking into a way to open the melee ISO directly, and save changes directly so there's no need to rebuild with GCR for every edit made.

I'll be free every day next week other than monday and wednesday so I'll grind through special move mapping on tuesday and send you that plus the throw editing script, and work more on opening the ISO itself thursday onward.
 

Sharur

Smash Rookie
Joined
Feb 16, 2015
Messages
2
Yo when you guys figure out how to do start .dol I just found out where all the placements are for momentum for moves (how up b's work and whether you carry momentum through a move), specific move cancelling, making moves no longer end in special fall and the body states characters go into during moves if you want it.
 

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
@ Ampers Ampers sorry I dropped off the face of the earth, I've been a little busy the past few days IRL. I'm halfway done with categorizing the special moves but I've been slacking off on them while working on a couple other features:

Throw editing(Complete)

Body aura editing(Read more at: http://smashboards.com/threads/changing-color-effects-in-melee.313177/page-2#post-14490878) (WIP, nearly finished)

I've also been looking into a way to open the melee ISO directly, and save changes directly so there's no need to rebuild with GCR for every edit made.

I'll be free every day next week other than monday and wednesday so I'll grind through special move mapping on tuesday and send you that plus the throw editing script, and work more on opening the ISO itself thursday onward.

Cool, glad to hear you've got some progress. But yeah, no rush man. Take your time.
I'm glad I didn't work on throws then, haha. I was so close to doing that yesterday but decided against it. For the throws did you use my Hitbox one as a guideline? And did you use my bit set and read functions to read/write to the "int[] data" array?

I've also been wondering about being able to edit the iso directly, because GCRebuilder is pretty annoying to have to go through every time. I have done very little research on the topic, but from what I've seen there are 3rd party libraries written that look like they could do what we want. As far as I'm aware there is not a 1st party library for editing iso's.




Yo when you guys figure out how to do start .dol I just found out where all the placements are for momentum for moves (how up b's work and whether you carry momentum through a move), specific move cancelling, making moves no longer end in special fall and the body states characters go into during moves if you want it.
Nice. How did you find them? Is that in a separate place from the "Article Floating Points"? We'll considering adding support for that in a future update.
 

Mr. S

Smash Apprentice
Joined
Oct 11, 2014
Messages
84
Location
Ann Arbor, MI
Every character has a little block of code that handles special subactions. It's pretty cool. It's fairly easy to find in the .dol; the blocks of code are located above other blocks that read "Ply<respectivecharacter>_<action>"
 

Sharur

Smash Rookie
Joined
Feb 16, 2015
Messages
2
Nice. How did you find them? Is that in a separate place from the "Article Floating Points"? We'll considering adding support for that in a future update.
It's above the what I guess is modelling stuff? (Just search ply[charactername] and scroll up) but each characters shields and specials extra priorities (movement, stop functions, specific move cancelling, body states) are all coded there
 

darkside1222

Smash Cadet
Joined
Apr 22, 2010
Messages
31
Nice work so far on this! I was wondering if the actual bosses master hand and crazy hand would be supported? I'm pretty sure they have different subactions and such
 
Last edited:

Tater

Smash Journeyman
Joined
Apr 10, 2014
Messages
201
Location
Socal
NNID
Taternater
3DS FC
2406-5307-2936
Cool, glad to hear you've got some progress. But yeah, no rush man. Take your time.
I'm glad I didn't work on throws then, haha. I was so close to doing that yesterday but decided against it. For the throws did you use my Hitbox one as a guideline? And did you use my bit set and read functions to read/write to the "int[] data" array?
Yessir.


I've also been wondering about being able to edit the iso directly, because GCRebuilder is pretty annoying to have to go through every time. I have done very little research on the topic, but from what I've seen there are 3rd party libraries written that look like they could do what we want. As far as I'm aware there is not a 1st party library for editing iso's.
I was looking into using Loopy to open the ISO, but I'm unfamiliar with Maven and I'm either missing something simple or setting it up isn't very intuitive. Getting loopy/maven working is next on my to-do list.


EDIT: Also, I've been thinking: We might want to set up a github account(is that how it works?) so that we see changes that each other makes in the code in real-time so there's no conflicts/redundant programming(Like what almost happened with throws haha)
 
Last edited:

Mr. S

Smash Apprentice
Joined
Oct 11, 2014
Messages
84
Location
Ann Arbor, MI
If you're testing anything on Dolphin, you can always just load the .dol. You would have to set the apploader path and stuff like that, but you won't need to use GCRebuilder.
 

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
Yessir.




I was looking into using Loopy to open the ISO, but I'm unfamiliar with Maven and I'm either missing something simple or setting it up isn't very intuitive. Getting loopy/maven working is next on my to-do list.


EDIT: Also, I've been thinking: We might want to set up a github account(is that how it works?) so that we see changes that each other makes in the code in real-time so there's no conflicts/redundant programming(Like what almost happened with throws haha)

Yeah, it wouldn't be a bad idea to get our work on github. However, I think something might be coming up where I'll have to take a break from this project soon. I know that's really vague... I'll get back to you with a better answer on that this weekend. I just don't want to set it up and then have to disappear.





@ D darkside1222
I plan to add them into the program at some point. However, the program does not currently support character specific subactions, so I'd have to make that a thing first. Honestly I'm not gonna make Master/Crazy hand a big priority since I don't think many people would find a use for it.

@ M Mr. S , Oh I didn't realize you could do that. I might have to give that a try.
 

Achilles1515

Smash Master
Joined
Jun 18, 2007
Messages
3,211
Location
Cincinnati / Columbus OH
@ Tater Tater ,

don't forget about this float!

I love what you've done so far Ampers. Keep up the good work.

Regarding the whole GCRebuilder thing, you guys don't need to use that program at all because you're not modifying the length of files. It would probably be advantageous in the long run to have a system like the Melee Toolkit, where you can just point it to an ISO and load specificDATs from there. With the ability to modfiy and save directly to ISO. But the main point is that the only time you ever need to "rebuild" is if you add files to the game or change the length of a file [make it larger]. Otherwise, it's just a 1:1 replacement and you don't need to touch all the other stuff.
 
Last edited:

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
@ Tater Tater ,

don't forget about this float!

I love what you've done so far Ampers. Keep up the good work.

Regarding the whole GCRebuilder thing, you guys don't need to use that program at all because you're not modifying the length of files. It would probably be advantageous in the long run to have a system like the Melee Toolkit, where you can just point it to an ISO and load specificDATs from there. With the ability to modfiy and save directly to ISO. But the main point is that the only time you ever need to "rebuild" is if you add files to the game or change the length of a file [make it larger]. Otherwise, it's just a 1:1 replacement and you don't need to touch all the other stuff.

Thanks for the kind words man. It really means a lot coming from you.

What you described is actually exactly what I'm hoping the program will eventually be able to achieve. I still haven't done much research on the topic but I think that is definitely doable. That might be my next task if @ Tater Tater hasn't already started on it.
 
Last edited:

TerryJ

Smash Journeyman
Joined
Apr 12, 2010
Messages
488
Location
BEST COAST, WA
NNID
1337-1337-1337
3DS FC
1337-1337-1337
I'm trying to get this to run, but nothing comes up when I try to open it. I've got the latest Java and I can see the process come up for a moment in task manager but then it just disappears after a second. What could be causing this?
I also just tried it out on my laptop, still same problem. Was this made with a specific version of Java or something? I might try it on my roommates computer if all else fails but I don't know if it will make a difference.
 
Last edited:

Mr. S

Smash Apprentice
Joined
Oct 11, 2014
Messages
84
Location
Ann Arbor, MI
I'm trying to get this to run, but nothing comes up when I try to open it. I've got the latest Java and I can see the process come up for a moment in task manager but then it just disappears after a second. What could be causing this?
I also just tried it out on my laptop, still same problem. Was this made with a specific version of Java or something? I might try it on my roommates computer if all else fails but I don't know if it will make a difference.
Is Crazy Hand in the same directory as your root? If not, that's what's causing it to not open.
 

TerryJ

Smash Journeyman
Joined
Apr 12, 2010
Messages
488
Location
BEST COAST, WA
NNID
1337-1337-1337
3DS FC
1337-1337-1337
Is Crazy Hand in the same directory as your root? If not, that's what's causing it to not open.
Wow, it appears that I was dumb enough to not fully read the instructions. Thank you.
 

Ripple

ᗣᗣᗣᗣ ᗧ·····•·····
Joined
Sep 4, 2006
Messages
9,633
hey @ Ampers Ampers , I've found out that the jump H Max velocity is actually ground to air H multiplier. Magus' original MH program has it wrong also. I have no idea what the value above it actually affects buts certainly not H momentum

you can easily test it by changing the value to something high on someone like luigi and then just doa running jump
 
Last edited:

Magus420

Smash Master
Joined
Dec 13, 2003
Messages
4,541
Location
Close to Trenton, NJ Posts: 4,071
Your MH has this right?

0x044 - Ground to Air Jump Momentum Multiplier
0x048 - Jump H Maximum Velocity

If so, that is correct. When you jump from the ground, your X speed is:

(Current X Speed * [0x044]) + (X Directional Input * [0x03C])
--Capped at a maximum of [0x048]
 

Ripple

ᗣᗣᗣᗣ ᗧ·····•·····
Joined
Sep 4, 2006
Messages
9,633
that's weird though, because if I just change 0x48 to 3 on luigi, he still gets a huge boost of momentum from jumping. but I can see now youre right, I thought that the multiplier would have some sort of effect if changed to a really high number but it doesn' do anything unless its really low
 
Last edited:

Achilles1515

Smash Master
Joined
Jun 18, 2007
Messages
3,211
Location
Cincinnati / Columbus OH
that's weird though, because if I just change 0x48 to 3 on luigi, he still gets a huge boost of momentum from jumping. but I can see now youre right, I thought that the multiplier would have some sort of effect if changed to a really high number but it doesn' do anything unless its really low
So Luigi must just hit max velocity very quickly after jumping.
 
Last edited:

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
@ Achilles1515 Achilles1515 ,

Once this program is capable of loading iso's directly, I was considering adding a feature that would automatically install the 20XX hack to a supplied iso with the press of a button. I think I could even incorporate GCReEx too so that it automatically would set up your files for Dios Mios.
This way the non-modding folks wouldn't have to fiddle with a whole lot of unfamiliar stuff to get it set up. How would you feel about this? If you think it's a good idea, would you be alright with me including the file replacements for the 20XX pack in my program?
 
Last edited:

CeLL

Smash Lord
Joined
Jan 26, 2014
Messages
1,026
Location
Washington
@ Achilles1515 Achilles1515 ,

Once this program is capable of loading iso's directly, I was considering adding a feature that would automatically install the 20XX hack to a supplied iso with the press of a button. I think I could even incorporate GCReEx too so that it automatically would set up your files for Dios Mios.
This way the non-modding folks wouldn't have to fiddle with a whole lot of unfamiliar stuff to get it set up. How would you feel about this? If you think it's a good idea, would you be alright with me including the file replacements for the 20XX pack in my program?
I believe @ Doq Doq has made a 20XX installer like this.
 

Achilles1515

Smash Master
Joined
Jun 18, 2007
Messages
3,211
Location
Cincinnati / Columbus OH
@ Achilles1515 Achilles1515 ,

Once this program is capable of loading iso's directly, I was considering adding a feature that would automatically install the 20XX hack to a supplied iso with the press of a button. I think I could even incorporate GCReEx too so that it automatically would set up your files for Dios Mios.
This way the non-modding folks wouldn't have to fiddle with a whole lot of unfamiliar stuff to get it set up. How would you feel about this? If you think it's a good idea, would you be alright with me including the file replacements for the 20XX pack in my program?
DoctorKirby started one, but I know there were some bugs with it and stuff, so idk if it ever fully came to fruition.

I do like the idea, and yes, of course you can use the 20XX files. If you do so, then you will certainly need to be rebuilding the ISO using GCR's logic in whatever fashion, because I am modifying file sizes/adding many files to the system. The download pack for 4.00 will look much different than the current one.
 

Doq

Smash Lord
Joined
Dec 28, 2012
Messages
1,037
Location
The Lab, Sweet Home, OR
I believe @ Doq Doq has made a 20XX installer like this.
DoctorKirby started one, but I know there were some bugs with it and stuff, so idk if it ever fully came to fruition.

I do like the idea, and yes, of course you can use the 20XX files. If you do so, then you will certainly need to be rebuilding the ISO using GCR's logic in whatever fashion, because I am modifying file sizes/adding many files to the system. The download pack for 4.00 will look much different than the current one.
I did start it, but the image editor I had was buggy af and it ended up corrupting images.

It was also command-line only, so I do not have any GUI code.
 
Last edited:

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
Alright, well DoctorKirby if yours ended up buggy, I'll give it a shot myself then. @ Achilles1515 Achilles1515 , any idea when version 4.0 will be out? And do you think there's a chance I could get an early build of it to get my program set up for it? If not I understand.
 

Ampers

Smash Journeyman
Joined
Feb 2, 2015
Messages
237
Location
St. Louis, MO
@ Ampers Ampers I may have found some stuff on relocating data to change the length of subaction programs; if it turns out that I actually found some usable stuff, do you want the notes?
Nice, I'd be interested in seeing that if you've got notes on it. Although I think I might already know how it would work. My approach would be to adjust the script offset pointer to point to a new place if additional events are added in. Although I know Stratocaster mentioned certain problems with "goto" that might arise from this.
Is that similar to what you were thinking? If not I'd love to hear it.

By the way, when I first started this project you expressed some interest in helping out with the coding. Would you still like to? It's up to you, I just thought I'd ask.
 

MagicScrumpy

Smash Journeyman
Joined
Feb 25, 2015
Messages
251
Location
Ann Arbor, Michigan
Yeah, that's what I had in mind. What problems with "goto" would arise? Couldn't the "goto" commands themselves just be changed and be fine from there? Or is there another piece I'm not considering?

I'm going to have to play around with it to see what happens.

Yeah, I'd be down to help out with coding. If there's anything that I can do to lighten the burden, I'd be happy to give it a go.
 
Last edited:
Top Bottom