File: AIOptions.lua

package info (click to toggle)
spring 98.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 41,928 kB
  • ctags: 60,665
  • sloc: cpp: 356,167; ansic: 39,434; python: 12,228; java: 12,203; awk: 5,856; sh: 1,719; xml: 997; perl: 405; php: 253; objc: 194; makefile: 72; sed: 2
file content (123 lines) | stat: -rw-r--r-- 3,647 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
--
-- Example AIOptions.lua
--
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-- Custom Options Definition Table format
--
-- NOTES:
-- - using an enumerated table lets you specify the options order
--
-- These keywords must be lowercase for LuaParser to read them.
--
-- key:      the string used in the script.txt
-- name:     the displayed name
-- desc:     the description (could be used as a tooltip)
-- type:     the option type (bool|number|string|list|section)
-- section:  can be used to group this option with others (optional)
-- def:      the default value
-- min:      minimum value for type=number options
-- max:      maximum value for type=number options
-- step:     quantization step, aligned to the def value
-- maxlen:   the maximum string length for type=string options
-- items:    array of item strings for type=list options
-- scope:    'all', 'player', 'team', 'allyteam'      <<< not supported yet >>>
--
-- This is an example file, show-casting all the possibilities of this format.
-- It contains one example for option types bool, string and list, and two
-- for number and section.
--
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------


local options = {


	{ -- section
		key    = 'cheats',
		name   = 'Cheats',
		desc   = 'Fine-Grained settings specifying which kind of cheats \nthe AI is allowed to use.',
		type   = 'section',
	},

	{ -- section
		key    = 'performance',
		name   = 'Performance Relevant Settings',
		desc   = 'These settings may be relevant for both CPU usage and AI difficulty.',
		type   = 'section',
	},

	{ -- list
		key     = 'aggressiveness',
		name    = 'Level Of Aggressivity',
		desc    = 'How aggressive the AI should act.\nkey: aggressiveness',
		type    = 'list',
		section = 'performance',
		def     = 'normal',
		items   = {
			{
				key  = 'deffensive',
				name = 'Deffensive',
				desc = 'The AI will hardly ever attack.',
			},
			{
				key  = 'normal',
				name = 'Normal',
				desc = 'The AI will try to keep a balance between defensive and aggressive play styles.',
			},
			{
				key  = 'aggressive',
				name = 'Aggressive',
				desc = 'The AI will put most of its resources into building attack forces.',
			},
		},
	},

	{ -- number (decimal)
		key     = 'maxgroupsize',
		name    = 'Max Group Size',
		desc    = 'Maximum number of units per group, which the AI tries to keep together.\nkey: maxgroupsize',
		type    = 'number',
		section = 'performance',
		def     = 10,
		min     = 2,
		max     = 50,
		step    = 1.0,
	},

	{ -- number (float)
		key     = 'resourcebonous',
		name    = 'Resource Bonous',
		desc    = 'The AI will get 1+[this-value] times as muhc resources as a normal player.\nkey: resourcebonous',
		type    = 'number',
		section = 'cheats',
		def     = 0.0,
		min     = 0.0,
		max     = 20.0,
		-- quantization is aligned to the def value
		-- (step <= 0) -> there is no quantization
		step    = 0.1,
	},

	{ -- bool
		key     = 'maphack',
		name    = 'Map Hack',
		desc    = 'Whether the AI can see everything on the map, always, or is bount to LOS & Radar usage.\nkey: maphack',
		type    = 'bool',
		section = 'cheats',
		def     = false,
	},

	{ -- string
		key     = 'reporturl',
		name    = 'Report URL',
		desc    = 'Statistics and learning data will be sent ot this URL every 5 minutes.\nkey: reporturl',
		type    = 'string',
		def     = 'http://myAIStats.myDomain.com/statsReceiver.cgi',
	},

}

return options