Skip to content

Added support for NPC-301 - NPC-306#6

Open
ChristianSilvermoon wants to merge 1 commit intoTheXTech:develfrom
ChristianSilvermoon:wip/1.3.8-dev-stuff
Open

Added support for NPC-301 - NPC-306#6
ChristianSilvermoon wants to merge 1 commit intoTheXTech:develfrom
ChristianSilvermoon:wip/1.3.8-dev-stuff

Conversation

@ChristianSilvermoon
Copy link
Copy Markdown

@ChristianSilvermoon ChristianSilvermoon commented Aug 3, 2025

A few new NPCs are present in TheXTech's 1.3.8 dev builds that are not currently accessible from Moondust's Editor

This is an effort to make it possible to manipulate and place some of these NPCs within levels... and I believe also one of my first ever PRs.

If I'm doing something incorrectly or something needs to be fixed, I'm happy to take feedback!

One thing I'm unclear on is what exit type NPC-306 grants. I've left it as a "?" in the description for the time being, but I feel this is unsuitable.

@Wohlstand
Copy link
Copy Markdown
Member

The only problem right now that if use this update with older game assets packs, they will work glitchy or just fail to load because of missing resources. I guess I can solve this problem by adding a kind of "optional", so, these objects will be excluded from the general list if they absent in the selected game pack.

@Wohlstand Wohlstand self-assigned this Aug 3, 2025
@ChristianSilvermoon
Copy link
Copy Markdown
Author

The only problem right now that if use this update with older game assets packs, they will work glitchy or just fail to load because of missing resources. I guess I can solve this problem by adding a kind of "optional", so, these objects will be excluded from the general list if they absent in the selected game pack.

Ah, I can imagine multiple asset packs with varying feature levels weren't originally in mind... an optional thing is probably a good idea

@Wohlstand
Copy link
Copy Markdown
Member

I have two variants on how to implement this:

  • Simple and safe: just set the kind of "optional-start" that tells which item ID starts a set of optional objects, all before are mandatory, and config pack loading will tell that resources are missing. And if missing second, that will only produce warning but will don't fail the pack.
  • Per-item: just add a kind of "optional-item" bool at every object, so it will be possible to mark any in middle, and if object in middle of list with this flag will have missing stuff, it will not fail whole pack.

@ChristianSilvermoon
Copy link
Copy Markdown
Author

I have two variants on how to implement this:

* Simple and safe: just set the kind of "optional-start" that tells which item ID starts a set of optional objects, all before are mandatory, and config pack loading will tell that resources are missing. And if missing second, that will only produce warning but will don't fail the pack.

* Per-item: just add a kind of "optional-item" bool at every object, so it will be possible to mark any in middle, and if object in middle of list with this flag will have missing stuff, it will not fail whole pack.

The second option sounds more flexible but also like additional work 🤔

But the flexibility could be ideal for asset packs the only implement some but not all things?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants