锁步模拟易如反掌
编程语言
2017-06-30 v1
摘要
通过广播玩家输入并让每个客户端计算游戏状态——一种称为锁步模拟的方案——来实现多人网络游戏是一项成熟的技术。然而,确保该方案中的每个客户端获得一致状态是出了名的困难,且通常需要游戏程序员高度严谨。本报告的论点是,在函数式编程领域——特别是借助Haskell的纯度和静态指针——这一难题变得几乎微不足道地容易。我们通过在非常不利的条件下实现锁步模拟来支持这一论点。我们扩展了教育编程环境CodeWorld(用于向中学生教授数学和编程),使其具备创建和运行交互式、网络多用户游戏的能力。尽管提供了非常抽象和高级的接口,且无需
引用
@article{arxiv.1705.09704,
title = {Lock-step simulation is child's play},
author = {Joachim Breitner and Chris Smith},
journal= {arXiv preprint arXiv:1705.09704},
year = {2017}
}
备注
Conditionally accepted as an experience report at ICFP'17