Skip to content

Commit fe306d8

Browse files
Merged original history back into the repository
2 parents 9eb14a8 + 2bf5ad5 commit fe306d8

File tree

247 files changed

+35041
-314
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

247 files changed

+35041
-314
lines changed

.github/CODE_OF_CONDUCT.md

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# SensibleToolbox - Code of Conduct
2+
### What is a Code of Conduct?
3+
> A code of conduct is a document that establishes expectations for behavior for your project’s participants.
4+
> Adopting, and enforcing, a code of conduct can help create a positive social atmosphere for your community.
5+
<br>\- *Source: [https://opensource.guide](https://opensource.guide/code-of-conduct/#why-do-i-need-a-code-of-conduct)*
6+
7+
This document should serve the purpose of outlining the behaviour we expect from any participant of the project.
8+
9+
## :mag_right: Scope
10+
This Code of Conduct applies to all sections of the [SensibleToolbox GitHub repository](https://github.com/Slimefun/SensibleToolbox), our [Slimefun GitHub organization](https://github.com/Slimefun) and all repositories owned by said organization.<br>
11+
For our official Discord server, please refer to our article on [Discord Rules](https://github.com/Slimefun/Slimefun4/wiki/Discord-Rules).
12+
13+
Everyone who engages with this project on any of these repositories is expected to follow the Code of Conduct.<br>
14+
This includes maintainers, contributors, sponsors and anyone who engages in the "Issues" section on GitHub.
15+
16+
## :loudspeaker: Engagement
17+
This is an Open-Source project, anyone is welcome to engage and contribute!<br>
18+
We generally expect users to engage in the Issues section by reporting bugs or commenting on bug reports to give additional context, help, guidance or to propose possible solutions and fixes.
19+
Pull Requests are very much welcome and encouraged! They keep the project alive, so if you see an Issue and know how to fix it, feel free to create a Pull Request!
20+
21+
Issues that are considered "good first issues", indicated by the [good first issue](https://github.com/Slimefun/SensibleToolbox/labels/good%20first%20issue) label, are generally expected to be beginner-friendly.
22+
And even if you shouldn't know where to start or how to proceed, our [Discord Server](https://github.com/Slimefun/Slimefun4#discord) and its community will be there for you!
23+
24+
When commenting, please keep in mind that this software is offered for **free**. Don't expect to receive lightning-fast replies 24 hours a day.
25+
Everyone here works on this project in their free time and usually has work, school, university or family to take care of, so we appreciate patience and understanding.
26+
27+
## :scroll: Our Standards
28+
Examples of behavior that contributes to a positive environment for our community include but are not limited to:
29+
* Demonstrating empathy and kindness towards other people
30+
* Being respectful of differing opinions, viewpoints, and experiences
31+
* Giving and gracefully accepting constructive feedback
32+
* Accepting responsibility and apologizing to those affected by our mistakes and learning from the experience
33+
* Focusing on what is best not just for us as individuals, but for the overall community
34+
* Having patience and understanding for contributors, even if reply times are slow
35+
36+
<hr>
37+
38+
Examples of unacceptable behavior include but are not limited to:
39+
* The use of sexualized language or imagery, and sexual attention or advances of any kind
40+
* Trolling, insulting or derogatory comments, and personal or political attacks
41+
* Public or private harassment
42+
* Publishing others' private information, such as a physical or email address, without their explicit permission
43+
* Impatient, aggresive and toxic behaviour
44+
* Other conduct which could reasonably be considered inappropriate in a professional setting
45+
46+
## :round_pushpin: Enforcement Responsibilities
47+
Our project maintainers are responsible for clarifying and enforcing our standards of
48+
acceptable behavior and will take appropriate and fair corrective action in
49+
response to any behavior that they deem inappropriate, threatening, offensive,
50+
or harmful.
51+
52+
Maintainers have the right and responsibility to remove, edit, or reject
53+
comments, commits, code, wiki edits, issues, and other contributions that are
54+
not aligned to this Code of Conduct, and will communicate reasons for moderation
55+
decisions when appropriate.
56+
57+
You can see a list of people who are recognized as "project maintainers" for Slimefun on the Slimefun GitHub organization:<br>
58+
https://github.com/orgs/Slimefun/people
59+
60+
## :wrench: Enforcement
61+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
62+
reported to the community leaders (labelled on Discord as "Admins" or "Moderators") responsible for enforcement on our [Discord Server](https://github.com/Slimefun/Slimefun4#discord).
63+
If you want your issue to be handled discreetly, message `TheBusyBiscuit#2610` or `Walshy#9709` privately on Discord and state your concerns.
64+
65+
All complaints will be reviewed and investigated promptly and fairly.
66+
All community leaders are obligated to respect the privacy and security of the
67+
reporter of any incident.
68+
69+
## :balance_scale: Attribution
70+
This Code of Conduct is a **modified version** of the original [Contributor Covenant Code of Conduct](https://www.contributor-covenant.org),
71+
version 2.0, available at
72+
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
73+
74+
The Contributor Covenant was created by Coraline Ada Ehmke in 2014 and is released under the [CC BY 4.0 License](https://github.com/ContributorCovenant/contributor_covenant/blob/release/LICENSE.md).

.github/CONTRIBUTING.md

+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# Contributing to SensibleToolbox
2+
This document outlines various ways how you can help contribute to SensibleToolbox and make this a bigger and better project.<br>
3+
All contributions must be inline with our [Code of Conduct](https://github.com/Slimefun/SensibleToolbox/blob/master/.github/CODE_OF_CONDUCT.md) and [License](https://github.com/Slimefun/SensibleToolbox/blob/master/LICENSE).
4+
Please also follow the templates for Issues and Pull Requests we provide.
5+
6+
## :beetle: 1. Issues: Bug Reports
7+
One of the foundations for good software is reliability. To facilitate this reliability, our community must work together to crush bugs that arise.
8+
This of course requires good information and knowledge about ongoing bugs and issues though.
9+
10+
You can help this project by reporting a bug on our [Issues Tracker](https://github.com/Slimefun/SensibleToolbox/issues).<br>
11+
Please adhere to the provided template and provide as much information as possible.
12+
For more info on how to make good and helpful bug reports, check out our article on [How to report bugs](https://github.com/Slimefun/Slimefun4/wiki/How-to-report-bugs).
13+
14+
If you encounter an issue which has already been reported, please don't open a new one.<br>
15+
It would be awesome though if you could post a comment on the existing issue which explains how you were able to reproduce this yourself.
16+
The more context and information we get, the easier we can fix it.
17+
18+
## :hammer_and_wrench: 2. Pull Requests: Bug Fixes
19+
Bugs that have been reported need to be fixed of course.<br>
20+
Any open Issue on our [Issues Tracker](https://github.com/Slimefun/SensibleToolbox/issues) is waiting to be fixed.
21+
22+
This is an Open-Source project and we love Pull Requests.
23+
So if you have an idea on how to approach a known issue, feel free to make a [Pull Request](https://github.com/Slimefun/SensibleToolbox/pulls) which fixes this bug.
24+
You can also comment on the existing Issue, proposing your idea or communicating that you wanna work on this.
25+
26+
## :wrench: 3. Pull Requests: Additions/Changes
27+
SensibleToolbox is an Open-Source project and anyone is allowed to make changes or add content to this plugin!
28+
29+
Please visit our [Discord Server](https://github.com/Slimefun/Slimefun4#discord) and share your ideas first, we hate to reject changes because the community disagrees.<br>
30+
So communicating your intended changes before-hand will ensure that you don't put too much work into something that might get rejected.
31+
32+
## :star: 4. Pull Requests: Code Quality
33+
SensibleToolbox uses [sonarcloud.io](https://sonarcloud.io/dashboard?id=TheBusyBiscuit_SensibleToolbox) to monitor Code Quality.
34+
35+
We always welcome quality improvements to the code and the "Code Smells" section on [sonarcloud.io](https://sonarcloud.io/dashboard?id=TheBusyBiscuit_SensibleToolbox) is a great place to start.
36+
But please keep in mind that some design patterns may not be changed too abruptly if an addon depends on them.
37+
To prevent any accidents from happening, please contact us on our [Discord Server](https://github.com/Slimefun/Slimefun4#discord) before-hand and state your intended changes.
38+
39+
#### Documentation
40+
Code documentation is also a great way to improve the maintainability of the project.
41+
1. Every class and every public method should have a Javadocs section assigned to it.
42+
2. Classes should also include an `@author` tag to indicate who worked on that class.
43+
3. Methods and parameters should be annotated with `@Nullable` or `@Nonnull` to indicate whether or not null values are accepted.
44+
45+
46+
#### Unit Tests
47+
Unit Tests help us test the project to work as intended in an automated manner.<br>
48+
More or better Unit Tests are always good to have, so feel free to submit a Test and place it in our [src/test/java](https://github.com/Slimefun/Slimefun4/tree/master/src/test/java/io/github/thebusybiscuit/slimefun4/testing) directory
49+
50+
We are using [Junit 5 - Jupiter](https://github.com/junit-team/junit5/) and [MockBukkit](https://github.com/seeseemelk/MockBukkit) as our testing environment.<br>
51+
Every new Unit Test should have a `@DisplayName` annotation with a plain text description on what the Unit Test tests.
52+
53+
## :toolbox: How to compile SensibleToolbox
54+
SensibleToolbox is written in Java and uses [Maven](https://maven.apache.org/) for compilation.<br>
55+
To compile SensibleToolbox yourself, follow these steps:
56+
57+
1. Clone the project via git<br>
58+
`$ git clone https://github.com/Slimefun/SensibleToolbox/`
59+
2. Compile the project using Maven<br>
60+
`$ mvn clean package`
61+
3. Extract the compiled `SensibleToolbox-vX-UNOFFICIAL.jar` from your `/target/` directory.
62+
63+
If you are already using an IDE, make sure to import the project via git and set it up as a *Maven project*.
64+
Then you should be able build it via Maven using the goals `clean package`.
65+
66+
If you have any further questions, then please join our [Discord Support Server](#discord) and ask your questions in the `#programming-help` channel.<br>
67+
**Note that we will not accept any bug reports from custom-compiled versions of SensibleToolbox**.

.github/ISSUE_TEMPLATE/bug-report.md

+43
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
name: Bug Report
3+
about: Report a Bug or an Issue with SensibleToolbox.
4+
title: ''
5+
labels: Bug Report
6+
assignees: ''
7+
8+
---
9+
10+
<!-- FILL IN THE FORM BELOW -->
11+
12+
## :round_pushpin: Description (REQUIRED)
13+
<!-- A clear and detailed description of what went wrong. -->
14+
<!-- The more information you can provide, the easier we can handle this problem. -->
15+
<!-- Start writing below this line -->
16+
17+
18+
## :bookmark_tabs: Steps to reproduce the Issue (REQUIRED)
19+
<!-- Tell us the exact steps to reproduce this issue, the more detailed the easier we can reproduce it. -->
20+
<!-- Youtube Videos and Screenshots are recommended!!! -->
21+
<!-- Start writing below this line -->
22+
23+
24+
## :bulb: Expected behavior (REQUIRED)
25+
<!-- What were you expecting to happen? -->
26+
<!-- What do you think would have been the correct behaviour? -->
27+
<!-- Start writing below this line -->
28+
29+
30+
## :scroll: Server Log
31+
<!-- Take a look at your Server Log and post any errors you can find via https://pastebin.com/ -->
32+
<!-- If you are unsure about it, post your full log, you can find it under /logs/latest.log -->
33+
<!-- Paste your link(s) below this line -->
34+
35+
36+
## :compass: Environment (REQUIRED)
37+
<!-- Any info without the exact version numbers will be closed! -->
38+
<!-- "latest" IS NOT A VERSION NUMBER. -->
39+
<!-- If your issue is related to other plugins, make sure to include the versions of these plugins too! -->
40+
41+
- Server Software (Spigot/Paper):
42+
- Minecraft Version:
43+
- SensibleToolbox Version:

.github/ISSUE_TEMPLATE/config.yml

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Code of Conduct
4+
url: https://github.com/Slimefun/SensibleToolbox/blob/master/.github/CODE_OF_CONDUCT.md
5+
about: Please read this before posting
6+
- name: Bug Report Guidelines
7+
url: https://github.com/Slimefun/Slimefun4/wiki/How-to-report-bugs
8+
about: Guidelines on how to make good Bug reports
9+
- name: Slimefun Community Discord Server
10+
url: https://discord.gg/fsD4Bkh
11+
about: Please ask and answer questions here.

.github/PULL_REQUEST_TEMPLATE.md

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
## Description
2+
<!-- Please explain what you changed/added and why you did it in detail. -->
3+
4+
## Changes
5+
<!-- Please list all the changes you have made. -->
6+
7+
## Related Issues
8+
<!-- Please tag any Issues related to your Pull Request -->
9+
<!-- Syntax: "Resolves #000" -->
10+
11+
## Checklist
12+
<!-- Here is a little checklist you should follow. -->
13+
<!-- You can click those check boxes after you posted your issue. -->
14+
- [ ] I have fully tested the proposed changes and promise that they will not break everything into chaos.
15+
- [ ] I have also tested the proposed changes in combination with various popular addons and can confirm my changes do not break them.
16+
- [ ] I followed the existing code standards and didn't mess up the formatting.
17+
- [ ] I did my best to add documentation to any public classes or methods I added.
18+
- [ ] I have added `Nonnull` and `Nullable` annotations to my methods to indicate their behaviour for null values

.github/workflows/maven-compiler.yml

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Java CI
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
paths:
8+
- 'src/**'
9+
- 'pom.xml'
10+
pull_request:
11+
branches:
12+
- master
13+
paths:
14+
- 'src/**'
15+
- 'pom.xml'
16+
17+
jobs:
18+
build:
19+
20+
name: Maven build
21+
runs-on: ubuntu-latest
22+
23+
steps:
24+
- name: Checkout repository
25+
uses: actions/checkout@v1
26+
- name: Set up JDK 1.8
27+
uses: actions/setup-java@master
28+
with:
29+
java-version: 1.8
30+
- name: Build with Maven
31+
run: mvn package --file pom.xml

.gitignore

+7-31
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,8 @@
1-
# Eclipse stuff
2-
/.classpath
3-
/.project
4-
/.settings
5-
6-
# netbeans
7-
/nbproject
8-
9-
# we use maven!
10-
/build.xml
11-
12-
# maven
13-
/target
14-
15-
# vim
16-
.*.sw[a-p]
17-
18-
# various other potential build files
19-
/build
20-
/bin
21-
/dist
22-
/manifest.mf
23-
24-
# Mac filesystem dust
25-
/.DS_Store
26-
27-
# intellij
1+
/bin/
2+
.classpath
3+
.project
4+
/.settings/
285
*.iml
29-
*.ipr
30-
*.iws
31-
/.idea
32-
6+
/target
7+
/.idea/
8+
dependency-reduced-pom.xml

LICENSE

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
GNU GENERAL PUBLIC LICENSE
22
Version 3, 29 June 2007
33

4-
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
4+
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
55
Everyone is permitted to copy and distribute verbatim copies
66
of this license document, but changing it is not allowed.
77

@@ -645,7 +645,7 @@ the "copyright" line and a pointer to where the full notice is found.
645645
GNU General Public License for more details.
646646

647647
You should have received a copy of the GNU General Public License
648-
along with this program. If not, see <http://www.gnu.org/licenses/>.
648+
along with this program. If not, see <https://www.gnu.org/licenses/>.
649649

650650
Also add information on how to contact you by electronic and paper mail.
651651

@@ -664,11 +664,11 @@ might be different; for a GUI interface, you would use an "about box".
664664
You should also get your employer (if you work as a programmer) or school,
665665
if any, to sign a "copyright disclaimer" for the program, if necessary.
666666
For more information on this, and how to apply and follow the GNU GPL, see
667-
<http://www.gnu.org/licenses/>.
667+
<https://www.gnu.org/licenses/>.
668668

669669
The GNU General Public License does not permit incorporating your program
670670
into proprietary programs. If your program is a subroutine library, you
671671
may consider it more useful to permit linking proprietary applications with
672672
the library. If this is what you want to do, use the GNU Lesser General
673673
Public License instead of this License. But first, please read
674-
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
674+
<https://www.gnu.org/licenses/why-not-lgpl.html>.

README.md

+22-22
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
# Sensible Toolbox
2-
3-
Sensible Toolbox - new blocks, items, machines, energy system and more!
4-
5-
## Installation and Usage
6-
7-
... TODO ...
8-
9-
## Building
10-
11-
If you want to build Sensible Toolbox yourself, you will need Maven.
12-
13-
1) ```git clone https://github.com/desht/sensibletoolbox.git```
14-
15-
2) ```cd sensibletoolbox```
16-
17-
3) ```mvn clean install```
18-
19-
This should give you a copy of SensibleToolbox.jar under the target/ directory.
20-
21-
## License
22-
23-
Sensible Toolbox by Des Herriott is licensed under the [Gnu GPL v3](http://www.gnu.org/licenses/gpl-3.0.html).
2+
Sensible Toolbox adds a bunch of new items, tools and machines to your Minecraft Server.
3+
It's heavily inspired by certain Forge-based mods, but of course requires no client modifications at all.
4+
5+
## About the project
6+
SensibleToolbox was created in early 2014 and originally developed by [desht](https://github.com/desht), here is a link to the original GitHub Repository: https://github.com/desht/sensibletoolbox.<br>
7+
I took over the project back in late 2014 and continued to update it for some time until I have quit plugin development altogether in late 2016.<br>
8+
The plugin has been updated to work with newer versions of Minecraft up until 2014. Feel free to update it further!
9+
10+
**The Project is licensed under [GNU GPLv3](https://github.com/TheBusyBiscuit/sensibletoolbox/blob/master/LICENSE) and Open-Source!**<br>
11+
Pull Requests are very much welcome!
12+
13+
## Credits
14+
This is a fork of [desht/sensibletoolbox](https://github.com/desht/sensibletoolbox).
15+
16+
Sensible Toolbox is primarily original code, but many of its ideas stem from popular Forge mods.
17+
So credit where credit is due:
18+
* The BSU/HSU blocks are based on Barrels from Factorization and Jabba, also the Deep Storage Unit from Minefactory Reloaded.
19+
* The processing machines get their inspiration from multiple Forge-based mods, in particular IC2 and Thermal Expansion.
20+
* The energy system is primarily inspired by Thermal Expansion.
21+
* Numerous miscellaneous items are adapted (sometimes blatantly!) from Misc Utilities and OpenBlocks.
22+
* The item routing system is entirely original (as far as I'm aware), mainly due to the fact that it's difficult to do pipes with vanilla Minecraft blocks :)
23+
* The ender storage system is inspired by and works similarly (but not identically) to Ender Storage.

0 commit comments

Comments
 (0)