1

我有一个游戏,它有不同的游戏类型,即计时赛、无限游戏等。

每种游戏类型都有不同的计时规则和潜在的碰撞规则。显然,在计时赛中,比赛在时间用完时结束。

我目前正在通过将游戏类型“硬编码”到程序中来添加游戏类型,因此每次我想添加新的游戏类型时,我都必须重新编译整个程序。

基本上为了更容易添加游戏类型,我不想重新编译所有内容。因此,潜在的新游戏类型可能是可下载的内容,并且只需将新类型放入游戏文件夹即可工作。

怎么做呢?我认为这是使用 libs 或 dll 或其他东西(我对此知之甚少,所以我可能完全不正确)。

我希望一切都有意义,我希望你们能帮助我,或者至少为我指明解释这种方法的书籍或文章的方向。

提前致谢。

4

1 回答 1

5

使用本机 DLL 进行游戏可扩展性 IMO 不是一个好主意,特别是如果代码不是从头开始设计的。

您最好使用一些脚本语言,如LUAPython,因此无需编写和编译 C++ 代码即可添加游戏模式。这些很容易实现(特别是如果您使用一些绑定/包装库),但需要您设计一个脚本 API,这可能是一项不平凡的任务(取决于您希望游戏可修改的程度)。这在游戏行业现在是相当标准的方法 - 现在大多数商业游戏都有某种脚本支持。

通常,趋势是将尽可能多的代码从核心 (C++) 移至脚本,因为这些脚本更易于开发、维护和修改。许多现代游戏在游戏逻辑(用脚本语言编写)和游戏引擎(用 C++ 或其他编译语言编写)之间有着非常清晰的区别。

于 2011-02-11T12:51:41.300 回答