Skenario: saat pemrograman Anda tiba-tiba memiliki keinginan nostalgia untuk era 80-an dan permainan murahan.
Persyaratan: Buat program GUI (teks mungkin tidak akan berfungsi) untuk Simon, game. Input dapat mengklik, atau menekan tombol. Anda harus membagi layar menjadi 4 wilayah: kuning, biru, merah, hijau. Saat permainan dimulai, warna acak menyala dan Anda mengaktifkannya. Kemudian, dua lampu menyala, satu demi satu, dan Anda harus mengaktifkannya secara berurutan, dll. Permainan berakhir ketika Anda menekan warna yang salah.
Bonus:
-100 jika Anda memasukkan suara (nada berbeda dimainkan saat menekan setiap wilayah dan saat permainan menunjukkan warna)
-25 jika Anda memasukkan penghitung skor.
Jawaban:
Bash
318297281273268244240-125 = 115Ini terutama merupakan respons terhadap "Teks mungkin tidak akan berfungsi"; skrip bash berbasis teks berikut berjalan dengan baik
Konsole
,gnome-terminal
dll. di mesin Ubuntu 14.04 saya. Untuk membuat daerah warna itu mengatur warna latar belakang teks. Bahkan, menambahkan teks membuat permainan lebih mudah diakses oleh pemain buta warna. Untuk membuat permainan lebih mudah diakses, ia membaca karakter yang harus ditekan oleh pemain (diasumsikanespeak
telah dipasang). Ini juga mengasumsikan bahwa satu-satunya pencocokan file/d*/ur*/
adalah/dev/urandom
. Untuk wilayah warna yang berukuran non-sepele, Anda mungkin ingin mengatur ukuran teks menjadi cukup besar. Juga jika Anda ingin daerah warna menjadi kuadran, Anda harus menjalankannya di terminal dengan lebar dua karakter.Untuk memutar tekan y, r, g atau b sesuai keperluan.
Solusi ini mengandung dua karakter ESC yang tidak dapat dicetak. Meskipun karakter ESC ini muncul dalam pratinjau, mereka tampaknya dihapus setelah pengiriman, jadi kode di atas adalah pembungkus yang menghasilkan dan menjalankan golf
simon_golf.sh
.Lihat juga versi ungolfed asli , dan versi 256 byte yang sedikit lebih dapat dimainkan .
Screenshot di bawah ini adalah ketika lampu kuning menyala dan skor pemain adalah 7. Screenshot di sebelah kanan telah dideaturasi untuk mensimulasikan buta warna.
sumber
Scratch, 1604 - 125 = 1479
Saya di sini untuk bersenang-senang, bukan golf.
Sunting: metode penilaian yang diperbarui berdasarkan konsensus komunitas .
Program utama:
Sprite individu:
Ini adalah sprite dengan angka
0
. Sprite lain memiliki skrip yang sama, kecuali jumlahnya.Mainkan secara online .
Kode yang digunakan untuk penghitungan byte: (Menggunakan snippet untuk menyembunyikan kode)
Tampilkan cuplikan kode
Catatan: Kode secara otomatis dihasilkan menggunakan generator scratchblock , yang dimodifikasi karena generator tidak menangani angka desimal dengan benar (memperlakukan 0,3 sebagai 0).
Tangkapan layar:
Catatan: Tolong jangan menekan dua tombol dalam waktu 0,3 detik.
sumber
Mathematica, 409 - 125 = 284
sumber
Windows PowerShell (CLI), 272 - 100 - 25 = 147
Saya telah menambahkan baris baru di sini untuk menghindari pengguliran samping, tetapi berfungsi sebagai satu baris sehingga jumlah karakter tanpa baris baru.
Tangkapan layar:
Bermain:
Komentar:
sumber
ZXBasic: 422 - 100 - 25 = 297
Ini jelas dianggap sebagai dorongan nostalgia untuk tahun 80-an ...
ZXBasic menggunakan kombinasi perintah tipe FreeBASIC dan ZX Spectrum BASIC untuk memungkinkan loop dan pengulangan yang kemudian berubah menjadi format TZX untuk dimuat ke dalam emulator Spectrum.
Versi ini mengubah batas (meskipun legenda di layar mengatakan tombol mana yang harus ditekan). Ini memainkan catatan yang sama seperti permainan Simon asli ( http://en.wikipedia.org/wiki/Simon_%28game%29 ).
sumber
HTML5 dan Javascript, 1118-100-25 = 993 byte
Versi HTML + Js terlalu membengkak.
Dimainkan suara melalui API Audio Web .
Frekuensi catatan harus yang asli Simon, warna dan penempatan warna juga.
Ada demo online di sini: http://www.dantonag.it/miniSimon.html . Bekerja di browser yang sesuai dengan Audio Web (setidaknya Chrome dan Firefox, IE tidak mendukungnya, AFAIK).
Rekor saya adalah 15 (saya sangat buruk dalam game ini). Apa milikmu?
sumber