跳到正文

A Touch of Madness

作者:kc00l

Sanity slips under pressure, and the shadows it lets in can kill.

收藏

介绍

中文介绍正在准备中,下面暂时显示原文。

A Touch of Madness

A Touch of Madness

A Touch of Madness adds Sanity, a new stat inspired by Don’t Starve. Sanity starts at 100. Darkness, cold, rain, the Nether, nearby monsters and bad food lower it; company, music, sleep and good food raise it.

Low Sanity changes what you see and hear: the screen loses its colour at the edges, dark shapes appear in the corners, and you hear sounds that aren’t there. Shadow Creatures start following you. They’re harmless at first, but once you’re Insane they become real and attack.

Killing one restores some Sanity and drops Umbra. With it you can craft a sword and a pickaxe faster than netherite, and armour as strong as diamond that also makes you faster.

For pack authors

  • Where a dimension unsettles is the dimension type tag atouchofmadness:unsettling, by default the Nether: standing there drains Sanity.
  • Where Shadow Creatures come is the dimension type tag atouchofmadness:shadows, by default the Overworld, the Nether and the End.
  • Who unsettles is the entity type tag atouchofmadness:unsettling, by default vanilla’s monsters, and what each weighs the entity type data map atouchofmadness:unsettling_weight: 1 for a type it doesn’t list, 3 for an Enderman, 10 for the Warden, the Wither and the Elder Guardian, and 2 for the Lurker and 4 for the Gaunt.
  • Who comforts is the entity type tag atouchofmadness:comforting, by default wolves, cats, parrots, horses, donkeys, mules, llamas, nautiluses, villagers and allays, each counting only once tamed if it can be tamed.
  • What a food does to Sanity is the item data map atouchofmadness:sanity_modifier, from −10 for a spider eye or pufferfish to +30 for an enchanted golden apple; a food it doesn’t list does nothing.
  • What shapes the Shadow Creatures take are the entity type tags atouchofmadness:lurker_shapes and atouchofmadness:gaunt_shapes, drawn from the monsters each biome spawns. Another mod’s mobs can be added.
  • What repairs Umbra Gear in an anvil is the item tag atouchofmadness:repairs_umbra_gear, by default Umbra.
  • The Shadow Creatures’ drops are the loot tables atouchofmadness:entities/lurker and atouchofmadness:entities/gaunt, which drop Umbra only on a player’s kill.
  • The recipes are atouchofmadness:flower_crown and atouchofmadness:umbra_{sword,pickaxe,helmet,chestplate,leggings,boots}, so a datapack can replace them.
  • Discovery is a hidden advancement for each drain, restore and stage, at atouchofmadness:discovery/<id>. A pack removes one to count it as known, or overrides it to fire on minecraft:tick to mark it known from the start. The criterion triggers atouchofmadness:sanity_changed, with a source, and atouchofmadness:stage_reached, with a stage, fire them.
  • The meter’s sprites are atouchofmadness:hud/sanity_{full,half,empty}, each with _uneasy and _insane versions, which a resource pack can replace.

Sanity is kept on the player and survives relogs and restarts; a player who dies respawns at 50. Shadow Creatures are never saved.

The terms are in GLOSSARY.md, and what each release changed for a pack is in CHANGELOG.md.

Commands

All at permission level 2:

  • /sanity get <player> shows a player’s Sanity, and returns it rounded down for execute store.
  • /sanity set <player> <value> and /sanity add <player> <value> change it.

Configuration

Two configs, in config/. Rates are in Sanity a minute, distances in blocks.

  • atouchofmadness-common.toml:
    • sanity: start (100), respawn (50), saneAbove (50) and insaneBelow (20).
    • environment: lowLightBelow (5), and the drains lowLight (6), freezing (4), wet (1.5) and unsettling (1).
    • nearby: hostileRadius (8), hostile (1, times the weight) and hostileCap (10); companyRadius (8) and company (2).
    • music: range (64) and fresh (4).
    • moments, each at once: sleep (40), flower (1) and struckByTheDark (10).
    • crown: restore (1.5) and wearDays (1).
    • shadows: caps (50, 35, 20, 10), intervalSeconds (20), minDistance (12), maxDistance (24), fadeDistance (4), gauntBelow (10), gauntChance (0.5), realFactor (2) and strike (5); and in lurker and gaunt, health (30, 16), damage (4, 7), drift (2.5, 5) and kill (10, 20).
    • umbra: sword (2), pickaxe (2) and armour (1).
    • discovery: enabled (on).
  • atouchofmadness-client.toml, the Hallucinations: sway, colourLoss and encroachment, all on.

The numbers are provisional while A Touch of Madness is below 1.0.

Compatibility

All optional, and none nested in the jar:

  • Jade shows a playing jukebox’s disc as Fresh or Stale for the player looking, once they have discovered the Stale disc.
  • EMI shows information pages on the Flower Crown, each food with a Sanity Modifier, music discs and Umbra, each hidden until discovered.
  • A Touch of Darkness: each Strike by the Dark takes 10 Sanity.

Dependencies

None beyond NeoForge, on Minecraft 26.1.2. A Touch Of’s Runtime, which draws the Sanity meter, is nested in the jar.

This is a hobby project: I’m not monetizing any part of A touch of mods suite. I’m building it for fun, to see how far I can take it.

License

Per file: the code is LGPL-3.0-only and the content, textures and docs CC BY 4.0, as LICENSE says. Source is on GitHub. The Umbra Gear’s textures are built from Malcolm Riley’s unused-textures, under CC BY 4.0; NOTICE credits each.

常见问题

A Touch of Madness 支持哪些 Minecraft 版本?

A Touch of Madness 支持 Minecraft Java 版 26.1.2,可用的加载器:NeoForge。下载时注意选择和你游戏版本一致的文件。

A Touch of Madness 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

kc00l 的其他作品

查看全部 →