[Mods] MineClone2-enabled mods

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

[Mods] MineClone2-enabled mods

by minerdudetest » Post

You know Mineclone 2 and think its great. Yet there is something that you want to tweak or add in form of the mod. Perhaps something from a mod, that you were used to.


This is the correct topic to:
- make request about mod you want to be made compatible with MCL2
- share information about the mod, that you made compatible with MCL2 (and MineTest Game, and ...)
- share information about the mod, that you ported to MCL2

Wuzzy wrote:My general notes and recommendations about MCL2 mods:
  • Remember that MCL2 is very different from MTG architecture-wise, so don't make to many assumptions
  • Remember the groups in MCL2 are different, too
  • You can try to be compatible with both MCL2 and MTG at the same time, but you don't have to. Keep in mind that both games are different, so expect to add lots of boilerplate code. Sometimes it might be easier to for an MTG mod for MCL2, esp. when many gameplay tweaks are required. Use good judgement
  • Add help support for all your items and gameplay mechanics. MCL2 is using the Help modpack:
    viewtopic.php?t=15912. Besides, it is generally a good idea to write documentation for all your items. The help modpack is only as useful as how many mods support it. :)
  • Read README.md, API.md, GROUPS.md and CONTRIBUTING.md
  • Play MCL2 and read the in-game help and make sure you understand all the mechanics well. Take your knowledge into consideration of the gameplay design
  • Keep writing style consistent
  • As I said before, ask me in IRC if you have questions
  • If your mod re-implements a Minecraft feature very well, please contact me so I can include it in MCL2

Posting rules:
0. actually test your changes before publishing (hmm?)
1. link back to original base mod
2. provide description, which includes download link, picture, installation instructions, license
3. specify if your work is "compatible" (logic expanded to support MCL2 in addition to previous) or "ported" (logic modified to run in MCL2) mod.
- in case mod was made "compatible", consider contacting original mod author for upstreaming your changes
- mod should be preferably hosted on a version control hoster, like github or similar; so that your changes can be merged to upstream.
4. you might want to modify mod readme with version suffix (like "mcl2": 1.0 -> 1.0mcl2) to:
- distinguish between your version and original
- specify the version your changes were based on
5. don't forget to modify your posts once your changes were accepted or you have news.


How to make mod compatible
1) deprecated things:
depends.txt - use "optional_depends=" or "depends=" in mod.conf instead, then delete the file.
Ofc, check that the mod works for MT5.

description.txt - move text into "description=" in mod.conf, then delete the file.

2) dependencies:
Minetest Game mods hard-depend on the core mod default. This core mod is not loaded with MineClone2, instead mcl_core is present and as such also signalizes, that MCL2 is running.
Thus, compatible mods should have no hard-dependencies on these two core mods.
Use this string: "optional_depends=default,mcl_core" and remove default from "depends".

Compatible mods will load one or another of core mods. Situation where none of both mods is present means a different game is run, in which case the game will certainly throw an error with the mod and just won't run. Not big difference from missing hard-dependency.

2) After specifying dependencies, its time to assign correct behavior and correct items depending on which game is running. Usually its just different items, sometimes different sounds, but it could be expanded into different textures and so on with the switcher code below. The switcher is only a primitive abstraction layer that uses local variables on per-file basis to minimize influence on logic in the underlying mod itself.

Begin checking in init.lua and then other lua files for presence of default ("default: ...", "default.") items/functions. Afterwards check both Minetest Game and MineClone2 if everything works. Then re-assign proper groups and apply more polish, like MineClone2 documentations or mod dialogs (formspecs) in different, game-based color.

The switcher logic Part 1. This part checks for presence of core mods, which allows to take decision which part to execute later. This way you can also check for presence of other mods:

Code: Select all

local default_path = core.get_modpath("default") and default
local mineclone_path = core.get_modpath("mcl_core") and mcl_core  -- dynamic detection of mcl2 instance
-- here is an example of extra game support: --  local someothergame_path = core.get_modpath("someothergame_lib") and someothergame_lib
Part 2 creates a local table, where all actual differences are stored. Each game assigns different values to same variables. The variables then replace static data in part 3.

Code: Select all

local moditems = {}  -- central local table, which can be expanded with data, like below

if mineclone_path then -- mineclone2 is running
  moditems.iron_item = "mcl_core:iron_ingot"   -- example, mcl2 version of iron ingot
  moditems.sounds_wood = mcl_sounds.node_sound_wood_defaults  -- example of function matching, perfect to replace sound handlers; note absence of scores "()" here
  moditems.text1 = S("MineClone 2 string")   -- item description or similar string, loaded only for mcl2

-- elseif someothergame_path then  -- example how to expand for other games.

else  -- this is default, MineTest Game
  moditems.iron_item = "default:steel_ingot"    -- iron ingot in stock MT
  moditems.sounds_wood = default.node_sound_wood_defaults  -- default function
  moditems.text1 = S("MineTest Game string")   -- item description if mod is loaded in MT
end
Part N is an example how variables replace static data:

Code: Select all

material = moditems.iron_item,  -- replaces item string
sounds = moditems.sounds_metal()
..
sounds = moditems.sounds_wood({ footstep = {name="default_grass_footstep", gain=0.25}, }), -- replaces function, absence of brackets allows switcher to accept arguments
_doc_items_longdesc = moditems.text1-- replaces text string
This is all.
Last edited by minerdudetest on Sat Apr 11, 2020 00:22, edited 8 times in total.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

List of MineClone2 Enabled mods

Compatible with MCL2 already without changes
Beware the dark

Made Compatible with MCL2 in this thread
Trash Can
Teleporter Improved Improved
Pontoons
Hallelujah Mountains (req Minetest 5+)
Amidst (tool, mapedit)
Thirsty
Orbs of Time

Ported to MCL2 in this thread
..

Some minor problems known
..

Upcoming mods
- Scaffolding (minerdudetest) (finished 50%)
- Caverealms (minerdudetest) (finished 95%, includes terrain debug tool, needs few improvements )
- Hangglider (minerdudetest) (finished 100%, awaits publishing, may need polishing to physics)
- Elevator (minerdudetest) (finished 100%, awaits publishing, new textures and few features)
- Beware the dark (minerdudetest) (improved values, externalized settings)
- Pontoons (minerdudetest) (fixed problem with unbreakable blocks)
- Teleporter (minerdudetest) (externalized timeout setting)
- Trashcan (minerdudetest) (improved code, fixed minor mistakes)
Last edited by minerdudetest on Sat Apr 11, 2020 03:41, edited 12 times in total.

User avatar
texmex
Member
Posts: 1753
Joined: Mon Jul 11, 2016 21:08
GitHub: tacotexmex
In-game: tacotexmex

Re: [Mods] MineClone2-enabled mods

by texmex » Post

Compatible: Orbs of Time.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Trash Can (MCL2)

Link to original thread, not compatible until my changes merged.

Image

Original description (open original link for details): "This mod adds a trash can to the game. Right click it, put in your trash, and click the empty trash button. You can also throw things in the wooden trash can by pressing "q" or throwing them out of your inventory."

Modifications:
- made compatible with MCL2 through switcher: recipes, sound calls
- made UI imitate MCL2 when executed under MCL2

download the mod here
I've pushed my changes to master, until the commit hits you can use my fork.

Installation: save zip, paste to "mods" folder, change folder name to "trash_can", run Minetest game and enable this mod from menu. Tested under 4.17.1
Last edited by minerdudetest on Wed Oct 10, 2018 18:20, edited 5 times in total.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

texmex wrote:Compatible: Orbs of Time.
I posted on github issue tracker, found a recipe issue in init.lua. Thanks for your work!

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Teleport Improved (MCL2)

Based upon "Teleport Improved" by r4nd0m6uy.
Update: my pull requests were upstreamed, so upstream is compatible to MCL2! Get your files from upstream! ^^^

Image

Description:
This mod allows to create teleportation pads.
Travel is limited only between existing and linked pads.
Creation resource costs are pretty expensive and require actual presence on the spot.
Coordinates are not required, you can choose the pad location from the list.
It actually works.

Changelog:
Based upon "Teleporters improved", plus:
- made compatible with MCL, keeping compatibility to Minetest Game
- balanced the resource cost against rail cost, Mese Crystal -> Mese Block
- created new texture from scratch and replaced it
- created pictogram and added it (removed pictogram, minetest autogenerates better thumbnail)
- added "pos" checks to prevent run-time errors
- teleport sound fixed
- when run via MCL2 - UI is white and all infoboxes are hidden; vice versa when run via MTG

License: LGPL 2.1

Installation: save zip, paste to "mods" folder, change folder name to "teleporter", run Minetest game and enable this mod from menu.
Tested under 4.17.1+0.42 MCL
Last edited by minerdudetest on Mon Oct 15, 2018 21:12, edited 4 times in total.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Pontoons (MCL2)

Compatibility for Pontoons mod, source (not compatible with MCL2 until my pull requests accepted).

Image

Pontoons allow to start building on water surface, useful for creating boats or buildings above water.

Changes:
- MCL2 compatibility
- Airtank mod compatibility by switching the recipe slightly on mod autodetection

Download

I've pushed my changes to master, until the commit hits you can use my fork.

Installation: download archive, extract into "Mods" directory, make sure the directory name is "pontoons", play.

License: MIT
Last edited by minerdudetest on Wed Oct 10, 2018 18:07, edited 2 times in total.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Beware the Dark

The original thread. Compatible with MCL2 from ground up, however my version includes few small improvements.

Image

Being in the dark for too long can have effect on your health, think "Don't Starve".
You can actually configure the reverse and create a vampire-like game.

Changes:
- mod is compatible with MCL2, but:
- I have found unused ability to display a closed eye symbol for depleted "fear indicator" and added it
- I have added ability to autohide the sanity bar if its full (same as bubbles for underwater breathing in MCL2),

Commits have been pushed, but until it is accepted, you can use my releases.
Last edited by minerdudetest on Wed Oct 10, 2018 18:21, edited 3 times in total.

User avatar
DrFrankenstone
Member
Posts: 231
Joined: Tue May 24, 2016 05:36
GitHub: treer
Location: Australia
Contact:

Re: [Mods] MineClone2-enabled mods

by DrFrankenstone » Post

Already compatible: Hallelujah Mountains, though it requires Minetest 5.

(I run it with MineClone2 in Minetest 5, and some of its best screenshots have come from MineClone2, but I don't know whether Minetest 5 is supported by MC2 officially yet)

LGPL 2.1+
----

And while not a mod, Amidst also comes with MineClone2 biome support built in.
Last edited by DrFrankenstone on Thu Oct 11, 2018 00:31, edited 1 time in total.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

DrFrankenstone wrote: ...
Hello, very nice! I see that you are a dev, so I will just add it to the list. Projects look great! :)

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Thirsty - IMPROVED

The original thread (not compatible with MCL2 until my pull requests accepted).

Running inside Mineclone 2:
Image
Image

When same mod runs under Minetest Game instead:
Image
Image

Mod adds mechanic for hydration and need to drink as well as several ways to do it.
Download.

Changes:
- add drinking sound with free license
- add Mineclone2 compatibility
- rename the "extender" / "fountain" captions as "Water pipe" and "Water pump"
- modify textures and add: two types of straight pipes, one cross pipe
- reduce price to building Water pipes and pump
- add custom textures for above when running Mineclone 2
- add custom texture to water fountain when running Mineclone 2
- add item and add ability to collect some water into bowl, if in water and not thirsty. Contents will be drunk at once and empty bowl returned
- Mineclone2 uses own native version of bowl instead and its also possible to collect water with it (as well as help drink)
- include two water bottles from Mineclone2 to at-once list (river and usual bottles)

My version is compatible with MCL2 until the changes from pull request and merged.

I have not assigned different version in order for changes to be actually mainlined.
Last edited by minerdudetest on Sun Oct 14, 2018 22:49, edited 6 times in total.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Some upcoming changes to Thirsty, fixes for Teleport, minor edits to Pontoons, Trash Can incoming today. I will update original posts.

Edit: Massive update on "Thirsty", please redownload. Its compatible with all previous.

Edit2: Current errata:
- a problem, where bowls cant be filled/refilled, if hydration value is at maximum. Once there is thirst, bowls work as usual.
- inconsistency, where drinking from bowl and refilling it is done by one click.
- inconsistency, where bowls are trunk using LMB, but bottles using RMB.
this will be addressed soon
Last edited by minerdudetest on Mon Oct 15, 2018 08:09, edited 2 times in total.

User avatar
Wuzzy
Member
Posts: 4786
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: [Mods] MineClone2-enabled mods

by Wuzzy » Post

Nice. :-)

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Wuzzy wrote:Nice. :-)
Thank you very much! I am not yet expanding MCL2 with Minecraft functionality, but I have already "mobs_mc" changes incoming, that allows to flexibly control their amount. I guess this will be very useful for servers if admins want to control exact amount of each mob, as well as for debug.

Code will be pushed soon.

The "Thristy" was much better than I expected. I spent two days on it and I hope my contributions will be of joy for some people.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Still working on minor issue with Thirsty.
Teleport Improved accepted all changes, linking to it instead now. Also author of teleport wished to transfer it to me, where I will transfer it into "minetest-mods" in turn, thus the mod is preserved in global catalog. No changes planned to the mod from my side.

User avatar
Wuzzy
Member
Posts: 4786
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: [Mods] MineClone2-enabled mods

by Wuzzy » Post

((…) I don't know whether Minetest 5 is supported by MC2 officially yet)
Minetest 5.0.0 does not exist (yet), thus making it bleeding edge. Please say “5.0.0-dev” to refer to the unfinished version.
My official MineClone 2 policy regarding bleeding edge is: I do not support it. I will only aim to support latest stable, which is 0.4.17.1 at the moment. I believe MCL2 still kinda works in 5.0.0-dev, but please don't cry when bad things happen.

Thirsty
I hope you did consider river water in your experiments. All water nodes are in the “water” group, just like in basically any other game.
Also note that MCL2 comes with a water bottle and river water bottle included. They are not doing much in stock MCL2, but you probably want to override them. MCL2 has its own drinking sound, make sure to use that one.
There is also a cauldron which you can fill with water / river water.
All this should be taken into account when making thirsty for MCL2. I have not tried your mod yet, but I strongly suggest to release the finished MCL2-adaption should released separately under a new name because I think there will be quite a few changes required. It would probably be easier to just fork anyway, esp. when it comes to balancing.

I also recommend you try to understand the hunger mechanic of MCL2 (see in-game help), you might want to take this into consideration as well.

If you need any API changes in MCL2 so you can implement your stuff, please suggest it.

Also, finally, the icon for thirst should match MCL2-style and have a size of 8×8 pixels. To figure out how all those items work in MCL2, just use the in-game help.

If you have more problems, feel free to join in IRC. I am often hanging around in #mineclone2 in irc.freenode.net.

User avatar
Wuzzy
Member
Posts: 4786
Joined: Mon Sep 24, 2012 15:01
GitHub: Wuzzy2
IRC: Wuzzy
In-game: Wuzzy
Contact:

Re: [Mods] MineClone2-enabled mods

by Wuzzy » Post

My general notes and recommendations about MCL2 mods:
  • Remember that MCL2 is very different from MTG architecture-wise, so don't make to many assumptions
  • Remember the groups in MCL2 are different, too
  • You can try to be compatible with both MCL2 and MTG at the same time, but you don't have to. Keep in mind that both games are different, so expect to add lots of boilerplate code. Sometimes it might be easier to for an MTG mod for MCL2, esp. when many gameplay tweaks are required. Use good judgement
  • Add help support for all your items and gameplay mechanics. MCL2 is using the Help modpack:
    viewtopic.php?t=15912. Besides, it is generally a good idea to write documentation for all your items. The help modpack is only as useful as how many mods support it. :)
  • Read README.md, API.md, GROUPS.md and CONTRIBUTING.md
  • Play MCL2 and read the in-game help and make sure you understand all the mechanics well. Take your knowledge into consideration of the gameplay design
  • Keep writing style consistent
  • As I said before, ask me in IRC if you have questions
  • If your mod re-implements a Minecraft feature very well, please contact me so I can include it in MCL2

User avatar
Hamlet
Member
Posts: 766
Joined: Sat Jul 29, 2017 21:09
IRC: H4mlet
In-game: Hamlet
Location: Lombardy, Italy

Re: [Mods] MineClone2-enabled mods

by Hamlet » Post

Thirsty - IMPROVED

Minor issue *[1] *[2]:
WARNING[Server]: WARNING: minetest.setting_* functions are deprecated. Use methods on the minetest.settings object. (at ...minetesti/bin/../mods/thirsty/functions.lua:224)
Issue fix:

replace ../thirsty/functions.lua at line 224

Code: Select all

minetest.setting_getbool
with

Code: Select all

minetest.settings:get_bool
*[1] seen on:
Minetest v0.4.17.1
Minetest Game v0.4.17.1
Thirsty v0.10.2 (bendeutsch's OR minertestdude's versions)

*[2] raised every second by the Thirsty's main loop, thus cluttering the console window and most likely the debug.txt log.
My repositories: Codeberg.org | My ContentDB's page

User avatar
Cross_over
Member
Posts: 11
Joined: Fri Nov 10, 2017 18:28
In-game: Cross_over

Re: [Mods] MineClone2-enabled mods

by Cross_over » Post

Anyone willing to port "Laptop Mod"?
viewtopic.php?t=17910
It would be a great addition.

Midnight Sapphire
Member
Posts: 16
Joined: Sun Jun 30, 2019 23:06

Re: [Mods] MineClone2-enabled mods

by Midnight Sapphire » Post

Anyone willing to port scaffolding viewtopic.php?t=11290

universales
Member
Posts: 12
Joined: Tue Feb 04, 2020 14:55
GitHub: wuniversales

Re: [Mods] MineClone2-enabled mods

by universales » Post

More mods supported in this part of the forum in Spanish, I update often.

viewtopic.php?f=22&t=24156&p=366677#p366677

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

I am back, having actually learned a bit of lua. :) I will update the head post as well as push more interesting mods soon.
universales wrote:...
I noticed that you have attempted to restore or improve mcl2 compatibilities on github (big respect), however your post here made me think you want to hijack the thread by linking to list with few random mods. This is thread for everyone to add and update, if I don't post - doesn't mean opening new thread for. Feel free to update this thread on your progress and Spanish one too, which you maintain.
Midnight Sapphire wrote:...
Yes, will do.
Cross_over wrote:...
While I agree, I have currently hands full. Maybe in the future or be my guest. :)
Hamlet wrote:...
Thanks a bunch for this! Unfortunately "Thirsty" currently has inconsistency with drinking:
- drinking and filling is done with both right and left mousebuttons
- when refilling, mod does incorrect substitution of items, resulting in whole stack being replaced with one item

I am going to patch this (or welcome everyone to contribute) to this logic:
- drinking of water-filled vessels should be done with right_mouse_button,
- re-filling the empty acceptable vessels should be done with left_mouse_button,
- drinking by hand directly should be completely disabled, because it produces inconsistency and player can stand in water to drink.

Currently I do not recommend to use this mod. Although the problems are minor, the quality does matter.

minerdudetest
Member
Posts: 38
Joined: Mon Jul 02, 2018 17:16

Re: [Mods] MineClone2-enabled mods

by minerdudetest » Post

Midnight Sapphire wrote:Anyone willing to port scaffolding viewtopic.php?t=11290
https://github.com/minertestdude/scaffolding

User avatar
mexilord
Member
Posts: 13
Joined: Fri Feb 28, 2020 02:32
GitHub: mexilord

Re: [Mods] MineClone2-enabled mods

by mexilord » Post

minerdudetest wrote:
Midnight Sapphire wrote:Anyone willing to port scaffolding viewtopic.php?t=11290
https://github.com/minertestdude/scaffolding
im curious what did you had to do to port it?
cdb_YJkLZEouLRDk86OvedeN6HxQGBZDb95j

universales
Member
Posts: 12
Joined: Tue Feb 04, 2020 14:55
GitHub: wuniversales

Re: [Mods] MineClone2-enabled mods

by universales » Post

minerdudetest wrote:...
Mainly I support the Spanish language of the mods (Although I also provide compatibility with mineclone whenever I can), also, you can copy my mods, or modify them to your liking, for me there is no problem.
As the majority of users of users who are here we only try to help in some way or another to improve minetest, in this case mineclone 2.
I'm going to put a link in my thread in Spanish, to this thread in English, so that you can also see the contribution of the English forum.
Thanks greetings

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests