forked from virtualghetto/Wesband
-
Notifications
You must be signed in to change notification settings - Fork 2
/
_main.cfg
265 lines (249 loc) · 11.1 KB
/
_main.cfg
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
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
#textdomain wesnoth-Wesband
# TODO list
#
# Bugs
# * Sometimes slash+dash (or deadly grace?) units think they have attacks, but it says "No Attacks: this unit has no usable weapons"
# * Fix metal to drain -- it's not wearing off
# * Leveling up cause loss of active bloodlust, remaining ammo
# * Bloodlust is switching weapons in some cases -- it should only leave available the attack that was first used
# * Steadfast not always obeying limit from skill level (I've seen it at 50% when should have been 40%)
# * When not [is_safe] and not spotted, picking up items should use a simple action
# * Equipping round shield is causing any attempt to equip secondary to fail
#
# General
# * Finish replacing all uses of DISPLAY_XXX macros with [display_item]
# * Finish converting all [describe_item]s followed by [set_variables]
# * Refactor the "drop x type of items" into a single, flexible macro
# * Fix movement so it doesn't matter where you stopped when spotted or not safe, but the distance
# from that point in calculating refreshed moves. Make it where you don't have to creep along a
# little at a time to avoid getting stuck when the rest of your units are able to pass you up.
# * After enchant weapon, figure out what's needed to get changes to show in attacks without having to visit the inventory menu.
# * Enchangted items need re-valuation!
# * Should attack and complex action refresh if no party members are unsafe or spotted?
# * If spotted, should you be allowed to refresh moves if you run away as it is now? I think not
# * Auto-follow of henchmen / party
#
# Give items Menu
# * Highlight items that are better than what the target is weilding in any viable slot
# * right-click drag to initiate "give items"
#
# Use/Cast Menu
# * FIXED! Show target first (if they have anything to use/cast)
# * PARTIALLY FIXED! Show items/spells in gray when the holder/caster lacks the actions to use/cast them
# o we don't have cast time and mana in the spells, so this needs to be moved before we can fully fix this one
# * Summon elemental scrolls: make range_max = floor(1 + rank / 2)?
#
# Dropping items
# * FIXED! Don't show "drop gold" for NPCs
#
# Picking up items
# * FIXED! show description of singular items
# * FIXED! Don't show "nearby items" then they are only beneth unit
# * consume simple action when picking up items in-combat (spotted or not safe range)
# * maybe expand non-combat pick-up radius to two?
# * maybe a coin noise when picking up money?
# * FIXED! maybe store item level/rank in item? (definitely)
# * maybe notify when there's an item whose level is at least a certain percentage of the max dungeon level (i.e., "good item")
# o maybe have a noise and message when one of those is picked up? "soandso finds a good item"
# * items generated with paranormal stats should be considered enchanted? (yes)
# o UPDATE: The mechanic for this is very simple and never adds too much. This might be desirable,
# but should still probably be formally enchanted. However, we should start randomly generating
# enchangted items (both in shop and in dungeon / on mobs), using the same mechanism as the
# scroll and using the same basic dungeon_level.max-based calculation for frequency and power.
# It may just be both simpler and cleaner to replace the existing mechanism with a very weak
# enchantment using the new mechanism.
# * add some rare magical items:
# o "ladle of serving pain"?
#
# Upgrades
# * show a little boop on your charactor when you have sufficient TPs for your important upgrades (maybe it's only on if you can upgrade any of yoru three base stats
# * figure out what's going on with traits and status... can we buy a limited number of traits with tps?
# Big later things:
# * Rethink and redesign non-combat vs melee mode.
# o Refresh moves shouldn't leave you stranded while your party members pass you.
# o Should not be allowed to have moves refresh after being spotted, no matter how far away you
# are able to move from where you were spotted. The faction that spotted you should have a fair
# chance to catch you.
# o Rethink hiding units. They should always ambush when you get next to them, but should they really
# make a noise if they are supposed to be stealthy?
# + Should they be able to "ambush" you (causing "you heard something") at a time of their choosing?
# + If they stay quiet and you end up between two hiding units, should they be able to trigger an
# "ambush" that would reduce your moves to the number of hexes you are from the furthest one?
# + We need some sort of more complex "ambush" mechanism to catch scouts.
# + Perhaps we need an ability to detect hidden / sneaking units within a certain range? That might
# satisfy a lot of the above required conditions and add some very interesting game mechanics.
# * Maybe WC and summon dead are disabled? Figure out how to re-enable and ballance it
# * PARTIALLY FIXED! Modularize weapon and moster tables. Make it easier to arrange and modify them.
# * Eliminate SIMPLE_ACTION_EVENT, COMPLEX_ACTION_EVENT, *_SETUP, and *_EFFECT. Replace with (and implement) wesnoth.wml_actions.cast_spell().
# * Refactor create_potion, create_scroll, create_tome into a singular create_item. Convert all
# usable item data into a sucinct table somewhere that can be more easily reviewed and edited
# by those who are strong with game design and less so technically
#
# Later Maybe Things
# * Add "charge" attack only usable if unit moves at least half of their max_moves (and isn't ambushed or otherwise stopped)
# * See invisibility / detect hidden (mind?) (also mentioned above in "Rethink non-combat vs melee mode")
# * traps?
# * Special items that allow for physically improving an item (rusty to not rusty and normal to polished, sharp or ballanced)
# o We should probably track, with an integral value, the qualities of each item:
# + condition (rusty, normal, sharp),
# + quality (unballanced, normal, ballance), and
# + weight (light, normal, heavy)
#define WESBAND_OPTIONS
[options]
[slider]
id=opts.pc.max_experience.adj
name=_"PC max experience adjust %"
description=_"Changes the amount of experience main (player character) units require to gain level 1. The initial value dicatates level progression speed for the life of the character. Default is 100%"
default=100
min=25
max=400
step=5
[/slider]
[slider]
id=opts.pc.max_experience.increase
name="PC max experience increase rate"
description=_"Changes the max experience increase % per level for player character units"
default=15
min=3
max=25
[/slider]
[entry]
id=opts.pc.tp_increase_wfl
name="PC Talent point increment formula"
description=_"Formula for calculating talent points when leveling player character units. This is only here for experimenting with game ballance and editing it can break your game. Inputs are level, sub_level, real_level, and max_experience. See Wesband thread for more details."
default="round(as_decimal(level + 1) * (4.0 + if (real_level < 3, 0, as_decimal(real_level - 2) * (real_level - 3) / 192)))"
#default=$wesband.default_tp_increase_wfl
[/entry]
[slider]
id=opts.npc.max_experience.adj
name=_"NPC max experience adjust"
description=_"Changes the amount of experience non-player characters require to gain level 1. The initial value dicatates level progression speed for the life of the character. Default is 100%. This setting equally affects henchmen, undead minions, summoned creatures, and all enemies."
default=100
min=25
max=400
step=5
[/slider]
[slider]
id=opts.npc.max_experience.increase
name="NPC max experience increase rate"
description=_"Changes the max experience increase % per level for all non-player character units"
default=17
min=3
max=25
[/slider]
[entry]
id=opts.npc.tp_increase_wfl
name="NPC Talent point increment formula"
description=_"Formula for calculating talent points when leveling non-player character units. This is only here for experimenting with game ballance and editing it can break your game. Inputs are level and max_experience."
default="round(30 + 20 * level)"
#default=$wesband.default_tp_increase_wfl
[/entry]
[checkbox]
id=opts.peons
default=no
name="Choose race only (incomplete)"
description="Start game with only peasants, peons, hatchlings, etc. This feature is not yet complete and not recommended unless you intend to hack your save file to add the abilities you won't otherwise have access to."
[/checkbox]
[checkbox]
id=opts.trad_stats
default=no
name="Show traditional stats"
description="Display stats like classic Wesband, including zero-value stats. Uncheck this for a more compact display. (This should be toggleable from in-game)"
[/checkbox]
[checkbox]
id=opts.upgrade_npcs
default=no
name="Choose upgrades for NPCs"
description="Allows you to choose how NPCs talent points are spent after they level up. When disabled, NPCs will choose upgrades automatcally."
[/checkbox]
[checkbox]
id=opts.stairs_up
default=no
name="Permit traveling back up"
description="Allow traveling back up to an easier level after a level has been cleared. (not working)"
[/checkbox]
[/options]
#enddef
#ifndef MULTIPLAYER
[textdomain]
name="wesnoth-Wesband"
path="data/add-ons/Wesband/translations"
[/textdomain]
[campaign]
id=Weshack
name=_"Weshack"
abbrev= _ "WHK"
first_scenario=wesband_main_generated
icon="data/add-ons/Wesband/images/units/human-female/sword.png~RC(magenta>red)"
image="scenery/dwarven-doors-closed.png~SCALE(360,360)"
define=CAMPAIGN_WESBAND_SP
description= _ "Wesnoth hack and slash."
{WESBAND_OPTIONS}
[difficulty]
default=yes
define=HARD
image="data/add-ons/Wesband/images/units/human-female/fist.png~RC(magenta>red)"
label=_ "Hard"
description=_ "Hard"
[/difficulty]
[/campaign]
#else # MULTIPLAYER
#define CAMPAIGN_WESBAND_MP
#enddef
#define CAMPAIGN_WESBAND
#enddef
#endif
#ifdef CAMPAIGN_WESBAND_SP
#define CAMPAIGN_WESBAND
#enddef
#endif
#ifdef CAMPAIGN_WESBAND
# define MODRPG_DEBUG_COMMAND_USE
# enddef
# define MODRPG_DEBUG_ENCHANT
# enddef
[binary_path]
path=data/add-ons/Wesband
[/binary_path]
{~add-ons/Wesband/macros/_main.cfg}
#{~add-ons/Wesband/events/_main.cfg}
{~add-ons/Wesband/terrain}
#{~add-ons/Wesband/maps}
#{~add-ons/Wesband/images}
{~add-ons/Wesband/scenarios}
[+units]
{~add-ons/Wesband/units}
#{~add-ons/Wesband/units/trolls}
#{~add-ons/Wesband/units/saurians}
#{~add-ons/Wesband/units/elementals}
#{~add-ons/Wesband/units/monsters}
#{~add-ons/Wesband/units/warlocks}
#{~add-ons/Wesband/units/humans}
#{~add-ons/Wesband/units/orcs}
#{~add-ons/Wesband/units/devlings}
#{~add-ons/Wesband/units/minotaurs}
#{~add-ons/Wesband/units/elves}
#{~add-ons/Wesband/units/undead}
[/units]
#{./macros/_main.cfg}
##{./events/_main.cfg}
#{./terrain}
#{./scenarios}
#{./maps}
#{./images}
#[+units]
# {./units}
#[/units]
#endif # CAMPAIGN_WESBAND
#ifdef EDITOR
[binary_path]
path=data/add-ons/Wesband
[/binary_path]
[editor_group]
id=wesband
name= _ "Wesband"
icon="group_custom"
[/editor_group]
{~add-ons/Wesband/terrain/Terrain.cfg}
{~add-ons/Wesband/terrain/Terrain_graphics.cfg}
#endif