diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b5a11ee1e..781b1b85f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -9,10 +9,9 @@ You can help with MineClone2's development in many different ways, whether you're a programmer or not. ## MineClone2's development target is to... -- Crucially, create a stable, moddable, free/libre clone of Minecraft -based on the Minetest engine with polished features, usable in both -singleplayer and multiplayer. Currently, a lot of Minecraft features -are already implemented. +- Create a stable, peformant, moddable, free/libre game based on Minecraft +using the Minetest engine, usable in both singleplayer and multiplayer. +- Currently, a lot of features are already implemented. Polishing existing features is always welcome. ## Links @@ -120,11 +119,11 @@ It's also a good idea to join the Discord server (or alternatively IRC or Matrix). #### Textures -For textures we use the Pixel Perfection texture pack. For older Minecraft -features that is mostly enough but a lot of the newer textures in it are -copies or slight modifications of the original MC textures so great caution -needs to be taken when using any textures coming from Minecraft texture -packs. +For textures we prefer original art, but in the absence of that will accept +Pixel Perfection texture pack contributions. Be warned many of the newer +textures in it are copies or slight modifications of the original MC textures +so great caution needs to be taken when using any textures coming from +Minecraft texture packs. If you want to make such contributions, join our Discord server. Demands for textures will be communicated there. @@ -135,7 +134,10 @@ resource pack or minetest_game. Unfortunately, MineClone2 does not play a sound in every situation you would get one in Minecraft. Any help with sounds is greatly appreciated, however if you add new sounds you should probably work together with a programmer, to write the code to actually -play these sounds in game. +play these sounds in game. All sounds should be released under an open +source license with clear information on the source, licencing and any +changes made by the contributor. Use the README files in the mod to +communicate this information. #### 3D Models Most of the 3D Models in MineClone2 come from @@ -145,9 +147,9 @@ Blender on demand. Many of the models have to be patched, some new animations have to be added etc. #### Crediting -Asset contributions will be credited in their own respective sections in -CREDITS.md. If you have commited the results yourself, you will also be -credited in the Contributors section. +Asset contributions will be credited in their mods and their own respective +sections in CREDITS.md. If you have commited the results yourself, you will +also be credited in the Contributors section. ### Contributing Translations @@ -182,7 +184,12 @@ information about the game's performance and let us know places to investigate optimization issues. This way we can make the game faster. #### Using Minetest's profiler -Minetest has a built in profiler. Simply set `profiler.load = true` in +We frequently will use profiling to optimise our code. We recommend use of +the JIT profiler (RIP Jude) to fully understand performance impact: + +https://content.minetest.net/packages/jwmhjwmh/jitprofiler/ + +Minetest also has a built in profiler. Simply set `profiler.load = true` in your configuration file and restart the server. After running the server for some time, just run `/profiler save` in chat - then you will find a file in the world directory containing the results. Open a new issue and @@ -213,10 +220,14 @@ they have made their donation Incognito). * Fork the repository (in case you have not already) * Do your change in a new branch * Create a pull request to get your changes merged into master -* Keep your pull request up to date by regularly merging upstream. It is -imperative that conflicts are resolved prior to merging the pull +* It is important that conflicts are resolved prior to merging the pull request. -* After the pull request got merged, you can delete the branch +* We update our branches via rebasing. Please avoid merging master into +your branch unless it's the only way you can resolve a conflict. We can +rebase branches from the GUI if the user has not merged master into the +branch. +* After the pull request got merged, you can delete the branch if the +merger hasn't done this already. ### Discuss first If you feel like a problem needs to fixed or you want to make a new @@ -262,9 +273,7 @@ excessive git bureaucracy commits in master) * Submodules should only be used if a) upstream is highly reliable and b) it is 100% certain that no mcl2 specific changes to the code will be needed (this has never been the case before, hence mcl2 is submodule free so far) -* Commit messages should be descriptive and never contain mcl2 specific -issueids - there are other projects who might use commits from mcl2 and -it will confuse their issue trackers. +* Commit messages should be descriptive * Try to group your submissions best as you can: * Try to keep your PRs small: In some cases things reasonably be can't split up but in general multiple small PRs are better than a big one. @@ -348,18 +357,24 @@ end ### Developer status Active and trusted contributors are often granted write access to the -MineClone2 repository. +MineClone2 repository as a contributor. Those that have demonstrated the right +technical skills and behaviours may be granted developer access. These are the +most trusted contributors who will contribute to ensure coding standards and +processes are followed. #### Developer responsibilities -- If you have developer privileges you can just open a new branch in the -mcl2 repository (which is preferred). From that you create a pull request. +- If you have developer/contributor privileges you can just open a new branch +in the mcl2 repository (which is preferred). From that you create a pull request. This way other people can review your changes and make sure they work before they get merged. - If you do not (yet) have developer privs you do your work on a branch on your private repository e.g. using the "fork" function on mesehub. -- Any developer is welcome to review, test and merge PRs. A PR needs -at least one approval (by someone else than the author) but the maintainers -are usually relatively quick to react to new submissions. +- Any developer is welcome to review, test and approve PRs. A maintainer may prefer +to merge the PR especially if it is in a similar area to what has been worked on +and could result in merge conflicts for a larger older branch, or needs +art/licencing reviewing. A PR needs at least one approval (by someone else other +than the author). +- The maintainers are usually relatively quick to react to new submissions. ### Maintainer status Maintainers carry the main responsibility for the project. diff --git a/CREDITS.md b/CREDITS.md index 3584cae1e..3517615ff 100644 --- a/CREDITS.md +++ b/CREDITS.md @@ -6,40 +6,41 @@ ## Creator of MineClone2 * Wuzzy - ## Maintainers * AncientMariner * Nicu ## Previous Maintainers * Fleckenstein -* jordan4ibanez * cora ## Developers -* bzoss * AFCMS * epCode -* ryvnf -* iliekprogrammar -* MysticTempest -* Rootyjr -* aligator -* Code-Sploit -* NO11 -* kabou -* rudzik8 * chmodsayshello * PrairieWind -* RandomLegoBrick -* SumianVoice * MrRar -* talamh -* Faerraven / Michieal * FossFanatic * SmokeyDope +## Past Developers +* jordan4ibanez +* iliekprogrammar +* kabou +* Faerraven / Michieal +* MysticTempest +* NO11 +* SumianVoice + ## Contributors +* RandomLegoBrick +* rudzik8 +* Code-Sploit +* aligator +* Rootyjr +* ryvnf +* bzoss +* talamh * Laurent Rocher * HimbeerserverDE * TechDudie @@ -68,6 +69,11 @@ * Marcin Serwin * erlehmann * E +* n_to +* kay27 +* debiankaios +* Gustavo6046 / wallabra +* CableGuy67 * Benjamin Schötz * Doloment * Sydney Gems @@ -101,25 +107,17 @@ * gldrk * atomdmac * emptyshore +* FlamingRCCars +* uqers +* Niterux +* appgurueu -## MineClone5 -* kay27 -* Debiankaios -* epCode -* NO11 -* j45 -* chmodsayshello -* 3raven -* PrairieWind -* Gustavo6046 / wallabra -* CableGuy67 -* MrRar - -## Mineclonia -* erlehmann -* Li0n -* E -* n_to +## Music +* Jordach for the jukebox music compilation from Big Freaking Dig +* Dark Reaven Music (https://soundcloud.com/dark-reaven-music) for the main menu theme (Calmed Cube) and Traitor (horizonchris96), which is licensed under https://creativecommons.org/licenses/by-sa/3.0/ +* Jester for helping to finely tune MineClone2 (https://www.youtube.com/@Jester-8-bit). Songs: Hailing Forest, Gift, 0dd BL0ck, Flock of One (License CC BY-SA 4.0) +* Exhale & Tim Unwin for some wonderful MineClone2 tracks (https://www.youtube.com/channel/UClFo_JDWoG4NGrPQY0JPD_g). Songs: Valley of Ghosts, Lonely Blossom, Farmer (License CC BY-SA 4.0) +* Diminixed for 3 fantastic tracks and remastering and leveling volumes. Songs: Afternoon Lullaby (pianowtune02), Spooled (ambientwip02), Never Grow Up (License CC BY-SA 4.0) ## Original Mod Authors * Wuzzy @@ -151,14 +149,18 @@ * 4Evergreen4 * jordan4ibanez * paramat +* debian044 / debian44 +* chmodsayshello * cora * Faerraven / Michieal +* PrairieWind ## 3D Models * 22i * tobyplowy * epCode * Faerraven / Michieal +* SumianVoice ## Textures * XSSheep @@ -175,6 +177,8 @@ * Faerraven / Michieal * Nicu * Exhale +* Wbjitscool +* SmokeyDope ## Translations * Wuzzy @@ -191,6 +195,9 @@ * SakuraRiu * anarquimico * syl +* Temak +* megustanlosfrijoles +* kbundg ## Funders * 40W @@ -198,12 +205,6 @@ * Cora ## Special thanks -* celeron55 for creating Minetest -* Jordach for the jukebox music compilation from Big Freaking Dig -* wsor for working tirelessly in the shadows for the good of all of us, particularly helping with solving contentDB and copyright issues. +* The Minetest team for making and supporting an engine, and distribution infrastructure that makes this all possible * The workaholics who spent way too much time writing for the Minecraft Wiki. It's an invaluable resource for creating this game -* Notch and Jeb for being the major forces behind Minecraft -* Dark Reaven Music (https://soundcloud.com/dark-reaven-music) for the main menu theme (Calmed Cube) and Traitor (horizonchris96), which is licensed under https://creativecommons.org/licenses/by-sa/3.0/ -* Jester for helping to finely tune MineClone2 (https://www.youtube.com/@Jester-8-bit). Songs: Hailing Forest, Gift, 0dd BL0ck, Flock of One (License CC BY-SA 4.0) -* Exhale & Tim Unwin for some wonderful MineClone2 tracks (https://www.youtube.com/channel/UClFo_JDWoG4NGrPQY0JPD_g). Songs: Valley of Ghosts, Lonely Blossom, Farmer (License CC BY-SA 4.0) -* Diminixed for 3 fantastic tracks and remastering and leveling volumes. Songs: Afternoon Lullaby (pianowtune02), Spooled (ambientwip02), Never Grow Up (License CC BY-SA 4.0) +* Notch and Jeb for being the major forces behind Minecraft \ No newline at end of file diff --git a/LEGAL.md b/LEGAL.md index e54bdc41b..aace346bf 100644 --- a/LEGAL.md +++ b/LEGAL.md @@ -5,7 +5,7 @@ Copying is an act of love. Please copy and share! <3 Here's the detailed legalese for those who need it: ## License of source code -MineClone 2 (by kay27, EliasFleckenstein, Wuzzy, davedevils and countless others) +MineClone 2 (by Lizzy Fleckenstein, Wuzzy, davedevils and countless others) is an imitation of Minecraft. MineClone 2 is free software: you can redistribute it and/or modify diff --git a/README.md b/README.md index 2d2eafb5d..7221e6163 100644 --- a/README.md +++ b/README.md @@ -87,26 +87,22 @@ The MineClone2 repository is hosted at Mesehub. To contribute or report issues, * OpenCollective: ## Target -- Crucially, create a stable, moddable, free/libre clone of Minecraft -based on the Minetest engine with polished features, usable in both +- Create a stable, moddable, free/libre game based on Minecraft +on the Minetest engine with polished features, usable in both singleplayer and multiplayer. Currently, a lot of **Minecraft Java Edition** features are already implemented and polishing existing features are prioritized over new feature requests. -- With lessened priority yet strictly, implement features targetting +- Implement features targetting **Current Minecraft versions + OptiFine** (OptiFine only as far as supported -by the Minetest Engine). This means features in parity with the listed -Minecraft experiences are prioritized over those that don't fulfill this -scope. -- Optionally, create a performant experience that will run relatively -well on really low spec computers. Unfortunately, due to Minecraft's -mechanisms and Minetest engine's limitations along with a very small -playerbase on low spec computers, optimizations are hard to investigate. +by the Minetest Engine). +- Create a performant experience that will run relatively +well on really low spec computers. ## Completion status This game is currently in **beta** stage. It is playable, but not yet feature-complete. Backwards-compability is not entirely guaranteed, updating your world might cause small bugs. -If you want to use the development version of MineClone2 in production, the master branch is usually relatively stable. The testing branch often features some experimental PRs and should be considered less stable. +If you want to use the development version of MineClone2 in production, the master branch is usually relatively stable. The following main features are available: diff --git a/TEXTURES.md b/TEXTURES.md index fa3799635..157965ae6 100644 --- a/TEXTURES.md +++ b/TEXTURES.md @@ -12,13 +12,13 @@ GIMP Tutorials has an excellent guide to making pixel art in GIMP. If you would ### GIMP -GIMP (Gnu Image Manipulation Program) is a very popular and free image editing software supported on Windows, MacOS, and most Linux distributions. It is recommended to use GIMP to create and modify textures within the minetest engine. +GIMP (GNU Image Manipulation Program) is a very popular and free image editing software supported on Windows, MacOS, and most Linux distributions. It is recommended to use GIMP to create and modify textures within the minetest engine. Download GIMP [here](http://gimp.org/) # Getting Started ## Creating a new file -the first thing to do is open GIMP and create a new file to work in by opening the File menu and choosing New. +the first thing to do is open GIMP and create a new file to work in by opening the File menu and choosing "New". Choose width of 16 and height of 16 for the image size. While higher resolution textures are possible, The default size is 16x16. It is recommended you use this size as well, as it is universally supported on all systems. diff --git a/description.txt b/description.txt index d45188894..922f5dceb 100644 --- a/description.txt +++ b/description.txt @@ -1 +1 @@ -A survival sandbox game. Survive, gather, hunt, mine, build, explore, and do much more. Faithful clone of Minecraft 1.12. This is a work in progress! Expect bugs! +A survival sandbox game. Survive, gather, hunt, mine, build, explore, and do much more. diff --git a/mods/HUD/mcl_credits/people.lua b/mods/HUD/mcl_credits/people.lua index 660cde11e..a1aca670a 100644 --- a/mods/HUD/mcl_credits/people.lua +++ b/mods/HUD/mcl_credits/people.lua @@ -14,33 +14,35 @@ return { }}, {S("Previous Maintainers"), 0xFFFFFF, { "Fleckenstein", - "jordan4ibanez", "cora", }}, {S("Developers"), 0xF84355, { - "bzoss", "AFCMS", "epCode", - "ryvnf", - "iliekprogrammar", - "MysticTempest", - "Rootyjr", - "aligator", - "Code-Sploit", - "NO11", - "kabou", - "rudzik8", "chmodsayshello", "PrairieWind", - "RandomLegoBrick", - "SumianVoice", "MrRar", - "talamh", - "Faerraven / Michieal", "FossFanatic ", "SmokeyDope", }}, + {S("Past Developers"), 0xF84355, { + "jordan4ibanez", + "iliekprogrammar", + "kabou", + "Faerraven / Michieal", + "MysticTempest", + "NO11", + "SumianVoice", + }}, {S("Contributors"), 0x52FF00, { + "RandomLegoBrick", + "rudzik8", + "Code-Sploit", + "aligator", + "Rootyjr", + "ryvnf", + "bzoss", + "talamh", "Laurent Rocher", "HimbeerserverDE", "TechDudie", @@ -69,6 +71,11 @@ return { "Marcin Serwin", "erlehmann", "E", + "n_to", + "kay27", + "debiankaios", + "Gustavo6046 / wallabra", + "CableGuy67", "Benjamin Schötz", "Doloment", "Sydney Gems", @@ -102,25 +109,17 @@ return { "gldrk", "atomdmac", "emptyshore", + "FlamingRCCars", + "uqers", + "Niterux", + "appgurueu", }}, - {S("MineClone5"), 0xA60014, { - "kay27", - "Debiankaios", - "epCode", - "NO11", - "j45", - "chmodsayshello", - "3raven", - "PrairieWind", - "Gustavo6046 / wallabra", - "CableGuy67", - "MrRar", - }}, - {S("Mineclonia"), 0xFFFFFF, { - "erlehmann", - "Li0n", - "E", - "n_to", + {S("Music"), 0xA60014, { + "Jordach for the jukebox music compilation from Big Freaking Dig", + "Dark Reaven Music (https://soundcloud.com/dark-reaven-music) for the main menu theme (Calmed Cube) and Traitor (horizonchris96), which is licensed under https://creativecommons.org/licenses/by-sa/3.0/", + "Jester for helping to finely tune MineClone2 (https://www.youtube.com/@Jester-8-bit). Songs: Hailing Forest, Gift, 0dd BL0ck, Flock of One (License CC BY-SA 4.0)", + "Exhale & Tim Unwin for some wonderful MineClone2 tracks (https://www.youtube.com/channel/UClFo_JDWoG4NGrPQY0JPD_g). Songs: Valley of Ghosts, Lonely Blossom, Farmer (License CC BY-SA 4.0)", + "Diminixed for 3 fantastic tracks and remastering and leveling volumes. Songs: Afternoon Lullaby (pianowtune02), Spooled (ambientwip02), Never Grow Up (License CC BY-SA 4.0)", }}, {S("Original Mod Authors"), 0x343434, { "Wuzzy", @@ -152,14 +151,18 @@ return { "4Evergreen4", "jordan4ibanez", "paramat", + "debian044 / debian44", + "chmodsayshello", "cora", "Faerraven / Michieal", + "PrairieWind", }}, {S("3D Models"), 0x0019FF, { "22i", "tobyplowy", "epCode", "Faerraven / Michieal", + "SumianVoice", }}, {S("Textures"), 0xFF9705, { "XSSheep", @@ -176,6 +179,8 @@ return { "Faerraven / Michieal", "Nicu", "Exhale", + "Wbjitscool", + "SmokeyDope", }}, {S("Translations"), 0x00FF60, { "Wuzzy", @@ -192,6 +197,9 @@ return { "SakuraRiu", "anarquimico", "syl", + "Temak", + "megustanlosfrijoles", + "kbundg", }}, {S("Funders"), 0xF7FF00, { "40W", @@ -199,14 +207,8 @@ return { "Cora", }}, {S("Special thanks"), 0x00E9FF, { - "celeron55 for creating Minetest", - "Jordach for the jukebox music compilation from Big Freaking Dig", - "wsor for working tirelessly in the shadows for the good of all of us, particularly helping with solving contentDB and copyright issues.", + "The Minetest team for making and supporting an engine, and distribution infrastructure that makes this all possible", "The workaholics who spent way too much time writing for the Minecraft Wiki. It's an invaluable resource for creating this game", "Notch and Jeb for being the major forces behind Minecraft", - "Dark Reaven Music (https://soundcloud.com/dark-reaven-music) for the main menu theme (Calmed Cube) and Traitor (horizonchris96), which is licensed under https://creativecommons.org/licenses/by-sa/3.0/", - "Jester for helping to finely tune MineClone2 (https://www.youtube.com/@Jester-8-bit). Songs: Hailing Forest, Gift, 0dd BL0ck, Flock of One (License CC BY-SA 4.0)", - "Exhale & Tim Unwin for some wonderful MineClone2 tracks (https://www.youtube.com/channel/UClFo_JDWoG4NGrPQY0JPD_g). Songs: Valley of Ghosts, Lonely Blossom, Farmer (License CC BY-SA 4.0)", - "Diminixed for 3 fantastic tracks and remastering and leveling volumes. Songs: Afternoon Lullaby (pianowtune02), Spooled (ambientwip02), Never Grow Up (License CC BY-SA 4.0)", }}, } diff --git a/tools/generate_ingame_credits.lua b/tools/generate_ingame_credits.lua index db124aaf6..a484322c0 100755 --- a/tools/generate_ingame_credits.lua +++ b/tools/generate_ingame_credits.lua @@ -7,8 +7,9 @@ local colors = { ["Creator of MineClone2"] = "0xFBF837", ["Maintainers"] = "0xFF51D5", ["Developers"] = "0xF84355", + ["Past Developers"] = "0xF84355", ["Contributors"] = "0x52FF00", - ["MineClone5"] = "0xA60014", + ["Music"] = "0xA60014", ["Original Mod Authors"] = "0x343434", ["3D Models"] = "0x0019FF", ["Textures"] = "0xFF9705",