diff --git a/Contribution.md b/Contribution.md new file mode 100644 index 000000000..9198c6a0e --- /dev/null +++ b/Contribution.md @@ -0,0 +1,40 @@ +# How to contribute + +First of all, thank you for visiting this page and for even thinking about contributing. + +## Things you can do + +### Issues +If you find a bug (in master **AND** in development), feel free to follow these steps: +1. Check if this bug is a bug and can be recreated. +2. Check if this bug is already reported (use the issue search or google). +3. Open the issue and describe the problem as much as needed (not as you can!) +4. Include the version of minosoft (or commit name), your OS and all information like that +5. Include a log. If you know what you are doing, include the interesting paths (and the **first** exception that happened). +If you don't know much about this shit, just include the whole log (You may need to censure email addresses, ...). Paste the log into a code block and do not use other 3rd party sites! +6. Describe the bug and follow the rules + +### Development +Please take a look at [/doc/contributing/Development.md](doc/contributing/Development.md) + +### Share +Minosoft is an open source project, it helps if you recommend it and share it more users (probably) use it. I'll fell good, +that I developed something useful, and people start contributing. + +### Donating +I started this project with the mind, that I'll never earn money from it. Just doing it for fun, so I am not dependent on it. +In short: Currently not available and not planned. + +## Issue and MR rules +- Do not spam, we will answer when we have time. +- Use english whenever possible, we would even allow using german, but try to use english. +- Don't hesitate against other developers. + +## Contact us + +If you want to ask me, the team or whoever in this project a question, you can do the following things: + - IRC. I am very often in the channel `#mcdevs` on [freenode](https://freenode.net/). You can contact me there, my nickname is - as always - @Bixilon. + - Issues: Just open an issue if you want to ask it, or suggest something. If it is a really short thing, this is not recommended, but even if, it is no problem. + - E-mail: You can contact me here: [bixilon@bixilon.de](mailto:bixilon@bixilon.de) + - TeamSpeak: You can join my teamspeak (bixilon.de) and poke me there. + diff --git a/ReadMe.md b/ReadMe.md index 0da73052a..11775c682 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -38,8 +38,8 @@ The current result of rendering (taken in 739f861bf62341698abcd58386c353a4831f48 The Hypixel prototype lobby (taken in 91ab431004fa1ae132a1eb1115550f84c27f48f8). ## Launcher -The "Launcher" is not really a launcher, it is just a (badly designed, but functional) server list with account management functionality. -Launcher is in quotation marks, because it is not really a launcher. It is the game. You click on run and see this window. All downloads, loadings, ... happen async in the background. +The "Launcher" is not really a launcher, it is just a (beautifully designed, but functional) server list with account management functionality. +Launcher is in quotation marks, because it is not really a launcher. It is the game. You click on run and see this window. All downloads, loadings, ... happen before it asynchronous in the background. If you double-click on the server. you can connect to it. Once connected (= Received spawn location), you can play :) ![Server list](doc/img/server_list.png) @@ -65,23 +65,26 @@ And 1.8.9 is only supported, because this version is widely spread, and I wrote Minosoft is modding friendly. I am working hard on a reasonable API. See !17 for more details. See [Modding.md](doc/Modding.md) for more details. The code is pretty dynamic (all blocks, items, entities, etc are stored in json files). It is pretty easy to load custom entities, etc. We will add a real modding API once Rendering is complete. Spoiler: Forge mods are NOT compatible. Feel free to write a compatibility layer (This is a really hard thing, we do things completely different). -## Contribution -You're welcome. Because this is pretty much incomplete, contact us before working on it and submitting a pull request. +## Botting +On the ToDo List -## Tools +## Contribution or helping out +You're welcome. Because this is still work-in-progress, consider contacting us first, but feel free to take a look at [Contribution.md](/Contribution.md). + +## Tools and generators We wrote some tools to help out, see [Utility](util/ReadMe.md). ## Credits -Many thanks to [Credits](Credits.md). +Some projects and persons helped this project a lot. See [Credits](Credits.md). ## Releases and beta -We are almost ready to release a beta once !8 is merged. +No clue, but still waiting for !8. Also, some features need to be implemented, so not soo soon (but we are getting closer). ## Compiling and running -1. Install Maven and java 15 (On Ubuntu based distributions: `sudo apt install maven openjdk-15-jdk`) -2. Clone this repo (`git clone https://gitlab.bixilon.de/bixilon/minosoft.git`) -3. Change directory (`cd minosoft`) -4. Checkout the branch (`git checkout `). Probably `render` +1. Install Maven and java 15 (On Ubuntu based distributions: `sudo apt install maven openjdk-15-jdk`). +2. Clone this repo (`git clone https://gitlab.bixilon.de/bixilon/minosoft.git`). +3. Change directory (`cd minosoft`). +4. Checkout the branch (`git checkout `). Eventually `render` or `development`. 5. Build and run Minosoft with `mvn clean verify exec:java`. If any errors occur, feel free to open an issue. In this early stage it might be helpful to delete the app data folder (only of minosoft). diff --git a/doc/contributing/Development.md b/doc/contributing/Development.md new file mode 100644 index 000000000..d61eb8e37 --- /dev/null +++ b/doc/contributing/Development.md @@ -0,0 +1,17 @@ +# Development + +Generally I'd say TBA, but some basic rules are here. Feel free to contact us first, before developing huge things. May be better. +Also, (before someone asks): I don't care if you use Kotlin or Java. + + +## Git Rules + - Small Features in `development`. + - `master` is always functional. + - No force pushes (or modifying the git history) on `master`. + - Bigger features on own branches. Merge only via Merge Request. + - No commits directly on `master` + +## Git access + - Don't just request developer access, I'll not just give you access, instead create a fork, and a pull requests, we will accept (or decline) it. Probably a bit of discussion. + - If you develop here for a while, you can request developer access, and I'll contact it. But probably you won't need it, but I'll probably don't refuse to give it to you. +