The source code for SuCraft.

Overview

SuCraft

What is this?

This repository contains the source code for SuCraft. You can help in three ways:

  • If there is a bug on the server, please report it, or if there is a feature you want, request it (create a new issue under Issues)
  • Change the code yourself, and make a pull request (so I can add your changes)
  • If there is a tiny mistake in the code or you think you identified something, you can also just create an issue for it or send me updated code directly

How to help with the code

What you need to know about: Java Tutorial and Kotlin Tutorial (programming languages), Paper Tutorial (server software), IntelliJ (code editor), Git with GitHub Tutorial (collaboration tool), Lombok (extension of Java), Maven (using dependencies). If you don't know some of these, don't worry too much, you can figure it out along the way too, that's how I learnt a lot of these things. For questions, you can ask Martijn in #development.

1. Download the code

Clone this repository. The easiest way is by going to:

  • Fork (in the right top)

Then go to the forked version (YourGitHubName/SuCraft in your repositories) and do:

  • Code > Open with GitHub Desktop

Download the GitHubDesktop program, and clone the code to wherever you like (for example C:/Users/Martijn/Desktop/SuCraft/code).

2. Open it in a code editor

Of course, you must have installed Java JDK 17 (not Java 16, and not Java JRE 17, you can check your Java JDK version by opening cmd and typing javac -version (not *java -version)). To edit the code, I recommend using the IntelliJ since it comes with all the languages and tools used. Then you can import all the SuCraft code at once:

  • File > New > Project from Existing Sources... > Select the directory you put the code in (e.g. C:/Users/Martijn/Desktop/SuCraft/code) > Import project from external model > Maven > Finish

3. Start a test server

You should start a new Paper server (download the latest .jar from the Paper website and place it where you want to run the test server (for example C:/Users/Martijn/Desktop/SuCraft/testserver). Rename the jar you downloaded to server.jar.

Create a new file in the same folder, called server.bat, and open it with Notepad, and type

java -jar server.jar

Now you can run server.bat and it will start the server. One time, you will have to open eula.txt and set it to true. The first time the server has started, it will generated a folder called plugins.

Then you should add all the plugins to the /plugins folder. In IntelliJ you can easily compile all plugins. The first time, you must do this:

  • To have the plugin .jars automatically placed into the test server plugins folder, you have to create a new file called sucraft.properties in the root folder (next to the LICENSE and README.md files). In the file, type (replace the C:/Users/Martijn/Desktop/SuCraft/testserver with your own test server path, please use / instead of \):

    exportPluginsPath=C:/Users/Martijn/Desktop/SuCraft/testserver/plugins

  • After saving that file, click on Maven on the vertical tab on the right side of the screen > SuCraft > Lifecycle > Right-click install > Execute After Build

To compile all plugins and place them in your plugins folder automatically, you can now:

  • Click the green play button in the top-right (Run Maven Build)

After the first time, you can probably also click the green hammer button in the top toolbar (Build Project).

Now you can change the code yourself and also test the changes!

For questions, you can ask Martijn in #development.

You might also like...
Blinking-image-view - A variant of Android View that blinks only the source image (not the background)

Blinker View for Android What is this? Blinker View is an Android View that blinks a given drawable. Yes, it's that simple. Place it in your layout an

An android open-source quick search/diff/download plugin.
An android open-source quick search/diff/download plugin.

Android Reference Intellij Plugin This library based on AndroidSourceViewer It's built with the Gradle and rewritten by kotlin, that's why it's a new

Feature flags solution that is fast, lean, and open-source.

FFS Feature flags solution that is fast, lean, and open-source. Documentation Full documentation available at https://doist.github.io/ffs/. Project FF

An open source GitHub Android client app, faster and concise.
An open source GitHub Android client app, faster and concise.

An open-source GitHub Android client app, faster and concise.

Strong-bax - An open source password manager project
Strong-bax - An open source password manager project

What is strong-bax? Strong-bax is an open source password manager project. Stron

Kauth - Open-source powerful minecraft authorization plugin
Kauth - Open-source powerful minecraft authorization plugin

KAuth KAuth is a minecraft plugin for offline-mode authorization on your server.

Free and Open Source monster taming video game. Inspired by traditional RPGs like Pokémon, Final Fantasy and Golden Sun.
Free and Open Source monster taming video game. Inspired by traditional RPGs like Pokémon, Final Fantasy and Golden Sun.

Welcome Help Wanted: I cannot finish this on my own. If you are willing to help, let me know. GuardianMonsters is a Free and Open Source monster tamin

Display code with syntax highlighting :sparkles: in native way.
Display code with syntax highlighting :sparkles: in native way.

CodeView (Android) CodeView helps to show code content with syntax highlighting in native way. Description CodeView contains 3 core parts to implement

:bouquet: An easy way to persist and run code block only as many times as necessary on Android.
:bouquet: An easy way to persist and run code block only as many times as necessary on Android.

Only 💐 An easy way to persist and run code block only as many times as necessary on Android. Download Gradle Add below codes to your root build.gradl

This repository contains the source code for the PokeApi Android app.

PokeApi App This repository contains the source code for the PokeApi Android app.

Nilton Huamaní Carlos 0 Nov 4, 2021
Repository of a multi-platform application running the same Compose source code on all platforms

Compose multiplatform demo demo.mov Using the same compose user interface (UI) from android on all principal platforms ?? ?? App Features This is a si

David Coronel 18 Dec 16, 2022
Open source Crypto Currency Tracker Android App made fully in Kotlin

CoinBit CoinBit is a beautiful CryptoCurrency app, completely open sourced and 100% in kotlin. It supports following features Track prices of over 300

Pranay Airan 50 Dec 5, 2022
Gestor is an innovative open-source application for universal Minecraft mod management.

Gestor Gestor is an innovative open-source application for universal Minecraft mod management. About It combines three types of tools into a single ap

GestorMC 11 Dec 9, 2021
Unofficial Android client for dev.to. Open source and free

Dev.to Android by Android Broadcast Unofficial Android client for dev.to Technologies Kotlin Gradle Kotlin DSL Kotlin Coroutines OkHttp + Retrofit kot

Android Broadcast 76 Nov 30, 2022
Free & Open-Source External Scripting Platform

LeagueOfJire Free & Open-Source External Scripting Platform What features does this have? All of the feature's source-code can be found in the userscr

Jire 33 Dec 30, 2022
An open-source plugin that accommodates Starships on Minecraft servers.

Minecraft Starship Plugin An open-source plugin that accommodates starships on minecraft servers. 'A shameless rip-off of Star Legacy's plugins.' Mine

null 4 Dec 13, 2021
OPEX core for Opex exchange, Open Source Cryptocurrency Exchange.

Opex Core OPEX Core is a Kotlin based cryptocurrency exchange and matching engine from the OPEX project. This extendable and microservice architecture

OPEX 16 Dec 26, 2022
Kotlin and Java API for generating .swift source files.

SwiftPoet SwiftPoet is a Kotlin and Java API for generating .swift source files. Source file generation can be useful when doing things such as annota

Outfox 232 Jan 2, 2023
KMM RSS Reader: an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile.

KMM RSS Reader This is an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile. It's a simple RSS reader, and you ca

Kotlin 1.4k Jan 4, 2023