Skip to content

Commit

Permalink
重新加回软降速率的设置参数(adp)
Browse files Browse the repository at this point in the history
修改asd/asp/adp/ash的中文译名
更新词典相关,顺便整理一些词条
  • Loading branch information
MrZ626 committed Aug 23, 2024
1 parent 6fb0041 commit b9cf46e
Show file tree
Hide file tree
Showing 9 changed files with 63 additions and 43 deletions.
6 changes: 2 additions & 4 deletions assets/dict_base.lua
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,10 @@ local baseDict={
{'term: next'},
{'term: hold'},
{'term: clear'},
{'term: clear_big'},
{'term: clear_big',hidden=function() return false end},
{'term: clear_huge',hidden=function() return false end},
{'term: charge'},
{'term: all_clear'},
{'term: half_clear'},
{'term: rotation_system'},
{'term: spin'},
{'term: all_spin'},
Expand All @@ -22,8 +21,7 @@ local baseDict={
{'term: key_speed'},
{'term: drop_speed'},
{'term: attack_power'},
{'term: asd_asp'},
{'term: ash'},
{'term: control'},
{'term: init_control'},
{'term: misaction'},
{'term: gravity'},
Expand Down
7 changes: 4 additions & 3 deletions assets/game/brikPlayer.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1473,13 +1473,13 @@ function BP:updateFrame()

-- Auto drop
if self.downCharge and self.keyState.softDrop then
local dropASD=SET.softdropSkipAsd and SET.asp or SET.asd
local dropASD=SET.softdropSkipAsd and SET.adp or SET.asd
if self.hand and not self:ifoverlap(self.hand.matrix,self.handX,self.handY-1) then
local dist=0
if self.downCharge>=dropASD then
if SET.asp==0 then
if SET.adp==0 then
dist=1e99
elseif (self.downCharge-dropASD)%SET.asp==0 then
elseif (self.downCharge-dropASD)%SET.adp==0 then
dist=1
end
end
Expand Down Expand Up @@ -1996,6 +1996,7 @@ local baseEnv={
-- Control
asd=122, -- *Auto shift delay
asp=26, -- *Auto shift period
adp=26, -- *Auto drop period
ash=26, -- *Auto Shift Halt, discharge asd when piece spawn
softdropSkipAsd=true, -- *Skip asd when softdrop
entryChrg='on', -- on/off/full/break charge when move before spawn
Expand Down
7 changes: 4 additions & 3 deletions assets/game/gelaPlayer.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1022,13 +1022,13 @@ function GP:updateFrame()

-- Auto drop
if self.downCharge and self.keyState.softDrop then
local dropASD=SET.softdropSkipAsd and SET.asp or SET.asd
local dropASD=SET.softdropSkipAsd and SET.adp or SET.asd
if self.hand and not self:ifoverlap(self.hand.matrix,self.handX,self.handY-1) then
local dist=0
if self.downCharge>=dropASD then
if SET.asp==0 then
if SET.adp==0 then
dist=1e99
elseif (self.downCharge-dropASD)%SET.asp==0 then
elseif (self.downCharge-dropASD)%SET.adp==0 then
dist=1
end
end
Expand Down Expand Up @@ -1434,6 +1434,7 @@ local baseEnv={
-- Control
asd=122,
asp=26,
adp=26,
ash=26,
softdropSkipAsd=true,
entryChrg='on',
Expand Down
39 changes: 18 additions & 21 deletions assets/language/dict_zh.lua
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ C4.禁用暂存,稳定全部消四完成40行
4.参数设置设置不当;
5.姿势不当,不便用力;
6.换新键位/新设备后不适应操作习惯;
7.肌肉疲劳反应和协调能力下降,可以进行睡眠或体育运动
7.肌肉疲劳反应和协调能力下降,需进行睡眠或体育运动
# piece_appearance
@ title 形状、颜色、朝向
Expand Down Expand Up @@ -136,24 +136,21 @@ B2B:Back to Back,连续
# all_clear
@ title 全消(AC)
All Clear,消除场地内所有方块。
# half_clear
@ title 半全消(HC)
Half Clear,AC(全消)的外延,指“下方有剩余方块”的全消。
特别地,如果只消1行则必须不剩余主动放置的方块。
All Clear,消除场地内所有方格。
另有两个变种:
Half Clear:“下方有剩余方格”的全消
Color Clear:消除了非垃圾行的所有方格
# rotation_system
@ title 旋转系统
方块进行“旋转”操作的时候,如果旋转后的原定目标位置和场地或墙壁有重合,会进行一些偏移测试,把方块平移到附近的空位来使旋转操作能顺利完成,更不容易卡住
上文中的偏移过程称为“踢墙”。通常偏移坐标会被用表格的方式存储,根据方块的种类和旋转的方向来选择,该表被称为“踢墙表”。
方块进行“旋转”操作的时候,如果旋转后的原定目标位置被遮挡,则会尝试将方块平移到附近的空位来使旋转能顺利执行而不是卡住
上述执行的偏移动作称为“踢墙”。通常尝试的偏移坐标以表格的方式存储,根据方块的种类和旋转的方向来选择其中一行,该表被称为“踢墙表”。
旋转系统决定了上述过程如何进行。
# spin
@ title 卡块消(Spin)
在规则允许的情况下,使用旋转操作将方块卡进不能直接移到的位置称为Spin,根据使用的具体方块,操作会被称为例如Z-Spin、J-Spin等。
如果Spin的同时产生了消除,则该消除为Spin消除。
Mini-Spin:不满足一些条件的卡块消可能会被附加Mini的前缀,获得的奖励会减少。
在规则允许的情况下,使用旋转操作将方块卡进不能直接移到的位置称为卡块,操作会根据使用的具体方块被称为Z-Spin、J-Spin等。
如果卡块的同时产生了消除,则该消除为卡块消。
# all_spin
@ title 所有块可旋(All-Spin)
Expand Down Expand Up @@ -190,21 +187,21 @@ LPM:Line per Minute,行每分,其中行的计算方式有两种,一是
APM:Attack per Minute,攻击每分
APL:Attack per Line,攻击每行(行的定义有两种,详见LPM词条),也叫效率
# asd_asp
@ title 移动延迟(ASD & ASP & ADP)
# control
@ title 控制系统(ASD & ASP & ADP)
@ contentSize 25
ASD:Auto Shift Delay,自动移动延迟,旧称DAS(Delayed Auto Shift)
ASP:Auto Shift Period,自动重复周期,旧称ARR(Auto Repeat Rate)
ASD:Auto Shift Delay,重复移动延迟,别名DAS(Delayed Auto Shift)
ASP:Auto Shift Period,重复移动周期,别名ARR(Auto Repeat Rate)
ADP:Auto Drop Period,重复下落周期
ASH:Auto Shift Halt,重复移动阻止
~~
在使用键盘输入文本时按住一个键,会连续输入了一大串字符。注意字符出现的时机:第一个字按下后立刻出现,停了一小会后开始快速连续自动输入,其中“停了一小会”就是ASD长度,“连续自动输入”的间隔就是ASP长度。
使用键盘输入文本时按住一个键,会出现一大串字符。注意字符出现的时机:第一个字符在按键时立刻出现,停了一小会后开始快速自动输入。
其中“停了一小会”就是ASD长度,“快速自动输入”的间隔就是ASP长度。
ADP含义同ASP,只是把水平移动换成软降。
新的方块出现后即使ASD已充满,方块也会额外等待ASH的时长后再开始移动,优化手感。
~~
最佳调节方法:ASD越小越好,但小到依然能准确区分单点和长按两种动作为止;ASP能多小就多小,尽可能接近0;ADP通常都为0。
# ash
@ title 自动移动阻止(ASH)
ASH:Auto Shift Halt,新的方块出现后即使ASD已充满,方块也会等ASH的时长后再开始移动,优化手感。
# init_control
@ title 预输入
指在新的方块出现之前就进行的旋转、暂存、移动等指令的输入,能减少吃键现象,增加完美输入的窗口时间,优化手感,
Expand Down
1 change: 1 addition & 0 deletions assets/language/lang_en.lua
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ local L={

setting_asd="ASD",
setting_asp="ASP",
setting_adp="ADP",
setting_ash="AS Halt",
setting_softdropSkipAsd="Skip Drop Delay",
setting_shakeness="Shakiness",
Expand Down
7 changes: 4 additions & 3 deletions assets/language/lang_zh.lua
Original file line number Diff line number Diff line change
Expand Up @@ -82,9 +82,10 @@ local L={
graph_brik_title="M-图谱", -- 翻译注意:取自“知识图谱”(人工智能领域)
settings_title="设置",

setting_asd="自动移动延迟",
setting_asp="自动重复周期",
setting_ash="自动移动阻止",
setting_asd="重复移动延迟",
setting_asp="重复移动周期",
setting_adp="重复下落周期",
setting_ash="重复移动阻止",
setting_softdropSkipAsd="跳过软降延迟",
setting_shakeness="场地晃动",
setting_hitWavePower="冲击波强度",
Expand Down
11 changes: 9 additions & 2 deletions assets/scene/setting_in.lua
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ local scene={}
local function updateSlidercolor()
scene.widgetList.asd.fillColor={COLOR.HSL(0,1,.5+.5*MATH.icLerp(20,100,SETTINGS.game_brik.asd))}
scene.widgetList.asp.fillColor={COLOR.HSL(0,1,.5+.5*MATH.icLerp(-10,5,SETTINGS.game_brik.asp))}
scene.widgetList.asd.fillColor={COLOR.HSL(0,1,.5+.5*MATH.icLerp(-10,5,SETTINGS.game_brik.asd))}
end

function scene.load()
Expand Down Expand Up @@ -53,15 +54,21 @@ scene.widgetList={
{type='slider', pos={1,.5},x=-550, y=-210,w=400,fontSize=40,text=LANG'setting_sfx', widthLimit=260,disp=TABLE.func_getVal(SETTINGS.system,'sfxVol'), code=TABLE.func_setVal(SETTINGS.system,'sfxVol')},
{type='slider', pos={1,.5},x=-550, y=-130,w=400,fontSize=40,text=LANG'setting_vib', widthLimit=260,disp=TABLE.func_getVal(SETTINGS.system,'vibVol'), code=TABLE.func_setVal(SETTINGS.system,'vibVol')},

{type='slider', name='asd', pos={1,.5},x=-852.3,y=250,w=702.3,text=LANG'setting_asd', widthLimit=260,axis={20,260,10},disp=TABLE.func_getVal(SETTINGS.game_brik,'asd'), valueShow=sliderShow_time, code=function(v)
{type='slider', name='asd', pos={1,.5},x=-852.3,y=150,w=702.3,text=LANG'setting_asd', widthLimit=260,axis={20,260,10},disp=TABLE.func_getVal(SETTINGS.game_brik,'asd'), valueShow=sliderShow_time, code=function(v)
SETTINGS.game_brik.asd=v
SETTINGS.game_brik.asp=math.min(SETTINGS.game_brik.asp,SETTINGS.game_brik.asd)
SETTINGS.game_brik.adp=math.min(SETTINGS.game_brik.adp,SETTINGS.game_brik.asd)
updateSlidercolor()
end},
{type='slider', name='asp', pos={1,.5},x=-852.3,y=350,w=702.3,text=LANG'setting_asp', widthLimit=260,axis={0,120,10}, disp=TABLE.func_getVal(SETTINGS.game_brik,'asp'), valueShow=sliderShow_time, code=function(v)
{type='slider', name='asp', pos={1,.5},x=-852.3,y=250,w=702.3,text=LANG'setting_asp', widthLimit=260,axis={0,120,10}, disp=TABLE.func_getVal(SETTINGS.game_brik,'asp'), valueShow=sliderShow_time, code=function(v)
SETTINGS.game_brik.asp=v
SETTINGS.game_brik.asd=math.max(SETTINGS.game_brik.asd,SETTINGS.game_brik.asp)
updateSlidercolor()
end},
{type='slider', name='adp', pos={1,.5},x=-852.3,y=350,w=702.3,text=LANG'setting_adp', widthLimit=260,axis={0,120,10}, disp=TABLE.func_getVal(SETTINGS.game_brik,'adp'), valueShow=sliderShow_time, code=function(v)
SETTINGS.game_brik.adp=v
SETTINGS.game_brik.asd=math.max(SETTINGS.game_brik.asd,SETTINGS.game_brik.adp)
updateSlidercolor()
end},
}
return scene
26 changes: 19 additions & 7 deletions assets/scene/setting_out.lua
Original file line number Diff line number Diff line change
Expand Up @@ -66,13 +66,25 @@ scene.widgetList={
{name='S4',type='button_invis',pos={1,0},x=-200,y=60,w=150,h=100,cornerR=20,fontSize=70,text=CHAR.icon.controller,sound_trigger='button_soft',code=function() if page~='4' then SCN.swapTo('setting_out','none',4) end end},

-- Controls
{name='1',type='slider', pos={0,0},x=340, y=220,w=650, fontSize=35,text=LANG'setting_asd', widthLimit=260,axis={0,260,1},smooth=true,disp=TABLE.func_getVal(SETTINGS.game_brik,'asd'), valueShow=sliderShow_time, code=function(v) SETTINGS.game_brik.asd=v; SETTINGS.game_brik.asp=math.min(SETTINGS.game_brik.asp,SETTINGS.game_brik.asd); SETTINGS.game_brik.ash=math.min(SETTINGS.game_brik.ash,SETTINGS.game_brik.asd) end},
{name='1',type='slider', pos={0,0},x=340, y=300,w=300, fontSize=35,text=LANG'setting_asp', widthLimit=260,axis={0,120,1},smooth=true,disp=TABLE.func_getVal(SETTINGS.game_brik,'asp'), valueShow=sliderShow_time, code=function(v) SETTINGS.game_brik.asp=v; SETTINGS.game_brik.asd=math.max(SETTINGS.game_brik.asd,SETTINGS.game_brik.asp) end},
{name='1',type='switch', pos={0,0},x=750, y=300,h=40, labelPos='right',fontSize=35,text=LANG'setting_softdropSkipAsd',disp=TABLE.func_getVal(SETTINGS.game_brik,'softdropSkipAsd'),code=TABLE.func_revVal(SETTINGS.game_brik,'softdropSkipAsd')}, -- visibleTick=function() return page=='1' and SETTINGS.game_brik.asp>0 end
{name='1',type='slider', pos={0,0},x=340, y=380,w=650, fontSize=35,text=LANG'setting_ash', widthLimit=260,axis={0,260,1},smooth=true,disp=TABLE.func_getVal(SETTINGS.game_brik,'ash'), valueShow=sliderShow_time, code=function(v) SETTINGS.game_brik.ash=v; SETTINGS.game_brik.asd=math.max(SETTINGS.game_brik.asd,SETTINGS.game_brik.ash) end},
{name='1',type='button', pos={0,0},x=500, y=480,w=360, h=80,cornerR=10, fontSize=40,text=LANG'setting_keymapping', code=WIDGET.c_goScn('keyset_out','fadeHeader')},
{name='1',type='switch', pos={0,0},x=360, y=620,h=40, labelPos='right',fontSize=40,text=LANG'setting_enableTouching', disp=TABLE.func_getVal(SETTINGS.system,'touchControl'),code=TABLE.func_revVal(SETTINGS.system,'touchControl')},
{name='1',type='button', pos={0,0},x=500, y=700,w=360, h=80,cornerR=10, fontSize=40,text=LANG'setting_touching', code=WIDGET.c_goScn'keyset_touch_out',visibleTick=function() return page=='1' and SETTINGS.system.touchControl end},
{name='1',type='slider', pos={0,0},x=340, y=220,w=650, fontSize=35,text=LANG'setting_asd', widthLimit=260,axis={0,260,1},smooth=true,disp=TABLE.func_getVal(SETTINGS.game_brik,'asd'), valueShow=sliderShow_time, code=function(v)
SETTINGS.game_brik.asd=v
SETTINGS.game_brik.asp=math.min(SETTINGS.game_brik.asp,SETTINGS.game_brik.asd)
SETTINGS.game_brik.adp=math.min(SETTINGS.game_brik.adp,SETTINGS.game_brik.asd)
SETTINGS.game_brik.ash=math.min(SETTINGS.game_brik.ash,SETTINGS.game_brik.asd)
end},
{name='1',type='slider', pos={0,0},x=340, y=300,w=300, fontSize=35,text=LANG'setting_asp', widthLimit=260,axis={0,120,1},smooth=true,disp=TABLE.func_getVal(SETTINGS.game_brik,'asp'), valueShow=sliderShow_time, code=function(v)
SETTINGS.game_brik.asp=v
SETTINGS.game_brik.asd=math.max(SETTINGS.game_brik.asd,SETTINGS.game_brik.asp)
end},
{name='1',type='slider', pos={0,0},x=340, y=380,w=300, fontSize=35,text=LANG'setting_adp', widthLimit=260,axis={0,120,1},smooth=true,disp=TABLE.func_getVal(SETTINGS.game_brik,'adp'), valueShow=sliderShow_time, code=function(v)
SETTINGS.game_brik.adp=v
SETTINGS.game_brik.asd=math.max(SETTINGS.game_brik.asd,SETTINGS.game_brik.adp)
end},
{name='1',type='switch', pos={0,0},x=750, y=380,h=40, labelPos='right',fontSize=35,text=LANG'setting_softdropSkipAsd',disp=TABLE.func_getVal(SETTINGS.game_brik,'softdropSkipAsd'),code=TABLE.func_revVal(SETTINGS.game_brik,'softdropSkipAsd')}, -- visibleTick=function() return page=='1' and SETTINGS.game_brik.asp>0 end
{name='1',type='slider', pos={0,0},x=340, y=460,w=650, fontSize=35,text=LANG'setting_ash', widthLimit=260,axis={0,260,1},smooth=true,disp=TABLE.func_getVal(SETTINGS.game_brik,'ash'), valueShow=sliderShow_time, code=function(v) SETTINGS.game_brik.ash=v; SETTINGS.game_brik.asd=math.max(SETTINGS.game_brik.asd,SETTINGS.game_brik.ash) end},
{name='1',type='button', pos={0,0},x=500, y=560,w=360, h=80,cornerR=10, fontSize=40,text=LANG'setting_keymapping', code=WIDGET.c_goScn('keyset_out','fadeHeader')},
{name='1',type='switch', pos={0,0},x=360, y=700,h=40, labelPos='right',fontSize=40,text=LANG'setting_enableTouching', disp=TABLE.func_getVal(SETTINGS.system,'touchControl'),code=TABLE.func_revVal(SETTINGS.system,'touchControl')},
{name='1',type='button', pos={0,0},x=500, y=780,w=360, h=80,cornerR=10, fontSize=40,text=LANG'setting_touching', code=WIDGET.c_goScn'keyset_touch_out',visibleTick=function() return page=='1' and SETTINGS.system.touchControl end},

-- Audio
{name='2',type='slider_fill',pos={0,0},x=340, y=220,w=650, fontSize=40,text=LANG'setting_mainVol', widthLimit=260, disp=TABLE.func_getVal(SETTINGS.system,'mainVol'), code=TABLE.func_setVal(SETTINGS.system,'mainVol')},
Expand Down
2 changes: 2 additions & 0 deletions assets/settings.lua
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ local settings={
-- Handling
asd=120,
asp=20,
adp=20,
ash=26,
softdropSkipAsd=true,

Expand All @@ -45,6 +46,7 @@ local settings={
-- Handling
asd=120,
asp=20,
adp=20,
ash=26,
aHdLock=200,
mHdLock=62,
Expand Down

0 comments on commit b9cf46e

Please sign in to comment.