This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
arma2:terrain:class_names [2012-09-03 08:13] |
arma2:terrain:class_names [2012-09-03 08:13] snakeman added locations summary header. |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Class Names ====== | ||
+ | Class Names **Types** | ||
+ | |||
+ | In terrains you can name locations / positions, usually cities and other important populated places. Also these locations can help scripts to find out flat areas and such. | ||
+ | |||
+ | These are in your terrain's config.cpp under the name "class names", for example here is ArmA 2 Chernarus config.cpp example: | ||
+ | <code cpp> | ||
+ | class Names | ||
+ | { | ||
+ | class city_Chernogorsk | ||
+ | { | ||
+ | name = "$STR_LOCATION_CHERNOGORSK"; | ||
+ | position[] = | ||
+ | { | ||
+ | 6731.21, 2554.13 | ||
+ | }; | ||
+ | type = "NameCityCapital"; | ||
+ | speech[] = | ||
+ | { | ||
+ | "Chernogorsk" | ||
+ | }; | ||
+ | radiusA = 300.0; | ||
+ | radiusB = 300.0; | ||
+ | angle = 0.0; | ||
+ | }; | ||
+ | class city_Elektrozavodsk | ||
+ | { | ||
+ | name = "$STR_LOCATION_ELEKTROZAVODSK"; | ||
+ | position[] = | ||
+ | { | ||
+ | 10313.72, 2159.41 | ||
+ | }; | ||
+ | type = "NameCity"; | ||
+ | speech[] = | ||
+ | { | ||
+ | "Elektrozavodsk" | ||
+ | }; | ||
+ | radiusA = 200.0; | ||
+ | radiusB = 200.0; | ||
+ | angle = 0.0; | ||
+ | }; | ||
+ | ... | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Config Class Prefixes ====== | ||
+ | |||
+ | BIS uses config class name prefixes like: AAirport_, ACityC_, AFlat_, AFlatC_, AFlatCS_, airport_, AStrong_, city_, hill_, local_ (and Local_ but I don't think case matters?), V_ (vegetation), veg_, vill_, w_ and water_ | ||
+ | |||
+ | |||
+ | ====== Name ====== | ||
+ | |||
+ | Name is simply the text string of the name of this location. | ||
+ | <code cpp> | ||
+ | name = "$STR_LOCATION_CHERNOGORSK"; | ||
+ | </code> | ||
+ | In this Chernarus example it uses stringtable to pull the name string so it can automatically translate it to different languages etc. | ||
+ | |||
+ | |||
+ | ====== Position ====== | ||
+ | |||
+ | Position is normal 2D coordinate for this location. | ||
+ | <code cpp> | ||
+ | position[] = | ||
+ | { | ||
+ | 5300.71, 8645.9 | ||
+ | }; | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Type ====== | ||
+ | |||
+ | ArmA class names types: | ||
+ | <code cpp> | ||
+ | type = "BorderCrossing"; | ||
+ | type = "Hill"; | ||
+ | type = "NameCity"; | ||
+ | type = "NameCityCapital"; | ||
+ | type = "NameLocal"; | ||
+ | type = "NameMarine"; | ||
+ | type = "NameVillage"; | ||
+ | type = "RockArea"; | ||
+ | type = "VegetationBroadleaf"; | ||
+ | type = "VegetationFir"; | ||
+ | type = "VegetationPalm"; | ||
+ | type = "VegetationVineyard"; | ||
+ | type = "ViewPoint"; | ||
+ | </code> | ||
+ | |||
+ | ArmA 2 class names types: | ||
+ | <code cpp> | ||
+ | type = "Airport"; | ||
+ | type = "CityCenter"; | ||
+ | type = "FlatArea"; | ||
+ | type = "FlatAreaCity"; | ||
+ | type = "FlatAreaCitySmall"; | ||
+ | type = "Hill"; | ||
+ | type = "NameCity"; | ||
+ | type = "NameCityCapital"; | ||
+ | type = "NameLocal"; | ||
+ | type = "NameMarine"; | ||
+ | type = "NameVillage"; | ||
+ | type = "StrongpointArea"; | ||
+ | type = "VegetationBroadleaf"; | ||
+ | type = "VegetationFir"; | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Speech ====== | ||
+ | |||
+ | <code cpp> | ||
+ | speech[] = | ||
+ | { | ||
+ | "Chernogorsk" | ||
+ | }; | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Neighbors ====== | ||
+ | |||
+ | <code cpp> | ||
+ | neighbors[] = | ||
+ | { | ||
+ | "ACityC_Prigorodki", "ACityC_Balota", "ACityC_Nadezhdino", "ACityC_Mogilevka" | ||
+ | }; | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Demography ====== | ||
+ | |||
+ | <code cpp> | ||
+ | demography[] = | ||
+ | { | ||
+ | "CIV", 0.0, "CIV_RU", 0.0 | ||
+ | }; | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Radius ====== | ||
+ | |||
+ | These locations also are affiliated with radius to define the size, they are **radiusA** and **radiusB**. | ||
+ | <code cpp> | ||
+ | radiusA = 100; | ||
+ | radiusB = 100; | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Angle ====== | ||
+ | |||
+ | <code cpp> | ||
+ | angle = 305.903; | ||
+ | </code> | ||
+ | |||
+ | |||
+ | ====== Locations Summary ====== | ||
+ | |||
+ | **class names locations** | ||
+ | |||
+ | * CityCenter with neighbors array | ||
+ | * StrongpointArea around the city on defensive manner, 3-5 or so. | ||
+ | * FlatAreaCity one in the center of the city if possible, but any FLAT area will do. | ||
+ | * FlatAreaCitySmall in the city, flat areas, 1-3 about. | ||
+ | * FlatArea is area for placing bases/camps etc no nearby objects and flat surface if possible. | ||
+ | |||
+ | |||
+ | |||
+ | ====== Notes ====== | ||
+ | |||
+ | See also [[arma2:terrain:ambient_modules|ArmA 2 Terrain Ambient Mobules]] |