From 40203bd9fb1ba4373a6d486158e063ca77f20466 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 07:10:43 +0000 Subject: [PATCH 01/11] =?UTF-8?q?=EC=8B=9C=EC=9E=91=20=E2=80=94=20?= =?UTF-8?q?=ED=8C=A8=ED=84=B4=20=EC=97=B0=EA=B5=AC=2096=ED=8C=90=20?= =?UTF-8?q?=ED=95=9C=20=EB=B0=94=ED=80=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 From 0a5ee20d13ab64ce426265a7c3fdc6cbba601f0c Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 07:38:23 +0000 Subject: [PATCH 02/11] =?UTF-8?q?Kennick=2096=ED=8C=90=20=EC=B2=AB=20?= =?UTF-8?q?=ED=8C=90:=20=EB=8A=91=EB=8C=80=EA=B0=80=20=EB=90=9C=20?= =?UTF-8?q?=EA=B0=9C=EC=A7=80=EA=B8=B0=EA=B0=80=20=EB=8D=AE=EC=B3=90=20?= =?UTF-8?q?=ED=95=A0=ED=80=B4=EA=B3=A0=20=EB=AC=B8=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/README.md | 1 + incoming/pattern-study/craft/kennick/brief.md | 42 + incoming/pattern-study/craft/kennick/log.md | 10 + .../craft/kennick/silhouettes-96.png | Bin 0 -> 7349 bytes incoming/pattern-study/patterns/kennick.js | 848 ++++++++++++++++++ 5 files changed, 901 insertions(+) create mode 100644 incoming/pattern-study/craft/kennick/brief.md create mode 100644 incoming/pattern-study/craft/kennick/log.md create mode 100644 incoming/pattern-study/craft/kennick/silhouettes-96.png create mode 100644 incoming/pattern-study/patterns/kennick.js diff --git a/incoming/pattern-study/README.md b/incoming/pattern-study/README.md index e2c25d64..f1aaedca 100644 --- a/incoming/pattern-study/README.md +++ b/incoming/pattern-study/README.md @@ -20,6 +20,7 @@ | [Rowel](patterns/rowel.js) | 작품 1 | 사막 철길을 백 년째 혼자 걷는 태엽 보안관 로봇이 받침 위에 한 손 엄지는 총 벨트에 걸고, 터키석 손잡이의 리볼버를 총구가 하늘로 가게 챙 넓은 모자 옆에 세워 든 채 숨 쉬고 눈 덮개를 깜빡여요. | | [Tollard](patterns/tollard.js) | 작품 2 | 무너진 종탑 계단을 백 년째 지키는 저주받은 갑옷 기사가 종 모양 청동 투구 아래로 미늘창을 세워 들고 숨 쉬다가, 머리 위로 치켜든 창을 허리 높이로 길게 내지르고 다시 머리 뒤로 젖혀 앞 바닥을 내려찍어요. | | [Ardith](patterns/ardith.js) | 작품 2 | 마을 묘지기 처녀가 이끼 녹색 두건 망토 차림으로 날개 달린 멧돼지 창을 세워 들고 숨 쉬다가, 창을 수평으로 내뻗어 돌진해 찌르고, 한 박 쉰 뒤 창을 머리 위로 들어 앞 땅에 꽂아 눌러요. | +| [Kennick](patterns/kennick.js) | 작품 2 | 백작의 사냥개 우리를 지키다 늑대가 된 개지기가 끊어진 쇠 목줄을 단 채 몸을 앞으로 숙이고 숨 쉬다가, 두 앞발을 어깨 뒤로 젖혔다 몸을 던져 발톱으로 패널 끝까지 할퀴고, 한 박 쉰 뒤 머리를 어깨 밑으로 당겼다 턱을 벌려 앞을 물어요. | ## 추려 보기 diff --git a/incoming/pattern-study/craft/kennick/brief.md b/incoming/pattern-study/craft/kennick/brief.md new file mode 100644 index 00000000..e6798950 --- /dev/null +++ b/incoming/pattern-study/craft/kennick/brief.md @@ -0,0 +1,42 @@ +slug: kennick +작품: 2 + +# Kennick + +백작의 사냥개 우리를 지키던 개지기예요. 사냥개들을 굶긴 벌로 늑대가 되었고, 끊어진 쇠 목줄을 목에 단 채 성 지하 사육장 회랑을 몸을 앞으로 숙이고 어슬렁거려요. 주인공 앞에 튀어나와 덮치는 적이에요. + +11월 2일 96판에 작품 2 의 셋째 캐릭터로 시작했어요. 작품 2 의 폴더 둘(tollard, ardith)을 같이 도는 94판과 95판이 맡아서 「자리 고르기」 4번대로 새 캐릭터예요. + +- 역할: 적 +- 성격: 굶주림, 사나움 +- 무기와 공격: 맨손이에요. 두 앞발 끝의 상아색 갈고리 발톱으로 앞(기본은 오른쪽)을 수평으로 할퀴고, 둘째 동작으로 벌린 턱으로 앞을 물어요. +- 시그니처 동작: 덮쳐 할퀴기예요. 뒷발로 바닥을 차며 몸을 앞으로 길게 눕히고 두 앞팔을 나란히 앞으로 내뻗어, 발톱 끝이 패널 앞 끝을 넘어요. 뒷발에서 발톱 끝까지 몸이 사선 하나로 늘어나고, 꼬리와 목 갈기가 한 박 늦게 뒤로 넘쳐요. +- 둘째 동작: 물어뜯기예요. 몸을 낮춰 머리를 어깨 밑으로 당겼다가, 목을 앞으로 내뻗으며 턱을 크게 벌려 앞을 물어요. 앞팔은 뒤로 젖혀 몸 옆에 붙어요. +- 재질과 단: 털 4단(잿빛 청회색, 어두운 단은 보라 쪽이고 밝을수록 푸른 회색 쪽), 살(코, 입 안, 손바닥, 귀 안) 2단(밝을수록 주홍 쪽), 해진 바지 3단(황토, 밝을수록 노랑 쪽), 발톱과 이빨 2단(상아, 밝을수록 노랑 쪽), 쇠 목줄과 사슬 2단(무채색). 눈은 호박색 한 칸이에요. +- 주색과 강조색: 잿빛 청회색 털이 주색, 호박색(눈과 바지)이 강조색이에요. 털은 채도를 낮게 두고, 채도는 바지와 눈에 몰아요. +- 시대 결: 16비트예요. +- 외곽선 길: 가. 배경은 다 끄고, 외곽선은 털의 가장 어두운 단보다 한 단 어두운 청회색이에요. +- 비례: 6등신 안팎이에요. 쉬기 키는 귀 끝에서 발바닥까지 55, 머리는 귀를 빼고 9예요. 몸을 앞으로 숙여 앞발 하나가 늘 무릎 아래로 내려와요. +- 광원: 앞 위(기본 방향이면 오른쪽 위)예요. 머리, 어깨 갈기, 앞팔이 밝고, 꼬리와 뒷다리가 그늘 덩어리예요. +- 동작: 쉬기 말고 둘이에요. 1) 덮쳐 할퀴기(시그니처), 2) 물어뜯기. 쉬기에서는 몸 덩어리는 그대로이고, 숨 1 픽셀과 꼬리 끝만 움직여요. + +노브 넷과 버튼이에요. + +- K1 동작: 범위 [0, 2]. 0 은 덮쳐 할퀴기와 물어뜯기를 차례로, 1 은 덮쳐 할퀴기만, 2 는 물어뜯기만 쉬기 사이에 되풀이해요. +- K2 빠르기: 범위 [0.5, 3]. 빠르기는 K2 ÷ 2 이고 2 가 그린 그대로예요. +- K3 팔레트 바꾸기: 손으로 만든 네 벌이에요. 0 잿빛 털에 황토 바지(흔한 적), 1/4 검은 털에 잿빛 바지, 1/2 붉은 털에 검보라 바지(센 적), 3/4 흰 털에 쪽빛 바지. +- K4 방향: 0.5 아래는 오른쪽을 보고, 0.5 부터는 좌우로 뒤집혀 왼쪽을 봐요. +- 버튼: 없어요. + +닮으면 안 되는 캐릭터 셋과, 각각과 다른 점 둘이에요. + +- 악마성 시리즈에서 소머리 괴물과 짝지어 나오는 늑대인간 적: 두 발로 곧게 서지 않고 몸을 앞으로 길게 숙여 앞발이 무릎 아래까지 내려와요. 맨몸이 아니라 끊어진 쇠 목줄과 해진 황토 바지 차림이에요. +- 악마성 시리즈 64비트 시대의 늑대인간 주인공: 주인공이 아니라 덮쳐 오는 적이에요. 사람 모습으로 돌아오지 않고, 뾰족하게 솟은 큰 꼬리가 실루엣의 한 덩어리예요. +- 대전 격투 게임의 푸른 털 무술가 늑대인간: 쨍한 파랑이 아니라 어두운 잿빛 청회색 털이고 하얀 배털이 없어요. 무술 자세와 무기 없이 엎드린 짐승 자세로 덮쳐요. + +## 형제 캐릭터 + +README 「공들이기」 표의 작품 2 캐릭터 둘이에요. 같이 도는 94판과 95판은 새 캐릭터를 밝히지 않았어요. + +- Tollard(91판, 무너진 종탑을 지키는 종 모양 청동 투구의 저주받은 갑옷 기사): 정체(사람이 아닌 늑대와 갑옷 기사), 무기(맨손 발톱과 이빨, 미늘창), 실루엣(앞으로 숙인 털 짐승에 솟은 꼬리와 곧게 선 갑옷 덩어리), 주색(잿빛 청회색과 핏빛 진홍)이 달라요. 둘 다 적이에요. +- Ardith(92판, 무덤에서 기어 나오는 것을 다시 눕히는 묘지기 처녀): 정체(늑대가 된 개지기와 마을 묘지기), 역할(적과 주인공), 무기(맨손 발톱과 멧돼지 창), 실루엣(숙인 털 짐승과 두건 망토의 가는 몸), 주색(잿빛 청회색과 이끼 녹색)이 달라요. diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md new file mode 100644 index 00000000..50da7db3 --- /dev/null +++ b/incoming/pattern-study/craft/kennick/log.md @@ -0,0 +1,10 @@ +상태: a 깎는 중 + +## 96판 (바퀴 94) · 길 a · 시작 40203bd +- 정지 프레임 t=2 · 노브 [0, 2, 0, 0.06] +- 같이 도는 바퀴: 92바퀴(94판)가 tollard, 93바퀴(95판)가 ardith 를 맡아 「자리 고르기」 4번으로 새 캐릭터. 앞 바퀴 PR 에 따를 글은 없어요(#356 의 MEMBER 글은 작품 2 로 바꾼 일이라 ROUND.md 에 이미 들어감) +- 리그(첫 바퀴만): 안 4 3승 · 안 1 2승 · 안 2 1승 · 안 3 0승 → 길 a 안 4, 길 b 안 1 +- 안 1~4: 구부정하게 선 마른 늑대인간의 한 팔 할퀴기, 어깨 혹이 큰 덩치의 두 팔 밀어 할퀴기, 긴 개지기 코트를 입고 곧게 선 늑대의 손등 쓸기, 몸을 앞으로 숙이고 큰 꼬리를 세운 짐승의 두 팔 덮쳐 할퀴기 +- 리그 판정 말: 안 4 「큰 꼬리와 긴 발톱이 세 단 위계」 · 안 1 「갈기, 머리, 발톱 세 단 위계와 덤비는 기세」 · 안 2 「등 혹과 팔이 한 덩어리로 뭉쳐 발톱이 묻힘」 · 안 3 「쉬기가 긴 옷자락 기둥 하나뿐인 차렷」 +- 만들기: 실루엣의 굵기가 외곽선 한 칸씩 두꺼워져서 몸통 반지름을 0.7 줄이고 팔다리 굵기를 다시 잡음. 머리는 도형으로는 말 머리처럼 읽혀서 손으로 그린 글자 격자 셋(다문 입, 이 드러낸 입, 크게 벌린 입)을 찍음 +- 선 판: 셀 11 · 14색 · 쉬기 키 55(귀 끝 y 9~발바닥 y 63, 외곽선 포함) · 머리 9 · 6.1등신 · 외곽선 L* 20 · 어두운 칠(L* 35 아래) 네 벌 60.5%, 56.1%, 60.5%, 60.5% · 노브 K1 0.03 · K2 0.13 · K3 0.06 · K4 0.16 · 한 프레임 깜빡임 0 · 고아 칸은 발톱 끝 한 칸씩만 남음 diff --git a/incoming/pattern-study/craft/kennick/silhouettes-96.png b/incoming/pattern-study/craft/kennick/silhouettes-96.png new file mode 100644 index 0000000000000000000000000000000000000000..dbf553297013706fb4734316722df37fa83700ca GIT binary patch literal 7349 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 literal 0 HcmV?d00001 diff --git a/incoming/pattern-study/patterns/kennick.js b/incoming/pattern-study/patterns/kennick.js new file mode 100644 index 00000000..9985e1e7 --- /dev/null +++ b/incoming/pattern-study/patterns/kennick.js @@ -0,0 +1,848 @@ +// ===== Patternflow pattern ===== +// Title: Kennick +// Family: pixel +// Idea: A castle-game enemy sprite drawn at two LEDs to the pixel: Kennick, the count's kennel keeper, turned wolf for starving the hounds. He prowls the cellar kennels bent far forward, a snapped iron collar on his neck, ragged ochre breeches on his legs and a tall brush of a tail behind him. He breathes a pixel and the tail tip sways, then he coils with both clawed hands drawn back over his shoulders and throws himself forward, both arms out level so the ivory claws rake past the edge of the panel; after a beat he drops his head under his shoulders and snaps his jaws forward. +// Author: patternflow-lab +// Date: 2026-11-02 +// SPDX-License-Identifier: CC-BY-SA-4.0 +// Lineage: original, pattern round 96 +// Round: 96 +// =============================== +// @matrix 64x128 +// @knobs Action=0..2, Speed=0.5..3, Coat=0..1, Facing=0..1 +// +// Knob 1: Action. 0 plays the pounce and the bite in turn, 1 only the pounce, 2 only the bite, each between rests. +// Knob 2: Speed. Half the knob is the speed: 2 plays the cells as timed, 0.5 at a quarter, 3 at one and a half. +// Knob 3: Coat. Four hand-made palettes on the same pixels: ash fur and ochre breeches below 0.25, black fur and grey breeches from 0.25, red fur and grape breeches (the strong one) from 0.5, white fur and indigo breeches from 0.75. +// Knob 4: Facing. Below 0.5 he faces right; from 0.5 the same cells are mirrored and he faces left. + +const W = 64, H = 128, AW = 32, AH = 64; +// Each cell is the whole sprite on the 32 x 64 art grid, one character per art +// pixel (an art pixel is 2 x 2 LEDs) and "." where the panel stays dark. The +// outline floats on the dark panel: K is a dark blue-grey ring, X the black inner line. +// Materials run light to dark: fur a b c d, skin e f, cloth g h i, claw and tooth j k, +// iron l m. o is the eye and w a glint. x y are the claw streaks of the pounce. +const CELLS = { + idle: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "...................K...K........", + "..................KcK.KbK.......", + ".................KdcKKbbK.......", + ".................KdcbcbbK.......", + "................KdccbcbbaKK.....", + "................KdcccbbbaaaK....", + "................KdccXXbbbaaaK...", + "................KdccocbbbbbaaK..", + "................KdcccccccbbbbK..", + "................KddccccccccccK..", + "............K...KdddcXXXXXXXK...", + ".........KKKaKKKddddddccccccK...", + ".......KKcccaKbbbbddddddddKK....", + "......KcKKddabbcbbmmddKKKK......", + ".....KdcK.KccccccccmllK.........", + "....KddcKKccccccccccllK.........", + "....KddKKdddddddcccXXaK.........", + "...KddcKdddddcddddXbbaaK........", + "...KddcKKKKKdcddddXbbbaK........", + "...KddcK..KccccddddXbbaK........", + "...KddcK..KccccccbbXbbaaK.......", + "..KdddcK.KdddcccccbbbbbaK.......", + "..KdddcK..KdccccccbbbXbaaK......", + "..KdddcK..KdcccccccbbXcbaK......", + "..KdddcK.KdddccccccccKcbaaK.....", + "..KdddcK.KdddccccccccKccbaK.....", + "..KdddcKKdddddccccXXK.KcbaK.....", + "..KdddcKKddddddcccdcK.KcbaK.....", + "..KdddcKXXXXXXddcKdccKKcbaK.....", + "...KddcKXhhhggXdcKddcKKcbaaK....", + "...KddcdXhhhhgXdKKddcKKccbaK....", + "....KdddXXXhhhXXKKddcK.KcbaK....", + "....KdddiXXXihhgK.KdccKKcbaK....", + ".....KKKiiXXihhggKKddcKKcbaK....", + "........KiiiihhhggKdjjKKcjjK....", + "........KiiiiXhhhgKKjjKKcjjK....", + ".........KiiiXhhhggKjjjKKjjjK...", + ".........KiiiXhhhhggKkjjjKjKjK..", + "..........KiiiiihhggKkKKjKjKjK..", + "..........KiiiiXhhhgKjKKjKjKKjK.", + "..........KdiiiXiiigKKjKjKjK.K..", + ".........KdddiiXiciK..KKjKKjK...", + ".........KdddddcccK.....K..K....", + "........KddddKdcccK.............", + ".......KddddKddccK..............", + ".......KdddKKddcK...............", + "......KddddKddddK...............", + "......KdddKKddcK................", + ".......KddcKKdcbK...............", + ".......KddcKKddbK...............", + "........KddK.KdbbK..............", + "........KdddKKddcKK.............", + ".........KdddKKdcccK............", + ".........KdddK.KddK.............", + "..........KKK...KK..............", + ], + idle1: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "...................K...K........", + "..................KcK.KbK.......", + ".................KdcKKbbK.......", + ".................KdcbcbbK.......", + "................KdccbcbbaKK.....", + "................KdcccbbbaaaK....", + "................KdccXXbbbaaaK...", + "................KdccocbbbbbaaK..", + "................KdcccccccbbbbK..", + "................KddccccccccccK..", + "............K...KdddcXXXXXXXK...", + ".........KKKaKKKddddddccccccK...", + "......K.KcccaKbbbbddddddddKK....", + ".....KcK.KddabbcbbmmddKKKK......", + ".....KcK..KccccccccmllK.........", + "....KdcK.KccccccccccllK.........", + "....KdcKKdddddddcccXXaK.........", + "...KddcKdddddcddddXbbaaK........", + "...KddcKKKKKdcddddXbbbaK........", + "...KddcK..KccccddddXbbaK........", + "...KddcK..KccccccbbXbbaaK.......", + "..KdddcK.KdddcccccbbbbbaK.......", + "..KdddcK..KdccccccbbbXbaaK......", + "..KdddcK..KdcccccccbbXcbaK......", + "..KdddcK.KdddccccccccKcbaaK.....", + "..KdddcK.KdddccccccccKccbaK.....", + "..KdddcKKdddddccccXXK.KcbaK.....", + "..KdddcKKddddddcccdcK.KcbaK.....", + "..KdddcKXXXXXXddcKdccKKcbaK.....", + "...KddcKXhhhggXdcKddcKKcbaaK....", + "...KddcdXhhhhgXdKKddcKKccbaK....", + "....KdddXXXhhhXXKKddcK.KcbaK....", + "....KdddiXXXihhgK.KdccKKcbaK....", + ".....KKKiiXXihhggKKddcKKcbaK....", + "........KiiiihhhggKdjjKKcjjK....", + "........KiiiiXhhhgKKjjKKcjjK....", + ".........KiiiXhhhggKjjjKKjjjK...", + ".........KiiiXhhhhggKkjjjKjKjK..", + "..........KiiiiihhggKkKKjKjKjK..", + "..........KiiiiXhhhgKjKKjKjKKjK.", + "..........KdiiiXiiigKKjKjKjK.K..", + ".........KdddiiXiciK..KKjKKjK...", + ".........KdddddcccK.....K..K....", + "........KddddKdcccK.............", + ".......KddddKddccK..............", + ".......KdddKKddcK...............", + "......KddddKddddK...............", + "......KdddKKddcK................", + ".......KddcKKdcbK...............", + ".......KddcKKddbK...............", + "........KddK.KdbbK..............", + "........KdddKKddcKK.............", + ".........KdddKKdcccK............", + ".........KdddK.KddK.............", + "..........KKK...KK..............", + ], + idle2: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "...................K...K........", + "..................KcK.KbK.......", + ".................KdcKKbbK.......", + ".................KdcbcbbK.......", + "................KdccbcbbaKK.....", + "................KdcccbbbaaaK....", + "................KdccXXbbbaaaK...", + "................KdccocbbbbbaaK..", + "................KdcccccccbbbbK..", + "................KddccccccccccK..", + "............K...KdddcXXXXXXXK...", + ".........KKKaKKKddddddccccccK...", + "........KcccaKbbbbddddddddKK....", + ".......KKKddabbcbbmmddKKKK......", + "......KccKKccccccccmllK.........", + ".....KdcKKccccccccccllK.........", + "....KddcKdddddddcccXXaK.........", + "...KdddKdddddcddddXbbaaK........", + "...KddcKKKKKdcddddXbbbaK........", + "...KddcK..KccccddddXbbaK........", + "...KddcK..KccccccbbXbbaaK.......", + "..KdddcK.KdddcccccbbbbbaK.......", + "..KdddcK..KdccccccbbbXbaaK......", + "..KdddcK..KdcccccccbbXcbaK......", + "..KdddcK.KdddccccccccKcbaaK.....", + "..KdddcK.KdddccccccccKccbaK.....", + "..KdddcKKdddddccccXXK.KcbaK.....", + "..KdddcKKddddddcccdcK.KcbaK.....", + "..KdddcKXXXXXXddcKdccKKcbaK.....", + "...KddcKXhhhggXdcKddcKKcbaaK....", + "...KddcdXhhhhgXdKKddcKKccbaK....", + "....KdddXXXhhhXXKKddcK.KcbaK....", + "....KdddiXXXihhgK.KdccKKcbaK....", + ".....KKKiiXXihhggKKddcKKcbaK....", + "........KiiiihhhggKdjjKKcjjK....", + "........KiiiiXhhhgKKjjKKcjjK....", + ".........KiiiXhhhggKjjjKKjjjK...", + ".........KiiiXhhhhggKkjjjKjKjK..", + "..........KiiiiihhggKkKKjKjKjK..", + "..........KiiiiXhhhgKjKKjKjKKjK.", + "..........KdiiiXiiigKKjKjKjK.K..", + ".........KdddiiXiciK..KKjKKjK...", + ".........KdddddcccK.....K..K....", + "........KddddKdcccK.............", + ".......KddddKddccK..............", + ".......KdddKKddcK...............", + "......KddddKddddK...............", + "......KdddKKddcK................", + ".......KddcKKdcbK...............", + ".......KddcKKddbK...............", + "........KddK.KdbbK..............", + "........KdddKKddcKK.............", + ".........KdddKKdcccK............", + ".........KdddK.KddK.............", + "..........KKK...KK..............", + ], + ready1: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "...................K...K........", + "..................KcK.KbK.......", + ".................KdcKKbbK.......", + ".................KdcbcbbK.......", + "................KdccbcbbaKK.....", + "................KdcccbbbaaaK....", + "................KdccXXbbbaaaK...", + "................KdccocbbbbbaaK..", + "................KdcccccccbbbXK..", + ".........KKK..KKKddcccccXXXXXK..", + "........KccaKKaaadddccffjfffjK..", + "........KddaKbbbbdddddXXXccccK..", + ".......KcKdaccccccddddddddKKK...", + "......KccKcjccccccmmddKKKK......", + ".....KddKjcjcddcccccllK.........", + "....KddjjjjjddddccccllK.........", + "...KjddcjkkjdddddXXXKlK.........", + "....KddcjkkjccddbbbXllK.........", + "...KdddcjXXjcccXbbbXccK.........", + "...KddddddXXXccXbbbXKK..........", + "...KddcKddddXXcbbbbbK...........", + "..KdddcKKKddccccbbbbK...........", + "..KdddcK.KdddcccccbbK...........", + "..KdddcKKddddcXXccbbK...........", + "..KdddcKKddddccccccK............", + "..KdddcKKdddddcccccK............", + "..KdddcKddXXXddccKK.............", + "..KdddcKddhhXdddK...............", + "...KddccXXhhhhbbK...............", + "....KdddXXhhhhggK...............", + "....KdddXXXhhhggK...............", + ".....KKKXXXXhhhggK..............", + "........KiiiXihhgK..............", + "........KiiiXihhggK.............", + ".........KiiiihhhggK............", + ".........KiiiiihhhggK...........", + "..........KiiiiXhhggK...........", + "..........KiiiiXihhgK...........", + "..........KdiiiXiiigK...........", + ".........KdddiiXiciK............", + "........KddddKccccK.............", + "........KdddddccccK.............", + ".......KddddKddccK..............", + "......KddddKdddcK...............", + "......KdddKKdddK................", + "......KdddcKdddbK...............", + ".......KddcKKddbK...............", + "........KddK.KdbbK..............", + "........KdddKKddcKK.............", + ".........KdddKKdcccK............", + ".........KdddK.KddK.............", + "..........KKK...KK..............", + ], + tele1: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + ".........K........K...K.........", + "......K.KjK......KcK.KbK........", + "....KKjKjK......KdcKKbbK........", + "...KjKjKjK......KdcbcbbK........", + "...KjjKjjK.....KdccbcbbaKK......", + "...KKKkkjK.....KdcccbbbaaaK.....", + ".KKjKjkkjK.....KdccXXbbbaaaK....", + "KjKjKjXkjaK....KdccocbbbbbaaK...", + ".KkjKjXcbaK...KKdcccccccbbbXK...", + ".KkKkjKcbaaKKKaaddcccccXXXXXK...", + "..KkkjKccXXKbbbbdddccffjfffjK...", + "...KkjcKcXXbbcbbdddddXXXccccK...", + "...KddcdcXXccccccddddddddKKK....", + "...KdddddXXXXXcccmmddKKKK.......", + "....KdddXXXbbXcccccllK..........", + "....KdddXXXbbbbXXccllK..........", + "....KddcddXXXbbbXXcKlK..........", + "...KdddcKdddccbbbXcclK..........", + "...KdddKKccdccXXXbddK...........", + "...KddcKdddcccccbbbK............", + "..KdddcKKKdccccccbbK............", + "..KdddcKKddccccccbbK............", + "..KdddcKKdddcccccbcK............", + "..KdddcKdddddccccdcK............", + "..KdddcKddddddcccdK.............", + "..KdddcKdXXXXdccKK..............", + "..KdddcXXhhggdbbK...............", + "...KddcXXhhhgggK................", + "...KdddXXhhhhggK................", + "....KddXXXhhhhggK...............", + ".....KKKiXXiihhggK..............", + ".......KiiiiihhhggK.............", + "........KiiiihhhhgKK............", + "........KiiiiihhhgggK...........", + ".........KiiiiihhhggK...........", + "..........KiiihXihhgK...........", + ".........KdiiihXiiigK...........", + ".........KdiiicciciK............", + "........KddddKccccK.............", + ".......KddddKdcccK..............", + "......KddddKKddccK..............", + "......KdddKKdddcK...............", + "......KdddKKdddbK...............", + "......KdddK.KddbK...............", + ".......KdddKKddbbK..............", + "........KddKKKddcKK.............", + "........KddddKKdcccK............", + ".........KddK..KddK.............", + "..........KK....KK..............", + ], + hit1: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "...................K...K........", + "..................KcK.KbK.......", + ".................KdcKKbbK.......", + ".................KdcbcbbK.......", + "................KdccbcbbaKK.....", + "................KdcccbbbaaaK....", + "................KdccXXbbbaaaK...", + "..........K.....KdccocbbbbbaaK..", + ".........KcK..K.KdcccccccbbbXK..", + "........KccKKKaKKddcccccXXXXXK..", + "......KKccKcccaKKdddccffjfffjK..", + ".....KddccKKddaKddddddXXXccccKK.", + ".....KddcK..KcaKddddddddddKKKjjK", + "....KdddcK.KccadddmmddXdcccjjKKK", + "....KddcK.KddccKdddmdlXdddkkjjjj", + "...KdddcKKddddcKdddddlXdddddkkkK", + "...KdddcK.KKKKabbddddlcKKKKKKKKj", + "...KdddK....KaabbbbbblcccK.....K", + "...KddcK...KccccccXXXXddK.......", + "..KdddcK..KdddcccXbbbXXXaKKKKKKK", + "..KdddcK.KcccccccXbbbbbbaaaajjjj", + "..KdddcKKcccccccccXXcccbbbjkjKKK", + "..KdddKKdddddddccdddKKccccckKjjj", + "..KddcKXXXXXXXddddKK..KKKKKKkkKK", + "..KddccXhhhhhXdddK..........KKjK", + "...KdddXhhhhhhhhK.............K.", + "...KdddXXXXhhhhggKK.............", + "....KKKiXXXiihhhgggKK...........", + "......KiiiiKiiihhhgggK..........", + ".....KiiiiiKKKiihhhggK..........", + "....KiiiiiK...KiiihhgK..........", + "....KiiiiiK....KKiiigK..........", + "....KdiiiK.....KdiciK...........", + "....KdddiK.....KdcccK...........", + "....KdddK......KdccK............", + "....KdddK.....KddccK............", + "....KddK......KddcK.............", + "....KdcK......KddccK............", + "....KdcK.......KddddK...........", + "...KddcK........KddddK..........", + "...KddcK.........KddcKK.........", + "...KddddK.........KdcccK........", + "....KddK...........KddK.........", + ".....KK.............KK..........", + ], + rec1: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "...................K...K........", + "..................KcK.KbK.......", + ".................KdcKKbbK.......", + ".................KdcbcbbK.......", + "................KdccbcbbaKK.....", + "................KdcccbbbaaaK....", + "................KdccXXbbbaaaK...", + "................KdccocbbbbbaaK..", + "................KdcccccccbbbbK..", + ".........KKKKK..KddccccccccccK..", + "........KccccaKKddddcXXXXXXXK...", + ".......KccKddaKbbdddddccccccK...", + "......KddcKKdaccccddddddddKK....", + ".....KddcK.KccccccmmddaKKK......", + ".....KddcKKdcccddcccllaK........", + "....KddcKKddddddddccalaK........", + "....KddcK.KdddbdddXbaaK.........", + "...KdddcK..KddbbddXbbaaK........", + "...KdddcK..KdcccbbXbbbaaK.......", + "...KdddK...KdccccbbbbbbaK.......", + "...KddcK..KcccccccbbbbbaK.......", + "..KdddcK.KdccccccccbbXbaaK......", + "..KdddcK.KdddccccccccXbbaK......", + "..KdddcKKddddccccccdddXbaaK.....", + "..KdddcKdddddddccccdddXbbaK.....", + "..KdddcKXXXXXXddddKKddcXbaK.....", + "...KddcXXhhhhXdddK.KddcXbaK.....", + "...KdddXXhhhhhhhK...KdcXbaaK....", + "...KddddXXXhhhhggK..KddXbbaK....", + "....KdKKXXXXhhhhgK..KdjXXbaK....", + ".....K.KiiXXXihhggK..KjjXjjK....", + ".......KiiihKiihhggK.KkjXjjK....", + ".......KiiihKKiihhggKKkjKkjjK...", + "......KiiiihK.KiihhggKkjKkjKjKK.", + ".......KiiihK..KiihhkkKKjkKjKjjK", + ".......KiiihK..KdiihKjKKjjKjKKK.", + "......KdiiiK..KddcihKK..KjKKjK..", + "......KdddK...KdcccK.....K..K...", + ".....KddddK...KdccK.............", + ".....KdddK...KddccK.............", + "....KddddK...KddcK..............", + "....KdddK...KdddbK..............", + ".....KdcK....KddbK..............", + ".....KdccK....KdbbK.............", + ".....KddcK....KddbbK............", + ".....KddcK.....KddcKK...........", + "......KdddK.....KdcccK..........", + "......KdddK......KddK...........", + ".......KKK........KK............", + ], + ready2: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "..................K...K.........", + ".................KcK.KbK........", + "................KdcKKbbK........", + "................KdcbcbbK........", + "...........K...KdccbcbbaKK......", + "........KKKaKKKddcccbbbaaaK.....", + ".......KcccaKbbbdccXXbbbaaaK....", + "......KcKddabbcbdccocbbbbbaaK...", + ".....KdcKKccccccdcccccccbbbbK...", + "....KddcKcccccccddccccccccccK...", + "...KdddKdddddddcdddcXXXXXXXK....", + "...KddcdddddcddddddddccccccK....", + "...KddcKKKKdcddddddddddddKK.....", + "...KddcK.KcccccddXbdddKKK.......", + "..KdddcK.KcccccccXbbaK..........", + "..KdddcKKdddcccccXbbaK..........", + "..KdddcK.KddcccccXbbaK..........", + "..KdddcK.KddcccccXbbaK..........", + "..KdddcK.KdddccccXbbaK..........", + "..KdddcKKddddccccXbbaK..........", + "..KdddcKKdddddcccXbbaK..........", + "..KdddcKddXXXddccXbbaK..........", + "..KdddcKddhhXdddcXbbaK..........", + "...KddccXXhhhhccKcbbK...........", + "...KddddXXhhhhggKcbaK...........", + "....KdddXXXhhhggKcbaK...........", + ".....KKKXXXXhhhggXbaK...........", + "........KiiiXihhgXbaK...........", + "........KiiiXihhgXjjK...........", + ".........KiiiihhhjjjK...........", + ".........KiiiiihhkjjjK..........", + "..........KijiiXhkkkjK..........", + "..........KijijXjjkkKjK.........", + "..........KdiijXiiijKjK.........", + ".........KdddiXXccijKK..........", + "........KddddKccccKK............", + "........KdddddccccK.............", + ".......KddddKddccK..............", + "......KddddKdddcK...............", + "......KdddKKdddK................", + "......KdddcKdddbK...............", + ".......KddcKKddbK...............", + "........KddK.KdbbK..............", + "........KdddKKddcKK.............", + ".........KdddKKdcccK............", + ".........KdddK.KddK.............", + "..........KKK...KK..............", + ], + tele2: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "..........KK..KKKK..K...........", + ".......KKKaaKKaaaaKKbK..........", + "......KccdaaabbdcaabbK..........", + "......KcKddbbccdcbcbbK..........", + ".....KdcKKccccdccbcbbaKK........", + "....KddKKcccccdcccbbbaaaK.......", + "...KddcKddddccdccXXbbbaaaK......", + "...KddcdddddcddccocbbbbbaaK.....", + "...KddcKKKdddddcccccccbbbbK.....", + "..KdddcK.KddccddccccccccccK.....", + "..KdddcKKddcccdddcXXXXXXXK......", + "..KdddK.KdddccdddddccccccK......", + "..KddcK..KdcccccdddddddKK.......", + "..KddcK..KdcccXcbdddKKK.........", + "..KddcK.KddcccXcblllK...........", + "..KddcK.KddddcXbbllK............", + "..KddcKKddddddXbbllK............", + "..KddcKKdXXXXXcbaKlK............", + "..KddccXXhhggXcbaKK.............", + "..KdddcXXhhhgXcbK...............", + "...KdddXXhhhhXbaK...............", + "....KdddXXhhhXbaK...............", + ".....KKKXXXXjjjggK..............", + ".......KkkjjjkjgggK.............", + ".......KkikjjkjjggKK............", + "......KjKikijjjjjgggK...........", + "......KjKKjijjjijgggK...........", + ".......K.KjijijiijggK...........", + ".........KdiiijjiiigK...........", + ".........KdiiicciciK............", + "........KddddKccccK.............", + ".......KddddKdcccK..............", + "......KddddKKddccK..............", + "......KdddKKdddcK...............", + "......KdddKKdddbK...............", + "......KdddK.KddbK...............", + ".......KdddKKddbbK..............", + "........KddKKKddcKK.............", + "........KddddKKdcccK............", + ".........KddK..KddK.............", + "..........KK....KK..............", + ], + hit2: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + ".................K...K..........", + "................KcK.KbK.........", + "...............KdcKKbbK.........", + "...............KdcbcbbKK........", + "..............KdccbcbbaaKK......", + "..............KdcccbbbaaaaK.....", + "...........K..KdccXXbbbbaaaKK...", + ".........KKcK.KdccocbbbbbbbXXK..", + "........KccKKKKdccccccccccccXK..", + ".......KcccKaaadddccXXXjXXXjXK..", + "......KddcKddcaddddffffffKKKK...", + ".....KdddcKKdcadddXffffKK.......", + ".....KddcK.KcccdddXfffjjKK......", + "....KdddcKKddcccddccXXccccK.....", + "....KddccKdddddcddddddddKK......", + "...KdddcK.KKdddbddddddKK........", + "...KdddcK.KKcddbbbbbddccK.......", + "...KdddcKKXXccccbbbXddcccK......", + "...KdddKKddXddcXbbbXddKKK.......", + "...KddcKdddccccXbbbXXK..........", + "..KdddcjjdddccbbbbddK...........", + "..KdddcjXddddXbbbddK............", + "..KdddcKXXXXXXbbddK.............", + "...KddcXXhhhXccddK..............", + "...KdddXXhhXcccXXK..............", + "...KddddXXXXjXhhggK.............", + "....KKKiXjjjjXhhhgK.............", + "......KiijjjjiihhggKK...........", + ".....KKiiijKjKiihhgggK..........", + "....KiiiiijjK.KiihhhgK..........", + ".....KiiiiKjK..KiihhgK..........", + ".....KiiiiKK...KdiiiiK..........", + ".....KiiiK.....KddbbK...........", + ".....KddcK.....KdcbbK...........", + "....KdddcK.....KdccK............", + "....KdddK.....KddccK............", + "....KddcK.....KddcK.............", + "....KddcK.....KddccK............", + "....KddK.......KddddK...........", + "....KdcK........KddddK..........", + "....KdcK.........KddcKK.........", + "...KddddK.........KdcccK........", + "....KddK...........KddK.........", + ".....KK.............KK..........", + ], + rec2: [ + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "................................", + "...................K...K........", + "..................KcK.KbK.......", + ".................KdcKKbbK.......", + ".................KdcbcbbK.......", + "................KdccbcbbaKK.....", + "................KdcccbbbaaaK....", + "................KdccXXbbbaaaK...", + ".............KK.KdccocbbbbbaaK..", + ".........KKKKaaKKdcccccccbbbXK..", + "........KcccdaaKdddcccccXXXXXK..", + ".......KccKKddaccdddccffjfffjK..", + "......KddcK.KccccdddddXXXccccK..", + ".....KddcK.KcccccdddddddddKKK...", + ".....KddcKKddddcddXdddccKK......", + "....KddccKdddddcddXbbXcK........", + "....KddcK.KKdddbddXbbXcK........", + "....KddcK..KddcbbdXbbXccK.......", + "...KdddcK..KdcccccXbbXccK.......", + "...KdddcK..KdcccccXbbaKK........", + "...KdddcK.KdccccccXcbaK.........", + "...KdddK.KddccccccXcbaK.........", + "...KddcK.KdddccccccXbaK.........", + "...KddcKKdddddcccccXbaK.........", + "..KdddcKKddddddccccXbaK.........", + "...KddcKXXXXXXddccKcbaK.........", + "...KddccXhhhhXddccKcbaaK........", + "...KddddXhhhhhhddccXbbaK........", + "....KdddXXXhhhhgddcXcbaK........", + ".....KdKiXXXhhhggjjKcbaK........", + "......KKiiXXXhhhhjjKcbaK........", + ".......KiiihhhihhhXjjjjK........", + "........KiihhKihhhXjKjjK........", + "........KiiihKiihhXjjjjjK.......", + "........KiiihKKihhhhjKkjjK......", + "........KiiihKKiiihhjKkKKjK.....", + ".......KdiiiiKKcciiijKjK.K......", + ".......KddddK.KccccjjKKjK.......", + "......KddddK.KdccccKK..K........", + "......KdddK..KdcccK.............", + ".....KddddK.KddccK..............", + ".....KdddK..KdddK...............", + ".....KddcK.KdddbK...............", + ".....KddcK..KddbK...............", + ".....KddcK...KdbbK..............", + "......KdcK...KddbbK.............", + "......KdddK...KddcKK............", + "......KddddK...KdcccK...........", + ".......KddK.....KddK............", + "........KK.......KK.............", + ], +}; + +const PAINTS = [ + { K: 0x2c2c48, d: 0x48466a, c: 0x646c8a, b: 0x8e9aaa, a: 0xb8c4ca, i: 0x6a3e36, h: 0x8e5c38, g: 0xbc8c4c, f: 0x7a3448, e: 0xc06c70, k: 0x988060, j: 0xe0d4b0, m: 0x54565e, l: 0xb4b6bc, o: 0xffbe2c, w: 0xf2f0e8, x: 0xc8d4f0, y: 0x7080b0 }, + { K: 0x34303c, d: 0x504660, c: 0x6a6284, b: 0x86849c, a: 0xa8acbc, i: 0x5c5a5c, h: 0x7e7c7c, g: 0xa8a6a0, f: 0x7a3448, e: 0xc06c70, k: 0x988060, j: 0xe0d4b0, m: 0x54565e, l: 0xb4b6bc, o: 0xff7040, w: 0xf2f0e8, x: 0xc8d4f0, y: 0x7080b0 }, + { K: 0x48242c, d: 0x6c2c3c, c: 0x983c3c, b: 0xc06440, a: 0xd8985c, i: 0x56347c, h: 0x8c4088, g: 0xc8689c, f: 0x7a3448, e: 0xc06c70, k: 0x988060, j: 0xe0d4b0, m: 0x54565e, l: 0xb4b6bc, o: 0xffe060, w: 0xf2f0e8, x: 0xc8d4f0, y: 0x7080b0 }, + { K: 0x30303e, d: 0x4c5068, c: 0x8c98ac, b: 0xb4bcc8, a: 0xd4d8dc, i: 0x2c4080, h: 0x6458b4, g: 0xb884d4, f: 0x7a3448, e: 0xc06c70, k: 0x988060, j: 0xe0d4b0, m: 0x54565e, l: 0xb4b6bc, o: 0x60d0ff, w: 0xf2f0e8, x: 0xc8d4f0, y: 0x7080b0 }, +]; + +// The timelines, in ticks of 1/60 s at speed 1. The pounce's strike covers +// 2.0 s and its recovery 2.33 s; the bite's coil, strike and recovery cover +// 3.67, 4.0 and 4.33 s. Each knob position puts its first strike on 2.0 s. +// Every rest is a whole number of 8-tick rest cells. +const SEQ = [ + [["idle", 72], ["ready1", 8], ["tele1", 34], ["hit1", 16], ["rec1", 20], ["idle", 48], ["ready2", 8], ["tele2", 30], ["hit2", 16], ["rec2", 20], ["idle", 16]], + [["idle", 72], ["ready1", 8], ["tele1", 34], ["hit1", 16], ["rec1", 20]], + [["idle", 72], ["ready2", 8], ["tele2", 34], ["hit2", 16], ["rec2", 20]], +]; +// The rest cells: the upper body sinks a pixel on the breath and the tail +// tip follows a cell behind. +const IDLE = [["idle", 0], ["idle1", 0], ["idle1", 1], ["idle", 1], ["idle2", 1], ["idle2", 0]]; +const IDLE_TICKS = 8; +const BREATH_ROW = 37; +const EMPTY = ".".repeat(AW); + +const { floor, min, max } = Math; + +function cellAt(t, mode) { + const seq = SEQ[mode]; + let len = 0; + for (const s of seq) len += s[1]; + const tick = floor(t * 60 + 1e-6); + let u = tick % len; + for (const [name, n] of seq) { + if (u < n) { + if (name !== "idle") return [name, 0]; + return IDLE[floor(u / IDLE_TICKS) % IDLE.length]; + } + u -= n; + } + return ["idle", 0]; +} + +function lut(paint) { + const t = new Int32Array(128).fill(-1); + const p = PAINTS[paint]; + for (const k in p) t[k.charCodeAt(0)] = p[k]; + t[88] = 0; // X + return t; +} + +export function setup(params) { + params.t = 0; + params.mode = 0; + params.speed = 1; + params.paint = 0; + params.flip = 0; + params.key = -1; +} + +export function update(dt, input, params) { + if (params.key === undefined) setup(params); + const k = input.knobValues || [0, 2, 0, 0.06]; + params.mode = min(2, max(0, floor(k[0]))); + params.speed = min(3, max(0.5, k[1])) / 2; + params.paint = min(3, max(0, floor(k[2] * 4))); + params.flip = k[3] >= 0.5 ? 1 : 0; + params.t += min(dt || 0, 0.1) * params.speed; +} + +export function draw(display, params) { + const p = params; + if (p.key === undefined) setup(p); + if (p.key !== p.paint) { + p.key = p.paint; + p.lut = lut(p.paint); + } + const L = p.lut; + const [name, dy] = cellAt(p.t, p.mode); + const rows = CELLS[name]; + for (let y = 0; y < H; y++) { + let j = y >> 1; + if (dy && j <= BREATH_ROW + 1) j -= 1; + const row = j < 0 ? EMPTY : rows[j]; + for (let x = 0; x < W; x++) { + const i = p.flip ? AW - 1 - (x >> 1) : x >> 1; + const ch = row.charCodeAt(i); + if (ch === 46) { + display.setPixel(x, y, 0, 0, 0); + continue; + } + const c = L[ch]; + if (c < 0) display.setPixel(x, y, 255, 0, 255); + else display.setPixel(x, y, (c >> 16) & 255, (c >> 8) & 255, c & 255); + } + } +} From 4b4ace913fcc12bfac622ea1b5d094cd0f754be5 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 07:47:30 +0000 Subject: [PATCH 03/11] =?UTF-8?q?Kennick=20=ED=8C=A8=EC=8A=A4=201=20?= =?UTF-8?q?=ED=9B=84=EB=B3=B4:=20=EB=B0=9C=ED=86=B1=EC=9D=84=20=EB=82=98?= =?UTF-8?q?=EB=9E=80=ED=9E=88=20=EB=AA=A8=EC=95=84=20=ED=8C=A8=EB=84=90=20?= =?UTF-8?q?=EB=81=9D=EC=97=90=EC=84=9C=20=EB=96=BC=EC=96=B4=20=EB=8B=AB?= =?UTF-8?q?=EB=8A=94=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 7 ++++++ incoming/pattern-study/patterns/kennick.js | 28 ++++++++++----------- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index 50da7db3..243d6580 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -8,3 +8,10 @@ - 리그 판정 말: 안 4 「큰 꼬리와 긴 발톱이 세 단 위계」 · 안 1 「갈기, 머리, 발톱 세 단 위계와 덤비는 기세」 · 안 2 「등 혹과 팔이 한 덩어리로 뭉쳐 발톱이 묻힘」 · 안 3 「쉬기가 긴 옷자락 기둥 하나뿐인 차렷」 - 만들기: 실루엣의 굵기가 외곽선 한 칸씩 두꺼워져서 몸통 반지름을 0.7 줄이고 팔다리 굵기를 다시 잡음. 머리는 도형으로는 말 머리처럼 읽혀서 손으로 그린 글자 격자 셋(다문 입, 이 드러낸 입, 크게 벌린 입)을 찍음 - 선 판: 셀 11 · 14색 · 쉬기 키 55(귀 끝 y 9~발바닥 y 63, 외곽선 포함) · 머리 9 · 6.1등신 · 외곽선 L* 20 · 어두운 칠(L* 35 아래) 네 벌 60.5%, 56.1%, 60.5%, 60.5% · 노브 K1 0.03 · K2 0.13 · K3 0.06 · K4 0.16 · 한 프레임 깜빡임 0 · 고아 칸은 발톱 끝 한 칸씩만 남음 + +### 패스 1 +- 비평 1: 장인 5 · 플레이어 7 · 애니메이터 6 · 관객 7 · 블라인드 읽기 3/3(「회색 털에 뾰족한 귀, 노란 눈, 갈색 바지의 늑대인간 같은 짐승. 사납고 공격적, 맨손의 길고 하얀 발톱」) · 닮은꼴 대전 격투 게임의 푸른 털 늑대인간 「조금」, 1941년 영화의 늑대인간 「조금」 +- 확인 차례: ① 머리와 뻗은 두 손이 같은 크기의 밝은 덩어리로 붙음(플레이어 가장 약한 것, 애니메이터) 아니오 · ① 발톱 끝이 x 63 에 여백 없이 닿아 잘려 보임(관객 가장 약한 것, 애니메이터, 플레이어) 예 +- 고칠 것: ① 타격 셀 hit1 · 두 손의 발톱이 부채처럼 갈라져 x 63 까지 닿음 · (63,70) (63,84) +- 짚은 렌즈: 관객 7점 「발톱 끝이 x=63 에 여백 없이 닿아 잘려」 · 애니메이터 6점 「짧은 크림색 획이 부채처럼 갈라져 x=63 에서 잘려요」 · 플레이어 7점 「손끝도 x 63 패널 끝에 닿아 잘려」 +- 기대: pair-zoom 과 pair-led 의 2.0초에서 두 손의 발톱이 나란한 세 줄로 앞을 향하고, 끝이 x 58~59 에서 외곽선으로 닫혀 오른쪽 끝에 검은 틈이 남음 diff --git a/incoming/pattern-study/patterns/kennick.js b/incoming/pattern-study/patterns/kennick.js index 9985e1e7..da89fa8d 100644 --- a/incoming/pattern-study/patterns/kennick.js +++ b/incoming/pattern-study/patterns/kennick.js @@ -385,21 +385,21 @@ const CELLS = { ".........KcK..K.KdcccccccbbbXK..", "........KccKKKaKKddcccccXXXXXK..", "......KKccKcccaKKdddccffjfffjK..", - ".....KddccKKddaKddddddXXXccccKK.", - ".....KddcK..KcaKddddddddddKKKjjK", - "....KdddcK.KccadddmmddXdcccjjKKK", - "....KddcK.KddccKdddmdlXdddkkjjjj", - "...KdddcKKddddcKdddddlXdddddkkkK", - "...KdddcK.KKKKabbddddlcKKKKKKKKj", - "...KdddK....KaabbbbbblcccK.....K", + ".....KddccKKddaKddddddXXXccccK..", + ".....KddcK..KcaKddddddddddKKKK..", + "....KdddcK.KccadddmmddXdccKjjjK.", + "....KddcK.KddccKdddmdlXddjkkkjK.", + "...KdddcKKddddcKdddddlXdddKKkjK.", + "...KdddcK.KKKKabbddddlcKKK..KK..", + "...KdddK....KaabbbbbblcccK......", "...KddcK...KccccccXXXXddK.......", - "..KdddcK..KdddcccXbbbXXXaKKKKKKK", - "..KdddcK.KcccccccXbbbbbbaaaajjjj", - "..KdddcKKcccccccccXXcccbbbjkjKKK", - "..KdddKKdddddddccdddKKccccckKjjj", - "..KddcKXXXXXXXddddKK..KKKKKKkkKK", - "..KddccXhhhhhXdddK..........KKjK", - "...KdddXhhhhhhhhK.............K.", + "..KdddcK..KdddcccXbbXXXXKK......", + "..KdddcK.KcccccccXbbbbbaaaKKKK..", + "..KdddcKKcccccccccXXcccbbjjjjjK.", + "..KdddKKdddddddccdddKKcccckkkjK.", + "..KddcKXXXXXXXddddKK..KKKKKKKjK.", + "..KddccXhhhhhXdddK...........K..", + "...KdddXhhhhhhhhK...............", "...KdddXXXXhhhhggKK.............", "....KKKiXXXiihhhgggKK...........", "......KiiiiKiiihhhgggK..........", From 54819a8b3596e33bf59322f543263637a1c262a6 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 07:49:52 +0000 Subject: [PATCH 04/11] =?UTF-8?q?Kennick=20=ED=8C=A8=EC=8A=A4=201=20?= =?UTF-8?q?=EB=90=98=EB=8F=8C=EB=A6=BC:=20=EB=B0=9C=ED=86=B1=EC=9D=84=20?= =?UTF-8?q?=EB=8B=A4=EC=8B=9C=20=ED=8C=A8=EB=84=90=20=EB=81=9D=EA=B9=8C?= =?UTF-8?q?=EC=A7=80=20=EA=B0=88=EB=9D=BC=20=EB=BB=97=EB=8A=94=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 4 +++ incoming/pattern-study/patterns/kennick.js | 28 ++++++++++----------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index 243d6580..1cdd5be0 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -15,3 +15,7 @@ - 고칠 것: ① 타격 셀 hit1 · 두 손의 발톱이 부채처럼 갈라져 x 63 까지 닿음 · (63,70) (63,84) - 짚은 렌즈: 관객 7점 「발톱 끝이 x=63 에 여백 없이 닿아 잘려」 · 애니메이터 6점 「짧은 크림색 획이 부채처럼 갈라져 x=63 에서 잘려요」 · 플레이어 7점 「손끝도 x 63 패널 끝에 닿아 잘려」 - 기대: pair-zoom 과 pair-led 의 2.0초에서 두 손의 발톱이 나란한 세 줄로 앞을 향하고, 끝이 x 58~59 에서 외곽선으로 닫혀 오른쪽 끝에 검은 틈이 남음 +- 바뀐 LED: 정지 204 · 10초 204 · 노브 408 · 팔레트 14→14색 +- A/B: 장인 같음(역순 새, 정순 잡기 실패) · 플레이어 옛(정순 「뭉툭한 덩어리」, 역순 「발톱이 윤곽에서 사라져요」) · 애니메이터 같음(역순 옛 「손가락 없는 베이지 덩어리로 뭉개져」, 정순 잡기 실패) · 관객 같음(역순 새, 정순 잡기 실패) +- 버린 판정: 잡기 실패 3(장인 정순, 애니메이터 정순, 관객 정순). 플레이어가 「옛」이라 더 받지 않음 +- 되돌림. 판정단은 x 63 에 닿아 갈라진 발톱을 손가락과 발톱으로 읽었고, 판 안으로 당겨 모은 발톱은 뭉툭한 손으로 읽었어요 diff --git a/incoming/pattern-study/patterns/kennick.js b/incoming/pattern-study/patterns/kennick.js index da89fa8d..9985e1e7 100644 --- a/incoming/pattern-study/patterns/kennick.js +++ b/incoming/pattern-study/patterns/kennick.js @@ -385,21 +385,21 @@ const CELLS = { ".........KcK..K.KdcccccccbbbXK..", "........KccKKKaKKddcccccXXXXXK..", "......KKccKcccaKKdddccffjfffjK..", - ".....KddccKKddaKddddddXXXccccK..", - ".....KddcK..KcaKddddddddddKKKK..", - "....KdddcK.KccadddmmddXdccKjjjK.", - "....KddcK.KddccKdddmdlXddjkkkjK.", - "...KdddcKKddddcKdddddlXdddKKkjK.", - "...KdddcK.KKKKabbddddlcKKK..KK..", - "...KdddK....KaabbbbbblcccK......", + ".....KddccKKddaKddddddXXXccccKK.", + ".....KddcK..KcaKddddddddddKKKjjK", + "....KdddcK.KccadddmmddXdcccjjKKK", + "....KddcK.KddccKdddmdlXdddkkjjjj", + "...KdddcKKddddcKdddddlXdddddkkkK", + "...KdddcK.KKKKabbddddlcKKKKKKKKj", + "...KdddK....KaabbbbbblcccK.....K", "...KddcK...KccccccXXXXddK.......", - "..KdddcK..KdddcccXbbXXXXKK......", - "..KdddcK.KcccccccXbbbbbaaaKKKK..", - "..KdddcKKcccccccccXXcccbbjjjjjK.", - "..KdddKKdddddddccdddKKcccckkkjK.", - "..KddcKXXXXXXXddddKK..KKKKKKKjK.", - "..KddccXhhhhhXdddK...........K..", - "...KdddXhhhhhhhhK...............", + "..KdddcK..KdddcccXbbbXXXaKKKKKKK", + "..KdddcK.KcccccccXbbbbbbaaaajjjj", + "..KdddcKKcccccccccXXcccbbbjkjKKK", + "..KdddKKdddddddccdddKKccccckKjjj", + "..KddcKXXXXXXXddddKK..KKKKKKkkKK", + "..KddccXhhhhhXdddK..........KKjK", + "...KdddXhhhhhhhhK.............K.", "...KdddXXXXhhhhggKK.............", "....KKKiXXXiihhhgggKK...........", "......KiiiiKiiihhhgggK..........", From da92fa57f03c080768c2b74973058ec302e6514c Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 07:51:44 +0000 Subject: [PATCH 05/11] =?UTF-8?q?Kennick=20=ED=8C=A8=EC=8A=A4=202=20?= =?UTF-8?q?=ED=9B=84=EB=B3=B4:=20=EB=8D=AE=EC=B9=A0=20=EB=95=8C=20?= =?UTF-8?q?=EA=BC=AC=EB=A6=AC=EB=A5=BC=20=EB=93=B1=20=EC=9C=84=EB=A1=9C=20?= =?UTF-8?q?=EB=A7=90=EC=95=84=20=EB=92=B7=EB=8B=A4=EB=A6=AC=EC=99=80=20?= =?UTF-8?q?=EA=B0=80=EB=A5=B8=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 8 ++++ incoming/pattern-study/patterns/kennick.js | 48 ++++++++++----------- 2 files changed, 32 insertions(+), 24 deletions(-) diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index 1cdd5be0..e78713b5 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -19,3 +19,11 @@ - A/B: 장인 같음(역순 새, 정순 잡기 실패) · 플레이어 옛(정순 「뭉툭한 덩어리」, 역순 「발톱이 윤곽에서 사라져요」) · 애니메이터 같음(역순 옛 「손가락 없는 베이지 덩어리로 뭉개져」, 정순 잡기 실패) · 관객 같음(역순 새, 정순 잡기 실패) - 버린 판정: 잡기 실패 3(장인 정순, 애니메이터 정순, 관객 정순). 플레이어가 「옛」이라 더 받지 않음 - 되돌림. 판정단은 x 63 에 닿아 갈라진 발톱을 손가락과 발톱으로 읽었고, 판 안으로 당겨 모은 발톱은 뭉툭한 손으로 읽었어요 + +### 패스 2 +- 비평 1 그대로(패스 1 되돌림) +- 건너뛴 것: ① 웅크린 장(3.33, 3.67초)에서 몸이 통째로 줄어 보임(애니메이터 가장 약한 것) · 2.0초 정지 그림에 없는 셀이라 플레이어와 관객의 A/B 그림에 안 나옴 +- 확인 차례: ① 타격 장에서 몸 뒤쪽 꼬리가 뒷다리와 한 줄로 이어져 다리 하나처럼 읽힘(애니메이터) 예 +- 고칠 것: ① 타격 셀 hit1 · 꼬리가 엉덩이에서 곧게 서서 뒷다리와 같은 줄을 이룸 · (4~14, 56~127) +- 짚은 렌즈: 애니메이터 6점 「뒷다리와 이어져 다리 하나처럼 읽혀요」 +- 기대: pair-zoom, pair-led, pair-strip 첫 장에서 꼬리가 등 위로 갈고리처럼 말려 올라가고, 꼬리와 뒷다리 사이 x 4~8 에 검은 틈이 생겨 바깥 윤곽이 끊김 diff --git a/incoming/pattern-study/patterns/kennick.js b/incoming/pattern-study/patterns/kennick.js index 9985e1e7..9e0adc3a 100644 --- a/incoming/pattern-study/patterns/kennick.js +++ b/incoming/pattern-study/patterns/kennick.js @@ -378,30 +378,30 @@ const CELLS = { "..................KcK.KbK.......", ".................KdcKKbbK.......", ".................KdcbcbbK.......", - "................KdccbcbbaKK.....", - "................KdcccbbbaaaK....", - "................KdccXXbbbaaaK...", - "..........K.....KdccocbbbbbaaK..", - ".........KcK..K.KdcccccccbbbXK..", - "........KccKKKaKKddcccccXXXXXK..", - "......KKccKcccaKKdddccffjfffjK..", - ".....KddccKKddaKddddddXXXccccKK.", - ".....KddcK..KcaKddddddddddKKKjjK", - "....KdddcK.KccadddmmddXdcccjjKKK", - "....KddcK.KddccKdddmdlXdddkkjjjj", - "...KdddcKKddddcKdddddlXdddddkkkK", - "...KdddcK.KKKKabbddddlcKKKKKKKKj", - "...KdddK....KaabbbbbblcccK.....K", - "...KddcK...KccccccXXXXddK.......", - "..KdddcK..KdddcccXbbbXXXaKKKKKKK", - "..KdddcK.KcccccccXbbbbbbaaaajjjj", - "..KdddcKKcccccccccXXcccbbbjkjKKK", - "..KdddKKdddddddccdddKKccccckKjjj", - "..KddcKXXXXXXXddddKK..KKKKKKkkKK", - "..KddccXhhhhhXdddK..........KKjK", - "...KdddXhhhhhhhhK.............K.", - "...KdddXXXXhhhhggKK.............", - "....KKKiXXXiihhhgggKK...........", + "........KK......KdccbcbbaKK.....", + ".......KccKK....KdcccbbbaaaK....", + "......KdccddK...KdccXXbbbaaaK...", + ".....KddccKK....KdccocbbbbbaaK..", + "....KddddK....K.KdcccccccbbbXK..", + "....KddddK.KKKaKKddcccccXXXXXK..", + "....KddcK.KcccaKKdddccffjfffjK..", + "....KddcK..KddaKddddddXXXccccKK.", + "...KdddcK...KcaKddddddddddKKKjjK", + "...KdddcK..KccadddmmddXdcccjjKKK", + "...KdddcK.KddccKdddmdlXdddkkjjjj", + "....KddcKKddddcKdddddlXdddddkkkK", + "....KddcK.KKKKabbddddlcKKKKKKKKj", + "....KddccK..KaabbbbbblcccK.....K", + ".....KddcK.KccccccXXXXddK.......", + ".....KddddKdddcccXbbbXXXaKKKKKKK", + "......KdddcccccccXbbbbbbaaaajjjj", + ".......KKdccccccccXXcccbbbjkjKKK", + ".......KdddddddccdddKKccccckKjjj", + "......KXXXXXXXddddKK..KKKKKKkkKK", + "......KXhhhhhXdddK..........KKjK", + "......KXhhhhhhhhK.............K.", + "......KXXXXhhhhggKK.............", + "......KiXXXiihhhgggKK...........", "......KiiiiKiiihhhgggK..........", ".....KiiiiiKKKiihhhggK..........", "....KiiiiiK...KiiihhgK..........", From e8715714192b918841830ca46f49e1a9d7eb3a9a Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 07:54:14 +0000 Subject: [PATCH 06/11] =?UTF-8?q?Kennick=20=ED=8C=A8=EC=8A=A4=202=20?= =?UTF-8?q?=EC=B1=84=ED=83=9D:=20=EB=8D=AE=EC=B9=A0=20=EB=95=8C=20?= =?UTF-8?q?=EA=BC=AC=EB=A6=AC=EB=A5=BC=20=EB=93=B1=20=EC=9C=84=EB=A1=9C=20?= =?UTF-8?q?=EB=A7=90=EC=95=84=20=EB=92=B7=EB=8B=A4=EB=A6=AC=EC=99=80=20?= =?UTF-8?q?=EA=B0=80=EB=A5=B8=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index e78713b5..d5921e81 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -27,3 +27,7 @@ - 고칠 것: ① 타격 셀 hit1 · 꼬리가 엉덩이에서 곧게 서서 뒷다리와 같은 줄을 이룸 · (4~14, 56~127) - 짚은 렌즈: 애니메이터 6점 「뒷다리와 이어져 다리 하나처럼 읽혀요」 - 기대: pair-zoom, pair-led, pair-strip 첫 장에서 꼬리가 등 위로 갈고리처럼 말려 올라가고, 꼬리와 뒷다리 사이 x 4~8 에 검은 틈이 생겨 바깥 윤곽이 끊김 +- 바뀐 LED: 정지 484 · 10초 484 · 노브 968 · 팔레트 14→14색 +- A/B: 장인 새(정순 새, 역순 다시 받음) · 플레이어 새(정순 새, 역순 다시 받음) · 애니메이터 새(「등 뒤 덩어리가 갈고리 모양으로 치켜 올라가 몸 반대쪽으로 넘쳐요」) · 관객 새(「그 자리가 둥글게 채워져 윤곽이 이어져요」) +- 버린 판정: 잡기 실패 2(장인 역순 1, 플레이어 역순 1) +- 채택. 짚은 애니메이터가 새이고 새인 렌즈가 둘 넘어요. 판정 여럿이 말려 올라간 꼬리를 치켜든 뒷팔로 읽었어요 From 317acefe9430ef3053ea07e28529d42e265ad04c Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 07:56:41 +0000 Subject: [PATCH 07/11] =?UTF-8?q?Kennick=20=EA=B8=B0=EB=A1=9D:=20=ED=8C=A8?= =?UTF-8?q?=EC=8A=A4=202=20=ED=8C=90=EC=A0=95=EC=9D=84=20=EB=8B=A4?= =?UTF-8?q?=EC=8B=9C=20=EB=B0=9B=EC=9D=80=20=EA=B2=B0=EA=B3=BC=EB=A1=9C=20?= =?UTF-8?q?=EA=B3=A0=EC=B9=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index d5921e81..c927df26 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -28,6 +28,6 @@ - 짚은 렌즈: 애니메이터 6점 「뒷다리와 이어져 다리 하나처럼 읽혀요」 - 기대: pair-zoom, pair-led, pair-strip 첫 장에서 꼬리가 등 위로 갈고리처럼 말려 올라가고, 꼬리와 뒷다리 사이 x 4~8 에 검은 틈이 생겨 바깥 윤곽이 끊김 - 바뀐 LED: 정지 484 · 10초 484 · 노브 968 · 팔레트 14→14색 -- A/B: 장인 새(정순 새, 역순 다시 받음) · 플레이어 새(정순 새, 역순 다시 받음) · 애니메이터 새(「등 뒤 덩어리가 갈고리 모양으로 치켜 올라가 몸 반대쪽으로 넘쳐요」) · 관객 새(「그 자리가 둥글게 채워져 윤곽이 이어져요」) -- 버린 판정: 잡기 실패 2(장인 역순 1, 플레이어 역순 1) +- A/B: 장인 같음(정순 새, 역순은 두 번 다 잡기 실패) · 플레이어 새(「뒷팔을 어깨 위로 둥글게 들어 올려 몸통과 갈라」) · 애니메이터 새(「등 뒤 덩어리가 갈고리 모양으로 치켜 올라가 몸 반대쪽으로 넘쳐요」) · 관객 새(「그 자리가 둥글게 채워져 윤곽이 이어져요」) +- 버린 판정: 잡기 실패 3(장인 역순 2, 플레이어 역순 1). 결과가 정해져 장인 역순은 세 번째로 받지 않음 - 채택. 짚은 애니메이터가 새이고 새인 렌즈가 둘 넘어요. 판정 여럿이 말려 올라간 꼬리를 치켜든 뒷팔로 읽었어요 From 3af2bbedffb5db3d60ef770b902452c2d5d168a3 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 08:01:20 +0000 Subject: [PATCH 08/11] =?UTF-8?q?Kennick=20=ED=8C=A8=EC=8A=A4=203=20?= =?UTF-8?q?=ED=9B=84=EB=B3=B4:=20=EB=B0=9C=ED=86=B1=20=EB=81=9D=EC=9D=84?= =?UTF-8?q?=20=ED=95=9C=20=EC=B9=B8=20=EC=A4=84=EC=97=AC=20=ED=8C=A8?= =?UTF-8?q?=EB=84=90=20=EB=81=9D=EC=9D=84=20=EC=99=B8=EA=B3=BD=EC=84=A0?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=EB=8B=AB=EB=8A=94=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 8 ++++++ incoming/pattern-study/patterns/kennick.js | 28 ++++++++++----------- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index c927df26..0e761f51 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -31,3 +31,11 @@ - A/B: 장인 같음(정순 새, 역순은 두 번 다 잡기 실패) · 플레이어 새(「뒷팔을 어깨 위로 둥글게 들어 올려 몸통과 갈라」) · 애니메이터 새(「등 뒤 덩어리가 갈고리 모양으로 치켜 올라가 몸 반대쪽으로 넘쳐요」) · 관객 새(「그 자리가 둥글게 채워져 윤곽이 이어져요」) - 버린 판정: 잡기 실패 3(장인 역순 2, 플레이어 역순 1). 결과가 정해져 장인 역순은 세 번째로 받지 않음 - 채택. 짚은 애니메이터가 새이고 새인 렌즈가 둘 넘어요. 판정 여럿이 말려 올라간 꼬리를 치켜든 뒷팔로 읽었어요 + +### 패스 3 +- 비평 2: 장인 6 · 플레이어 7 · 애니메이터 6 · 관객 7 · 블라인드 읽기 3/3(「회색 털에 갈색 허리천의 늑대인간. 사납고 거친, 손톱과 이빨로 싸움」) · 닮은꼴 대전 격투 게임의 푸른 털 늑대인간 「조금」, 1941년 영화의 늑대인간 「조금」 +- 건너뛴 것: ① 웅크린 장(3.67초)에서 몸이 통째로 줄어 보임(애니메이터 가장 약한 것, 비평 1 에 이어 둘째) · 2.0초 정지 그림에 없는 셀이라 플레이어와 관객의 A/B 그림에 안 나옴 +- 확인 차례: ① 발톱이 x 63 에서 외곽선 없이 잘림(관객 가장 약한 것, 플레이어, 애니메이터) 예 +- 고칠 것: ① 타격 셀 hit1 · 패스 1 과 같은 지적의 둘째 고침. 패스 1 은 팔을 당기고 발톱을 모아 뭉툭해졌으니, 이번엔 팔과 갈래는 그대로 두고 발톱 끝만 한 칸 줄여 x 62~63 을 외곽선으로 닫음 · (63,68) (63,84) +- 짚은 렌즈: 관객 7점 「오른쪽 끝 x 63 에서 외곽선 없이 잘려요」 · 플레이어 7점 「발톱 끝이 패널 끝 x 63 에 잘려 외곽선 없이」 · 애니메이터 6점 「두 손 발톱이 x 63, 판 오른쪽 끝에 닿아 잘려요」 +- 기대: pair-zoom 과 pair-led 의 2.0초에서 갈라진 발톱 세 줄씩이 그대로 앞으로 뻗고, 끝이 x 62~63 의 어두운 외곽선으로 닫힘 diff --git a/incoming/pattern-study/patterns/kennick.js b/incoming/pattern-study/patterns/kennick.js index 9e0adc3a..d280df59 100644 --- a/incoming/pattern-study/patterns/kennick.js +++ b/incoming/pattern-study/patterns/kennick.js @@ -385,21 +385,21 @@ const CELLS = { "....KddddK....K.KdcccccccbbbXK..", "....KddddK.KKKaKKddcccccXXXXXK..", "....KddcK.KcccaKKdddccffjfffjK..", - "....KddcK..KddaKddddddXXXccccKK.", - "...KdddcK...KcaKddddddddddKKKjjK", - "...KdddcK..KccadddmmddXdcccjjKKK", - "...KdddcK.KddccKdddmdlXdddkkjjjj", - "....KddcKKddddcKdddddlXdddddkkkK", - "....KddcK.KKKKabbddddlcKKKKKKKKj", - "....KddccK..KaabbbbbblcccK.....K", + "....KddcK..KddaKddddddXXXccccK..", + "...KdddcK...KcaKddddddddddKKKjK.", + "...KdddcK..KccadddmmddXdcccjjKK.", + "...KdddcK.KddccKdddmdlXdddkkjjjK", + "....KddcKKddddcKdddddlXdddddkkjK", + "....KddcK.KKKKabbddddlcKKKKKKKK.", + "....KddccK..KaabbbbbblcccK......", ".....KddcK.KccccccXXXXddK.......", - ".....KddddKdddcccXbbbXXXaKKKKKKK", - "......KdddcccccccXbbbbbbaaaajjjj", - ".......KKdccccccccXXcccbbbjkjKKK", - ".......KdddddddccdddKKccccckKjjj", - "......KXXXXXXXddddKK..KKKKKKkkKK", - "......KXhhhhhXdddK..........KKjK", - "......KXhhhhhhhhK.............K.", + ".....KddddKdddcccXbbbXXXaKKK.KK.", + "......KdddcccccccXbbbbbbaaaaKjjK", + ".......KKdccccccccXXcccbbbjjjKK.", + ".......KdddddddccdddKKccccccKjjK", + "......KXXXXXXXddddKK..KKKKKKkkK.", + "......KXhhhhhXdddK..........KK..", + "......KXhhhhhhhhK...............", "......KXXXXhhhhggKK.............", "......KiXXXiihhhgggKK...........", "......KiiiiKiiihhhgggK..........", From 09fd9723ccce2cc911d11cfd8bba333312dda2a0 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 08:04:28 +0000 Subject: [PATCH 09/11] =?UTF-8?q?Kennick=20=ED=8C=A8=EC=8A=A4=203=20?= =?UTF-8?q?=EB=90=98=EB=8F=8C=EB=A6=BC:=20=EB=B0=9C=ED=86=B1=EC=9D=80=20?= =?UTF-8?q?=EB=8B=A4=EC=8B=9C=20=ED=8C=A8=EB=84=90=20=EB=81=9D=EA=B9=8C?= =?UTF-8?q?=EC=A7=80=20=EB=8B=BF=EB=8A=94=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 4 +++ incoming/pattern-study/patterns/kennick.js | 28 ++++++++++----------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index 0e761f51..0a9a62e6 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -39,3 +39,7 @@ - 고칠 것: ① 타격 셀 hit1 · 패스 1 과 같은 지적의 둘째 고침. 패스 1 은 팔을 당기고 발톱을 모아 뭉툭해졌으니, 이번엔 팔과 갈래는 그대로 두고 발톱 끝만 한 칸 줄여 x 62~63 을 외곽선으로 닫음 · (63,68) (63,84) - 짚은 렌즈: 관객 7점 「오른쪽 끝 x 63 에서 외곽선 없이 잘려요」 · 플레이어 7점 「발톱 끝이 패널 끝 x 63 에 잘려 외곽선 없이」 · 애니메이터 6점 「두 손 발톱이 x 63, 판 오른쪽 끝에 닿아 잘려요」 - 기대: pair-zoom 과 pair-led 의 2.0초에서 갈라진 발톱 세 줄씩이 그대로 앞으로 뻗고, 끝이 x 62~63 의 어두운 외곽선으로 닫힘 +- 바뀐 LED: 정지 80 · 10초 80 · 노브 160 · 팔레트 14→14색 +- A/B: 장인 같음(정순 새, 역순 옛 「따로 떨어져 있던 손가락 갈래와 발톱 끝이 사라졌고」) · 플레이어 같음(정순 옛 「발톱이 패널 끝까지 더 뻗어 덤비는 기세가 커요」, 역순 잡기 실패) · 애니메이터 같음(정순 새, 역순 옛 「x 63 까지 곧게 뻗어 나오고」) · 관객 새(「무기 바깥 경계가 패널 안에서 또렷하게 닫혀요」) +- 버린 판정: 잡기 실패 1(플레이어 역순). 짚은 플레이어가 「새」가 될 수 없어 더 받지 않음 +- 되돌림. 같은 지적이 두 번 되돌려져 막힘. 관객은 닫힌 발톱을 골랐지만 플레이어와 애니메이터는 패널 끝까지 닿은 발톱을 더 뻗은 무기로 읽었어요 diff --git a/incoming/pattern-study/patterns/kennick.js b/incoming/pattern-study/patterns/kennick.js index d280df59..9e0adc3a 100644 --- a/incoming/pattern-study/patterns/kennick.js +++ b/incoming/pattern-study/patterns/kennick.js @@ -385,21 +385,21 @@ const CELLS = { "....KddddK....K.KdcccccccbbbXK..", "....KddddK.KKKaKKddcccccXXXXXK..", "....KddcK.KcccaKKdddccffjfffjK..", - "....KddcK..KddaKddddddXXXccccK..", - "...KdddcK...KcaKddddddddddKKKjK.", - "...KdddcK..KccadddmmddXdcccjjKK.", - "...KdddcK.KddccKdddmdlXdddkkjjjK", - "....KddcKKddddcKdddddlXdddddkkjK", - "....KddcK.KKKKabbddddlcKKKKKKKK.", - "....KddccK..KaabbbbbblcccK......", + "....KddcK..KddaKddddddXXXccccKK.", + "...KdddcK...KcaKddddddddddKKKjjK", + "...KdddcK..KccadddmmddXdcccjjKKK", + "...KdddcK.KddccKdddmdlXdddkkjjjj", + "....KddcKKddddcKdddddlXdddddkkkK", + "....KddcK.KKKKabbddddlcKKKKKKKKj", + "....KddccK..KaabbbbbblcccK.....K", ".....KddcK.KccccccXXXXddK.......", - ".....KddddKdddcccXbbbXXXaKKK.KK.", - "......KdddcccccccXbbbbbbaaaaKjjK", - ".......KKdccccccccXXcccbbbjjjKK.", - ".......KdddddddccdddKKccccccKjjK", - "......KXXXXXXXddddKK..KKKKKKkkK.", - "......KXhhhhhXdddK..........KK..", - "......KXhhhhhhhhK...............", + ".....KddddKdddcccXbbbXXXaKKKKKKK", + "......KdddcccccccXbbbbbbaaaajjjj", + ".......KKdccccccccXXcccbbbjkjKKK", + ".......KdddddddccdddKKccccckKjjj", + "......KXXXXXXXddddKK..KKKKKKkkKK", + "......KXhhhhhXdddK..........KKjK", + "......KXhhhhhhhhK.............K.", "......KXXXXhhhhggKK.............", "......KiXXXiihhhgggKK...........", "......KiiiiKiiihhhgggK..........", From 0ee6e01619cfcee1f442493ffbf14275a59ed89b Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 08:10:43 +0000 Subject: [PATCH 10/11] =?UTF-8?q?Kennick=2096=ED=8C=90=20=EB=B0=94?= =?UTF-8?q?=ED=80=B4=20=EB=81=9D:=20=EB=91=90=20=EB=B2=88=20=EC=B1=84?= =?UTF-8?q?=EC=A0=90=EA=B3=BC=20=EB=B0=94=ED=80=B4=20=EA=B7=B8=EB=A6=BC?= =?UTF-8?q?=EC=9D=84=20=EB=82=A8=EA=B8=B4=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/craft/kennick/log.md | 8 ++++++++ .../pattern-study/craft/kennick/look-96.png | Bin 0 -> 46651 bytes 2 files changed, 8 insertions(+) create mode 100644 incoming/pattern-study/craft/kennick/look-96.png diff --git a/incoming/pattern-study/craft/kennick/log.md b/incoming/pattern-study/craft/kennick/log.md index 0a9a62e6..bf9c4371 100644 --- a/incoming/pattern-study/craft/kennick/log.md +++ b/incoming/pattern-study/craft/kennick/log.md @@ -43,3 +43,11 @@ - A/B: 장인 같음(정순 새, 역순 옛 「따로 떨어져 있던 손가락 갈래와 발톱 끝이 사라졌고」) · 플레이어 같음(정순 옛 「발톱이 패널 끝까지 더 뻗어 덤비는 기세가 커요」, 역순 잡기 실패) · 애니메이터 같음(정순 새, 역순 옛 「x 63 까지 곧게 뻗어 나오고」) · 관객 새(「무기 바깥 경계가 패널 안에서 또렷하게 닫혀요」) - 버린 판정: 잡기 실패 1(플레이어 역순). 짚은 플레이어가 「새」가 될 수 없어 더 받지 않음 - 되돌림. 같은 지적이 두 번 되돌려져 막힘. 관객은 닫힌 발톱을 골랐지만 플레이어와 애니메이터는 패널 끝까지 닿은 발톱을 더 뻗은 무기로 읽었어요 + +## 바퀴 끝 +- 두 번 채점: 장인 6,6 · 플레이어 7,7 · 애니메이터 6,6 · 관객 7,7 · 블라인드 읽기 3/3, 3/3(「회청색 털에 노란 눈, 뾰족한 귀와 꼬리, 해진 갈색 반바지의 늑대인간. 사납고 거칠게 덤벼듦, 손발톱과 벌린 입」). 첫 채점은 비평 2 로 셈함(패스 3 이 되돌려져 지금 판이 비평 2 를 받은 판과 바이트까지 같음) +- 장거리 A/B: 길 a 의 첫 바퀴라 건너뜀 +- 닮은꼴: 대전 격투 게임의 푸른 털 늑대인간 「조금」 · 1941년 영화의 늑대인간 「조금」 · 온라인 대전 게임의 늑대인간 옛 디자인 「조금」 +- 걸린 멈춤: 없음(되돌림, 채택, 되돌림). 막힘 하나: ① 발톱이 x 63 에 닿아 잘림(패스 1, 3) +- 채점이 같이 짚은 것: ① 3.67초 웅크린 장이 축소한 그림처럼 읽힘(애니메이터 셋 다) · ① 말려 올라간 꼬리가 머리만 한 둘째 덩어리라 셋째 팔처럼 읽힘(플레이어 둘) · ④ 가슴 가운데 회색 사슬 칸 셋(장인 셋, 플레이어) · ② 칠의 무게가 가운데 명도에 있음(플레이어 둘) · ③ 패널에서 바지가 주황과 녹슨 빨강이 되어 머리보다 먼저 보임(관객 셋) · ⑦ K2 두 끝이 같은 선 자세(관객 둘) +- 창작자에게: 작품 2 셋째 캐릭터로 늑대인간 Kennick 이 섰어요. 판정단은 세 번 다 「사나운 늑대인간 적이 발톱으로 덤빈다」고 읽었어요. 패스 둘이 발톱 끝을 패널 안으로 들였다가 다 졌고, 덮칠 때 꼬리를 등 위로 만 고침 하나가 들어갔어요 diff --git a/incoming/pattern-study/craft/kennick/look-96.png b/incoming/pattern-study/craft/kennick/look-96.png new file mode 100644 index 0000000000000000000000000000000000000000..56236ad4df84fa7238a7ec058d8d3ce229bcfc44 GIT binary patch literal 46651 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 literal 0 HcmV?d00001 From 379e1e2e417b9ae90459e2cc18e7c193640daa5c Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 2 Nov 2026 09:23:52 +0000 Subject: [PATCH 11/11] =?UTF-8?q?=EC=97=B0=EA=B5=AC=20=ED=8E=98=EC=9D=B4?= =?UTF-8?q?=EC=A7=80=EB=A5=BC=20=EB=8B=A4=EC=8B=9C=20=EC=A7=80=EC=96=B4=20?= =?UTF-8?q?Kennick=2096=ED=8C=90=EA=B3=BC=20dev=20=EC=9D=98=2094=C2=B795?= =?UTF-8?q?=ED=8C=90=EC=9D=84=20=EC=8B=A3=EB=8A=94=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Gdqi6QqAcZAjrDCiNFvF27 --- incoming/pattern-study/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/incoming/pattern-study/index.html b/incoming/pattern-study/index.html index 9681b50a..fe037ade 100644 --- a/incoming/pattern-study/index.html +++ b/incoming/pattern-study/index.html @@ -210,8 +210,8 @@

패턴 연구

- - + +