GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — Features: Varius Registries Needed For Loading Datapacks · Issue #429 · feather-rs/feather

Features: Varius Registries Needed For Loading Datapacks #429

New issue
Copy link
New issue
Copy link
Open
Open
Features: Varius Registries Needed For Loading Datapacks#429
Copy link

Description

@Miro-Andrin
Miro-Andrin
opened on Jun 3, 2021
Issue body actions

Feature Request

To implement loading data from datapacks we need to load various different values into feather and store them somehow. Although the ecs is useful for some of those, we however probably don't want to use it for everything. We therefore want to implement some registries that store things more efficiently and provide better ergonomics.

I am going to start by listing all the values stored in data packs. I think all of them should be stored in registries, but if you disagree then comment, because we can't have someone being wrong on the internet.

  • Advancements
  • Dimensions
  • Functions
  • Loot Tables
  • Predicates
  • Recipe
  • Structures
  • Tags
  • World Generation Settings
  • Biomes

Together with these registries we also need to implement host_calls (see feather/plugin-host/src/host_calls.rs and /feather/quill/sys/src/lib.rs) such that we can edit them from plugins. Any change in these registries should probably also trigger change events. However i don't know what entity that event would be connected to? If you want a pointer on how to implement a event, then look at how i implemented #425

Some implementation questions.

Should we store all these registries together in one directory? I suggest '/feather/common/registries', does that seem fine? Do we need to implement serialisation/deserialisation such that their values can be saved once edited by a plugin?

Wrapping up:

If you are looking for something to do then i suggest working on Advancements, Functions, Loot Tables, or Recipes because they seem more immediately necessary. @Defman has started on recipes, but if someone is quick enough they can finish it before him 🥇

And feel free to ask in the discord if you have any questions .

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      You are visitor 01402503 — GeezerVison does not store the pages you look up.
      Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.