Page 1 of 1

Some features that could make life easier to modder

PostPosted: Tue Nov 06, 2012 05:32
by trukoil
I have 2 ideas that could improve the creation of some mods.

Skinnable blocks: i used the paint roller thinking that it would have changed the color of the block, but it made a thin dye layer over the block. I don't know how blocks are textured (i guess an array with 6 items, each item is a texture of the block), but if they are like i guess, why don't extend the array to 12 items, the ones from 0 to 5 are the block's default textures, the ones from 6 to 11 are the skinned textures, so it would be easier to make an efficient and real paint mod.

Conductive blocks: how many times you used a wall mesecon or technic item seeing that the cable would stay in a sort of mess around it, instead of going upper the wall? Conductive blocks could help to hide some mess, with just a property per block, a variable called isConductive, with values like:
0: not conductive
1: mesecon conductive
2: technic low voltage conductive
3: technic medium voltage conductive

...and so on. With this property, wouldn't be difficult to make a mod with an item to make blocks conductive (like a special furnace, with the conductive item in the fuel slot and the original block in the input slot, giving a conductive block).

Feel free to add suggestions or critics.

Ps: i had another idea, but i forgot it XD

PostPosted: Tue Nov 06, 2012 11:49
by trukoil
Another little feature: a /clear command, it's so hard do see anything after a /mods D:

PostPosted: Tue Nov 06, 2012 14:45
by trukoil
Another one: map limits, so the game won't generate all the map but only the part defined on a conf file.

PostPosted: Tue Nov 06, 2012 19:43
by Dragonop
Another one: /reset map Resets the map and add all the new things added whit mods but it don't destroy anithing Example:Use it for reload a map and then the moreores whil appear whitout need of create a new map!

PostPosted: Wed Nov 07, 2012 05:35
by trukoil
Dragonop wrote:Another one: /reset map Resets the map and add all the new things added whit mods but it don't destroy anithing Example:Use it for reload a map and then the moreores whil appear whitout need of create a new map!


This could be done making a new map with the same seed, this should be give an identical map with new feature given by mods.

Btw, what about MySQL/PostgreSQL support for map on servers? On single player SQLite shoud be enough, but seeing other software that did the transition (see here) this should give a boost even in single play. The easy way should be taken from the link above, with a guide in the wiki for who wanna try, after it would be needed only a combobox in the new world creation dialog with the backend selection (SQLite, MySQL, PostgreSQL...).

I think Minetest v1.0 will be a great release :)

Edit: someone in the Amarok guide above claims that MySQL is slower that SQLite, but i saw an article for speeding MySQL 'cause the default version is slower. Let me search...

PostPosted: Wed Nov 07, 2012 05:56
by trukoil
Another idea, standard file format for mods/worlds/texture packs. In short, they should have only the needed files and a readme including a description, options and license, so the could be made in a Minetest package, with files like mod.minemod, world.mineworld and textpack.minetex. Minetest could recognize the extension from the file extension (i think to use a 7z compression for the package, it should reduce bandwidth needed for download from servers) and install it with just a double click.

And, based from that, the idea of cached mods to reduce bandwidth for servers and speed up loading. Cache could be encrypted with a key that only the server know, so no one could modify cache files to have advantages on modified mods. The use of an hash (like sha1/256) could be used to verify mod integrity/version, so the server would know when give or not the mod to the client.

PostPosted: Wed Nov 07, 2012 19:49
by Dragonop
This could be done making a new map with the same seed, this should be give an identical map with new feature given by mods.
Btw, what about MySQL/PostgreSQL support for map on servers? On single player SQLite shoud be enough, but seeing other software that did the transition (see here) this should give a boost even in single play. The easy way should be taken from the link above, with a guide in the wiki for who wanna try, after it would be needed only a combobox in the new world creation dialog with the backend selection (SQLite, MySQL, PostgreSQL...).
I think Minetest v1.0 will be a great release :)
Edit: someone in the Amarok guide above claims that MySQL is slower that SQLite, but i saw an article for speeding MySQL 'cause the default version is slower. Let me search...

No the seed give the inicial map but all the things what you has do are deleted

PostPosted: Mon Nov 26, 2012 19:59
by trukoil
An idea about the fly property: now it only deactivate collisions, think about a new fly mode that don't use collisions on water/air/lava but uses it on normal blocks, that could be useful to make sure that people can't enter in other properties but builders could build like a normal fly property.

PostPosted: Mon Nov 26, 2012 21:53
by Calinou
trukoil wrote:Another one: map limits, so the game won't generate all the map but only the part defined on a conf file.


Map is only generated where players travel.
It is easy to make a Lua mod to add unbreakable walls at some part of a map, see the Bedrock mod.

PostPosted: Mon Nov 26, 2012 22:14
by nomohakon
Map limit sounds good, fly for travel through air and noclip for travel through everything.

PostPosted: Tue Nov 27, 2012 01:25
by trukoil
Calinou wrote:Map is only generated where players travel.
It is easy to make a Lua mod to add unbreakable walls at some part of a map, see the Bedrock mod.


I think something like a limit where the user can't go over, and the game wouldn't generate more map. It could be useful for griefer prevention, because they couldn't go over that limit that could be shared with a "superprotector" block that deletes lava within its limits (all the map over the y=0 coordinate, e.g.)

nomohakon wrote:Map limit sounds good, fly for travel through air and noclip for travel through everything.


Well, the current fly behavior could become noclip.

PostPosted: Tue Nov 27, 2012 14:33
by madarexxx
IMHO best thing, which can help modders is api for player moving and physic changing.

PostPosted: Tue Nov 27, 2012 17:33
by trukoil
Hybrid Dog wrote:press F2


It only hides the chat but won't clear it.

PostPosted: Wed Dec 12, 2012 02:30
by trukoil
I see that the noclip/fly mode is already commited in git, thanks PilzAdam!