劫掠轩辕剑 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
劫掠轩辕剑 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
劫掠轩辕剑 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
劫掠轩辕剑 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
劫掠轩辕剑 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 Mulan
开发语言 C/C++
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发游戏开发包
开源组织
地区 国产
投 递 者 situdesign
适用人群 未知
收录时间 2020-03-13

软件简介

《劫掠轩辕剑》是一部经典的RPG游戏作品,第一次发布于2002年11月7日。由于年代久远,加上当时的网络安全环境比较差,导致最初的发布版已经被破坏,网上找不到能正常运行的版本了。本发布版不仅完善了游戏引擎,也改进并完善了游戏开发工具链,并公开全部的源码(源码使用VS2012编译)。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (32)

加载中
situdesign软件作者
新增了《劫掠轩辕剑二代大炮版》,这是《劫掠V2引擎》一个重要的改进,使用了DirectDraw和DirectSound(本来我是纯GDI派技术流的,但是有些问题用GDI没法解决,所以也有限的融合了DirectX技术,基本代码框架没变),增加了新武器无后坐力炮。 大炮版作为《劫掠V2引擎》的一个总结。这个游戏引擎基本上就保持现在的规模,更高级的功能要期待V3版了。
2020/03/31 17:12
回复
举报
我去,这游戏比我年纪都大快了。。
2020/03/31 15:10
回复
举报
这么怀旧的吗?
2020/03/23 13:27
回复
举报
66RPG
2020/03/21 22:25
回复
举报
2020/03/20 22:44
回复
举报
网游么
2020/03/20 18:22
回复
举报
situdesign软件作者
不,这是古老的单机版游戏
2020/03/21 22:21
回复
举报
mark,有空研究一下。
2020/03/20 15:27
回复
举报
2020/03/20 13:08
回复
举报
代码中的魔数不少啊!
2020/03/20 12:43
回复
举报
situdesign软件作者
没办法,作者当时的技术水平太差,还不知道宏定义的重要性。V2引擎要就好多了。
2020/03/20 13:26
回复
举报
不建议用宏,而是用枚举或者constexpr ,用枚举类,而不是以前的枚举!
2020/03/20 19:26
回复
举报
situdesign软件作者
V2引擎的代码我也传上去了。
2020/03/20 18:15
回复
举报
建议使用qt开发,跨平台,谢谢!有没有想一起做的朋友?使用qt 5.12
2020/03/20 12:24
回复
举报
situdesign软件作者
播放Midi和Wave的问题怎么解决?跨平台的话MiniGUI也不错。
2020/03/20 13:28
回复
举报
这个和qt无关啊,使用QSound 播放wave文件。官方例子: QSound::play("mysounds/bells.wav");
2020/03/20 16:48
回复
举报
2020/07/02 17:43
回复
举报
难道不是应该推荐sfml?
2020/03/20 15:08
回复
举报
situdesign软件作者
跟OS相关的函数大约只有几个:读取键盘和鼠标状态的函数、图形设备类CDC、读取bmp文件的函数。其实我还有一个开源工程叫MonoGUI,处理字库和bmp操作的模块都已经用纯C++实现了。只是需要更多的时间来整合资源。时间才是大问题啊。
2020/03/20 18:14
回复
举报
更多评论
暂无内容
发表了博客
2018/10/28 16:26

Sword redis配置

Redis 配置 Redis 的配置文件位于 Redis 安装目录下,文件名为 redis.conf。 --查看配置 你可以通过 CONFIG 命令查看或设置配置项(使用CONFIG必须在redis客户端命令行中使用)。 获取redis配置项语法: redis client> CONFIG GET CONFIG_SETTING_NAME 示例: redis client> CONFIG GET loglevel 1) "loglevel" 2) "notice" 说明:使用 * 号获取所有配置项: --编辑配置 你可以通过修改 redis.conf 文件或使用 CONFIG...

0
0
发表了博客
2019/10/13 13:12

Sword C语言原子操作

/* gcc内置原子操作 */ #include <stdio.h> /* 知识补充: gcc 4.1.2版本之后,对X86或X86_64支持内置原子操作。即不需要引入第三方库(如pthread)的锁保护 ,即可对1、2、4、8字节的数值或指针类型,进行原子加/减/与/或/异或等操作 原子操作的本质目的是:再多线程场景下,不加锁的前提下,安全的实现对数值类型进行 加/减/与/或/异 操作 API type __sync_fetch_and_add (type *ptr, ...

0
0
发表了博客
2018/10/28 16:31

Sword redis补充

Redis 键(key) Redis 键命令用于管理 redis 的键。 redis任何数据类型都有key --删除key的命令 redis> del key Redis 事务 Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证: 1.批量操作在发送 EXEC 命令前被放入队列缓存。 2.收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。 3.在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。 单个 Redi...

0
0
发表了博客
2020/05/13 09:27

Sword 校验和计算

// IP首部校验和的计算 #include <stdio.h> #include <stdlib.h> #include <string.h> unsigned short checksum(const void *, unsigned int); #define CHECK_SIZE 24 /* 知识补充: 为了计算一份数据报的IP检验和,首先把检验和字段置为0。然后,对首部中每个16 bit进行二进制反码求和(整个首部看成是由一串16 bit的字组成), 结果存在检验和字段中。当收到一份IP数据报后,同样对首部中每个16 bit进行二进制反码...

0
0
发表了博客
2018/10/28 16:29

Sword redis数据结构

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 String(字符串) string 是 redis 最基本的类型,一个 key 对应一个 value。 string 类型是二进制安全的。意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象。 string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。 命令行语法( redis > SET key value ...

0
0
发表了博客
2020/04/18 08:36

Sword 交叉编译知识

交叉编译openssl 概述:因工作需求,需要移植openssl开源库到arm机器上 上位机环境:ubuntu14.04 64位 核心板: mips linux 32位 1,下载源码 官网地址(https://www.openssl.org/source/old/) 2.执行config $ setarch i386 ./config no-asm shared --prefix=/opt/soft/openssl 强调:64位系统交叉编译openssl支持在32位目标板上运行需要设置下:setarch i386 3.修改Makefile文件 搜索-m64选项并删除,共两处。 3.生成库文...

0
0
发表了博客
2020/04/18 08:36

Sword 位域知识点

有些数据在存储时并不需要占用一个完整的字节,只需要占用一个或几个二进制位即可。 例如开关只有通电和断电两种状态,用 0 和 1 表示足以,也就是用一个二进位。 正是基于这种考虑,C语言又提供了一种叫做位域的数据结构。 在结构体定义时,我们可以指定某个成员变量所占用的二进制位数(Bit),这就是位域。请看下面的例子: struct bs{ unsigned m; unsigned n: 4; unsigned char ch: 6; }; :后面的数字用来限定...

0
0
发表了博客
2018/10/28 16:43

Sword redis C语言接口介绍

hiredis安装 hiredis是redis官方推荐的基于C接口的客户端组件,它提供接口,供c语言调用以操作数据库。 在redis的源码包的deps/hiredis下就有它的源码 安装方法,进入deps/hiredis目录,执行命令: make make install 主要函数接口 函数原型:redisContext *redisConnect(const char *ip, int port); 说明:该函数用来连接redis数据库,参数为数据库的ip地址和端口,通常默认端口为6379。该函数返回一个redisContex...

0
0
发表了博客
2018/12/13 20:44

Sword redis存取二进制数据

#include "hiredis/hiredis.h" /* redis头文件 */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdint.h> #include <string> //初始化 int init(const char *ip,uint16_t port) { redisContext *_context; //创建redis链接 _context = redisConnect(ip, port); if (NULL == _context) { return -1; } return 0; } //二进制数据s...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
32 评论
49 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部