-
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathnamegen_file_3.html
More file actions
147 lines (141 loc) · 6.14 KB
/
namegen_file_3.html
File metadata and controls
147 lines (141 loc) · 6.14 KB
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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-C2YXLNQ21C"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag() { dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-C2YXLNQ21C');
</script>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>libtcod documentation | Rules</title>
<script type="text/javascript" src="../js/doctcod.js"></script>
<link href="../css/style.css" rel="stylesheet" type="text/css">
</head>
<link type="text/css" rel="stylesheet" href="../css/shCore.css">
</link>
<link type="text/css" rel="stylesheet" href="../css/shThemeDefault.css">
</link>
<script language="javascript" src="../js/shCore.js"></script>
<script language="javascript" src="../js/shBrushBash.js"></script>
<body>
<div class="header">
<p><span class="title1">libtcod</span><span class="title2">documentation</span></p>
</div>
<div class="breadcrumb">
<div class="breadcrumbtext">
<p>
you are here: <a onclick="link('../index2.html')">Index</a> > <a onclick="link('namegen.html')">15. Name
generator</a> > <a onclick="link('namegen_file.html')">15.3. Syllable set configuration</a> > <a
onclick="link('namegen_file_3.html')">15.3.3. Rules</a><br>
<a class="prev" onclick="link('namegen_file_2.html')">15.3.2. Illegal strings</a> | <a class="next"
onclick="link('namegen_file_4.html')">15.3.4. Example structure</a>
</p>
</div>
</div>
<div class="filter"><input type="checkbox" id="chk_c" name="chk_c" onchange="enable('c',this.checked)"
checked='checked'><label for='chk_c'> C </label><input type="checkbox" id="chk_cpp" name="chk_cpp"
onchange="enable('cpp',this.checked)" checked='checked'><label for='chk_cpp'> C++ </label><input type="checkbox"
id="chk_py" name="chk_py" onchange="enable('py',this.checked)" checked='checked'><label for='chk_py'> Py
</label><input type="checkbox" id="chk_lua" name="chk_lua" onchange="enable('lua',this.checked)"
disabled='disabled'><label class='disabled' for='chk_lua'> Lua </label><input type="checkbox" id="chk_cs"
name="chk_cs" onchange="enable('cs',this.checked)" disabled='disabled'><label class='disabled' for='chk_cs'> C#
</label></div>
<div class="main">
<div class="maintext">
<h1>15.3.3. Rules</h1>
<p>There's one last string that's contained within the structure:<br />
<div class="code">
<p>rules</p>
</div><br /><br />It is mandatory, so not defining it will trigger an error. It defines how the generator should
join the supplied data in order to generate a name. This string uses a syntax of its own, which is also used when
specifying a rule when generating a custom name (see chapter 16.2).<br /><br />The rules are parsed pretty much
the same way as all other strings, so all rules regarding separators and special characters apply as well.
However, you can additionally use a set of wildcards and frequency markers. Each wildcard is preceded by the
dollar sign ('$'), while frequency markers are preceded by the per cent sign ('%'). Here's the complete wildcard
list:<br />
<table class="param">
<tbody>
<tr>
<th>Wildcard</th>
<th>Example</th>
<th>Description</th>
</tr>
<tr class="hilite">
<td>$[INT]P</td>
<td>$P, $25P</td>
<td>Use a random Pre syllable.<br>The optional integer value denotes the per cent chance of adding the
syllable.</td>
</tr>
<tr>
<td>$[INT]s</td>
<td>$s, $25s</td>
<td>Use a random Start syllable.</td>
</tr>
<tr class="hilite">
<td>$[INT]m</td>
<td>$m, $25m</td>
<td>Use a random Middle syllable.</td>
</tr>
<tr>
<td>$[INT]e</td>
<td>$e, $25e</td>
<td>Use a random End syllable.</td>
</tr>
<tr class="hilite">
<td>$[INT]p</td>
<td>$p, $25p</td>
<td>Use a random Post syllable.</td>
</tr>
<tr>
<td>$[INT]v</td>
<td>$v, $25v</td>
<td>Use a random vocal.</td>
</tr>
<tr class="hilite">
<td>$[INT]c</td>
<td>$c, $25c</td>
<td>Use a random consonant.</td>
</tr>
<tr>
<td>$[INT]?</td>
<td>$?, $25?</td>
<td>Use a random phoneme (vocal or consonant).</td>
</tr>
<tr class="hilite">
<td>%INT</td>
<td>%50, %25</td>
<td>Frequency marker. Denotes the per cent chance for the rule to be accepted if it's picked.<br>If the rule
is not accepted, another roll is made to choose a name generation rule.<br>It's used to reduce the
frequency a given rule is chosen with.<br>This marker may only appear at the beginning of a rule.</td>
</tr>
</tbody>
</table><br /> </p>
</div>
</div>
<div class="footer">
<div class="footertext">
<p>libtcod 1.6.4, © 2008, 2009, 2010, 2012, 2017 Jice, Mingos & rmtew<br>
This file has been generated by doctcod.</p>
<p>
<table width='100%'>
<tr>
<td width="33%"><a href="https://github.com/libtcod/libtcod">libtcod website</a></td>
<td width="33%"><a href="https://www.reddit.com/r/roguelikedev">libtcod on /r/roguelikedev</a></td>
<td width="33%">libtcod tutorials [ <a
href="http://www.roguebasin.com/index.php?title=Complete_Roguelike_Tutorial,_using_python%2Blibtcod">Python</a> | <a
href="http://www.roguebasin.com/index.php?title=Complete_roguelike_tutorial_using_C%2B%2B_and_libtcod_-_part_1:_setting_up">C++</a> ]
</td>
</tr>
</table>
</p>
</div>
</div>
</body>
<script>
initFilter();
SyntaxHighlighter.all();
</script>
</html>