Mathilde411 / bperipherals

https://www.curseforge.com/minecraft/mc-mods/bperipherals
Other
7 stars 5 forks source link

World Scanner #2

Open botboy0 opened 3 years ago

botboy0 commented 3 years ago

A worlscanner is a peripheral that would be able to detect the blocks around it in a given radius. It would take coordinates of either a single block , a radius or a 3 dimensional area given as 2 sets of xyz coordinates. it will go through the blocks and return a table or a single entry for the blocks it found in its environment. Maybe also include blockstates or NBT Data. It could additionally take in Forge Energy to increase its search radius

Mathilde411 commented 3 years ago

Hello ! I did not have much time to look at this during the week.

It could additionally take in Forge Energy to increase its search radius

I probably will not do that. I want the mod to be independant to mods other than ComputerCraft. If there is an option to change the range of this, it has to be avaliable to every player on the mod.

ahm23 commented 3 years ago

I am extremely looking forward to a peripheral that can do this from some mod (scanning a block at a certain coordinate). Hope its not too challenging or time consuming 👍

Mathilde411 commented 2 years ago

Hey, for those who are looking at here, I'm looking for ways to make this peripheral not broken.

YeahBoi321 commented 2 years ago

If you still haven't found a way to make it not broken, then maybe A) Make it only scan a single block, using relative coords ex; 15 blocks on x from the actual block itself instead of at x 15, this would allow it to more easily B) Have a set range, maybe 16 blocks away or something, and 2 things to keep it from being way too overpowered would be C) Make it have a cooldown the depends on the range, ex; after using it sleeps for (x+y+z)/15 rounded, which would make sure that the scanner could not just scan an entire area instantly, and D) it could be expensive, like maybe a few eyes of ender, diamonds, and netherite in the recipe, to ensure that it couldn't be made too early game.

The delay numbers could obviously changed depending on how expensive it is, but there could also be different functions the block could have, like only detecting if there is a block, which would have minimal to no delay, so that way time wouldn't be wasted testing for air, but you would have to code all that in. Another example function would be just determining block hardness, which would use slightly less than the normal search, maybe searching for nbt of a block could also have a longer delay than just getting the name, etc.

TL;DR: A) Make it only scan a single block, using relative coords B) Have a set range, maybe 16 blocks away C) After using it sleeps for ex; (x+y+z)/15 rounded D) Late game recipe Extra: getting different data yeilds different delays after use, testing for block ->minimal, hardness -> less, name -> normal, nbt -> highest