Ein Tutorial wie du es brauchst gibt es nicht, ich editier eine Erklärung dann hier rein
EDIT Erklärung:
Also du machst einen Spell der Elven Gifts ähnelt, der schaltet dann ein Upgrade frei, also folgendermaßen
data\ini\science.ini
Der Code muss direkt zu den anderen Level 1 Spells, also er muss über allen level 2 Spells stehen, sonst funktioniert er nicht
[color=red]Science SCIENCE_AllowGondorSoldiers[/color]
PrerequisiteSciences = SCIENCE_MEN
SciencePurchasePointCost = GOOD_RANK_1_COST
SciencePurchasePointCostMP = 5
IsGrantable = Yes
End
Bei PrerequisiteSciences muss immer das stehen was man vorher braucht, SCIENCE_MEN heißt man muss Menschen spielen, wenn man den GondorSoldier Spell braucht, um den Spell zu kaufen müsste dort stehen
SCIENCE_MEN SCIENCE_AllowGondorSoldiers
Entweder oder funktioniert mit OR
Der Spell muss in die system.ini (data\ini\object\system\system.ini) und
zwar ins GoodSpellBook Object hinein (WICHTIG)
[color=red] Behavior = PlayerUpgradeSpecialPower SpellBookAllowGondorSoldiers_ModuleTag[/color]
[color=red] SpecialPowerTemplate = SpellBookAllowGondorSoldiers
UpgradeName = Upgrade_AllowGondorSoldiers[/color]
UpdateModuleStartsAttack = No
AffectAllies = No ; Should not try to affect ally units
AvailableAtStart = No
RequirementsFilterMPSkirmish = SPELL_BOOK_REQUIREMENTS_FILTER
RequirementsFilterStrategic = SPELL_BOOK_REQUIREMENTS_FILTER_STRATEGIC
End
Einzeln erklärt
SpellBookAllowGondorSoldiers_ModuleTag
Der Name ist frei wählbar, muss aber einzigartig sein, am besten genauso wie den Spell nennen
SpecialPowerTemplate = SpellBookAllowGondorSoldiers
UpgradeName = Upgrade_AllowGondorSoldiers
Die zwei muss man noch hinzufügen
also weiter mit der upgrade.ini (data\ini\upgrade.ini)
[color=red]Upgrade Upgrade_AllowGondorSoldiers[/color]
DisplayName = [color=red]CONTROLBAR:AllowGondorSoldiers[/color]
Type = PLAYER
End
Der Name muss gleich dem UpgradeName in der system.ini sein, der Displayname kommt in die lotr.str (ist nur die textanzeige, hat keinen Einfluss auf die Funktion, kannst du später hinzufügen)
specialpower.ini (data\ini\specialpower.ini)
[color=red]SpecialPower SpellBookAllowGondorSoldiers[/color]
Enum = SPECIAL_SPELL_BOOK_ELVEN_GIFTS
RequiredSciences = [color=red]SCIENCE_AllowGondorSoldiers[/color]
ReloadTime = 0 ; in milliseconds
Flags = RESPECT_RECHARGE_TIME_DISCOUNT
End
Der Name muss wieder gleich sein der SpecialPowerTemplate in der system.ini, die RequiredSciences gleich dem Eintrag in der science.ini, ReloadTime gleich 0, weils passiv ist und die ENUM lass einfach so
So jetzt braucht der Spell noch einen Button, also commandbutton.ini (data\ini\commandbutton.ini)
[color=red]CommandButton Command_SpellBookAllowGondorSoldiers[/color]
Command = SPELL_BOOK
Options = NONPRESSABLE
[color=red] TextLabel = CONTROLBAR:AllowGondorSoldiers
DescriptLabel = CONTROLBAR:AllowGondorSoldiers
SpecialPower = SpellBookAllowGondorSoldiers
ButtonImage = BGBarracks_Soldiers[/color]
End
[color=red]
CommandButton Command_PurchaseSpellAllowGondorSoldiers[/color]
Command = PURCHASE_SCIENCE
ButtonBorderType = UPGRADE
[color=red] ButtonImage = BGBarracks_Soldiers[/color]
[color=red] Science = SCIENCE_AllowGondorSoldiers[/color]
[color=red] TextLabel = CONTROLBAR:AllowGondorSoldiers
DescriptLabel = CONTROLBAR:TooltipAllowGondorSoldiers[/color]
;; Trigger this command button when the purchase science is activated
[color=red]CommandTrigger = Command_SpellBookAllowGondorSoldiers[/color]
End
Name darf wieder freigewählt werden, Command = SPELL_BOOK weils ein Spell ist, NONPRESSABLE wieder weils passiv ist, textLabel und Descriptlabel sind wieder lotr.str Einträge, also beschreibungen die nicht für die Funktion relevant sind und als ButtonImage hab ich das gleiche wie für Gondor Soldaten genommen
Das war der erste Button, der an der Linken Seite des Speils auftaucht, der zweite ist für das Spellbook um den Spell zu kaufen, Science ist wieder der Eintrag aus der science.ini, CommandTrigger ist der erste Button, also der Button der dann Links auftaucht, Buttonimage, textlabel, descriptlabel siehe oben
Nun muss der neue Spell noch ins Commandset des Spellbook (data\ini\commandset.ini)
CommandSet MenSpellBookCommandSet
[color=red]1 = Command_SpellBookAllowGondorSoldiers[/color]
2 = Command_SpellBookRallyingCall
3 = Command_SpellBookRebuild
4 = Command_SpellBookTomBombadil
5 = Command_SpellBookHobbitAllies
6 = Command_SpellBookLoneTower
7 = Command_SpellBookArrowVolleyGood
8 = Command_SpellBookCloudBreak
9 = Command_SpellBookRohanAllies
10 = Command_SpellBookDunedainAllies
11 = Command_SpellBookArmyoftheDead
12 = Command_SpellBookEarthquake
End
CommandSet MenSpellStoreCommandSet
[color=red]1 = Command_PurchaseSpellAllowGondorSoldiers[/color]
2 = Command_PurchaseSpellRallyingCallMP
3 = Command_PurchaseSpellRebuild
4 = Command_PurchaseSpellHobbitAllies
5 = Command_PurchaseSpellArrowVolleyGood
6 = Command_PurchaseSpellTomBombadil
7 = Command_PurchaseSpellLoneTowerMen
8 = Command_PurchaseSpellDunedainAllies
9 = Command_PurchaseSpellCloudBreak
10 = Command_PurchaseSpellRohanAllies
11 = Command_PurchaseSpellArmyoftheDead
12 = Command_PurchaseSpellEarthquake
End
hier ersetzt du einfach den passenden Spell (der Name mus der gleiche wie der des jeweiligen Commandbuttons sein), im Spellbook (also links im Spiel ist die Reihenfolge egal, der Übersichtlichkeit halber macht man alle fünfer Spells, dann alle 10er usw.
Im Spellstore, also wo man die Spells kauft ist die Reihenfolge wichtig, sie schaut so aus
1 2 3
4 5 6 7
8 9 10
11 12
So damit wäre der Spell fertig, wenn du den Spell kaufst bekommst du ein Upgrade, damit es auch funktioniert und du die Soldaten erst nach dem Upgrade kaufen kannst musst du den Commandbutton Eintrag der Soldaten ändern
Ursprünglich sieht er so aus
CommandButton Command_ConstructGondorFighterHorde
Command = UNIT_BUILD
Object = GondorFighterHorde
Options = CANCELABLE
TextLabel = CONTROLBAR:ConstructGondorFighterHorde
ButtonImage = BGBarracks_Soldiers
ButtonBorderType = BUILD
DescriptLabel = CONTROLBAR:ToolTipBuildGondorFighterHorde
Radial = Yes
InPalantir = Yes
ShowProductionCount = Yes
End
du änderst ihn zu
CommandButton Command_ConstructGondorFighterHorde
Command = UNIT_BUILD
Object = GondorFighterHorde
Options = [color=red]NEED_UPGRADE[/color] CANCELABLE
[color=red]NeededUpgrade = Upgrade_AllowGondorSoldiers[/color]
TextLabel = CONTROLBAR:ConstructGondorFighterHorde
ButtonImage = BGBarracks_Soldiers
ButtonBorderType = BUILD
DescriptLabel = CONTROLBAR:ToolTipBuildGondorFighterHorde
Radial = Yes
InPalantir = Yes
ShowProductionCount = Yes
End
So jetzt funktioniert es
, du wirst ingame ein paar MISSING:DESPRICTION... haben, aber ds kannst du ja ausbessern, wenn du magst, such einfach nach Tutorials zu lotr.str
PS:Puh das war jetzt Schreib-/Kopierarbeit, mag jemand aus dem ganzen Text ein ordentliches Tutorial machen
, so formatieren und so, ihr habt meine Erlaubnis