promotional bannermobile promotional banner

Lukas & Co

Wie Poppy Playtime Figuren aber nur anderes
Back to Files

Lukas_und_Co_Rainbow_Factory.mcpack

File nameLukas_und_Co_Rainbow_Factory.mcpack
Uploader
LukasHD9678LukasHD9678
Uploaded
Aug 9, 2026
Downloads
8
Size
6.0 KB
File ID
8610426
Type
B
Beta
Supported game versions
  • 26.40
  • 26.30
  • 26.20
  • 26.13
  • 26.12
  • 26.11
  • 26.10
  • 26.3
  • 26.0.02
  • 26.0
  • 1.21.132
  • 1.21.131
  • 1.21.130
  • 1.21.124
  • 1.21.123
  • 1.21.122
  • 1.21.121
  • 1.21.120
  • 1.21.114
  • 1.21.111
  • 1.21.101
  • 1.21.100
  • 1.21.94
  • 1.21.93
  • 1.21.92
  • 1.21.90
  • 1.21.82
  • 1.21.81
  • 1.21.80
  • 1.21.73
  • 1.21.72
  • 1.21.71
  • 1.21.70
  • 1.21.61
  • 1.21.60
  • 1.21.51
  • 1.21.50
  • 1.21.44
  • 1.21.43
  • 1.21.41
  • 1.21.40
  • 1.21.30
  • 1.21.21
  • 1.21.20
  • 1.21.2
  • 1.21
  • 1.20.80
  • 1.20.70
  • 1.20.60
  • 1.20.50
  • 1.20.40
  • 1.20.1
  • 1.20
  • 1.19.23
  • 1.19.20
  • 1.19.10
  • 1.19
  • 1.18.31
  • 1.18.30
  • 1.18.12
  • 1.18.10
  • 1.18.2
  • 1.18.1
  • 1.18
  • 1.17.2
  • 1.17.1
  • 1.17
  • 1.16.22
  • 1.16.21
  • 1.16.2
  • 1.16.1
  • 1.16
  • 1.15
  • 1.14.3
  • 1.14.2
  • 1.14.1
  • 1.14
  • 1.13
  • 1.12
  • 1.11
  • 1.10
  • 1.9
  • 1.8
  • 1.7
  • 1.6
  • 1.5
  • 1.4
  • 1.2.13
  • 1.2.10
  • 1.2.8
  • 1.2.6
  • 1.2.5
  • 1.2.3
  • 1.2
  • 1.1.13
  • 1.1
  • 1.0.6
  • 1.0.5
  • 1.0.4
  • 1.0.3
  • 1
  • 0.16.2
  • 0.16

What's new

import os

import json

import zipfile

import uuid

 

def create_mcaddon():

    bp_dir = "BP_Lukas_Co"

    rp_dir = "RP_Lukas_Co"

 

    os.makedirs(f"{bp_dir}/entities", exist_ok=True)

    os.makedirs(f"{rp_dir}/models/entity", exist_ok=True)

 

    # 1. Behavior Manifest

    with open(f"{bp_dir}/manifest.json", "w", encoding="utf-8") as f:

        json.dump({

            "format_version": 2,

            "header": {

                "description": "Lukas & Co Behavior Pack",

                "name": "Lukas & Co BP",

                "uuid": str(uuid.uuid4()),

                "version": [1, 0, 0],

                "min_engine_version": [1, 20, 0]

            },

            "modules": [{"type": "data", "uuid": str(uuid.uuid4()), "version": [1, 0, 0]}]

        }, f, indent=2)

 

    # 2. Resource Manifest

    with open(f"{rp_dir}/manifest.json", "w", encoding="utf-8") as f:

        json.dump({

            "format_version": 2,

            "header": {

                "description": "Lukas & Co Resource Pack",

                "name": "Lukas & Co RP",

                "uuid": str(uuid.uuid4()),

                "version": [1, 0, 0],

                "min_engine_version": [1, 20, 0]

            },

            "modules": [{"type": "resources", "uuid": str(uuid.uuid4()), "version": [1, 0, 0]}]

        }, f, indent=2)

 

    # 3. Alle 10 Mobs generieren

    mobs = [

        ("darko", "Darko", 300, 15, True),

        ("wolfi", "Wolfi", 180, 10, True),

        ("kitty_cat", "Kitty Cat", 160, 8, True),

        ("frocky", "Frocky", 90, 4, False),

        ("dogi", "Dogi", 110, 6, False),

        ("hopy", "Hopy", 80, 3, False),

        ("fledy", "Fledy", 140, 9, True),

        ("blumi", "Blumi", 220, 12, True),

        ("timo", "Timo", 130, 5, False),

        ("barry", "Barry Prototype", 350, 18, True)

    ]

 

    for mob_id, mob_name, hp, dmg, is_boss in mobs:

        # Entity JSON (BP)

        ent = {

            "format_version": "1.16.0",

            "minecraft:entity": {

                "description": {"identifier": f"lukas:{mob_id}", "is_spawnable": True, "is_summonable": True},

                "components": {

                    "minecraft:health": {"value": hp, "max": hp},

                    "minecraft:movement": {"value": 0.3},

                    "minecraft:attack": {"damage": dmg},

                    "minecraft:physics": {},

                    "minecraft:pushable": {"is_pushable": True}

                }

            }

        }

        if is_boss:

            ent["minecraft:entity"]["components"]["minecraft:boss"] = {"name": mob_name, "hud_range": 20}

            ent["minecraft:entity"]["components"]["minecraft:behavior.melee_attack"] = {"priority": 2}

            ent["minecraft:entity"]["components"]["minecraft:behavior.nearest_attackable_target"] = {

                "priority": 1,

                "entity_types": [{"filters": {"test": "is_family", "subject": "other", "value": "player"}, "max_dist": 16}]

            }

        else:

            ent["minecraft:entity"]["components"]["minecraft:behavior.random_stroll"] = {"priority": 5}

 

        with open(f"{bp_dir}/entities/{mob_id}.json", "w", encoding="utf-8") as f:

            json.dump(ent, f, indent=2)

 

        # Geo Model JSON (RP)

        geo = {

            "format_version": "1.12.0",

            f"geometry.lukas_{mob_id}": {

                "texturewidth": 64, "textureheight": 64,

                "bones": [

                    {"name": "root", "pivot": [0, 0, 0]},

                    {"name": "body", "parent": "root", "pivot": [0, 12, 0], "cubes": [{"origin": [-4, 6, -3], "size": [8, 12, 6], "uv": [0, 0]}]},

                    {"name": "head", "parent": "body", "pivot": [0, 18, 0], "cubes": [{"origin": [-4, 18, -4], "size": [8, 8, 8], "uv": [28, 0]}]}

                ]

            }

        }

        with open(f"{rp_dir}/models/entity/{mob_id}.geo.json", "w", encoding="utf-8") as f:

            json.dump(geo, f, indent=2)

 

    # 4. In .mcaddon (Zip-Archiv) packen

    addon_name = "Lukas_und_Co.mcaddon"

    with zipfile.ZipFile(addon_name, 'w', zipfile.ZIP_DEFLATED) as zipf:

        for folder in [bp_dir, rp_dir]:

            for root, _, files in os.walk(folder):

                for file in files:

                    full_path = os.path.join(root, file)

                    rel_path = os.path.relpath(full_path, ".")

                    zipf.write(full_path, rel_path)

 

    print(f"ERFOLGREICH! D

eine Datei wurde erstellt: {os.path.abspath(addon_name)}")

 

if __name__ == "__main__":

    create_mcaddon()

This mod has no additional files