Giter Club home page Giter Club logo

bdsx-1's Introduction

BDSX : BDS + node.js

logo
BDSX is a modification of Minecraft Bedrock Dedicated Server, supporting node.js. Because it is based on the offical BDS software, it includes all the features of vanilla Minecraft, but includes other features as well, such as hooking functions and packets to change behavior.

Features

  • OS: Windows(Recommended), Linux with Wine(Unstable)
  • All Minecraft BDS features
  • All node.js features (*that are supported by ChakraCore. See this page for more information)
  • Debug with Visual Studio Code (You can debug plugins too)
  • Intercept network packets
  • Custom Commands
  • Low-level hooking and DLL Call
  • Get IP Address & XUID (Example below)
import { events } from "bdsx/event";
import { MinecraftPacketIds } from "bdsx/bds/packetids";
events.packetAfter(MinecraftPacketIds.Login).on((ptr, networkIdentifier, packetId) => {
    const ip = networkIdentifier.getAddress();
    if (ptr.connreq === null) return; // Wrong client version
    const cert = ptr.connreq.getCertificate();
    const xuid = cert.getXuid();
    const username = cert.getId();
    console.log(`Connection: ${username}> IP=${ip}, XUID=${xuid}`);
});

Usage

  • Requirements
    • node.js Please make sure your node is up to date.
    • GIT
    • Wine (if using Linux)
  • Recommended

To download, clone the repo:

git clone https://github.com/bdsx/bdsx.git

Debug & Launch with VSCode

When starting BDSX with VSCode, you need to

  1. Open the project with VSCode
  2. Install the legacy debugger. the suggestion dialog will be opened up on the right bottom corner.
  3. Open a terminal (Ctrl+Shift+`)
  4. Run npm i to install npm packages and BDS
  5. Press F5 to build and run in VSCode

Launch with the executable

Run bdsx.bat (or bdsx.sh on Linux) to start BDSX

Manual instruction of the executable

  1. Open a terminal to the bdsx folder
  2. Run npm i to install npm packages and BDS
  3. Use tsc to compile the typescript and use bedrock_server.exe .. in the bedrock_server directory. If on Linux, use wine bedrock_server.exe .. instead.

File Structure

[bdsx project]
├ [bdsx] # Core Library
├ [example_and_test] # Examples for using the BDSX API and tests of the BDSX API
├ [bedrock_server] # BDS installation
├ launcher.ts # Script for launching BDS
├ index.ts # Main entry point. This file is required by the launcher when BDS is fully started.
├ bdsx.sh # Executable for Linux
└ bdsx.bat # Executable for Windows

Please start your own code from ./index.ts

By default index.ts imports example_and_test. To disable the examples simply remove the import or replace it with your own code.

For examples, see the example_and_test folder. There are some plugins available on npm in the @bdsx organization as well.

Make a bdsx plugin

Please check plugin-example/README.md.

Discord

https://discord.gg/pC9XdkC

BDSX Discussions

https://github.com/bdsx/bdsx/discussions

BDSX Wiki

https://github.com/bdsx/bdsx/wiki

Hosting Support

https://easyminecrafthosting.com/ (Latin America)

Docker Image

https://hub.docker.com/r/karikera/bdsx

Bug Report

https://github.com/bdsx/bdsx/issues

BDSX Core

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

bdsx-1's People

Contributors

karikera avatar mdisprgm avatar rjlintkh avatar 7dev7urandom avatar se7en-dev avatar minyee2913 avatar ptkdrake avatar wwwcomcomcomcom avatar kdg7313 avatar sacrigrape avatar goodlucky777 avatar kostyajrz avatar noxturnix avatar dapetcu21 avatar shock95 avatar madeofstown avatar fuyutsuki avatar atxltheaxolotl avatar job-gut avatar dependabot[bot] avatar cog25 avatar smell-of-curry avatar ricklove avatar xeroalpha avatar lapis256 avatar abcdefghijklmnopqr88 avatar mikhaillav avatar dzx-dzx avatar ambiennt avatar typidoyun avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.