Back to NxLabs

NxLabs / Vintage Story

Attribute Rendering Library

DBy DanaCraluminum

Implements highly optimized attribute-based variant system for rendering things

Description

I live in Ukraine and there is a war going on right now.

If you are enjoying my mods, you can support me on Patreon. Any help is appreciated!

Frequently Asked Questions

Q: What does it do?

A: The library implements highly optimized attribute-based variant system for rendering things. It is very efficient way to add thousands of variants for any item or block.

In the base game, when block/item adds insane variant combinations by using VariantGroups, it creates thousands of item IDs (1 item ID per variant).

Each block/item ID creates new instance which affects RAM a lot and with thousands of item IDs it can take up to 20-30 minutes to just load into a world.

By using this library, you can cut thousands of item IDs down into just 1-4 IDs per item!

Q: How will it help me?

A: Your mod would no longer take 20 minutes to load. You will be able to add infinitely more types than without it.

Q: Does it change any code in the api/vanilla?

A: It has a few Harmony patches to make some features work.

Click to see (bad) example JSON code

If your modded block/item looks like that, then you need to use this library in your mod as soon as possible!

<pre style="background-color: #fffde7; color: #333; padding: 10px; border-radius: 5px; overflow-x: auto; font-family: 'Courier New', monospace; font-size: 0.9em; border: 1px solid #ddd; margin: 0;">"variantgroups": [ { "code": "wood", "states": ["pine", "acacia", "birch", "baldcypress", "ebony", "kapok", "larch", "maple", "oak", "purpleheart", "redwood", "rottenebony", "walnut" ] }, { "code": "metal", "states": ["copper", "iron", "steel", "tinbronze" ... ] },
Read the full description on Vintage Story ModDB →

Ratings & reviews

No ratings yet

Sign in to leave a rating or comment.