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

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.
Loading
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)