chore(pack): make config files opt-in and ship a PetProtect default

.packwizignore ignored config/ and defaultconfigs/ wholesale. They are now
ignored per-entry (config/*) with deliberately authored files re-included at
the bottom of the file, so one config can ship without any risk of pulling
every runtime-generated config into the index - which matters because this
repo doubles as a server directory.

Ships config/petprotect.json disabling BOTH pet damage and death protection.
PetProtect's isInvulnerableTo mixin gates on prevent_pet_damage alone, so
disabling prevent_pet_death by itself leaves pets invulnerable to nearly all
damage and Pet Cemetery's death -> collar -> respawn loop still never fires.
prevent_pet_attack remains true, so pets are not provoked into fights.

Without this file the two mods cancel each other: PetProtect's defaults keep
pets immortal, so Pet Cemetery is dead weight.

The config installs on clients as well as the server; that is harmless since
petprotect itself is side = "server", but packwiz has no per-file side flag
for non-metafile entries.
This commit is contained in:
logan committed 2026-10-06 18:27:42 -04:00
1 parent e371e51856
commit 387ee1ef9b
4 files changed
+27 -5

No files matched your search

+12 -3
View File
@@ -11,10 +11,13 @@ run.sh
*.jar
*.jar.log
run.bat
# Server/runtime config is never tracked.
config/
# Server/runtime config is opt-in. Everything under these directories is
# ignored; deliberately authored defaults are re-included at the bottom of
# this file. This repo doubles as a server directory, so a blanket un-ignore
# here would pull every runtime-generated config into the index.
config/*
defaultconfigs/*
kubejs/
defaultconfigs/
local/
# Authoring/review material - belongs in the repo, never in the pack
@@ -40,3 +43,9 @@ cache/
sp-world/
*.tar.gz
*.tgz
# --- Shipped config defaults ----------------------------------------------
# These must come AFTER every ignore above (last matching pattern wins),
# including the blanket "*.json" in the authoring section. Re-include only
# files we deliberately author and want enforced on install.
!config/petprotect.json