Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Command and Conquer: Generals - Zero Hour

License

NotificationsYou must be signed in to change notification settings

TheSuperHackers/GeneralsGameCode

 
 

Repository files navigation

GitHub ReleaseGitHub milestone detailsGitHub milestone detailsGitHub milestone detailsGitHub milestone detailsGitHub milestone details

GitHub issues by-labelGitHub issues by-labelGitHub issues by-labelGitHub issues by-labelGitHub issues by-label

Welcome to the Generals Game Code Project

GeneralsGameCode is a community-driven project aimed at fixing and improving the classic RTS game,Command &Conquer: Generals and its expansionZero Hour. This repository contains the source code for both games, with aprimary focus onZero Hour.

Additionally, there is a complementary project repository for fixing and improving game data and assets such asINI scripts, GUI, AI, maps, models, textures, audio, localization. You can find ithere and contribute to it as well.

Project Overview

The game was originally developed using Visual Studio 6 and C++98. We've updated the code to be compatible with VisualStudio 2022 and C++20.

The initial goal of this project is to fix critical bugs and implement improvements while maintaining compatibility withthe originalGenerals version 1.08 andZero Hour version 1.04. Once we can break retail compatibility, more fixesand features will be possible to implement.

Current Focus and Future Plans

Here's an overview of our current focus and future plans

  • Modernizing the Codebase: Transitioning to modern C++ standards and refactoring old code.
  • Critical Bug Fixes: Fixing game-breaking issues (e.g., fullscreen crash).
  • Minor Bug Fixes: Addressing minor bugs (e.g., UI issues, graphical glitches).
  • Cross-Platform Support: Adding support for more platforms (e.g., Linux, macOS).
  • Engine Improvements: Enhancing the game engine to improve performance and stability.
  • Client-Side Features: Enhancing the game's client with features such as an improved replay viewer and UI updates.
  • Multiplayer Improvements: Implementing a new game server and an upgraded matchmaking lobby.
  • Tooling Improvements: Developing new or improving existing tools for modding and game development.
  • Community-Driven Improvements: Once the community grows, we plan to incorporate more features, updates, andchanges based on player feedback.

Running the Game

To runGenerals orZero Hour using this project, you need to have the originalCommand & Conquer: Generals and Zero Hour gameinstalled. The easiest way to get it is throughCommand & Conquer The Ultimate CollectiononSteam. Once the game is ready, download the latest version of theproject fromGitHub Releases, extract the necessaryfiles, and follow the instructions in theWiki.

Joining the Community

You can chat and discuss the development of the project on ourDiscord channel to get the latest updates,report bugs, and contribute to the project!

Building the Game Yourself

We provide support for building the project on Windows and Linux. For detailed build instructions, check theWiki, which includes guides for VS6, VS2022,Docker, CLion, and links to forks supporting additional versions.

Quick Start

Windows (Visual Studio 2022)

cmake --preset win32cmake --build build/win32 --config Release

Linux (via Docker)

./scripts/docker-build.sh# Build using Docker./scripts/docker-install.sh --detect# Install to your game

Dependency management

The repository uses a vcpkg manifest (vcpkg.json) paired with a lockfile (vcpkg-lock.json). When you add or upgradedependencies, runvcpkg install --x-manifest-root . --triplet <triplet> withVCPKG_FEATURE_FLAGS=versions so thelockfile picks up the new versions and include the updated lockfile in your change. GitHub Actions consumes these portsthroughVCPKG_BINARY_SOURCES=clear;files,<workspace>/vcpkg-bincache,readwrite (paired with anactions/cache entry forthat folder), so the first CI build warms the cache and subsequent builds pull prebuilt binaries instead ofre-compiling everything.

Contributing

We welcome contributions to the project! If you’re interested in contributing, you need to have knowledge of C++. Jointhe developer chat on Discord for more information on how to get started. Please make sure to read ourContributing Guidelines before submitting a pull request. You can also check outtheWiki for more detailed documentation.

License & Legal Disclaimer

EA has not endorsed and does not support this product. All trademarks are the property of their respective owners.

This project is licensed under theGPL-3.0 License, which allows you tofreely modify and distribute the source code under the terms of this license. Please seeLICENSE.mdfor details.


[8]ページ先頭

©2009-2026 Movatter.jp