Azanor / thaumcraft-suggestions

This area is specifically to post any suggestions or balance issues. The main area should be kept for bug reports only.
31 stars 12 forks source link

"Golemancer's Probe" / "Resonant Bell": Golem Debugging for Thaumaturges #308

Open Reassembly opened 6 years ago

Reassembly commented 6 years ago

Misbehaving golems have been an ongoing source of frustration for me. In theory, the seal/priority/color system ought to make golems more flexible and efficient than the old uni-tasking golems. However, it seems like golems require fairly frequent supervision, to see if they've wandered behind a fence for no apparent reason and now can't find their way back around, or have returned to their home block and now refuse to look at any seals, or are refusing to acknowledge "Stock" seals until picked up and put down again, or have just shut down completely while holding an item a block or two away from the "Store" chest they're supposed to put it into.

I feel it would be helpful to know, both in Beta and beyond, whether golems are misbehaving due to mere seal priority conflicts or filter restrictions, or because of actual reportable bugs in the Thaumcraft golem AI code.

I'd like to suggest a device - the research possibly unlocked by researching/possessing both a Golemancer's Bell and an Essentia Resonator, which it is sort of a hybrid of - which simply reports on what a golem is trying to do, and if applicable, why it is currently unsuccessful, but in a way that fits the in-game context. When right-clicked on a golem, the device would report a one-sentence summary of the golem's current state, composed of phrases selected by the golem's internal flags.

Something like: "I am... ...looking for a seal ...looking at a (type) seal ...gathering items ...gathering a (item) ...storing a (item) ...retrieving a (item) from provisions ...butchering a (animal) ...scanning for hostiles ...following you ...very confused (undefined state / internal error - spit something useful to debug.log when this happens?) ...(etc. etc.) ...and... ...I can't find a path there ...my hands are already full ...I'm not built for that ...I don't have permission ...I can't find the item ...there's no room to put it ...I haven't found any yet ...I'm looking for a path ...I'm on my way ...the task is complete ...(etc. etc.) ..."

I don't know if the golem AI code is robust enough to support responses like "I am (current task) in order to (calling task) and (current state)", but that might also be helpful in certain situations (e.g. harvest seal planting -> retrieve seeds from provisions).

As a possible addition, left-clicking (or crouch-right-clicking?) on a golem with the device could "soft-reset" a golem, clearing its current task and causing it to drop any carried items. This would be analogous to resetting a golem by picking it up and putting it down again, but without causing it to lose its color or change its home location.

jvcmarcenes commented 6 years ago

Yes, please