Banner

Repeat

End

Forums

HavenForts: Construct JetFists - The Chronicles of Wargasm (Episode 2, NeoForts)
  #1  
Old 05-21-2005
Master Craftsman
 
Join Date: May 2005
Posts: 555
Send a message via AIM to WillyDavidK Send a message via MSN to WillyDavidK
Default A guide to entmakers for beginners.

OK, I have been puttings this off for a while, but I have finally decided to make a slow-paced tutorial aimed at beginners to aid with making entmakers. A common thing for some reason with the newer mappers is too stack props on top of each other, which causes tons of bugs and a lot of uncessary lag. Hopefully this tutorial will go to good use and we won't be seeing much more of this in the future.

Note: My resolution is 1600 X 1200 so due to some of the pictures which are full resolution the window is a little stretched out. Sorry about this.


Ok, let's begin. First of all, load up your map, or load up the example vmf which you can download at the end of this post.
Figure out where you want your piece to land after you push the entmaker button (which we will create later). This is the exact location the piece will spawn in, the same angles and everything. Note that if it is in the air (which is recommended) the piece will simply spawn there and fall to the ground.

Load up the entity tool and enter "prop_physics" (w/o quotes) as your entity in the pane in the lower-right hand corner.



Click anywhere in any of the 2d views to bring up the axes and center them on the spot you want your block to spawn and hit enter to create the entity there. Alternatively you can just click (with the ent tool still active) in the 3d view and it will spawn on the nearest wall. You can then move it to the spot you want.

Switch to the selection tool and select the ent you just placed. Push alt + enter to bring up properties. Select the "world model" parameter and hit "browse". In the window that comes up, find the folder named sf. Go into this folder. Once in this you will find that all of the models have no picture but instead just say "MDL". This is ok. This is what each of the names mean:
bmetallbb01 - thin blue block (large rectangular)
bmetallbb02 - thin blue block (small rectangular)
bmetallbb03 - thin blue block (long)
bmetallbb04 - blue cube
bmetallbb05 - blue rectangle (3d)
rmetallbb01 - thin red block (large rectangular)
rmetallbb02 - thin red block (small rectangular)
rmetallbb03 - thin red block (long)
rmetallbb04 - red cube
rmetallbb05 - red rectangle (3d)

Pick the one you want to use and hit apply. For this example we will use rmetallbb04 or the red cube.



The last thing you need to do with this block is name it. Pick the name parameter (should be the first on the list). Enter anything relevant into the blank. Make sure this is something useful because you will have to name every block. I will name mine redcube. You will notice that as you are typing the name in, it is colored red becasue hammer doens't see that name anywhere in your level. Hit apply (in the lower-right corner of the properties window) after typing the name in and you will see it turn black.

After you are done with this you might look around your block again and make sure it isn't inside any walls or objects nearby, as this will cause problems when it tries to spawn.

Go back into the ent maker tool and enter "point_template" for your ent (this is the same as before when you created a prop_phsyics, except now you are creating point_template). Create this somewhere near your block as not to get it confused with others later on. the location of this doens't affect anything, but it is important that you know where this is should you ever need to change it's properties. For this example, I am going to put mine directly above the cube (note that if you are attempting to place the ent by clicking in the 3d view, you will find that you can't click on the cube model to place. You will have to click on a nearby brush and move the template over to where it should be)

Switch to the selection tool (shift + s) and select the newly created template. If the properties aren't still open from before, push alt + enter to bring them up. If the window that you used to change the model of the cube and name it is still open it will automatically change when you select the template.

You will see that this ent is very simple, just a name and 16 template slots. For this entmaker we will only be using one template slot however, so just pretend the rest aren't there.

Select the template 1 parameter and enter the name you etntered previously for your cube. For this example, that was redcube. Note that hammer should try to finish the name for you as you are typing it in. If you type the entire name into the slot and it is colored red than there is a problem. Either you typed it in wrong, or you didn't name the cube right. Check the cube's properties and make sure it is named, and maybe copy its name and paste it into the template 1 slot in the point_template. Alternatively, you can use the drop-down menu to list any existing named entities in the level and pick the name from there. This is a more accurate choice early on, but after you have 60 named ents in your level, typing the name in is much faster than digging through the list for the one you want.



Now you will need to name the template the same way you named your cube. Once again use a relevant and logical name for the template. I will name mine redcubetemplate.

Now you are ready to create the button that is going to spawn your block! You can make the button look like anything you want, but for this example I am going to just use one of the button textures from hl2.

NOTE: in the next few paragraphs the bracket numbers correspond to labels in the following pic.

Go over to the texture window (right side, second group down, under the select menu with the 3 buttons). Push browse, and find the material named props/doorbutton002a.

Select the block creation tool[1] and create a new block agains the wall by dragging a rectangle in the 2d views. Make it 8 X 8 X 16 (where 16 is the height). If your grid is too large push the [ key to make it smaller. Push enter to create the solid. If the button texture is much too large or is not centred correctly, you will need to bring up the texture application tool[2]. In this window, make sure the scale for x and y is set to 0.25. If for some reason the scale is at 1.00 then you are just falling under a really common error which I myself haven't figured out a cure for. Just means an extra step when texturing anything. Anyways set the scale to .25 if need be, and hit apply. If you need to, hit the button labeled "C" to center the texture on the front of the brush. You should have a pretty nice looking button now. Switch back to the selection tool, and In the top 2d view, collapse the brush into the wall by dragging the white square on the side away from the wall over until the brush collapses to 1 unit wide[3].



Ok, so now you have your prop, your template, and your button, you almost there! The problem is now we have a brush with a nice button texture, but it is still just that - a brush! We need to do what is called tieng it to an entity. There are a few ways you can do this. The fastest way is to select the brush and hit ctrl + t. This will bring up a properties window just like we were looking at before. And you know what that means, this brush is now tied to an ent! Alternatively, you can hit the button over directly above where you entered the name of the prop_phsyics and point_template that says "toEntity". Conversely, the button right next to that one that says "toWorld" will untie the brush from an ent making it a regular brush again.

Now that we have it tied to an ent, we need to make that ent the right one! Go to where it says env_bubbles. highlight env_bubbles and change it to func_button. If you don't see env_bubbles in your window anywhere it's because of something you changed in configuration. Just refer to the picture for where you will put func_button.

Now you have a lot more parameters, and it may look a bit overwhelming at first. For this example we won't be using any of them but Name. Go ahead and name the button in the same manner as you have been. Hopefully you are getting used to this procedure by now, you will use it a lot. I will name mine redcubebutton. Hit apply to finalize your name (where it turns black). Now click the "flags" tab at the top. You will see a list of checkboxes, and only one of them will be checked ("use activates"). Check "Don't move" to ensure your button doesn't sink into the wall!

Now go to the Outputs tab. This is where it all comes together. Click "add" at the bottom. You will see a new output appear in the chart and a lot of textboxes become active. Under the first one ("My output named") enter "OnPressed". Go to the next blank ("Target entities named") and enter the name of your template. If you remember before, I named mine redcubetemplate, so I will enter that here. The same rules apply as when you were entering the name of your cube into the template slot. If the name is red after you enter the whole thing, then there is something wrong with the name. Go to the next blank ("Via this input") and enter "ForceSpawn". The next blank should turn grey. Hit apply.



To ensure your work, you might go back to the template and look at it's properties. Under the "inputs" tab you should see that I/O trigger you just created. This shows that it is working both ways.

And guess what happens now? You're done! Compile and test! One thing you might want to do in addition is drag a nearby spawn point over to the wall as a reference. I use these all the time. While they are obviously critical ents for creating spawn points, they come in very handy, because they show the size of a player to perfect scale. You can stick your 3d view right through gordon's little eyes and you are at what will be eyelevel ingame. Line the button up to a good spot based on the player so you won't end up with a button so high you have to jump up to push it.

You can copy everything an paste it in again to make another entmaker. Just go in and change all of the properties we went over here to something different depending on what type of brick you are spawning.

Congratulations if you have read this entire thing and are still awake! I hope you have learned some new things and will be able to effectively utilize ent spawners in your level after reading this to relieve the community of those terirble stacks of blocks.


And just as I promised, here is the vmf (right click save as)
Reply With Quote
  #2  
Old 05-21-2005
Master Craftsman
 
Join Date: May 2005
Posts: 555
Send a message via AIM to WillyDavidK Send a message via MSN to WillyDavidK
Default

Hm looks like I posted this in the wrong forum. Sorry guys do'nt know why I posted it here. I guess I will just have to wait on a mod to see this and move it.
Reply With Quote
  #3  
Old 05-21-2005
jlf's Avatar
jlf jlf is offline

Fort Warrior
 
Join Date: Apr 2005
Location: BNG-TQ2402076524
Posts: 1,182
Send a message via ICQ to jlf Send a message via AIM to jlf Send a message via MSN to jlf
Default

Moved to 'Mapping Help'. Haven't read it yet, on my way to bed.
__________________

"If they rape and kill me, I hope they kill me first. That way, I sort of win."
Reply With Quote
  #4  
Old 05-21-2005
Fort Warrior
 
Join Date: Apr 2005
Posts: 1,072
Default

Quote:
Originally Posted by jlf
Moved to 'Mapping Help'. Haven't read it yet, on my way to bed.
Good night honey!
Joke.....
Reply With Quote
  #5  
Old 05-22-2005
ChaosBringer577
Guest
 
Posts: n/a
Default

somebody sticky this
Reply With Quote
  #6  
Old 05-23-2005
Stinger's Avatar
Old School
Master Craftsman
 
Join Date: Mar 2005
Location: New Zealand
Posts: 876
Default

Very good. It's just a shame this will be obsolete with the next version of SourceForts.
__________________

#sourceforts - irc.GameSurge.net
Reply With Quote
  #7  
Old 05-26-2005
Master Craftsman
 
Join Date: May 2005
Posts: 555
Send a message via AIM to WillyDavidK Send a message via MSN to WillyDavidK
Default

it's still a good skill to learn just for general uses.
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT +1. The time now is 06:15 PM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO 3.6.0

Tab