There is no spoon

Legacy:Guidelines On Technical Names

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search

This is a page to discuss and establish conventions for referring to specific types things. Most technical terms now have an established format, but many wiki pages may not conform to these, either because they're old, or because new writers haven't seen this page. If you spot them while browsing, please fix them if you have time.

List below of types. Add to the list if there are ommissions, and discuss. :-)

Menu commands

When giving menu commands, stick to the following format:

  • use their actual spelling and capitalization
  • give the full menu command, so new users can easily find them
  • link the menu name, so readers can look up the full reference for that menu

Examples:

[[Legacy:UnrealEd Main Menu|UnrealEd Main Menu]] -> File -> New
 [[Legacy:Viewport Context Menu|Viewport Context Menu]] -> Add Light here

See UnrealEd Menus for the list of page names for menus.

The character pair "->-" is parsed to an arrow and will look like this:

Polygons -> To Brush

Use emphasis if you want the menu command to stand out, but do this sparingly:

'''Polygons -> To Brush'''

Current consensus is (probably) to use -> between menu names. (at least that was what the debate stopped at. Feel free to continue the discussion :) Tarquin)

Other options were:

  • Polygons >> To Brush (confusable with class hierarchy)
  • Polygons > To Brush
  • Polygons | To Brush (the | character is used for tables and links)

Class names

Just the name

When quoting class or property names, please stick to the original capitalization; for instance, "Tag" and "NavigationPoint" rather than "tag" and "naVigationpOint".

Top of a class

For a page that specifically describes an Actor, add its location in the Actor tree to the top of the page, with links to the parent classes like this:

{{classbox| [[Legacy:{Game}|{Game}]] [[Legacy:Actor|Actor]] >> [[Legacy:Triggers|Triggers]] >> ... >> {ThisClass} (package)}}

The

prefix will render this line in a neat box:

To make it easy for users to browse the class tree, start with:

Full tree quotations

Full tree quotations within the text should be marked out in the same way, eg:

[[Legacy:Add An Actor|Add an Actor]] >> Info >> SmellofFeetHere to your 
level for that realistic just jogged-in trainers effect

Remember to link to the add an actor basic procedure, so you don't need to explain how to open the class browser yet again!

Property names

Current consensus is Advanced -> bDirectional, which is parsed as Advanced -> bDirectional. (If your browser doesn't show the → character, please post on Wookee/Problems.)

Other options were:

  • Advanced.bDirectional
    • Use of the period for hierarchy is not descriptive and may confuse beginners. Also technically misleading: the dot is used in UnrealEd to separate packages, groups and names; in UnrealScript it separates object or class references and properties/methods. This notation implies that it's one of those, and that you actually have to refer to this property as "Advanced.bDirectional" if you want to access it from a script.
  • Advanced -> bDirectional
    • because it's basically a menu-like grouping for convenience.
    • possibly with the "->-" pair parsed into a picture or a → character (if that doesn't show on your browser, please bing here)
  • Advanced >> bDirectional
    • perhaps too similar to class notation?
  • Advanced_bDirectional
    • As the underscore is a valid character in symbol names, that's bound to add to the confusion, especially if there ever was a property group or property that contained one.
  • (Advanced)bDirectional
    • matches the script syntax most closely, but not terribly clear on the eye. Most mappers don't need to know what the script looks like anyway.
  • Advanced:bDirectional
    • reaching point of desperation.
  • Advanced/bDirectional

Question: how to distinguish between the properties of several different actors? here's two possible snips:

{{{1}}}

{{{1}}}

Any thoughts?

Resource names

Things that come in packages, like sounds, textures, static meshes etc. Eg

NaliCastle.Floors.whatever
AbbadonArchitecture.Beams.somebeammesh

Reasoning: the dotted syntax is exactly the one the engine expects.

Directories

Since we now deal with many different games, instead of writing "Unreal Tournament\System", write the more generic:

{Base Directory}\System

The { } indicate (hopefully) that this isn't an actual directory called that. The page Base Directory should explain it all.

Olorin: :hmm: why not <Base Directory>\System (or /System) ? Sort of a non-terminal in BNF ?

Related Topics