Skip to content
SyKo edited this page Jul 23, 2021 · 25 revisions

Welcome to BDSX wiki!

Minecraft Bedrock Dedicated Server that supports node.js.

Supports both OS: Windows & Linux(with Wine)

Basic Minecraft features as usual. node.js features (?) Debug with Visual Studio Code (You can debug addons too)

An example of what you can do with BDSX

Grab the network packet + Get IP Address & XUID

import { events } from "bdsx/events";
import { MinecraftPacketIds } from 'bdsx/bds/packetids';
events.packetAfter(MinecraftPacketIds.Login).on((ptr, networkIdentifier, packetId)=>{
    const ip = networkIdentifier.getAddress();
    if (ptr.connreq === null) return; // Wrong version client
    const cert = ptr.connreq.cert;
    const xuid = cert.getXuid();
    const username = cert.getId();
    console.log(`Connection: ${username}> IP=${ip}, XUID=${xuid}`);
});

Getting started -

Requirements:

node.js

Wine (if using Linux)


Recommended -

VSCode

Starting server with VSCode

1. Open the project with VSCode
2. Open a terminal(Ctrl+Shift+`)
3. run `npm i` # install npm packages and BDS
4. Press `F5` # build & run
Starting with the executable
run ./bdsx.bat (on Windows)
run ./bdsx.sh (on Linux)

Starting server with Docker

docker run -ti karikera/bdsx

File Structure

[bdsx project]
├ [bdsx] # Core Library
├ [addons] # This directory is for *.mcaddon & *.mcpack
├ [example_and_test]
├ [plugins] # This directory is for the local plugins
├ [bedrock_server] # BDS will be installed on server start
├ launcher.ts # Script before launching BDS.
├ index.ts # Main entry point.
├ bdsx.sh # Executable for Linux
└ bdsx.bat # Executable for Windows
# ./launcher.ts imports ./index.ts after launching BDS
# Please start your own code from ./index.ts

Discord for Q&A

https://discord.gg/pC9XdkC

BDSX Core

https://github.com/bdsx/bdsx-core