Go Public: Dua Toko, Dua Penolakan, Tanpa Santai
English Deutsch Español Français Português 中文 Italiano 日本語 한국어 Русский Türkçe Polski Nederlands
Moneyflow kini ada di App Store dan di Google Play. Kami ingin sekali bilang semuanya mulus. Ternyata tidak. Sepanjang jalan kami mengumpulkan dua penolakan dari Apple, mengajari skrip build untuk berkata tidak, mengetahui bahwa sebuah Lambo ternyata bendera balap kotak-kotak sejak awal, dan memperbaiki bug yang dicuekin Google tapi tidak dicuekin Apple.
Ini seluruh ceritanya, disusun dari catatan rilis, runbook, dan pesan commit yang kami tulis tergesa-gesa. Panjang, sedikit kurang ajar, dan kalau kamu akan meluncurkan aplikasi sendiri, isinya ada nasihat sungguhan. Ambil kopi, atau pinjaman kecil dengan jaminan asetmu.
Versi singkatnya, berdasarkan tanggal
- Versi 1.2.8 tayang di Google Play. Pengumumannya menyusul malam itu, dalam enam bahasa.
- iOS menyusul Android di 1.2.8, setelah kami menyelamatkan splash screen yang tak bisa dibaca siapa pun.
- Pengajuan pertama masuk ke Apple tanpa pembelian dalam aplikasinya. Pengajuan kedua masuk dengan semua 39. Jawaban pertama Apple: Information Needed.
- Bersih-bersih merek dagang, dan build 31 untuk mengembalikan kunci yang hilang ke dalam aplikasi.
- Penolakan kedua, dari sebuah iPad: kedua tombol masuk menampilkan error, dan reviewer tidak bisa menemukan Toko.
- Biang keladinya adalah satu parameter yang hilang. Android diam-diam memaafkannya selama ini.
- Build 34, ditandatangani dengan benar. Sign in with Apple akhirnya berfungsi.
- Versi 1.2.9 dirilis bertahap di Google Play.
- Pemain memberi tahu kami ponsel mereka panas. Kami menghentikan game melakukan itu.
- Lima versi dalam satu akhir pekan, dari 1.2.10 sampai 1.3.1.
- Tautan App Store masuk ke beranda kami. Kamu ada di sini.
Pra-IPO: game browser dengan masalah komitmen
Moneyflow lahir sebagai game browser. Kamu memilih karakter dengan pekerjaan nyata, tagihan nyata, dan gaji nyata, melempar dadu, dan berusaha membangun penghasilan pasif yang cukup untuk lepas dari 9-to-5 dan membayar dua impian. Mewujudkan keduanya adalah satu-satunya cara menang, baik di pemain tunggal maupun multipemain. Ada juga pernikahan, perjanjian pranikah, dan perceraian, dan kita akan sampai ke sana.
Lalu kami memutuskan game ini pantas ada di ponselmu dan menemukan bahwa toko aplikasi adalah game yang sama sekali berbeda. Tanpa dadu, tanpa kartu, hanya formulir, kuesioner, dan rumah yang selalu menang. Kami sudah menulis urusan administrasi Google Play sebelumnya, di Menayangkan Moneyflow di Google Play Store. Ini sekuelnya: apa yang terjadi berikutnya, di kedua toko, dan apa yang akan kami katakan pada diri sendiri kalau bisa kembali.
Ronde satu: Google Play bilang ya (setelah meminta segalanya)
Google Play maju lebih dulu, dan ia bersikap seperti bank saat kamu mengajukan KPR: ramah, teliti, dan ingin melihat setiap dokumen yang kamu punya. Formulir Data safety, rating konten, halaman penghapusan akun, masa closed testing. Postingan sebelumnya membahas semuanya, jadi ini yang kami ubah setelah listing pertama selesai.
Kami berhenti mengeklik. Semua 39 pembelian dalam aplikasi (18 pion, 14 skin dadu, 4 tema papan, dan 3 paket, semuanya kosmetik) dibuat dengan skrip, bukan tangan, dengan RevenueCat di antara aplikasi dan kedua toko supaya logika pembelian sama di mana-mana. Rilis juga lewat Android Publisher API. Satu skrip membuka edit, mengunggah bundle, menetapkan jalur, dan commit, dan kalau ada langkah yang gagal, ia menghapus edit-nya, jadi proses yang gagal tidak meninggalkan apa-apa. Itu hal paling rapi di seluruh cerita ini.
Play punya kebiasaan uniknya. Ia menolak nomor build apa pun yang pernah dilihatnya, termasuk yang kamu unggah dan tak pernah dirilis, jadi nomor build berperilaku seperti uang tunai di game: habiskan satu dan ia lenyap, entah kamu mendapat sesuatu atau tidak. Kami juga punya dua service account, dan hanya satu yang boleh menerbitkan. Yang lain bisa membuka edit, mengunggah seluruh bundle, menetapkannya ke jalur, lalu menerima 403 di langkah paling akhir. Semua usaha itu, dan “tidak” yang tegas setelah kuenya sudah terhidang di meja.
Pada 7 September versi 1.2.8 tayang. Malam itu kami menerbitkan pengumumannya dalam enam bahasa, karena kalau mau heboh di depan umum, sekalian saja dalam bahasa Jerman, Spanyol, Prancis, Portugis, dan Tionghoa juga.
Google Play bilang ya. Apple punya rencana lain.
Ronde dua: Apple jual mahal
Selagi Android melesat, iOS masih terparkir di versi 1.2.1 di App Store Connect. Pada 10 September ia menyusul: versi 1.2.8, build 30, sepuluh screenshot baru, dan teks promosi dalam delapan bahasa. Sebelum semua itu ada urusan kecil perjanjian Paid Apps. Apple tak mengizinkanmu membuat satu pun pembelian dalam aplikasi sampai kamu menerimanya dan mengisi data bank dan pajakmu. Sampai saat itu, setiap percobaan mengembalikan 409, cara Apple bilang “belum, dan tidak sampai aku melihat dokumenmu”.
Lalu kami menskrip semua 39 pembelian lewat App Store Connect API. Eksekusi pertama gagal pada 24 di antaranya
dengan UNEXPECTED_ERROR. Kami jalankan lagi dan hasilnya bersih. Runbook kini berisi kalimat paling
zen di repositori: jalankan ulang, jangan debug.
Splash screen yang ternyata bukan
Di ponsel sungguhan, layar peluncuran kami tak terbaca, karena dua alasan terpisah. Storyboard mengisi layar dengan gambar persegi, jadi di ponsel tinggi gambar diperbesar sampai tingginya muat dan memotong sekitar 54% lebarnya. Wordmark dan seluruh bingkai dekoratif keluar dari tepi. Lebih parah, versi mode gelapnya hanya sosok polos sekitar 5% dari kanvas krem, yaitu logo tak terlihat di setiap ponsel yang diatur ke mode gelap.
Kami beralih ke memuat gambar di dalam layar di atas latar krem miliknya sendiri, membuang varian gelap, dan menggantinya dengan logo lockup di 88% kanvas. Folder gambar menyusut dari 55 MB ke 9,1 MB. Kesan pertama tidak boleh seberat 55 MB.
Cara mengajukan aplikasi yang Toko-nya tidak menjual apa-apa
Ini jebakan dengan kamuflase sempurna. Pembelian dalam aplikasi adalah item tinjauan terpisah, dan Apple tidak akan meninjau yang tidak ada di pengajuanmu. Pertama kali kami mengajukan, aplikasi masuk tinjauan dengan semua 39 produk tertinggal di “Ready to Submit”. Kalau disetujui, kami akan merilis game tentang jual-beli yang Toko-nya tidak bisa menjual apa pun. Menariknya kembali menghabiskan satu Remove from Review dan tempat kami di antrean.
Jebakannya adalah Apple membiarkanmu memulai draf pengajuan dari halaman In-App Purchases yang tak akan pernah bisa diajukan. Tanpa versi aplikasi di dalamnya, setiap produk gagal ditambahkan dengan “Unable to Add for Review”, dan mengajukan drafnya gagal dengan “add an app version for the selected platform”. Tak satu pun pesan memberi tahu bahwa versinya harus dimasukkan lebih dulu. Tentu kami mencoba menskrip perbaikannya. API sama sekali tidak punya relasi pembelian dalam aplikasi pada sebuah pengajuan. Kami mencoba tiga ejaan sebelum menerima bahwa pintu ini hanya lewat UI, dan runbook kini mengatakannya, dengan sopan, supaya tak ada yang mencoba lagi.
Angka yang akhirnya membuat kami senang adalah empat puluh: satu versi aplikasi, ditambah tiga puluh sembilan hal untuk dibeli bersamanya.
Penolakan nomor satu: Apple ingin lebih mengenalmu
Pada 11 September Apple membalas. Baris subjeknya Guideline 2.1, Information Needed. Itu bukan bug, crash, atau pelanggaran. Apple tidak melaporkan cacat apa pun. Itu adalah kuesioner yang dikirim Apple ke akun dengan riwayat tinjauan pendek, lengkap dengan permintaan rekaman layar. Anggap itu bukan penolakan melainkan pemeriksaan latar belakang.
Daftarnya tujuh poin: rekaman layar, untuk apa aplikasinya dan untuk siapa, cara masuk dan mencoba semuanya, layanan luar mana yang dipakai, apakah ada yang berubah menurut wilayah, apakah diatur regulasi atau dibangun di atas materi orang lain, dan bagaimana pembeliannya bekerja. Pertanyaan yang masuk akal, seperti pertanyaan kencan pertama yang masuk akal. Resolution Center membatasi balasan 4.000 karakter dan balasan kami mencapai 3.917, hal terpanjang yang pernah kami katakan kepada seseorang yang baru kami kenal.
Lalu rekamannya. Apple ingin alur sungguhan dengan kecepatan sungguhan di ponsel sungguhan: peluncuran dingin, game pemain tunggal, Toko beserta lembar pembeliannya, mendaftar, masuk, lobi multipemain, dan menghapus akun lagi. Empat menit rekaman iPhone pada 60 frame per detik beratnya sekitar 240 MB, terlalu besar untuk dilampirkan, jadi ffmpeg memerasnya sampai di bawah 10 MB dengan antarmuka tetap terbaca. Kami menulis seluruh shot list, karena kalau proyek ini mengajarkan satu hal, itu adalah bahwa kami akan lupa cara melakukan apa pun.
Jawabannya masuk di dua tempat: balasan Resolution Center, dan catatan tinjauan di listing aplikasi, supaya setiap pengajuan berikutnya tiba dengan pertanyaan yang sudah terjawab. Reviewer mengikuti catatan itu secara harfiah. Tulislah untuk orang yang belum pernah melihat aplikasimu, punya empat puluh detik luang, dan sedang memegang iPad. Ketiganya akan terbukti benar.
Satu hal lagi muncul saat kami berlatih. Menghapus akun sempat macet di “Menghapus...” sekali lalu berhasil pada percobaan kedua. Kami curiga servernya sempat tertidur, yang bagi reviewer terlihat persis seperti tombol rusak. Jaga servermu tetap terjaga selagi reviewer ada di kota.
Bersih-bersih merek dagang
Selagi Apple memegang perhatian kami, kami menyusuri game mencari apa pun yang terdengar seperti merek. Aturan hak konten Apple membuat kami memeriksa, dan kami tak suka yang kami temukan. Dua karakter memiliki “BMW 3 Series (CPO)” dan “Honda Civic”. Nama-nama itu tak menambah apa pun pada game dan mengundang banyak masalah, jadi kini namanya “Mobil Sport (CPO)” dan “Sedan Standar”. Kata “monopoly” keluar dari kata kunci App Store kami.
Lalu ada si Lambo. Ternyata pion Lambo tak pernah berupa mobil. Ia emoji bendera balap kotak-kotak selama ini, jadi nama lamanya menjanjikan supercar dan menghadirkan bendera balap. Secara finansial, itu cuma pemasaran. Kini namanya Chequered Flag. Tema papan bernama The Tank menjadi Shark Pool.
Satu aturan yang tidak kami langgar.
Kami mengubah nama tampilan dan membiarkan setiap ID produk persis di tempatnya. Pion kotak-kotak itu masih
pawn.lambo di balik kap mesin dan akan selalu begitu. ID-ID itu sudah live di kedua toko, terikat
ke harga dan disebut dalam pemberian paket, dan mengganti nama salah satunya akan mencabut item itu dari semua
orang yang sudah memilikinya. Nama itu copy. ID itu kontrak.
Penolakan nomor dua: insiden iPad
Pada 17 September Apple kembali, dan kali ini ia menemukan masalah sungguhan. Reviewer memakai iPad Air (11 inci, M3) dengan iPadOS 27, karena aplikasi khusus iPhone berjalan di iPad dalam mode kompatibilitas dan ditinjau di sana. Ada dua temuan. Guideline 2.1(a): mengetuk Lanjutkan dengan Apple atau Lanjutkan dengan Google menampilkan error. Guideline 2.1(b): reviewer tidak bisa menemukan 39 pembelian dalam aplikasi kami.
Keduanya salah kami, dan dalam arti tertentu keduanya adalah kesalahan yang sama.
Bug-nya
Plugin masuk membutuhkan objek options di setiap panggilan. Di iOS, kalau hilang, plugin menolak
dengan “Missing provider or options” sebelum lembar masuk sempat muncul. Di Android, plugin yang sama diam-diam
mengasumsikan objek kosong dan jalan terus. Jadi baris kode yang sama lolos tinjauan Google Play dan roboh pada
ketukan pertama di sisi Apple, di setiap iPhone dan setiap iPad.
Satu parameter hilang. Android memaafkannya. iOS tidak.
Toko yang tak ditemukan siapa pun
Pembelian adalah kesalahpahaman terpisah yang kebetulan pas sekali dengan yang pertama. Catatan tinjauan lama kami memberi tahu reviewer bahwa membeli sesuatu butuh masuk akun. Masuk akunnya rusak. Jadi reviewer tak pernah sampai ke Toko, dalam lingkaran tertutup buatan kami sendiri.
Lebih buruk lagi saat kami melihat lebih dekat, karena Toko punya tiga cara lagi untuk mengecewakan. Kalau daftar produk dimuat tanpa paket, Toko menganggapnya “tidak ada yang dijual” dan menyembunyikan setiap item yang belum kamu miliki. Ketiga paket (5 Pion, Tema, dan Paket Karakter Pemula) tersembunyi sejak Juni. Dan tamu yang membeli Paket 5 Pion akan membayar dan tidak membuka apa-apa, karena server kami hanya memecah paket menjadi item-itemnya untuk pemain yang sudah masuk akun. Tamu, tentu saja, persis seperti reviewer. Mengambil uang seseorang dan menyerahkan kotak kosong adalah pelajaran finansial yang bagus. Hanya saja bukan yang ingin kami ajarkan.
Daftar perbaikannya, untuk catatan. Kirim parameternya. Buat kedua lembar masuk menempel ke jendela aktif aplikasi di iPad, karena plugin berjangkar pada jendela pertama dan di iPadOS itu tidak selalu yang terlihat. Ajari Toko bahwa nol produk termuat berarti “belum dimuat” dan bukan “kosong”. Kembalikan paket-paketnya. Ajari aplikasi memecah paket untuk tamu. Dan tulis ulang catatan tinjauan untuk mengatakan, dengan kata-kata jelas, bahwa tak ada yang butuh masuk akun untuk membeli dan inilah jalur persis ke Toko.
Hasilnya 1.2.9. Catatan rilisnya dibuka dengan dua kalimat yang paling mahal bagi kami: “Perbaikan masuk akun: Lanjutkan dengan Google menampilkan pemilih akun saat diketuk dengan sengaja, dan masuk bawaan tidak lagi error. Toko selalu menampilkan itemnya, bahkan sebelum harga dimuat.” Dua kalimat, sepuluh hari hidup kami.
Build 32 dan 33: yang tak kami bicarakan
Kamu pasti mengira kami tinggal mengirim perbaikannya. Kami melakukannya, dua kali, dan salah dua-duanya. Di build
TestFlight 32 dan 33, masuk lewat Google berfungsi, tapi Sign in with Apple, tombol milik Apple di program uji
milik Apple, gagal dengan AuthorizationError 1000.
Penyebabnya jelas setelahnya dan tak terlihat sebelumnya. Entitlement berjalan dalam tanda tangan kode. Skrip unggah kami mengarsipkan aplikasi dengan penandatanganan dimatikan dan menyerahkan penandatanganan ke langkah ekspor, yang bisa menandatangani aplikasi tapi tak bisa memberinya entitlement yang tak pernah dimilikinya. Entitlement Sign in with Apple tak pernah masuk ke build. Dalam istilah developer, aplikasinya keluar rumah tanpa celana.
Skrip unggah kini menandatangani saat arsip dibuat dan menolak mengunggah arsip mana pun yang tanda tangannya kehilangan entitlement itu. Kami membangun penjaga pintu. Ia memeriksa KTP. Build 32 dan 33 sudah mati, dan build 34, yang berpakaian lengkap, adalah build yang kami kirim kembali ke Apple.
Lalu Apple bilang ya.
Lagi panas
Pada 24 September, pemain sudah memberi tahu kami bahwa ponsel mereka panas. iPhone 15, iPhone 16 Pro Max, dan versi web juga sedikit hangat. Kami ingin sekali bilang ini daya tarik mentah bunga majemuk. Ternyata sebuah timer.
Game menambah counter sekali sedetik, di setiap mode, dan setiap detik merender ulang seluruh game: papan, setiap petak, setiap panel. Terus-menerus. Sementara itu pion beranimasi dilukis ulang hingga 120 kali per detik di ponsel berlayar cepat, hanya untuk menggambar animasi 30 frame per detik. Blur layar penuh di belakang setiap kartu dihitung ulang di setiap frame karena pion terus bergerak di bawahnya. Dan cahaya yang membuat papan terlihat hidup menganimasikan box shadow, yang memaksa lukis ulang di setiap frame.
Kami memperbaiki keempatnya. Counter menjadi satu timeout. Pion hanya menggambar frame utuh, dan berhenti saat di luar layar, saat gerak dikurangi, atau saat tertutup kartu. Cahaya dan cincin menganimasikan opasitas dan posisi alih-alih bayangan, dan berdenyut tiga kali lalu istirahat. Kerja idle di papan turun dari 624 ms ke 15 ms selama sepuluh detik pengujian headless. Dengan kartu terbuka dan pion naga di papan, turun dari 1.188 ms ke 11 ms. Animasi kami kini menunjukkan pengendalian diri lebih banyak daripada yang pernah kami tunjukkan di bagian mana pun dalam proyek ini.
Ia dirilis sebagai 1.2.10, dengan judul “Ponsel lebih adem”, bersama aturan PHK yang lebih adil. Hanya gajimu yang berhenti saat kamu dipecat. Penghasilan sampinganmu tetap cair, dan tagihan tetap jatuh tempo. Dipecat memang harus terasa perih. Tapi tidak boleh menghapus usaha sampinganmu.
Buku besar: setiap catatan rilis, dibaca berurutan
Kami menyimpan catatan rilis di satu file, file yang sama yang memberi makan kedua toko. Dibaca berurutan, ia menjadi semacam buku harian yang aneh, jadi inilah dia dengan subteks ditambahkan. Tanggal adalah tanggal commit. File itu melompat dari 1.0.1 langsung ke 1.2.6, jadi apa pun yang terjadi di antaranya terjadi tanpa buku harian. Setiap nomor versi di bawah ditautkan ke postingannya sendiri.
1.0.0
Rilis pertama Moneyflow. Bangun kerajaan finansialmu lewat properti, saham, dan bisnis. Lepas dari siklus kerja 9-to-5, capai Fast Track, dan kejar impianmu.
Tulus, singkat, dan sedikit ketakutan. Lihat betapa kecilnya dulu.
1.0.1
Google Play Pembelian web kini tersedia di playmoneyflow.com. Peningkatan stabilitas dan UX di seluruh game.
App Store Peningkatan stabilitas dan performa. Berbagai perbaikan bug di panel laporan keuangan dan animasi dadu.
Versi sama, dua set catatan. Kedua toko punya gagasan berbeda tentang apa yang boleh kamu sampaikan kepada orang, jadi kami menyimpan satu set untuk masing-masing dan berusaha tidak tertukar.
1.2.6
Pajak masuk: pajak penghasilan atas gajimu, 15% atas penghasilan sampingan, 15% pajak keuntungan modal atas penjualan yang untung. Karakter kini bergaji nyata AS 2025. Sewa dan imbal hasil bisnis mengikuti ekonomi — tipis saat lesu, melimpah saat boom.
Petugas pajak tiba. Tak ada yang memintanya dan semua orang membutuhkannya. Setiap imbal hasil di game ini kini dinilai setelah pajak, karena itulah satu-satunya imbal hasil yang penting.
1.2.7
Tawar transaksi, penawaran, dan kuotasi pinjaman: sekali lempar koin 50/50, 20% lebih baik atau 20% lebih buruk. Pilih properti mana yang dijual dalam Perang Penawaran dan aset mana yang ikut dalam perceraian — atau tanda tangani Perjanjian Pranikah.
Tawar-menawar dalam bentuk pertamanya yang polos. Juga kemunculan pertama Perjanjian Pranikah, yang menunjukkan apa yang ada di pikiran kami.
1.2.8 7 Sep
Tawar dua kali: tawar, lalu tawar ulang — tapi pihak lain bisa pergi (10%, lalu 15%). Kartu kini cocok dengan hidupmu: tidak ada perceraian sebelum pernikahan, tidak ada penjualan saham tanpa saham. Perceraian membagi harta bersihmu, dan mantanmu bisa mengambil alih pinjaman.
Yang romantis. Tawar dua kali dan mereka mulai sensi. Sampai versi ini dek bisa membagikan perceraian sebelum kamu menikah, lebih kacau daripada kapel pernikahan di Vegas. Ini juga versi yang membawa kami ke depan pintu Apple.
1.2.9 22 Sep
Perbaikan masuk akun: Lanjutkan dengan Google menampilkan pemilih akun saat diketuk dengan sengaja, dan masuk bawaan tidak lagi error. Toko selalu menampilkan itemnya, bahkan sebelum harga dimuat.
Ditulis di bawah tekanan, oleh dua penolakan dan satu parameter yang hilang.
1.2.10 26 Sep
Ponsel lebih adem: game tidak lagi membuat perangkatmu bekerja keras saat kamu bermain. Animasi idle berdenyut beberapa kali lalu istirahat, dan papan berhenti menggambar ulang setiap detik. PHK lebih adil: hanya gajimu yang berhenti, penghasilan sampingan tetap cair, dan pengeluaran tetap jatuh tempo pada gajian yang terlewat.
Yang ini saat kami berhenti membuat ponselmu demam.
1.2.11 26 Sep
Baru di menu Beli: apartemen kota, dry cleaning, dan motel pinggir jalan. … Setiap kartu punya ilustrasinya sendiri, dan pilihanmu ada tepat di bawah kartu. Undang teman ke ruang multipemain privat.
Rilis paling ramai dan salah satu yang paling singkat umurnya, karena 1.2.12 tiba malam itu juga. Ruang privat adalah sorotan bagi siapa pun yang punya teman: seorang host, dua sampai empat kursi, dan kode enam karakter.
1.2.12 26 Sep
Kas kurang? Kini kamu memilih cara menutupnya, dan melihat seberapa dekat kamu ke kebangkrutan: pinjaman darurat berturut-turut, sisa ruang pinjam, dan gajian tersisa. Pinjaman darurat kini lebih murah daripada kartu kredit.
Kebangkrutan kini punya hitung mundur, cara paling ramah yang kami tahu untuk mengajarkan rasa takut. Pinjaman darurat kini lebih murah daripada kartu kredit, lebih dari yang akan diberikan kehidupan nyata untukmu. Diperbaiki juga: dadu dulu melempar sendiri setelah kamu menutup kartu, yang entah bug atau fitur paling pasif-agresif kami.
1.3.0 27 Sep
24 kartu baru, dari motel pinggir jalan dan perusahaan SaaS sampai The Big Short, plus kelangkaan: kartu tak biasa dan langka kini muncul. Sembunyikan kartu untuk melihat papan, lalu ketuk Kembali ke kartu. PHK dan keadaan darurat tidak bisa lagi ditutup.
Dua puluh empat kartu baru, sistem kelangkaan, dan diam-diam perubahan terpenting bulan ini: kartu kini datang dari server. Selengkapnya di bawah.
1.3.1 27 Sep
Pinjam dengan jaminan asetmu: properti, bisnis, atau saham mana pun yang belum punya pinjaman kini bisa menjamin pinjaman bunga saja yang lebih murah, sebesar suku bunga pasar ditambah 0,5%.
Leverage, lagi. Ini game keuangan dan kami tak bisa menahan diri. Ia menyusul 1.3.0 di hari yang sama.
1.4.0 1 Okt
Bot Pro baru merencanakan setiap langkah dan membaca ekonomi, dan kini setiap bot bisa membeli impian, menang, dan meminjam dengan jaminan asetnya. Ekonomi makin berpengaruh: suku bunga mengikuti siklus boom dan resesi, resesi memangkas pajakmu, dan sewa atas asetmu naik saat boom dan turun saat resesi.
Yang ini saat bot belajar menang. Sampai sekarang tak satu pun bisa, karena tak satu pun pernah membeli impian. Bot Pro tiba, ekonomi mulai menggerakkan suku bunga, pajak, dan sewa mengikuti mood-nya, dan aplikasi belajar delapan bahasa lagi.
1.4.1 1 Okt
… KPR kini dicicil selama 25 tahun, pinjaman usaha 15 tahun, dan kredit mobil 6 tahun; pinjaman bank hanya membayar bunga dan kamu bisa meminjam sampai cicilan mencapai 67% dari pendapatan. …
KPR akhirnya punya tanggal berakhir. Pekerjaan pinjaman masuk setelah 1.4.0 dipotong, jadi dirilis sebagai 1.4.1 malam itu juga, bersama kartu berita di layar utama.
1.4.2 1 Okt
Satu bug, diperbaiki kurang dari dua puluh menit setelah 1.4.1: tombol Pinjaman Talangan kini menawarkan jumlah yang benar-benar akan disetujui bank. Ia tak punya catatan toko sendiri.
Akhir pekan lima versi.
Sabtu 26 September
- 14:241.2.10Ponsel lebih adem, PHK lebih adil
- 16:271.2.11Daftar pasar, tenor pinjaman, ilustrasi kartu
- 19:401.2.12Hitung mundur kebangkrutan
Minggu 27 September
- 09:311.3.024 kartu baru, kelangkaan, konten dari server
- 13:191.3.1Pinjam dengan jaminan aset
Waktu commit, waktu Sofia. Tak setiap versi sampai ke setiap toko sebagai dirinya sendiri: di Google Play, 1.2.12 masuk produksi menggantikan 1.2.11, dan di iOS ia diajukan menggantikannya. Selama akhir pekan yang sama dek bertambah 130 ilustrasi, digambar dengan kode.
Pembaruan terbaik adalah yang tak perlu disetujui siapa pun
Di akhir akhir pekan itu kami belajar sesuatu yang berguna. Bagian paling lambat dari merilis pembaruan bukan membuatnya. Itu menunggu toko melihatnya. Jadi 1.3.0 melakukan hal yang sedikit berbeda: ia mengajari aplikasi menerima kiriman.
Kartu baru kini datang dari server kami, jadi sebagian besar konten baru tak lagi butuh pembaruan aplikasi. Butuh satu rilis aplikasi untuk memasang mesinnya. Setelah itu, kartu baru tinggal satu deploy, terjemahan dan ilustrasi termasuk.
Toko bekerja dengan cara yang sama. Apple meninjau pembelian dalam aplikasi baru sendiri, tanpa build baru, jadi pion baru juga tak lagi butuh versi baru.
Bagian pintarnya adalah jaring pengaman. Tak ada yang pernah dibagikan kartu yang tak bisa dimainkan aplikasinya, jadi versi lama dan baru bisa duduk di satu meja tanpa masalah. Saat kami menciptakan mekanik yang benar-benar baru, kami tetap kembali ke antrean seperti semua orang.
Rilis yang sama membawa kelangkaan, artinya sebagian kartu muncul jauh lebih jarang daripada yang lain. Seberapa jarang adalah rahasia kami, tapi yang paling langka muncul sesering App Review lolos di percobaan pertama. Kami mendapat kartu biasa.
Papan skor
Untuk orang-orang spreadsheet.
- 10build number terpakai dalam 20 hari, dari 30 sampai 40
- 39pembelian dalam aplikasi, semuanya kosmetik
- 2penolakan dari Apple, plus satu pengajuan yang kami tarik sendiri
- 3.917karakter dalam balasan kami, dari 4.000 yang diizinkan
- 24 dari 39pembelian yang gagal dibuat pada eksekusi pertama skrip. Eksekusi kedua bersih
- 2build mati, 32 dan 33, dikirim tanpa entitlement-nya
- 5versi di-commit dalam satu akhir pekan
- 624 → 15milidetik kerja idle per sepuluh detik, sebelum dan sesudah kami mendinginkan game
Yang akan kami katakan pada diri sendiri di awal
Yang dulu semalam penuh mengeklik kini hanya kenaikan versi, satu catatan, dan segelintir perintah per toko. Menunggu adalah satu-satunya bagian yang tak bisa kami otomatisasi. Semua yang lain masuk ke daftar ini.
- Pasang versi di pengajuan sebelum pembelian dalam aplikasi. Apple membiarkanmu melakukannya sebaliknya lalu menolak menjelaskan kenapa.
- Tulis catatan tinjauanmu untuk reviewer yang belum pernah melihat aplikasinya. Mereka punya empat puluh detik dan sebuah iPad, dan mengikuti catatan secara harfiah. Beri mereka jalur persis ke segalanya.
- Jangan pernah menaruh masuk akun di depan Tokomu. Tamu juga punya dompet, dan reviewer adalah tamu.
- Tandatangani arsipmu, lalu buat skrip menolak mengunggah yang tidak mengenakan entitlement-nya. Bangun penjaga pintu untuk dirimu sendiri.
- Buat kunci yang hilang berteriak. Build 30 dikirim tanpa kunci pembayarannya dan tak ada yang mengeluh keras, jadi Toko cuma kosong. Kegagalan senyap adalah penolakan yang tertunda.
- Uji di kedua platform meski kodenya dipakai bersama. Android memaafkan yang ditolak iOS, dan satu baris kode punya dua kepribadian.
- Ganti nama produk, jangan pernah ID-nya. Nama itu copy. ID itu kontrak.
- Skrip-kan, buat bisa diulang, tuliskan. API Apple kadang cuma sedang ada momen, jadi jalankan ulang sebelum debug. Runbook kami ada karena kami lupa segalanya dua kali.
- Simpan catatan rilis terpisah kalau toko punya aturan terpisah. Versi sama, kalimat berbeda.
- Kirim konten dari server dan simpan antrean toko untuk mekanik baru. Pembaruan terbaik adalah yang tak perlu disetujui siapa pun.
- Uji di perangkat panas yang benar-benar dimiliki pemainmu. Simulator tak pernah tersipu. iPhone 16 Pro Max tersipu.
- Jaga servermu tetap terjaga selagi reviewer ada di kota. Server yang tertidur terlihat persis seperti tombol rusak.
Ayo, coba kami
Moneyflow gratis di App Store, gratis di Google Play, dan gratis di browser mana pun. Tanpa iklan, dan kamu tak perlu akun untuk mulai. Semua yang ada di Toko bersifat kosmetik. Tak ada yang membantumu menang, yang untuk game tentang uang entah sangat berprinsip atau bisnis yang sangat buruk.
Apa berikutnya? Lebih banyak kartu, yang kini datang dari server, lebih banyak cara bermain dengan teman, dan, kalau semesta berbaik hati, satu minggu penuh tanpa nomor versi.
Sampai jumpa di papan.