不可思议,红警居然开源了!
红警,准确的说应该叫“红色警戒”,是大部分 80/90 后记忆里跟游戏二字关系最深的情节。
相信每一名 80/90 后,都有一段难忘的红警岁月,甚至可以说很多人的青春,就叫红警!
说到红色警戒游戏,估计应该是很多同学的童年回忆了吧。

或者

大概在 2000 年之后,星际和红警都在网吧必装游戏之列。
这款游戏也是当年西木头(WestWood)打造的爆款即时战略游戏之一,以至于一提到即时战略游戏,我脑海中第一个浮现的就是红警了。
一九九八年八月十七日,EA收购了Westwood。一般来只要是游戏工作室被EA收购后,就等于是走向了坟墓。
被收购之后,由于EA的管理不善,西木头最终走向了衰落,后面再也没有开发出红警2这样的爆款游戏了。

不过就在最近,有网友在 Github 上发现,EA 悄悄地搞了个大事件,把《命令与征服》系列中的 2 个游戏的部分源码开源了!
PS:《命令与征服》系列是西木工作室(Westwood Studios)的招牌作品。1998 年,EA 收购了西木。
这两个游戏分别是:Tiberian Dawn(泰伯利亚的黎明) 和 Red Alert(红色警戒)。

开源地址:
https://github.com/electronicarts/CnC_Remastered_Collection
这次开源的代码,其实是1996年发布的第一代红警,国内也称之为红警95。
此次开源,并不涉及游戏素材和游戏引擎,只包括 TiberianDawn.DLL 和 RedAlert.dll 的源码,允许 Mod 社区更好的改变游戏行为。
6 月 5 日,这两款游戏发布重制版。
命令与征服系列游戏是 C++ 实现,打开代码之后可以看到十分规范的代码,不由得令人叹服。

下面是飞行器找新降落点的函数,函数功能、输入、输出、代码修改历史都写的非常清楚。

至于为什么没有开源红警2呢?
一个很不幸的消息是红警2的源代码很可能已经丢失了。
最后在放两张图:


相关文章:
不可思议,红警居然开源了!
红警,准确的说应该叫“红色警戒”,是大部分 80/90 后记忆里跟游戏二字关系最深的情节。 相信每一名 80/90 后,都有一段难忘的红警岁月,甚至可以说很多人的青春,就叫红警! 说到红色警戒游戏,估计应该是很多…...
yolo系列模型训练数据集全流程制作方法(附数据增强代码)
yolo系列的模型在目标检测领域里面受众非常广,也十分流行,但是在使用yolo进行目标检测训练的时候,往往要将VOC格式的数据集转化为yolo专属的数据集,而yolo的训练数据集制作方法呢,最常见的也是有两种,下面我…...
4、FFmpeg命令行操作7
转封装(1) 保持编码格式: ffmpeg -i test.mp4 -vcodec copy -acodec copy test_copy.ts ffmpeg -i test.mp4 -codec copy test_copy2.ts 改变编码格式: ffmpeg -i test.mp4 -vcodec libx265 -acodec libmp3lame out_h265_mp3.mkv …...
算法进阶——链表中环的入口节点
题目 给一个长度为n链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。 数据范围:1<结点值<10000 要求:空间复杂度O(1),时间复杂度O(n) 例如,输入{1,2},{3,4,5…...
无线WiFi安全渗透与攻防(N.1)WPA渗透-pyrit:batch-table加速attack_db模块加速_“attack_db”模块加速
WPA渗透-pyrit:batch-table加速attack_db模块加速_“attack_db”模块加速 WPA渗透-pyrit:batch-table加速attack_db模块加速_“attack_db”模块加速1.渗透WIFI1.导入密码字典2.导入essid,破解完成记得删除3.批处理数据库,速度比较慢,耐心等待4.batch-table(批处理数据库)加…...
YOLOV8部署Android Studio安卓平台NCNN
下载Android Studio,配置安卓开发环境,这个过程比较漫长。 安装cmake,注意安装的是cmake3.10版本。 根据手机安卓版本选择相应的安卓版本,我的是红米K30Pro,安卓12。 使用腾讯开源的ncnn,这是一个为手机端极…...
【算法萌新闯力扣】:旋转字符串
力扣热题:796.旋转字符串 开篇 今天下午刷了6道力扣算法题,选了一道有多种解法的题目与大家分享。 题目链接:796.旋转字符串 题目描述 代码思路 完全按照题目的要求,利用StringBuffer中的方法对字符串进行旋转,寻找相同的一项 …...
可逆矩阵的性质
如果矩阵A可逆,那么它的逆矩阵也可逆,并且如果矩阵A可逆,假设是一个不为0的数,那么也可逆,并且如果矩阵A和都可逆,而且它们的阶数也相同,那么它们的乘积也是可逆的,并且如果矩阵A可逆…...
HIT 模式识别 手写汉字分类 Python实现
训练集数据 TrainSamples-400.csv,含 100 个不同汉字,每个汉字 400 个实例,每个实例均为 64*64 的二值图像; 训练集标注TrainSamples-400.csv,为 40000 个 0 到 99 间的整数,表示训练集中每个实例所属汉字类…...
GPT-4V-Act :一个多模态AI助手,能够像人类一样模拟通过鼠标和键盘进行网页浏览。
内容来源:xiaohuggg GPT-4V-Act :一个多模态AI助手,能够像人类一样模拟通过鼠标和键盘进行网页浏览。 它可以模拟人类浏览网页时的行为,如点击链接、填写表单、滚动页面等。 它通过视觉理解技术识别网页上的元素,就像…...
剪辑视频怎么把说话声音转成文字?
短视频已然成为了一种生活潮流,我们每天都在浏览各种短视频,或者用视频的形式记录生活,在制作视频的时候,字幕是一个很大的问题,给视频添加字幕可以更直观、更方便浏览。手动添加太费时间,下面就给大家分享…...
maven打包插件配置模板
主要有两类: 1、maven-shade-plugin 主要用于java程序编写的的打包 <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-shade-plugin</artifactId><version>3.2.4</ve…...
clusterProfiler包学习
📖 Introduction | Biomedical Knowledge Mining using GOSemSim and clusterProfiler (yulab-smu.top) 部分使用 #GO classificationlibrary(clusterProfiler) data(geneList, package"DOSE") gene <- names(geneList)[abs(geneList) > 2]# Entre…...
【Qt开发流程之】布局管理
介绍 一个界面呈现,如果要让用户有更好的观感,布局必不可少。 【Qt之布局】QVBoxLayout、QHBoxLayout、QGridLayout、QFormLayout介绍及使用 链接: https://blog.csdn.net/MrHHHHHH/article/details/133915208 qt布局类图: Qt布局是Qt图形…...
建筑可视化中的 3D 纹理
在线工具推荐: 三维数字孪生场景工具 - GLTF/GLB在线编辑器 - Three.js AI自动纹理化开发 - YOLO 虚幻合成数据生成器 - 3D模型在线转换 - 3D模型预览图生成服务 1、什么是 3D 纹理? 纹理是将二维图像添加到三维模型的技术艺术。虽然对物体进行纹…...
9.docker镜像Tag为none的原因
1.现象 使用docker images命令查看镜像列表,会发现存在许多标签为none的镜像: 2. 原因 docker镜像标签为none的原因如下: (1)构建或重新拉取同名同Tag的新镜像:构建或重新拉取同名同Tag的新镜像后&…...
HTML5学习系列之响应式图像
HTML5学习系列之响应式图像 前言响应式图像响应视图大小响应屏幕方向响应像素密度响应图像格式自适应像素比自适应视图宽 总结 前言 学习记录 响应式图像 响应视图大小 容器 srcset:图片地址,必需有。media:设置媒体查询。sizesÿ…...
基于数据库(MySQL)与缓存(Redis)实现分布式锁
分布式锁 分布式锁:分布式锁是在分布式的情况下实现互斥类型的一种锁 实现分布式锁需要满足的五个条件 可见性:多个进程都能看到结果互斥性:只允许一个持有锁的对象的进入临界资源可用性:无论何时都要保证锁服务的可用性&#x…...
2023年A特种设备相关管理(锅炉压力容器压力管道)证模拟考试题库及A特种设备相关管理(锅炉压力容器压力管道)理论考试试题
题库来源:安全生产模拟考试一点通公众号小程序 2023年A特种设备相关管理(锅炉压力容器压力管道)证模拟考试题库及A特种设备相关管理(锅炉压力容器压力管道)理论考试试题是由安全生产模拟考试一点通提供,A特…...
系统及其存储相关
1.区分系统(软件)和固件 1.1概念辨别 系统(软件software): 角色: 系统是计算机中的核心软件,提供基本的管理、控制和资源分配功能。它通常包括操作系统,负责管理硬件资源、提供用户…...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
