Data Packs Game Mechanic

Deepslate generator

  • 4.4k views 0 today
  • save_alt 181 downloads
Compatibility
Minecraft 1.18
Changes include
  • Functions
  • 5
  • 4
  • 6
Elshyr
Lvl 24Expert Miner
0
This Datapack makes stone slowly turn into deepslate when placed under a gold block in a vanilla-like way.
Let's say it is thanks to the pressure applied by the heaviest block in the game.
This can be used in a vanilla skyblock for example because it makes a deepslate generator possible by editing a stone generator.

You can edit the speed of change by changing the "schedule function deepslate_gen:tick 300t" in deepslate_gen/functions/tick.mcfunction file

You can also edit the range (that is currently fixed at 32 blocks around players) by deleting the deepslate_gen/functions/scan.mcfunctions et the files inside the deepslate_gen/functions/layers folder, then running the python script in readme with a different value for d (currently d=32)

More like this

  Have something to say?

User3954675G
01/10/2022 6:19 pm
Level 1 : New Miner
I have noticed this datapack adds a lot of lag for servers. if there is anyway you could figure out how to fix this that would be amazing. from an uneducated guess i would say its probably because its constently checking for updates. or something like that. I guess that could be fix by changning the range but when there are multiple people on the world it seems that its very very laggy
1
Elshyr
01/11/2022 5:17 am
Level 24 : Expert Miner
Indeed the more there is people on the server, the laggier it gets. The way the datapack works is that it will periodically check around each player (currently a square 64x64). And for each stone that is bellow a gold block, I place an custom entity, then I replace the bloc where the entity is, and finally I delete the entity.

One way to reduce the lag is indeed to reduce the range, or to lower people online.


One other way would be to build the datapack differently, and put for example an itemframe on the gold block with a deepslate block inside. Then instead of checking all around player for stone block bellow gold block, you would look for deepslate entity inside item frame, that is put on a gold block and with a stone block bellow. So you have way less things to check (instead of the 65x65 cube = 4225 blocks), inducing less functions calls so less lags. The problem with that is that it feels less vanilla.

I am currently working on a plugin that will include this deeplsate generator mechanics among other things. Plugins are less laggy than datapacks usually because you have to constantly run functions in datapacks to make things works.
1
User3954675G
01/10/2022 10:24 am
Level 1 : New Miner
Hi i would like to ask if there is a way to change it from stone to cobblestone within the files?
1
Elshyr
01/11/2022 5:02 am
Level 24 : Expert Miner
One way to do it is to replace minecraft:stone to minecraft:cobblestone in the python script that is written inside the readme.txt. Then execute this python script, it will generate all the functions with a condition on cobblestone instead of stone
1
vibrantspoon
01/07/2022 2:10 pm
Level 45 : Master Modder
Nice work! I have a similar datapack myself. It relies on the weight of falling anvils to convert blocks though
1
Elshyr
01/07/2022 5:56 pm
Level 24 : Expert Miner
history
Thank you! I saw your pack it is a really nice idea to get gravel sand and lots of other blocks , I like it a lot!
1

Welcome