2023年政策修订增补工作正在进行中,欢迎参与!
  • Moegirl.ICU:萌娘百科流亡社群 581077156(QQ),欢迎对萌娘百科运营感到失望的编辑者加入
  • Moegirl.ICU:账号认领正在试运行,有意者请参照账号认领流程

Template talk:Akrange

萌娘百科,万物皆可萌的百科全书!转载请标注来源页面的网页链接,并声明引自萌娘百科。内容不可商用。
跳转到导航 跳转到搜索

关于攻击范围的语法描述问题

我建议使用行长度+行位移量+范围偏移量的方式描述:

不过这个描述法有一个缺点,就是只能描述连续区间,但是可以通过使用集合语法来描述,如:{1,3}-1,1,{1,3}-1,但此时效率不如akrange本身,xoxNoxoNxox,多出6字节。

  • 守林人范围
  • 1,2,3,4,3,2,1→xnxxnxxxnsxxxe
  • 送葬人范围
  • 1,2,1,++1→oxonsxxnoxo
  • 真理范围
  • 4,4,4→xxxxnsxxxnxxxx
  • 初雪范围
  • 2+1,4,4,4,2+1,--1→oxxonxxxxnxsxxe
  • 艾雅法拉范围(火山)
  • 1,3-1,5-2,7-3,5-2,3-1,1
  • 银灰范围(真银斩)
  • 1,2,3,4,3,2,1
  • 空范围(睡眠之歌)
  • 3+1,5,5,5,3+1,--2

--九江喵@不好好~卖☆萌~2020年8月29日 (六) 16:33 (CST)

请问干员自身在攻击范围中的位置该如何描述?--步在文旁句外,游于字里行间。 行间讨论) 2020年8月29日 (六) 17:21 (CST)
干员自身在攻击范围中的位置默认取中间数,特殊情况下使用@来表示所在位置,如原本真理的范围4,4,4→@4,4,4后,就相当于整体往下移动了一行,也就是以第一行为干员所在位置。
这个语法可以翻译成akrange的,4-1的话就相当于该行有4格,整体左移1格;4+1的话就相当于该行有4格,整体右移1格。描述很简单。
正向翻译其实不难的,基本就是4,→xxxxn;2+1,→oxxn;特殊语法在输出前进行语法替换即可,不过反过来翻译就很难。--九江喵@不好好~卖☆萌~2020年8月29日 (六) 18:16 (CST)
@九江月,啊你看,Akrange的描述字符串语法设计大概就是非常简单、非常容易实现。现在的字符串的意义相当于是直接把范围形状画出来,虽然效率低些但是很容易理解,还可以适配任何稀奇古怪的形状;你的语法的确能节省些字节,不过稍微难懂些、而且似乎只支持连成一行的攻击范围?例如早露精二前,现在的描述字符串可以写成ooxxxsoxxxe,你的串好像不行。
一个可能的改进方法是引入不同的方式标记自身位置和空格位置,比如把早露写成3+2;5@1,2E;——即,+描述位移;@标记自身位置;逗号分隔数字表示空格位置;仍然引入E标示对称轴。这样的话,再比如减速辅助是4;4@2E;,火山是1+3;3+2;5+1;7@4E;,如果以后出了个xxxxxxxnoxosoxe的话就写成7;5+1@3,2,4E;。但是,这样好像更复杂了……简单来讲它变得和现有的描述字符串一样了,只是换了个方法标记空格,并且把重复的x变成了数字。我觉得就实现难度以及相对较复杂的语法来看,用数字标记不一定更优。
PS:不过我的确可以引入;作为n的同义,易读性会大大上升。—COVID退散!理论上是公的驱逐舰的 壹陆 讨论·最近编辑 2020年9月2日 (三) 09:16 (CST)