Heyawake - Yakında
Heyawake, Japon mantık bulmacasını mobil deneyime taşıyan minimalist bir bulmaca oyunudur. React Native ve Expo ile geliştirilmiş; iOS, Android ve Web platformlarında çalışır. Oyuncular, ızgara üzerindeki odaları kurallara göre siyah–beyaz hücrelerle doldurur. Oyunun özgün zorluğu, oda sınırlarını kaç kez geçebileceğini sınırlayan sınır Kuralından doğar.
Heyawake — Mobile Puzzle Game
Japon mantık bulmacasını mobil deneyime taşıyan minimalist bir uygulama.
Proje Hakkında
Heyawake, geleneksel bir Japon kağıt-kalem bulmacasıdır. Bu proje, oyunun orijinal kurallarını tam anlamıyla koruyarak sezgisel bir dokunmatik arayüzde sunmayı hedeflemiştir.
Oyun, yüzeyde basit görünen ama derinleştikçe karmaşık bir topolojik düşünme gerektiren bir yapıya sahiptir. Sudoku'dan farkı, sadece hücre bazlı değil; oda sınırlarını kaç kez geçilebildiğini de kısıtlayan özgün "Sınır Kuralı"dır.
Oyun Kuralları
Çözümün geçerli sayılabilmesi için dört koşulun eş zamanlı sağlanması gerekir:
- Temas Yasağı — İki siyah hücre birbirine yatay ya da dikey olarak dokunamaz.
- Beyaz Deniz — Siyah olmayan tüm hücreler tek bir bağlı alan oluşturmalıdır.
- Oda Sayısı — Bir odada ipucu varsa, o odadaki siyah hücre sayısı tam olarak o değere eşit olmalıdır.
- Sınır Kuralı (Heyawake'e özgü) — Kesintisiz bir beyaz hücre dizisi, ikiden fazla oda sınırını geçemez.
Teknik Mimari
Uygulama, katmanlı ve bağımlılıksız bir mimariye göre inşa edilmiştir:
types/game.ts ← TypeScript tip sözleşmeleri
data/puzzles.ts ← 15 bulmaca verisi ve seçim algoritmaları
store/game-store.ts ← AsyncStorage okuma/yazma, streak mantığı
utils/validator.ts ← 4 kurallı gerçek zamanlı doğrulama motoru
constants/theme.ts ← Renk paleti (GameColors)
app/ ← Expo Router ekranları
Doğrulama Motoru dört bağımsız algoritma çalıştırır:
| Algoritma | Görev | |---|---| | Adjacency Validator | Komşu siyah hücre tespiti | | Flood-Fill Validator | Beyaz hücre bağlantısı (ada oluşumu kontrolü) | | Room Count Validator | Oda ipucuyla siyah hücre sayısını karşılaştırma | | Boundary Span Validator | Beyaz dizilerin kaç oda sınırı geçtiğini sayma |
Özellikler
- 15 özgün bulmaca — Kolay, Orta ve Zor olmak üzere üç zorluk kademesi
- Günlük Bulmaca — Her gün deterministik algoritmayla belirlenen yeni bulmaca ve seri takibi
- 11 Başarım — İlk çözümden 30 günlük seriye uzanan ilerleme sistemi
- Geri Alma (Undo) — Sınırsız adım geri alma
- Anlık Hata Geri Bildirimi — İhlal anında ihlale neden olan sınırları görsel olarak vurgulama
- Haptic Dokunma — Hücre yerleşimlerinde dokunsal geri bildirim
- Açık / Karanlık Mod — Sistem temasını otomatik takip eden
userInterfaceStyle: automatic - Cross-Platform — iOS, Android ve Web (static export)
Kullanılan Teknolojiler
| Kategori | Teknoloji | |---|---| | Framework | React Native 0.81 + Expo SDK 54 | | Dil | TypeScript 5.9 (strict mode) | | Navigasyon | Expo Router 6 (dosya tabanlı) | | Veri Kalıcılığı | AsyncStorage | | İkonlar | SF Symbols (iOS) · MaterialIcons (Android/Web) | | Dokunsal | expo-haptics | | Bildirimler | expo-notifications |