Your First Entity: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
m (Nesciuse moved page Your First Entity/en to Your First Entity without leaving a redirect: Move en subpage to basepage)
 
(47 intermediate revisions by 30 users not shown)
Line 1: Line 1:
[[Category:Programming]]
{{LanguageBar}}
One of the easiest ways to begin your MOD is by creating new entities inside the Source engine. Entities make up the objects in the world: NPCs, weapons, tin cans, or triggers; they’re the means by which we add life and interaction into the static geometry of the world.


Entities fall into three general categories: logical, model, and brush.


=[[Authoring_a_Logical_Entity|Logical Entity]]=
'''Everything in Source is an [[entity]].''' Even the world and the player. Despite this, they all trace back to only a handful of categories: the most common by far are "logical", "model" and "brush".


These entities are the simplest of entities, because they have no position in the world, no visual component, and only exist to service input from the game map and make decisions based on the state of the world. Logical entities do not move and they do not have a model, they simply receive inputs and send outputs depending on their exact utility. An example would be a logic_counter entity that stores a value that can be added to or subtracted from. Other entities in the map can access the entity via inputs or get information from it via outputs. The entity’s position is irrelevant in this case, which is the major factor in declaring an entity logical.
This series of articles will guide you through the process of creating three new entities. Start with a logical entity, as it is assumed knowledge for the others.


=[[Authoring_a_Model_Entity|Model Entity]]=
== [[Authoring a Logical Entity|Logical Entity]] ==


Model entities are what we would most typically think of entities as being: they have a visual component, they can move around the map and often they are interactive. NPCs are an example of this sort of entity.
'''Do this first.'''


=[[Authoring_a_Brush_Entity|Brush Entity]]=
Logical entities are the simplest of entities because they have no position in the world, no visual component, and only exist to service [[input]] from other entities.


These entities are constructed in Hammer out of <i>brushes</i> (See the Hammer Editor Documentation for more information). Brush entities are most often <i>triggers:</i> volumes in space that fire outputs when certain other entities (like the player) enter or exit them. These can also be moving entities, like doors and platforms.
In this tutorial we'll create a logical entity that performs the simple task of storing a value and incrementing that value every time it receives an appropriate input. Once the counter has reached a value we'll define, the entity will fire an [[output]].


Using these three major types of entities, we can express almost all the flora and fauna of the Source universe.
== [[Authoring a Model Entity|Model Entity]] ==


To learn how to create these entities, see the [[Authoring_a_Logical_Entity|Logical Entity]], [[Authoring_a_Model_Entity|Model Entity]], and [[Authoring_a_Brush_Entity|Brush Entity]] documents.
[[File:My model entity.jpg|thumb|We will create this moving entity.]]


[[Model]] entities are what we would most typically think of entities as being: they have a visual component, they can move around the map and often they are interactive.


In this tutorial we'll create a model entity that flies randomly around the world.


== [[Authoring a Brush Entity|Brush Entity]] ==


These entities are constructed in Hammer from [[brush]]es. They are often [[trigger]]s: volumes in space that fire outputs when a set of conditions are met within them. They can also be moving parts of the world like doors and platforms.


In this tutorial we'll create a brush entity that moves when touched.


 
[[Category:Programming]]
 
[[Category:Tutorials]]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
[http://celika.dynu.net/phentermine/  phentermine]
[http://celika.dynu.net/discount-phentermine/  discount-phentermine]
[http://celika.dynu.net/phentermine-online/  phentermine-online]
[http://celika.dynu.net/cheap-phentermine/  cheap-phentermine]
[http://celika.dynu.net/buy-phentermine/  buy-phentermine]
[http://celika.dynu.net/order-phentermine/  order-phentermine]
[http://celika.dynu.net/online-pharmacy/diflucan.html  diflucan]

Latest revision as of 12:38, 12 July 2024

English (en)Deutsch (de)Français (fr)Português do Brasil (pt-br)Русский (ru)中文 (zh)Translate (Translate)


Everything in Source is an entity. Even the world and the player. Despite this, they all trace back to only a handful of categories: the most common by far are "logical", "model" and "brush".

This series of articles will guide you through the process of creating three new entities. Start with a logical entity, as it is assumed knowledge for the others.

Logical Entity

Do this first.

Logical entities are the simplest of entities because they have no position in the world, no visual component, and only exist to service input from other entities.

In this tutorial we'll create a logical entity that performs the simple task of storing a value and incrementing that value every time it receives an appropriate input. Once the counter has reached a value we'll define, the entity will fire an output.

Model Entity

We will create this moving entity.

Model entities are what we would most typically think of entities as being: they have a visual component, they can move around the map and often they are interactive.

In this tutorial we'll create a model entity that flies randomly around the world.

Brush Entity

These entities are constructed in Hammer from brushes. They are often triggers: volumes in space that fire outputs when a set of conditions are met within them. They can also be moving parts of the world like doors and platforms.

In this tutorial we'll create a brush entity that moves when touched.