Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/williamragstad/cakelib
A Minecraft data pack development framework.
https://github.com/williamragstad/cakelib
datapacks framework minecraft nuget vanilla
Last synced: 10 days ago
JSON representation
A Minecraft data pack development framework.
- Host: GitHub
- URL: https://github.com/williamragstad/cakelib
- Owner: WilliamRagstad
- License: gpl-3.0
- Created: 2020-06-10T12:09:15.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T10:40:28.000Z (almost 2 years ago)
- Last Synced: 2024-05-01T16:05:21.994Z (6 months ago)
- Topics: datapacks, framework, minecraft, nuget, vanilla
- Language: C#
- Homepage:
- Size: 944 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# CakeLib
CakeLang is an open source cross-platform Minecraft data pack development framework. It supports various development languages, tools and plugins and comes packaged with its own CakeLang scripting language!
Start enjoying data pack development now! 🎂🎉
> ### Install
> Add CakeLang to your C# .NET Core project by installing the NuGet package from the link below.
>
>
Interview with a developer
"What I love about CakeLang is that it simplifies and collects the code base for one or multiple data packs in one place and one project. This makes it super easy to reuse code, make major changes with just a few keystrokes and generate fast and optimized commands.
CakeLang also provides a huge amount of power when I can mix regular C# code and NuGet packages with my data pack source code to let me create anything imaginable!"
- Dotch
# Get Started!
## Setup
CakeLang is a .NET Core 3.1 NuGet package which supports *every platform* and *every program environment*, be it web, software or app development. The only requirement is a .NET Core runtime.
This makes CakeLang the ultimate choice when developing an online IDE for data pack development in Vanilla / CakeLang (or a language based on CakeLang's SDK), an AR app for a new kind of minecraft data pack development 🤯, or simply plain data pack development in any of the languages that CakeLang (or a CakeLang plugin) offers. **Yes, you can easily program in different languages** like Vanilla, CakeLang (provided with package), or any other language built upon CakeLang's SDK.
Some creamy examples of things that are exceptionally good with CakeLang are: Dynamic data packs, standalone installation programs with customizable UIs for data packs, Plugins to CakeLang or regular data pack development in C #, the benefit of programming in a GPL, ...
## Examples
### 1. Basic Setup
In this example, we have a console program with the CakeLang package installed. The code below creates a new data pack with name, description and associated namespace, and only compiles it into a pack which is directly injected into a Minecraft world.
Source code:
```c#
using CakeLang;namespace CakeLangDemo
{
class Program
{
static void Main(string[] args)
{
DataPack demoPack = new DataPack(
"Demo Pack",
"A demonstration of CakeLang!",
"demopack"
);
// Code ...
demoPack.CompileAndInject("CakeLang Demo");
}
}
}
```