Code Owl adalah game edukasi interaktif yang mengajarkan dasar-dasar pemrograman Python melalui puzzle berbasis grid. Dikembangkan menggunakan Construct 2, game ini memadukan pembelajaran coding dengan gameplay yang engaging.
Coba game secara langsung di: edi-mj.github.io/codeowl/
Code Owl dirancang untuk pemula yang ingin belajar konsep fundamental Python dengan cara yang menyenangkan. Pemain akan menulis kode sederhana untuk menggerakkan karakter melewati berbagai rintangan dan mencapai tujuan.
- Variabel & Assignment - Deklarasi dan pengisian nilai variabel
- Tipe Data Integer - Bekerja dengan angka
- Function Calls - Memanggil method dengan parameter
- Sequential Logic - Memahami urutan eksekusi kode
- Control Flow - Logika dasar pemrograman
Game terdiri dari multiple chapter dengan tingkat kesulitan yang meningkat secara bertahap. Setiap level memiliki objectives yang jelas dan hint untuk membantu pemain.
Sistem save otomatis menggunakan browser local storage, memungkinkan pemain melanjutkan progress kapan saja.
Interface yang sederhana dan intuitif memudahkan pemain untuk menulis kode tanpa distraksi berlebihan.
- Construct 2 - Visual game development platform untuk HTML5
- AJAX - Loading data level dari JSON
- JSON Parser (Yann Granjon) - Parse konfigurasi level
- Local Storage - Menyimpan progress pemain
- Web Font Loader (Rex.Rainbow) - Custom typography
- LiteTween (lunarray) - Smooth animations
- MoveTo & RotateTo (Rex.Rainbow) - Character movement behaviors
- Environment tiles (tanah, air, batu, jembatan, dll) - CraftPix Free Level Map Pixel Art Assets Pack
- Custom sprite untuk characters dan interactive objects
- Sound effects dan background music
- 10,000+ baris level configuration dalam JSON format
- Install Construct 2 (versi 280 atau lebih baru)
- Buka file
main.capx - Klik tombol "Run layout" untuk preview
- Extract file
main.capx(format ZIP) - Buka
Code Owl.caprojdi Construct 2 - Export sebagai HTML5 project
- Host file HTML di web server atau buka langsung di browser
Level 1 - "Tinggal Lurus"
langkah = 7
player.step(langkah)Pemain harus mengisi variabel langkah dengan nilai yang tepat.
Level Lanjutan
player.step(4)
player.turn("left")
player.step(1)
Jembatan = 50
player.step(10)
player.turn("left")
player.step(17)Kombinasi movement commands dan variable assignment.
player.step(n)- Gerakkan karakter sebanyak n langkahplayer.turn(direction)- Putar karakter ("left", "right", dll)- Variable assignment - Buka obstacle dengan nilai yang tepat
- Player - Karakter yang dikendalikan player
- Portal - Tujuan akhir setiap level
- Wall - Penghalang statis
- Bridge/Gate - Rintangan yang memerlukan variabel untuk dibuka
- Crystal/Beacon - Collectibles opsional
Game ini dioptimalkan untuk browser modern dengan dukungan:
- HTML5 Canvas
- WebGL
- Web Audio API
- LocalStorage API
Tested on: Chrome, Firefox, Edge, Safari
- Platform: Web Browser (HTML5)
- Resolution: 1536 x 736 pixels
- Orientation: Landscape
- Input: Mouse/Touch
Project ini menggunakan Construct 2 event system untuk logika game, yang memungkinkan development visual tanpa coding tradisional. Namun, game ini sendiri mengajarkan konsep coding kepada end user.
Level configuration disimpan dalam format JSON untuk memudahkan editing dan penambahan level baru tanpa perlu membuka project file.
Contributions welcome! Beberapa area yang bisa dikembangkan:
- Menambah level baru dengan konsep Python yang lebih advanced
- Improve UI/UX untuk code editor
- Menambah materi pembelajaran (loops, conditionals, etc)
- Localization ke bahasa lain
Project ini dibuat untuk tugas akhir mata kuliah Pengembangan Perangkat Lunak.
- Game Design & Development: Original team
- Sound Effects: Game audio assets
- BGM: "Whispering Pines", "Pixel Forest Dream"
Note: File .capx adalah format proprietary Construct 2 yang merupakan archive ZIP berisi XML dan asset files.