PDA

View Full Version : [Guide] How to create a Neutral Creep Spot



Schm0ftie
02-17-2011, 11:34 AM
[Guide] How to create a Neutral Creep Spot v.1.0
(this guide was made with HoN v.2.0.13.3)

Introduction:

Hey guys,
I guess a lot of people are still waiting for some guides to create
their own map. Now this guide will teach you how to create your
own Neutral Creep Spots so that you can fill your Jungles with
all a Jungling Legionaire is dreaming of.


First of all, sry but my english isn't the best, so if you find heavy mistakes
or want to rewrite it into a perfect language version feel free to ask me.

How to create a Neutral Creep Spot

What will we need?
1 x Entity_NeutralCampController
3 x Entity_NeutralCampSpawner

You will need 1 Controller for each Neutral Creep Spot you want to create
and 1 Neutral Camp Spawner for each SINGLE creep it can spawn.

Now let us start with creating one "Entity_NeutralCampController" and
setting his properties up. (The "Entity_NeutralCampController" is the point
from which the game will check if the creep spot is blocked or not)

Name:
First of all you can set up the name for this Controller, you don't have to
bug I suggest and prefer to name them for example like this "l1_controller"
the " l " stands for Legion so a Hellbourne Creep Controller would be named
"h1_controller" and the 2nd Creep Controller "h2_controller" you get the idea.

Team:
There you can choose the team for your creep spot. I allways used "None"
because I used the creep spots from Forest of Caldaver to learn and that's
how it is done there. (Maybe someone can explain what the difference
between "None", "Neutral" and "Passive" is.)

Level:
The Level represents the color on the minimap or let me say the difficulty
of this creep spot. We will use for our creep spot "2" because ogres are
not that easy =) (It will be a yellow point on the minimap)
Here are all setting for level:
1 = Easy (green)
2 = Medium (yellow)
3 = Hard (orange)
4 = Ancient (red)

Type:
We did allready set it up by creating a "Entity_NeutralCampController"

Model:
We use the model "tools/m.mdf" which looks like sweet candy =)

Skin:
You can change the color of your candy, I use "blue" for Controllers/Spawners.

Target #1...4:
We skip all targets and come back later to this point.

Config:
In config you can set up the maximum number of possible stacks
(everybody knows creep stacking I guess). We want basicly maximum
3 stacks so we write: "maxstacks:3"
You can change the number to whaterver you want, gues only your engine
will be a limit to it ;)

Furthermore you can add "chasetime:X" where X stands for the time (in ms) the creeps will
chase you if you pull them out. So a possible setting is "chasetime:3000" so the creeps will
follow you for 3 seconds. If you don't add the chasetime the creeps will use a default
value (which I actualy don't know, maybe someone can help). If you use "maxstacks:X" and
"chasetime:Y" you will have to sperate them by using a " , ". Thanks to dandylon (http://forums.heroesofnewerth.com/member.php?u=57049) .

Now we are done with the Entity_NeutralCampController for the moment.

It should look like this (**Note*** In this picture I allready fill "Target #0"
you will do it too but later in that tutorial so you can leave it free until you
reach that point. )

http://img593.imageshack.us/img593/9384/tutorialjunglep1.jpg

Now we have to create our creeps. We will make a creep group of 3 ogres
( 2 melee green ogre and 1 caster blue ogre) so we will have to create 3
Entitiy_NeutralCreepSpawner ( one for each creap )

Let us start with the first one and set its properties up.

Name:
The Name should be something self explaining for example we use
"l1_creepgroupname_enumeration" where creepgroupname stands for our
creepgroup, we want a group of ogres so it will be "ogres" and the
enumeration helps us to identify the creep (the game needs unique names
or it can't differentiate between them). We will name the first ogre like this:
"l1_ogre_A"

Team:
"None"

Type:
Allready set up.

Model:
We create the blue caster oger as the first one so the model will be:
"npcs/n_ogre/model.mdf"
You will have to scroll until you find the category "npcs/n_" which are all
the neutral creeps you know from HoN.

Skin:
Leave the skin as "default".

Target #0:
Now we set up the "Target #0" as the following one:
"Neutral_Ogre"
Every single creep has his own "target" they are similiar to the model name
but case sensetive and sometimes are creeps with two names like a Wolf
Commander written as one word like this "Neutral_WolfCommander" some
others would be splitted into this "Neutral_Ogre_Leader". Check the list at
the end to know which creep has which target.

Now we are done with the first Ogre.

It should look like this:

http://img832.imageshack.us/img832/467/tutorialjunglep2.jpg

We continue with the next ogre. Again a "Entity_NeutralCampSpawner".
It will be like the first one we only change the following things everything
else stay as in the first ogre.

Name:
"l1_ogre_B"

Model:
"npcs/n_ogre_leader/model.mdf"

Target #0:
"Neutral_Ogre_Leader"

It will look like this.

http://img5.imageshack.us/img5/9489/tutorialjunglep3.jpg

The last ogre will be a green melee ogre like the 2nd one. So we can simply
copy the 2nd one and we only need to change...

Name:
"l1_ogre_C"

Like this.

http://img413.imageshack.us/img413/4407/tutorialjunglep4.jpg

We have our creep group. Now we need to go back to our
"Entity_NeutralCreepController" to the "Target #0...4"

The Target's represent the possible creep groups which can spawn at this
creep spot. So you can only have a variety of 5 groups at 1 creep spot.
You can create 5 different group or you can create 4 groups of ogres which
are all the same and 1 group of wolfs so you have a chance of 80% to get
ogres and only 20% to get wolfs.

Okay now we write into "Target #0" our 3 ogre names, seperated by a " , "

Target #0:
"l1_ogre_A,l1_ogre_B,l1_ogre_C"

Now we have created a complete creep spot. To have more
variety create other groups like skeletons or wolfs, do like with the ogres,
find a good matching name like "l1_wolfs_A"... find the model (mostly
matching model name with ingame name) and setup the "Target #0".
Don't forget to add every creep group for a creep spawn to its CampController.

http://img703.imageshack.us/img703/7317/tutorialjunglep55.jpg

**Important Notes**
- You should move your "Entity_NeutralCampSpawner" close to the
"Entity_NeutralCampController" because the Creeps will spawn at the point
where their spawner is and if it is to far away from the controller the creep
spot will stack itself.

Keep them close like this:

http://img38.imageshack.us/img38/9008/tutorialjunglep6.jpg

- Always you have to write something into the entity box you are
writting in becomes red, to apply the changes after writting you have to
press "return" after that the box will become normal again.

- Everything in " " that you have to write into the properties have to be
written without the " ".

- A creep spot with 5 different groups will be look like this, a big fat cluster:

http://img715.imageshack.us/img715/8757/tutorialjunglep7.jpg


List of all "jungle" creeps


Modell Name Target #0
Ogre_Leader Neutral_Ogre_Leader
Ogre Neutral_Ogre
Minotaur Neutral_Minotaur
Goat Neutral_Goat
Vagabond_Leader Neutral_VagabondLeader
Vagabond Neutral_Vagabond
Vagabond_Assassin Neutral_VagabondAssasin
Skeleton_Boss Neutral_SkeletonBoss
Skeleton Neutral_Skeleton
Catman_Leader Neutral_CatmanLeader
Catman Neutral_Catman
Snotter_Boss Neutral_snotterlarge
Snottling Neutral_snottling
Earthoc Neutral_Earthoc
Sporespitter Neutral_Sporespitter
Antlore_Healer Neutral_AntloreHealer
Antlings Neutral_Antling
Werebeast_Enchanter Neutral_WerebeastEnchanter
Werebeast Neutral_Werebeast
Wolf_Commander Neutral_WolfCommander
Wolf Neutral_Wolf
Vulture Neutral_Vulture
Screacher Neutral_Screacher
Dragon_Master Neutral_DragonMaster
Dragon Neutral_Dragon
Predasaur_Crusher Neutral_PredasaurCrusher
Predasaur Neutral_PredasaurI hope that I could help some people to understand how neutral creep spawns are made.

Thanks for reading =)

an7hraxjax
02-19-2011, 01:35 PM
+1 internetz for you ! good and clear pictures, tnx for the guide !

dandylion
02-19-2011, 08:40 PM
You took my guide (http://forums.heroesofnewerth.com/showthread.php?t=203664) and made it +1000. Fo rizzles.

Schm0ftie
02-20-2011, 08:33 AM
You took my guide (http://forums.heroesofnewerth.com/showthread.php?t=203664) and made it +1000. Fo rizzles.

Hey Dandylion,
sorry dude I didn't know that there is allready a guide. Thought if there is one it would be at least a sticky or at least named in a sticky thread with a link to it. In fact I have read your guide 5 min ago the first time. Furthermore you have something I didn't know ...

"chasetime:X" - Means that the time the creeps follow you until they went back to their camp?

... guess if I did know that you allready wrote a guide I never had done this guide (took me a lot of time). I would like to add the "chasetime:X" to my guide if it is okay with you.

dandylion
02-20-2011, 09:33 AM
No, you totally took it to the next level. It was really a "thanks for doing the work" thing. Feel free to add the chasetime section too! (it means exactly what you thought it meant)

Schm0ftie
02-20-2011, 09:53 AM
Thank you dude, have add the chasetime and mentioned you =)
If there is interesst I could create another guide (same style as this one) about setting up the lanes, buildings and bases.

Techies
02-23-2011, 03:10 PM
Where do I find a list of config variables you can use for the camp_controller?

Schm0ftie
02-24-2011, 05:49 AM
I don't know where to find, I did the most things by running to instances of the editor, first with my map, 2nd with fores of caldaver and then allways looked up... how they did^^ I hope in the future there will be a list for everything.

Techies
02-24-2011, 07:20 AM
Just searched through all the files in resources0.s2z via WinGrep and could only find the following:

Gamesettings.cfg
Set "g_unitGuardChaseTime" "7000"
Set "g_unitGuardReaggroChaseTime" "3000"

But I couldn't find chasetime at all, so how does one know what you can enter in the config line? I kinda hit a roadblock with my map, because I need to figure out how to make different spawners spawn at different time intervals from one another and how to stop them from spawning after a while.

Schm0ftie
02-24-2011, 08:10 AM
Guess you will have to add something like different types of "neutrals"
Then you could probably mess arround with the "Game_Settings.cfg"
Found the following in it


Set "g_neutralCampMapIcon" "/shared/icons/minimap_circle.tga"
Set "g_neutralCampMapIconColor1" "0.8000 0.8000 0.0000"
Set "g_neutralCampMapIconColor2" "1.0000 0.6000 0.0000"
Set "g_neutralCampMapIconColor3" "1.0000 0.4000 0.0000"
Set "g_neutralCampMapIconColor4" "1.0000 0.1000 0.0000"
Set "g_neutralCampMapIconSize" "0.0250"
Set "g_neutralFirstSpawn" "30000"
Set "g_neutralNoRespawnProximity" "500.0000"
Set "g_neutralRespawnInterval" "60000"Maybe this can help you.

Oloko
02-24-2011, 08:29 AM
Like the guide said, you can use specific config for each neutral camp. Here is a list of the configs I know:
maxstacks
radius
chasetime
chasedistance
reaggrochasetime
reaggrochasedistance

If you want to do it globally rather than for specific neutral camp, then use settings like Sch0ftie said.

I know that kongor spawner uses more attributes to specify first spawn and respawn time, but I doubt you could add them to a neutral spawner. To change it you need to open up the entity list and edit your neutral camp line.
Here is kongor controller:

<entity angles="0.0000 0.0000 -98.2000" firstlevel="1" firstspawntime="0" icon="/shared/icons/minimap_circle.tga" iconcolor="0.6 0 0" iconsize="0.0500" index="3257" maxlevel="11" model="/tools/m.mdf" name="Kongor_Controller" position="10695.4082 7677.9038 -128.0000" respawninterval="600000" scale="1.0000" seed="0" skin="default" target0="Kongor_Spawner" target1="" target2="" team="0" type="Entity_BossController"></entity>

So you can try taking the firstspawntime and the respawninterval to your neutral camp.
If nothing works, then you can also try to create a boss controller like kongor, but use it to spawn your neutrals (look at watchtower entitylist file for an example).

Techies
02-24-2011, 04:10 PM
Like the guide said, you can use specific config for each neutral camp. Here is a list of the configs I know:
maxstacks
radius
chasetime
chasedistance
reaggrochasetime
reaggrochasedistance

If you want to do it globally rather than for specific neutral camp, then use settings like Sch0ftie said.

I know that kongor spawner uses more attributes to specify first spawn and respawn time, but I doubt you could add them to a neutral spawner. To change it you need to open up the entity list and edit your neutral camp line.
Here is kongor controller:

<entity angles="0.0000 0.0000 -98.2000" firstlevel="1" firstspawntime="0" icon="/shared/icons/minimap_circle.tga" iconcolor="0.6 0 0" iconsize="0.0500" index="3257" maxlevel="11" model="/tools/m.mdf" name="Kongor_Controller" position="10695.4082 7677.9038 -128.0000" respawninterval="600000" scale="1.0000" seed="0" skin="default" target0="Kongor_Spawner" target1="" target2="" team="0" type="Entity_BossController"></entity>

So you can try taking the firstspawntime and the respawninterval to your neutral camp.
If nothing works, then you can also try to create a boss controller like kongor, but use it to spawn your neutrals (look at watchtower entitylist file for an example).

Tried doing it for the normal neutral spawner, but didn't work. I just entered "Alpha" into the config box, to make it easy to search for in the entitylist(inside mapname.s2z) and added respawninterval = "1000". But found no neutral spam in my map.

Will give the kongor solution go at a later time. Would be able to do so muhc more if I had more control over individual spawners.