Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fill the docs with previously implemented fixes and features #1064

Merged
merged 25 commits into from
Sep 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/pr-doc-checker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,8 +64,8 @@ jobs:
# Check that Documentation has been updated
if (git diff --name-only $(git merge-base origin/$BASE_BRANCH HEAD) | \
grep \
-e ^docs/New-or-Enhanced-Logics.md$ \
-e ^docs/Fixed-or-Improved-Logics.md$ \
-e ^docs/Bugfixes.md$ \
-e ^docs/New-or-Enhanced-Logics.md$ \
-e ^docs/AI-Scripting-and-Mapping.md$ \
-e ^docs/User-Interface.md$ \
-e ^docs/Miscellanous.md$ \
Expand Down
128 changes: 125 additions & 3 deletions CREDITS.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,129 @@
This page lists all the individual contributions to the project by their author.

- **Belonit (Gluk-v48)**:
- Check for Changelog/Documentation/Credits in Pull Requests
- Docs dark theme switcher
- Check for Changelog/Documentation/Credits in Pull Requests.
- Docs dark theme switcher.
- **CCHyper/tomsons26**:
- Vinifera foundations: TS++, game.exe hooker, extension system and other core features
- Implement `CurleyShuffle` for AircraftTypes
- Implement `ReloadRate` for AircraftTypes
- Implement `AILegalTarget` for TechnoTypes
- Add support for up to 32767 waypoints to be used in scenarios.
- Implement the loading of Tutorial messages from scenarios.
- Fix HouseType `Nod` having the `Prefix=B` and `Side=GDI` in vanilla `rules.ini` by setting them to `N` and `Nod`, respectively.
- Fix a bug where VQA files could not be loaded from the root directory or local search paths.
- Allow the remap color of `Neutral` and `Special` houses to be overridden in multiplayer games.
- Add RequiredAddon to Theme control types.
- Implement `IntroMovie` for Campaigns.
- Fix a bug where the player could issue a harvester to begin harvesting Tiberium that is below a bridge while the mouse is over the bridge itself.
- Fix a bug where the values of `RandomRate` were not stored correctly.
- Implement `DebugOnly` for Campaigns.
- Fix a bug where the `FSMENU` theme would incorrectly play instead of the `INTRO` theme when in Tiberian Sun mode after returning to the main menu.
- Implement developer commands for instant superweapon recharge.
- Add support for PNG images as an alternative to PCX images.
- Implement option to display the super weapon recharge timer on the tactical view.
- Implement `CanPassiveAcquire` for TechnoTypes.
- Implement `CanRetaliate` for TechnoTypes.
- Fix a bug where the game would crash when a trigger with the action "Wakeup group..." is executed and the requested Group was not found.
- Add loading of `MPLAYER.INI` and `MPLAYERFS.INI` to override Rules data for multiplayer games.
- Allow the game's Window title, Cursor and Icon to be overridden.
- Implement `IdleRate`, `StartIdleFrame` and `IdleFrames` for TechnoTypes.
- Add loading of `GENERIC.MIX` and `ISOGEN.MIX` mixfiles.
- The game will no longer fail to start if the startup mix files are not found.
- Implement support for new custom theater types.
- Add loading of `ELOCAL(00-99).MIX` expansion mixfiles.
- Fix a bug where animations with a `DetailLevel` value greater than 2 would not show in-game.
- Add Rules INI selection dialog for Developer Mode.
- Implement the "Build Off Ally" feature from Red Alert 2.
- Adds background fill behind in-game user typed messages.
- Fix a bug where `EngineerDamage` was incorrectly loaded with `EngineerCaptureLevel`.
- Fix a bug where `EngineerDamage` was not used to calculate the engineer damage.
- Fix a bug where `EngineerCaptureLevel` was not considered when checking the target building.
- Fix a number of issues related to the "multi-engineer" logic.
- Implement JumpCamera (North, South, East and West) commands.
- Implement `EnterTransportSound` and `LeaveTransportSound` for TechnoTypes.
- Fix a bug where air transports are unable to land when given a move order.
- Hardcode shroud and fog graphics to circumvent cheating in multiplayer games.
- Implement `Mechanic` and `OmniHealer` for InfantryTypes.
- Add support for 8-bit PCX and PNG cameos.
- Implement `Soylent` for TechnoTypes.
- Implement `SpawnDelay` for BulletTypes.
- Implements `Suicide` and `DeleteOnSuicide` for WeaponTypes.
- Implement`VoiceHarvest`, `VoiceDeploy`, `VoiceEnter`, and `VoiceCapture` for TechnoTypes.
- Implement various Red Alert 2 AnimType features.
- Add game options to allow MCV's to auto-deploy on game start and to pre-place construction yards instead of spawning an MCV.
- Add developer commands for placing and removing Tiberium from a cell.
- Implement Electric Bolts for WeaponTypes.
- Fix the position of the health bar graphic on unit selection boxes.
- Make the position of the health bar graphic on unit selection boxes customizable.
- Output screenshots to their own sub-directory.
- Echo the user's sent messages back to them as confirmation they were sent.
- Reimplement the command line argument `-CD` from Red Alert to allow file search path override logic.
- Allow the score screen to be skipped at the end of a multiplayer game.
- Add warning notification if a NULL house instance is detected during the game loading screen.
- Implement light sources for TerrainTypes.
- Fix a bug where the agme would crash when attempting to generate a random map if the `Neutral` or `Special` HouseTypes are not found.
- Fix a bug where the agme would crash when attempting to generate a random map if there are fewer than 4 HouseTypes defined.
- Fix a limitation where the game could only choose between the first two HouseTypes for the AI players.
- Add command line options to skip to specific game modes and to skip startup movies.
- Implement diagonal scroll commands.
- Fix a bug where the `Cloakable=yes` had no effect on AircraftTypes.
- Add keyboard commands for playing previous and next music tracks in the jukebox.
- Implement CloakSound and UncloakSound for TechnoTypes.
- Restore the screen shake when a strong unit or building is destroyed.
- Implement various Red Alert 2 WarheadType features.
- Add reading of Weapons list from RULES.INI.\
- Allow WalkRate to be optionally loaded from ART.INI image entries.
- Fix a bug where `CloakStop` had no effect on the cloaking behaviour.
- Add gate rising and lowering sound overrides for buildings.
- Add UnitType flag to prevent a vehicle from being picked up by a Carryall.
- Add support for a custom unloading class when a harvester is unloading at a refinery.
- Implement ToggleAIControlCommandClass.
- Add support for more graphic facings for UnitTypes and various associated items.
- Implement ToggleFrameStepCommandClass.
- Fix a bug where pre-placed crates and crates spawned by a destroyed truck will trigger a respawn when they are picked up.
- Increase the string buffer size from 128 to 2048 characters for when reading and writing Owners from INI.
- Thicken the waypoint and rally point lines and adds stroke/outline to the waypoint number.
- Fix bugs where the Jumpjet uses the wrong animation sequence when firing and in the air.
- Fix a bug where the wrong palette is used to draw the cameo above an enemy spied factory building.
- Fix the animation speed of Waypoint and Rally Point lines so they are normalised and no longer subjected to the game speed setting.
- Fix a limitation where returning to the Skirmish dialog after a game clamps the chosen side between 0 (GDI) and 1 (Nod).
- Fix a bug where the user is able to place a building anywhere on the map by taking advantage of the sidebar.
- Implement hotkey command to enter the manual placement mode.
- Allow harvesters to be considered when executing the "Guard" command.
- Fix division by zero crashes when ShakeScreen is set to 0.
- Increase the IsoMapPack5 buffer size when decoding a map.
- Fix a bug where looping animations incorrectly use the unsynchronized RNG.
- Fix a bug where `IsTrainable` is not checked when an object picks up a veteracy crate.
- Harvesters now auto harvest when built from the war factory.
- Patch to allow Skirmish games to be started with no AI house(s).
- Fix a bug where `IsInsignificant` was not checked when a unit dies.
- Implement the Produce Cash logic for BuildingTypes.
- Fix the incorrect (RA legacy) cell calculation for the "move to cell" team script.
- Fix a bug where the sidebar mouse wheel scrolling "error" sound can be heard at the main menu.
- Fix a bug with TriggerTypes not setting difficulty flags correctly when reading from INI.
- Fix a bug with triggers enabled via other triggers ignoring difficulty settings.
- Fix MultiMission `MaxPlayers` incorrectly loaded with `MinPlayers`.
- Fix to maintain aspect ratio when scaling movies/videos.
- Fix incorrect spelling of "Loser" on the multiplayer score screen debug output.
- Fix incorrect stretching of the main menu transition movies.
- Bugfixes and improvements for the Dropship Loadout menu.
- Add various developer mode hotkey commands.
- Add a "Load Game" button to the retry dialog on mission failure.
- Save screenshots as a PNG file instead of PCX file.
- Add support for playing the renamed intro movies from The First Decade and Freeware TS installations.
- Implement the Blowfish algorithm and removes the requirement for BLOWFISH.DLL.
- Allow the game to continue if the side specific mix files are not found.
- Change the default value of AllowHiResModes to true.
- Implement CnCNet4 support.
- Implement CnCNet5 support.
- **Kerbiter (Metadorius)**:
- Initial doc setup
- Initial documentation setup.
- **Rampastring**:
- Add `IceStrength` to Rules, and `IceDestructionEnabled` scenario option.
- Add `ImmuneToEMP` to TechnoTypes.
- **secsome**:
- Add support for up to 32767 waypoints to be used in scenarios.
- **ZivDero**:
- Filling the documentation for previously implemented features.
- Add support for up to 32767 waypoints to be used in scenarios.
29 changes: 0 additions & 29 deletions docs/AI-Scripting-and-Mapping.md

This file was deleted.

42 changes: 42 additions & 0 deletions docs/Bugfixes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Bugfixes

This page lists all vanilla bugs fixed by Vinifera.

- Fix HouseType `Nod` having the `Prefix=B` and `Side=GDI` in vanilla `rules.ini` by setting them to `N` and `Nod`, respectively.
- Fix a bug where VQA files could not be loaded from the root directory or local search paths.
- Fix a bug where the player could issue a harvester to begin harvesting Tiberium that is below a bridge while the mouse is over the bridge itself.
- Fix a bug where the values of `RandomRate` were not stored correctly. In addition to this, negative values will also be converted to absolute numbers.
- Fix a bug where the `FSMENU` theme would incorrectly play instead of the `INTRO` theme when in Tiberian Sun mode after returning to the main menu.
- Fix a bug where the game would crash when a trigger with the action "Wakeup group..." is executed and the requested Group was not found.
- Fix a bug where animations with a `DetailLevel` value greater than 2 would not show in-game.
- Fix a bug where `EngineerDamage` was incorrectly loaded with `EngineerCaptureLevel`.
- Fix a bug where `EngineerDamage` was not used to calculate the engineer damage.
- Fix a bug where `EngineerCaptureLevel` was not considered when checking the target building.
- Fix a bug where air transports are unable to land when given a move order.
- Fix the position of the health bar graphic on unit selection boxes.
- Fix a bug where the agme would crash when attempting to generate a random map if the `Neutral` or `Special` HouseTypes are not found.
- Fix a bug where the agme would crash when attempting to generate a random map if there are fewer than 4 HouseTypes defined.
- Fix a limitation where the game could only choose between the first two HouseTypes for the AI players. Now, all HouseTypes with `Multiplay=yes` will be considered.
- Fix a bug where the `Cloakable=yes` had no effect on AircraftTypes.
- Fix a bug where `CloakStop` had no effect on the cloaking behaviour.
- Fix a bug where pre-placed crates and crates spawned by a destroyed truck will trigger a respawn when they are picked up.
- Increase the string buffer size from 128 to 2048 characters for when reading and writing Owners from INI.
- Fix bugs where the Jumpjet uses the wrong animation sequence when firing and in the air.
- Fix a bug where the wrong palette is used to draw the cameo above an enemy spied factory building.
- Fix the animation speed of Waypoint and Rally Point lines so they are normalised and no longer subjected to the game speed setting.
- Fix a limitation where returning to the Skirmish dialog after a game clamps the chosen side between 0 (GDI) and 1 (Nod).
- Fix a bug where the user is able to place a building anywhere on the map by taking advantage of the sidebar.
- Fix division by zero crashes when ShakeScreen is set to 0.
- Increase the IsoMapPack5 buffer size when decoding a map.
- Fix a bug where looping animations incorrectly use the unsynchronized RNG, which would cause the game to randomly crash during online games.
- Fix a bug where `IsTrainable` is not checked when an object picks up a veteracy crate.
- Fix a bug where `IsInsignificant` was not checked when a unit dies.
- Fix the incorrect (RA legacy) cell calculation for the "move to cell" team script.
- Fix a bug where the sidebar mouse wheel scrolling "error" sound can be heard at the main menu.
- Fix a bug with TriggerTypes not setting difficulty flags correctly when reading from INI.
- Fix a bug with triggers enabled via other triggers ignoring difficulty settings.
- Fix MultiMission `MaxPlayers` incorrectly loaded with `MinPlayers`.
- Fix to maintain aspect ratio when scaling movies/videos.
- Fix incorrect spelling of "Loser" on the multiplayer score screen debug output.
- Fix incorrect stretching of the main menu transition movies.
- Fix mouse cursor not being displayed in the Dropship Loadout menu.
8 changes: 4 additions & 4 deletions docs/Contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@ This page describes ways to help or contribute to Vinifera and lists the contrib

## Guidelines for contributors

### Project structure
% ### Project structure

TODO
% TODO

### Code styleguide
% ### Code styleguide

TODO
% TODO

### Git branching model

Expand Down
37 changes: 0 additions & 37 deletions docs/Fixed-or-Improved-Logics.md

This file was deleted.

4 changes: 0 additions & 4 deletions docs/General-Info.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ There are going to be three main types of Vinifera builds:

So far the development is at the stage when only nightly builds are produced.

## Saved games filtering

TODO

## Compatibility

Vinifera is designed to be used alongside [CnCNet TS patches and spawner](https://github.com/CnCNet/ts-patches) and eventually it's supposed to supersede them.
49 changes: 49 additions & 0 deletions docs/Mapping.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Mapping

This page describes all mapping-related additions and changes introduced by Vinifera.

## Bugfixes and Miscellaneous

- The game now supports reading and using up to 32767 waypoints in scenarios.
- Tutorial messages are now loaded from scenarios. This can be used to replace/update an existing entry from `TUTORIAL.INI`, or to add a new tutorial message index which can be used by trigger actions.
- Remove a hardcoded limitation where the remap color of `Neutral` and `Special` could not be overridden in multiplayer games. Due to the inconsistencies between the official maps, values of `Grey` and `LightGrey` will be forced to `LightGrey`.
- `[Basic]->SkipScore` is now considered when showing the multiplayer score screen. Setting to `SkipScore=yes` in the map file will now be all that is required for skip the score screen.

## Campaign Settings

### Intro Movie

- `IntroMovie` can now be set for campaigns, allowing the customisation of the intro movie that plays before the campaign path starts.

In `BATTLE.INI`:
```ini
[Campaign]
IntroMovie=<string> ; The intro movie name (without the .VQA extension) to play at the start of the campaign? Defaults to <none>.
```

### DebugOnly

- `DebugOnly` can now be set for campaigns, which adds the prefix of "[Debug]" to the campaign description. In addition to this, it also makes the campaign only available Developer mode.

In `BATTLE.INI`:
```ini
[Campaign]
DebugOnly=<boolean> ; Is this campaign only available in Developer mode? Defaults to no.
```
For testing/debugging versions of the Tiberian Sun and Firestorm campaigns, download [BATTLE_DEBUG_CAMPAIGN.INI](https://github.com/Vinifera-Developers/Vinifera-Files/blob/master/files/BATTLE_DEBUG_CAMPAIGN.INI) and place it in your game install directory.

## Scenario Settings

### Ice Destruction

- Ice destruction can now be disabled.

In a scenario file:
```ini
[Basic]
IceDestructionEnabled=<boolean> ; Can ice tiles be destroyed in the scenario? Defaults to yes.
```

## Script Actions

## Trigger Actions
Loading
Loading