DEKODE
ATAU HANCUR.
Permainan intelijen berbasis teks dengan Flutter, Supabase, Provider, dan Dart. Pemain menjadi Direktur operasi: menugaskan agen, membaca sinyal rusak, menekan ancaman global, dan menyusun bukti sebelum sistem runtuh.
CLASSIFIED NODE
ACCESS: DIRECTOR ONLY
SUBJECT: missing_node.dat
STATUS: UNRESOLVED
LOCATION: ████████████
ARSITEKTUR SISTEM
Portal ini memadatkan alur layar utama DECIPHER: dari Dashboard, Secure Inbox, penugasan agen, Workspace, Registry, hingga profil Direktur. Struktur dibuat lebih linear agar pengunjung langsung paham “mesin game”-nya.
Main Terminal
Pintu utama: threat meter, intel funds, status agen, dan pintasan menuju operasi.
Secure Inbox
Daftar misi dikelompokkan berdasarkan operasi, termasuk Black Ops yang hanya muncul pada waktu tertentu.
Formulir Tugas
Direktur memilih agen dan melihat dossier sebelum misi dimulai.
Workspace
Inti gameplay: typewriter log, dekripsi matriks, overlay blackout, pilihan taktis, dan hasil misi.
Registry
Manajemen personel: status aktif, injured, M.I.A, heal agent, dan trust degradation.
Direktur
Manifes pemain: clearance, riwayat misi, counter M.I.A, dan threat critical state.
TIGA PILAR OPERASI
Global Threat
Setiap kegagalan, waktu habis, atau agen M.I.A meningkatkan tekanan global. Pada ambang kritis, seluruh operasi menjadi lebih tidak stabil.
Intel Funds
Mata uang taktis untuk memulihkan agen, menutup risiko, dan mengaktifkan opsi tertentu. Salah kelola dana berarti kehilangan ruang manuver.
Agent Trust
Kepercayaan agen memengaruhi performa dan risiko. Di bawah 40%, keputusan lapangan mulai rapuh seperti sandi yang setengah terbaca.
DOSSIER AGEN
Setiap agen memiliki spesialisasi yang diterjemahkan menjadi perk pasif. Tampilan dibuat seperti berkas intel yang ditarik dari laci arsip lama—dingin, lusuh, dan penuh konsekuensi.
Agen Kala
Tahan terhadap penalti kegagalan. Ideal untuk misi Grande dengan blackout aktif.
Agen Bima
Menambah waktu misi. Krusial untuk seasonal mission yang menekan batas detik.
Agen Sita
Menyaring kebohongan interogasi otomatis. Cocok untuk puzzle linguistik.
Agen Bayu
Mengurangi intensitas StaticNoise. Sinyal tetap terbaca ketika layar mulai rusak.
Agen Nara
Memperkecil kenaikan threat pada pilihan berisiko. Tajam, sunyi, dan sulit dilacak.
PAPAN BUKTI
Bagian forensik dibuat lebih naratif: seperti ruang gelap tempat petunjuk kecil—sensor tol, log radio, metadata paspor—mulai membentuk siluet konspirasi.
TEKANAN VISUAL
Blackout
Interval acak 8–15 detik, durasi gelap 2–4 detik. Pemain kehilangan visual saat keputusan dibutuhkan.
Decrypt
40 tick per 50ms membongkar teks dari noise menjadi instruksi yang terbaca.
Static Noise
Korupsi teks meningkat dari 15% ke 40% saat waktu menipis, tetapi spasi dan tanda baca dipertahankan.
Result
Keputusan taktis mengubah threat, funds, trust, dan status agen.
M.I.A Timer
Countdown 180 detik menentukan apakah agen pulih atau sistem menaikkan ancaman.
Offline Fallback
Progress disimpan lokal sebelum dan sesudah sinkronisasi Supabase agar tidak rapuh.
KODE SISTEM
Bagian kode dibuat seperti “console evidence”: singkat, teknis, tapi tetap bisa dibaca pengunjung yang bukan programmer.
// TRINITY PILAR A: GLOBAL THREAT int _threatLevel = 25; void modifyThreat(int delta) {{ _threatLevel = (_threatLevel + delta).clamp(0, 100); notifyListeners(); }} // M.I.A EMERGENCY · 180 detik _emergencyTimer = Timer.periodic(Duration(seconds: 1), (t) {{ _emergencySeconds--; if (_emergencySeconds <= 0) modifyThreat(25); }});
// Random interval: 8–15 detik int _randomBetween(int min, int max) => min + _random.nextInt(max - min + 1); enum _BlackoutPhase {{ normal, flash, dark }} // Teks saat layar gelap final messages = [ 'SIGNAL LOST', 'JAMMING DETECTED', 'ENCRYPTING...' ];
// 40 ticks × 50ms = 2 detik const int maxTicks = 40; _timer = Timer.periodic(Duration(milliseconds: 50), (t) {{ int revealLength = (cleanText.length * progress).floor(); if (ticks >= maxTicks) widget.onComplete(); }}); final _chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#$%&*';
enum AgentStatus {{ active, injured, mia }} // trust_level bisa null dari Supabase trustLevel: (json['trust_level'] as num?)?.toInt() ?? 80, status: AgentStatus.values.firstWhere( (e) => e.toString().split('.').last == json['status'], orElse: () => AgentStatus.active, );
STATUS BUILD
Shell
Dashboard, Inbox, Registry, Profile, dan Agent Detail sudah punya alur visual jelas.
Models
Mission, Agent, result, dan progress memakai struktur Provider + Supabase.
Workspace
Inti gameplay: pilihan taktis, overlay, perk, dan result chain masih tahap pematangan.
Evidence
Papan bukti, arsip, dan node investigasi akan dibuat lebih interaktif.
SIAP MASUK
MAINFRAME?
DECIPHER bukan sekadar halaman aplikasi; ia portal dunia cerita—seperti layar terminal tua yang menyimpan terlalu banyak rahasia.
KEMBALI KE
BERANDA UTAMA.
Jelajahi portal proyek lain: Lokalarm, AuraStudy, GuessInChat, CapitalismX, dan arsip pengembangan Flutter terbaru.
Buka Portal
Belum ada komentar. Jadilah yang pertama! 👋