广告
pathofexile吧 关注:272,971贴子:6,602,915

【技术贴】如何自己制作个性化的“物品过滤器”

只看楼主收藏回复

一楼度娘。


IP属地:四川1楼2018-02-12 12:22回复
    流放之路为我们提供了一套开放式的【物品过滤器】系统,玩家可以通过简单的编码制作个性的“过滤器配置文件”,并在游戏中一键加载。
    在充分体验游戏本身的魅力之后,我想我们也该来玩玩这个“过滤器”定制系统了。在我看来,这个系统和“藏身处装饰”一样,是游戏体验的一部分。当然,可能对于普通玩家而言,“编码”这个词显得有些艰深,但我相信,如果你尝试一下,也能从中找到一些不一样的乐趣。如果你基本掌握了使用方法,那么你就可以自己动手定制一份完全属于个人的【物品过滤器】啦!


    IP属地:四川2楼2018-02-12 12:23
    回复
      2025-08-27 14:05:10
      广告
      不感兴趣
      开通SVIP免广告
      首先,我们先来看看【过滤器】是什么:
      直观体验:
      1、隐藏我们不想捡取的物品
      2、高亮显示我们最关注的的物品
      3*、声音提示贵重物品
      关键词:隐藏、显示
      所以,一份“过滤器配置文件”,实际上就是一份列举你想要隐藏和显示物品的规则清单。
      那么这个文件在那个地方呢?
      它的默认存储位置是:
      系统盘:\Users\(你的用户名)\Documents\My Games\Path of Exile
      当然,你也可以在游戏系统界面,通过“过滤器路径”这个按钮定位到过滤器文件所在的目录。
      当你没有使用任何由玩家制作的“过滤器”时(即使用游戏自带的默认过滤器),这个目录下是看不到任何“过滤器配置文件”的,因为游戏自带的过滤器没有以单独的文件形式存放在这里。
      (或许这也是大家不知道“过滤器”可以自己做的一个原因)


      IP属地:四川本楼含有高级字体3楼2018-02-12 12:24
      回复
        。。。把崇高石掉落不显示,就完美了啊!


        来自Android客户端4楼2018-02-12 12:25
        收起回复
          这里,我借用国际服NeverSink 大大编写的配置文件,来带大家大致看看,这个“过滤器”到底长什么样子:

          我们可以看到,过滤器配置文件的文件拓展名是.filter(英文单词:过滤),这个文件格式可以使用文本编辑软件直接打开,比如txt记事本、word文档等。
          我们用Word打开(用txt记事本打开可能会由于排版问题不便于阅读),内部是这样的:

          如果你看到这一大片英文字母,先别觉得头疼,我们不需要一上来就理解这么大一片编码,制作这个配置文件也是一行一行逐步写出来的,给自己一点信心。
          我们先来理解一下这个配置文件的“结构”:
          刚才说了,这是一个“规则清单”,规则就是“我要显示(show)什么”、“我要隐藏(hide)什么”。其中又分为两个部分,一个是“过滤条件”,一个是“显示样式”。
          我们以这一段为例来理解一下:
          Show
          ShaperItem True
          ItemLevel >= 86
          BaseType "Coral Amulet" "Paua Amulet" "Gold Amulet" "Gold Ring" "Paua Ring" "Iron Ring" "Amethyst Ring" "Unset Ring" "Moonstone Ring" "Studded Belt" "Cloth Belt" "Chain Belt"
          Rarity <= Rare
          SetFontSize 45
          SetTextColor 50 130 165 255 # TEXTCOLOR: ShaperElder
          SetBorderColor 50 130 165 255 # BORDERCOLOR: ShaperElder
          SetBackgroundColor 255 255 255 255 # BACKGROUND: T1 Global High Value Drop
          PlayAlertSound 6 300 # DROPSOUND: T1 Drop
          -首先开头顶格“show”,意思是:这条规则决定“我想要显示的东西”
          -然后后面退格,列举了“这样东西”的一些“特征”(也就是过滤条件
          -ShaperItem (塑界物品),这是物品的一条属性,它有两个数值,是(true)或者 否(false)。这里代表这个物品是个塑界物品。
          -ItemLevel (物品等级),这条属性是个不等式或者等式。这里代表这个物品的等级大于等于86
          -BaseType (基础类型),这条属性可以是一个或者多个“字符串”。这里列举了这个物品可能的类型:几种项链、戒指、腰带(具体的名词可以在“流放编年史”找到)
          -Rarity (稀有等级),这条属性也是个不等式或等式。这里表示稀有等级小于等于“稀有”
          -过滤条件结束之后,紧接着同样退格列举“显示样式
          -SetFontSize (设置字体大小),这条属性决定了通过这条规则显示出来的物品文字有多大
          -SetTextColor (设置文字颜色),这条属性决定了文字的颜色(采用的是RGBA颜色表示法,所有对颜色的设置都是如此)
          -SetBorderColor (设置边框颜色),这条属性决定了词条边框的颜色
          -SetBackgroundColor (设置背景颜色),这条属性决定了词条背景的颜色
          -PlayAlertSound (设置提示音效),这条属性决定了该物品掉落的提示音(前一个数字代表声音编号,后一个数字代表音量大小)
          -可能你注意到带有“#”号的部分,学过编程的或许知道这是注释,即用于解释编码的文字部分,不会被过滤器识别,只是写给编码的人看的,有助于对编码的理解。
          PS:【RGBA】,是指的“红”(Red)、“绿”(Green)、“蓝”(Blue)、“不透明度”(Alpha)四个颜色通道,这是计算机图形显示最常用的颜色表示法,每个通道的数值从0~255


          IP属地:四川本楼含有高级字体5楼2018-02-12 12:29
          回复
            读完上面的一个案例,或许你会觉得十分繁琐,写了一大段英文单词和数字,只定义了一条规则,而通常一个过滤器存在数十条甚至更多条规则。而且,采用这种文本编码的方式,还需要你熟悉所有的“物品属性”以及各种名词(关键字),修改和测试起来也十分繁琐,显得效率很低。
            (当然,如果你是程序员,那么这应该是小菜一碟。)
            所以接下来我要详细介绍另一种制作“过滤器配置文件”的简便方法。
            其实在国外早就有玩家对“配置文件编码”效率过低有所抱怨,所以有人制作了一款“过滤器编辑软件”,并在“GitHub”上开源共享。
            这是下载链接:
            https://gith防ub.com/ben-wallis/Filtr吞ation/releases
            这个软件名字叫Filtration(过滤),简单明了。
            它把编码过程通过一些的“表单”和UI简化了,让玩家在制定规则时不再需要去查询那些关键字,甚至不需要惯性格式问题,所有操作都通过一些选项和填空完成。并且,它还提供了“效果模拟”,让你直接可以看到最终“显示效果”,非常便于调试。


            IP属地:四川6楼2018-02-12 12:32
            回复
              我们来看看这个软件长什么样子:

              我们只用关心最中间的工作空间,让我们用这个软件来编写一条过滤规则。
              (我们以显示“幻色石”配方物品为例子)
              第一步,选择create a new script(创建一个新的脚本)
              -软件自动为我们生成了一个Script Description(脚本描述),单击下拉按钮展开,可以输入一些本过滤器的概述,制作者信息以及帮助信息等。


              第二步,单击顶部工具菜单的Add Block(添加块),就可以添加一条“规则”(这里UI显示为一个长条方块,是不是比纯文本直观了许多)

              -这个“块”上面有一个绿色的“show”按钮,既表示这条规则表示“要显示的物品”。如果我们单击一下这个按钮,它就会变成红色的“hide”,即变成了表示“要隐藏的物品”,可以非常快捷地切换这条规则过滤出来的物品显示或者隐藏。
              -而这个“长条块”的最右边,我么你可以看到一个预览显示效果


              第三步,单击下拉按钮。我们就进入了规则的编写界面,在这里,所有的“物品属性”关键字都以按钮的形式展现,如果你想添加某个属性条件,直接单击就行了。而它已经自带的一条属性“Action”,有两个选项“Show”和“Hide”则就是代表显示和隐藏(这是软件为了保持逻辑的统一性)


              IP属地:四川本楼含有高级字体7楼2018-02-12 12:39
              回复
                第四步,开始根据我们的需要添加过滤条件了。
                -首先,“幻色石”配方物品是“三色孔相连”,所以这件物品至少要有3个孔是相连的。我们点击【+linked Sockets】(连接孔),出现一个表单,第一个下拉菜单可以选择符号,我们选择【>=】,即“至少”,后面一个编辑框填数字【3】,这样就完成了这条规则。
                -然后我们点击【+Socket Group】(孔色组),又出现一个表单,这里我们在下面的编辑框输入【RGB】,点击添加就行了。(RGB即“红绿蓝”组合)
                这样,红绿蓝三色连孔的装备就会显示出来了。
                (由于只有装备物品上有孔洞,所以不需要添加额外的限制条件来规定这个物品必须是装备物品)
                第五步,我嫌双手武器、大盾牌、衣服等太占背包空间了,不想捡这些装备拿回去换“幻色石”。OK,我们再添加过滤条件。
                -我们可以使用【+class】(物品类型),只填写空间小的物品类型。
                -但这里有更简便的方法,我们使用【+Height】和【+Width】这两个属性,它们代表了物品在背包中的高和宽。这两个属性我们让它都“=2”,那么就只会显示2X2大小的“幻色石”配方装备了。


                IP属地:四川8楼2018-02-12 12:42
                回复
                  2025-08-27 13:59:10
                  广告
                  不感兴趣
                  开通SVIP免广告
                  第六步,接下来就该设置显示效果了。我们点击“规则块”右下角的【Switch to Appearance Block item】(切换到外观)
                  -这里同样以属性的方式展示了所有有关“显示”的按钮
                  -我们选择【+FontSize】,填写32,或者点击上下按钮增减数字,我们可以看到右边的预览图在动态地改变。
                  -单击【+TextColor】,下拉菜单可以直接选择一些预设好的颜色,不再需要使用RGBA来表示(当然,如果预设颜色没有你喜欢的,你也可以在“Advance”里自行选择颜色)
                  -单击【+PlayAlertSound】,我们可以选择提示音编号和音量大小,旁边有一个小喇叭按钮,点击可以试听效果。

                  第七步,在这个规则块最底部,我们可以看到一个【Description】编辑区,这是针对这一条规则的注释部分,可以简单概述这条规则。这样,即使在你把规则块收拢的时候,鼠标停留在上面,也会显示这个注释,帮助你快速理解,而不需要展开规则块去看里面填了什么。

                  -或者,你也可以通过顶部“工具菜单”的【Add Section】,添加一个“描述块”,作为规则之间的分割线或者总体描述。
                  第八步,Ctrl+S保存,命名(记得要存在上面提到的那个目录里)。然后进入游戏,就可以加载你自己制作的过滤器了!
                  PS1:使用这个软件编写过滤器,文字大小上限为45,声音大小上限为300,使用纯文本则没有限制。如果你想要更大的文字或者声音,可以再次用txt记事本打开,修改数值即可。
                  PS2:至于使用自己的提示音,则需要通过资源覆盖的方式,把自己的音频文件覆盖掉相应编号的系统提示音文件,然后选择对应编号的声音。但是由于POE的资源文件集成在Content.ggpk里面,需要使用打补丁工具进行覆盖,不在本文的讨论范围。


                  IP属地:四川9楼2018-02-12 12:48
                  收起回复
                    我看ziz直接网站上做的 滑块操作 不记得地址了


                    来自iPhone客户端10楼2018-02-12 12:54
                    收起回复
                      这个小软件还有一些有趣的人性化设计,大家可以自己去发掘。
                      在填写物品类型时,虽然还是需要大概知道这个物品类型单词怎么写(比如地图:map;腰带:belt),但是软件提供了智能识别,只要你输入首字母,他就会显示所有以这个字母开头的名词,方便你快速选到自己需要的。
                      最后,
                      感谢这个软件的作者:Ben Wallis
                      感谢NeverSink的开源过滤器
                      感谢NGA用户UID39618700的启蒙贴
                      希望大家学习使用并制作属于自己的过滤器!!


                      IP属地:四川11楼2018-02-12 12:55
                      收起回复
                        插眼学习


                        IP属地:浙江来自Android客户端12楼2018-02-12 13:05
                        回复



                          来自Android客户端13楼2018-02-12 13:26
                          回复
                            怪不得poe可以导入过滤器 一开始一直不明白 原来是开放式的


                            IP属地:江苏来自Android客户端14楼2018-02-12 13:42
                            收起回复
                              2025-08-27 13:53:10
                              广告
                              不感兴趣
                              开通SVIP免广告
                              最后帖一发我自己制作的过滤器:



                              IP属地:四川15楼2018-02-12 14:50
                              回复