forked from Sphereserver/Scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
/
sphere_region.scp
388 lines (324 loc) · 8.96 KB
/
sphere_region.scp
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
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
//****************************************************************************
// SPHERE by : Menasoft ©1997-2014
// www.sphereserver.net
// All SPHERE script files and formats are copyright Menasoft & Partners.
// This file may be freely edited for personal use, but may not be distributed
// in whole or in part, in any format without express written permission from
// Menasoft & Partners. All donations and contributions
// become the property of Menasoft & Partners.
//****************************************************************************
// FILE LAST UPDATED: Sunday, Nov 30, 2014
//
VERSION=0.56c
[COMMENT sphere_resource]
A REGIONRESOURCE (usually named mr_something) describes how a map resource
can be harvested by using the following properties:
AMOUNT= The amount of resources that can be reaped.
REAP= The itemdef that will be reaped.
REAPAMOUNT= The amount that can be gathered in one use of skill.
SKILL= The skill required to gather that resource.
REGEN= The time that must pass before that location can be mined again.
A REGIONTYPE (usually named r_something) is an EVENT that affects players
and/or creatures in a map region.
A map region (also known as AREADEF or ROOMDEF, and usually named a_something)
can be assigned one or more REGIONTYPEs through its EVENT= property.
In order for harvesting skills like mining, lumberjacking, and fishing to
work in a map region, the REGIONTYPE must be linked to a Terrain TYPEDEF,
and that REGIONTYPE needs one or more RESOURCE= properties linked to a map
resource.
A terrain TYPEDEF (usually named t_something) is linked to terrain through
it's TERRAIN= property.
* REGIONRESOURCE and REGIONTYPE are defined in the sphere_region.scp file.
* Terrain TYPEDEFs are defined in the sphere_terrain_types.scp file.
* Regions (AREADEF and ROOMDEF) are defined in sphere_map*.scp files.
////////////////////////////////
// The "nothing" map resource //
////////////////////////////////
[REGIONRESOURCE mr_nothing]
REAP=i_unused
REGEN=60*60*10 // Nothing can be found at this location for this many seconds.
/////////////////////////////////////
// Resources for herbivores to eat //
/////////////////////////////////////
[REGIONRESOURCE mr_grass]
AMOUNT=9,30 // This many...
REAP=i_hay_sheaf // ...of this item...
REAPAMOUNT=1 // ...can be harvested this many at a time...
//SKILL=0.0 // ...and it takes no skill to do it.
REGEN=60*60*10
[REGIONTYPE r_default_grass t_grass]
// All grass can be eaten by default.
RESOURCES=1.0 mr_grass
/////////////////////////////////
// Resources for fishing skill //
/////////////////////////////////
[REGIONRESOURCE mr_fish1]
AMOUNT=9,30 // This many...
REAP=i_fish_big_1 // ...of this item...
REAPAMOUNT=1,3
SKILL=1.0,100.0 // ...can be harvested if the player has this much skill.
REGEN=60*60*10
[REGIONRESOURCE mr_fish2]
AMOUNT=9,30
REAP=i_fish_big_2
REAPAMOUNT=1,3
SKILL=1.0,100.0
REGEN=60*60*10
[REGIONRESOURCE mr_fish3]
AMOUNT=9,30
REAP=i_fish_big_3
REAPAMOUNT=1,3
SKILL=1.0,100.0
REGEN=60*60*10
[REGIONRESOURCE mr_fish4]
AMOUNT=9,30
REAP=i_fish_big_4
REAPAMOUNT=1,3
SKILL=1.0,100.0
REGEN=60*60*10
[REGIONTYPE r_default_water t_water]
RESOURCES=60.0 mr_nothing // Most of the time fishing produces nothing.
RESOURCES=10.0 mr_fish1
RESOURCES=10.0 mr_fish2
RESOURCES=10.0 mr_fish3
RESOURCES=10.0 mr_fish4
[REGIONTYPE r_water t_water]
RESOURCES=60.0 mr_nothing
RESOURCES=10.0 mr_fish1
RESOURCES=10.0 mr_fish2
RESOURCES=10.0 mr_fish3
RESOURCES=10.0 mr_fish4
ON=@RegPeriodic
// Water/Ocean boat sounds
SRC.SOUND={025 1 026 1 027 1 010 1 011 1 012 1 013 1}
///////////////////////////////////////
// Resources for lumberjacking skill //
///////////////////////////////////////
[REGIONRESOURCE mr_tree]
AMOUNT=9,30
REAP=i_log
REAPAMOUNT=1,3
SKILL=1.0,80.0
REGEN=60*60*10
[REGIONTYPE r_default_tree t_tree]
// All trees produce wood by default.
RESOURCES=60.0 mr_nothing
RESOURCES=40.0 mr_tree
////////////////////////////////
// Resources for mining skill //
////////////////////////////////
[REGIONRESOURCE mr_iron]
AMOUNT=9,30
REAP=i_ore_iron
REAPAMOUNT=1,3
SKILL=1.0,30.0
REGEN=60*60*10
[REGIONRESOURCE mr_rusty]
AMOUNT=8,21
REAP=i_ore_rusty
REAPAMOUNT=1,3
SKILL=1.0,30.0
REGEN=60*60*10
[REGIONRESOURCE mr_bronze]
AMOUNT=4,12
REAP=i_ore_bronze
REAPAMOUNT=1,3
SKILL=1.0,30.0
REGEN=60*60*10
[REGIONRESOURCE mr_old_copper]
AMOUNT=7,18
REAP=i_ore_old_copper
REAPAMOUNT=1,3
SKILL=1.0,30.0
REGEN=60*60*10
[REGIONRESOURCE mr_dull_copper]
AMOUNT=5,25
REAP=i_ore_dull_copper
REAPAMOUNT=1,3
SKILL=1.0,30.0
REGEN=60*60*10
[REGIONRESOURCE mr_shadow]
AMOUNT=5,16
REAP=i_ore_shadow
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_copper]
AMOUNT=5,20
REAP=i_ore_copper
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_gold]
AMOUNT=3,10
REAP=i_ore_gold
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_rose]
AMOUNT=3,9
REAP=i_ore_rose
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_agapite]
AMOUNT=3,8
REAP=i_ore_agapite
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_bloodrock]
AMOUNT=3,6
REAP=i_ore_bloodrock
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_silver]
AMOUNT=1,2
REAP=i_ore_silver
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_verite]
AMOUNT=2,6
REAP=i_ore_verite
REAPAMOUNT=1,3
SKILL=30.0,60.0
REGEN=60*60*10
[REGIONRESOURCE mr_Valorite]
AMOUNT=2,4
REAP=i_ore_Valorite
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_mytheril]
AMOUNT=2,3
REAP=i_ore_mytheril
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_blackrock]
AMOUNT=1,3
REAP=i_ore_blackrock
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_diamond]
AMOUNT=1,4
REAP=i_gem_diamond
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_ruby]
AMOUNT=1,4
REAP=i_gem_ruby
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_citrine]
AMOUNT=1,4
REAP=i_gem_citrine
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_Emerald]
AMOUNT=1,4
REAP=i_gem_Emerald
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_Star_Sapphire]
AMOUNT=1,4
REAP=i_gem_Star_Sapphire
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_Sapphire]
AMOUNT=1,4
REAP=i_gem_Sapphire
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_Amethyst]
AMOUNT=1,4
REAP=i_gem_Amethyst
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONRESOURCE mr_Tourmaline]
AMOUNT=1,4
REAP=i_gem_Tourmaline
REAPAMOUNT=1,3
SKILL=60.0,110.0
REGEN=60*60*10
[REGIONTYPE r_default_rock t_rock]
// By default, iron is most common, sometimes nothing can be mined, but there
// is a small chance of a rare diamond. Shadow ore is cannot be mined.
RESOURCES=50.0 mr_iron // This large number makes this very common.
RESOURCES=10.0 mr_nothing
RESOURCES=8.0 mr_rusty
RESOURCES=6.0 mr_old_copper
RESOURCES=6.0 mr_dull_copper
RESOURCES=5.0 mr_bronze
RESOURCES=5.0 mr_copper
RESOURCES=2.0 mr_gold
RESOURCES=2.0 mr_rose
RESOURCES=2.0 mr_agapite
RESOURCES=1.0 mr_bloodrock
RESOURCES=1.0 mr_silver
RESOURCES=0.5 mr_verite
RESOURCES=0.2 mr_valorite
RESOURCES=0.1 mr_mytheril
RESOURCES=0.1 mr_blackrock
RESOURCES=0.1 mr_diamond // The small number means this is very rare.
[REGIONTYPE r_dungeon t_rock]
// Usually Iron, but sometimes Shadow ore can be mined in dungeons.
RESOURCES=100.0 mr_nothing
RESOURCES=30.0 mr_iron
RESOURCES=5.0 mr_shadow
ON=@RegPeriodic
SRC.SOUND={021f 1 0243 1 0244 1 0245 1}
[REGIONTYPE r_spooky t_rock]
// Iron and Shadow ore are very rarely mined in a spooky region.
RESOURCES=65.0 mr_nothing // Usually there is nothing here.
RESOURCES=30.0 mr_iron
RESOURCES=5.0 mr_shadow
[REGIONTYPE r_swamp t_rock]
// There is nothing to mine in a swamp.
RESOURCES=100.0 mr_nothing
ON=@RegPeriodic
SRC.SOUND={0e 10 0f 10 022 1 023 1 024 1 0267 1}
/////////////////////
// Generic Regions //
/////////////////////
[REGIONTYPE r_default]
ON=@Enter
IF (<SRC.ISPLAYER>)
IF !(<isempty <TAG.MUSIC>>)
SRC.MIDILIST=<TAG.MUSIC>
ELSE
SRC.MIDILIST=midi_britain1,midi_ForestA,midi_JungleA,midi_MountainA,midi_Plains,midi_Victory
ENDIF
ENDIF
//ON=@CliPeriodic
//IF (<SRC.ISPLAYER>)
// SRC.MIDILIST=midi_britain1,midi_ForestA,midi_JungleA,midi_MountainA,midi_Plains,midi_Victory
//ENDIF
[REGIONTYPE r_graveyards]
ON=@RegPeriodic
SRC.SOUND={0a 1 0b 1}
[REGIONTYPE r_forests]
ON=@RegPeriodic
IF (<SRC.SECTOR.ISNIGHTTIME>)
SRC.SOUND={00 2 01 2 02 2 07d 1} //Play these sounds at night.
ELSE
SRC.SOUND={08 10 09 10 0219 1 07d 1} //Play these sounds during the day.
ENDIF
[REGIONTYPE r_jungle]
ON=@RegPeriodic
IF (<SRC.SECTOR.ISNIGHTTIME>)
SRC.SOUND={0c 2 0d 2 0b3 1}
ELSE
SRC.SOUND={03 2 04 2 05 2 0b3 1}
ENDIF
[EOF]