valence/crates/valence_anvil/Cargo.toml
Ryan Johnson 2ed5a8840d
Anvil Rework (#367)
## Description

Solidify the design of `valence_anvil` so that most of the boilerplate
in the anvil example is eliminated. `AnvilLevel` is now a component of
`Instance` and automatically loads and unloads chunks as clients move
around. Events are used to communicate when chunks are loaded and
unloaded.

Also changes the system message API and introduces the `SendMessage`
trait.

Checks off a box in #288

### Known Issues
- Still no support for saving or entities.
- The handling of chunk `min_y` is wrong. I plan to fix this in an
upcoming redesign of instances and chunks.
- Uses one OS thread per anvil level. This could be improved with a
dedicated shared thread pool to parallelize the loading process.
However, it seems decently fast as it is.
- Old benchmark is commented out.
- Could use some tests.
2023-06-15 14:11:37 -07:00

29 lines
755 B
TOML

[package]
name = "valence_anvil"
description = "Anvil world format support for Valence"
documentation.workspace = true
readme = "README.md"
license.workspace = true
keywords = ["anvil", "minecraft", "deserialization"]
version.workspace = true
edition.workspace = true
[dependencies]
anyhow.workspace = true
bevy_app.workspace = true
bevy_ecs.workspace = true
byteorder.workspace = true
flate2.workspace = true
flume.workspace = true
lru.workspace = true
num-integer.workspace = true
thiserror.workspace = true
tracing.workspace = true
valence_biome.workspace = true
valence_block.workspace = true
valence_client.workspace = true
valence_core.workspace = true
valence_entity.workspace = true
valence_instance.workspace = true
valence_nbt.workspace = true