欢迎大家来到环行旅舍(克莱因舍)WIKI!本WIKI交流群:587477551
本WIKI正在建设中,欢迎大家一起参与WIKI的建设,可以参考编辑教程BWIKI编辑教程

「人类无知的时代已经过去,一场变革之风将在薰然的曙光里盘旋而上。是扬帆还是止舵,该由你决定了。」

——欢迎来到「克莱因舍」
全站通知:

新手入门指南

阅读

    

2024-04-10更新

    

最新编辑:可叹-红叶飘零

阅读:

  

更新日期:2024-04-10

  

最新编辑:可叹-红叶飘零

来自环行旅舍WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索
页面贡献者 :
可叹-红叶飘零

如果是第一次来,按"Ctrl+D"可以收藏随时查看更新~觉得WIKI好玩的话,请推荐给朋友哦~(◕ω<)☆
按右上角“WIKI功能→编辑”即可修改页面内容。

2 原理分析与实践 2.1 单页面代码原理 BWiki的语法是一种基于Wiki语法的轻量级标记语言,用于创建和编辑文档和网页。它的语法简单明了,易于学习和使用。 2.1.1 HTML与wiki 2.1.1.1 HTML语言简介 ① HTML:超文本标记语言,一种标识性语言。包括一系列标签,我们通过这些标签可以将网络上的文档格式统一,使分散的internet资源连接为一个逻辑整体。HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、表格、链接等等。 ② HTML语言特点: 1.HTML文件不需要编译,直接使用浏览器打开即可解析效果。因为在浏览器内部内置了解析引擎。 2.HTML文件的扩展名是.html或.htm。实际上,这两者只是写法上有差别,其他没有任何差别。 2.1.1.2 Mediawiki语言简介

以该代码为例分析,可以看出wiki的语法根源是html,但是简化掉了HTML中的较多格式内容。符合非专业程序员的语言习惯,便于更多人熟悉使用。 由对比可知,wiki代码的优点是: 1.内链外链方便,创建内链时只需要用方括号,并不需要网址。 2.高级功能简化,方便调用。

如图所示,在编辑页面有许多快捷工具和常用语法,便于新手快速入门 2.1.2 CSS与wiki 2.1.2.1 CSS简介 层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。 CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。


由上图可知,wiki和css在对单独页面的样式控制语法基本相同。Css一般是在程序主体前完成定义,而wiki语法中一般在程序主体后定义。两者所用的分别是<style></style>和,本质上基本没有区别。适合有相关基础的创作者快速上手。 2.2 解析函数——逻辑判断


此处提到的大部分解析函数(Parser Functions,由扩展插件(Extensions)通过Parser::setFunctionHook定义)的用途和用法。在这里面仅介绍简单的使用方法,便于理解前后调用逻辑


2.3 模板——多页面调用 Wiki模板的作用是为了提供一种标准化的结构和格式,以便在Wiki平台上创建和编辑内容。它们可以用于不同类型的页面,如文章、文档、项目页面等,以确保一致性。 Wiki模板定义了特定类型页面的标准化格式和结构。它们提供了预定义的部分,如标题、副标题、段落、列表、表格等,以确保页面的一致性和可读性。通过使用模板,用户可以更轻松地创建和编辑页面,而无需手动编写和调整格式。 模板通常包含示例内容和指导,以帮助用户了解如何填写和使用模板。这些示例可以帮助用户理解所需的信息和格式,并提供指导以确保页面的完整性和准确性。 使用模板可以提高页面的可维护性和可扩展性。如果需要对页面进行更改或添加新内容,只需对模板进行修改即可,而不必逐个编辑每个页面。 由于模板在wiki的基础建设中一般用于设计图鉴(友方单位、敌方单位、物品等)以下将以一具体模板——物资推荐 为例介绍。 一般的图鉴模板包含三部分内容:属性设置,样式与展示,内容行。

2.3.1 属性设置

这个第一部分为你在调用物资图鉴这一模板时将你输入的内容设定为页面属性。其中黑色字体代表属性名,橙色字体代表指针,橙色字体后的管道符(|)代表如果指针无指向内容则输出管道符后内容,该处为空。|sep+代表如果该属性输入的元素大于橙色指针数量,可以以这个格式额外添加。 2.3.2 样式与展示

该部分的目的是将第一步输入的属性进行调用,其中橙色指针和第一步中含义相同。通过这一过程,可以生成一个代填充通用显示栏目,只需要把对应内容填入就可以完成创建。 2.3.3 内容行 内容行是指在页面中用来展示具体内容的行,而这里所说的内容行一般指的是用于快速填充、便于新人创建页面的模块化代码。如下图:

负责内容填充的玩家或者wiki站成员只需要创建一个空白页面,把上述代码复制到源代码中,并填写其内容,就会方便快捷生成对应的页面。

如上图所示,将一个材料的基本信息填充后,即可生成下方页面:

这里来解读一下这一部分的原理。 首先,玩家创建了连城十八的图鉴页面,将内容行输入源代码,填写内容;内容行中等号前面紫色的名称就是在属性设置中的指针,等于就是这个指针指向的内容。通过这个指针组将输入的内容传递给#set,#Set则会将其设置为页面的属性。

完成页面属性设置后,下一步就是调用展示。 作为道具图鉴的总模板,理应兼顾这一类东西的特性和共性,总结共性凸显个性,方能使得图鉴逻辑严谨且完备。 在这里以获取途径为例,介绍如何在模板内考虑全道具的兼容。

注:由于在bwiki语法中空格与换行符
基本等价,上述代码理论上是存在出错风险的,正确做法是把所有换行和多余的空格删除,这里为了方便展示进行了换行。 首先,排列出所有掉落概率,定义两个变量,通过查询同名属性,分别将主线关卡和活动关卡中符合相应条件(在此处是以$$概率掉落[名称]物品,为了后续描述方便,取 以 低 概率掉落 什锦蔬饭 )的关卡编号加入这两个变量组。(例如这里是 3-4 加入了 主线低概率获取 这个变量集)

然后创建表格,先校验如果所有变量为空则不显示;如果存在就按格式输出并设定其属性。


逻辑上说起来比较简单,但是要在制作过程中考虑到方方面面,并且为后续更新留出足量的空余,就是非常考验技术的一件事了。 2.4 SMW——设置,展示与查询 Semantic MediaWiki(SMW)是一个免费、开源的MediaWiki扩展。它可以帮助wiki进行搜索、组织、标记、浏览、计算和共享数据。传统wiki只包含文本信息,计算机无法对其进行理解和计算。SMW为wiki添加了语义注释(Semantic Annotations)数据,从而使wiki具有数据库的功能。 SMW首次发布于2005年,目前有超过十名开发者,数以百计的站点使用了SMW。另外,目前已有许多相关扩展可以扩充SMW的编辑、显示和浏览数据的功能。Semantic MediaWiki有时也指整个SMW和其相关扩展系列。

set是为页面设置一个属性,可以在页面的浏览属性中查看,通过检索页面可以调用页面的属性。

  1. ask 查询,可以搜索属于某个分类的所有页面,并指定查询结果的输出方式。

通过设置与查询,一个wiki页面就可以完成最基本的功能:制作图鉴与筛选所需道具。越是高效的wiki越是会通过对单独页面设计较多的属性,便于日后的查询,同时通过相互引用嵌套,使得不至于在一个页面修改后要连带修改其相关页面,且新创建一个页面后也能不用修改大框架,只需要按部就班的填写相关内容即可和谐的融入wiki。 2.5 分类——将页面归类的标签 分类是BWIKI的一项功能,自动索引内容,为读者提供主题列表。 只需给页面的文本中加上一个或多个分类标记即可将页面归类。这些标记将在页面底部创建指向分类页面的链接,从而可以很方便地查看相关文章。 分类作为搜索引擎的一种辅助标记,可以帮助搜索引擎更准确地理解和索引网站的内容。当用户使用搜索功能时,分类信息可以用来过滤和排序搜索结果,提供更相关和有针对性的结果。

 在以游戏wiki为例的情况下,分类的作用主要是是为了便于玩家查询某一类的页面,提升搜索效率;与此同时,在一个多人访问网站中,如果通过寻找页面属性会消耗大量资源,而通过对页面进行分类,可以以较高的效率使得玩家获取想要的信息,同时也能使得网页创作者在设计模板时更加轻松方便。

通过在模板中根据物品属性进行分类,可以在完成页面创建后方便快捷的通过查询找到相同分类的页面。


3 wiki的新人入门指南 3.1 选择合适的Wiki平台 首先,要参与wiki建设,需要选择一个合适的Wiki平台。由于在wiki建设中,很多时候都是自发劳动不求回报的“用爱发电”,选择一个你喜欢的话题/游戏,可以使你有更多更长久的动力去为wiki建设贡献出自己的力量。 3.2 加入wiki编辑组 确定想要加入的wiki后,就可以申请加入wiki编辑组。一般来说各个wiki编辑组都不会拒绝新人的加入。你可以以多种身份加入: 3.2.1 攻略创作者/团队 对于几乎所有游戏,攻略都是必不可少的,塔可以帮助你用更低的成本更高效更舒适的体验游戏,发掘制作者留下的彩蛋,了解错过的分支剧情,提供百变的游戏思路。 3.2.2 搬运工(黑奴) 在wiki创建的早期,由于有着大量页面的信息需要从游戏中收集创建,这些工作不可能完全交给站长或者架构师,否则是对资源的极大浪费。所以一般来说这类工作都是交给对wiki建设有热情,但并不精通模板页面设计工作的玩家。通过规范化的收集素材资料,“黑奴”们只需要负责创建物品页面,将模板的内容行复制粘贴进源代码,按照收集好的素材资料将内容填写入内容行,就可以一键生成相应页面。此外,他们还负责对这些页面的修改和补充;例如攻略团队更新了哪里的思路,更改了哪里的推荐属性思路,这些都需要广大的搬运工去完成。没有他们一砖一瓦的建设,就没有现在wiki的丰富多彩。 3.2.3 修理工(维护人员)(我们) 作为一个拥有大量页面的网站,什么问题都没有的可能性趋近于0,所有理应有维护人员去处理相关的问题。这类人一般需要有相对全面的代码知识,了解出现的bug可能是什么原因导致的,在力所能及的范围内及时处理,遇到涉及更核心代码是联系架构师进行问题的反馈;此外还需要对修改的页面进行监督批准,以防有居心叵测之人恶意创建不良内容使得wiki站成员集体利益受损。 3.2.4 架构师(管理员、界面管理员) 他们一般都是拥有丰富经验的wiki编辑者,能够在多种不同情况下依靠自己的经验设计丰富自洽且有冗余的的模板;此外由于他们负责了大部分核心页面的建设,参与过诸多项目,所以往往对修改得心应手,添加各种组件也基本由他们负责。 3.2.5 特殊人才 显而易见,并不是所有游戏内资料都可以由玩家获得,包括角色立绘、地图等等也很难再游戏内获得较为纯净的版本。因此wiki往往需要一批特殊人才,包括但不限于ps,沟通官方、拆包等等。一般来说,私下拆包是违法的,但在和官方联系合作后,由于wiki是对官方有利,一般官方都会睁一只眼闭一只眼,只要不用wiki盈利就对拆包行为视而不见,并会为wiki建设者们提供一些福利以维持热情。 3.3 参与wiki建设——以维修工为例 作为一位维修工,要做的事情往往很多。 学习基础的html和css知识,了解代码原理,不至于在需要修理时连代码都看不懂。 通过实践积累经验,了解常见问题的产生原因与解决方法。例如一个bug是某个页面的源代码问题还是模板的问题?某些设备上的显示出错时设备自身原因还是栅格系统没有设置好?内链失效是输错了链接还是某些页面被重定向?图片没有显示是设备问题还是代码问题还是图片没有规范命名?只有通过不断积累,才能逐渐了解其中的原理。 作为一名勤学好问的维修工,在处理bug的同时也要去深入了解页面之间的逻辑,了解其中的调用关系,不断丰富自己的知识积累,为后续发展打下坚实的基础,也使自己获得更多知识,培养逻辑思维,为今后的学习生活添砖加瓦。 审阅与修订:在自己或者其他编辑者发布内容之前,对内容进行仔细审阅,检查错别字以防无法引用、语法错误导致页面出错等问题,确保内容质量。 作为一个上进的学习者,在完成基础的运维任务后,还应该继续深入学习。学习Css、JS等软件的简单使用方法,并结合当前已有模板,达成对bwiki的运行方式的基本了解,做到能够初步参与bwiki各个方面的的维护与更新。 3.4 探索更多可能 当你已经掌握对于一个wiki来说较为全面的知识后,会有许许多多的方向可供你选择。是添加js的插件,使得页面更有趣更方便?还是优化总站的css,使图表更符合游戏特色?亦或者收集创作者及其更改记录,做一个荣誉封神榜来表彰为wiki做出卓业贡献的编辑者?还是想要自己开创一片天地,去寻找一个新的wiki,当一回架构师;或者拓展视野,了解如飞书,灰机wiki之类其他软件的wiki,拓展国际视野。这种种可能,只有完成知识的积累,放会向你展开。 借用其他教我们团队的大佬对新人的展望:希望所有有志加入wiki建设的新人能有一颗热爱的心用爱发电,耐得住寂寞,接受的了辛辛苦苦做出来却没人看的困境,忍受的了wiki的枯燥,在这苦行中不忘初心。 希望所有新人想学多问,不断试错才能成长。