Creating a custom character by duplicating another.

Started by TheVision, September 21, 2015, 03:07PM

Previous topic - Next topic
Hey guys!  Before I start let me tell you that I'm fairly new to all this modding and am only asking as a last resort.

So... My intention is to duplicate a character in order to practice what I learn from you guys on.  So I chose  :hulk_icon:, as his powers seemed to be the simplest to understand (he says) in the 'talent' & 'powerStyle' doc's etc...

Now the idea seemed simple enough.  I would copy all the files & folders in the original  :hulk_icon: mod, as there would be everything needed to get this character working in these files, then start the process of replacing any references from 'hulk' to 'nuke' (new character name) and '170' (hulk's number) to '256' (new character number).

So I opened every .igb file in a hex editor, .pkgb/.xmlb/.engb files were decompiled/compiled with NRcompiler.exe, and every instance of the word 'hulk' was changed to 'nuke', and every instance of '170' was changed to '256'.  I renamed all files & folders with the same method (hulk/nuke-170/256), until I got to a point where I could no longer find a reference to the previous character/number.  Then after the final task of modifying 'herostat', I copied all the files into my MUA directory as with every other mod...

To my dismay it did not work... First I tried just the original 'hulk' and my 'nuke' in the character select line-up and it showed 'hulk' but not 'nuke', not even a visible name, so I thought maybe the two were clashing somehow and in the second line-up I chose 'venom, nuke, thor', so I'd know 'nuke' was in between the others, in case he didn't show in the selection line-up again, and he didn't !!!!!!!!

I am at a loss people, yes I'm a newbie, yes I'v been reading the billions of posts, yes I'm learning as I go, but can I hell figure this one out.  What am I missing, what don't I know yet ?!!?

My friend, duplicating a character is kind of complicated, not that complicated but just a bit, 'cause if there is a single typo there will be issues. I always ''clone'' a character when making a mod (I duplicated Quicksilver for my Flash mod and Spidey for my 2099 mod), I'll try to be as clear as possible:

First, you must gather the files related to said character, which in your case is the Hulk. Since the Hulk is a mod, it's easier to get his files as they are already separated, so you can skip this step.

Then, I rename the files that only need to be renamed (skins, huds, animations etc). After that, I rename the remaining files to match the others, i.e. Hulk_17001.pkgb -> Nuke_25601.pkgb. (Remember to rename the effects/char/hulk to effects/char/nuke folder as well)

After the renaming is complete, I open the packages with XMLBCUI and change all the references (17001 -> 25601, 170_hulk -> 256_nuke...)

Now comes the tricky part, the talent and powerstyle files. I always start with the talent file; I open it with XMLBCUI, and rename the hulk_pX entries to nuke_pX (where X is the number, p1, p2 etc), do the same with hulk_powerX and hulk_icons.png, you will also do this with the hulk_outfitX entries as well, with that done, the talent editing is finished. Now comes the powerstyle file, the process is similar to the talent editing, you'll change every %hulk_pX stuff to %nuke_pX (there is also one hulk_icons.png in the beggining of the file, change it!); remember that I said to rename the effects folder? Yeah? Then you'll also need to rename every effects/char/hulk to effects/char/nuke. Do not rename the char/hulk_m lines, cause you'll be using Hulk's sound file, so there is no need to create another one.

If the character has an entities, interact or fightstyle file, you'll need to do the same thing you did to the powerstyle file.

Last, but not least, the herostat; there is no secret, you just need to rename the 170_hulk, Hulk, hulk_powerX, skins stuff. Again, do not rename the hulk_m.

If you've done everything correctly, you should have a successful Hulk clone, or Nuke as you'd call him. If you have any questions don't be afraid to ask!
Click here for my releases.
And here for my workbench.

In addition to what Maegawa said, there's another issue... the number you chose. Any number higher than 255 will not work at all, as the game can only handle 256 numbers, from 0 to 255. (Yes, zero counts.) Testing from myself and others back then have confirmed this. Numbers 256 and beyond will just reset back to the characters at 0-255. This is mainly why your "Nuke" character didn't show up.

Take a look at the Custom Character Central ("The CCC" for short), and pick a number that isn't already taken.  (This page is the non-Marvel CCC, since your character is a custom one.) Then follow the aforementioned instructions, and you should see results.


Cheers Maegawa/Outsider.

First of all, Maegawa, you explained it beer than I, but it's a similar process to what I've been doing, fair enough I was blazee about my renaming by using find-replace which caused 'hulk_m' to be replaced with 'nuke_m' but I have a 'nuke_m' file within the new mods folders so I didn't see a problem... PS. Thanks for mentioning how a pro starts a mod "I always 'clone' a character when making a mod", I never knew if you guys start from scratch or what, this clears it up no-end!

Second, Outsider, I give you my thanks...  2 times now I have tried my method above and twice my numbers have been above 255 (616/256).  I done these numbers, 616, for namesake and then, 256, because the last entry in my mannequin folder was 254 (25401.igb). I will change this now to a more suitable number after checking out 'CCC' and hope for the best!

With your help guys I will make my first dupe/mod and as a thank you I will create a thread with step by step instructions, as so many exist and for someone who has just found out you can mod the game, they make little sense and are often incomplete...

Sorry guys?!?  I tried again from scratch implementing your suggestions and came up short again.  This time I changed "Nuke's" number to '24' and methodically checked that a case sensitive find-replace was done on all files and folders in order to replace only 3 things:

   1.   170      -   24
   2.   Hulk   -   Nuke
   3.   hulk   -   nuke

below is a list of what folders/files I changed...  I know we've covered this before but I'm hoping the details help???

../actors/
   rename
      170_hulk               -   24_nuke
      170_hulk_4_combat         -   24_nuke_4_combat
      17001                  -   2401
      17002                  -   2402
      17003                  -   2403
      17004                  -   2404
      fightstyle_hulk_carryguy   -   fightstyle_nuke_carryguy
      ineract_hulk_vicitim      -   ineract_nuke_vicitim
   modify
      24_nuke,
      24_nuke_4_combat
         '170_hulk'   -   '24_nuke'
      2401,
      2402,
      2403,
      2404
         'Hulk'   -   'Nuke'
      fightstyle_nuke_carryguy,
      ineract_nuke_vicitim
         'hulk'   -   'nuke'

../data/
   entities/
      rename
         ents_hulk   -   ents_nuke
      modify
         ents_nuke
            'hulk'   -   'nuke'
   fightstyles/
      rename
         fightstyle_hulk_carryguy   -   fightstyle_nuke_carryguy
         interact_hulk_victim      -   interact_nuke_victim
      modify
         fightstyle_nuke_carryguy,
         interact_nuke_victim
            'hulk'   -   'nuke'
   powerstyles/
      rename
         ps_hulk   -   ps_nuke
      modify
         ps_nuke
            'hulk'   -   'nuke'
            'Hulk'   -   'Nuke'
   talents/
      rename
         hulk   -   nuke
      modify
         nuke
            'hulk'   -   'nuke'
            'Hulk'   -   'Nuke'

../effects/char/
   rename
      hulk/   -   nuke/
../hud/
   hud_head1700*   -   hud_head240*
   
../packages/generated/characters/
   rename
      Hulk_17001      -   Nuke_2401
      Hulk_17002      -   Nuke_2402
      Hulk_17003      -   Nuke_2403
      Hulk_17004      -   Nuke_2404
      Hulk_17001_nc   -   Nuke_2401_nc
      Hulk_17002_nc   -   Nuke_2402_nc
      Hulk_17003_nc   -   Nuke_2403_nc
      Hulk_17004_nc   -   Nuke_2404_nc
   modify
      Nuke_2401,
      Nuke_2402,
      Nuke_2403,
      Nuke_2404,
      Nuke_2401_nc,
      Nuke_2402_nc,
      Nuke_2403_nc,
      Nuke_2404_nc
         'hulk'   -   'nuke'
         170      -   24
../sounds/eng/
   rename
      h/   -   n/

../sounds/eng/n/u/
   rename
      hulk_m   -   nuke_m
      hulk_v   -   nuke_v

../textures/ui/
   rename
      hulk_icons   -   nuke_icons
   modify
      'hulk'   -   'nuke'

../ui/models/mannequin/
   rename
      17001   -   2401
   modify
      'Hulk'   -   'Nuke'


herostat.txt
      170      -   24
      'hulk'   -   'nuke'
      'Hulk'   -   'Nuke'


I have a request?!  Will one of you take a hulk mod, simply change all referances from hulk to nuke, so none of hulk's files are used, then post a link to the files both before and after. PS he must be able to stand side-by-side with the hulk in character select and whilst playing...  At least the I can go over the files for myself and see what's been changed.  PPS Outsider the 'CCC' link don't work, won't load page?

A few things....

(1) I hope when you chose #24, you didn't overwrite the game's original 2401 files, because if you did, then you've just lost the NPC of Lilandra. (You meet a captured Lilandra at the Shi'ar stage in Act 4.) Be very careful when changing or replacing anything that the game already has. (If you did overwrite Lilandra, go here: http://marvelmods.com/forum/index.php/topic,195.0.html and request for someone to send her files to you.)

(2) Did you start a new game after you made all these changes? Modifications won't appear unless a new game is started. (If you've answered "no," try that and see. If you've answered "yes," and it's still not working, continue on.)

(3) Renaming sound or voice files won't work. It will be rendered useless. A whole new sound file would have to be created and named "nuke_m." But hey, baby steps...

(4) The CCC link didn't work -- it repeated the "http://" part. Ok, here is the Custom Character Central link again. It should work now.

(5) Sorry, I can't rename all those files, as I have a LOT I'm doing, with numerous mod projects (among other things).

However, I myself or others can try and see what errors must have occurred. Forget about effects, sounds, HUDs, etc. Let's get the mod working first. Start with the package files: Open the nuke.pkgb and nuke_nc.pkgb files that you've done for 2402, highlight all of it (Ctrl + A), copy (Ctrl + C) and paste (Ctrl + V) it in your next post. I myself (time permitting) or others will see if there any errors and inform you of them.


Thinking about how I started modding, you might wanna try 'duplicating' a mod first. With mods you can be sure you didn't miss a file cause they're all in the rar , with offical characters you have to manually grab each file from the game directory
My Release topic : http://marvelmods.com/forum/index.php/topic,8934.0.html

Newest Release : Raven

sorry guys, have been meddling...  Outsider I backed up 2401, always start a new game, where do I go to learn to create a sound file, link works, me neither, you could explain the package files a little first and see how I get on...  I'm already swapping outfit bonuses, adding abilities from other players, ie: I've just some what successfully give Nuke Human Torches 'power6' and got it to work so I'm learning fast...

I do have a small query though.  This move I've transferred still has the same hulk icon in use for it, now in the talent file, each power has an icon_texture property.  Now one would assume that if you change this to say 'textures/ui/humantorch_icons.png' then it would retrieve an icon from that file, yet the icon remains hulk-esque!

There are a fair few references to 'hulk_icons', which takes president when transferring icons?

September 27, 2015, 10:14AM #8 Last Edit: September 27, 2015, 10:22AM by Outsider
For sounds, take a look at this thread: http://marvelmods.com/forum/index.php/topic,4.0.html.

For icons, it's kinda tricky. Though you do see multiple icon references on the talents file, I have never seen anyone able to use a different icon from another set there when it comes to powers. (The talents file's icons only change icons seen at the menu/character select screen.) I have seen it for passives (outfit bonuses), however, as passives do allow for some icons from other sets to be used. For this reason, Batman and Rocket Raccoon for example, have two sets of icons -- the second of which is only used for passives.

Also, note that on the powerstyle file at the top, there is a reference to only one icon set -- that one refers to icons seen during gameplay.

EDIT: Also, the icon files you wrote at the packages files take priority. I've never seen more than one icon set placed there. (The packages files that have "_nc" refer to the character select screen.)


September 28, 2015, 11:13AM #9 Last Edit: September 28, 2015, 11:37AM by TheVision
Outsider: your a massive help, thanks...

Next Q guys:  my 'Nuke' is to be fire oriented and I like the effects of  :humant:'s "Modern" outfit where both in menu and game his hands and head are on fire...  Now I could only find a reference to this effect in his herostat file:

Quote
      StatEffect {
      bolt = fx01 ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = true ;
      zoneonly = false ;
      }

      StatEffect {
      bolt = fx02 ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = true ;
      zoneonly = false ;
      }

      StatEffect {
      bolt = Bip01 Head ;
      effect = char/humant/special_burning ;
      fxlevel = 1 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;
      }

      StatEffect {
      bolt = Bip01 Head ;
      effect = char/humant/special_burning ;
      fxlevel = 3 ;
      menuonly = true ;
      skin = 03 ;
      zoneonly = false ;
      }

      StatEffect {
      bolt = Bip01 L Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;
      }

      StatEffect {
      bolt = Bip01 R Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;
      }

Bear in mind I am new to this, but it looks pretty simple... I don't really understand the first two effects but the rest make sense...  They give me a burning head in-game and in-menu, but only burning hands in-game.

So I copied all 6 of these 'StatEffect's over to my file and hey-presto!  The man burns!

Ok, so that worked out quite well for a first attempt!  Now I would pretty much like to see his hands burning in-menu so I decided to try duplicating the two current hand effects, changing 'zoneonly' to 'menuonly'.

It worked to a degree...  One of the hands would burn, but the other wouldn't!  After a bit of fcuking about with the order of these effects, I notice that only the first 7 of the now 8 effects would be rendered?!?!?  So I remove the first two and hope for the best!

It worked!  No idea what the effects I removed were for, yet, but now only 6 effects and head N' hands burn in-game and in-menu no problem?!

So I suppose I have 2 questions:

  • What were the two removed effects for? (the first 2).
  • Why only the first 7 effect rendered and not the 8th?

Thanks guys.  This will help! :vision:

P.S.  Feel free to use the icons, they're mine!

September 28, 2015, 11:21AM #10 Last Edit: September 28, 2015, 11:36AM by TheVision
Outsider, my friend.

While I have your attention, could I ask that you post a list of the basic files/folders needed to get a new character working, visually and in-game. Assume the character has only 2 moves, an attack power and an x-treme power, no abilities, 1 skin, basic fighting style, etc...  The bare necessities, nothing more. I could only find 1 post on this site that deals with this and it's not very informative.  Don't need a full work-up, just a file/directory list will do, thanks.  :vision:.

In the herostat, the limit of effect entries is 7, the game won't load more than 7.

If you want only his hands to be on fire, you can leave only these two entries (the red lines you can remove as they aren't necessary):

QuoteStatEffect {
      bolt = Bip01 L Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;

      }

      StatEffect {
      bolt = Bip01 R Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;

      }
Click here for my releases.
And here for my workbench.

Maegawa:  I kinda gathered that from messing around with them, but it's nice to hear you back up that only 7 will load, thanks...

Q.  Can I assume then, before I go test it, that if I remove the 'skin' property that all skins will inherit this effect and that this property is only necessary for setting individual skins?

Q.  Can I also assume, by that reasoning, that by removing the 'menuonly' & 'zoneonly' properties that the game will render burning head & hands in-game & in-menu and that these properties are only necessary for setting effects in-menu/game?

What I'm trying to ask, poorly, is...  Is this all the code I needed to get burning head/hands working in-game/menu:

Quote
      StatEffect {
      bolt = Bip01 Head ;
      effect = char/humant/special_burning ;
      fxlevel = 3 ;
      }

      StatEffect {
      bolt = Bip01 L Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      }

      StatEffect {
      bolt = Bip01 R Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      }

Hence, reducing the number of effects down to 3?

P.S.  I am still at a loss as to the first 2 removed effects?  Will someone please elaborate a little on them.  I have an instinct that these effects were relevant to the burning, yet am at a loss as to what their relevance/function is!

Thanks guys...  :vision:

To be honest, I don't know the function of the first two effect entries (fx01 & fx02 respectively). From what I know, fx01 & fx02 is a part the only a few characters have (Deadpool, Wolverine, Blade, Elektra etc), it is an extension above the hands to attach effects such as Deadpool's and Blade's gun fire, Wolverine's claws and Elektra's sai trail effects, I think ya got it. And characters who doesn't have this extension, if one effect is bolted to it, it will appear inside the character (you can test it out by swapping one of Wolverine's skins for Spider-Man's and watch how the trail effects bolt to his back instead of his claws during his basic attacks for example), I swapped a few characters' skins for Human Torch's and discovered that Human torch has the fx01 and fx02 bolt points, but they are on his hands rather than above them, so it's a bit nonsense if you ask me. I know it's a bit confusing, but if you do the skin swapping example I mentioned you'll understand it I think.

So from what I discovered I think I can explain you Human Torch's effect entries:
Quote      StatEffect {
      bolt = fx01 ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = true ;
      zoneonly = false ;
      }

      StatEffect {
      bolt = fx02 ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = true ;
      zoneonly = false ;
      }


      StatEffect {
      bolt = Bip01 Head ;
      effect = char/humant/special_burning ;
      fxlevel = 1 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;
      }


      StatEffect {
      bolt = Bip01 Head ;
      effect = char/humant/special_burning ;
      fxlevel = 3 ;
      menuonly = true ;
      skin = 03 ;
      zoneonly = false ;
      }


      StatEffect {
      bolt = Bip01 L Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;
      }

      StatEffect {
      bolt = Bip01 R Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      skin = 03 ;
      zoneonly = true ;
      }

The red entries are the burning hands effects that show up only in the menu and for all of his skins. You must change the fx01 and fx02 lines to Bip01 L Hand and Bip01 R Hand respectively, or else the effects won't show up in his hands, as Hulk's skins doesn't have the fx01 and fx02 bolt points.

The green entry is the burning head effect that shows up only in the zones and for the 3rd skin only. If you want all of Nuke's skins to have this effect, you must remove the skin = 03 ; line.

The blue entry is the burning head effect that shows up only in the menu and for the 3rd skin only. If you want all of Nuke's skins to have this effect, you must remove the skin = 03 ; line.

The purple entries are the burning hands effects that show up only in the zones and for the 3rd skin only. If you want all of Nuke's skins to have this effect, you must remove the skin = 03 ; line.

From what I mentioned above, in order to have all of Nuke's skins with burning hands and head in both menu and zones, the effect entries should be like this:
QuoteStatEffect {
      bolt = Bip01 L Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = true ;
      zoneonly = false ;
      }

      StatEffect {
      bolt = Bip01 R Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = true ;
      zoneonly = false ;
      }

      StatEffect {
      bolt = Bip01 Head ;
      effect = char/humant/special_burning ;
      fxlevel = 1 ;
      menuonly = false ;
      zoneonly = true ;
      }

      StatEffect {
      bolt = Bip01 Head ;
      effect = char/humant/special_burning ;
      fxlevel = 3 ;
      menuonly = true ;
      zoneonly = false ;
      }

      StatEffect {
      bolt = Bip01 L Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      zoneonly = true ;
      }

      StatEffect {
      bolt = Bip01 R Hand ;
      effect = char/humant/special_burning ;
      fxlevel = 2 ;
      menuonly = false ;
      zoneonly = true ;
      }

I hope you understood what I said, and sorry for the long post, but it was the only way I could explain. If you have any further questions feel free to ask :D
Click here for my releases.
And here for my workbench.

Hey guys...  Before I begin, I would like to introduce y'all to a friend of mine 'n a cousin of the hulk...


   


I give you...  Nuke v1.0!!!!!

Ok guys...  Let me begin.

Up until this here stage I have not been able to get my mod working, I've been piggybacking off of the Hulk mod, overwriting his files to see the results!  In this regard I was messing about with herostat.cfg and moved hulks name to the bottom of the character-name list (at the top of the file) and his actual entry object to the far end of the file.

I noticed upon rebooting the game that hulk/nuke was nowhere to be seen in the character select lineup?  Bingo, I remember somewhere reading about something having to be in alphabetical order, didn't know what, but alphabetized the character-name list and hulk was back. AAAAAAAAAAAAAAAGGGGGGGGGGGHHHHHHHHHHHH

All along my Nuke wasn't working because he was at the end of the name list and after xman!

So I took my nuke mod, who at the time was overwriting hulks files so was 170**_hulk[,i], and renamed all files and folders to 253**_nuke (#253 unused for me!), reinstalled the hulk mod so hulk was back to normal, then proceeded to copy my updated mod files over...

SUCCESS!  Hulk & Nuke now stand, fight and die side-by-side!

I can't believe it was that simple?!  This kind of info should be readily available to the greenhorn!  I'm a web coder by nature and assumed, a.b.t.m.o.a.f's, that herostat read its' .cfg file in a line-by-line method rather than an alphabetical manor, it's illogical and error prone...

Anyway.  I have been making leaps 'n bounds with this modding malarkey thanks to the hulk mod.  You may notice nuke has:


  • Hulk respective, purple pants.  Not the shoddy purple of the original mod, no offence, big hulk fan here!
  • Hair and eyeball textures replaced with fireball image.
  • Hands have claws from venom mod.
  • Uncharacteristically!  A tail between his legs, courtesy of nightcrawler.  Re-colored of course.
  • A radiation tattoo on his back.

In order to get a decent pic' of nuke the statEffect's had to be temporarily removed, but his head, hands and shoulders are ablaze thanks to some cool dormammu effects.


I said this should be explained, so here goes:

If you're new to modding like I am and you, for the first time, have come across the official characters mod and within, the herostat program and files.  You will surely, by now, be stuck as to why your new character is not showing up in the character select menu, yes/no?  Well either way read on...

The file 'herostat.cfg' is where the action is!  It is segregated into two parts:


  • Character Reference List
  • Character Data Objects

You may notice, but glance past the fact that the list of references is is alphabetical order, I did!  It, I suppose, is natural to the ill-informed to start adding names to the end of the list and data objects to the near-end of the file and expect for the best...

I have just now finished a week of doing this and to no avail!  I had to find out by trial and error that the reference list HAS to be in alphabetical order!  The data objects on the other hand are more forgiving.

So just tidy up the .cfg file and your mods should, baring any other problems, become playable.  Any Q's just ask... :vision: