Block Blast · Android 10.9.3

Bao nhiêu case rung, và sóng mạnh–yếu ra sao

Tổng hợp tầng đếm (schema / registry / cohort), nhóm sự kiện, đồ thị biên độ theo thời gian từ số đo thật, và 5 hướng chọn cho port.

bucket 30095 · plan 31080101 cohort live: 2 feature dump đầy đủ

01 · Đếm tầng

Không phải 317 sóng trên một máy

Mỗi tầng đếm một thứ khác. Cohort live chỉ 2 feature; số lớn là kho thí nghiệm A/B trên schema/CDN.

317

Schema gộp X / XTrait

221

Haptic theo tên feature

157

Chỉ rung (vibration)

76

Bundle CDN registry

~224

Hợp registry ∪ schema haptic

2

Cohort user hiện tại

1

Trait JS giải mã được

50

Ghép lân cận (có thể nhiễu)

TầngNÝ nghĩa
Schema A/B sau gộp317Mọi mục dump từ RAM schema
… haptic-named221157 rung · 56 lắc màn · 7 cả hai · 1 visual
… ghép lân cận50Có tham số/hàm rung; có thể lẫn chuỗi kế bên
… Revive lắc khối46Đổi khối, không rung motor
CDN traits_registry7673 có bundle trong registry
Cohort live (jsb)2ButtonClickAddShake + isOpenVibrate
JS decoded1ButtonClickAddShakeTrait (HEK còn lại)

Server layer ~215 features; chỉ 2 haptic được gán cho cohort này. Biến thể sóng khác chỉ server có — bơm local không nạp trait nếu server không bật.

02 · Nhóm sự kiện

Tám nhóm gọi rung

Cùng pipeline L3–L6, nhưng mỗi nhóm gate và waveform khác nhau.

01

Nút UI

ButtonClickAddShake → shakeGP → vibrateRepeat26. Cohort: boardOpShake=false → place im, nút vẫn rung.

02

Đặt khối

Cùng trait nút; cần boardOpShake true. Cohort hiện tại tắt.

03

Xoá hàng ≥4

EliminationVibrationTier (L1+L6). Không trong cohort live; port hardcode 25/40/55/70 ms @255.

04

All-clear / skin

ShakeNativeByChangSkin → allClearShake tiers 1–6 (amp↑, ms↓, pulses=tier).

05

Frequency pulse

vibrateRepeatFrequency: chống dồn 25 ms; timings [0,40,25,40,25], amp 180.

06

Sub-game zg.b

sg_fkmj_* → types "1"…"5" (30–150 ms, pattern 2 nhịp).

07

Cài đặt / engine

Toggle isOpenVibrate; Cocos2dxHelper.vibrate(sec); RN VibrationModule.

08

iOS path

shakeIOS → shakeOnceIOS(level) từ buttonClickIosShakeLevel[0|1]. Android: checkAfterIPhone13 luôn false.

03 · Sóng mạnh/yếu

Biên độ theo thời gian

Từng tab = một nhóm 01–08 ở trên. Trục X = ms. Trục Y = amp 0–255. Đoạn on = sin nội bộ (lực); off = nghỉ. Envelope motor, không phải audio.

04 · Hướng chọn

Năm hướng port

Khuyên B cho parity cảm giác gần gốc mà không cần server gán đủ trait.

A Live parity cohort

Chỉ đúng 2 feature đang nhận

Nút theo shakeTimes/Strength cohort; place im (boardOpShake false); không clear/all-clear. Khớp máy test hiện tại, lệch GDD cảm giác xoá hàng.

B Khuyên

Nút cohort + clear/all-clear hardcode

Giữ sóng nút live. Thêm eliminationTierMs [25,40,55,70] và allClearShake tiers 1–6 từ cohort cũ / GDD. Đã có sẵn trong vibrate_feel.h.

C Remote Config dài hạn

Server điều sóng như gốc

Đưa bảng duration/amp/gate lên RC. Đổi cohort không ship app. Cần pipeline config + fallback khi thiếu key.

D Port hết schema ~221

Không khả thi lúc này

75/76 trait còn HEK. Bơm feature local không nạp trait. Chỉ lấy thêm khi server chia cohort rồi quét RAM.

E Stub tối thiểu

Một shot cố định / tắt

Một amp/ms cho mọi event, hoặc tôn trọng toggle off. Nhanh nhưng lệch feel gốc rõ.

Port hiện tại đi hướng B: nút từ trait cohort + clear/all-clear hardcode trong core.

05 · Giới hạn

Đọc số liệu đúng tầng

Rủi roHệ quả
50 mục "ghép lân cận"Có thể lẫn chuỗi RAM kế bên — không coi là 50 sóng chắc.
224 ≠ 224 sóng trên 1 máyCohort chỉ 2; còn lại là kho thí nghiệm server.
HEK traitKhông bẻ khoá; không claim đã có logic 75 trait còn lại.
OS + motorCùng waveform app; cảm giác tay khác theo máy / scale OS.
iOS IPA chưa cóSimulator boot sẵn; dump static khi có IPA trong ref_ipa/.