2个版本

0.3.0-development-22021年1月3日
0.3.0-development-12020年9月28日

#2330 in 编码


3 个crate中使用(通过 df_st_parser

AGPL-3.0-or-later

230KB
5.5K SLoC

DF Storyteller

Download Discord API Docs Rust Docs PayPal Patreon

Pipeline status Coverage report CII Best Practices dependency status unsafe forbidden

Gitpod ready-to-code

给我们 Dwarf Fortress Storyteller 你的传说,我们将讲述故事。你可以坐下来享受。

Explain how it works

DF Storyteller是一个应用程序,可以导入Dwarf Fortress传说文件,将它们存储在内部,并使用API进行查询。DF Storyteller目前支持以下文件的解析

  • ...-legends.xml
  • ...-legends_plus.xml
  • ...-world_history.txt(计划中)
  • ...-world_site_and_pops.txt(计划中)

DF Storyteller目前支持使用以下方式查询数据

  • RESTfull API(目前为只读)
  • GraphQL(正在进行中)

为什么使用DF Storyteller

过去,传说查看器必须实现自己的传说解析器来从文件中获取数据。保持它们更新会占用制作美好界面的宝贵时间。DF Storyteller改变了这一点。我们负责所有复杂的事情。你只需请求你需要的确切数据,我们就会给你。你只需要以独特的方式可视化数据。

DF Storyteller还合并了所有导入的文件,因此你可以获取所有数据。然后你可以选择你感兴趣的数据。

文档很重要,所以我们尽力让所有描述尽可能清晰。对于我们的API,我们内置了自动生成的文档,因此所有文档都是最新的。

想要成为画家并创建一些美丽的视觉效果,请看这里

功能

DF Storyteller功能丰富,更多功能正在计划中,以下是一些功能

  • 低内存使用:应用程序(+ PostgreSQL)< 100 MB RAM
    • 文件导入仍然需要优化,将根据传说文件的大小使用更多的内存。但只需进行一次。
  • 小型二进制文件:< 100 MB(包含大多数/所有依赖项)
  • RESTfull和GraphQL:查询数据的接口。
  • 在地图上查看你的世界!计划中的功能,目前不可用。
  • 优秀的文档:API 文档(https://docs.dfstoryteller.com/rapidoc/),开发者文档(https://docs.dfstoryteller.com/rust-docs/),内置文档以及其他支持文档
  • 最佳努力解析:应适用于Dwarf Fortress和DF Hack的所有版本
  • 非常稳定和安全!:我们喜欢Rust,DF ST会始终告诉您出了什么问题,并具有内置的bug报告创建功能。
  • 隐私:我们不会以任何方式跟踪您!有关隐私的更多信息,请查看此处

它是如何工作的?

DF Storyteller从Dwarf Fortress和DFHack中提取传奇文件并将它们导入数据库。然后它提供了一个API来查看数据。

Diagram of import and start commands

安装您自己的故事讲述者!

DF Storyteller被编写为供其他应用程序使用,因此它可能包含您想要使用的可视化器中。查看可视化器列表(画家)。要开始,从发布页面下载可执行文件。

在此处您可以找到如何为您的系统安装它的说明。 您可以在此处找到带有说明的视频。

指挥您的故事讲述者

DF Storyteller被设计为命令行工具。这使得我们可以根据用户的需求提供不同的功能。命令也可以由其他应用程序用于以不同的方式打开应用程序。

开始

要使用命令行开始,您可以在命令行中使用如下所示的help标志

# Get the general help from the app
./df_storyteller --help
# For windows this changes to:
./df_storyteller.exe --help

您可能想要使用的第一个子命令是guideimportstart。例如

./df_storyteller guide
./df_storyteller import -w 1 ./region4-00125-01-01-legends.xml
./df_storyteller start -w 1

然后您可以通过打开https://127.0.0.1:20350来查找更多信息。start命令将在终端中打印出确切的URL,如下所示

INFO :launch - 🚀 Rocket has launched from http://127.0.0.1:20350

有关更多命令和更多信息,请参阅此页面

文档

每个DF Storyteller实例都自带内置文档。但我们还提供了最新构建的文档在此处

成为画家

您想自己可视化传奇数据吗!您就在正确的位置。我们将让您立即开始。只需查看此处

需要帮助?

加入我们Discordbay12forums

系统要求与支持

DF Storyteller的系统要求非常有限,这高度取决于您想要导入的文件。

最小要求 推荐要求
OS Windows 64位,Linux 64位,MaxOS ... Windows 64位,Linux 64位,MaxOS ...
RAM[^1] 512MB(不计PostgreSQL) 1-2GB(不计PostgreSQL)
CPU 适用于任何不错的系统,
导入可能需要更长的时间
参见最小要求
显卡 不需要也不使用。 不需要也不使用。
互联网连接 不需要(仅用于检查更新)。
尽管它使用浏览器(几乎)所有资产都是本地的。
参见最小要求

这高度依赖于您想通过import子命令导入的文件。[start]子命令使用的内存非常少,因此应该可以在所有现代系统上运行。

有关我们支持的Dwarf Fortress、DFHack和模组的版本信息,请查看此处

想贡献力量吗?

我们的行为准则

其他信息

许可

本项目采用AGPL-3.0-or-later许可协议

所有文档[2]也采用GNU FDLMIT许可协议和/或Creative Commons Attribution-ShareAlike 3.0 Unported许可协议进行许可。

这使得文档既与Dwarf Fortress Wiki兼容,也与Wikipedia兼容。

对本项目的所有贡献都将采用类似的许可。

[2]这包括所有Rust Doc、API文档以及此代码库中的其他信息。

依赖项

~23–37MB
~416K SLoC