A programming language designed for the DiamondFire Minecraft server.

Overview

Blackstone

Blackstone is a programming language designed to help create plots on the MCDiamondFire Minecraft server.

Community Links

Discord: https://discord.gg/c7qzkNAURV

Installation

Building from Source

You can install this using the Cargo toolchain.

cargo install blackstone-df

It will automatically handle building from source for you.

Releases Page

You can also install it through our Releases page on the sidebar. During official releases, we will compile binaries for Windows & Linux.

Features

Code Blocks

  • Player Event
  • Player Action
  • If Player
  • Entity Event
  • Entity Action
  • If Entity
  • Game Action
  • If Game
  • Set Variable
  • If Variable
  • Repeat
  • Function
  • Call Function
  • Process
  • Start Process
  • Else
  • Select Object
  • NOT Functionality

Values

  • Items (Vanilla, not customizable)
  • Text
  • Number
  • Variable
  • Location
  • Sound
  • Vector
  • Sound
  • Particle
  • Potion
  • Game Value

Bonus / Planned Features

  • Function Parameters
  • Object-Oriented Programming
  • Compiler-Enforced Strong Typing
  • Tests

Note that none of the bonus features are guaranteed to be implemented. We do think they would be useful, though.

Shulker / Compiler Commands

  • version
  • init
  • build (script)
  • build-all
  • build-stdout (script)
  • build_test
  • add (package)

DFS Suggestions

None yet! Let us know if there's some cool ones you'd like to see in our Discord!

Special Thanks

todo!()

Documentation

All code must be inside an Event, Function, or Procedure. Here's some basic examples:

playerEvent(Join) {
    //supports comments too!
    default.sendMessage("Hello world!");
}

func FunnyFunction {
    // variables must be manually scoped - local, game, or save
    var game.joke = "Among us";
    // defaults to local
    var list = ["a", "b", "c"];
    // default.sendMessage(...) == print(...)
    default.sendMessage(joke);
}
You might also like...
A Minecraft Java Edition to Bedrock Edition resource pack convertor in Rust

j2be A Minecraft Java Edition to Bedrock Edition resource pack convertor in Rust How to use Note: This project is still in development Run cargo build

Minecraft Protocol Library

Protocol Minecraft Protocol Library This branch is dedicated to the Minecraft Bedrock Edition Protocol. If you have any concerns or questions you can

Minecraft-esque voxel engine prototype made with the bevy game engine. Pending bevy 0.6 release to undergo a full rewrite.
Minecraft-esque voxel engine prototype made with the bevy game engine. Pending bevy 0.6 release to undergo a full rewrite.

vx_bevy A voxel engine prototype made using the Bevy game engine. Goals and features Very basic worldgen Animated chunk loading (ala cube world) Optim

Provision Mammoth-ready Minecraft clusters with ease!

Minecraft Server Provisioner Provision Mammoth-ready Minecraft clusters with ease! Overview Provisioner is a tool designed to make the creation of Mam

Easily update your minecraft mods with 1 file (guess I'm back to rust again)

Mod Updater This program updates all your mods to a newer/later version. To use: Create a file named config.toml Create a folder named mods; Add the f

A simple Minecraft written in Rust with the Piston game engine
A simple Minecraft written in Rust with the Piston game engine

hematite A simple Minecraft written in Rust with the Piston game engine How To Open a World This method is only for personal use. Never distribute cop

Like minecraft, but crispier!

crispycraft Like minecraft, but crispier! Links Library documentation WebGPU: https://docs.rs/wgpu/0.12.0/wgpu/ building_blocks: https://docs.rs/build

Brine is my attempt at writing a Minecraft client in Rust using the Bevy game engine.
Brine is my attempt at writing a Minecraft client in Rust using the Bevy game engine.

Brine Brine is my attempt at writing a Minecraft client in Rust using the Bevy game engine. It's EXTREMELY work-in-progress. The thing that makes Brin

Morphosis is a work-in-progress set of tools to deal with Minecraft metadata, mainly for use with PolyMC.

Morphosis Morphosis is a work-in-progress set of tools to deal with Minecraft metadata, mainly for use with PolyMC. It consists of a library (metamorp

Comments
  • README and Version

    README and Version

    • adds version command to main.rs
    • Updated README.md to follow formatting conventions, and also to add more information.
    • planning on adding more commands to main.rs
    opened by Camila3255 0
  • Events

    Events

    • PlayerEvent and EntityEvent enums, which represent event blocks. Can also parse from a string slice.
    • added strum and strum_macros dependencies. While it is two dependencies, being able to iterate over Enums is going to have massive benefits and saves time in terms of DRY principles
    • ran cargo fmt and cargo clippy --fix for some extra fun
    opened by Camila3255 0
  • Data + Formatting

    Data + Formatting

    Changes:

    • Most functions now borrow, rather than consuming, self
    • Location, Vector, Potion, and Particle added to ItemData struct
    • formatted using cargo fmt
    opened by Camila3255 0
Owner
Blackstone
This organization manages the Blackstone project, a programming language for the DiamondFire Minecraft server.
Blackstone
McShell - A programming language compiles to Minecraft mcfunction files

MCSH MCSH语言是一个语法类似Rust的编译型编程语言,其编译目标是mcfunction文件,以在Minecraft中运行。 MCSH有内存条,可实现函数递归操作。 MCSH 编译 使用 CLI 在虚拟仿真运行 编译 语法 标准库 编译 您需要先安装Rust 然后在您的控制台运行 git cl

FancyFlame 4 Feb 19, 2024
Solana Game Server is a decentralized game server running on Solana, designed for game developers

Solana Game Server* is the first decentralized Game Server (aka web3 game server) designed for game devs. (Think web3 SDK for game developers as a ser

Tardigrade Life Sciences, Inc 16 Dec 1, 2022
💤 Put your Minecraft server to rest when idle.

?? Put your Minecraft server to rest when idle.

Tim Visée 285 Jan 4, 2023
A simple, very minimal Minecraft server implementation in Rust.

A simple, very minimal Minecraft server implementation in Rust. For a simple Minecraft server that isn't supposed to do much (for example, a limbo ser

Chris 8 Dec 22, 2022
ULE - Minecraft's server core written in Rust

ULE - Minecraft's server core written in Rust This's server core fully written in Rust-Lang and using more custom code for best perfomance and control

null 13 Oct 26, 2022
This is a Minecraft Classic server written in Rust powered by tokio and classicl.

classicl_server Introduction This is a Minecraft Classic server written in Rust powered by tokio and classicl. Installation Cargo The project can be i

null 3 Nov 3, 2022
Rust implementation of the Minecraft authentication server (Yggdrasil)

yggoxide This crate currently implements the REST API for: Service Exposed at Minecraft Production Coverage Yggdrasil authentication / and /authserver

Mojank Studios 16 Jun 26, 2023
A reimplementation of the minecraft server framework in rust.

FerrumC About FerrumC is a Rust-based reimplementation of the Minecraft server, designed to be fast and efficient, optimized for low memory usage and

Sweattypalms 3 Sep 4, 2023
Rust-based replacement for the default Minecraft renderer

wgpu-mc ?? A blazing fast alternative renderer for Minecraft Intro WebGPU is a new web specification designed to provide modern graphics and compute c

Birb 1 Jun 28, 2022
Rustcraft is a simple Minecraft engine written in rust using wgpu.

Rustcraft is a simple Minecraft engine written in rust using wgpu.

Raphael Van Hoffelen 110 Dec 22, 2022