Magic Staff (Isengard-Saruman) Modified weapon.ini to improve the look and feel of Saruman's standard attack. |
Welcome Guest ( Log In / Register ) |
Quick Lists Top RatedTutorials Living World Map G… Ultimate beginner'… Arrow scaling bug… Raising Heroes max… Creating an asset.… Simple Structure B… Proper Fire Arrow… Making a simple Ma… Quick and easy sno… Making patrols nea… Mods The Dwarf Holds The Peloponnesian… RJ - RotWK The Elven Alliance… Helm's Deep Last H… The Elven Alliance Special Extended E… Kings of the West… RC Mod The Wars of Arda Downloads BFME1 1.06 Widescr… Enhanced W3D Impor… Fudge's Map Pack LotR/BfME HD Logos Osgiliath Shellmap Crystals Of Ancien… 2v1 Wold The forests of Dru… Converted BFME2 an… ROTWK animations f… |
||||||||||||||||||||||||||||||||||||||||||||
Register and log in to move these advertisements down Ultimate beginner's guide. New hero, many topics
This is it, the big one, one of the reasons that I started modding in the first place: how to make a hero have multiple commandsets. There are many ways to accomplish this, but most of them never worked for me, except for one: the horse togle method. Here's basically how it works: First create all the SpecialPower entries that you require and all the commandbuttons you want. Now, for the example I want Malvack to have 2 commandset, the following to be more precise:
So all the commandbuttons we know how to code them,except for the ones that change the commandsets that is. So it will basically work as a horse toggle button. Here's the code so you can see what I mean:
As you can see both buttons are exactly the same except for the name and the strings that will be displayed, other than that is the same. The magic of this trick is, as you would expect, in the special power modules within the object. So what this method do is that it will kill your hero and substitute him/her with another hero. To not screw this up, we will use ChildObjects. A child object will be an exact copy of the object it is a child of, that is imagine you have your object of Malvack and it looks like this:
Even though AngmarMalvack_2 doesn't have a single line of code, he will be exactly the same as the original AngmarMalvack; but if you make a change in the childobject, this one will be the same as the "parent" except for your alteration. So what we are going to do is this change:
However this is not enough, we have to tell the special ability to kill the object and select another object. So the new module that AngmarMalvck has to have is:
That code belongs to the "parent" special powers section. Now, as the note goes, in the SynchronizeTimerOnSpecialPower section of power you must write ALL the SpecialPowerTemplates of both the power of the "parent" and the "child", is very important to write all of them because this is what force them to share the timer of powers. Let me explain what would happen without this: You are playing with the parent, who has the Shake Foundation ability, you use this ability in some building. Then, immediately after you change to the child (who doesn't have this ability) and use the Summon Balrog ability, then you immediately after change back to the parent but now his ability of Shake Foundation has already recharged. Then you immediately after change back to the child and the Summon Balrog ability has already recharged (while the first Balrog is still on the field!) With SynchronizeTimerOnSpecialPower you make sure that, although one doesn't have the ability of the other, the recharge time is respected all the way through (so you will have to wait to the Summon Balrog to recharge as you normally would despite having changed from the parent to the child or viceversa). Remember to write the names of the SpecialPowerTemplate in that section. Now, as it is, the parent can change into the child but the child cannot become the parent, so we will add the new modules in the child as well. The whole body of the childobject is as follows:
The reason why I removed the moduletags is because, as I said before, you CANNOT have the same moduletag more than once during the code, since the ChildObject inherits eveyrthing from his parent this will include the moduletags; it's an implicit repetition, so we have to remove it in order to avoid a possible crash. There's only one tiny thing to do now: add the childobject to the experiencelevels.ini. You can go to your hero entry in that file and just write aside his/her name the name of the childobject, separated by a space, like this:
Obviously this has to be done in every entry, from level 1 to 10. Naturally, you can apply this to a 3rd, 4th, or even more ChildObjects and you could have a hero with many commandset. And, believe or not, that's it. Take care. Links / Downloads
CommentsDisplay order: Newest first Amonrath - Monday August 14, 2017 - 2:16 Hello! I'm trying to do the but in the bfme I. Is there any different steps? I created a folder with my own mod... I then just edit the values that I want and I save them... I have also added the -mod in the end of the "Path" as well as done the lotr.srt extraction. Could anyone help? Thanks =D BouncyKnight - Tuesday April 25, 2017 - 22:08 Amazing step-by-step, very detailed and explanatory tutorial on how to create your custom heroes! Thank you sir, you're great! Gabriel Oak - Tuesday December 13, 2016 - 11:19 I created this account only to thank you, sir. This tutorial is really, really useful. |
||||||||||||||||||||||||||||||||||||||||||||
"One site to rule them all, one site to find them, © All Rights Reserved Eric Edwards ©2013. |