Kehidupan baru gim-gim lama: direktori sumber terbuka port sumber (Java + PHP)

Baru-baru ini, terpikir oleh saya untuk menghidupkan kembali katalog port-sumber lama saya dan modifikasi grafis untuk game-game lama. Versi baru ini seharusnya bersifat open-source dan terbuka semaksimal mungkin sehingga setiap pengguna dapat mengedit konten situs dan kode-kodenya, dan saya hanya perlu berurusan dengan perubahan moderasi pra-moderasi. Jika Anda tertarik pada apa yang datang dari ini, bagaimana saya menciptakan masalah saya sendiri dan bagaimana saya kemudian menyelesaikannya, selamat datang ke kucing.



TK singkat di situs


  • Informasi tentang modifikasi untuk gim (tambalan kipas, rangkaian tekstur, porta sumber, dll.) Akan diposting di situs web, meningkatkan grafik, menyederhanakan beberapa aspek manajemen, dan juga mentransfernya ke sistem atau platform operasi lain. Contoh mod semacam itu adalah menambahkan bingkai ke Dune 2 untuk memilih unit atau tekstur resolusi tinggi untuk Doom
  • Situs ini hanya akan berisi informasi, tetapi bukan file modifikasi dan port itu sendiri. Pada versi lama situs, saya mencoba untuk memelihara dan mengunggah salinan file baru kepada saya, dan itu menghabiskan waktu
  • Situs harus nyaman digunakan baik dari desktop maupun dari tablet atau ponsel
  • Setiap pengguna harus dapat menambahkan permainan, modifikasi, dan sebagainya ke situs, serta mengedit informasi apa pun yang sudah ditambahkan ke situs
  • Setiap pengguna harus dapat mengedit kode dan tata letak situs
  • Pemilik situs harus dapat memoderasi perubahan apa pun
  • Seharusnya mungkin untuk menambahkan moderator tambahan
  • Harus ada tombol untuk berbagi di jejaring sosial

Solusi


Dan mari kita letakkan semua data di github, dan akankah kita menghasilkan situs statis dari data ini? Plus solid!


  • GitHub sudah menyediakan antarmuka web untuk memodifikasi atau menambahkan file dan mengirimkan perubahan sebagai permintaan tarik.
  • Tarik Permintaan - sistem yang sangat baik untuk memoderasi perubahan dan melihat perbedaan
  • Perlu moderator baru? Tambahkan pengguna ke proyek di github, tidak perlu memikirkan sistem hak
  • Situs statis dapat di-host di hosting mana pun, termasuk Halaman GitHub
  • Kegiatan apa pun seperti komentar, berbagi, atau memblokir "modifikasi acak" dapat diterapkan pada klien menggunakan JS dan solusi siap pakai seperti Disqus
  • Untuk kesederhanaan dan kecepatan tata letak, gunakan Bootstrap

Selain itu, saya sudah lama ingin berlatih menulis situs statis di Jawa. Dipecahkan! Dalam satu repositori, kami menyimpan data , di repositori kedua - generator situs statis . Latih ... Meskipun tidak, hentikan, pertama-tama Anda harus membuat keputusan lain.


Dalam format apa informasi harus disimpan?


Menyimpan deskripsi permainan atau modifikasi dalam file format "JSON / XML / tulis versi Anda sendiri" tampaknya merupakan ide bagus, tetapi persyaratan kami adalah "... pengguna mana pun ...", dan beberapa JSON dapat membuat Anda takut. Nah, pertanyaannya adalah sampah - mari kita menyimpan data dalam bundel file teks atau penurunan harga. Satu file - satu entitas, file MD di github memiliki pratinjau - lepota! Dan untuk menyederhanakan situasi, kami akan menulis secara detail dalam dokumentasi apa yang bertanggung jawab. Bagian dari informasi ini:



Dan yang ingin saya katakan adalah bahwa mengedit informasi yang ada dalam mode ini sangat nyaman. Tapi ada satu peringatan ...


Menambahkan Informasi Baru


Ternyata nyaman untuk mengedit data, tetapi untuk memulai modifikasi baru tidak terlalu, karena itu perlu untuk membuat dari 4 hingga 14 file sekaligus. Dan untuk melakukan ini menggunakan antarmuka github sangat merepotkan. Pikiran pertama adalah membuat instruksi multi-langkah yang menjelaskan cara menambahkan informasi baru dari dan ke.



Sayangnya, putusan pengguna situs itu tegas: tidak nyaman! Dan jika pengguna merasa tidak nyaman di situs yang seharusnya hidup dari aktivitas pengguna ... Anda tahu, proyek kirdyk.


PHP untuk menyelamatkan


Nah, apa yang harus dilakukan, keputusan itu umumnya jelas: menulis formulir untuk membuat informasi baru dengan membuat permintaan tarik dengan semua file yang diperlukan, serta mengunggah tangkapan layar ke deskripsi yang ada. Menurut memori lama, karena keinginan untuk meluncurkan proyek sesegera mungkin, dan juga karena PHP sudah ada di hosting - PHP digunakan untuk formulir ini.



Melambung?


Setelah menambahkan formulir yang mudah, proses dimulai: minggu-minggu pertama setelah memposting informasi tentang situs di blog video saya dan di situs Old-Games.RU, mod dan port baru ditambahkan dengan kecepatan sedemikian rupa sehingga saya tidak punya waktu untuk melakukan moderasi!



Selain menambahkan informasi, saya juga terlempar dari sejumlah komentar dan saran pada antarmuka dan fungsionalitas, beberapa di antaranya telah saya terapkan, dan beberapa masih menunggu di sayap.


Salah satu keluhan yang sering muncul adalah penampilan situs - dan ini dapat dimengerti, karena saya menggunakan tema Bootstrap 4 default dengan pemikiran "ini bersifat sementara, maka saya akan mengenakan kulit yang indah". Lelucon tentang "tidak ada yang lebih permanen daripada sementara" bahkan tidak ingin direproduksi.


Kemudian, tentu saja, aktivitas mulai menurun, tetapi masih ada beberapa pengguna aktif di situs dan situs terus mengisi dengan informasi. Pada saat diluncurkan pada pertengahan Februari, situs tersebut memiliki 227 mod untuk 86 game , dan pada saat publikasi ini - 323 mod untuk 130 game .


Dan mengapa Anda menulisnya di sini?


Pertama, untuk menceritakan kisah lain dengan moralitas yang jelas: "antarmuka yang nyaman dan menyenangkan bagi programmer, sama sekali tidak nyaman bagi pengguna situs". Meskipun tesis ini biasa-biasa saja - harus diingatkan secara berkala.


Dan kedua - untuk mengundang penggemar untuk menggali kode atau menggambar dan memutar antarmuka. Mungkin tema situs akan menarik minat Anda dan Anda ingin sedikit membantu dalam pengembangannya ;-)


Jika Anda tertarik, maka seluruh kode sumber situs tinggal di github .


Tur Video PS dari situs tersebut


Source: https://habr.com/ru/post/id451226/


All Articles