Guide - RPG

Discussion in 'Tutorial Repository' started by Rad, Aug 20, 2005.

  1. Rad

    Rad ...

    Basic RPG Tutorial with the worx (Created for TFT... but may have use for ROC)

    For this tutorial i will create a basic single player RPG. It will be composed of a good quality Terrain, an introduction to selection Triggers and spawning creeps, basic overview of the Object Editor and teach you what the word BALANCE truely means.

    Step 0: Open the World Editor found in your program files > Warcraft III folder and let it finish loading up

    Step 1: For this RPG we will be using the Village tileset. Map Size we will leave at 64x64 (Which is a very small map size, but good for a demo). Change the Initial Tile to 'Thick Grass' and leave the Initial Cliff Level stuff alone, that is not very important. After that is set up click OK and wait for the map to load.

    Step 2: Now you should see the most basic form of a map... Its the Terrain you are looking at, though it doesnt look like much yet this tutorial will make it look beautiful! Now for this map we will use the classic hero selection with Circle of Power's and Triggers. So first we will set up the terrain for that. What i always like to do first is make the map size even on every side so its organized. Do this by going 'Scenario' > 'Map Size and Camera Bounds' There you can change the dimensions of your map, for me i like to keep things squared off... so i will try to get the edges to all have the same absolute value while keeping the dimensions within 2 of each other (Ex. 60,62 64x63). This is completely optional - Click OK if you did it anyways.
    Step 3: Now we have our map ready for editing. If you have no tool palette (A small thin window shown only on the Terrain Editor piece of the World Editor) then go to Window > New Palette > Terrain. Now for the Selection of our heroes we will need a small piece of the map to choose from, do thing by finding a corner (Or a unused area) and in the tool palette select 'Apply Cliff - Raise Two', 'Shape Square' and 'Size 5'. Now that you have your brush set up go back on the terrain and go to View > Grid > Large, Then using the grid find a nice spot to raise the terrain where you will put your hero selection area. (In the View Menu it would be wise to check the Camera box if it is not already checked, Any units placed outside of this border will be DELETED when you start the game!) Now apply your brush just like in the screenshot below.
    Step 4: Now that we have the area for the heroes set up, lets get started on the heroes! In the toolbar on the Terrain Editor there is several buttons, one looks like a helmet that says "Object Editor" Click on this to edit our heroes (It may take a minute to start up depending on the speed of your computer). Now what heroes should we create... hmm... Lets take the Paladin, Blade Master, Demon Hunter, and the Lich (Each is located in -Race- > Melee > Heroes). On each of these heroes we will add a few spells from other heroes of that race. Now, Click on the Paladin, find Abilities - Hero, and double click on that field. Change Devotion Aura to Brilliance Aura, and Ressurection to Pheonix (TFT only, you could try using Avatar, or leaving this field the same if you have ROC). Now we have a combination Paladin, Archmage, Blood Mage hero... Edit the other 3 heroes as you wish the same way, keep the ultimates (Bladestorm, Demon Form, etc) together, do not have a hero with 4 basic abilities, or 2 ultimates!

    Step 5: Now that we have 4 slightly customized heroes we are done with the object editor for now. Go back to the Terrain Editor and find your Palette (If you closed it follow the steps in step 3). Change 'Terrain' to 'Unit palette' and find each hero, alternatively you can right click on the heroes in the object editor and choose 'Select in tool palette'. Place each hero in a different corner on the selection area you created, then select them all and hold CTRL and left-click in the center, they will all face the center. While they are selected press ENTER, then change the owner to Neutral Passive. Now go back to your tool palette and change where it says 'Melee' to 'Campaign' (It should have changed the player in the tool palette to neutral passive to). Select the Circle of Power (Small) and put one in front of each hero. Now change the Palette to 'Region' and place a small region across each circle to cover it around each edge (Do not make them to big). When you have placed all 4 press SPACE to clear your brush allowing you to select them, now select each one and change it to the hero it will represent.

    Step 6: Before we get to the trigger section, we must first start our terrain. We will need only a few more regions in order to finish the hero choosing. Now what we need to do is find a nice place to have the starting town, it should be basic town with level 1 and 2 creeps outside (This begins the Balance section of the tutorial). Now for the terrain, we should make it look as nice as we can so that when we make our new map we can look back at this as a reference! Its also a good idea to use the 'Hieght' feature in the terrain palette. Now find your starting point for your town and start terraining, what i like to do is take open the Terrain palette again, and select a Rock, Stone, or dirt path and use it to map out the roads in my town. Try to use as much variation in tiles as you can, but keep it looking nice not sloppy, no stone/grass/stone/grass patterns! Now that you have created the layout for your town you can start adding the 'Doodads'. All a doodad is is like a terrain prop, there the detailed piece of terraining and i recommend you use a mild quantity per town, and even outside the town. Doodads range from birds and banners, to houses and bridges. Theres fire pits, fences, trees, bushes, flower, etc etc! You can use the palette for doodads, but i recommend using the bottom left box (referred to as the Brush List) Simply select Doodads and begin creating! (You may also want to save some room for a shop or fountain of health... This is an RPG after all :) )

    Step 7: Now that we have a nice starting town we can begin adding some basic units. But before we do that create another region at a good place in the town, free of obstructions (This will be where your here will spawn). If you forgot how to make regions read step 5 again. Name this region either Starting Town, or Main Town (Or something along those lines, not that its important its just nice to be organized). Now in the brush list go to units > neutral passive > melee > buildings > Goblin Merchant and place 1 in your town, maybe a fountain of health also. Now we can start with the creeps, go outside of the town and decorate it like a generic light forest. With trees, rocks, birds, flowers, and brush. If you want you can create water using the terrain palette. Its also nice to use the 'hieght' feature of the terrain palette here, and in all other terrain we will cover. Okay now that we have some decorated landscape we can begin placing the creeps... Go to units > neutral hostile > melee and find some creeps. Get level 1-2 creeps near the town, and level 3-5 at the next town (NOTE: You can not level past 5 from creeps, you must change the game constants creep reduction table to 100 [take off the ,80 ,60 ,40 ,0 to gain full experience) You can view what level the creeps are in the Unit Palette, it says above the units Bandit - Level 1 for example, i will use bandits and brigands. Now we can start with some triggers!

    Step 8: Triggering will be the best part of map making when you get more experienced, you can do so much so easily once your good at it ;). We will only need a few basic triggers for this map and i will guide you through them so try not to get lost. First we will do hero selection, start off by opening the Trigger Editor (Like when we opened Object Editor, its a small 'a' icon in the toolbar). Now you will see a 'Melee Initialization' trigger, when you play you will win when the game starts, along with many other errors. Delete all of the 'Actions' listed in that trigger EXCEPT for the 'use melee game time of day'. Now here is where i break my format, create a new trigger by right clicking on the 'Melee Initialization' folder, and choosing 'New Trigger'. Name this trigger Paladin Selection, Lich Selection etc.. only name it one of the selections and we will base the others off of it. Now create an event:
    Unit - A unit enters Paladin 
    All you do with these triggers is find the event class, then look for the most basic form of the event you need, then you will define it more specifically with conditions and actions. (Remember, Triggers launch the Actions, which only occur if it meets the certain Conditions). So far this trigger does nothing, so we will add a condition, right click Condition and choose 'New Condition' then search for Unit-Type Comparison, select the first field and change it to Unit-Type of (Event Respone - ENTERING UNIT) and the second field should be changed from Footman to Wisp. Now any actions that will fire when a unit enters that region, will only fire if the unit entering is a wisp, which we will customize at the end of the tutorial. Now for the actions, create your first action like the condition, now scroll way way down untill you find the 'Unit - Create at Facing ', edit the fields to look like this, replacing the hero with whatever the event name was (Ex. Paladin Selection - Paladin, Blademaster - Blademaster). For the Region select the Starting Town region (Or whatever you named it), also create 1 unit facing 270 degrees (Degrees are hardly important). ALSO For the Player under which has control, select 'Owner of Unit' and change 'Unit' to 'Event Response - Entering Unit'. Now create a new action, 'Unit - Explode' Set the exploding unit to 'Event Response - Entering Unit' once again. Now what should happen, your wisp steps on the circle which has an invisible region on it, then your wisp explodes creating a hero of whatever type the region was for. If your staying with me good job :).

    Step 9: Now you must finish the selection triggers, select the one you just made (For me it was Paladin Selection) and edit>copy, edit>paste, now to change the name hold shift and left click, wait 3 seconds, and then you should be able to name it Blademaster Selection. Just change any fields that you see paladin in, such as 'paladin region' and 'create 1 paladin' to Blademaster, do this for the Lich and Demon Hunter also. Now we do the respawn trigger for both your hero and the creeps. Create a new trigger in the Melee Initialization folder (Its ok to be unorganized here because we wont have very many triggers anyway) Name it Respawning. Create a new event > Unit - Generic unit event > Unit - A unit dies. Now this trigger fires whenever a unit dies. Add a condition type 'OR' with field 1 'Player comparison', change the field to look like this: "Owner of (event response - Dying Unit) equal to Neutral Hostile" OR "boolean > (Dying unit) is a hero equal to TRUE". This will enable spawns to be recreated, and your hero to revive with a simple if/then/else. Now create that if/then/else (MULTIPLE FUNCTIONS) with fields: IF (boolean - dying unit is a hero equal to true) then do (wait 10 seconds - revive (dying unit) at (Starting town)) else do (wait 40 seconds - create 1 (unit-type of dying unit) at position of (dying unit) for (owner of (dying unit)). NOTE: I don't think the if/then/else (multiple functions) exists for ROC, so once again... this is a tft only part. Now what this trigger does, when anything dies, if its either a hero or a unit owned by neutral hostile it will revive. It gets pretty self-explanitory after you do a few ;).

    Step 10: We are almost done with the tutorial, leaving you alot of room to finish up! We still have a few things left to cover that i will cover in this step, but since they are different catagories i will make sub catagories.
    A: Customize the night elf wisp, remove its abilities just like how we changed the hero abilities, and scroll to the bottom to 'Techtree', structures built, upgrades used etc should all be blank. Now right click on the wisp in the treeview on the left and select 'Select in tool palette'. Now put 1 down in the center of the circle of power cliff area.. not on any circles though! Also create your starting location here.
    B: Since this is 1 players we do not need to mess with the player properties, but we will still name it. Go to Scenario > Map Properties, and fill out each form however you want, leave the map and camera bounds alone though...
    C: Polishing - I like to call it polishing when im almost done with a map and i just gotta clean the stuff up and make it look nice, really what i do is fix any bugs, such as bounties (Which we havent delt with), bugs, imbalances, and pretty much anything along the lines of beta-ness :).
    • Like Like x 4
  2. Rad

    Rad ...


    Before reading the rest of this tutorial, please ensure that you have either created a tutorial map from Part 1, or downloaded my progress here:

    Starting back at Step 0...

    Step 0: Open the map you either saved from Tutorial - Part 1, or that you downloaded from the bottom of that tutorial (At least scim the tutorial if you downloaded it... I'm not going to explain the entire thing twice)

    Step 1: First of all, since we didn't do bounties, I just threw in a few coins on my map. If you loaded select unit palette, then press SPACE to allow you to select a unit, then click on one of the gold coins (Yellow dots on mini-map) now press Ctrl+Shift and then hit ~, now you should have selected all the coins, press Delete. Ok now we are about where we should be, from the previous tutorial we created 4 hero selections, created a town, started a forest, and added some creeps... Now lets do some more terrain! Okay open your terrain palette like always, now select 'Grass Cliff - Raise 1' and raise around your forest, try to leave about 3/4 of the map clean for the rest of the tutorial, Go back over the raised areas, making it look more like a cliff, maybe raise it one or two more time. Now just make it shaped like a U, C, etc touching the edge of the map, leave no area that a unit can cross, uncheck the 'Apply cliffs'. Now create a road going out of your town, it can either be made of stone or dirt, or a combo of multiple (to look the best), create this up to a cliff, wherever you touch go back to the tool palette and select 'Same Leve' as cliff hieght, make it so you can make your path continue through the cliffs but dont make it to big (Set brush size to 3, if your cliff is bigger than that then make your path smaller and re-do the cliff. Now that we have a U shaped cliff with 1 small crossing, select Doodads - Trees/Destructible - and select 1 type of bridge (that matches the angle of your path), place it in between the cliffs, touching each side.

    Step 2: (If you downloaded my version, delete the tavern and flatten the raised area... if you raised the U shaped cliff, leave as much as you want but try to keep it clean) Now that we have our starting area set up, lets do the Bounties (Finally :) ). First, open Object Editor and find the creeps you placed on the map. Since the items sold by the goblin merchant cost anywhere from 150-400 gold (Estimated...) we should at least make it able to buy an item with 4 kills, because this map is so small. So what we should do, find the first type of unit you put as a creep (For downloaders, find Bandit and Brigand) Edit thier Stat - Gold Bounty Aware (Base) to 36, then set the number of dice to 4, and the sides to 5 (The full chance is (base+dice) to (base+(dice*sides))... in this case its 40 to 56). If you also put level 2, or 3 creeps in... you should decrease the base by about 10 for level 1 units, and if you do have level 3 increase it by 10. Now your creeps should actually give enough cash to be able to go shopping :).

    Step 3: In order to go to the next area (Currently should be unfinished outside of the U shaped cliff we made) we will want a level required open gate trigger. We will need a region for this, go to the Region palette and create a good size region around the gate. Name it appropriatly. Open the Trigger Editor, and create another new event inside whatever folder you have or want to (I made a new folder called Part II for demonstration purposes). Now we need the event 'Unit - Generic Unit Event...' using fields like this: ''Unit - A unit enters Gate Region ''. Now we will need a condition to make sure you meet the level requirenments, but since we also want it to display a messege if we dont, we will need an If/Then/Else action, we can put the condition in that. Now create the If/Then/Else and right click on IF, select new condition, and create the action using an integer comparison: "Integer - Hero level of (Entering Unit) Greather than or equal to 2". That will make it so if you are level 2 or higher, the THEN actions will fire, if not then the ELSE actions fire. Now create a new action under THEN... the type should be 'Destructible - Open/Close/Destroy Gate'. It will look like this: "Destructible - Open Demonic Gate (Horizontal) 0087 ". Now under ELSE create a new action labeled 'Game - Text Messege (Auto Timed)'. Fill the fields to view like this: "Game - Display to (All players) the text: You must be level 2 to continue on through this gate." Now we have the gate open for us at level 2!

    Step 4: Now time for more terrain, go back to the terrain editor and select that 'Raise Cliff' tool again. Now like you did for the U shaped cliff, cut the map in half from the nearest point in the U to the center, go either straight down/up or straight across (Cut into 4 areas like this...). Now we have 4 more areas we will be able to go through, for the one your gate leads to lets create another town a corner of the U near the gate. For this town we will use the buildings in 'Doodads > Structures > Building', its a bunch of smaller random buildings... now like we did for the first town create a little path going around then back to the gate, create walls of some sort, or even raise the cliff and make the town elevated. Now add some buildings, maybe another goblin merchant and a fountain of health & mana. Throw some more rocks, trees, bushes, brush, birds etc in your town. For this town try to use some more props and destructible objects, like barrels, crates, rock chunks etc... Place at least 3 barrels in this new town, then press SPACE and select then (Hold shift to add an object to current selection) Press ENTER - go to items dropped - items dropped on death. Use 'Custom item from table' and create an item table, click new set, then add items to it. If you have 6 sets, the object can drop 6 items. If it has 1 set and 6 items within that set, it will have a chance of dropping 1 of the 6 items. You can also edit the % of each item. Since you are level 2-4 in this town, try to use some lvl 1-3 items... Now your town should look something like the picture below.

    Step 5: Lets create the new creep area, like we did before place some random trees, decorate it with rocks, birds, flowers etc... raise the hieght with hieght tool, and add some extra textures like short grass etc. Leave a wide space near the top, side, etc to put a river in... Ok now you should have another nice piece of terrain. Time to add the river (Or creek whichever you prefer...). Go to Advanced > Enforce Water hieght limits, and turn it off. Now wherever you want the water to span across, using the cliff tool make shallow water, make it be either brush size 2 3 or 4. Now go back over it all with 'Raise 1'... This will allow for smooth water edges. Now using the hieght tool, lower the terrain until you see the water, now select 'Platue', and starting from a water showing level drag it across where u made the water. Now use the 'Smooth' hieght to make it look better, noise and smooth as neccessary. Now use the environment doodad 'River Rushes' and more rocks and lily pads, make it look like a real creek. If you end at a cliff, simply go Doodads > Cliff/Terrain and find a suitable cave, make the water lead into the cave so you can still have a nice cliff (Use water doodads to enhance the looks, waterfalls in cliffs make it look like the water is coming from the cave too!)... Make some areas crossable, or go to Doodads > Bridges/Ramps and find a bridge. If the bridge you found is way to tall, simply click on it and press CTRL+Page Down to lower it (and up to raise it). Get it to look nice. *Also now is a good time to add critters, Neutral Passive > Melee > Units, use stags, frogs, bunnies etc... or instead of Melee choose Campaign to add villagers!* Your overall area should look like this:

    Step 6: Now that we have alot of nice terrain, we can add some more creeps. Make them lvl 3-5... if you want to you can make them have a chance to drop items (Select the % yourself, make it like 20% per creep...). I will use more bandits and the bandit/mage. Be sure to edit the gold dropped again! What i have now is a bunch of bandits, stags, frogs, rabbits, racoons, doodads, item drops, bounties... 1 more thing, go to 'Advanced > Gameplay Constants > Hero XP Gained: Creep Reduction Table'(Check the 'Use custom gameplay constants) and edit that field to only have the string 100. There will be no level cap or exp drain from creeps. (NOTE: I had to expand my camera bounds for extra space... Do what we did in step 1-2 on the first tutorial if you need to as well!)

    Step 7: Like we did at steps 1-3 lets make a new path going to an area this new area touches, maybe by the cave, or on the other side of the water? Or both!? Remember to make a path and a gate, then we can just copy paste the old gate trigger, and reset the values to fit this one... Lets see if you can do that part yourself with level cap of 4 :). You also need a new region around it.

    Step 8: Well now we have half of an RPG, I will continue to Part III in a few days, but one last thing you can add is a boss, go to the object editor, find a hero you want as a boss, place on other side of the gate (Wherever you would like) and select and press ENTER, set the level to like level 6, and give him to Neutral Hostile. Have fun for now.

    To download my current progress click here
    • Like Like x 3
  3. SD_Ryoko

    SD_Ryoko <img src="\usflag.gif" align="left"/>&nbsp; Admini Staff Member

    Can't beleive I overlooked this.

    I'd love to add it to the site.

    The only complaint, is the size of the images.

    Some need cropped.

    Some need to be much smaller.

    Yes I know it hurts. But we deal with screen size as a regular problem.

    600 = Great
    700-850 = Scroll box :)() but ok
    More = pretty much...bad.
  4. Rad

    Rad ...

    <Screenshots Size Reduced>​
  5. the Lumpy

    the Lumpy ►►►

    Nothing important --

    Did you mean Events?
  6. Im_On_56k

    Im_On_56k Hm...

    Also your images don't work you should update them for people.
  7. XXXconanXXX

    XXXconanXXX Cocktails anyone?

    Ummm....None of the images work. (On here or the site)
  8. sorry to say this no offense but how come your images arnt working? i know this has been said bout 4 times but im curious to see what the pictures show me :D
  9. Rad

    Rad ...


    I knew something would suck with photojerk, I only used it because you could upload multiple i mages but ImageShack added that as well. Lucky I still have all the screenshots (Which if you knew me well you would be amazed).

    Ill try to fix them, btw sorry I havent been to tutorial area for awhile.

    Im not sure if this was in the tutorial section, if it was it needs updated (Not sure what to do about this).

    *Working on images*
  10. The Helper

    The Helper Administrator Staff Member


    You have a whole subdomain here at - you know where your site is. Why would you use a seperate file hosting service when you can just host the files in your filespace here? I am not talking about your attachments on the forum rather your subdomain, just copy the images into your folder and link to them.
  11. Rad

    Rad ...

    Well... to tell the truth Im a noob at the entire website thing. I guess I will do that from now on though, imageshack is easy to use though

    Fixed the links by the way
  12. Battlemapsta

    Battlemapsta I am the Conduit of Change

    When is the third part coming out. I know it's gonna be about that saving thing game caches or something I really have trouble understanding them. It's a good idea to see who is gonna get the rep to make such an understanding tutorial about it.
  13. Shadows

    Shadows New Member

    Yo, i am only focuseing on one part of that tutorial..

    This works great mind you, but i came accrost an issue with when the units respawn they no-longer drop items from my item sets. I was trying to find a way to fix this but i couldent get any good working ideas going. If you can please post this or PM me with a solution. Thanks (anyone else can two if they find out).
  14. IrReLeVeNt

    IrReLeVeNt Guest

    Just got done making the RPG tutorial map going by what you said, but I altered a few things. But it looks great and all the triggers are working good. Im still waiting though for part 3 of the tutorial......
  15. SirGre

    SirGre Guest

    This is sorta my first RPG, BUMP!
  16. xtxChaosxtx

    xtxChaosxtx Guest

    The problem is it creates a new creep instead of reviving the old one
  17. Rumble123

    Rumble123 Guest


    Thanks a lot it works great!
    I'm off to create the biggest epic ever!!!

    (runs toward the sun setting in the horizon waving a manuscript with pages flying)

    Seriously though great tutorial for beginners like myself :D
  18. Whisker

    Whisker Guest

    Umh I've got a question in your tut
    Where to do this? couse I can't find it anywhere :(

    NOTE: You can not level past 5 from creeps, you must change the game constants creep reduction table to 100 [take off the ,80 ,60 ,40 ,0 to gain full experience
  19. Metalelf

    Metalelf Guest

    .... that means triggers check the conditions and run the actions if the conditions are met it does not mean events.....

    Anyways cool tutorial dident read all of it but great you added pictures (that dont work now)
  20. GreyDeath

    GreyDeath Guest

    Great tutorial, i have just used most of it, and im almost 1/4 done my 1st version, but could you (if you have time) add a save/load tutorial, all the current ones are so complex, and i cant find one with - between every 4 characters. if not thats fine you have already helped me more than you can imagine.
    good job man

Share This Page