keys - cwtickle/danoniplus-docs GitHub Wiki

English | Japanese

| < Special characters in chart data | Key type's specification | Key code used in "KeyCtrl" attribute > |

Key type's specification

  • Each key type in Dancing Onigiri "CW Edition" consists of a combination of a key type and a key pattern. The following indicates that the pattern is the 1st (0th) of 11key.
pos11_0
  • Multiple patterns can be associated with the same key type. Each pattern can be set individually, as if each were an independent key type.
Settings Meaning Details
keyNameX Key type's Name Name of the key type. If unspecified, it will be X.
minWidthX Minimum width The minimum width in pixels that the corresponding key will reserve. Default is 600px.
keyCtrlX_Y Key configuration Specify the key code or key name corresponding to each step. It is represented as a multidimensional array. Multiple keys can be assigned to the same step.
charaX_Y Read variable prefix Represents a string that precedes _data, such as left_data, down_data, etc.
colorX_Y Arrow color assignment Assign the color code described in "setColor" in the chart data. Normally, 0 to 4 are available, and the color corresponding to the number in the "setColor" array is assigned as the initial color.
stepRtnX_Y Angle/AA Type Indicates how many degrees the rotated arrow should be placed with respect to the left-facing arrow. Or, specify the target ASCII art (AA). There are six types of AA that can be specified: "onigiri", "giko", "iyo", "c", "morara", and "monar".
posX_Y Step zone position A number indicating where the step zones would be placed if they were equally spaced. Assign numbers so that they are left to right and top to bottom. See image above. If you do not want to place them equally spaced, you can skip the number as in the example above to avoid placing step zones.
divX_Y Upper fold position Specifies the position to wrap the top of the step zone. Use the value of posX_Y to specify the target. Specify the number that will be the first lower step. If there is no upper/lower bracketing, specify the last number +1.
divMaxX_Y Bottom fold position Specifies the final position of the lower step zone; conforms to the value of posX_Y as well as divX_Y. If not specified, specify the last number +1.
blankX_Y Step zone interval (X coordinate) Specify the step zone spacing. If not specified, it is normally 55px.
scaleX_Y Expansion and reduction of arrow drawing area Specifies the magnification factor of the arrow drawing area. If not specified, it is 1x.
shuffleX_Y Shuffle group When Mirror, Random, or S-Random is used, the same groups are swapped with each other. The same number will be in the same group.
scrollDirX_Y Scroll Extension Direction Setting Direction setting for each arrow. 1" flows from bottom to top, "-1" flows from top to bottom.
assistPosX_Y Set keys to assist Assist setting for each arrow. "1" is for auto play, "0" is not for auto play.
keyGroupX_Y Designation of partial key types assignment destination Specifies how partial key types (key labels) are assigned to each arrow. Default is all 0 (same group).
keyGroupOrderX_Y Display order control for partial key groups Specifies how the key groups defined in keyGroupX are displayed on the key config side. Default is to show all.
transKeyX_Y Set another key mode If the specified key pattern is for a different key, specify the name of that key. If it is the same key, it is not specified. If specified, the key specified here will be displayed as additional information on the results screen. Also, high scores and key configurations are not saved while playing in alternate key mode.
flatModeX_Y Flat mode If true, the step zone is always flattened. Default is false (no flattening).
keyRetryX_Y Retry key Specify the key code of the key on which retries can be performed in the playing shortcut. Default is 8 (BackSpace).
keyTitleBackX_Y Title-back key Specify the key code of the key on which the title back can be performed in the playing shortcut. Default is 46 (Delete).

Example (11key case)

  • Let's look specifically at an example of pattern 0 (first) of 11key.
  • The set values look like this. The order is left to right, top to bottom.
Settings Value
keyCtrl11_0 [ ["Left"], ["Down"], ["Up"], ["Right"], ["S"], ["D"], ["F"], ["Space"], ["J"], ["K"], ["L"] ]
  • Specify the corresponding key name. The name here is the value according to the key code used in the "KeyCtrl" attribute. The reason for the two-dimensional array is to allow multiple keys to be assigned to a single key. In the current version, at least two keys can be assigned to one key, even if not specified.
Settings Value
chara11_0 ["sleft", "sdown", "sup", "sright", "left", "leftdia", "down", "space", "up", "rightdia", "right"]
  • The name of the chart data for each lane. This setting is also used when using the editor.
  • In this case, you can load the score format as follows. (numbers are omitted)
|sleft_data=...|sdown_data=...|...|right_data=...|
Settings Value
color11_0 [3, 3, 3, 3, 0, 1, 0, 2, 0, 1, 0]
setColor #cc99ff, #ffccff, #ffffff, #ffff99, #ff9966
  • In the top image, the upper row is 3 (=#ffff99, yellow), the The odd-numbered ones in the bottom row are 0 (=#cc99ff, purple), the even-numbered ones are 1 (=#ffccff, pink), and the Onigiris are 2 (=#ffffff, white).
Settings Value
stepRtn11_0 [0, -90, 90, 180, 0, -45, -90, "onigiri", 90, 135, 180]
  • In the top image, the left arrow is the reference. -90° is the down arrow, 90° is the up arrow, and 180° is the right arrow. The "onigiri" part is an onigiri, rice ball.
Settings Value
pos11_0 [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
div11_0 6
  • The numbers are in yellow letters in the top image. The numbers wrap from where it says 6 to the bottom. 0 and 1 are not specified, so no arrows are shown.

Custom key types

  • If you want to publish your own key type, you need to describe it in the chart data.
  • The basic idea is exactly the same as above, but the description method is slightly different.
  • If necessary, please also refer to custom key types template.

keyExtraList

List of key types to add. Since ver 31.3.1, if there is a key assignment setting (keyCtrlX), the key is automatically added, so it is basically unnecessary.

|keyExtraList=6|

keyNameX, minWidthX

  • No delimiter. Specify concrete values as they are.

appendX

  • Specify true to use the notation to append the key pattern to an regular key types.
  • This is not normally used for custom key types.
  • See also "About setting pattern appending for regular key types" below.

colorX, charaX, stepRtnX, keyCtrlX, blankX, shuffleX, keyGroupX, keyGroupOrderX, flatModeX

  • Each of them corresponds to colorX_Y, charaX_Y, stepRtnX_Y, keyCtrlX_Y, blankX_Y, shuffleX_Y, keyGroupX_Y, keyGroupOrderX_Y and flatModeX_Y.
  • If there are multiple key patterns, separate them with "$".
  • In the case of keyCtrl, the alternate key designations are separated by a slash (/).
  • In the case of "keyGroup", use a slash (/) to separate partial key types if you want them to belong to more than one subkey type.
  • The name used for the partial key types (key label) specified in "keyGroup" can be used as the key label name when the key changes.
|keyGroupTr=5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,12,12,12,12,12,12,12,12|
|keyGroupOrderTr=5,7i,11,11L,11W,12|

Specify multiple patterns for colorX, shuffleX and stepRtnX

  • Multiple patterns can be created with the same key pattern separated by a slash (/).
|shuffle8i=1,1,1,2,0,0,0,0/1,1,1,1,0,0,0,0|  <- Slash to pluralize
|shuffle8i=1,1,1,2,0,0,0,0/1,1,1,1,0,0,0,0$1,1,1,2,0,0,0,0/1,1,1,1,0,0,0,0| <- Pluralization & specify for each key pattern ("$" delimited)
|shuffle8i=1,1,1,2,0,0,0,0/1,1,1,1,0,0,0,0$8i_0| <- Multiple & specify for each key pattern ("$" delimited, abbreviation spec)
|shuffle10p=$$11i_0$11i_1| <- The first and second are all for the same shuffle group, the third and fourth are inherited from 11ikey's settings
  • The following partial abbreviations can also be specified.
|shuffle8i=8_0/0,0,0,2,0,0,0,3|
// Shuffle group1: Refer to 8key group 1
// Shuffle group2: Apply specified pattern (0,0,0,2,0,0,0,0,3)

|color11j=2,0,0,0,0,2,3,3,3,3,2/11_0/11W_0$11j_0/11L_0|
// Key Pattern1:
//      Color group 1: Apply specified pattern (2,0,0,0,0,2,3,3,3,3,2)
//      Color group 2: Refer to 11key group 1
//      Color group 3: Refer to 11Wkey group 1
// Key Pattern2:
//      Color group 1~3: Referenced from group 1 of 11jkey defined earlier
//      Color group 4: Refer to 11Lkey group 1

divX

  • This format specifies "divX_Y" and "divMaxX_Y" as a set. Specify "divX_Y", "divMaxX_Y" in this order, separated by commas.
  • If omitted, the maximum value of "posX" is applied. If there are multiple key patterns, separate them with "$".
  • Partial omission can be specified for each pattern.
|div11f=$$6$|  // Apply the maximum value of posX + 1 for the 1st, 2nd, and 4th, and 6 for the 3rd.

scrollX, assistX

  • Two colons are connected to each other so that the first colon is the name and the second colon is the setting for each arrow.
  • To add more settings, separate them with a slash (/).
  • If there are multiple key patterns, separate them with "$".
Specified name with custom key Variable name in normal key
scrollX scrollDirX_Y
assistX assistPosX_Y

Examples of Use (Normal custom key types)

Settings How to specify
keyNameX keyName6=6j
minWidthX minWidth6=500
keyCtrlX keyCtrl6=K,O,L,P,Semicolon,Space$K,O,L,P,Semicolon,Space
charaX chara6=arrowA,arrowB,arrowC,arrowD,arrowE,arrowF$arrowA,arrowB,arrowC,arrowD,arrowE,arrowF
colorX color6=0,1,0,1,0,2$0,1,0,1,0,2
divX div6=6$3
stepRtnX stepRtn6=0,45,-90,135,180,onigiri$0,45,-90,135,180,onigiri
blankX blank6=60$60
scaleX scale6=1$0.8
shuffleX shuffle6=0,0,0,0,0,1$0,0,0,0,0,1
scrollX scroll6=Cross::1,1,-1,-1,1,1/Split::1,1,1,-1,-1,-1/Alternate::1,-1,1,-1,1,-1$Cross::1,1,-1,-1,1,1/Split::1,1,1,-1,-1,-1/Alternate::1,-1,1,-1,1,-1
assistX assist6=Onigiri::0,0,0,0,0,1/AA::0,0,0,1,1,1$...
transKeyX transKey6=$6i
keyRetryX keyRetry6=9
keyTitleBackX keyTitleBack6=46

Examples of Use (key change types)

  • Here we use a newline delimiter to make it easier to read. The newline delimiter can be used instead of the "$" delimiter.
  • Within the same key type group, the description must be from left to right and from top to bottom.
  • The description of posX (here posTr) can contain the same number, because several partial key types are superimposed. Comparing charaX, posX and keyGroupX as a set shows which key label corresponds to which position.
Examples of Use
|minWidthTr=800|

|charaTr=
aleft,adown,aup,aright,aspace,bleft,bleftdia,bdown,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright
aspace,aleft,adown,aup,aright,bleft,bleftdia,bdown,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright
aleft,adown,aspace,aup,aright,bleft,bleftdia,bdown,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright
aleft,adown,aup,aright,aspace,blefta,bleft,bleftdia,bdown,bleftb,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright
|
|colorTr=
4,4,4,4,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,2,3,3,2,3,3,3,3,0,1,0,2,0,1,0,2,0,1,0,1,0,1,0
2,4,4,4,4,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,2,3,3,2,3,3,3,3,0,1,0,2,0,1,0,2,0,1,0,1,0,1,0
4,4,2,4,4,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,2,3,3,2,3,3,3,3,0,1,0,2,0,1,0,2,0,1,0,1,0,1,0
3,3,3,3,2,0,1,0,1,2,1,0,1,0,4,4,4,4,3,3,3,3,2,3,3,2,1,0,1,0,3,3,3,3,0,1,0,1,0,1,0,2,0,1,0
|
|stepRtnTr=
0,-90,90,180,onigiri,giko,onigiri,iyo,0,-90,90,180,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,0,-90,90,180,0,-45,-90,onigiri,90,135,180,onigiri,0,30,60,90,120,150,180
onigiri,0,-90,90,180,giko,onigiri,iyo,0,-90,90,180,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,0,-90,90,180,0,-45,-90,onigiri,90,135,180,onigiri,0,30,60,90,120,150,180
0,-90,onigiri,90,180,giko,onigiri,iyo,0,-90,90,180,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,0,-90,90,180,0,-45,-90,onigiri,90,135,180,onigiri,0,30,60,90,120,150,180
0,45,135,180,giko,90,120,150,180,onigiri,0,30,60,90,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,45,0,-45,-90,giko,onigiri,iyo,c,90,135,180,225,0,-45,-90,onigiri,90,135,180
|
|posTr=
1,2,3,4,5,0,1,2,3,4,5,6,2.5,3.5,4.5,5.5,0.5,1.5,2.5,3.5,0.5,2.5,3.5,5.5,2,3,4,5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,7,8,9,10,11,12,13,14
1,2,3,4,5,0,1,2,3,4,5,6,2.5,3.5,4.5,5.5,0.5,1.5,2.5,3.5,0.5,2.5,3.5,5.5,2,3,4,5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,7,8,9,10,11,12,13,14
1,2,3,4,5,0,1,2,3,4,5,6,2.5,3.5,4.5,5.5,0.5,1.5,2.5,3.5,0.5,2.5,3.5,5.5,2,3,4,5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,7,8,9,10,11,12,13,14
3.5,4.5,5.5,6.5,7.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,3,4,5,6,5,6,7,8,3,5,6,8,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18
|
|keyGroupTr=
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,12,12,12,12,12,12,12,12
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,12,12,12,12,12,12,12,12
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,12,12,12,12,12,12,12,12
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,12,12,12,12,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W
|
|divTr=7$7$7$12,19|
|keyCtrlTr=
Left,Down,Up,Right,Space,Z,X,C,Left,Down,Up,Right,Left,Down,Up,Right,W,E,D3/D4,R,D1/D2,T,Y,D0/Minus,U,I,D8/D9/0,O,S,D,F,Space,J,K,L,Space,N,J,M,K,Comma,L,Period
Space,Left,Down,Up,Right,Z,X,C,Left,Down,Up,Right,Left,Down,Up,Right,W,E,D3/D4,R,D1/D2,T,Y,D0/Minus,U,I,D8/D9/0,O,S,D,F,Space,J,K,L,Space,N,J,M,K,Comma,L,Period
D,F,Space,J,K,Z,X,C,Left,Down,Up,Right,Left,Down,Up,Right,W,E,D3/D4,R,D1/D2,T,Y,D0/Minus,U,I,D8/D9/0,O,S,D,F,Space,J,K,L,Space,N,J,M,K,Comma,L,Period
F1,F2,F3,F4,Enter/ShiftRight,D4,R,F,V,Space,N,J,I,D9,W,E,D3/D4,R,Left,Down,Up,Right,D1/D2,T,Y,D0/Minus,F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12,S,D,F,Space,J,K,L
|
|shuffleTr=
0,0,0,0,1,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,9,8,8,8,10,11,11,11,11,11,11,11/0,0,0,0,0,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7
1,0,0,0,0,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,9,8,8,8,10,11,11,11,11,11,11,11/0,0,0,0,0,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7
0,0,1,0,0,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,9,8,8,8,10,11,11,11,11,11,11,11/0,0,0,0,0,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7
0,0,0,0,1,2,2,2,2,3,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,11,10,10,10/0,0,0,0,0,2,2,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8
|
|scrollTr=
Reverse::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Cross::1,-1,-1,1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
Reverse::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Cross::1,1,-1,-1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
Reverse::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Cross::1,-1,-1,-1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
---::1,1,1,1,1,1,1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Reverse::-1,-1,-1,-1,-1,1,1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1/Cross::1,-1,-1,1,1,-1,-1,1,1,1,1,1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1
|
|transKeyTr=$$$Tr2|

Abbreviation spec in Custom key types

  • You can copy the entire designation of another pattern only if the settings are exactly the same. Specify in the format (target key types)_(pattern number - 1).
  • However, blank and transKey are not supported for abbreviation spec. They must be specified as before.
  • In the example below, 6_0 represents bringing the same settings as pattern 1 of 6key.
|keyCtrl6=K,O,L,P,Semicolon,Space$6_0|
|chara6=arrowA,arrowB,arrowC,arrowD,arrowE,arrowF$6_0|
|color6=0,1,0,1,0,2$6_0|
|div6=6$3|
|stepRtn6=0,45,-90,135,180,onigiri$6_0|
  • If written without abbreviation, it is equivalent to the following.
|keyCtrl6=K,O,L,P,Semicolon,Space$K,O,L,P,Semicolon,Space|
|chara6=arrowA,arrowB,arrowC,arrowD,arrowE,arrowF$arrowA,arrowB,arrowC,arrowD,arrowE,arrowF|
|color6=0,1,0,1,0,2$0,1,0,1,0,2|
|div6=6$3|
|stepRtn6=0,45,-90,135,180,onigiri$0,45,-90,135,180,onigiri|

About setting up additional patterns for regular key types

  • It is possible to add a key pattern to regular key types while maintaining its settings. The key pattern description for regular key types can be omitted by specifying |appendX=true| (where X is an regular key types).
  • For abbreviation specification, specify like 12_0, 12_1 when copying from an existing pattern, and specify with parentheses like 12_(0), 12_(1) when copying from an added pattern.
  • See Overwrite key pattern of regular key types for details.

Other abbreviation designations (ver 35.4.0 or later)

(start number)...(end number)

  • Automatically generates a string counting up from start to end with the notation (start number)...(end number). Decimals can be used for the starting number. You can also use (start number)... (+added number) will automatically generate a string that counts up from the start to the end plus the added number.
|pos9j=0...4,6...9| <-> |pos9j=0,1,2,3,4,6,7,8,9| 

|pos20=0...3,5...+3,10...+11$|
<->
|pos20=0...3,5...8,10...21$|
<->
|pos20=0,1,2,3,5,6,7,8,10,11,12,13,14,15,16,17,18,19,20,21$|
<->
|pos20=0,1,2,3,5,6,7,8,10,11,12,13,14,15,16,17,18,19,20,21$0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19|

(target)@:(number of repetitions)

  • You can repeat the target character with the notation (target)@:(number of repetitions). You can also repeat target 1-3 with (target1!target2!target3)@:(number of repetitions).
|color20=4@:4,3@:4,4@:4,8_2_0$20_0|
-> |color20=4,4,4,4,3,3,3,3,4,4,4,4,8_2_0$20_0|
-> |color20=4,4,4,4,3,3,3,3,4,4,4,4,2,0,1,0,1,0,1,0$20_0|
-> |color20=4,4,4,4,3,3,3,3,4,4,4,4,2,0,1,0,1,0,1,0$4,4,4,4,3,3,3,3,4,4,4,4,2,0,1,0,1,0,1,0|

|stepRtnXX=onigiri@3|
-> |stepRtnXX=onigiri,onigiri,onigiri|

|stepRtnXX=0!-90!90!180@:3|
-> |stepRtnXX=0,-90,90,180,0,-90,90,180,0,-90,90,180|

Partial Key types Definitions

  • In addition to the normal key definitions, there are partial key definitions for custom key definitions.
    This allows for a concise description.
g_keyObj = {

    // Frequent score data name pattern
    // Convert to chara4A, chara4A_a, chara4A_b, ...
    ptchara4A: [`left`, `down`, `up`, `right`],
    ptchara3S: [`left`, `leftdia`, `down`],
    ptchara3J: [`up`, `rightdia`, `right`],
    ptchara7: [`left`, `leftdia`, `down`, `space`, `up`, `rightdia`, `right`],

    // Definition of frequent partial Shape Group
    stepRtn4A: [0, -90, 90, 180],
    stepRtn3S: [0, -45, -90],
    stepRtn3J: [90, 135, 180],
    stepRtn3Z: [`giko`, `onigiri`, `iyo`],

    // Definition of frequent partial key configurations
    keyCtrl4A: [[`Left`], [`Down`], [`Up`], [`Right`]],
    keyCtrl4S: [[`S`], [`D`], [`E`, `R`], [`F`]],
    keyCtrl4J: [[`J`], [`K`], [`I`, `O`], [`L`]],
    keyCtrl4W: [[`W`], [`E`], [`D3`, `D4`], [`R`]],
    keyCtrl4U: [[`U`], [`I`], [`D8`, `D9`], [`O`]],
    keyCtrl3S: [[`S`], [`D`], [`F`]],
    keyCtrl3J: [[`J`], [`K`], [`L`]],
    keyCtrl3W: [[`W`], [`E`], [`R`]],
    keyCtrl3Z: [[`Z`], [`X`], [`C`]],
};
  • Example
|keyCtrl9A=4S,Space,4J|     // Same as S, D, E/R, F, Space, J, K, I/O, L
|chara9A=4A,space,s>4A|     // Same as left, down, up, right, space, sleft, sdown, sup, sright
|stepRtn9A=4A,onigiri,4A|   // Same as 0, -90, 90, 180, onigiri, 0, -90, 90, 180

|keyCtrl18=
4W,Space,4A,3S,3Z,3J
4W,Space,4A,3S,V,B,N,3J
4W,Space,4U,3S,3Z,3J
4W,Space,4U,3S,V,B,N,3J
|
|chara18=4A_s,space,4A_a,3S,gor,oni,iyo,3J$18_0$18_0$18_0|
|stepRtn18=9A_0,3S,3Z,3J$18_0$18_0$18_0|

->
|keyCtrl18=
W,E,D3/D4,R,Space,Left,Down,Up,Right,S,D,F,Z,X,C,J,K,L
W,E,D3/D4,R,Space,Left,Down,Up,Right,S,D,F,V,B,N,J,K,L
W,E,D3/D4,R,Space,U,I,D8/D9,O,S,D,F,Z,X,C,J,K,L
W,E,D3/D4,R,Space,U,I,D8/D9,O,S,D,F,V,B,N,J,K,L|
|chara18=sleft,sdown,sup,sright,space,aleft,adown,aup,aright,left,leftdia,down,gor,oni,iyo,up,rightdia,right$18_0$18_0$18_0|
|stepRtn18=9A_0,0,-45,-90,giko,onigiri,iyo,90,135,180$18_0$18_0$18_0|
  • sleft, sleftdia, sdown, sspace, sup, srightdia, sright -> |charaX=s>7_0|
  • tleft, tleftdia, tdown, tup, trightdia, tright -> |charaX=t>3S,t>3J|

About illegal characters in custom key types definition

  • There are some settings that cannot be defined due to the implementation of abbreviated specifications. Please do not use these names as they will have different meanings.

charaX, stepRtnX

  • 4A, 3S, 3J, 7, 4A_x, 3S_x, 3J_x, 7_x
    * _x represents _a, _b, ... _z
  • (Number of keys)_(Pattern number)
    * Example: 5_0, 5_1, 7_0, 7i_0, ..., 23_0

Related Pages

Changelog

Version Change details
v35.4.0 - Added setting (flatModeX) to force flattening of step zones.
- Changed some abbreviation extension setting specifications for charaX.
v35.3.0 - Extended abbreviation specification of posX, colorX, shuffleX, stepRtnX to other settings.
v35.2.1 - Added partial key types definitions
- Added abbreviation specifications for posX, colorX, shuffleX, stepRtnX.
v35.1.0 - Added partial key display order control (keyGroupOrderX).
v33.4.0 - Wrap position setting (divX) and display position setting (posX) are now supported in relative position notation at the bottom.
v32.0.0 - Extended code abbreviation names that can be defined in key assignment settings (keyCtrlX).
- Corresponds to partial abbreviation in the same pattern.
- Support for reverse abbreviation (using - instead of -1) in extended scroll settings (scrollX)
- Supports the abbreviations blankX, scaleX, keyRetryX, keyTitleBackX, and transKeyX.
v31.4.0 - Supported KeyboardEvent.code and abbreviation for key assignment setting (keyCtrlX).
v31.3.1 - Custom key list (keyExtraList) specification is no longer required in principle.
- Changed "charaX" prefix of read variable to optional.
v31.0.0 - Support for multiple definition of custom key types (stepRtnX) with the same key pattern.
v30.5.0 - Changed so that relative pattern numbers can be specified as abbreviations when appending key patterns to existing key types.
- Supports partial abbreviation of "scrollX" and "assistX" in custom key definitions.
v30.4.0 - Supports partial abbreviation of "colorX" and "shuffleX" in custom key definitions.
v30.3.0 - Supports partial empty of "divX" and "shuffleX" in custom key definitions.
v30.0.1 - Added partial key assignment setting (keyGroupX) for each arrow.
v28.2.0 - Support for multiple definition of custom key types (colorX,shuffleX) with the same key pattern.
v27.6.0 - Added key pattern append setting (appendX)
v27.5.0 - Some definition of custom key types (colorX, charaX, stepRtnX, keyCtrlX, posX, shuffleX, scrollX, assistX) support newline delimitation as an alternative to "$" delimitation.
v27.1.0 - Added minimum width by key types (minWidthX).
v26.5.0 - Support decimal point for stepzone position (posX) in definition of custom key types.
v26.2.0 - Optional keyExtraList items only for definition of custom key types by work.
v24.3.0 - Abolished scroll extension and key assist name settings (scrollNameX, assistNameX)
- Added another pattern abbreviation spec in custom key settings.
v23.4.0 - Added key number name setting (keyNameX).
v15.0.0 - Added key assist settings (assistNameX, assistPosX_Y).
v12.1.0 - Added a setting (scaleX_Y) to reduce the size of the arrow drawing area.
v10.2.1 - Added scroll extension settings (scrollNameX, scrollDirX_Y).
v5.11.0 - Added shortcut key settings (keyRetryX_Y, keyTtitleBackX_Y) for title back and retry.
v4.8.0 - Added a setting (transKeyX_Y) for a mode that can be played as a separate key
v3.1.0 - Added mirror and random settings (shuffleX_Y)
v1.0.0 - Initially implemented

| < Special characters in chart data | Key type's specification | Key code used in "KeyCtrl" attribute > |

⚠️ **GitHub.com Fallback** ⚠️