Membuat map RPG Sangatlah mudah, tetapi membuat map RP yang paling bagus itulah yang merupakan tugas yang berat. Dalam membuat map RPG, race yang digunakan/bangsa yang digunakan haruslah melebihi 2 dan dalam membuat RPG yang sulit, perlu digunakan trigger Save. Berikut akan dijelaskan cara membuat map RPG sederhana.
Terraining, Object Data and Hero Selection System
Dalam membuat map RPG, buatlah dulu seluruh terrain dan persiapkan ability serta unit-unit yang akan anda gunakan. Hal ini perlu disiapkan terlebih dahulu sebelum kita membuat trigger RPG.
Sekarang, dalam membuat RPG, biasanya hero diarahkan pada suatu tempat untuk memilih hero terlebih dahulu. Disana biasanya disediakan Circle of Power untuk memilih hero. Berikut contoh triggernya :
Archer
Events
Unit - A unit enters Archer <gen>
Conditions
(Unit-type of (Entering unit)) Equal to Wisp
Actions
Unit - Create 1 Snake Aes for (Owner of (Entering unit)) at (Center of Start2 <gen>) facing Default building facing (270.0) degrees
|---Hero - Create Ankh of Reincarnation and give it to (Last created unit)
|---If ((Owner of (Entering unit)) Equal to Player 1 (Red)) then do (Set Player1 = (Last created unit)) else do (Do nothing)
|------If ((Owner of (Entering unit)) Equal to Player 2 (Blue)) then do (Set Player2 = (Last created unit)) else do (Do nothing)
|------If ((Owner of (Entering unit)) Equal to Player 6 (Orange)) then do (Set Player6 = (Last created unit)) else do (Do nothing)
|------If ((Owner of (Entering unit)) Equal to Player 7 (Green)) then do (Set Player7 = (Last created unit)) else do (Do nothing)
|------Unit - Remove (Entering unit) from the game
Kamu juga dapat menggunakan dialog untuk memilih race. Berikut penjelasan tentang trigger tersebut :
Player One Choose Humans
Events
Player - Player 1 (Red) types a chat message containing -Human as An exact match
Conditions
Actions
Trigger - Turn off (This trigger)
Camera - Apply Choose Human <gen> for Player 1 (Red) over 0.00 seconds
Game - Display to (All players) for 10.00 seconds the text: Now Choose a class ...
Trigger - Turn on Player One Choose Hunter <gen>
Trigger - Turn on Player One Choose Priest <gen>
Trigger - Turn on Player One Choose Warrier <gen>
Contoh trigger untuk memilih unit dalam chat command.
Player One Choose Warrier
Events
Player - Player 1 (Red) types a chat message containing -Warrier as An exact match
Conditions
Actions
Player - Make Player 1 (Red) treat Player 10 (Light Blue) as an Ally
Player - Make Player 10 (Light Blue) treat Player 1 (Red) as an Ally
Unit - Create 1 Human Warrier for Player 1 (Red) at (Center of Human Spawn <gen>) facing 90.00 degrees
Set Player_One_Character = (Last created unit)
Trigger - Turn off Player One Choose Hunter <gen>
Trigger - Turn off Player One Choose Priest <gen>
Trigger - Turn off Player One Choose Warrier <gen>
Cp's, Quests and systems
Nahh, dalam triggering berikut ini. Pertama tentang creep. Creep dalam map RPG biasanya mempunyai tingkatan level, damage, nyawa, dan tingkat kesulitan sendiri serta trigger spawn khusus. Lalu tentang boss, boss dalam map RPG biasanya mempunyai level, ability khusus, dan jabatan tersendiri untuk tingkat kesulitan level masing2 dan biasanya boss akan auto respond setelah dia mati beberapa menit kemudian. Sekarang akan coba dijelaskan tentang quest system :
Quest One The Knights of Asiria Player One
Events
Unit - A unit Is issued an order targeting an object
Conditions
(Target unit of issued order) Equal to Captain 0029 <gen>
(Owner of (Triggering unit)) Equal to Player 1 (Red)
Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
|--------If - Conditions
|-------------(Player_One_Character has an item of type Pirates Battle Plans) Equal to True
|--------Then - Actions
|-------------Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
|-------------Hero - Order Player_One_Character to Give Captain 0029 <gen> to (Item carried by Player_One_Character of type Pirates Battle Plans)
|-------------Player - Add 30 to Player 1 (Red) Current gold
|-------------Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Well done! I'll jus.... Modify duration: Add 0.00 seconds and Wait
|-------------Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Here is your reward.... Modify duration: Add 0.00 seconds and Wait
|-------------Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
|-------------Trigger - Turn off (This trigger)
|-------------Trigger - Turn on Quest Two The Scorpians Player One <gen>
|--------Else - Actions
|-------------Cinematic - Turn cinematic mode On for Player Group - Player 1 (Red)
|-------------Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display The king has ordere.... Modify duration: Add 0.00 seconds and Wait
|-------------Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display First of all you mu.... Modify duration: Add 0.00 seconds and Wait
|-------------Cinematic - Send transmission to Player Group - Player 1 (Red) from Captain 0029 <gen> named Captain Hafer: Play No sound and display Then come back to m.... Modify duration: Add 0.00 seconds and Wait
|-------------Cinematic - Turn cinematic mode Off for Player Group - Player 1 (Red)
Trigger GUI diatas adalah trigger GUI yang simple untuk sebuah quest game RPG. Namun dalam quest RPG, player biasanya juga menerima hadiah selesai menjalankan suatu quest. Dalam game RPG dijelaskan juga item yang dipakai bahkan ada juga yang menggunakan requires item. Coba kalian simak trigger berikut dengan teliti. Kalian cobalah pelajari trigger ini untuk membuat simple RPG.
Wield
Events
Unit - A unit Uses an item
Conditions
|--------((Triggering unit) is A Hero) Equal to True
|--------Or - Any (Conditions) are true
|-------------Conditions
|-------------(Item-type of (Item being manipulated)) Equal to Katana
|-------------(Item-type of (Item being manipulated)) Equal to Claw
|-------------(Item-type of (Item being manipulated)) Equal to Saber
|-------------(Item-type of (Item being manipulated)) Equal to Short Sword
Actions
-------- This if/then/else is to not show a message like "Wielding Weapon: <Empty String>" when you didn't had a weapon wielded before. --------
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
|--------If - Conditions
|-------------Weapon[(Player number of (Owner of (Triggering unit)))] Not equal to No item
|--------Then - Actions
|-------------Game - Display to (Player group((Owner of (Hero manipulating item)))) for 2.50 seconds the text: ((Unwielding Weapon: |CFF0000FF + (Name of Weapon_Bonus[(Player number of (Owner of (Hero manipulating item)))])) + |r)
|--------Else - Actions
|-------------Game - Display to (Player group((Owner of (Hero manipulating item)))) for 2.50 seconds the text: Unwielding Weapon: ...
Unit - Remove Weapon_Bonus[(Player number of (Owner of (Triggering unit)))] from (Triggering unit)
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
|--------If - Conditions
|-------------(Item-type of (Item being manipulated)) Equal to Katana
|--------Then - Actions
|-------------Set Weapon_Bonus[(Player number of (Owner of (Triggering unit)))] = Katana
|--------Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
|--------If - Conditions
|-------------(Item-type of (Item being manipulated)) Equal to Claw
|--------Then - Actions
|-------------Set Weapon_Bonus[(Player number of (Owner of (Triggering unit)))] = Claw
|--------Else - Actions
|-------------If (All Conditions are True) then do (Then Actions) else do (Else Actions)
|-------------If - Conditions
|-------------------(Item-type of (Item being manipulated)) Equal to Saber
|-------------Then - Actions
|-------------------Set Weapon_Bonus[(Player number of (Owner of (Triggering unit)))] = Saber
|-------------Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
|--------If - Conditions
|-------------------(Item-type of (Item being manipulated)) Equal to Short Sword
|--------Then - Actions
|-------------------Set Weapon_Bonus[(Player number of (Owner of (Triggering unit)))] = Short Sword
|--------Else - Actions
Unit - Add Weapon_Bonus[(Player number of (Owner of (Triggering unit)))] to (Triggering unit)
Set Weapon[(Player number of (Owner of (Triggering unit)))] = (Item being manipulated)
Game - Display to (Player group((Owner of (Hero manipulating item)))) for 2.50 seconds the text: ((Wielding Weapon: |CFF0000FF + (Name of Weapon_Bonus[(Player number of (Owner of (Hero manipulating item)))])) + |r)
Item - Set charges remaining in (Item being manipulated) to 1
Hero - Drop (Item being manipulated) from (Triggering unit)
Hero - Give (Item being manipulated) to (Triggering unit)
Drop Weapon
Events
Unit - A unit Loses an item
Conditions
Actions
Wait 0.30 seconds
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Triggering unit) has an item of type (Item-type of Weapon[(Player number of (Owner of (Triggering unit)))])) Equal to False
(Item being manipulated) Equal to Weapon[(Player number of (Owner of (Triggering unit)))]
Then - Actions
Game - Display to (Player group((Owner of (Triggering unit)))) for 2.50 seconds the text: ((Unwielding Weapon: |CFF0000FF + (Name of Weapon_Bonus[(Player number of (Owner of (Triggering unit)))])) + |r)
Unit - Remove Weapon_Bonus[(Player number of (Owner of (Triggering unit)))] from (Triggering unit)
Set Weapon[(Player number of (Owner of (Triggering unit)))] = No item
Else - Actions
Creeps
Dalam map RPG, untuk summoning creep, buatlah beberapa area untuk creep level khusus. Coba kalin buat region pada suatu tempat untuk level tertentu lalu pasanglah trigger summon creep tertentu.
Cobalah begini, jika creep mati, tunggulah respond beberapa second lalu revive creep itu kembali.
Finish the map
Selesaikanlah map anda untuk menjadi suatu map RPG yang bagus, jangan lupa untuk menambah fitur save/loading.
Share This Thread