Minecraft discussion

A forum for topics that don't fit elsewhere. Introduce yourselves to other members of the forums, discuss how your name evolves when written out in the Game of Life, or just tell us how you found it. Forum rules still apply.
User avatar
NNlk05
Posts: 751
Joined: January 14th, 2026, 8:42 pm
Location: Exploring in the Jungle of the INT Rulespace
Contact:

Re: Minecraft discussion

Post by NNlk05 »

hotcrystal0 wrote: July 7th, 2025, 6:08 pm I know it has been two years since the last post, but this post is worth it.

I thought of an interesting idea for a custom Catagolue symmetry involving Minecraft:
1. Take a seed and isolate a radius of chunks around spawn
2. Treat slime chunks as ON cells and non-slime chunks as OFF cells
3. Upload the “soup” to Catagolue

Can someone actually make this?
Here, we talked about this in our DM's.
slimechunk.h

Code: Select all

#pragma once
#include <stdint.h>
#include <stdbool.h>

bool is_slime_chunk(int64_t world_seed, int x_chunk, int z_chunk);
slimechunk.c

Code: Select all

#include <stdint.h>
#include <stdbool.h>

bool is_slime_chunk(int64_t world_seed, int x_chunk, int z_chunk) {
    uint64_t slime_seed = world_seed + 
                         ((uint64_t)x_chunk * x_chunk * 0x4C1906) + 
                         ((uint64_t)x_chunk * 0x5AC0DB) + 
                         ((uint64_t)z_chunk * z_chunk * 0x4307A7) + 
                         ((uint64_t)z_chunk * 0x5F24F);

    uint64_t internal_state = (slime_seed ^ 0x5E434E432ULL) & 0xFFFFFFFFFFFFULL;
    
    uint64_t advanced_state = (internal_state * 0x5DEECE66DULL + 0xBULL) & 0xFFFFFFFFFFFFULL;

    return ((advanced_state >> 17) % 10) == 0;
}
slimechunk_stdin.c

Code: Select all

#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <stdbool.h>
#include <string.h>
#include <unistd.h>
#include <getopt.h>
#include "slimechunks.h"

void print_rle(int64_t seed, int width, int height, int start_x, int start_z) {
    printf("# Seed: %ld\n", seed);
    printf("x = %d, y = %d, rule = B3/S23\n", width, height);

    char *rle_buffer = malloc(width * 2 + 2);
    if (!rle_buffer) return;

    int total_chars = 0;

    for (int z = 0; z < height; z++) {
        int rle_ptr = 0;
        int x = 0;
        while (x < width) {
            bool is_slime = is_slime_chunk(seed, start_x + x, start_z + z);
            char type = is_slime ? 'o' : 'b';
            int count = 0;
            
            while (x < width && is_slime_chunk(seed, start_x + x, start_z + z) == is_slime) {
                count++;
                x++;
            }

            if (count > 1) {
                rle_ptr += sprintf(&rle_buffer[rle_ptr], "%d%c", count, type);
            } else {
                rle_ptr += sprintf(&rle_buffer[rle_ptr], "%c", type);
            }
        }

        rle_buffer[rle_ptr++] = (z == height - 1) ? '!' : '$';
        rle_buffer[rle_ptr] = '\0';

        for (int i = 0; i < rle_ptr; i++) {
            putchar(rle_buffer[i]);
            if (++total_chars >= 70) {
                putchar('\n');
                total_chars = 0;
            }
        }
    }
    
    if (total_chars > 0) putchar('\n');
    putchar('\n');

    free(rle_buffer);
}

int main(int argc, char *argv[]) {
    int64_t start_seed = 0;
    int64_t end_seed = -1;
    int width = 10;
    int height = 10;
    int start_x = 0;
    int start_z = 0;

    int opt;
    static struct option long_options[] = {
        {"seed", required_argument, 0, 's'},
        {"end-seed", required_argument, 0, 'e'},
        {"width", required_argument, 0, 'w'},
        {"height", required_argument, 0, 'H'},
        {"corner", required_argument, 0, 'c'},
        {0, 0, 0, 0}
    };

    while ((opt = getopt_long(argc, argv, "s:e:w:H:c:", long_options, NULL)) != -1) {
        switch (opt) {
            case 's': start_seed = atoll(optarg); break;
            case 'e': end_seed = atoll(optarg); break;
            case 'w': width = atoi(optarg); break;
            case 'H': height = atoi(optarg); break;
            case 'c':
                start_x = atoi(optarg);
                if (optind < argc && argv[optind][0] != '-') {
                    start_z = atoi(argv[optind++]);
                }
                break;
        }
    }

    if (end_seed < start_seed) end_seed = start_seed;

    for (int64_t s = start_seed; s <= end_seed; s++) {
        print_rle(s, width, height, start_x, start_z);
    }

    return 0;
}
To build:

Code: Select all

$ gcc -Wall -Wextra -march=native -O3 -o slimechunks_stdin slimechunks_stdin.c slimechunks.c
Options

Code: Select all

options:
  -h, --help            show this help message and exit
  -s SEED, --seed SEED  Starting world seed (default: 0)
  -e END_SEED, --end-seed END_SEED
                        End world seed for range processing
  -w WIDTH, -x WIDTH, --width WIDTH
                        Width in chunks
  -H HEIGHT, -z HEIGHT, --height HEIGHT
                        Height in chunks
  -c CORNER CORNER, --corner CORNER CORNER
                        Top-left chunk coordinates (x z)
Run with

Code: Select all

./slimechunks_stdin -s start -e end -w 64 -H 64 | apgsearch_exec_with_symmetry_slimechunks_stdin
It gets around 700sps on my computer
I searched up to 1000000.
Feci quod potui, faciant meliora potentes.

Code: Select all

x = 10, y = 3, rule = B34twz/S23
b2o4b2o$obo4bobo$2bo4bo!
[[ AUTOSTART AUTOHIDEGUI TRACK 0 -47/270 ZOOM 4 GPS 45 STEP 3 THEME BOOK ]]
https://nnlk05.github.io

=3
User avatar
I6_I6
Posts: 1077
Joined: July 26th, 2025, 8:44 pm
Location: Here, there, somewhere, anywhere, everywhere.
Contact:

Re: Minecraft discussion

Post by I6_I6 »

Rule 110 emulators are often used to prove different CA Turing-complete, so (for fun I guess?) I decided to build one in Minecraft using redstone. I've seen some before, but they're all really old. This one is more up to date (and looks nicer).
Here's what it looks like:
mc_w110.png
mc_w110.png (4.72 MiB) Viewed 1026 times
World download:
W110-simulator.zip
How is this file smaller than the image??
(2.28 MiB) Downloaded 25 times
Java edition, version 26.1, should work in any version with copper bulbs.
Press the button to advance a generation and use the lever to run 1 gen/s. (It can go faster than that, but that requires a bit more wiring and I'm lazy.) Click on the note blocks to toggle the cell states.
EDIT: Never mind, after looking at it again, thanks to some last-minute changes I made, you can simply adjust the repeater in the clock to make it run as fast as 0.3s/gen. Because redstone signals aren't instantaneous, every 4 cells will be delayed 1 extra tick the further you go from the clock.

This probably isn't very impressive to all the redstone pros out there, but it's basically my first ever redstone project and I'm pretty proud of it. :D

I was inspired by these two videos:
https://www.youtube.com/watch?v=D8FMiFswZN8
https://www.youtube.com/watch?v=tPr5b_06GF4
But I built the redstone myself.

Code: Select all

#C [[ THEME Golly ]]
x = 27, y = 15, rule = LifeHistory
8.A$A6.A.A$3A4.BA2B.B2D$3.A4.2B.2B2DB$2.2A2.3B.6B2.3B$2.20B$4.19B$4.2B
C10BD4B$4.2B2C10BD4B$4.B2C11B2D3B$4.13B2D4B$5.12BD3B.B2A$6.13B3.BA.A$
6.3B.B3.B10.A$25.2A!
RuleEdit: A .rule file editing tool
User avatar
PC101
Posts: 185
Joined: May 9th, 2019, 11:32 pm
Location: :uoᴉʇɐɔo˥

Re: Minecraft discussion

Post by PC101 »

I did it
I finally finished the Cuboid Outpost modpack. I completed every single quest today.
https://www.curseforge.com/minecraft/modpacks/cuboid-outpost
I started my survival world in this modpack on January 12, 2026 and it's 100% complete now.
Puffer Suppressor
Would we be able to know when we know everything there is to know?
How would we know what we don’t know that we don’t know?

The (34,7)c/156 caterpillar is finished!!! You can download it here.
User avatar
NNlk05
Posts: 751
Joined: January 14th, 2026, 8:42 pm
Location: Exploring in the Jungle of the INT Rulespace
Contact:

Re: Minecraft discussion

Post by NNlk05 »

I6_I6 wrote: April 12th, 2026, 2:35 pm *snip*
You tried 0-tick repeaters? That could speed this up.
INT unit cell next?
Feci quod potui, faciant meliora potentes.

Code: Select all

x = 10, y = 3, rule = B34twz/S23
b2o4b2o$obo4bobo$2bo4bo!
[[ AUTOSTART AUTOHIDEGUI TRACK 0 -47/270 ZOOM 4 GPS 45 STEP 3 THEME BOOK ]]
https://nnlk05.github.io

=3
User avatar
I6_I6
Posts: 1077
Joined: July 26th, 2025, 8:44 pm
Location: Here, there, somewhere, anywhere, everywhere.
Contact:

Re: Minecraft discussion

Post by I6_I6 »

NNlk05 wrote: July 5th, 2026, 8:16 pm
I6_I6 wrote: April 12th, 2026, 2:35 pm *snip*
You tried 0-tick repeaters? That could speed this up.
[...]
That's a thing?? I didn't even know that!
Btw, I made a reduced version of that unit cell where the circuitry all fits under the black wool, but I haven't posted it yet.

Code: Select all

#C [[ THEME Golly ]]
x = 27, y = 15, rule = LifeHistory
8.A$A6.A.A$3A4.BA2B.B2D$3.A4.2B.2B2DB$2.2A2.3B.6B2.3B$2.20B$4.19B$4.2B
C10BD4B$4.2B2C10BD4B$4.B2C11B2D3B$4.13B2D4B$5.12BD3B.B2A$6.13B3.BA.A$
6.3B.B3.B10.A$25.2A!
RuleEdit: A .rule file editing tool
User avatar
NNlk05
Posts: 751
Joined: January 14th, 2026, 8:42 pm
Location: Exploring in the Jungle of the INT Rulespace
Contact:

Re: Minecraft discussion

Post by NNlk05 »

I6_I6 wrote: July 6th, 2026, 1:53 am That's a thing?? I didn't even know that!
https://minecraft.wiki/w/Tutorial:Instant_repeaters
Anyone else is a Minecraft seedfinder here?

I may also try to make a mod of the CGoL flower.
Feci quod potui, faciant meliora potentes.

Code: Select all

x = 10, y = 3, rule = B34twz/S23
b2o4b2o$obo4bobo$2bo4bo!
[[ AUTOSTART AUTOHIDEGUI TRACK 0 -47/270 ZOOM 4 GPS 45 STEP 3 THEME BOOK ]]
https://nnlk05.github.io

=3
User avatar
I6_I6
Posts: 1077
Joined: July 26th, 2025, 8:44 pm
Location: Here, there, somewhere, anywhere, everywhere.
Contact:

Re: Minecraft discussion

Post by I6_I6 »

NNlk05 wrote: July 6th, 2026, 1:58 am
I6_I6 wrote: July 6th, 2026, 1:53 am That's a thing?? I didn't even know that!
https://minecraft.wiki/w/Tutorial:Instant_repeaters
Anyone else is a Minecraft seedfinder here?

I may also try to make a mod of the CGoL flower.
Improved version:
W110.zip
(3.48 MiB) Downloaded 1 time
It's instant now, but I used Kahyxen's rail-based instant wire instead of the instant repeater. The redstone still fits completely underneath the top layer. I also added a lever for optional wrapping at the edges, which uses more instant wires. The emulator is slower now tho, since I didn't want to take any risks with the wrapping mechanism and the instant wires are very finicky to work with. I haven't tested just how fast it can go.

Code: Select all

#C [[ THEME Golly ]]
x = 27, y = 15, rule = LifeHistory
8.A$A6.A.A$3A4.BA2B.B2D$3.A4.2B.2B2DB$2.2A2.3B.6B2.3B$2.20B$4.19B$4.2B
C10BD4B$4.2B2C10BD4B$4.B2C11B2D3B$4.13B2D4B$5.12BD3B.B2A$6.13B3.BA.A$
6.3B.B3.B10.A$25.2A!
RuleEdit: A .rule file editing tool
User avatar
NNlk05
Posts: 751
Joined: January 14th, 2026, 8:42 pm
Location: Exploring in the Jungle of the INT Rulespace
Contact:

Re: Minecraft discussion

Post by NNlk05 »

hotdogPi wrote: March 18th, 2021, 8:58 am What things exist in both Life and Minecraft
You forgot silverfish.
Feci quod potui, faciant meliora potentes.

Code: Select all

x = 10, y = 3, rule = B34twz/S23
b2o4b2o$obo4bobo$2bo4bo!
[[ AUTOSTART AUTOHIDEGUI TRACK 0 -47/270 ZOOM 4 GPS 45 STEP 3 THEME BOOK ]]
https://nnlk05.github.io

=3
Timelord Missionary
Posts: 274
Joined: May 8th, 2022, 8:20 pm

Re: Minecraft discussion

Post by Timelord Missionary »

hotdogPi wrote: March 18th, 2021, 8:58 am What things exist in both Life and Minecraft?
  • Block
  • Boat
  • Beacon
  • Pond
  • Cap (in Minecraft, it's what the leather head armor is called, while other materials are helmets)
  • Loaf (just called bread in Minecraft, although the picture is clearly a loaf of bread
  • Beehive (as of a recent Minecraft update), and if you create one, a honey farm
  • Logic gates
  • Turing machine (limited by size in Minecraft)
  • Tick (more of a concept than a thing)
  • Clock
  • Spider
  • Swine (called pigs in Minecraft, but they're synonyms)
  • Cow
  • Rabbits/bunnies
  • Fox
  • Sometimes the XWSSes are called fish
  • Heart
  • Explosion (in OCA)
Don’t forget about the vex!
Also, in accordance with Minecraft, 204p41 could be called an evoker.
Helloshe, I like pentadecathlons and small-period motifs.
I may not be very skilled in search programs, but I have many ideas.
Soli Deo Gloria!
User avatar
hotcrystal0
Posts: 4652
Joined: July 3rd, 2020, 5:32 pm
Location: wherever you think I am

Re: Minecraft discussion

Post by hotcrystal0 »

Timelord Missionary wrote: August 10th, 2026, 11:16 am Also, in accordance with Minecraft, 204p41 could be called an evoker.
Actually, I'm pretty sure "evoker" was the name given to the stabilization of vex.
104 days until New York's age verification law goes into effect.

Code: Select all

x = 192, y = 53, rule = B3/S23
33$42b4o$41b6o$40b2ob4o$41b2o3$41b2o$39bo6bo$38bo8bo$38bo8bo$38b9o3$42b
4o$41b6o$40b2ob4o$41b2o!
Timelord Missionary
Posts: 274
Joined: May 8th, 2022, 8:20 pm

Re: Minecraft discussion

Post by Timelord Missionary »

hotcrystal0 wrote: August 10th, 2026, 1:17 pm
Timelord Missionary wrote: August 10th, 2026, 11:16 am Also, in accordance with Minecraft, 204p41 could be called an evoker.
Actually, I'm pretty sure "evoker" was the name given to the stabilization of vex.
Yes, that’s correct. I was mistaken in that I thought just the ends of the vex wick would be called evokers, not the entire thing. Thanks for correcting me!
Helloshe, I like pentadecathlons and small-period motifs.
I may not be very skilled in search programs, but I have many ideas.
Soli Deo Gloria!
Post Reply