网页功能


Evennia自身就是一个网页服务器,带有默认的网站和网页客户端。

Evennia的网站是一个与MUD数据库绑定的Django应用程序,它可以让你告诉访问者当前有多少玩家登录在游戏中、服务器已经运行了多少时间、以及其他你可能需要的数据库信息。动态网站应用程序在 src/web/webclient 中,而html文件在 src/web/templates/prosimii 中。静态媒体文件,如图片、css和javascript文件在 src/web/static 中。

在开发过程中,你可以通过 http://localhost:8000 访问网站。

关于如何自定义网站的详细信息在教程中都有,请参见网页教程获取更多信息。


网页客户端

Evennia配备了一个可以通过普通网页浏览器访问的MUD客户端。在默认情况下,Evennia的网页客户端使用WebSockets,但它也可以改为使用javascript长轮询异步网页服务器的客户端(也被称为COMET)。网页客户端对应的服务端组件在 src/server/portal/websocket_client.py 和 webclient.py 中定义,分别对应 websocket 和 comet 的客户端。服务端通常不需要修改。客户端的 javascript、html和css 文件在 src/web/webclient/ 的相应文件夹下。

网页客户端使用javascript的jQuery库。服务器在启动时会自动通过互联网导入它。如果你想让客户端在不连接互联网的情况下运行,就需要先从jQuery的主页下载库文件,把它放到你的 media 目录中,然后编辑 src/web/webclient/templates/webclient.html 取消这一行的注释:
<script src="/media/javascript/jquery-1.4.4.js" type="text/javascript" charset="utf-8"></script>
按照你下载的jQuery版本中 *.js 文件的文件名修改它。

网页客户端需要网页服务器的运行,在默认情况下,你可以让浏览器指向 http://localhost:8000/webclient 来访问它。

请参阅网页教程以获得更多关于自定义网页客户端的信息。


扩展阅读

Evennia的网页功能依赖于Django。如果你想提升网站体验,可以重点看看Django文档Django手册。用Django的话说,Evennia是一个由Django“应用程序”组成的Django“工程”。在默认Evennia中,与实现网络功能相关的Django“应用程序”是 web/webclient 文件夹(即包含 model.py 的文件夹)。


(原文:https://github.com/Evennia/evennia/wiki/Web features    翻译:卢铱俊)