SensiCraft
- 20 Devlogs
- 27 Total hours
A Minecraft mod that adds sensors to the game! From simple entity detection to custom mob sensors, creepers wont dare enter your base.
A Minecraft mod that adds sensors to the game! From simple entity detection to custom mob sensors, creepers wont dare enter your base.
Today I worked on the Player Sensor and added three detection modes:
I also worked on the redstone output logic and started setting up automatic syncing between the GitHub README and the Modrinth project page.
As usual, I started with the block classes and block entity for the sensor, and the definitions, then will move on to the actual logic.
The basic setup was pretty simple, but this sensor will be my first one with a variable redstone output based on the distance of the detected block. Instead of just turning on or off, the redstone strength will change depending on how close the detected block is to the sensor.
Still have some more logic and testing to do, but the basic foundation is now in place.
The temperature sensor can now tell you what biome you’re in.
It now shows the temperature, threshold, status, and biome directly in the sensor GUI.
Small feature, but it makes the sensor feel a lot more complete.
Next up is more polishing and getting closer to finishing the temp sensor.
The sensor internally uses a value from 0–55, bc i couldnt set a negative number in the blockstate property, which gets mapped to the actual temperature range.
So basically:
0 is -15°C and 55 is 40°C
and everything in between gets mapped accordingly, and fahrenheit mode coming soon!
So for now, it will only check the biome temperature, but in future revisions, it will have a custom dynamic temperature sensing system based on its surroundings, and without forgetting the biome temp.
After a bunch of work on sensors, GUIs, textures, recipes, and redstone logic, SensiCraft is finally ready for its first alpha release!
So as usual, im starting with the screen and options, then moving on to the textures and functionality.
this.addRenderableWidget() :)mob and active are already block states and Minecraft handles saving them.Next up is probably cleaning up a few things and moving on to the next sensor.
None state for when no mob is selected.main and the screen is in client, I had to figure out how to pass the BlockEntity to the screen without mixing the two.This one was mostly about getting the Rain Sensor to work properly as an actual Minecraft block. I added its loot table so it drops itself when broken, and made a crafting recipe for it.
I also worked more on data generation, especially with the block tags. Minecraft 26.2 changed some of the datagen APIs, so getting everything set up took a bit of figuring out. Still learning how all of this works, but it’s starting to make more sense.
The Rain Sensor is now getting closer to being an actual useful block. Next I want to keep working on its redstone behavior and add more sensors.