mirror of
https://github.com/italicsjenga/valence.git
synced 2024-12-23 14:31:30 +11:00
2ed5a8840d
## 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.
29 lines
755 B
TOML
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
|