2 poin oleh GN⁺ 2025-08-24 | 1 komentar | Bagikan ke WhatsApp
  • Librebox adalah mesin game 3D berbasis Luau open-source yang menargetkan kompatibilitas API dengan Roblox
  • Pengembang dapat memiliki kepemilikan penuh atas game mereka, mulai dari engine hingga kodenya
  • Saat ini masih dalam tahap demo, dengan dukungan untuk rendering scene inti, pergerakan kamera, pembuatan part dasar, dan lainnya
  • Pada versi mendatang, akan ditambahkan fisika, input pengguna, dukungan multiplatform, dan lain-lain
  • Lisensinya adalah MIT, sepenuhnya gratis, dan bebas dimodifikasi serta didistribusikan

Pengenalan Librebox

  • Librebox adalah mesin game 3D open-source yang dibangun di atas engine Luau
  • Tujuan utamanya adalah menyediakan API yang mirip Roblox, sehingga kompatibilitas kode Luau yang sudah ada dapat dipertahankan semaksimal mungkin
  • Pengembang memiliki kepemilikan dan kebebasan atas engine itu sendiri maupun logika game, sehingga pengembangan dapat dilakukan tanpa ketergantungan pada platform tertentu

Mengapa Librebox?

  • Memungkinkan penggunaan engine yang bebas serta kepemilikan penuh
  • Pengembang yang sudah akrab dengan Roblox atau Luau dapat menggunakan ulang kode hampir tanpa perubahan
  • Memungkinkan pembangunan platform sendiri serta distribusi, modifikasi, dan monetisasi secara bebas

Contoh kode utama

  • Contoh: membuat part lalu memutar dan mengubah warnanya
    • Lihat file examples/part_example.lua
    • Pembuatan part, warna, posisi, rotasi, dan pemrosesan loop dapat dilakukan dengan cara yang hampir sama seperti pada kode Luau/Roblox yang ada

Ringkasan fitur yang didukung (berdasarkan versi demo)

  • Rendering scene, pencahayaan, bayangan, skybox
  • Rendering objek di dalam game.Workspace
  • Fitur pergerakan kamera dasar
  • Dukungan Instance System dan tipe data utama
    • CFrame, Vector3, Color3, Random, dan lain-lain
    • Instance.new, kloning/penghancuran part, kontrol properti
  • Layanan sisi client
    • Workspace, Camera, Lighting, RunService, dan lain-lain
    • Dukungan event RenderStep/HeartBeat
  • Dukungan skrip Luau dan scheduler
    • Coroutine, event, pekerjaan asinkron (task.spawn, task.wait, dan lain-lain)
  • Penanganan window dan optimasi fullscreen

Platform dan ekspansi

  • Saat ini hanya mendukung Windows
  • Menggunakan raylib, sehingga mudah di-porting ke OS lain
  • Didistribusikan sebagai file executable standalone

Fitur yang akan hadir berikutnya

  • Physics engine dan deteksi tabrakan
  • Dukungan model/mesh, gambar, GUI, material
  • GUI onscreen, Replication/Multiplayer (server)
  • UserInputService, ContextActionService, dan lain-lain
  • Membangun editor sendiri serta ekosistem server/client yang lengkap

Visi dan masa depan

  • Menargetkan posisi serupa Godot dan Unity sebagai engine open-source independen sepenuhnya
  • Mewujudkan pengembangan yang bebas dengan prinsip game saya/kode saya, tanpa ketergantungan platform
  • Berencana memperluas ke semua area, termasuk editor, server, distribusi, dan monetisasi
  • API pengguna dan source code dapat ditulis ulang

Lisensi dan hak cipta

  • Lisensi MIT
  • Hanya menggunakan lisensi open-source seperti Luau (berbasis engine Roblox, MIT), raylib (zlib/libpng), dan lainnya
  • Proyek independen yang tidak terkait dengan platform komersial maupun pihak ketiga
  • Tidak menyertakan source, aset, atau kode proprietary dari luar

Kontak dan komunitas

  • Email: librebox.developers@gmail.com
  • Siapa pun dapat menggunakan, memberi masukan, memodifikasi, dan berkontribusi

Tech stack

  • Terdiri dari C++, Lua, Luau, Python, C, CMake, dan lain-lain

Pentingnya dan keunggulan komparatif

  • Engine open-source independen untuk ekosistem Roblox/Lua
  • Menawarkan kebebasan dalam pembuatan/kepemilikan/monetisasi yang sering dibatasi pada platform komersial yang ada
  • Dengan source terbuka sepenuhnya, kompatibilitas API, dan demo berbasis Windows, ini cocok untuk pembuatan game/konten 3D berbasis Lua

Kesimpulan

  • Sebagai engine game yang mencakup gratis, open-source, kompatibilitas, dan kebebasan, ini merupakan pilihan menarik bagi pengembang junior maupun pengembangan game lintas platform

1 komentar

 
GN⁺ 2025-08-24
Komentar Hacker News
  • Librebox masih berada pada tahap demo, baru mengimplementasikan sebagian sangat kecil dari API Roblox, dan masih banyak fitur yang hilang seperti server atau networking
    • Kalau saya ada di tim pengembangnya, saya akan mulai dari implementasi server dan networking dulu, karena kalau ditambahkan belakangan biasanya akan jadi sangat sulit
  • Menurut saya ini upaya yang segar dan saya mendoakan yang terbaik, semoga tidak diserang tim legal Roblox; ini bisa punya kegunaan yang bagus untuk klien native Linux. Sober yang banyak dipakai saat ini adalah perangkat lunak proprietari, dan Vinegar yang dulu dipakai diblokir karena masalah dengan para hacker Linux
    • Roblox mungkin bisa mencoba mengambil tindakan hukum, tapi secara pribadi proyek ini terasa jelas legal. Dari sudut pandang legalitas, saya akan memberi nilai lebih tinggi daripada VLC Media Player (isu paten), dan jauh lebih tinggi daripada emulator NES. Menurut saya masih di bawah Android, tapi bagaimanapun Oracle memang pernah menggugat Android. (Saya bukan pengacara)
    • Jika melihat prioritas tim legal Roblox, rasanya proyek seperti ini akan ditangani lebih cepat daripada masalah eksploitasi anak di dalam Roblox
  • Disebutkan bahwa :WaitForChild() tidak ada, dan ada yang bilang justru itu hal yang bagus
    • Sebenarnya itu bukan masalah besar, hanya fitur kenyamanan kecil, dan lebih baik daripada busy waiting. Sering kali tidak ada jaminan bahwa suatu objek pasti sudah ada sebelum kode dieksekusi, tetapi perilaku serupa bisa diimplementasikan sendiri seperti ini: while not parentObj:FindFirstChild("childObj name") do wait() end. Setahu saya fungsi wait() berjalan minimal 1/30 detik per frame; kalau ingin benar-benar langsung, harus dijalankan pada setiap heartbeat
  • Ada jumlah konten buatan pengguna yang sangat besar yang terikat di Roblox; rasanya ada begitu banyak sumber daya di sana
    • Konten jenis Club khususnya benar-benar harus dibebaskan
  • Saya tidak menemukan informasi apa pun tentang pengembangnya di repositori (github), bahkan server Discord-nya juga tidak punya isi di kanal-kanalnya, dan satu-satunya akun yang terdaftar dengan peran pengembang adalah akun khusus proyek itu saja. Dari source code terlihat jelas ada pekerjaan nyata yang dilakukan, bukan sekadar README kosong. Meski begitu, secara keseluruhan tetap terasa agak aneh
    • Proyek solo one-man memang biasanya seperti ini
    • Kalau saya menafsirkannya dengan baik, menyembunyikan identitas kemungkinan karena takut masalah hukum. Roblox sendiri adalah perusahaan raksasa dengan valuasi 81 miliar
  • Kalau tidak bisa memakai Robux, saya pribadi tidak terlalu tertarik. Sebenarnya inti masalahnya adalah Robux (sistem mata uangnya); engine itu sendiri tidak terlalu istimewa
    • Alasan banyak pengembang tidak bisa lepas dari ROBLOX adalah karena mereka mempelajari dan menguasai tool ROBLOX sejak kecil, lalu keterampilan itu menjadi niche skill yang hampir tidak bisa dipakai di game engine lain. Sekarang pilihannya hanya memulai lagi sebagai pemula di lingkungan baru seperti Unity, atau terus menghasilkan karya tingkat tinggi di dalam ROBLOX seperti sebelumnya. Ini karena mereka sudah punya teman dan reputasi di komunitas masing-masing. Sejujurnya, justru mengejutkan bahwa pengganti kompatibel API seperti ini baru muncul sekarang
    • Ini bisa menjadi kesempatan bagi para pengembang untuk merilis game Roblox mereka sebagai game mandiri dan lolos dari platform lock-in. Tentu, apakah pengguna lama akan ikut pindah adalah persoalan lain
    • Saya sendiri tidak suka Roblox, tetapi saya dengar kualitas tool pembuat Roblox memang sebenarnya cukup bagus
  • Menurut saya repositori ini cukup keren
  • Saya penasaran apakah ini benar-benar membantu untuk fitur pengujian lokal atau peningkatan QA. Baru-baru ini saya mencoba menjalankan Lemur (sudah diarsipkan) di Lune untuk mengetes aplikasi react-lua dengan jest, dan bahkan sempat membuat test runner yang mencetak output in-game. Masalahnya, Roblox Studio masih belum berjalan baik di Linux lewat paket vinegar, jadi akan sangat membantu kalau saya bisa sekadar menjalankan RobloxStudio.exe --place game.rbxlx --script test_runner.lua --keep-open dan terus mendapatkan output konsol.
    • Saya sempat ingin menambahkan loadPlaceFile ke repositori Lemur, tetapi berhenti karena ragu itu tempat yang tepat, lalu saat itulah saya mengetahui Librebox, dan sekarang saya berharap ini bisa dipakai untuk pengujian CI lokal aplikasi react-lua dengan Jest
    • Sebagai referensi, ada juga beta Open Cloud Engine API dari Roblox untuk mengeksekusi kode Luau di dalam place. [Beta] Open Cloud Engine API for Executing Luau
    • Keuntungan menjalankan tes secara lokal: rekaman screenshot dan video saat tes gagal, umpan balik instan, serta bisa langsung masuk ke sesi game saat gagal lewat opsi -i atau mode interactive