YesNoOk
avatar

Character Polishing Discussion for eventual Tutorial Building (Read 53931 times)

Started by RobotMonkeyHead, December 26, 2012, 08:07:39 pm
Share this topic:
Re: Character Polishing Discussion for eventual Tutorial Building
#21  January 04, 2013, 04:05:31 am
  • avatar
  • ******
    • Thailand
Unless you become progressively OCD about programming like I have, in which case you will want to optimize as much as possible and delete duplicate sprites, only use even numbers, use a specific order for controllers/functions, label all similar controllers the same, order animations and sprites a certain way, and AAAAAHHHHHHHHHHHHH.
Re: Character Polishing Discussion for eventual Tutorial Building
#22  January 04, 2013, 06:19:19 am
  • ******
  • Portrait Prodigy EX+
    • mugenguild.com/forum/topics/saikoros-high-resolution-mugen-portraits-fatal-fury-full-set-145724.0.html
Rajaa keeping it real. I've got a lot to look forward to, don't I??

The prospect of creating becomes more appealing every day. Gotta start somewhere I suppose....
All of your Mugen Portrait needs may be found HERE.

I'd like to report two robots on the MFG forums: One is EXShadow. The other is Saikoro.
There should be a Saikoro plugin for Photoshop.
Re: Character Polishing Discussion for eventual Tutorial Building
#23  January 04, 2013, 01:16:16 pm
  • avatar
  • ****
  • I stand alone.
    • UK
    • hyperionx.net
I've kinda wondered why no one has tried to start making a "full game" for things such as POTS style, CVS2, etc. Basically making a new KFM (Ryu?) with no regards to other characters, just built to all work with each other with standard community set vars, special anims, etc.

If you do that, won't you just get a bunch of people that insist on plugging in their own chars or extracting the chars from this game elsewhere only to find it not too compatible?

At the moment for my project I am making the "game version" and a "offline version" (lack of a better name) for use outside of the game. The plan is to give the option to download the chars seperately (which will work in people's own mugen without any tweaking; the full game version has different portraits suited for the game's screenpack)

---

That MUGEN Study Files site is blocked for me at work, but I take it the tutorials are not as simple as they should be? The questions you ask, here are some none technical answers and is answered at its simplest level:

Quote
How would one go about coding chaining attacks, like Jab into Strong into Fierce Punch.

Add a trigger in the command file that allows you to activate Fierce Punch when Jab connects. This code will go into the Fierce Punch activation area.

Quote
How would I code a multi hit attack, like a three string fierce punch??

Lets say your character's fierce punch has 2 sprites. So this will be a 2-sprite animation. 1st sprite is character pulling arm back, ready for punch. 2nd sprite is character punching.

In the character's CNS file, code a hitdef which will define the hit.

In the animation, make a 6-sprite animation using the same 2 sprites. Add a red hit box to the character's fist on each of the character punching sprites (you'll need to do this 3 times). Add some animation time, i.e. 5 tics for each "ready punch" and 3 tics for each "punch"

Going back to the hitdef, have this hitdef activate on animation 2, 4 and 6. In the hitdef make sure to give it a long enough hit time so it will register as a multihit (or the enemy can block or get out of this multihit).

BONUS -- make another hitdef to trigger on animation 6 only which will knock back the enemy

In the command file, allow the use of this move when the character is standing (state 0)
BONUS -- add extra "triggers" to allow the use of this move if a jab or fierce punch connects

Quote
How would I properly code a Dragon Punch??

Same as above, but this time we only have 1 hitdef and 2 sprite animation. We add an extra code that moves your character forwards and up. Change the hitdef to hurl the enemy backwards and into the air a bit. Need to get a tiny bit technical here.

Code:
[State 1050, 2]
type = PosAdd
trigger1 = AnimElem = 2
x = 15
y = 30

Line 1 is just a reference to state that this is part the code.
Line 2 states what this "controller" does. In this case, posadd ... think of it as acceleration
Line 3 specifies when it should be triggered (on animation 2)
Line 4 is the speed, x being horizontal. This will push your character forwards
Line 5 is also the speed, but y being vertical. This will push your character up.

So this "pushes" your character forwards by 15 whatever up 30 whatever. I'm unsure of the proper values to use but this might be a little too high. This is where trial and error comes into play.

NOTE: This is very untidy and probably very very wrong. Someone is probably in line to assrape me for giving such advice out. I'm confident this character will "fall down to the ground" normally after it ends but I'm probably missing something, so if it floats off the screen (which it shouldn't, because we only defined it to trigger on animation 2) then we'll need to add extras to help pull it back down :P.

But at the base of it all, every move/attack created in MUGEN is just basically that, just your normal attack. We just add layers and layers of complexity on top of it to make it look like a different attack/move. Otherwise at the end of the day, if you imagine a character to be ... (RMH might have some fun with me here again :beam: ) a pizza base (no moves, standard stuff such as 3 stand, air and crouch punches and kicks, and all required animations for get hit and win and intro etc) ... then all you are essentially doing is taking these punches and kicks and adding topping on them.

Toppings can include but not limited to: graphical effects, sounds, power up/reduce, instant kill, self-damage, movement (i.e. a "blindside" attack where you will warp to your enemy's face and do a punch)

What I ultimately do not want to do is to over complex things which will inevitably demotivate/demoralise people. It's best to start off simple and wrong and then move on to good (perfect if you have OCD) and right.
Don't PM me. =(
(•_•)

( •_•)>⌐■-■

(⌐■_■)
Last Edit: January 04, 2013, 01:24:26 pm by ⒻⓊⒸⓀⓎⒺⒶⒽ
Re: Character Polishing Discussion for eventual Tutorial Building
#24  January 04, 2013, 01:24:15 pm
  • ******
  • Limited time to use Infinite power !
    • France
    • network.mugenguild.com/cybaster/
Unless you become progressively OCD about programming like I have, in which case you will want to optimize as much as possible and delete duplicate sprites, only use even numbers, use a specific order for controllers/functions, label all similar controllers the same, order animations and sprites a certain way, and AAAAAHHHHHHHHHHHHH.
That's quite hard to achieve when your spriters keep sending you new sprites, asking you to insert new frames in the middle of animations, making you change all your animelemtime triggers and SFF numbering, sending you entirely new animations without the same framecount, sending you sprites for which you don't even know if there are duplicates with other animations or not. After a while, you just say "fuck it", and you character becomes a functional clusterfuck of all sorts, but players are happy with it. ;P
Re: Character Polishing Discussion for eventual Tutorial Building
#25  January 04, 2013, 01:27:21 pm
  • avatar
  • ****
  • I stand alone.
    • UK
    • hyperionx.net
Quote
and you character becomes a functional clusterfuck of all sorts, but players are happy with it. ;P

Most of it would be invisible to your average everyday punter anyway.

Think how happy you were when you were first introduced into MUGEN, probably via some shittily compiled game.

I remember I had several weeks of fun with Dragonball Z MUGEN EDITION 2 ! And it was well put together.
Don't PM me. =(
(•_•)

( •_•)>⌐■-■

(⌐■_■)
Re: Character Polishing Discussion for eventual Tutorial Building
#26  January 04, 2013, 02:52:39 pm
  • ******
    • www.justnopoint.com/
If you do that, won't you just get a bunch of people that insist on plugging in their own chars or extracting the chars from this game elsewhere only to find it not too compatible?

Yeah but those projects wouldn't be made for those people. It'd be more like MUGEN CVS2 edition, or MUGEN KOF edition. I'd like a MUGEN Darkstalkers edition myself.

Not everyone likes playing mugen as is since very rarely do any 2 characters play well with each other you get limited to a handful of characters made by a certain author or 2. For that reason I don't ever even play MUGEN. I really need to download Capcom vs the World's new version again. See what all was fixed. The full game package is all I want.
Re: Character Polishing Discussion for eventual Tutorial Building
#27  January 04, 2013, 03:13:31 pm
  • **
  • turtles go
can we please post pictures or snapshots to help noobs like me?
it would help me a lot.
And why not take a char badly coded and post step by step how to update him??
Re: Character Polishing Discussion for eventual Tutorial Building
#28  January 04, 2013, 04:09:03 pm
  • avatar
  • ****
  • I stand alone.
    • UK
    • hyperionx.net
can we please post pictures or snapshots to help noobs like me?
it would help me a lot.
And why not take a char badly coded and post step by step how to update him??

I'll need to look at MUGEN Study's stuff first to see how well that is actually done. I noticed that guy posted on the Elecbyte forums and loads of people pointed out a bunch of errors or improvements. But it was way too much for me to read and absorb for now.

If we were to take a badly coded char, this could have lots of implications:

1. It might suggest the creator sucks
2. Possible fights will break out
3. Too broken to fix

It would be better to take a base KFM with all the specials stripped out and then tutorial up on how to add them back in (maybe with alterations). That way, you learn the basis of it all, and then you can move on to tweak/modify the base stuff.

If you do that, won't you just get a bunch of people that insist on plugging in their own chars or extracting the chars from this game elsewhere only to find it not too compatible?

Yeah but those projects wouldn't be made for those people. It'd be more like MUGEN CVS2 edition, or MUGEN KOF edition. I'd like a MUGEN Darkstalkers edition myself.

Not everyone likes playing mugen as is since very rarely do any 2 characters play well with each other you get limited to a handful of characters made by a certain author or 2.

Ah I see.  Yeh, it'll be made for the people that want a pre-determined environment (these "editions") and to "play" that exclusively without any external plugs. I'm not sure if this is just a creator's bane that they become not interested in "playing" anymore lol
Don't PM me. =(
(•_•)

( •_•)>⌐■-■

(⌐■_■)
Re: Character Polishing Discussion for eventual Tutorial Building
#29  January 04, 2013, 04:23:36 pm
  • ******
    • www.justnopoint.com/
I don't think so. I still haven't actually "created" anything :P

I'm just picky about the kinds of fighters I do like to play. As I've gotten older I get pickier and pickier.
Re: Character Polishing Discussion for eventual Tutorial Building
#30  January 04, 2013, 08:31:06 pm
  • ******
  • Portrait Prodigy EX+
    • mugenguild.com/forum/topics/saikoros-high-resolution-mugen-portraits-fatal-fury-full-set-145724.0.html
Interesting stuff. At first, it's a little overbearing to read. But once you "absorb" all of that, it actually makes sense. Thanks for your excellent insight FuckYeah. I couldn't get your name to quote.

I'm liking where all of this is going. Perhaps the tutorial can start with that stripped down KFM character and explain on how to build upon his "pizza" with specific "toppings." My interest here is building, that's for sure.
All of your Mugen Portrait needs may be found HERE.

I'd like to report two robots on the MFG forums: One is EXShadow. The other is Saikoro.
There should be a Saikoro plugin for Photoshop.
Re: Character Polishing Discussion for eventual Tutorial Building
#31  January 04, 2013, 09:37:55 pm
  • ***
  • Ikemen GO / Mugen 1.1 characters in development.
    • Philippines
    • www.dailymotion.com/SeraphsAres2013
Don't forget about the main data on your character(s).

Data like this -
Code:
attack.dist = 90	;Default attack distance (by pixel.)
proj.attack.dist = 90 ;Default attack distance for projectiles (by pixel.)
head.pos = 0, -114 ;Approximate position of head (by pixel.)
mid.pos = 0, -80 ;Approximate position of midsection (by pixel.)
-are important. Some creators (like me) do use these numbers in their characters. Mainly these numbers are important for AI coding, but these numbers can be used if you're using a projectile or helper that homes based on their mid.pos or head.pos (for headshots).

Also, if you're going to have testers for your character, have testers with experience in that fighting game-style. Unless if it's a completely custom game-style, of course. It's not necessary, but it does help.

And for positioning characters, onion skinning does help; but if the character is taking big steps when attacking and you want the character's sprite to stay in the middle of the X axis, use the PosAdd state controller. Take the amount of pixels from the leg it started, move it to the desired axis (mainly put the axis in between the legs of the character) and use the difference of that number (starting X - ending X) in the value of the PosAdd state controller.

Code:
[State PosA, 1]
type = PosAdd
trigger1 = animelemtime(14) = 0
x = floor(40 * const(size.xscale))

The * const(size.xscale) helps if you're scaling characters.

And.. ..I think I just confused some people.
Re: Character Polishing Discussion for eventual Tutorial Building
#32  January 04, 2013, 10:16:38 pm
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
JNP: I did the whole "Do what the fuck i like" in SBME. They had 400 life. I made up my own animation for the spinning about your axis. Crouch was disabled etc etc. It still had SOME regular mugen stuff in it, but mostly it was me making it up.

After release people put their own stuff in and complained that the sonic stuff was too weak or took it out, complained that it vanished when it crouched AND that it was too weak.

Morons.


In M.U.G.E.N there is no magic button

They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance.
Re: Character Polishing Discussion for eventual Tutorial Building
#33  January 04, 2013, 11:14:52 pm
  • ****
  • Shakespear.
Ok so I whipped up a quick outline for the tutorial.  Not near writing it yet, just figured it would be better to have early on in the process so we can make adjustments to it as we want.  As we come up with new material, I can just add a placeholder in here for it.  I realize there are a lot of sub sub sub...points to add still and again this thing is not remotely concrete, and totally open to any input suggestions, section or total revamps whatevs etc. 

1 - Introduction
  1.1 - Scope of Tutorial
  1.2 - Requirements (FF3 & Training Dummy)
2 - Alignments
   2.1 - Aligning Sprites
      2.1.1 - Onion Skin
      2.1.2 - Y Axis Centering
      2.1.3 - Holding and returning foot position
         2.1.3.1 - PosAdd
      2.1.3 - Lower Back hold position for aerials
   2.2 - Aligning Animations
      2.2.1 - Mention of clsns while aligning anims
3 - Clsns
   3.1 - Simplicity
   3.2 - Accounting for Motion
   3.3 - Infinite Priority
4 - Damage Exchange
   4.1 - Training Dummy
      4.1.1 - Quick how to / overview
   4.2 - Life, Attack, Defense
   4.3 - Damage Value Suggestions
       4.3.1 - Character Types (Grappler, Aerial etc...)
   4.4 - Hitstun
      4.4.1 - Frame Advantage
5 - Constants
   5.1 - Data
   5.2 - Size
   5.3 - Velocity
   5.4 - Movement
6 - Finishing Touches     
   6.1 - Play testing
     6.1.1 - List of characters to play test against (in game)
   

Re: Character Polishing Discussion for eventual Tutorial Building
#34  January 04, 2013, 11:37:10 pm
  • ******
  • Portrait Prodigy EX+
    • mugenguild.com/forum/topics/saikoros-high-resolution-mugen-portraits-fatal-fury-full-set-145724.0.html
@RobotMonkeyHead: You're piquing my interest here. Please keep doing what you're doing; you have someone waiting to get started on the right foot. :sugoi:

Now that I think about it, how about an absolute basic section for simple coding of movements like walking back/forward, jumping, etc and a basic attack section. That way you can comment on how and why these codes are in play. Then subsequent chapters can elaborate on specialties like ex moves and whatnot, all built from this foundation.

Like adding toppings to a pizza. Goddamnit, that stuck with me.
All of your Mugen Portrait needs may be found HERE.

I'd like to report two robots on the MFG forums: One is EXShadow. The other is Saikoro.
There should be a Saikoro plugin for Photoshop.
Last Edit: January 04, 2013, 11:40:29 pm by Saikoro
Re: Character Polishing Discussion for eventual Tutorial Building
#35  January 04, 2013, 11:41:59 pm
  • ******
  • Legendary XIII
  • I am the eye of the storm to come!
    • New Zealand
    • network.mugenguild.com/cyanide/
You don't code walking or jumping. As this is a beginner tutorial i imagine that will sort itself out.


In M.U.G.E.N there is no magic button

They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance.
Re: Character Polishing Discussion for eventual Tutorial Building
#36  January 04, 2013, 11:43:26 pm
  • avatar
  • ****
  • I stand alone.
    • UK
    • hyperionx.net
RMH: Sorry if this derails it slightly but it seems it's branching here into

1. Your tutorial, seemingly for people that know what they're doing already and would like some refined documentation around it
2. The completely "new to programming"

I'm just gonna continue into what Cyanide, JNP and Saikoro are talking about.

Interesting stuff. At first, it's a little overbearing to read. But once you "absorb" all of that, it actually makes sense. Thanks for your excellent insight FuckYeah. I couldn't get your name to quote.

I'm liking where all of this is going. Perhaps the tutorial can start with that stripped down KFM character and explain on how to build upon his "pizza" with specific "toppings." My interest here is building, that's for sure.

Pleasure, but I'm still unsure if it actually makes that much sense. I'll try to re-explain briefly:

Each function/move/feature in a character is essentially the pizza base :P

From your usual kick, punch, taunt, get hit, get up... but different pizza bases depending on category. However, we're creating something here that essentially, as a whole, is just adding more attacks. To start off with, creating a character by replacing all of KFM's sprites with your own, and then recreating the attacks, is just essentially what you're doing (before thinking about character specific data) doing to create a char. Everything else can be changed/improved from there once the basics of adding your own "attack" becomes normal to you. Because KFM (another base) already contains the usual such as walking, jumping, crouching, getting hit, getting up, win pose, time out pose etc you don't need to think about such things. Cyanide said, you don't need to code walking, jumping, because it's all laid out for you by KFM.

Thinking purely on attacks:

All attacks (lets not think about anything complex here, some characters will say, for example, have a helper that does the attack for them) will have at least 1 hitdef that defines the attack(s), the hitdef is the pizza base here. And then, as mentioned:
Quote
Toppings can include but not limited to: graphical effects, sounds, power up/reduce, instant kill, self-damage, movement (i.e. a "blindside" attack where you will warp to your enemy's face and do a punch)

So this leaves 2 more things you have to "link" together (And is how the AIR (animation), CMD (command) and the CNS (programming) files work together). It can be summed up as:

An attack (CNS) has a reference to the animation (AIR) linked by a unique ID. The command (CMD) to pull off this attack is defined in the CMD file, which has an unique ID linking to the CMS. The unique IDs between CNS<->AIR and CMD<->CNS does not have to be the same, but can help with keeping things tidy.

CMD relies on what you define to activate it in the CNS which relies on the AIR to display it


Don't PM me. =(
(•_•)

( •_•)>⌐■-■

(⌐■_■)
Re: Character Polishing Discussion for eventual Tutorial Building
#37  January 05, 2013, 02:03:03 am
  • ****
  • Shakespear.
No the axis is still different for each character. It's just that once you get the axis you simply set all sprites to that axis and they are aligned. AOKManiac/Insanius is good about supplying the axis for you with his packs in a read me. I am doing that as well starting with my new Dee rips I just released.

As for the animations. Again, if the sprites are ripped like mine, Kong, AOK, etc get them they have a lot of duplicates. Just use the duplicates in the packs as they are. They are in the correct order for the moves and FF3 will link all duplicate sprites for you later anyway.
Ok so maybe I could say something like "check the readme to see who is credited for the sprites.  They may be able to forward you a readme with all the proper alignments."  If not, yada yada yada...  Sound about right?


Throws can also have varying damage based on if they can be comboed afterwards or not. For example, if a throw wall bounces, its damage should be lessened a bit since its juggles can be limited depending on position. If a throw just keeps P2 in the air right next to the character (like Gouken), it's best to not give it any damage since any hit is basically guaranteed.
For sure. I'll mention that in the damage exchange section.

@Djoulz: Hey if you ever want a basic breakdown of how Mugen handles code in general, there's a decent explanation in my beginners editing tutorial.. Hope it helps!

@Saikoro: Glad to hear it man!  As a professional chef, of course I like the toppings on the pizza analogy.  'Even topping distribution damn it!' haha that's what this tutorial is going to be about I think, more the toppings than the pizza, and how to get 'even topping distribution'.  For the crust and sauce, I'll probably link to the Mugen Study Files and maybe Ryon's character creation tutorial.  This will be more for taking an already baked pizza, putting some gloves on and touching up the presentation.

@ⒻⓊⒸⓀⓎⒺⒶⒽ:No worries about derailing, I'm kind of a tangential person myself.  I'll just go back to the focus as it becomes necessary ;) 


can we please post pictures or snapshots to help noobs like me?
it would help me a lot.
And why not take a char badly coded and post step by step how to update him??
Yes, plenty of pictures in this one for sure.  It's geared towards beginner / intermediate level coders & editors.


Don't forget about the main data on your character(s).

Data like this -
Code:
attack.dist = 90	;Default attack distance (by pixel.)
proj.attack.dist = 90 ;Default attack distance for projectiles (by pixel.)
head.pos = 0, -114 ;Approximate position of head (by pixel.)
mid.pos = 0, -80 ;Approximate position of midsection (by pixel.)
-are important. Some creators (like me) do use these numbers in their characters. Mainly these numbers are important for AI coding, but these numbers can be used if you're using a projectile or helper that homes based on their mid.pos or head.pos (for headshots).
Right, that should probably go into Constants section, and will use Training Dummy to test them.

Also, if you're going to have testers for your character, have testers with experience in that fighting game-style. Unless if it's a completely custom game-style, of course. It's not necessary, but it does help.
Yeah asking for testers would be a great step too.  Adding for sure.  I'm not sure if this is a response to another idea I was suggesting about a list of characters to pit them against, but if so what I meant was to have a list of other characters to download and put in your roster so you can test the character you're editing by playing against their AI.  As Banana pointed out this might help to illuminate some issues that don't arise in training mode. 

And for positioning characters, onion skinning does help; but if the character is taking big steps when attacking and you want the character's sprite to stay in the middle of the X axis, use the PosAdd state controller. Take the amount of pixels from the leg it started, move it to the desired axis (mainly put the axis in between the legs of the character) and use the difference of that number (starting X - ending X) in the value of the PosAdd state controller.

Code:
[State PosA, 1]
type = PosAdd
trigger1 = animelemtime(14) = 0
x = floor(40 * const(size.xscale))

The * const(size.xscale) helps if you're scaling characters.

And.. ..I think I just confused some people.
I know just what you mean, and I'll be sure to point that out in the alignment section.  It ends up being pretty obvious which attacks have posadd in them, so I'll make a note to check the debug for which attack states move the character forward or back entirely. 




Re: Character Polishing Discussion for eventual Tutorial Building
#38  January 05, 2013, 02:10:28 am
  • avatar
  • *****
  • I'll do it myself.
    • France
    • Skype - djoulianne
    • network.mugenguild.com/cybaster/hosted.html
thanks for that, RobotMonkeyHead
Re: Character Polishing Discussion for eventual Tutorial Building
#39  January 05, 2013, 02:12:07 am
  • ****
  • Shakespear.
No prob mang!

EDIT:@Saikoro: This might be helpful for you too, now that I think of it.  Check out the basics of coding section, it will give a breakdown of how Mugen reads code, and a glimpse at how it's structured.  Not quite a recipe or anything, just some framework, really. 
Re: Character Polishing Discussion for eventual Tutorial Building
#40  January 05, 2013, 02:21:49 am
  • ******
  • Portrait Prodigy EX+
    • mugenguild.com/forum/topics/saikoros-high-resolution-mugen-portraits-fatal-fury-full-set-145724.0.html
@RobotMonkeyHead: Personal Chef!? Dude, that's awesome!! The amount of interesting and talented people here on Guild never ceases to amaze me. Fun fact: Two4Teezee is an aerospace engineer.

One thing I'd like to request is pointing us newbs in the direction of, or at least posting where we could find, that stripped down Kung Fu Man. I'd like to start with the absolute basics. Reading this tutorial along with some additional input from Ryon's videos, will help a ton!!

Thanks for starting this thread!! :lugoi:
All of your Mugen Portrait needs may be found HERE.

I'd like to report two robots on the MFG forums: One is EXShadow. The other is Saikoro.
There should be a Saikoro plugin for Photoshop.