Skip to content

如何自定义输出内容

Mikira Sora edited this page Nov 20, 2018 · 3 revisions

简介


通常我都会设定默认设置和默认输出配置在config.ini,以及PPShowConfig.json中.

config.ini修改

请读这个


PPShowConfig.json修改

JSON文件教程

格式化参数:

${var_name}

插件会根据这个参数的var_name实际名字,获取对应的值并替换${var_name}.

var_name可用名称:

  • pp:acc% 比如${pp:98.00%}或者${pp:98.80%},将会分别算出acc98%的pp值或者acc98%的pp值,acc必须保留两位小数再加一个%符号
  • cs,od,ar,hp,stars 谱面具体难度,比如${cs}或者${od}
  • mods 会输出当前打图所用的mod(ORTDP源限定)
  • creator 谱面作者
  • beatmap_id,beatmap_setid 谱面ID以及SetID(没有回返回空字符串)
  • beatmap_setlinkbeatmap_link 谱面的BeatmapSetID link和beatmapID link,不存在的话会返回空字符串
  • title_avaliable,artist_avaliable 标题可用名称和艺术家可用名称,优先返回Unicode类型的名字,没有就返回原(罗马)名字
  • version 难度名
  • max_bpm,min_bpm 谱面最大最小BPM
  • speed_stars,aim_stars,stars 分别是speed难度星级,aim难度星级以及谱面难度星级
  • max_combo 谱面FC Combo
  • title,artist 原(罗马)标题和艺术家
  • circles,spinners 物件数量和转盘数量

在PPShowConfig.json中,可以通过数组对象xxx_list(比如listen_list或者output_list)添加或者编辑对象来实现自定义格式化输出:

{
 "output_file":"文件输出保存路径",
 "output_format":"要被格式化的文本内容"
}

比如:

{
			"output_file": "..\\output\\current_playing.txt",
			"output_format": "CurrentPlaying:${artist_avaliable} - ${title_avaliable} [${version}]"
}

或者

{
			"output_file": "..\\output\\map_info.txt",
			"output_format": "CS:${cs} \nAR:${ar} \nOD:${od} \nHP:${hp} \n \nStars:${stars}* \nAim:${aim_stars}* \nSpeed:${speed_stars}* \n \nMaxCombo:${max_combo}"
}

注意:可以直接使用\n来换行.

output_file支持写入硬盘上的文本文件,也支持写入内存映射文件,通常建议用户使用后者方式输出,因为后者的效率是前者的几十倍。如果想在obs软件使用内存映射文件,看这个,如果想要在屙屎游戏内部使用内存映射文件,看那个and这个.output_file输出到内存映射文件的格式是这样的:

{
      "output_format": "Creator:${creator} \t Link:${beatmap_link}",
      //必须以"mmf:"开头,后面是内存映射文件名称
      "output_file": "mmf://current_playing_map_info" 
}