Skip to content

Notch Currency 0.8.0

Choose a tag to compare

@FugginBeenus FugginBeenus released this 06 Aug 16:58

0.8.0: NPCs with a day, and NPCs you can hand to a friend

Daily schedules

An NPC can now keep hours. Give it a list of times and what it should be doing at each, and it runs
its own day: asleep in a bed overnight, up and wandering before dawn, at the counter when the shop
opens, walking a round in the afternoon.

Moves tab, Daily Schedule. Each block of the day gets a start time, one of four things to do
(sleep in a bed, wander an area, stand at a spot, walk the patrol route), and a spot, which you mark
by right-clicking the world with the tool it hands you. The same tool you already use for patrol
routes, so there is nothing new to learn.

  • Opening hours, if you want them. Turn Keep opening hours on and each block decides whether
    the NPC's role can be used, so a shop that is closed says so in words you write instead of opening
    at three in the morning. Leave it off and the schedule is pure choreography, with the shop open
    around the clock. Dialogue keeps working either way, so you can write closed-hours conversations.
  • Things that happen on the hour. Any block can run actions as it begins: say a line, hand
    something over, charge or pay coins, run a command. This is how a shop restocks at opening and
    announces itself while it does.
  • It survives being left alone. The schedule is worked out from the clock, so an NPC in an
    unloaded chunk costs nothing and cannot drift. Come back a week later and it is doing whatever it
    should be doing at that hour, with no catch-up and nothing to repair.
  • Entries that still need a spot are marked, counted, and fixable in a couple of clicks with
    Fix next, which hands you the tool aimed at the right one.
  • Schedules need a sunrise, so the screen says so plainly in the Nether and the End rather than
    letting you build a day that would never advance.

Share an NPC as text

Presets have always saved NPCs to files, but those land in the server's config folder where no
player can reach them. An NPC could be copied anywhere inside one world and nowhere outside it.

A share code is just text. Copy it off an NPC, paste it onto another, and it carries the whole build:
look, pose, dialogue, reactions, gear. It travels however you already talk to people. The same text
is what a .npc file holds, so in single player you can hand over a file instead, and that route has
no size limit at all.

Codes coming in are treated as hostile input, since a code is the one thing in the mod written by a
stranger. A code that claims to expand into something enormous is refused rather than parsed, and
oversized pastes are turned away with a pointer to the file route rather than disconnecting whoever
sent them.

Security

  • Paying coins and giving items have been admin-only since 0.6.0, enforced by a sweep that skips any
    NPC already checked. That "already checked" mark travelled inside the NPC's config, so an
    operator's preset landing on an ordinary player's NPC kept its pay actions and was never looked at
    again, which is a coin faucet for the price of loading a preset. The mark is now stripped along
    with everything else world-specific, so a foreign config always gets checked on arrival.

Fixes

  • Sleeping NPCs lie in the bed properly, in the head half, instead of standing beside it or hanging
    off the end.
  • A sleeping NPC stops turning to watch passers-by.
  • A bed mined out from under a sleeping NPC wakes it rather than leaving it asleep on nothing.