News:

Rings of Reznor!

Main Menu

Matching the Absorbing Man (an FFX Question)

Started by BentonGrey, January 05, 2012, 03:37:16 AM

Previous topic - Next topic

BentonGrey

Howdy guys, some time ago (I'm inclined to say years) I remember reading a thread about how to get the Absorbing man's skin to match his material type.  Did I imagine/misconstrue this?  What I'm interested in is having the skin shift whenever AM changes materials within a mission.  Is that possible?  I remember it had something to do with subtypes, which I've never understood well.
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

laughing paradox

It's really kind of simple.

This is from FFX3.3's manual. It applies to the Asborb Material, Absorb Powers and Absorb Energy attributes.

Energy Absorbers look for a special hero file when they use this power based on the characters name plus the material type in parentheses afterwards. This allows you to customize this ability to the Nth degree. When a Energy Absorber triggers an absorption, the game looks for a hero file name based on their original name with a energy tag such as '(fire)' for fire. If this hero file exists, the character will morph into it. For example, when copybot absorbs a fire enemy, he'll turn into copybot (fire), if that hero file exists. If copybot (fire) then absorbs an energy opponent he'll turn into copybot (energy). You can make the alternate forms with any abilities and powers you wish as you're really just making another hero file the Energy Absorber 'shapeshifts' into. If there is no hero file to morph into then the Absorber's material changes and they acquire certain abilities or changes, depending on the energy absorbed. All Energy forms get the Energy Material.

Just look at FFX3.3 for the different subtypes you can use. (Fire, Liquid, Diamond, Sound, etc).

It's really cool, but it doesn't just work for Absorbing Man. You can use it for Rogue, where she'd be more of a female Human Torch whenever she absorbs fire, for example.

Randomdays

That's neat. I always wondered how to use all the skins that came with AM and the Mad Thinker's Android.

I don't suppose you could use it on the Adaptoid so that he would gain Hawkeye's bow or Cap's Shield when touched him? Or Amazo with the JLA?

BentonGrey

Wow LP, thanks!  That is EXACTLY what I wanted to know, and I totally understood it.  Ha, I had no idea it would be so simple.  So, would this also work for built-ins?  For example, if I have absorbman as my default name, flesh, etc., and have absorbman (fire), absorbman (stone), etc., would FFX recognize them?
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

spydermann93

Quote from: BentonGrey on January 05, 2012, 04:55:28 AM
Wow LP, thanks!  That is EXACTLY what I wanted to know, and I totally understood it.  Ha, I had no idea it would be so simple.  So, would this also work for built-ins?  For example, if I have absorbman as my default name, flesh, etc., and have absorbman (fire), absorbman (stone), etc., would FFX recognize them?

I have some Absorbing Man skins and hero files if you're interested in checking them out :)

I even have a file for Absorbing Man when he absorbs Mjolnir :P

style

Tried this a 1000 times never worked for me.  <_<
The Ultimate Fan!

BentonGrey

Thanks Spyermann, I'll be posting my build in a bit, and I'd love your feedback. 

Well, I've got this all set up, and I'm about to test it.  I'll let y'all know what I find.  Also, where do I indicate a character's subtypes?  Which file in the scripts section has that?  Where can I find information about that?  The FFX manual could really use a search feature. ^_^
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

BentonGrey

#7
Alright, no luck with built-in characters, but it does seem to work great with herofiles.  My built-in "absorbman" will not change into my built-in "absorbman (wood)", but he will change in to the same thing in a herofile.  Is there any luck that I could get one of the FFX crew to look at making this work with built-ins?
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

laughing paradox

You write the subtype by creating a subtype section in an m25ai file.

There's an example of it in the FFX manual. Look under M25 AI section, then AI Tactics Doc.

BentonGrey

Thanks LP!  Any ideas from folks in the know what it would take to make FFX look at built-in characters for the material types switch?  I love this feature, and I really want to use it in the mod.  I can't really do that though if it only works with Herofiles.  It isn't the end of the world if I can't feature this in Marvel Adventures, but I'm hopeful someone can tell me how to tweak this or come up with a simple fix.
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

Randomdays

If you made a new character and assigned the mesh/stats of the built in character, would that create a hero file?

BentonGrey

If you create it in the game's character creator itself, yes.  I simply copied the built-ins I created to generate herofiles, but the problem with just using these in the mod is that 1) their names won't display as anything other than their herofile names.  I can't create string entries and such for them, which is something that I like having in my mods.  2) I can't ship herofiles in one nice, easy to install folder like the rest of the mod.  Like I said, it isn't a huge deal, but it would be really cool if I can use this with built-ins.
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

hoss20

If you haven't already done it, I might suggest that you try your Absorbing Man out in just the standard FFX Rumble Room as a custom character first. This way, you can make sure the process is working correctly.

I used a few of my custom Absorbing Man hero files (absorbman, absorbman (stone), and absorbman (wood) and added them to my FFX dat files with EZHero. I then went into the Rumble Room and chose the built in version of Absorbing Man (absorbman) and was able to get the absorb switch to work when I absorbed stone and wood.

A few things to remember (please don't be offended by this, it's just "Troubleshooting 101"):
-Have you assigned the desired mesh/skin for the absorbed material? (ie; a stone skin when Absorbing Man absorbs stone)
-The Absorb Materials and Absorb Energy attributes default to adding attributes to a character based on the material absorbed if there isn't a hero file assigned to the change. I mention this, as it's possible the hero file changes you are noting may be the default changes and not necessarily reflect the hero files you want accessed. This would also indicate that, although, the attribute itself is working, the customizations you want aren't being read somewhow.
-Did you remember to brand your hero files in the FFX Control Centre? (I know, I know, but it has to be asked)

I also have to mention that none of my Absorbing Man hero files have corresponding M25AI files yet, so they don't have any subtypes assigned and the attribute customization still worked. In this instance, I think the subtype function is more for assigning material or energy types to heroes whose physical properties would be able to be absorbed. For example, let's say your Colossus hero file has Flesh for material and you gave him all of his invulnerabilties through Attributes and Passive Defenses. You can then give him the 'metal' subtype in his M25AI and then Absorbing Man would get a command to "Absorb Metal" when fighting him.

Anyway, I'm sorry if I confused you (or anyone else) or just went over stuff that you already knew or have tried.

BentonGrey

Hoss, that's very interesting.  Thanks for the response, and don't worry about offending me.  Ha, I have a tendency of overlooking the obvious.  If I'm reading that right, you were able to take a herofile AM, convert his alternate forms to built-ins, and have him able to perform the proper switches to those built-in files?  Did you delete or move the alternate form herofiles before you tested?  If not, the game might simply have been swtiching to them rather than the built-in ones.  Also, was your starting AM a herofile or a built-in?

My situation is thus: I have a built-in AM, added to the mod's .dats with M25's tool, and he works perfectly.  I created built-in alternate forms, but he would not switch to them.  He DID change material types, but the game seemed not to "see" the built-in alternate forms.  I copied those forms as herofiles, gave them the same names, renamed my built-ins so there wouldn't be any interference, tested, and he switched perfectly.  All tests were in the Marvel Adventures mod Rumble Room.  To answer your questions, yes, I made sure to brand after every change of built-in or herofile.  Yes, the mesh/skins, material types, and everything else were set.
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

BentonGrey

On a related note, can someone tell me what I need to change in here to make the Absorbing Man much more likely to change materials right away.  I find that in most matches the AI tends to not absorb anything and Thor cleans his clock right away.

Spoiler
['absorbman',
   ['target enemy',
      'weakness_melee_crushing',
      'weakness_area_crushing',
      'weakness_ranged_crushing',
      'not flying',
   ],
   ["timer", 'auto',
      'TUseRemedy()',
      'TFleeMelee(type="any",subtype="emitting_damage",time=0.96)',
      "TMeleeArea('absorbman prison rioting',time=6.51)",
      "TMelee('absorbman pinstripe special',time=2.4)",
      "TArea('absorbman prison ball quake',time=5.75)",
      "TMelee('absorbman jailbird smash',time=2.72)",
      'TAbsorbAlienMineral()',
      'TAbsorbDiamond()',
      'TAbsorbGas()',
      'TAbsorbAcid()',
      'TAbsorbSand()',
      'TAbsorbDivineMetal()',
      'TAbsorbSuperAlloy()',
      'TAbsorbAdamantium()',
      'TAbsorbCloth()',
      'TAbsorbWater()',
      'TAbsorbIce()',
      'TAbsorbConcrete()',
      'TAbsorbWood()',
      'TAbsorbAir()',
      'TAbsorbRubber()',
      'TAbsorbStone()',
      'TAbsorbMetal()',
      "TRanged('absorbman hurl prison ball',time=2.6)",
      "TMelee('absorbman ol ball and chain',time=1.75)",
      'TThrow(pickup_time=2.68,throw_time=2.88)',
      'TMoveTo(mindist=\'long\',time=0.96,subtype=["not emitting_damage","flying"])',
      'TMoveTo(mindist="melee",subtype=["not emitting_damage","not flying"],time=0.96)',
   ],
],
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

hoss20

So, I moved my custom Absorbing Man (original, stone, and wood) hero files from my custom heroes folder. The three forms noted still showed as built-ins, but no longer in my custom heroes. I chose Absorbing Man in the Rumble Room and when I tried to absorb stone, the Rumble Room crashed. I went back in, for the heck of it, and decided to absorb metal, rubber, and electricity (forms that I had not made built-ins) and I was able to absorb them and change form.

I am not skilled in modding and I'm sure you already knew this, but it looks like built-ins will still reference a custom hero file. I was thinking that the problem may be that for the switch to take place in FFX, you must use the following naming convention: name (material). But, as a built-in, the game assigns an underscore where there are spaces. So, the previous name becomes: name_(material). Could this be the problem? The example in my prior post only worked because I had custom hero files with the proper name. (I'm sure this is why you asked that question)

In regard to your Absorbing Man not absorbing things quickly enough, there is a "Special Targets" section that needs to manually added to the AI. This is from the M25 AI section of the FFX manual:
Quote['airwalker',  #Hero File Name
        ["target enemy",
            'not blind',
            'not flying', #Targeting Section
            'flying',
        ],
        ["special targets",
            "building", "object", "civilian", #Special Targeting Section
        ],
        ["timer", 'auto',
            'TUseRemedy()',
            'TFleeMelee(type="any",subtype="emitting_damage",time=0.88)',
            'TFleeMelee(time=0.88,situation="swarmed",movetype="fly")',
            "TMeleeArea('enhanced strength punch',time=1.4,energy=100,pct=60,subtype='higherhealththan or strongerthan')",
            "TArea('magnetic push',pct=70,energy=33,time=3.5,situation='swarmed')",
            "TArea('light blast',pct=70,time=3.5,energy=33,subtype='not blind',situation='swarmed')",
            "TRanged('geo-force',energy=33,time=2.5,pct=70,subtype=['clustered','not flying'],situation='not flying')",
            "TRanged('geo-force',energy=33,time=2.5,pct=30,situation='not flying',subtype='not flying')", #Tactics Section
            "TRanged('electrical blast',energy=33,time=2.5,pct=30)",
            "TRanged('power cosmic blast',energy=33,time=2.8,pct=30)",
            "TRanged('heat blast',energy=33,time=2.5,pct=30)",
            "TArea('magnetic push',energy=33,time=3.5,pct=30)",
            'TThrow(pickup_time=2.92,throw_time=2.52,mindist=250,maxdist=500,pct=40)',
            "TMelee('punch ',time=1.4,pct=50)",
            'TLand()',
            'TMoveTo(mindist=\'long\',time=0.88,subtype=["not emitting_damage","flying"])',
            'TMoveTo(mindist="melee",subtype=["not emitting_damage","not flying"],time=0.88)',
            'TMoveTo(mindist=\'medium\',maxdist=\'wholemap\',time=0.88,movetype="fly")',
        ],
        ['subtype',
            'sonic', #Subtype Section
            'magnetism',
        ],
        ['absorber',
            'object', #Absorber Section
        ],
        ['energy reserve',
            'low', #Energy Reserve Section
        ],
        ['delay', 0.5],
]

Special Targeting Section
This section is optional and must be added by hand.  You can currently put three different keywords here.  'civilians' allows the character to attack civilians, 'objects' allows the character to attack objects, and 'buildings' allows the character to attack buildings.  The character treats these things as enemies and any tactics that target enemies will automatically get used against the special targets as well.  For example, if you have a giant monster that should stomp on buildings, add ['special targets', 'buildings'], to its AI definition.

I found this very interesting and quite useful. I do worry, however, that the Absorbing Man will just go around absorbing everything in sight and forget about Thor altogether. I'm not all that well versed in AI's either (sorry  :(), but I hope this helps.

Xenolith

maybe Taskmaster X can lend a hand?  I believe the absorbing stuff was  his work, or at least some of it was.

BentonGrey

#17
Xenolith, I don't think that's too likely.  TMX isn't really around the community anymore. 

Hoss, you may not be a modder, but I think you've hit the nail on the head.  It's likely the unavoidable difference in names as much as anything else that is causing problems.  I'm still hoping one of the FFX team can tell me how to change what names this code is looking for and where it looks for them.

Thanks for the AI example!

So, what do those in the know say?  How can I change FFX to get it to look for built-ins with a different format of name?
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

cmdrkoenig67

Quote from: style on January 05, 2012, 05:13:31 AM
Tried this a 1000 times never worked for me.  <_<

The shapeshifter attribute?  I've tried to set it up a number of times too and I can't seem to get it to work.

Dana

BentonGrey

It works!  I've got it!  The FFX crew is even more brilliant than I realized.  They had apparently already allowed for built-ins, but they had also allowed for the fact that FFEdit does NOT like parentheses.  Thus, absorbman was able to successfully (and quite surprisingly) transform to absorbman_wood (NOT absorbman_(wood)) while I was testing the mission.  Ha, so, if you build your characters in, just name them with the material types, no parentheses.  So, absorbman can become absrobman_metal, absorbman_liquid, etc.  This is EXCELLENT!  Someone should update the documentation, though.

Y'all have been having trouble with Shapeshifter?  That one has always worked pretty well for me.  What's the trouble?
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

Xenolith

I can't get built ins to work, so I gave up.  Maybe you can give a tut on that, Benton?

BentonGrey

Quote from: Xenolith on January 08, 2012, 11:30:09 PM
I can't get built ins to work, so I gave up.  Maybe you can give a tut on that, Benton?

Well, it's pretty straightforward, really.  There's just three steps:

1.) Create your character in FFEdit or import him.  Give him a simple, relatively short name (you'll need the space for step 2).
2.) Create alternate forms using the forumla of charactername_material.  Thus, the Absorbing Man, "abm," would spawn "abm_wood" or "abm_metal."
3.) Run the FFX Control Center to brand all of these characters.

That SHOULD do it.  It worked for me.

Ohh wait, do you mean built-in shapeshifters Xeno?
God Bless
"If God came down upon me and gave me a wish again, I'd wish to be like Aquaman, 'cause Aquaman can take the pain..." -Ballad of Aquaman
Check out mymods and blog!
https://bentongrey.wordpress.com/

hoss20

I'm so glad you got things to work.  :thumbup: I knew there had to be a solution somewhere.

Xenolith

No, I just mean in general I cant' get them to work.  I create the character, powers, defenses, and template.
Then I go into FFX and they character appears in the "multiplayer" selection menu when I want to look at characters.
However, when I want to create an AI using the Rumble Room I can't find the built in character in the selection menus. 

Am I supposed to merge .dat files or something?  I feel like I'm missing a step or something isn't working quite right.  Baffled.

Xenolith

Okay, I've made a big step in getting built in characters to work.  My only problem now is that FFX tells me to run Control Centre even through I've done it and hit save.  I'm not sure why this is happening.  Any thoughts?

BaddAzzYellaBro

Unable to get the absorb material/energy attributes to work fully. I can't get the form to change. Using Amazing Man mesh with extra skins for different materials. Any step by step instructions would be helfpul. Able to change skins with the shapeshifting attribute easily, but really I want to use the absorb abilities to change skins.

spydermann93

It has to be the form "heroName (material)", if I'm not mistaken.

For example, "Amazing Man (stone)" will be the hero file "Amazing Man" turns into when absorbing Stone.  Also, make sure that he doesn't have the attribute "Temporary Form". That might cause issues.

BaddAzzYellaBro

Thanks for the reply, but I've tried that. No luck. My Amazing Man herofile name is "AM". I've tried creating various herofiles named AM (stone), AM_stone, AM_Stone. No luck. I can use the custom commands "Absorb x" materials/energy. For example, when I absorb fire, my hero gets a fireshield but does not change skin to the fire skin herofile.