Skip to content

Commit ec974a4

Browse files
Bart RoossienDevGeniusCode
authored andcommitted
Creating instructions on how to test with replays (#41)
1 parent a920a73 commit ec974a4

File tree

9 files changed

+111
-0
lines changed

9 files changed

+111
-0
lines changed
804 KB
Binary file not shown.
250 KB
Binary file not shown.
806 KB
Binary file not shown.
333 KB
Binary file not shown.
105 KB
Loading
105 KB
Loading

SourceCode/Debug/replay_testing.md

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
# How to Test a Build of _Command & Conquer: Generals & Zero Hour_ with replays
2+
3+
Replays in _Command & Conquer: Generals & Zero Hour_ are not just recordings—they are full simulations of the original
4+
gameplay. The replay file only contains the user inputs, while all other game actions are recalculated during playback.
5+
This makes replays an excellent tool for testing the compatibility and accuracy of a compiled version.
6+
7+
## How to test using a replay
8+
9+
To perform a test using a replay, use the following steps:
10+
11+
1. Gather previously saved replays of matches played on a known-working version of the game. These replays act as a
12+
benchmark for testing. A prepared set of test replays can be found [here](#how-to-verify-the-game).
13+
14+
2. Copy the replay file into `Documents\Command and Conquer Generals Data\Replays` for _Generals_ replays
15+
and `Documents\Command and Conquer Generals Zero Hour Data\Replays` for _Zero Hour_ replays.
16+
17+
3. Make sure that the map the replay was played on is present in `Documents\Command and Conquer Generals Data\Maps`
18+
for _Generals_ and `Documents\Command and Conquer Generals Zero Hour Data\Maps` for _Zero Hour_ maps. If the map
19+
is not present, the replay may not show in the replay list, or the game may instantaneously crash.
20+
21+
4. Launch the Build to be tested. For quick testing, it is recommended to start the game with the `-quickstart` and `-win`
22+
command arguments.
23+
24+
5. Navigate to `Load` then `Load Replay` and select the replay to be used for the test.
25+
26+
6. You can fast-forward through the replay using the `F` hotkey (_Zero Hour_ only at the moment).
27+
28+
## How to verify the game
29+
30+
To verify compatibility, the playback must yield the same outcomes as the original game. If the build is not compatible,
31+
it will result in one or more of the following issues in the replay:
32+
33+
1. A brief message, **"The game has mismatched"**, flashes on the screen. This message is easy to miss, especially
34+
if you are fast-forwarding the replay.
35+
36+
2. The simulation may behave erratically: units might stop moving, pile up, or otherwise act unpredictably.
37+
38+
3. The replay outcome may differ from the original game. For instance, the player might win in the original game,
39+
but the AI wins in the replay.
40+
41+
4. The final score screen may display values that deviate from those in the original game.
42+
43+
If one of the above issues appear, the build being tested is not compatible with the version the game was
44+
originally played in.
45+
46+
## VC6 vs VS2022
47+
48+
Only versions compiled with **Visual C++ 6 (VC6)** are compatible with replays made in the original game
49+
(v1.04 and v1.05). Versions compiled in **Visual Studio 2022 (VS2022)** will always result in mismatches due to
50+
changes in how the code is handled by modern compilers.
51+
52+
## Replays
53+
54+
A select number of replay files can be found in this section. These replay files are perfect for verifying
55+
compatibility between versions or identifying issues with compiled builds.
56+
57+
### _Zero Hour_ multiplayer: Golden replay
58+
59+
The golden replay is a multiplayer match made in _Zero Hour v1.04_ in which systematically all units and
60+
abilities have been used. It consists of two playthroughs to cover all the general powers. Both replays have
61+
been played on the customized _Tansoooo_ map.
62+
63+
[Download both replays and the map](files/Golden-replays.zip)
64+
65+
For a successful test, the expected results on the score screen are:
66+
67+
Golden replay 1:
68+
[files/golden-replay-1-results.png]
69+
70+
Golden replay 2:
71+
[files/golden-replay-2-results.png]
72+
73+
### Zero Hour Skirmish
74+
75+
For _Command & Conquer: Zero Hour_, you can set up your own single-player test by playing a skirmish match against
76+
one or more AI opponents. To ensure thorough testing, it's recommended to assign each faction to an AI player.
77+
They don't need to be on the same team. Once the match is completed, save the replay for analysis.
78+
**Test the replay** in the same version and screenshot the results before testing in other versions.
79+
80+
It is recommended to use version **1.04** to create your own skirmish game,
81+
although the latest version **1.05** is backwards compatible.
82+
83+
If you'd prefer not to play a skirmish game, you can download [this file](files/Zerohour-skirmish.zip),
84+
which includes a skirmish match played on a default _Zero Hour_ map .
85+
The expected results are provided in the download package.
86+
87+
### Generals Multiplayer
88+
89+
For _Command & Conquer: Generals_ three replays have been selected from GameReplays:
90+
91+
- **Test MP replay 1**: 6 player FFA game on the map Defcon 6.
92+
- **Test MP replay 2**: 7 player FFA game on the map Whiteout (default _Generals_ map).
93+
- **Test MP replay 3**: 2 v 2 v 2 game on the map Armoured Fury (default _Generals_ map).
94+
95+
Download the replays, their maps and the result screens [here](Generals-mp-replays.zip).
96+
97+
### Generals Skirmish
98+
99+
For _Command & Conquer: Generals_, you can set up your own single-player test by playing a skirmish match against
100+
one or more AI opponents. To ensure thorough testing, it's recommended to assign each faction to an AI player.
101+
They don't need to be on the same team. Once the match is completed, save the replay for analysis.
102+
**Test the replay** in the same version and screenshot the results before testing in other versions.
103+
104+
**Important Note**: Make sure to use _Generals_ **version 1.08**, as the latest version (1.09) is incompatible
105+
with both version 1.08 and the _SuperHackers_ version.
106+
107+
If you'd prefer not to play a skirmish game, you can download [this file](files/Generals-skirmish.zip),
108+
which includes a skirmish match played on a default _Generals_ map.
109+
The expected results are provided in the download package.

SourceCode/Home.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ new to the project, here’s how you can contribute:
2727

2828
- [Build Guides for Different Platforms](build_guides)
2929
- [Dependencies and Libraries](Dependencies)
30+
- [Replays for testing](Debug/replay_testing)
3031
- [Community Forks](forks)
3132
- [Tools for Developers](Tools)
3233
- [FAQ](FAQ)

SourceCode/_Sidebar.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
- [How to Get Involved](how_to_involved)
66
- [How to Contribution](contribution)
7+
- [Replays for testing](Debug/replay_testing)
78
- [Community forks](forks)
89
- [License](license)
910
- [Credits](credits)

0 commit comments

Comments
 (0)