Go-Raknet adalah perpustakaan yang mengimplementasikan versi dasar protokol Raknet, yang digunakan untuk Minecraft (edisi batuan dasar). Ini mengimplementasikan paket yang tidak dapat diandalkan, andal, dan dipesan dan mengirim paket pengguna sebagai pesanan yang dapat diandalkan.
GO-RAKNET berupaya untuk mengabstraksi interaksi langsung dengan Raknet, dan memberikan API Go yang mudah digunakan, Idiomatik digunakan untuk mendengarkan koneksi atau terhubung ke server.
Pada Go-Raknet versi 1.14.0, Go-Raknet membutuhkan setidaknya GO 1.22 . Versi 1.12.1 dari Go-Raknet adalah versi terakhir dari perpustakaan yang mendukung Go 1.18 dan di atasnya.
Go-Raknet dapat digunakan untuk klien dan server, (dan proxy, bila digabungkan) dengan cara yang sangat mirip dengan fungsi standar net.tcp*.
Server Raknet Dasar:
package main
import (
"github.com/sandertv/go-raknet"
)
func main () {
listener , _ := raknet . Listen ( "0.0.0.0:19132" )
defer listener . Close ()
for {
conn , _ := listener . Accept ()
b := make ([] byte , 1024 * 1024 * 4 )
_ , _ = conn . Read ( b )
_ , _ = conn . Write ([] byte { 1 , 2 , 3 })
conn . Close ()
}
}Klien Raknet Dasar:
package main
import (
"github.com/sandertv/go-raknet"
)
func main () {
conn , _ := raknet . Dial ( "mco.mineplex.com:19132" )
defer conn . Close ()
b := make ([] byte , 1024 * 1024 * 4 )
_ , _ = conn . Write ([] byte { 1 , 2 , 3 })
_ , _ = conn . Read ( b )
}