Mengapa aset tambahan tersisa di pertandingan final?

28

Saya baru saja membaca tentang apa yang ditemukan dalam file untuk No Man's Sky, banyak hal yang tidak digunakan atau relevan dengan permainan. Saya juga membaca beberapa saat yang lalu tentang pengaturan E3 yang tersisa di file Watch Dogs. Mengapa pengembang game meninggalkan file lama dan tidak terpakai di game terakhir?

Tentunya ini hanya membutuhkan ruang ekstra pada disk dan berarti lebih banyak data harus diunduh jika Anda mengunduh gim?

Juga, bukankah pengembang takut dengan apa yang bisa ditemukan orang?

Jay P
sumber
7
umumnya itu tidak akan menggunakan data yang cukup untuk menjamin menghapusnya. Dan kadang-kadang menghapus file "tidak terpakai" ini sebenarnya dapat menyebabkan masalah pada objek game lain yang menggunakan bagian dari file "Tidak Terpakai". Saya pikir itu hanya sampai pada tenggat waktu yang perlu dipenuhi, dan fakta bahwa pada saat terakhir konten dapat dipotong.
Ryan white
10
Sebagai catatan, lantai ruang pemotongan penuh dengan contoh ini. tcrf.net/The_Cutting_Room_Floor
drawoc
2
1) Tidak ada yang ingat untuk menghapusnya. 2) Ya. 3) No.
user253751
Contoh lainnya adalah Dota2. Tidak hanya para pengembang meninggalkan beberapa aset, mereka bahkan menyertakan fitur yang tidak lengkap yang berarti untuk kemungkinan rilis di masa depan. Misalnya karakter, barang, atau keterampilan baru. Jadi orang-orang yang membongkar biner dapat melihat setidaknya beberapa berita masa depan yang mungkin tentang permainan (contoh terkenal: karakter pit lord / underloard yang terlihat dalam kode tahun lalu telah secara resmi diumumkan beberapa hari yang lalu).
Bakuriu

Jawaban:

35

Game-game besar menggunakan sesuatu yang disebut pipeline build. Ini seperti seperangkat alat yang menangani pembuatan konten game untuk semua distribusi yang berbeda. Game multi-platform seperti No Man's sky dan Watch_Dogs pasti menggunakan aset yang berbeda untuk platform yang berbeda. Jadi cara saya melihatnya ada dua kemungkinan jawaban untuk pertanyaan Anda.

  1. Para devs lupa untuk menghapus aset tertentu dari pipa dan mereka dibundel dengan permainan yang sebenarnya.

  2. Para devs dengan sengaja meninggalkan beberapa aset "yang tidak digunakan" dalam game untuk digunakan nanti selama patch atau pembaruan, karena mereka tidak dapat memenuhi tenggat waktu. Contoh Lubang Setan dari Sang Penyihir 3.

Uri Popov
sumber
16
Juga, 3. Secara sengaja menempatkan "aset yang tidak digunakan" sehingga para modder / pengguna listrik menemukannya, untuk menyelinap ke rilis mendatang. Mirip dengan # 2, kecuali kontennya bahkan mungkin tidak digunakan dalam judul atau tambalan tertentu di masa depan.
Kroltan
4
+1 untuk Kroltan # 3. IIRC The Witcher 3 memiliki contoh telur paskah yang tersembunyi di konten yang tidak digunakan. Ada beberapa area rahasia yang Anda perlukan untuk mod permainan untuk mencapai yang memiliki foto para devs atau sesuatu seperti itu.
susu
3
"Lupa menghapus" bukan cara yang sangat baik untuk menggambarkannya. Para devs mungkin tahu mereka telah menghapus penggunaan aset mereka. Namun kemungkinan tim lain sudah mulai menggunakan aset tersebut. Dalam kasus seperti itu, kemungkinan biaya penghapusan (benar-benar menghancurkan sebuah game) jauh lebih besar daripada manfaat menghapusnya.
Aron
33

Mungkin lebih sulit daripada yang Anda pikirkan untuk menemukan semua konten yang direferensikan dalam permainan besar yang dikerjakan oleh banyak orang. Bahkan ketika ada alat eksplisit di tempat untuk membantu (kami membangun alat seperti itu di ArenaNet, siapa pun yang menggunakan Unreal memiliki akses ke versi alat Unreal, Bungie memiliki alat yang melakukan hal yang sama dan bahkan memberi ceramah tentang hal itu, dan lain-lain)

Ada beberapa cara konten dapat dirujuk yang dapat mengalahkan sistem tersebut, umumnya hanya dengan mereferensikan konten dengan sesuatu yang tidak dapat dilacak oleh sistem (seperti membuat referensi tersirat atau tersandikan dalam kode untuk beberapa aset).

Bahkan dengan asumsi Anda telah memecahkan masalah menemukan semua konten antar-referensi, Anda memiliki masalah karena tidak dapat mengetahui apakah sesuatu benar-benar digunakan . Mungkin beberapa aset direferensikan dalam skrip di suatu tempat, tetapi volume pemicu untuk skrip itu ditempatkan secara salah di dalam dinding dan kontennya tidak akan pernah bisa muncul dalam game. Menguji ini secara mendalam juga cukup sulit.

Ketika metode otomatis (atau otomat mampu ) untuk mendeteksi dan memfilter konten yang tidak digunakan gagal, Anda dibiarkan dengan cara kuno: intervensi manusia. Manusia membuat kesalahan, asumsi buruk (mereka mungkin berpikir file masih digunakan meskipun itu bukan karena orang lain membuat perubahan), dan ya bahkan kadang-kadang memilih untuk sengaja meninggalkan konten yang tidak relevan dalam permainan sebagai Telur Paskah. Hanya falibilitas manusia alami yang mengarah pada ini.

Ini biasanya bukan jumlah yang cukup konten untuk benar-benar bergerak jarum banyak untuk beban atau berkas optimasi ukuran. Ada juga alat untuk melaporkan aset terbesar atau paling lambat dalam rantai atau mesin pembangun besar, tetapi fokusnya adalah untuk mengurangi dampak dari pelaku utama dan tidak menemukan dan menemukan setiap byte yang terbuang sia-sia. Biasanya.

Josh
sumber
Contoh untuk file yang tidak digunakan sebagai easter egg di Arqade: Di mana 'Song That Might Play When You Fight Sans' muncul di Undertale?
Philipp
1
Starbounl saat ini memiliki masalah di mana Anda tidak bisa mendapatkan / membuat "tentakel yang dimasak" karena bagian yang mengajarkan Anda resepnya dihapus. Sementara file aset dan definisi hanya duduk di sana tampak seperti mereka seharusnya berfungsi. Mengingat di sana Anda sering mempelajari satu resep untuk membuat / mengambil beberapa item berbeda yang terbuat dari bahan yang sama (untuk makanan), mudah untuk melihat bagaimana bit dapat dikeluarkan dari permainan hanya karena kesalahan.
StarWeaver
1
Bahkan jika seseorang dapat menemukan semua konten yang tidak digunakan oleh game yang termasuk dalam disk, beberapa game dirancang untuk memungkinkan pengguna mengunduh modul tambahan yang dapat diproduksi oleh vendor setelah disk telah diproduksi . Jika disk menyertakan tekstur bernilai sepuluh megabyte yang tidak digunakan dalam game pada disk tetapi akan berguna dalam versi unduhan, itu mungkin memungkinkan ukuran unduhan dikurangi hingga sepuluh megabyte.
supercat
1
Contoh lama di mana ada banyak aset yang tidak digunakan dalam permainan yang dikirim adalah MechCommander 2. Ketika Microsoft menguji alat XNA Build baru mereka di atasnya, itu mengungkapkan bahwa 40% dari tekstur permainan tidak digunakan. blogs.msdn.microsoft.com/briankel/2006/01/24/…
Ross Ridge
Hanya sebuah catatan: Untuk bahasa lengkap Turing (dan yang paling bermanfaat), mencari tahu apakah satu baris kode pernah dieksekusi atau tidak tidak dapat dipecahkan (Menghentikan Masalah). Jika Anda berhasil melakukan ini, Anda mungkin juga meninggalkan permainan dan mengumpulkan Hadiah Nobel Anda sebagai gantinya.
Biasa
9

Apa yang hilang dalam jawaban lain adalah bahwa ini tidak ada hubungannya dengan game. Ini mempengaruhi semua aplikasi.

Selalu ada file, dan kode yang tidak akan digunakan dalam program yang cukup kompleks. Ini terjadi karena 2 hal berikut:

  • Program berkembang seiring waktu.
  • Diperlukan upaya untuk mengetahui apakah sebagian kode atau beberapa file tidak lagi digunakan.
    • Jika Anda menghapus hal-hal tanpa menghabiskan usaha, perilaku aplikasi menjadi tidak dapat diprediksi
Peter
sumber
7

Menambah / ehancing Uri Popov 's jawabannya :

  1. Program dapat menginstal paket pembaruan yang berisi versi baru yang lebih baik dari file aset yang ada dan pembaruan untuk program itu sendiri. Untuk bagian saya, saya tidak menimpa versi sebelumnya dari file aset, karena saya ingin memperbolehkan mundur ke versi program sebelumnya (bayangkan, misalnya, panik karena telah mendistribusikan pembaruan yang benar-benar berbahaya :-)). Versi program asli mungkin menggunakan tekstur_0.dds dan yang diperbarui tekstur_1.dds (maka tekstur_0.dds tidak lagi diperlukan). Timpa (hanya menggunakan satu nama) akan melarang penghapusan pembaruan program, yaitu, mundur ke versi asli, kecuali ada juga mekanisme rumit menimpa file aset baru dengan yang lebih lama. Dan itu bukanlah sesuatu yang ingin didukung oleh siapa pun.

Edit:

Bereaksi pada komentar terhadap pertanyaan awal,

Tidak ada yang ingat untuk menghapusnya

  1. Saya akan mengatakan bahwa tidak ada yang berani menghapusnya. Apa yang terjadi jika permainan tidak memiliki perangkap kesalahan yang cukup (karena kesalahan, ketidaktahuan, kesalahan, orang kunci meninggalkan perusahaan, dll.) Pada titik pemuatan file X (sekarang hilang), dan masalahnya tidak ditemukan meskipun telah dilakukan pengujian yang intensif? Katakanlah pemuatan hanya terjadi "setiap kali ke-3", hanya pada level 35 dari 36, yang Anda capai hanya dalam 4 minggu permainan yang intens :-). Kehilangan reputasi dengan menabrak perangkat lunak adalah fenomena brutal, dan mungkin dalam kasus terburuk berakhir di perusahaan yang bangkrut. Lebih baik tidak menyentuh file itu :-).
Angin badai
sumber
4
+1 untuk "tidak ada yang berani menghapus". Tidak menghapus aset yang tidak digunakan sering kali hanya menghabiskan sedikit ruang disk. Menghapus aset yang masih digunakan orang lain di tim Anda bisa membuat perusahaan Anda kehilangan banyak reputasi jika meninggalkan papan catur berwarna ungu besar atau menyebabkan crash.
Patrick M
2

Mengapa pengembang game meninggalkan file lama dan tidak terpakai di game terakhir?

Tentunya ini hanya membutuhkan ruang ekstra pada disk dan berarti lebih banyak data harus diunduh jika Anda mengunduh gim?

Juga, bukankah pengembang takut dengan apa yang bisa ditemukan orang?

Pengembang game meninggalkan file yang tidak digunakan dalam game terakhir karena mereka tidak ingin menghabiskan upaya untuk menemukan dan menghapus semua file yang tidak digunakan. Setelah semua permainan berjalan dengan baik dengan sedikit bahan tambahan dan waktu adalah uang. Membersihkan meningkatkan biaya (tergantung pada bagaimana hal ini terjadi secara otomatis).

Walaupun membutuhkan ruang ekstra dan berarti lebih banyak data harus diunduh, ini biasanya bukan masalah pengembang dan bahkan pelanggan biasanya tidak terlalu peduli dengan ukuran unduhan yang sedikit lebih besar.

Tidak yakin apakah pengembang perlu takut pada apa pun yang mungkin ditemukan orang? Kenapa harus begitu? Selama tidak ada kompromi dalam file tambahan (karya seni yang benar-benar buruk, lelucon tentang bos mereka atau pelanggan, ...) mereka mungkin tidak terlalu peduli. Meskipun dalam beberapa kasus mereka sebenarnya takut dengan apa yang mungkin dideteksi pemain dalam aset.

Trilarion
sumber
Not sure if developers need to be afraid of anything people might find?membaca alasan mengapa uji teknologi Titanfall 2 tidak datang ke PC, mereka tidak setuju: P.
TMH
@ TomHart Kamu benar. Dalam hal ini mereka takut. Dalam kasus lain seperti yang disebutkan dalam pertanyaan mereka tidak dan termasuk aset tambahan. Saya kira tingkat ketakutannya berbeda antara pengembang.
Trilarion
1

Sudah diisyaratkan, tetapi belum sepenuhnya tersentuh oleh jawaban lain: semuanya bermuara pada biaya, dan beberapa biaya lebih rumit daripada yang Anda bayangkan.

Biaya yang paling jelas adalah seseorang harus menghapusnya. Sekarang Anda bisa menempatkan magang di kasing dan minta dia mencari melalui file dan yang lainnya untuk menghapus yang tidak diperlukan dalam gim yang sebenarnya. Tapi tetap saja, Anda harus membayar untuk ini dan, bahkan jika Anda tidak (karena Anda adalah monster yang tidak membayar magang) Anda masih bisa meminta magang itu melakukan sesuatu yang berguna seperti memesan pizza untuk tim dev, jadi masih dikenakan biaya.

Biaya yang kurang jelas adalah bahwa sumber daya yang akan Anda hapus dimasukkan karena suatu alasan: apakah Anda benar-benar yakin bahwa alasan itu sudah usang? Tentu, Anda menulis kode ini untuk demo dan tidak membutuhkannya lagi, tetapi apakah itu sepenuhnya benar? Apakah Anda menulis fungsi berguna yang Anda lupa untuk migrasi ke perpustakaan lain? Apakah Stacey membuat grafik yang sangat keren untuk demo yang berakhir di permainan nyata? Apakah simulator internal masih menggunakan level lama yang Anda gunakan untuk pengujian?

Membuat game adalah bisnis. Bahkan jika itu bukan bisnis menghasilkan uang, itu masih bisnis dengan sumber daya terbatas. Setiap keputusan memerlukan analisis biaya-manfaat, bahkan jika Anda tidak menulis kasus bisnis untuk setiap keputusan. Dan fakta sederhana adalah bahwa biaya untuk meninggalkan aset-aset itu dalam permainan adalah unduhan yang sedikit lebih besar, dan manfaatnya adalah risiko yang secara signifikan berkurang dari sesuatu yang meledak sebelum rilis.

Semua tanda tanya di paragraf "kurang jelas" mewakili ketidakpastian. Anda tidak tahu. Dan ketika Anda menjalankan bisnis, Anda harus menukarkan yang tidak dikenal dengan yang dikenal. Dan yang diketahui adalah bahwa paket yang Anda buat lulus pengujian, bahkan jika paket itu sedikit mengasah.

Ada biaya potensial lainnya seperti kebocoran informasi di sekitar proses pengembangan yang berpotensi digunakan untuk mendapatkan peretasan, tetapi Anda berhasil melewati proses pengujian apa adanya, Anda seharusnya tidak benar-benar khawatir tentang itu.

tl; dr: Tidak ada yang akan melihat unduhan 4% lebih besar, tetapi mereka akan melihat jika Anda memecahkan permainan dengan menghapus file yang diperlukan.

corsiKa
sumber