From Valve Developer Community
Jump to: navigation, search
Русский 简体中文

Page Creation

Editing Toolbar

button_bold.png Bold text
button_italic.png Italic text
button_link.png Adding internal links
button_extlink.png Adding external links
button_headline.png Adding a headline
button_image.png Inserting a picture
button_nowiki.png Ignore Wiki formatting
button_sig.png Inserting your signature
button_hr.png Horizontal lines

Formatting Pages

Page Templates

Specific Formatting Guidelines

Page Creation

You can start editing a non-existent page in several ways:

  • The easiest way is to type the exact name you want into the "Search" bar then hit "Go". If the page doesn't exist, you will be able to create it.
Warning:Make sure the subject of the page you have in mind isn't already on the wiki. For example, you want to create the page "Portal 2 Particles", but you didn't notice the List of Portal 2 Particles page.
Let's say you've typed "Foobar" in the search bar, then hit the "Go" button. Since the page doesn't exist, you are given this message:
There were no results matching the query.
Create the page "Foobar" on this wiki!
In this scenario, you are able to click the Foobar link and begin editing your new page.
Tip:Red links are pages that have not been created yet, and blue links are pages that already exist.
  • You can can modify the URL in your address bar to go where you'd like (in this case using the address
  • Some pages in the wiki contain many red links. If you are familiar with the subject matter of the non-existent page, feel free to create the new page by following the red link. Your contributions are greatly appreciated, and the more blue links, the better.

During the course of an edit, clicking Show preview (to the right of the Save page button) will help you determine if your edit looks good. This displays the final result of the edited page, but does not save it. This will avoid spamming the Recent changes page with saved edits, to the frustration of other editors.

When you are done editing, proofread it to make sure that the edit is final, and then click Save page to finally create the new page.


To test your editing skills, you can either use the public Sandbox page, or create your own sandbox page. You can create your own sandbox by navigating to your user page, then adding "/Sandbox" in your address bar at the end of the URL. Be sure you're on your user page before creating it.

Seasoned editors who wish to further advance their editing skills in Templates can use the Template:TestTemplate page to test their template code.

[Back to top]

Creating a How-to Page

There are some basic guidelines on writing your own tutorial and how-to pages.

  • Most importantly, before you start, make sure you fully understand the subject you want to write a tutorial about. It can be very hard to write something informative if you're not sure how to do it yourself.
  • Decide what kind of tutorial you are making. Is it a basic tutorial for people who haven't used Hammer much, like how to use the texture browser? Or is it a tutorial explaining how to create complex scenarios with-in a game, more suited for advanced users?
  • A good tutorial is a tutorial that is fun to read:
    • Before you start, add a brief description of what the tutorial will be about.
    • Split it into steps, each with one very specific key feature. If it is a beginner tutorial, do not be afraid to include every step.
    • Group sets of steps which all together achieve one through the other a goal. For example, if you are writing a tutorial about a collapsing elevator, group the steps explaining how to create an elevator frame, animated door model, and invisible entities into one group. The next group of steps in the tutorial can explain how to make the elevator collapse using entity inputs and outputs. Finally, describe how to connect everything together.
    • Add pictures. An image can describe something that is not self-explanatory. However, don't overflow the tutorial with them: use images when it will improve the text.
    • Add charts, when explaining entity input and output behaviors. It's easier to follow if there's a chart identical to the Output flag in Hammer already filled with the information. The reader can just copy it or reverse engineer it to see why it should be done like this and not differently.
  • When writing a tutorial, keep in mind people who may not be familiar with most of the uncommon entities in Hammer. When listing one, link it to the page describing it. Don't try to explain what it is, or how generally it should be used if it's already explained on the entity page.
  • Try to connect steps with a logical order that other people will understand. After reading your tutorial they will do that action as you did it. If they can't understand what they did they can't improve upon it.
  • Make a good summary at the end of the tutorial to make it obvious to the reader had done all the steps necessary in order to achieve the goal.

Now create a sandbox page and start writing!

Creating a Mod Page

Please review the Mod page guidelines before creating a page for a Source/GoldSrc mod.

Creating an Entity Page

See Entity Article Template for help creating entity pages.

Creating Categories

Categories enable pages to be added to automatic listings. These help structure many pages by grouping them together around similar subjects. There may also be a section listing the subcategories of that category.

Category pages are usually created for the description of their existence. For example, Category:Blender is a category for all pages related to the free and open source 3D modeling package, Blender.

To add a page to a category, simply place [[Category:'''CATEGORY NAME''']] at the bottom of the page. All pages that have the same category name will be listed automatically in the category.

For a list of all current categories, visit Special:Categories.

[Back to top]

Creating User Pages

Your user page is your own personal editing venture. You are free to edit it with anything you desire. It is frowned upon by the Valve Developer Community to make direct edits to user pages that do not belong to you, unless the page contains media or external links relating to pornographic material, illegal warez/torrent sites, etc. If that is the case, you will risk your IP for permanent ban from the VDC.

To edit your user space, you must first have an account on the VDC. Registering is free and easy to do. Once you're logged in, click on your username at the very top-right of this page.

[Back to top]

Creating Discussion Pages

Note:Please do not add to a discussion page when you are making a minor edit as they do not contribute to the page discussion. The reasoning for your change can just be placed in the Summary box.

Discussion (or talk) pages are for user discussions concerning the information contained in its respective main page. It can also be used for requesting help. Talk pages (even your own) should not be used for sandboxes. Doing so does not leave a proper place for discussion.

To create or edit a discussion page, just click the "Discussion" tab above, next to the "Page" tab.

Tip:You can also use the keystroke Alt+T to quickly switch to the discussion page, that is if your web browser/operating system allows it.

Discussion pages have a special flow. When you are commenting on posts in a discussion page, indents are used to reply to comments. See below for more information on this technique.

It is important to sign your comments with your username and the time/date of the post. This is a simple process that only requires four characters. Four tildes (~~~~) will automatically be replaced with your public user information along with the time and date of the post. Signatures are explained further here.

[Back to top]

Editing Guidelines

Although these aren't rules, they are necessary guidelines that each user should acquire and respect.

  • A user page is a user's own personal space. Try not to make edits to a user page without consent of the page's owner.
  • Make use of the Show preview button when editing a page. This will show you exactly how the page will look after saving your changes. It will help keep the Recent changes page clean and easier to navigate.

Editing Toolbar


Each button, when pressed, will paste a small example of the usage of a pace of special formatting. If you have text selected, pressing a button will format the text instead of pasting in sample code. For example, to make some text bold, simply select some text in the edit window and press the bold button (the first button on the editing bar).

Bold text button_bold.png

Bold text is very simple. Put in three (3) single apostrophes before the section of text you wish to bold, and three (3) after.

   Syntax '''Bold text''' 
 Example Remember to '''always''' brush your teeth. 
   Results Remember to always brush your teeth.

Italicized text button_italic.png

Italics are just as easy as bold text. Put in two (2) single apostrophes before the section of text you wish to italicize, and two (2) after.

   Syntax ''Italic text'' 
 Example The ''Queen Mary'' sailed last night. 
   Results The Queen Mary sailed last night.

Internal links button_link.png

If you want to link to another page that is in this particular wiki, you simply need the title of the page. To link to the Main Page, you simply use "Main Page". Easy!

   Syntax [[Link title]] 
 Example Click here to go to the main page: [[Main Page]] 
   Results Click here to go to the main page: Main Page
Note:Spaces are automatically converted to underlines for internal links. [[Main_Page]] is equivalent to [[Main Page]], but you should use the latter.

You can also change the text of the link, without affecting what it links to. This is useful if you have to adjust for grammar.

   Syntax [[Link title|Text for link]] 
 Example [[Main Page|Click here]] to go to the main page. 
   Results Click here to go to the main page.
Tip:Any header on a page can be "jumped to" by including a hash tag and header name at the end of the link title. For example: [[Help:Editing#Internal_links|Jump to "Internal links"]].

External links button_extlink.png

External links are used to link to web pages that are not in this wiki. Any link with the external-link-ltr-icon.png icon means it's an external link that will redirect you from the wiki.

   Syntax [ link title] 
 Example [ Click here] to learn more about applying to Valve. 
   Results Click here to learn more about applying to Valve.
 Example [ Google+ (secure link)] 
   Results Google+ (secure link)

Adding a headline button_headline.png

Headlines are used to subdivide an article into meaningful sections. You can change headline sizes by varying the number of equals signs (=) to change the size of the headline. This makes it very easy to categorize a page, creating a clean, efficient way to find information. Additionally, with multiple headlines, the wiki engine will eventually add a Table of Contents box to the beginning of the page, allowing a viewer to instantly hop to the subject they want on the page. On standard pages, second level (Large) headlines should be used. Extra-Large headlines are reserved for the page title.

   Syntax = Extra-Large Headline =

== Large Headline ==
=== Medium Headline ===
==== Small Headline ====


  • Example of an XL headline (use sparingly)


  • Example of a L headline (use this as the first headline on a page)


  • Example of a M headline


  • Example of a S headline

Embedded pictures button_image.png

Embedded pictures are pictures that have been uploaded to the wiki and are now directly hosted by it. To upload a picture, visit Special:Upload.

Warning:Please read the image use policy before uploading images.
   Syntax [[Image:Filename.png]] 
 Example [[Image:Steam_available.png]] 
   Results Steam available.png

The [[Image:Filename.png]] syntax has a few options that you can use. These can be placed as an option anywhere in the line:

Option Example Description
thumb [[Image:Filename.png|thumb]] Produces a framed thumbnail version of the image.
###px (size) [[Image:Filename.png|300px|thumb|This is an example image]] Changes the pixel size of the images.
left (right, center) [[Image:Filename.png|thumb|150px|right]] Controls the alignment of the image on the page

Ignore Wiki formatting button_nowiki.png

This button may rarely be pressed, as the only time this may be used are for making descriptions for maintenance edits or writing pages like this one here. It will ignore all wiki formatting between the nests and only returns plain and simple text.

   Syntax <nowiki>Insert non-formatted text here</nowiki> 
 Example <nowiki>This is '''bold''' text.</nowiki> 
   Results This is '''bold''' text.

Signature button_sig.png

Inserts your user name, which links back to your user page, and a time stamp, which marks the exact time you submitted your edit. This is mainly used to "sign" your posts when inserting comments on Talk (discussion) pages. It is common courtesy to sign your comments on Talk pages. You can change what appears in your signature by going to Special:Preferences.

Tip:The syntax includes two hyphens (--), but you really only need four tildes (~~~~) to insert a signature.
   Syntax --~~~~ 
 Example This discussion page may need archived soon. --~~~~ 
   Results This discussion page may need archived soon. --FakeUser23 21:38, 17 October 2011 (PDT)

Horizontal lines button_hr.png

   Syntax ----

Horizontal lines are usually only used at the end of a large section of a single page. Use them sparingly, as too many make a page look ugly. Proper use of headlines can render these unnecessary.

[Back to top]

Formatting Pages

Bullet points

This function can create unordered lists. Bullet points are useful for listing multiple items that fall into a similar category.

   Syntax * Item 1

* Item 2
* etc...

 Example * Red

* Blue
* Green

  • Red
  • Blue
  • Green
Tip:Increasing the number of asterisks (*) increases the indent of the item.

Numbered lists

You can create ordered lists using this syntax. Numbered lists automatically number items according to their placement in the page.

   Syntax # Item 1

# Item 2
# etc...

 Example # This is the first step.

# This is the second step.

  1. This is the first step.
  2. This is the second step.

Definition lists

You can also create definition lists equivalent to the <dl>, <dt>, and <dd> HTML tags.

   Syntax ;Item 1

:About Item 1
;Item 2
:About Item 2

 Example ;Center

:A point equidistant from all points on the surface of a sphere. 

A point equidistant from all points on the surface of a sphere.


Indenting is more commonly used when responding to discussion posts. A colon character (:) is placed at the beginning of the line. The more placed, the further the indent. This indents a line of text about the same length as if you pressed the Tab key.

 Example :This line will be indented once.

::This line will be indented twice.
:::This line will be indented thrice.

This line will be indented once.
This line will be indented twice.
This line will be indented thrice.

This format is commonly used in discussion pages. When a user makes a post, it is common to indent your response. See the fake discussion below for an example of how to properly flow talk pages with indents. The colons only appear as an example.

Anybody else believe unicorns exist? --jd650

:Yes. Actually, I've bred a couple of them. --MarcusTwain
::Really? Do you have photos? --jd650
::I, too, am interested in these photos. --Halifax
:::I, err.. don't have a camera.. --MarcusTwain
:No, I don't believe in unicorns. --ChOcObO_23
::Why not? --jd650

Adding tables

Tables are a diverse way to lay out information on a page. Because they can be very specific, the table below shows a quick how-to when creating Wiki tables as opposed to standard XHTML tables.

Table <table></table>
Styles <table class="standard-table"></table>
{| class=standard-table
{| class=wikitable
Header cell <th>heading</th>
! heading
Row <tr></tr>
Data cell


| cell1
| cell2
Data cell <td>cell1</td> <td>cell2</td> <td>cell3</td>
| cell1 || cell2 || cell3
Sample table
| 1 || 2 
| 3 || 4 
| 5 || 6 
Sample table
      <th>Grocery Item</th>
! Quantity || Grocery Item
| 4 || Apples
| 3 || Oranges
| 12 || Eggs
| 9 || Bananas

Syntax highlighting

To enable syntax highlighting for blocks of code, the syntax is pretty simple.

Note:This new syntax replaces the <source> tag, because XML uses that tag in some scripts.
   Syntax <syntaxhighlight lang="cpp">C++ source code</syntaxhighlight> 
 Example <syntaxhighlight lang="cpp">(Insert FireBullets() method here)</syntaxhighlight> 
void CBaseEntity::FireBullets( const FireBulletsInfo_t &info )
	static int	tracerCount;
	trace_t		tr;
	CAmmoDef*	pAmmoDef	= GetAmmoDef();
	int			nDamageType	= pAmmoDef->DamageType(info.m_iAmmoType);
	int			nAmmoFlags	= pAmmoDef->Flags(info.m_iAmmoType);
        //remainder omitted

For a list of supported languages, see Help:Syntax Highlighting for more information.

Redirecting pages

Sometimes you'll come across pages that are named incorrectly, or improperly named. You can redirect pages to their intended destination by a couple different methods.

The easiest way to redirect a page that already contains data is to click the arrow-down-icon.png icon next to the search box above the page, then selecting Move Page. Follow instructions carefully before you decide to move a page.

The manual way to redirect a page is to use the following syntax:

   Syntax #REDIRECT [[new_page]]
Warning:This method can only be used if the page is empty. If you are manually moving a page, copy the edit source of the page and paste it into the new page. Then the original page can be replaced with the #REDIRECT tag.

You can go back to a Redirect and edit it by clicking the link underneath the new page's title.

Message boxes

To make a portion of text standout from the rest, you can place them in preformatted boxes by simply placing a single space at the beginning of a line.

   Syntax  Insert text after the space. 
 Example  There is a space at the beginning of this line. 
There is a space at the beginning of this line.

You can also use the <pre> tag for a message box. Just use <pre>Message box.</pre>.

Categorizing pages

If you'd like a page to show up in the automatically generated category tables (full category list found here) like on the category page Category:Level_Design, you will need to append the [[Category:name]] at the bottom of the page.

For an example of how pages can be categorized, the bottom of this page have the following [[Category]] tags:


Go ahead and scroll down to the bottom of the page. You'll notice the three categories that were just listed are available at the bottom.

[Back to top]

Page Templates

Click here to view the extensive list of templates available for use

Specific Formatting Guidelines

There are no hard rules for specific formatting, other than keeping HTML at a bare minimum. There are some generally accepted styles you can use, though.

Mod Page Guidelines

To do: Condense Help:Mod_Profiles for quick list of tips.


  • Should in general follow standard English usage -- italics are meant for slight emphasis. Italics should not be used for full sentences, as that is not minor emphasis and actually makes the emphasis unintelligible.
  • Newly defined words in a sentence. For example: "Levels are created with a series of blocks, called brushes, which can be created in all manner of sizes. Brushes are the basic components of levels". After the first italicized instance, the word is no longer italicized. If the newly defined word has an article, make it a link as well.
  • Parameters in a command-line that are to be replaced by the user: hl2.exe +map mapname -dev
  • Can be combined with "<" and ">" for parameters with longer names: hl2.exe -game <game directory>
  • Other standard uses in English can be found at Wikipedia:Italic_type.


  • Strong emphasis: "Using this command may cause hard drives to explode." Like italics, over-use of bolding renders the emphasis unintelligible.
  • Menu commands and other program UI: "First, go to the File menu and choose Map Properties to bring up the Object Properties dialog box. Click the Skybox Texture Name field."
  • If the word is a wiki link, it does not require to be bold.

<code> tags

  • Are fine to use, as there is no other wiki markup equivalent.
  • Command-line statements: c:\program files\valve\steam\
  • Variables in code or text files: $staticprop or m_nCounter
  • In-game console commands: mat_wireframe 1
  • Filenames: bspzip.exe
  • Entity names: info_player_start
  • Other in-game or Hammer data, such as texture names, input and output names, etc.

See also

Wikipedia has excellent resources on text formatting available here. The information is referential of the Wikipedia site, but is applicable to all MediaWiki powered sites, including the Valve Developer Community.

[Back to top]