Game scheme file
From Worms Knowledge Base
- "WSC" redirects here. For the scheme contest, see Worms Scheme Contest.
The W:A scheme file format contains game settings, which define which weapons will be available, various game options such as turn time and weapon strength, as well as many other settings.
Contents
File format
Much of the following information was extracted from The Fiddler, written by Fudge Boy.
Offset | Size | Type | Description |
---|---|---|---|
00 | 4 | char[4] | Signature. The magic number used to identify the WSC file. Hex: 0x5343484D, ASCII: "SCHM" |
04 | 1 | byte | Version Represents the WSC file version. Values: 0x01=Standard Scheme, 0x02=Extended Scheme (super weapon settings are saved, see below) |
05 | 1 | ubyte | Hot-Seat Delay The extra time added between turns, used to switch seats and/or plan your turn. Values: represent seconds |
06 | 1 | byte | Retreat Time The time available after using a weapon while grounded, used to move to a better place before your turn ends. Values: represent seconds |
07 | 1 | byte | Rope Retreat Time The time available after using a weapon while roping, used to move to a better place before your turn ends. Values: represent seconds |
08 | 1 | bool | Display Total Round Time When enabled, the total round time is displayed along with the turn time. Values: 0x00=Off?, 0x01=On?, Other=? |
09 | 1 | bool | Automatic Replays When enabled, the game will automatically replay the ending of a significant turn. Does not apply to online games. Values: 0x00=Off?, 0x01=On?, Other=? |
0A | 1 | byte | Fall Damage The amount of damage caused to a worm for hitting the ground at a critical velocity. Values: see Fall Damage. |
0B | 1 | bool | Artillery Mode Known also as, anchored worms. When enabled, worms are unable to move around by means of walking or jumping. Values: 0x00=Off?, 0x01=On?, Other=? |
0C | 1 | bool | Bounty Mode This setting presumably was for a planned feature that never got implemented. The byte is unused by the game. A suggested use for this byte is for scheme editors to save a selected Magic Number to distinguish which scheme editor was used to encode a scheme. Values: 0x00=Unset, 0x89=SchemeEddy, 0x5F=LeTotalKiller's Scheme Editor. |
0D | 1 | byte | Stockpiling Mode Determines what happens to unused weapons between rounds. This setting only matters in matches where more than 1 round is meant to be played. Values: 0x00=Off (replenishing), 0x01=On (accumulating), 0x02=Anti (reducing), Other=? |
0E | 1 | byte | Worm Select The method for choosing which worm on the team plays the turn. Values: 0x00=Ordered? (off), 0x01=Optional? (on), 0x02=Random?, Other=Act like 0x01? |
0F | 1 | byte | Sudden Death Event An event that gets triggered after the remaining round time reaches zero. Values: 0x00=Round Ends (the leading team wins), 0x01=Nuclear Strike, 0x02=HP Drops to 1, 0x03=Nothing Happens, Other=? |
10 | 1 | sbyte | Water Rise Rate The rate that the water rises after each turn during sudden death. Values: see Sudden Death ("Flooding speed" section) |
11 | 1 | sbyte | Weapon Crate Probability The relative chance that a crate drop will contain weapons. Values: see Crate probability |
12 | 1 | bool | Donor Cards When enabled, teams will drop a collectible donor card at their defeat. Values: 0x00=Off?, 0x01=On?, Other=? |
13 | 1 | sbyte | Health Crate Probability The relative chance that crate drop will contain energy. Values: see Crate probability |
14 | 1 | ubyte | Health Crate Energy The amount of energy gained for collecting a health crate drop. Values: represent energy amount |
15 | 1 | sbyte | Utility Crate Probability The relative chance that a crate drop will contain a utility. Values: see Crate probability |
16 | 1 | byte | Hazardous Object Types Sets what hazards should appear on the landscape (and how many for new W:A schemes). Values: see Hazardous Objects |
17 | 1 | byte | Mine Delay The amount of time between activating a mine and it exploding. Values: 0x04 & 0x80 to 0xFF=Random (between 0 & 3 seconds), Other=represents seconds |
18 | 1 | bool | Dud Mines When enabled, some landscape mines will be triggered as duds. Values: 0x00=Off?, 0x01=On?, Other=? |
19 | 1 | bool | Worm Placement The method in which worms are placed onto the landscape at the beginning of the round. Values: 0x00=Automatic?, 0x01=Manual?, Other=? |
1A | 1 | ubyte | Initial Worm Energy The amount of energy a worm begins a round with. Values: 0x00=all worms die (up to -and including- W:A 3.6.26.5, and in WWP, a crash occurs in that case), Other=represent energy amount |
1B | 1 | sbyte | Turn Time The amount of time you get to make your move. Values: 0x00 to 0x7F=represent seconds, 0x80 to 0xFF=timer counts up |
1C | 1 | sbyte | Round Time The amount of time before sudden death is triggered. Values: 0x00=sudden death triggering on the first turn, 0x01 to 0x7F=represent minutes, 0x80 to 0xFF=represent seconds, in a way that 0xFF=1s and 0x80=128s. |
1D | 1 | byte | Number of Rounds The number of round wins required to win the match. Values: 0x00=1, Other=represent number of rounds |
1E | 1 | bool | Blood When enabled, damaging a worm causes red particles to be drawn instead of pink. Values: 0x00=Off?, 0x01=On?, Other=? |
1F | 1 | bool | Aqua Sheep When enabled, super sheep are converted to aqua sheep, which can swim under the water. Values: 0x00=Off?, 0x01=On?, Other=? |
20 | 1 | bool | Sheep Heaven When enabled, exploding sheep will jump out of destroyed weapon crates. Values: 0x00=Off?, 0x01=On?, Other=? |
21 | 1 | bool | God Worms When enabled, all worms have infinite health and can only be destroyed by drowning them. Values: 0x00=Off?, 0x01=On?, Other=? |
22 | 1 | bool | Indestructible Land When enabled, the landscape can not be destroyed, except by rising water. Values: 0x00=Off?, 0x01=On?, Other=? |
23 | 1 | bool | Upgraded Grenade When enabled, grenades are more powerful. Values: 0x00=Off?, 0x01=On?, Other=? |
24 | 1 | bool | Upgraded Shotgun When enabled, the shotgun shoots 2 consecutive shots, giving it 4 shots total. Values: 0x00=Off?, 0x01=On?, Other=? |
25 | 1 | bool | Upgraded Clusters When enabled, cluster weapons contain even more clusters. Values: 0x00=Off?, 0x01=On?, Other=? |
26 | 1 | bool | Upgraded Longbow When enabled, longbows are more powerful. Values: 0x00=Off?, 0x01=On?, Other=? |
27 | 1 | bool | Team Weapons When enabled, teams will start the match with their preselected team weapon. The team weapon setting will override the Ammo, Power, Delay, and Crate settings for the 8 team weapons in the scheme (see Team weapons). Values: 0x00=Off?, 0x01=On?, Other=? |
28 | 1 | bool | Super Weapons When enabled, super weapons may appear in weapon crate drops (see Crate probability). Values: 0x00=Off?, 0x01=On?, Other=? |
29 | Weapon Settings Individual weapon settings follow. Each weapon uses 4 unsigned bytes in the scheme file for weapon Ammo, Power, Delay, and Crate Probability settings respectively. Version 1 scheme files hold 45 weapon structures and Version 2 scheme files hold 64 weapon structures (see below). |
Weapon structure
The first scheme format version holds only the 45 regular weapons, and is 221 bytes in size. Version 2 of the format is 297 bytes in size and has added support for super weapon settings, totaling to 64 weapon records.
Each weapon setting structure is 4 bytes long and is as follows:
- 00 - ammo (1 byte, unsigned) - Note: A value of 0A or between 80 and FF will give unlimited ammunition.
- 01 - power (1 byte, unsigned)
- 02 - delay (1 byte, unsigned) - Note: A value between 80 and FF will give the weapon an unlimited delay, "blocking" it. This is useful if one doesn't want a specific super weapon that has 0 ammunitions to appear in crates.
- 03 - crate probability (1 byte, unsigned)
This article has a to-do list: | |
|
Weapon list
The list of weapons, as they appear in the scheme files and in the game memory.
Position | Weapon Name |
---|---|
0 | Bazooka |
1 | Homing Missile |
2 | Mortar |
3 | Grenade |
4 | Cluster Bomb |
5 | Skunk |
6 | Petrol Bomb |
7 | Banana Bomb |
8 | Handgun |
9 | Shotgun |
10 | Uzi |
11 | Minigun |
12 | Longbow |
13 | Airstrike |
14 | Napalm Strike |
15 | Mine |
16 | Fire Punch |
17 | Dragon Ball |
18 | Kamikaze |
19 | Prod |
20 | Battle Axe |
21 | Blowtorch |
22 | Pneumatic Drill |
23 | Girder |
24 | Ninja Rope |
25 | Parachute |
26 | Bungee |
27 | Teleport |
28 | Dynamite |
29 | Sheep |
30 | Baseball Bat |
31 | Flame Thrower |
32 | Homing Pigeon |
33 | Mad Cow |
34 | Holy Hand Grenade |
35 | Old Woman |
36 | Sheep Launcher |
37 | Super Sheep |
38 | Mole Bomb |
39 | Jet Pack |
40 | Low Gravity |
41 | Laser Sight |
42 | Fast Walk |
43 | Invisibility |
44 | Damage x2 |
Super weapons
Super weapons are not available in Version 1 scheme files:
Position | Weapon Name |
---|---|
45 | Freeze |
46 | Super Banana Bomb |
47 | Mine Strike |
48 | Girder Starter Pack |
49 | Earthquake |
50 | Scales Of Justice |
51 | Ming Vase |
52 | Mike's Carpet Bomb |
53 | Patsy's Magic Bullet |
54 | Indian Nuclear Test |
55 | Select Worm |
56 | Salvation Army |
57 | Mole Squadron |
58 | MB Bomb |
59 | Concrete Donkey |
60 | Suicide Bomber |
61 | Sheep Strike |
62 | Mail Strike |
63 | Armageddon |
Differences in Worms World Party
After the weapon settings (which don't include super weapons), Worms World Party contains three bytes of unknown purpose (appear to usually be null), followed by five bytes composed of a repeat of the signature followed by the version one more time. In addition, the Worms World Party schemes use version number 1, and they interpret Double Damage ammo as the number of turns for which double damage will take effect.