Repository navigation
Expand file tree
/
Copy pathsettings.ini
More file actions
3567 lines (3465 loc) · 169 KB
/
Copy pathsettings.ini
File metadata and controls
3567 lines (3465 loc) · 169 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
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
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
; ============================================================================
; Basic-Extended 4.0 settings
;
; Lines starting with ; are comments. Switches accept 1/0, true/false, yes/no, on/off.
; Colours are $RRGGBB. Times are in seconds unless the key name says Ticks (60 ticks = 1 second).
; Numbers may use a dot or a comma.
; Commands = words separated by |, written without the ! or / and matched in lower case; an empty
; list switches that command off. This file lies next to main.pas. The lists (the rules, the
; messages, the command lists, the reserved slots, the Steam admins, the watched players) are
; numbered keys of their sections - Line-1, Line-2 ... - add as many as you like, in any order and
; with gaps; the data folder keeps what the script writes (players.bdb, granted_admins.txt).
; /reloadsettings (admin in game, or the server console) applies changes while the server runs.
; Unknown keys and values out of range are reported in the server console at load.
; ============================================================================
[General]
; Console lines sent to one player per tick (1-10); the rest waits for the next ticks. Many lines to one
; player in one tick can stop the server, so keep this low.
LinesPerTick = 4
; Lines sent to everybody per tick (1-5)
BroadcastLinesPerTick = 2
; Longest waiting queue per player (lines, 20-1000); anything beyond is dropped
MaxQueuedLines = 200
; MemoryReads = 1: the weapons, the keys and the aim of every soldier are read straight from the server's records
; of the soldiers once the library has found where they lie (it matches what the script reads on two soldiers);
; one soldier is checked against the script's own values every second and any difference switches the reading off
; until the next start (/be_status tells which way it works). The ammunition of all soldiers is then one call a
; tick. 0 = the script reads the properties of every soldier itself.
MemoryReads = 1
; Default colours of answers
ColorGood = $00BFFF
ColorBad = $FF0033
; Told to everybody when the script starts (after /recompile); {version}; empty = nothing
StartMessage = Basic-Extended v{version} loaded - successfully :)
; Points and money only against somebody: while a player has no opponent in the game - nobody of another team (in
; the modes without teams nobody else; the spectators do not count) - he earns nothing: no [Points], no [Shop]
; money (the income and the round's money neither; a crate gives something else than money), no score points of
; the extras ([Medic] and the others) and no mines for a capture. So nothing pays alone, with everybody in the
; spectators or with only his own team in the game. A loss (a suicide, team damage) counts anyway.
; any = a bot counts as an opponent, humans = only a human does, off = everything pays even alone
Opponents = any
; Told to him when something did not pay for that reason (once, and again after he had an opponent); empty = nothing
NoOpponentText = Nobody plays against you - no points or money until an opponent joins.
; ----------------------------------------------------------------------------------------------------
; Combat: health display, regeneration, kits, damage numbers, hit flash, radar
; ----------------------------------------------------------------------------------------------------
[HealthHud]
; Health of the player on their screen (BigText). It is sent only when the shown value changes (a hit,
; regeneration, respawn) and again every RefreshSeconds, and hidden with ' ' when the player dies or goes to
; the spectators. Players change it with !hp (see Commands).
Enabled = 1
; BigText layer (0-255). ZitroStats uses 12-15, Soldat's own kill messages use 1.
Layer = 199
; Shown to players who have not switched it off themselves
DefaultOn = 1
; Default position (0-854 x 0-480: 480 is the screen height, the width depends on the aspect ratio of
; the player's screen - keep X below 600 to be seen on every screen) and letter size (0.005-0.5).
; ZitroStats' own line (!hud) is at 20 436 and its admin countdown at 20 410, both size 0.02.
X = 20
Y = 384
Scale = 0.02
; Styles a player chooses with !hp style <n>. Tokens: {pct} percent, {hp} health points,
; {max} maximum health, {bar} bar, {regen} RegenMark while regenerating, {vest} vest percent
Style1 = Health: {pct}% {regen}
Style2 = HP {hp}/{max} {regen}
Style3 = {bar} {pct}% {regen}
Style4 = {pct}% {regen}
Style5 = Health: {pct}% Vest: {vest}% {regen}
DefaultStyle = 1
BarLength = 10
BarFull = |
BarEmpty = .
RegenMark = +
; Colour from full health through half to no health (a smooth blend)
ColorFull = $00FF00
ColorHalf = $FFFF00
ColorLow = $FF0000
; The text is sent when it changes, after a respawn and a map change, and again every RefreshSeconds
; (0-3600): the 2.8.2 server sends such texts without any delivery check, so a lost one is repaired that way.
; Every line of the HUD (health, ammunition, grenades, mines, blood, money, class, score, vest) lives three
; RefreshSeconds on the screen; DisplayTicks (600-3600000) is its life only with RefreshSeconds = 0.
DisplayTicks = 360000
RefreshSeconds = 5
; Commands of the players (!hp, !hp on|off|style <n>|size <n>|pos <x> <y>|pos reset|edit|done|reset|help)
Commands = hp|health
; Remember each player's choice (data/players.bdb, by Steam id; a player without Steam by their
; computer id - HWID); 0 = nothing is kept, and the choices kept before are not used either
SavePlayers = 1
; The editor (!hp edit, !radar edit): the player stands still and moves the text with the movement
; keys, jump / crouch = up / down, reload / change weapon = bigger / smaller; the grenade key (E) or
; !hp done = save and leave, lying down (X, prone) = leave without saving. It saves and ends by itself
; after EditorSeconds (5-600) or when the player is hit. A tap moves the text by EditorStep pixels
; (1-20); a held key waits a third of a second, then moves slowly, and faster after a second.
EditorSeconds = 60
EditorStep = 1
; Low health: at LowPercent (0 = off) and below the text is LowColor, blinking with LowBlinkColor
; every LowBlinkTicks ticks (0 = no blinking)
LowPercent = 25
LowColor = $FF0000
LowBlinkColor = $FFFFFF
LowBlinkTicks = 20
[Ammo]
; Limited ammunition: every weapon comes with a reserve (below, in rounds) and the magazine in the
; weapon is refilled only from it. The script follows the magazine count the game reports (Soldat
; keeps the magazine in the player's game: it fires and reloads there) and believes a new count after
; 8 ticks, so the server's own short guesses do not count. When a reload loads more than the reserve
; holds, the magazine is set to what is left; a bot's weapon always reloads full, so bots only lose
; the weapon at the end. The aimbot takes its rounds from the same magazine; /infammo counts nothing.
Enabled = 0
; 1 = an empty weapon with nothing left to load is taken away (the secondary stays); 0 = a player's
; stays empty: the magazine is set to 0 again before the game's reload could fill it (a bot's is taken
; away all the same - the server reloads a bot's weapon at once and full)
EmptyDrop = 1
; 1 = bots run out of ammunition too
Bots = 1
; The chainsaw burns fuel (its reserve, in millilitres; shown in litres from 1 l up): 1 ml every
; ChainsawIdleDrainTicks while in the hands, and ChainsawAttackDrain ml more every ChainsawDrainTicks
; while sawing (60 ticks = 1 second). The fuel stays in the saw's tank when it is thrown away.
ChainsawIdleDrainTicks = 20
ChainsawDrainTicks = 3
ChainsawAttackDrain = 1
; 1 = weapons left on the ground are remembered by their map object: a dead soldier's spare magazines
; lie with his weapon and go to the one who picks it up (or loots it, see [Looting]); a weapon thrown
; away keeps only the rounds in it, the spare magazines stay with the soldier (and end with his life).
; A team change or leaving the game leaves the weapon in the hands as a death does.
TrackGroundWeapons = 1
; 1 = the reserve comes in full magazines of the weapon's size (weapons.ini), rounded to whole ones
; (160 rounds of an AK-74 with 35-round magazines: 5 magazines): a reload takes the fullest spare
; magazine (or the one chosen with !mag <n>), and reloading early puts the magazine with the rounds left
; back into the pouch. 0 = one pool of rounds per weapon. The Spas-12 (shell by shell), single-round
; weapons (M79, LAW, bows) and the chainsaw always use the pool.
MagazineMode = 1
; 1 = a picked weapon brings all the spare magazines of its dead owner; 0 = only when the own pouch for
; that weapon is empty
PickupFullSet = 0
; The most spare magazines of a weapon a soldier carries: what a fresh weapon comes with plus
; ExtraMagazines (0 = not more than that, -1 = up to 12). Looting stops there, and a dead soldier's
; weapon picked up brings no more; a weapon without magazines keeps at most its reserve below and as
; many magazines' worth
ExtraMagazines = 1
; Survival: a player alive at the end of a round keeps his ammunition for the next one (SurvivalCarry = 1):
; the magazines of every weapon he used (the one in his gun back in its pouch - the next round's gun is
; loaded with his fullest one), his bandage and first-aid kits ([Bleeding]), the Javelins he fired; a death in
; the round takes it all. SurvivalLock = 1: a weapon he has no rounds left for is locked in his weapon menu
; until he dies or the map changes (taken from his hands when he has it anyway) - with or without the game's
; Advance mode
SurvivalCarry = 0
SurvivalLock = 0
; 1 = the ammunition is added to the health line ("| Ammo: 25 [40, 40]" or "| Ammo: 25/120"); 2 = it
; has its own text with its own place, size and colours ([AmmoHud], the players move it with !ammohud);
; 0 = it is not shown
HudAppend = 2
; !ammo (or /ammo) shows the magazine and the reserve; !mag lists the spare magazines, !mag <n> loads
; that one now
Commands = ammo
MagCommands = mag
; !repack (or /repack) puts the partial spare magazines together: after RepackStartSeconds without
; shooting, one magazine every RepackSecondsPerMagazine (0.1-30); a shot, a reload or another weapon
; stops it
RepackCommands = repack
RepackStartSeconds = 1
RepackSecondsPerMagazine = 1
; 1 = the spare magazines are always kept in order, the fullest first; 0 = in the order they came,
; !repack puts them in order (and that takes its time too)
SortMagazines = 1
; A reload with one round left: 0 = the round is lost with its magazine (as if it stayed in the
; chamber), 1 = the magazine with its round goes back into the pouch like any partial one
ReloadOneRound = 0
; A reload cut short by a weapon change (to the secondary, thrown away, a team change, death): 0 = the
; magazine taken out is lost, 1 = it goes back into the pouch
InterruptedReload = 0
; The health line shows this word when no spare magazine is left ("Ammo: 2 [empty]")
HudNoSpareText = empty
; The reserve of each weapon in rounds, besides the magazine it comes with (0 = only that magazine;
; with MagazineMode = 1 rounded to whole magazines, at least one). CombatKnife = spare knives: a
; thrown knife is replaced from them after the throw (0 = it is gone, as in the game).
USSOCOM = 48
DesertEagles = 28
HKMP5 = 180
Ak74 = 160
SteyrAUG = 150
Spas12 = 42
Ruger77 = 24
M79 = 6
BarrettM82A1 = 15
FNMinimi = 150
XM214Minigun = 100
CombatKnife = 0
Chainsaw = 1000
M72LAW = 4
Flamer = 200
RamboBow = 15
FlamedArrows = 10
[AmmoHud]
; [Ammo] HudAppend = 2: the ammunition in its own text (BigText layer Layer, top-left corner X Y on a
; 854 x 480 screen - keep X below 600 to be seen on every screen - letter size Scale). Its colour follows
; what is left of a full load (the magazine and the spare rounds against a fresh weapon): Color, LowColor
; below LowPercent, CriticalColor below CriticalPercent. With nothing left at all (EmptyDrop = 0) or
; for NoAmmoSeconds after the weapon was taken away NoAmmoText blinks in NoAmmoColor and
; NoAmmoBlinkColor every BlinkTicks. It is sent with the health text and lives as long as it (three
; [HealthHud] RefreshSeconds). Players: !ammohud on|off|pos <x> <y>|pos reset|size <n>|edit|reset
Layer = 196
DefaultOn = 1
X = 20
Y = 428
Scale = 0.02
Color = $00FF00
LowPercent = 35
LowColor = $FFA500
CriticalPercent = 15
CriticalColor = $FF3030
NoAmmoText = NO AMMO
NoAmmoColor = $FF0000
NoAmmoBlinkColor = $FFFFFF
BlinkTicks = 20
NoAmmoSeconds = 3
Commands = ammohud
[Looting]
; Crouching or lying still over a dead soldier's weapon of the kind in the hands takes one of the
; spare magazines lying there after LootSeconds; with the own pouch full it tops up the partial
; magazines after RepackSeconds. Needs [Ammo] TrackGroundWeapons = 1.
Enabled = 1
; how far from the weapon (pixels)
Radius = 45.0
LootSeconds = 1
RepackSeconds = 3
; Where a dead soldier's spare magazines stay: weapon = with his weapon (they go to the one who picks
; it up, or are looted where it lies); body = with his body (looted where the body lies; the weapon
; brings only the rounds in it; gone when he lives again); auto = body in survival mode (the dead stay
; down until the round ends), weapon otherwise. A team change or leaving the game always leaves them
; with the weapon. body and auto need Enabled = 1.
DeadMagazines = weapon
; the size of the Looting and Repacking texts over the soldier, and their place: sideways (pixels, + is
; right) and height (pixels, - is up) from the soldier standing (crouching or lying it goes down with
; his head)
TextScale = 0.022
TextOffsetX = 2
TextOffsetY = -30
[Regeneration]
; Battlefield 3 style: after DelaySeconds without being hit (and without enemy bullets flying close,
; see [Suppression]) health comes back, slowly at first and faster and faster, up to MaxPercent.
; Rates are percent of the maximum health (150, or 65 in realistic mode) per second.
Enabled = 1
DelaySeconds = 5
StartRate = 3
; added to the rate every second while regenerating
Acceleration = 12
MaxRate = 50
; up to this percent of the maximum health (1-100)
MaxPercent = 100
; Health is added every StepTicks ticks (1-30)
StepTicks = 6
; Bots regenerate as well
Bots = 1
; set = health is set directly (no damage event); damage = healed through Soldat's damage routine with a
; negative value, so other scripts (ZitroStats healing statistics) see it like a healing field. A vest
; would keep three quarters of such a heal, so players with a vest are always healed directly.
Method = set
[Suppression]
; An enemy bullet flying within Radius pixels of a player (ExplosiveRadius for grenades, M79, LAW,
; clusters and flame arrows) delays their regeneration by DelaySeconds, even when it misses. A player
; is about 25 pixels tall. Bullets are checked every ScanTicks ticks (1-30), and only while somebody
; waits for regeneration.
Enabled = 1
Radius = 50
ExplosiveRadius = 130
DelaySeconds = 3
ScanTicks = 4
; Bullets of team mates count too when friendly fire is on
TeamBullets = 1
[Kits]
; Kits removed from the maps: their spawn points are switched off while a map loads (no kit is created),
; the kits of a running map are removed, and a kit that appears anyway is removed within SweepSeconds
; (1-30). A kind switched back on with /reloadsettings comes back from the next map.
; Medical kits (the regeneration replaces them)
Medkits = 1
; Grenade kits (1 = players have only the grenades they spawn with; on for the RSCS mode)
GrenadeKits = 0
; Bonus kits: flamer, predator, vest, berserker and cluster grenades
BonusKits = 0
SweepSeconds = 3
[DamageNumbers]
; Numbers above the hit player, seen only by the shooter (WorldText). Hits in the same tick are added up
; and sent as one message; at most 8 numbers (and flash grenade marks) go to one player in one tick;
; the radar has its own budget ([Radar] TextsPerTick).
Enabled = 1
DefaultOn = 1
; Commands of the players (!dmg switches the numbers on and off)
Commands = dmg|damage
; sum = one number per victim that grows while the hits keep coming (StackTicks apart at most);
; column = every hit on its own line under the previous ones (5 lines at most); hit = every hit gets
; its own number
Mode = sum
; percent = percent of the victim's maximum health, hp = health points
Unit = percent
; taken = the health the victim really lost: after the other scripts (spawn protection may cancel a
; hit), after the vest, and never more than they had - a hit that did nothing shows nothing;
; hit = the damage the hit carried, as Soldat gave it to this script (can be over 100%)
Amount = taken
; Realistic mode hides the players a shooter cannot see (behind a wall, behind their back, over 1000
; pixels away). A number over such a player would show where they are, so none is shown (nor a kill mark).
; auto = only in realistic mode, on = in every mode, off = never
LineOfSight = auto
; Show the damage a player does to themselves (own grenades)
ShowSelf = 1
; 1 = a number keeps its full colour for DisplayTicks and is taken away at once; 0 = it fades out
; (the game fades a text over its last 77 ticks, so short-lived texts look pale)
Sharp = 1
StackTicks = 45
DisplayTicks = 90
Scale = 0.0235
; Where the number is: centred over the player, OffsetX pixels to the right (negative = left) and
; OffsetY pixels above the victim's feet to the top of the text (the head is about 20 above them)
OffsetX = 0
OffsetY = 26
; WorldText layers used for one shooter (1-255). Respawns-Control uses the spawn point numbers
; (only for admins who show the spawn points).
LayerFirst = 200
LayerLast = 209
ColorEnemy = $FF6060
ColorFriend = $60FF60
ColorSelf = $FFFF60
ColorKill = $FF2020
; Text of a kill (added to the number)
KillMark = X
[HitFlash]
; A red flash over the whole screen of the hit player (a giant letter O whose ring lies over the
; edges of the screen, like battlefield.pas). It lasts TicksPerPercent ticks per percent of
; ReferenceHealth lost (MinTicks-MaxTicks) and fades out; the game draws a text with less than 77 ticks
; left fainter, so a short flash is a faint one. ReferenceHealth 65: a hit flashes as long in the normal
; mode as in the realistic one (0 = the maximum health of the mode). The client puts BigText in a 480
; units high space whose width depends on the player's screen (640 at 4:3, 854 at 16:9), so one edge of
; the screen alone cannot be flashed reliably: the whole screen is.
Enabled = 0
Char = O
Scale = 75
X = -4100
Y = -4100
Color = $FF0000
Layer = 197
TicksPerPercent = 0.8
MinTicks = 24
MaxTicks = 80
ReferenceHealth = 65
[Radar]
; The players near you with their health: a list, a circle, labels over the players, or dots on a
; ring around your soldier. It shows players behind walls, so who gets which mode is set below.
; Two groups:
; - full users: the Steam ids of SteamIds (S123456789, 76561198083722517, STEAM_0:1:61728394 or
; [U:1:123456789]; several separated by |), and the admins in the game with AdminsFull = 1;
; - everybody else, only with Public = 1.
; Each group has its modes (FullModes / PublicModes: list|circle|labels|ring, all or none), the mode
; it starts with (Mode / PublicMode), whether the radar is on at the start (DefaultOn /
; PublicDefaultOn), what it shows (Show / PublicShow) and how often it may be updated (FullMinTicks /
; PublicMinTicks). Example: a circle for everybody with only the enemies the team can see, and every
; mode with everybody for the admins:
; Public = 1, PublicModes = circle, PublicShow = seen, AdminsFull = 1, FullModes = all, Show = all
Enabled = 1
SteamIds =
AdminsFull = 0
Public = 0
FullModes = list|circle|labels|ring
PublicModes = list|circle
DefaultOn = 1
PublicDefaultOn = 0
; Commands: /radar (/overlay) for full users and admins, !radar in the chat. Both take: on, off,
; mode <name> (or just the name), tick <n>, zoom <n>, show <filter>, team on|off, outline on|off,
; edit, done, pos <x> <y>, size <n>, marks <n>, edge <n>, reset, help. The help lists only the modes
; the player may use. The place, the size, the zoom and the update rate are kept for each mode:
; size is the list's letters, the circle, the labels' letters or the ring's dots; edit moves and
; resizes the list and the circle, and resizes the labels and the ring.
Commands = overlay|radar
PlayerCommands = radar
; The mode a group starts with (list, circle, labels or ring); every player may choose another one of
; the group's modes with !radar mode
Mode = list
PublicMode = list
; Players within Range pixels (50-5000; a screen is about 850 wide). ListRange, LabelsRange,
; CircleRange and RingRange (0 = Range) give a mode its own reach.
Range = 700
ListRange = 0
LabelsRange = 0
CircleRange = 0
RingRange = 0
; No faster than every FullMinTicks / PublicMinTicks ticks (1-600), also with !radar tick
FullMinTicks = 1
PublicMinTicks = 10
; -- list --
; Top-left corner (0-854 x 0-480), letter size and colour, BigText layer of the title (0-255)
ListX = 10
ListY = 150
ListScale = 0.018
ListColor = $E0E0E0
ListLayer = 198
; The nearest ListLines players (1-20), made again every ListUpdateTicks ticks (1-600; each player may
; choose their own with !radar tick <n>); a text is sent only when it changes
ListLines = 8
ListUpdateTicks = 15
; First line (empty = none) and one line per player. Tokens: {name} {pct} health percent,
; {m} the distance in meters as the kill screen shows it (pixels / 14), {dist} the distance in pixels,
; {dir} where the player is (< left, > right, ^ above, v below, o here), {tag} F or R (see Tags)
ListTitle = Radar
ListLine = {dir} {tag}{name} {pct}% {m}
; Decimals of {m} (0-3; the kill screen shows 2)
ListMeterDecimals = 2
; The line when nobody is within reach ({m} = the reach in meters, {range} = in pixels)
ListNobody = (nobody within {m})
; The colour of a player's line: team (FriendColor / EnemyColor), health, distance (RingColorNear -
; Mid - Far) or none (ListColor; then the whole list is one text). With a colour every line is its own
; BigText on the layers ListLineLayerFirst .. +ListLines+2 (keep them clear of 197-199), ListLineSpacing
; lines apart (0.6-4).
ListColorBy = team
ListLineSpacing = 1.2
ListLineLayerFirst = 170
; -- circle --
; Top-left corner of the circle (0-854 x 0-480), its radius (10-240) and the size of its marks; the
; radius stands for the reach. CircleDots (0-32) dots draw the ring, SelfChar is you in the middle;
; the players within reach are EnemyChar / FriendChar (team mates in team games), those further away
; sit on the ring as FarChar in their direction (ShowFar = 1). Made again every CircleUpdateTicks
; ticks; a player's mark is sent again only when it moved more than CircleMovePixels screen pixels
; (0-20; 0 = every pixel, the smoothest). A bigger circle (!radar size) moves its marks in finer steps;
; !radar marks <n> keeps the marks small in it. CircleEdgeScale (0.2-5; !radar edge <n> for each
; player) sizes the dots on the edge: the ring and the players beyond reach.
; BigText layers CircleLayerFirst .. CircleLayerFirst+67.
CircleX = 10
CircleY = 110
CircleRadius = 50
CircleScale = 0.03
CircleUpdateTicks = 4
CircleDots = 16
CircleLayerFirst = 110
ShowFar = 1
CircleMovePixels = 0
CircleEdgeScale = 1
RingChar = .
RingColor = $808080
SelfChar = +
SelfColor = $FFFFFF
EnemyChar = o
EnemyColor = $FF4040
FriendChar = o
FriendColor = $40FF40
FarChar = .
; The walls around you in the circle: OutlineDots (4-64) rays go out from you in every direction and a
; dot shows where each one meets a wall (within the reach) - the shape of the room or cave you are in.
; Made again only when you moved OutlineGridPixels or the circle changed. Outline = 0 switches it off
; for everybody; each player switches it with !radar outline on|off (OutlineDefaultOn = the start).
; BigText layers OutlineLayerFirst .. +OutlineDots-1.
Outline = 1
OutlineDefaultOn = 0
OutlineDots = 32
OutlineLayerFirst = 40
OutlineColor = $707070
OutlineChar = .
OutlineGridPixels = 24
OutlineMovePixels = 2
; Team mates are shown in team games with ShowTeam = 1 (each player may choose with !radar team on|off).
ShowTeam = 1
; Which enemies it shows (team mates always):
; all - everybody;
; seen - those you or a living team mate can see: on a realistic server by the game's rule
; (in front of the aim, no wall between, up to 1000 px), on a normal server those on
; the screen of you or the mate (walls do not hide anybody there);
; seenall - like seen, dead team mates count too;
; seenreal - like seen, but always by the realistic rule (walls hide) on any server;
; seenallreal - like seenreal with the dead team mates.
; Show for full users (they may choose anything), PublicShow for everybody else (they may not choose
; to see more). The realistic rule casts rays: the team's view is made again every VisionRoundTicks
; ticks (1-600) with at most VisionRaysPerTick ray casts a tick (1-200).
Show = all
PublicShow = seen
; PublicMaxZoom: a public radar reaches at most this many times its range (0.5-4; a bigger list or
; circle takes its share of it - the zoom is cut to fit)
PublicMaxZoom = 1
VisionRaysPerTick = 24
VisionRoundTicks = 15
; SkeletonSight = 1: the realistic rule's rays go between the soldiers' upper bodies as the server's own
; skeletons have them (point 7, the viewer's 2 px higher - the game's rule), so crouching, lying and
; rolling count; the realistic fog of war of the damage numbers and the flash marks ([FlashNades]
; LabelLineOfSight: from the viewer's neck, as the game hides grenades) use it too. 0 = the older way,
; fixed heights over the feet (12 px) - in case the radar shows somebody the game does not.
SkeletonSight = 1
; A bigger radar (size, !radar size) reaches a little further: SizeAffectsRange of the size change
; (0-1; 0.25 = size 2 reaches 25% further). !radar zoom <n> multiplies the reach; the circle marks get
; smaller for it (by the square root of the zoom).
SizeAffectsRange = 0.25
; Tags = 1: a flag carrier is FlagChar, a player with a bow BowChar (on the circle, in the list as
; the token {tag}, in the labels in brackets, on the ring)
Tags = 1
FlagChar = F
BowChar = R
; Flags = 1: a flag that is out of its base and not carried (dropped) is shown in every mode (a carried
; flag is the carrier's own letter, never a second mark) - a line
; of the list (ListFlagLine with {flag} {dir} {m} {dist}), FlagMarkChar on the circle and the ring, its
; name over it in the labels. Flags in their base are not shown. CTF and Infiltration: red and blue,
; Hold the Flag and Pointmatch: the yellow one.
Flags = 1
FlagMarkChar = F
FlagRedName = Red flag
FlagBlueName = Blue flag
FlagYellowName = Flag
FlagRedColor = $FF4040
FlagBlueColor = $4080FF
FlagYellowColor = $FFFF40
ListFlagLine = {dir} {flag} {m}
; Everything is worked out in basicext_dll, and a text is sent only when it changed. At most
; TextsPerTick radar texts go to one player in a tick (1-40) and MaxTextsPerSecond (10-2000) in a
; second; what does not fit follows in the next ticks.
TextsPerTick = 20
MaxTextsPerSecond = 150
; TextsPerTickAll: the radar texts of all players together in one tick at most (10-2000); the users
; take turns, the rest follow in the next ticks
TextsPerTickAll = 120
; -- ring (the mode name "arrows" still works) --
; One dot on a ring RingRadius pixels around your soldier for each of the RingPlayers (1-32) nearest
; players within reach, in their direction. The size of the dot tells the distance: RingDotNear for
; the nearest, down to RingDotFar at the edge of the reach, in RingSizeSteps sizes (1-16). The colour
; (RingColorBy): team = EnemyColor / FriendColor of the circle, distance = RingColorNear - Mid - Far,
; health = the colour of the player's health. A flag carrier, a bow or a dropped flag is a letter of
; RingLetterScale, up to RingTagScale bigger when near. The ring is drawn where your soldier will be when it reaches you (your ping times
; RingLead, 0-3), and a dot goes out again only when it moved more than RingMove pixels. Made again
; every RingUpdateTicks ticks (!radar tick <n> in the ring mode). WorldText layers RingLayerFirst ..
; +34 (one per player slot and the flags).
RingUpdateTicks = 5
RingPlayers = 6
RingRadius = 30
RingDotNear = 0.16
RingDotFar = 0.07
RingSizeSteps = 4
RingColorBy = team
RingColorNear = $FF2020
RingColorMid = $FFFF20
RingColorFar = $20FF20
RingDotChar = .
RingTagScale = 0.5
RingLetterScale = 0.03
RingMove = 1.5
RingLead = 1
RingLayerFirst = 210
; -- labels --
; "name health%" centred over every player, made again every UpdateTicks ticks (1-600); a label goes
; out again only when its player moved more than LabelMovePixels or the health changed, and is taken
; away when the player dies or leaves the range (no fading). LabelColorBy: health, team, distance or
; none (the health colours).
UpdateTicks = 6
Scale = 0.02
; pixels from the player's feet up to the top of the label (the head is about 20 above them)
OffsetY = 25
LabelMovePixels = 2
LabelColorBy = health
; WorldText layers LayerFirst .. LayerFirst+34 (one per player slot and the flags, 0-220)
LayerFirst = 150
[TeamGuard]
; A player in a team the game mode does not have (a cheat or a console trick) is put into one it has:
; deathmatch, pointmatch and rambomatch - no team (0); CTF, infiltration and HTF - Alpha or Bravo (the
; smaller); teammatch - the four teams. Spectators are left alone.
Enabled = 1
[KillInfo]
; One line to the killed player: who killed them, the killer's health left and the damage they did to
; the killer during their own life, counted from the killer's last respawn or the start of the killer's last
; regeneration (the health really lost, at most 100%). Tokens: {killer} {weapon} {pct} {hp} {dealt}
; ({dealt} in the unit of [DamageNumbers] Unit), {dist} {air} (the killing shot as the game shows it
; under "You killed": metres and seconds in the air, ? when unknown)
; Off here: ZitroStats shows a death summary after every death on this server.
Enabled = 1
Text = Killed by {killer} ({weapon}), {pct}% health left. You hit them for {dealt}.
Color = $FFA500
; ----------------------------------------------------------------------------------------------------
; Player commands (in the chat with !)
; ----------------------------------------------------------------------------------------------------
[CommandList]
; The list of commands. ZitroStats answers !zitro, !help, !cmds, !commands and !reginfo with its own
; help, AntiFake answers !antifake.
Enabled = 1
Commands = cmd|command
; auto = the commands switched on in this script (the first word of each), then the Extra lines;
; lines = the Line-N lines below (in number order; Color-Line-N gives a line its own colour)
Source = auto
; Extra1 .. Extra20: lines under the automatic list (text|$colour)
Extra1 = Statistics, rankings and accounts: !zitro Visits and names: !antifake|$FF9999
Color = $00BFFF
; Lines shorter than this are filled with spaces (the console then draws them smaller; 0 = off)
PadTo = 135
Line-1 = __________Commands_List:___________________________________________________
Line-2 = !j !s !rate !rate <*> !time !whois !admin |
Line-3 = !ping !ping <*> !track !track <*> !rules !reginfo |
Line-4 = !visits !lastvisitors !locate !locate <*> !locateall |
Line-5 = ?nextmap ?lastmap !map !maps !allmaps |
Line-6 = !nextmap !lastmap !map <part|full name> !randommap !vote |
Line-7 = !hp !hp help !dmg !maplist ?map !cmd |
Line-8 = !suspects !suspects all !acstats <*> !acreview <*> |
Line-9 = __________________________________________________________________________|
[Rules]
; The rules: Line-1, Line-2 ... in number order (add as many as you like); Color-Line-N gives a
; line its own colour, the others have Color
Enabled = 1
Commands = rules|rul
Color = $00BFFF
ShowAfterMapChange = 1
Line-1 = _______________________________________________
Color-Line-1 = $FFFF00
Line-2 = |Respect the following rules or GTFO: |
Color-Line-2 = $FFFF00
Line-3 = |ALLOWED: Spraying, Capping, Camping. |
Color-Line-3 = $00FF00
Line-4 = |RESTRICTED: Cheating, Excessive camping |
Color-Line-4 = $FF0000
Line-5 = | Spam, Bugs, Team change abuse. |
Color-Line-5 = $FF0000
Line-6 = |_____________________________________________|
Color-Line-6 = $FF0000
[MapInfo]
; ?nextmap, ?lastmap and ?map in the chat (ZitroStats answers !nextmap, !lastmap and !map with votes)
Enabled = 1
NextMap = ?nextmap
LastMap = ?lastmap
CurrentMap = ?map
Color = $00BFFF
[MapList]
; The maps of the rotation in columns (ZitroStats answers !maps and !allmaps)
Enabled = 1
Commands = maplist|listmaps
Columns = 5
Color = $00BFFF
; Lines shorter than this are filled with spaces (smaller letters; 0 = off)
PadTo = 135
[Ratio]
Enabled = 1
Commands = rate|ratio|kd|k/d|kdratio
; 1 = the answer is shown to everybody
Public = 1
[Ping]
Enabled = 1
Commands = ping
Public = 1
[PingTrack]
Enabled = 1
Commands = track|t|pingtrack|trackping
Seconds = 5
Public = 1
[LagGuard]
; The connections of the players (off by default). Once a second each player's ping is read and his warps are counted
; (his position corrected by more than WarpPixels over what his speed allows: the server put him where his late or
; lost packets said); the last WindowSeconds are kept - the average, the spread (the mean jump between two readings),
; the highest ping and the warps a minute. A second in which the server stood still counts for nobody; moves of the
; script (teleports, a rally) are no warps. It never kicks: the server kicks above soldat.ini Max_Ping after
; Max_Ping_Warnings warnings (6 s apart) and bans for 15 minutes - with ServerLimit = 1 the script follows that
; rule and tells the player how close he is (LimitText: {ping}, {limit}, {seconds}). WarnPing: a player whose average
; is higher is told (WarnText) at most every WarnEverySeconds (0 = never). IgnoreAdmins = 1: the admins are left
; alone. /lag (admins): every player measured, the worst first; !track shows the spread and the warps too.
; The spectators (all three 0 = never): a player whose average is over SpecPing, or the spread over SpecJitter, or
; with more than SpecWarps warps a minute for SpecSeconds goes to the spectators (SpecText to everybody) - only with
; MinPlayers players or more, in a survival round only when he is dead; !j answers WaitText until his average stays
; under ResumePing for ResumeSeconds. Tokens: {player} {ping} {jitter} {max} {warps} {limit} {seconds}.
Enabled = 0
WindowSeconds = 30
WarpPixels = 24
IgnoreAdmins = 1
WarnPing = 250
WarnEverySeconds = 120
ServerLimit = 1
SpecPing = 0
SpecJitter = 0
SpecWarps = 0
SpecSeconds = 60
MinPlayers = 8
ResumePing = 200
ResumeSeconds = 30
WarnText = Your connection: ping {ping} ms (spread {jitter} ms, {warps} warps a minute).
LimitText = Your ping {ping} ms is over the server's limit of {limit} ms - the server kicks you in about {seconds} s.
SpecText = {player} was moved to the spectators (connection: ping {ping} ms, {warps} warps a minute).
WaitText = Your connection is not good enough to play yet (ping {ping} ms).
Color = $FFC060
Commands = lag|laggers
[Time]
Enabled = 1
Commands = time|date
Format = dd.mm.yyyy - h:nn:ss
Public = 1
[WhoIsAdmin]
Enabled = 1
Commands = whoisadmin|adminlist|adminsonline|onlineadmins|onlineadmin|adminonline|whois
; TCP admins answer the line "/clientlist" in the console with "[x] name"
CountTcp = 1
CountInGame = 1
Seconds = 3
[CallAdmin]
; !admin [text] tells the admins in the game and the TCP admins (server console) that somebody needs them
Enabled = 1
Commands = admin|calladmin
CooldownSeconds = 60
[Teams]
; Join the game or the spectators (ZitroStats answers !join, !bal, !teams and !switch)
Enabled = 1
JoinCommands = j|start|play
SpectateCommands = s|spec|5|specators|joins
; Teams by name; empty = off
AlphaCommands =
BravoCommands =
CharlieCommands =
DeltaCommands =
; 0 = no limit
MaxSpectators = 10
; Balance: the team words (AlphaCommands ...) refuse a team that already has as many players as the player's own
; (from the spectators: a team that is not the smallest) - 1 = on, 0 = off, auto = as the server (soldat.ini
; Balance_Teams). AutoBalance = 1: when Alpha and Bravo are AutoDifference or more players apart for AutoSeconds, a
; dead player of the bigger team goes to the smaller one (the bots first with AutoBotsFirst, else the one who joined
; it last; admins only with AutoAdmins = 1); AutoText ({player}, {team}) tells everybody.
Balance = auto
AutoBalance = 0
AutoDifference = 2
AutoSeconds = 20
AutoBotsFirst = 1
AutoAdmins = 0
AutoText = {player} was moved to {team} to balance the teams.
[Info]
; /info: Line1 .. Line20 = text|$colour (the colour after the last |; "|$colour" alone is an empty
; line). Tokens: {server} {version} {address} {port} {style} {prevmap} {map} {nextmap} {ff} {realistic}
; {survival} {advance} {timelimit} {timeleft}. Soldat prints its own /info too unless HideSoldatInfo = 1.
Enabled = 1
Commands = info
Address =
GameStyle =
HideSoldatInfo = 1
PadTo = 135
Line1 = |$FF9999
Line2 = Server name: {server}, Version: {version}, Address: {address}, Port: {port}|$FF9900
Line3 = Game style: {style}, Previous map: {prevmap}, Current map: {map}, Nextmap: {nextmap}|$FF9900
Line4 = Friendly Fire: {ff}, Realistic: {realistic}, Survival: {survival}, Advance: {advance}, Time limit: {timelimit}, Time left: {timeleft}|$FF9900
Line5 = Contact - Mail: dominikk262@wp.pl, Discord: TryHackX#6118, Web: https://forums.soldat.pl/ to soldat-game|$FF00FF
Line6 = Commands list: !cmd, Rules list: !rules, Statistics and account commands list: !reginfo|$FF9999
Line7 = Download full mappack: https://forums.soldat.pl/index.php?topic=45549.0|$FF9999
Line8 = |$FF9999
[Tips]
; Every Seconds one of the Message-N lines to everybody (add as many as you like). It is drawn by its
; weight Chance-Message-N (default 1; 0 = never, 3 = three times as often as 1), never the same one
; twice in a row; Seconds-Message-N keeps a message back for that long after it came, and
; Color-Message-N gives it its own colour (the others have Color).
Enabled = 1
Seconds = 153
Color = $FF00FF
Message-1 = Try !cmd or !commands to see the complete commands list.
Message-2 = Try !reginfo to see the complete list of stats and account related commands.
Message-3 = Try !visits to see the server visit list.
Message-4 = Try !lastvisitors to see the 10 people who recently visited the server.
Message-5 = Try !j to join to game or !s to join to spectators.
Message-6 = Try !rate or !rate <player ID|part name|full name> to see your K/D ratio or selected player ratio.
Message-7 = Try !time to see time on the server.
Message-8 = Try !whois to see who is connected administrators or administrators in the game.
Message-9 = Try !admin to try to summon the administrator.
Message-10 = Try !ping or !ping <player ID|part name|full name> to see your ping or selected player ping.
Message-11 = Try !track or !track <player ID|part name|full name> to see your or selected player, average and max ping.
Message-12 = Try !rules to show list rules on this server.
Message-13 = Try !locate or !locate <player ID|part name|full name> to check your or the selected player location.
Message-14 = Try !locateall to check the location of all players on the server.
Message-15 = Try ?nextmap or ?lastmap or !map to see what is nextmap, lastmap and current map.
Message-16 = Try !nextmap or !lastmap to start voting to change map to nextmap or lastmap.
Message-17 = Try !map <map name | part map name> to start voting to change map to indicated.
Message-18 = Try !maps to view the full server maplist.
Message-19 = Try !allmaps to view all the maps available on the server in the currently game style.
Message-20 = When voting for the map change, you can type !v !vote or press the F12 button.
Message-21 = Hello on my server! Type /info command to learn something about the server and commands.
Message-22 = When you write an accusation of fraud in the message, you will receive information on where to report it.
Message-23 = You can also use locate commands silently using /locate /locate <player ID|part name|full name> /locateall.
Message-24 = Command /votemap <map name>, works in mode searches similar to "!map <map name | part map name>".
Message-25 = Command !map <map name | part map name> has alternatives !votemap <map name> and /votemap <map name>.
Message-26 = Command !lastmap has alternatives !votelast and !votelastmap.
Message-27 = Type !top to view the top 15 players on the server.
Message-28 = You knew the !top command, can be used with a parameter example !top <player name | part name | player id>.
Message-29 = You knew the !top command, can be used with a parameter example !top <ranking position number>.
Message-30 = Using command !topme to display the top of the 15 players with the roster centered on you.
Message-31 = Command !topid <player id> you can use when in ranking is player with the same name as the id of searched player.
Message-32 = Check your stats, use !stats command to see your basic stats.
Message-33 = You can also use the !stats command on other players, type !stats <player ID|part name|full name>.
Message-34 = Check your others stats, use !otherstats command to see your other stats.
Message-35 = You can also use the !otherstats command on other players, type !otherstats <player ID|part name|full name>.
Message-36 = Check !contact or !zitro to view contact details and stats script version.
Message-37 = Enter !reginfo to see accounts and statistics commands.
Message-38 = Enable or disable display of the hud overlay showing ranking, points, and action system, try it !hud.
Message-39 = Write !rank to display your ranking position.
Message-40 = Write !rank <player ID|part name|full name> to display selected player ranking position.
Message-41 = To quickly see who is in the position, type !ranknum <number>.
Message-42 = Type !mapstats to check the popularity, ranking and statistics of the current map.
Message-43 = Type !mapstats <map name> to check the popularity, ranking and statistics of the selected map.
Message-44 = Take a look at the top 15 map ranking by typing !topmaps.
Message-45 = You knew the !topmaps command, can be used with a parameter example !topmaps <map name>.
Message-46 = You knew the !topmaps command, can be used with a parameter example !topmaps <map ranking position number>.
Message-47 = You want a high number of points, take care of your protection days. Check quantity typing !status.
Message-48 = The !status command will allow you to check the registration date, last visit and protect days count.
Message-49 = The command !status can be used on players, example !status <player ID|part name|full name>.
Message-50 = Check how many you have points protection days type !status.
Message-51 = Randomize the game map using !randommap. This command will start voting for random map.
Message-52 = Type !hp to switch your health display on or off, !hp help to change its style, size and place.
Message-53 = Type !hp edit to move your health display with the movement keys (the grenade key saves, lying down cancels).
Message-54 = Type !dmg to switch the damage numbers over the players you hit.
Message-55 = Health comes back by itself after a few seconds without being hit or shot at - there are no medkits.
[Welcome]
; A line to every player every Minutes (0 = off) and/or when they join. Token {player}.
Enabled = 0
Minutes = 7
OnJoin = 0
Text = Hello {player} on my server! Try /info command to learn something about the server and commands.
Color = $0099FF
[CheatHint]
; A player who writes one of these words in the chat (a regular expression) gets Line1 .. Line20
Enabled = 1
Pattern = hax|heater|czit|eator|cheater|haxor|cziter|oszust|cheating|cheats|cheat
Line1 = Please collect evidence of cheating and report on mail or other contacts:
Line2 = Mail: dominikk262@wp.pl, Discord: TryHackX#6118, Web: https://forums.soldat.pl/ to soldat-game
Color = $FF0000
; ----------------------------------------------------------------------------------------------------
; Timers and announcements
; ----------------------------------------------------------------------------------------------------
[ServerPing]
; Average ping of the players to everybody every Minutes
Enabled = 1
Minutes = 6
[SpecIdle]
; Spectators are kicked after Minutes when at least MinPlayers are on the server
Enabled = 1
MinPlayers = 15
Minutes = 10
; ban after the kick (minutes, 0 = only kick)
BanMinutes = 1
IgnoreAdmins = 1
[Afk]
; A player in a team who is alive and presses no key nor moves the cursor for Minutes (1-120) is moved
; to the spectators (the time while they are dead does not count), warned WarnSeconds before; only with
; at least MinPlayers on the server. As a spectator [SpecIdle] may kick them later. Token {player}.
Enabled = 1
Minutes = 3
WarnSeconds = 30
MinPlayers = 4
IgnoreAdmins = 1
Text = {player} was moved to the spectators (away from the keyboard).
; ----------------------------------------------------------------------------------------------------
; Extras from the owner's older scripts - all off until switched on here
; ----------------------------------------------------------------------------------------------------
[Assists]
; A player who did at least MinPercent of the victim's health in the victim's last fight (since the
; victim's respawn or last regeneration) gets an assist when somebody else kills the victim; PerPoint assists
; (0 = never) bring Points kill points. Shown to that player as a BigText. Tokens: {victim} {pct}
; {count} {need} {points}
Enabled = 0
MinPercent = 65
PerPoint = 3
Points = 1
Text = Assist on {victim} ({pct}%) - {count}/{need}
PointText = Assist on {victim} ({pct}%) - {need}/{need}, +{points} kill point!
Color = $FF3232
Layer = 36
DisplayTicks = 240
Scale = 0.07
X = 200
Y = 300
[MultiKill]
; Kills of one player no more than WindowSeconds apart make a combo; the Nth kill of it (2-10) gives
; ComboN = text|points or text|min-max points (a random number). Tokens: {player} {points} {count}
Enabled = 0
WindowSeconds = 3
Color = $CCCC00
Combo2 =
Combo3 = Triple kill! {player} +{points} kills|2-3
Combo4 = Multi kill! {player} +{points} kills|3-5
Combo5 = Multi kill x2! {player} +{points} kills|4-6
Combo6 = Serial kill! {player} +{points} kills|5-7
Combo7 = Insane kill! {player} +{points} kills|6-8
Combo8 = Godlike kill! {player} +{points} kills|7-9
Combo9 = Masta kill! {player} +{points} kills|8-10
Combo10 =
[Spree]
; Kills in a row without dying (team kills and suicides do not count, they end the spree): StepN =
; kills|text goes to everybody at that many kills; a spree of EndMin kills or more that ends gets
; EndText. Tokens: {player} {count}, and {killer} {victim} in EndText. Off here: ZitroStats
; announces the sprees on this server.
Enabled = 0
Color = $FF8800
Step1 = 5|{player} is on a killing spree! ({count} kills)
Step2 = 10|{player} is on a rampage! ({count} kills)
Step3 = 15|{player} is dominating! ({count} kills)
Step4 = 20|{player} is unstoppable! ({count} kills)
Step5 = 25|{player} is godlike! ({count} kills)
Step6 = 30|{player} is wicked sick! ({count} kills)
Step7 =
Step8 =
Step9 =
Step10 =
EndMin = 5
EndText = {killer} ended the killing spree of {victim} ({count} kills)
[FirstBlood]
; The first kill of a map: a line to everybody, and Points kill points for the killer
Enabled = 0
Points = 10
Text = FIRST BLOOD: {killer} killed {victim}
PointsText = {points} points awarded!
Color = $00FF00
[Savior]
; A player who kills an enemy that hit their team mate within WindowSeconds saved that mate: Points kill
; points. Team modes only. Tokens: {player} (the savior) {saved} {points}
Enabled = 0
WindowSeconds = 2
Points = 1
Text = Savior ({saved}) +{points} kill!
SavedText = You were rescued by {player}.
Color = $66CC33
[SelfKill]
; A suicide (not a kill by the server itself) costs Points kill points, shown to everybody as a
; BigText. Tokens: {player} {points}
Enabled = 0
Points = 1
Text = Player {player} loses {points} point for suicide!
Color = $CC3300
Layer = 37
DisplayTicks = 240
Scale = 0.095
X = 64
Y = 375
[Posthumous]
; A dying player drops a live grenade where they die, with a chance of one in ChanceFactor minus their
; kills (at least one in one); its kills are theirs. GroundOnly = 1: only when they stood on the ground.
; Power is the damage factor of the bullet, BulletStyle 2 = a grenade.
Enabled = 0
ChanceFactor = 20
GroundOnly = 0
Power = 100
BulletStyle = 2
Text = You threw away a grenade just before your death.
NoText =
Color = $F8F35A
[TimeToKill]
; When exactly AlivePlayers are alive, a countdown of Seconds starts (a BigText to everybody); at 0
; they all die - it ends a survival round that would never end. Token {seconds}
Enabled = 0
AlivePlayers = 2
Seconds = 30
Text = End in: {seconds}
Color = $00FF33
Layer = 38
Scale = 0.055
X = 380
Y = 10
[Medic]
; Mode = class: one player of a team takes the job with !medic; each second they heal the hurt team
; mates within Distance pixels by HealPerSecond and get a kill point for every PointEvery health they
; gave (0 = none). Mode = call: a hurt player (or one next to a hurt team mate) calls the medic with
; !medic; the medic heals themselves and the team mates nearby while anybody there is hurt, then the team
; waits CooldownSeconds.
; With [Classes] on and a class that heals, the classes are the medics: this section steps aside.
Enabled = 0
Mode = class
Commands = medic|med|medi|nurse
Distance = 65
HealPerSecond = 8
PointEvery = 100
CooldownSeconds = 30
Color = $9F17F0