@createlumina/client
v1.0.0
Published
Minecraft socket pipeline utilities. Support Minecraft lan server discovery.
Downloads
28
Maintainers
Readme
Client Module
Version made for Lumina projects. Original credits goes to Voxelum/minecraft-launcher-core-node
Minecraft socket pipeline utilities. Support Minecraft lan server discovery.
Usage
Ping Minecraft Server
Read sever info (server ip, port) and fetch its status (ping, server motd):
import { queryStatus, Status, QueryOptions } from '@createlumina/client';
const serverInfo = {
host: 'your host',
port: 25565, // be default
};
const options: QueryOptions = {
/**
* see http://wiki.vg/Protocol_version_numbers
*/
protocol: 203,
};
const rawStatusJson: Status = await fetchStatus(info, options);
Detect LAN Minecraft Server
You can detect if player share LAN server.
Or you can fake a LAN server.
import { MinecraftLanDiscover, LanServerInfo } from '@createlumina/client';
const discover = new MinecraftLanDiscover();
await discover.bind(); // start to listen any lan server
discover.on('discover', ({ motd, port }: LanServerInfo) => {
console.log(motd); // server motd
console.log(port); // server port
});
const isReady = discover.isReady; // a boolean represent whether the discover is ready to use
// you can also fake a lan server
discover.broadcast({
motd: 'your motd',
port: 2384, // fake port
});
// fake LAN server is useful when you want to implement the P2P connection between two players
dicover.destroy(); // stop listening