# 链上协作世界构建:Sentences项目探索链上游戏设计领域具有多种特性和限制,其中一个显著特点是对集体决策的高度重视。通过原型系统探索这一特性,我们提出了Sentences项目:一种基于链上的协作世界构建工具,其结构围绕着仅可附加的分支叙事原始结构展开。该项目利用MUD框架构建,为集体叙事生成提供了一个轻量级环境。每个新的Sentences游戏都会生成一个全新的世界,玩家随后通过逐步添加传说来丰富这个世界。## 项目动机在自治世界空间中,新项目诞生时常见的一项任务是集体"世界构建",即构建一个共同的传说体系,决定玩家对世界的体验。这种活动通常是非正式和非结构化的,但也可以通过有序的提示和练习来支持,帮助世界构建者塑造他们世界的结构和连贯性。这些练习本身就构成了一个世界。它们在叙述者之间建立了一个信息系统,这是一套让叙述得以蓬勃发展的规则。这套规则就是世界的本质,它为新想法的诞生创造了一个悬而未决的现实空间。练习的选择也必然会影响所创造的叙述:一组问题将假设一个潜在答案的空间;一个方向的提示可能会阻碍另一个方向的探索。因此,Sentences是一个"世界构建的世界";一个用于协作知识生成的原始沙盒。它必然是稀疏和受限的,旨在作为测试新想法的实验室。在Sentences的世界中,除了扩展叙事之外,没有其他交互或贡献方式。世界是线性构建的,但可以从初始种子向多个方向分支。## 机制当玩家加载Sentences客户端时,如果没有正在进行的世界,系统会提供生成新世界的选项。生成后,玩家会收到一个提示,用于开发故事的核心机制,示例可能如下:"这个社会最重要的是自然""这个文明完全依赖于水平""这个团体是靠金钱建立起来的"一旦世界生成,作者有固定的时间(设置为20个区块,以规律的tick方式进行)来为故事提出新的补充内容。时间结束后,进入第二阶段,参与者将投票选出他们最喜欢的提案。投票数统计完毕后,最受欢迎的提案将被加入到故事中,然后重新开始该过程。如果在时间窗口内没有提出任何提案,世界就会消亡。这种消亡并非永久性的:世界只是将其他已消亡的世界加入档案中。由于所有提案和投票都记录在链上,因此所有世界都包含可能方向的完整历史记录,作为"消亡"分支,代表一组可能的平行宇宙。## 合约结构叙述的状态由两个相互关联的系统管理:一个负责管理新叙述的生成,另一个处理时间、投票和叙述新内容的提议。新故事的初始化由从编码的硬编码提示列表中随机选择的句子组成。这些提示是使用简单的替换语法脚本生成的。未来版本中,此脚本可能会在合约中复制,以提供更多样化的起点。一旦故事初始化完成,初始提示被添加到链中,新的提案期就会开始。这个周期持续n个区块(每个区块约一秒),由变量periodEndsBlock定义,该变量在每个新提案期开始时设置在活动故事上。在提案期间,参与者可以建议新的叙述条目,并对他们选择的扩展进行投票。提案和投票均由专门的系统处理,它根据periodEndsBlock变量验证这些贡献的时间。每个提案都指向一个"父级"(它所响应的提案),成功的提案会形成一个链接列表。在提案期结束时,系统会计算每个提案的投票数。如果出现平局,则随机选择其中一个提案。如果没有提出任何提案,则故事结束,被归档,玩家下一步可以选择生成新的故事。## 应用场景Sentences项目最适合在10-50名参与者的环境中使用,这些参与者可能彼此认识,也可能不认识,但都本着原型传说的精神聚集在一起。例如,可以在在线社交平台上举办活动,目标是在一小时内生成五个新世界。Sentences本身并不是一个特别引人入胜的游戏,它更像是一种工具。然而,作为一个模块化组件,Sentences的叙事生成机制可以很好地融入到更丰富的角色扮演游戏中,在游戏过程中编织游戏的结构。其投票机制还可用于支持在玩家生成的提示中包含生成输出。当前版本的一个局限性是初始提示的特殊性。虽然这可以针对不同的部署进行调整,但进一步扩展游戏的提示生成机制,使其更符合叙事部分的开放性将会是一个有趣的发展方向。## 参考与灵感Sentences的形式灵感来自基于文本的游戏、即兴创作、传说和桌面角色扮演游戏。在制作过程中,我们参考了一些特定项目,包括Max Kreminski的Epitaph(一款奇幻叙事生成游戏)和Kate Compton的Tracery替代语法工具。这些项目利用简单的随机性和模块化来创建复杂的分支叙事,我们对这些原语在集体场景中使用的潜力特别感兴趣。虽然Sentences在构建世界时考虑到了这一点,并且在这方面有些主观性(即:仅附加叙述),但它也可以用于其他受限的协作写作场景。## 未来发展方向Sentences项目的一个明显扩展方向是,允许初始化世界的人设置关于如何将新句子附加到叙事中的具体规则。例如,这些规则可以修改投票系统,要求一定数量的玩家才能继续叙事,或者调整投票时间以改变叙事发展的速度。这样,Sentences不仅成为世界的原型设计工具,还可以成为产生特定故事风格的约束和对话结构的原型设计工具。另一个有趣的发展方向是添加从当前世界的"死"分支中生成平行世界的选项。实现这一功能的最佳方式可能是生成一个带有指向旧分支指针的新"新世界"合约,而不是从头开始生成一个新世界。通过这些潜在的扩展和改进,Sentences项目有望成为一个更加灵活和强大的链上协作世界构建工具,为创作者和玩家提供更丰富的互动体验。
Sentences项目:链上协作世界构建的新范式
链上协作世界构建:Sentences项目探索
链上游戏设计领域具有多种特性和限制,其中一个显著特点是对集体决策的高度重视。通过原型系统探索这一特性,我们提出了Sentences项目:一种基于链上的协作世界构建工具,其结构围绕着仅可附加的分支叙事原始结构展开。该项目利用MUD框架构建,为集体叙事生成提供了一个轻量级环境。每个新的Sentences游戏都会生成一个全新的世界,玩家随后通过逐步添加传说来丰富这个世界。
项目动机
在自治世界空间中,新项目诞生时常见的一项任务是集体"世界构建",即构建一个共同的传说体系,决定玩家对世界的体验。这种活动通常是非正式和非结构化的,但也可以通过有序的提示和练习来支持,帮助世界构建者塑造他们世界的结构和连贯性。
这些练习本身就构成了一个世界。它们在叙述者之间建立了一个信息系统,这是一套让叙述得以蓬勃发展的规则。这套规则就是世界的本质,它为新想法的诞生创造了一个悬而未决的现实空间。练习的选择也必然会影响所创造的叙述:一组问题将假设一个潜在答案的空间;一个方向的提示可能会阻碍另一个方向的探索。
因此,Sentences是一个"世界构建的世界";一个用于协作知识生成的原始沙盒。它必然是稀疏和受限的,旨在作为测试新想法的实验室。在Sentences的世界中,除了扩展叙事之外,没有其他交互或贡献方式。世界是线性构建的,但可以从初始种子向多个方向分支。
机制
当玩家加载Sentences客户端时,如果没有正在进行的世界,系统会提供生成新世界的选项。生成后,玩家会收到一个提示,用于开发故事的核心机制,示例可能如下:
"这个社会最重要的是自然" "这个文明完全依赖于水平" "这个团体是靠金钱建立起来的"
一旦世界生成,作者有固定的时间(设置为20个区块,以规律的tick方式进行)来为故事提出新的补充内容。时间结束后,进入第二阶段,参与者将投票选出他们最喜欢的提案。投票数统计完毕后,最受欢迎的提案将被加入到故事中,然后重新开始该过程。
如果在时间窗口内没有提出任何提案,世界就会消亡。这种消亡并非永久性的:世界只是将其他已消亡的世界加入档案中。由于所有提案和投票都记录在链上,因此所有世界都包含可能方向的完整历史记录,作为"消亡"分支,代表一组可能的平行宇宙。
合约结构
叙述的状态由两个相互关联的系统管理:一个负责管理新叙述的生成,另一个处理时间、投票和叙述新内容的提议。
新故事的初始化由从编码的硬编码提示列表中随机选择的句子组成。这些提示是使用简单的替换语法脚本生成的。未来版本中,此脚本可能会在合约中复制,以提供更多样化的起点。
一旦故事初始化完成,初始提示被添加到链中,新的提案期就会开始。这个周期持续n个区块(每个区块约一秒),由变量periodEndsBlock定义,该变量在每个新提案期开始时设置在活动故事上。
在提案期间,参与者可以建议新的叙述条目,并对他们选择的扩展进行投票。提案和投票均由专门的系统处理,它根据periodEndsBlock变量验证这些贡献的时间。每个提案都指向一个"父级"(它所响应的提案),成功的提案会形成一个链接列表。
在提案期结束时,系统会计算每个提案的投票数。如果出现平局,则随机选择其中一个提案。如果没有提出任何提案,则故事结束,被归档,玩家下一步可以选择生成新的故事。
应用场景
Sentences项目最适合在10-50名参与者的环境中使用,这些参与者可能彼此认识,也可能不认识,但都本着原型传说的精神聚集在一起。例如,可以在在线社交平台上举办活动,目标是在一小时内生成五个新世界。
Sentences本身并不是一个特别引人入胜的游戏,它更像是一种工具。然而,作为一个模块化组件,Sentences的叙事生成机制可以很好地融入到更丰富的角色扮演游戏中,在游戏过程中编织游戏的结构。其投票机制还可用于支持在玩家生成的提示中包含生成输出。
当前版本的一个局限性是初始提示的特殊性。虽然这可以针对不同的部署进行调整,但进一步扩展游戏的提示生成机制,使其更符合叙事部分的开放性将会是一个有趣的发展方向。
参考与灵感
Sentences的形式灵感来自基于文本的游戏、即兴创作、传说和桌面角色扮演游戏。在制作过程中,我们参考了一些特定项目,包括Max Kreminski的Epitaph(一款奇幻叙事生成游戏)和Kate Compton的Tracery替代语法工具。这些项目利用简单的随机性和模块化来创建复杂的分支叙事,我们对这些原语在集体场景中使用的潜力特别感兴趣。
虽然Sentences在构建世界时考虑到了这一点,并且在这方面有些主观性(即:仅附加叙述),但它也可以用于其他受限的协作写作场景。
未来发展方向
Sentences项目的一个明显扩展方向是,允许初始化世界的人设置关于如何将新句子附加到叙事中的具体规则。例如,这些规则可以修改投票系统,要求一定数量的玩家才能继续叙事,或者调整投票时间以改变叙事发展的速度。这样,Sentences不仅成为世界的原型设计工具,还可以成为产生特定故事风格的约束和对话结构的原型设计工具。
另一个有趣的发展方向是添加从当前世界的"死"分支中生成平行世界的选项。实现这一功能的最佳方式可能是生成一个带有指向旧分支指针的新"新世界"合约,而不是从头开始生成一个新世界。
通过这些潜在的扩展和改进,Sentences项目有望成为一个更加灵活和强大的链上协作世界构建工具,为创作者和玩家提供更丰富的互动体验。