valence/extractor
Ryan Johnson 4cf6e1a207
Entity Rework (#294)
## Description

Closes #269
Closes #199 

- Removes `McEntity` and replaces it with bundles of components, one for
each entity type.
- Tracked data types are now separate components rather than stuffing
everything into a `TrackedData` enum.
- Tracked data is now cached in binary form within each entity,
eliminating some work when entities enter the view of clients.
- Complete redesign of entity code generator.
- More docs for some components.
- Field bits are moved out of the entity extractor and into the valence
entity module.
- Moved hitbox code to separate module.
- Refactor instance update systems to improve parallelism.

### TODOs
- [x] Update examples.
- [x] Update `default_event_handler`.
- [x] Fix bugs.

## Test Plan

Steps:
1. Check out the entity module docs with `cargo d --open`.
2. Run examples.
2023-03-21 23:29:38 -07:00
..
gradle/wrapper check gradlew for the extractor into git (#88) 2022-09-27 13:06:34 -07:00
src/main Entity Rework (#294) 2023-03-21 23:29:38 -07:00
build.gradle ECS Rewrite (#184) 2023-02-11 09:51:53 -08:00
gradle.properties ECS Rewrite (#184) 2023-02-11 09:51:53 -08:00
gradlew check gradlew for the extractor into git (#88) 2022-09-27 13:06:34 -07:00
gradlew.bat check gradlew for the extractor into git (#88) 2022-09-27 13:06:34 -07:00
README.md add readme for extractor (#90) 2022-09-27 16:22:28 -07:00
settings.gradle Add extractor fabric mod 2022-07-19 05:15:05 -07:00

Valence Extractor

This is a Fabric mod for Minecraft that extracts data about different things in Minecraft, like blocks, packets, etc. All the extracted data is stored in the sibling extracted folder.

How to use

Here's how to regenerate the contents of extracted.

From this directory, run the following

./gradlew runServer

This will run the extractor and immediately exit, outputting the files that are listed in the logs. These need to be manually moved to extracted to be committed.