bones

An easy-to-use game engine for making real games.

OTHER License

Downloads
129K
Stars
205
Committers
12

Bot releases are visible (Hide)

bones - bones_utils_macros-v0.3.1 Latest Release

Published by zicklag 9 months ago

bones - bones_schema_macros-v0.3.1

Published by zicklag 9 months ago

bones - bones_scripting-v0.3.0

Published by zicklag 9 months ago

bones - bones_lib-v0.3.0

Published by zicklag 9 months ago

bones - bones_ecs-v0.3.0

Published by zicklag 9 months ago

Documentation

  • update changelogs.

New Features

  • upgrade to Bevy 0.10.
  • make Entity::new() public.
    This is important for use cases where you need to manually
    serialize/load an entity ID.
  • make insert_stage_before/after() chainable.
  • add get_many_mut() method to CompMut.
    This allows you to mutably borrow the component for multiple entities
    at the same time, which was otherwise difficult, unsafe, or inefficient
    to do previously.

Bug Fixes

  • change type bound for Res from Default to FromWorld.
  • export FromWorld publicly and make compatible with Res/ResMut system parameters.
  • fix insert_stage_before/after always inserting before/after PreUpdate.
  • fix returned component order in get_many_mut().
    get_many_mut() was previously not returning the components
    in the same order as the entities list.

New Features (BREAKING)

  • add from_world implementation similar to Bevy.
    Allows resources to be added with either a Default implementation,
    or a custom FromWorld implementation that allows them to derive their,
    value from any other data currently in the world.

Commit Statistics

  • 10 commits contributed to the release over the course of 126 calendar days.
  • 133 days passed between releases.
  • 10 commits were understood as conventional.
  • 10 unique issues were worked on: #115, #122, #124, #78, #79, #88, #90, #92, #93, #94

Commit Details

  • #115
    • change type bound for Res from Default to FromWorld. (3a3f05a)
  • #122
  • #124
  • #78
    • add get_many_mut() method to CompMut. (147ebc8)
  • #79
    • fix returned component order in get_many_mut(). (7bfcf5d)
  • #88
    • fix insert_stage_before/after always inserting before/after PreUpdate. (3f06116)
  • #90
    • make insert_stage_before/after() chainable. (7c578b4)
  • #92
    • add from_world implementation similar to Bevy. (00110c2)
  • #93
    • make Entity::new() public. (db98f76)
  • #94
    • export FromWorld publicly and make compatible with Res/ResMut system parameters. (1335457)
bones - bones_asset-v0.3.0

Published by zicklag 9 months ago

Chore

  • update bones lib versioning.

Documentation

  • update changelogs.

New Features

  • upgrade to Bevy 0.10.
  • implement Serialize for Handle<T> and UntypedHandle.

Bug Fixes

  • makes bones asset path representation more consistent.
    Previously the normalize method on a bones path would remove the leading
    / to make it support Bevy paths, which can't start with a /, but
    this was not consistent with the way that the handle was serialized.

    Now, the bones path representations always maintain the leading / to
    indicate a root path, and the leading / is removed when converting to
    a Bevy handle.

    This fixes issues run into when trying to read serialized bones handles
    during map saving in Jumpy.

Commit Statistics

  • 5 commits contributed to the release over the course of 103 calendar days.
  • 133 days passed between releases.
  • 5 commits were understood as conventional.
  • 5 unique issues were worked on: #101, #106, #111, #122, #124

Commit Details

bones - bones_schema-v0.3.0

Published by zicklag 9 months ago

bones - bones_utils-v0.3.0

Published by zicklag 9 months ago

bones - bones_utils_macros-v0.3.0

Published by zicklag 9 months ago

bones - bones_schema_macros-v0.3.0

Published by zicklag 9 months ago

bones - bones_matchmaker v0.2.0

Published by zicklag over 1 year ago

New Features

  • upgrade to Bevy 0.10.

Style

  • remove unnecessary set of BLOCKING_MAX_THREADS ENV var.
    This used to be used, but isn't applicable anymore.

Commit Statistics

  • 2 commits contributed to the release over the course of 43 calendar days.
  • 134 days passed between releases.
  • 2 commits were understood as conventional.
  • 2 unique issues were worked on: #117, #122

Commit Details

  • #117
    • remove unnecessary set of BLOCKING_MAX_THREADS ENV var. (92d0a58)
  • #122
    • upgrade to Bevy 0.10. (3f2e348)
bones - bones_matchmaker_proto v0.2.0

Published by zicklag over 1 year ago

New Features

  • upgrade to Bevy 0.10.

Commit Statistics

  • 1 commit contributed to the release.
  • 134 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #122

Commit Details

  • #122
    • upgrade to Bevy 0.10. (3f2e348)
bones - quinn_runtime_bevy v0.2.0

Published by zicklag over 1 year ago

New Features

  • upgrade to Bevy 0.10.

Commit Statistics

  • 1 commit contributed to the release.
  • 134 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #122

Commit Details

  • #122
    • upgrade to Bevy 0.10. (3f2e348)
bones - 0.2.0

Published by zicklag over 1 year ago

0.2.0 (2023-06-01)

New Features

  • allow setting camera shake speed.
    Makes the shake speed parameter configurable and dramatically
    slows the default speed so that the sampling across the perlin
    noise produces a smooth shake instead of a random jitter.
  • add time resource + sync system

New Features (BREAKING)

  • Upgrade to Bevy 0.10.
  • allow specifying arbitrary frame list for animated sprites.
    This allows for more flexible sprite animations, that aren't
    simply represented by a range of frames in the spritesheet.

Commit Statistics

  • 3 commits contributed to the release over the course of 119 calendar days.
  • 133 days passed between releases.
  • 3 commits were understood as conventional.
  • 3 unique issues were worked on: #104, #84, #95

Commit Details

  • #104
    • allow setting camera shake speed. (473af7f)
  • #84
    • allow specifying arbitrary frame list for animated sprites. (02d654c)
  • #95
    • add time resource + sync system (605345b)
bones - bones_bevy_renderer v0.1.1

Published by zicklag over 1 year ago

New Features

  • add 2D line path rendering.

Commit Statistics

  • 1 commit contributed to the release.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #76

Commit Details

  • #76
    • add 2D line path rendering. (6abe6ee)
bones - bones_render v0.1.1

Published by zicklag over 1 year ago

New Features

  • add 2D line path rendering.

Commit Statistics

  • 1 commit contributed to the release.
  • 4 days passed between releases.
  • 1 commit was understood as conventional.
  • 1 unique issue was worked on: #76

Commit Details

  • #76
    • add 2D line path rendering. (6abe6ee)
bones - bones_bevy_renderer v0.1.0

Published by zicklag over 1 year ago

Chore

  • add missing crate descriptions.

Other

  • switch to released version of bevy_simple_tilemap.
    This temporarily increases our list of Bevy feature dependencies as we wait for the
    PR to reduce the required
    bevy features, but it allows us to publish the crate to crates.io.

Chore

  • generate changelogs for all crates.

Documentation

  • document source repository in cargo manifest.
    The repository key under bones_ecs previously pointed to https://github.com/fishfolk/jumpy.

    This updates this to point to the bones repo, and also adds the repository key to the other
    crates in the repository.

New Features

  • add resource for controlling the clear color.

  • implement tilemap rendering.

  • implement atlas sprite rendering.
    Adds the bones_render types for atlas sprites,
    and renders them in bones_bevy_renderer.

    This also adds an asset loader for .atlas.yaml/.atlas.json files
    which can be used when you need to load a Handle<Atlas>
    in a BonesBevyAsset struct.

Bug Fixes

  • fix Error When Re-Creating World Resource
    This fixes a panic that would happen if you added a bones world resource,
    removed it, and re-added it.
  • fix tile rendering offset.
    The previous tile rendering fix fixed some of the issue,
    but it used the wrong dimensions when off-setting the tile
    placement so that the tiles render from their bottom-left corner.
  • fix bugs in tilemap renderer.
    • Fix issue where tiles were being rendered off into the far right side
      of the map.

New Features (BREAKING)

  • remove join! macro and improve iteration API.
    We will add a more ergonomic replacement for the join! macro later,
    but for now we make it easier to use the raw bitset iteration APIs,
    which previously required a frustrating use of Rc.

    Removing the Rc broke the join! macro, but I think there is a better way to
    create a join API, so it isn't worth fixing yet.

    This also improves the ergonomics of the bitset iterators by having them
    yield their items directly instead of yielding Options that must be filtered out.

  • add asset integration with bevy.
    This is a big overall change that adds ways to integrate Bones with bevy assets.

  • draft bones_lib architecture.
    Renames bones to bones_lib ( mostly because bones was already taken )
    and adds the bones_asset, bones_bevy_renderer, bones_input, and
    bones_render crates.

    This sets up the overall structure for the bones library,
    though changes to some aspects of the design are likely to change.

Bug Fixes (BREAKING)

  • move entity sync to stage before CoreStage::PostUpdate.
    This fixes problems where a sprite is moved and it's global transform
    doesn't update until the next frame, causing flickering.

Refactor (BREAKING)

  • prepare for release.
    • Remove bones_has_load_progress: for now we don't use it, and if we
      want something similar we will work it into bones_bevy_asset.
    • Remove bones_camera_shake: it was moved into bones_lib::camera.
    • Add version numbers for all local dependencies.

Commit Statistics

  • 17 commits contributed to the release over the course of 16 calendar days.
  • 15 commits were understood as conventional.
  • 14 unique issues were worked on: #26, #29, #30, #31, #35, #37, #40, #43, #45, #51, #63, #65, #67, #71

Commit Details

  • #26
    • draft bones_lib architecture. (d7b5711)
  • #29
    • add asset integration with bevy. (89b44d7)
  • #30
    • remove join! macro and improve iteration API. (b80cf48)
  • #31
    • implement atlas sprite rendering. (d43b6ec)
  • #35
    • implement tilemap rendering. (0a7fec6)
  • #37
    • document source repository in cargo manifest. (a693894)
  • #40
    • fix bugs in tilemap renderer. (f8f41ed)
  • #43
    • add resource for controlling the clear color. (34c5ecc)
  • #45
    • fix tile rendering offset. (1f826dd)
  • #51
    • fix Error When Re-Creating World Resource (e3d70fa)
  • #63
    • prepare for release. (ae0a761)
  • #65
    • add missing crate descriptions. (2725246)
  • #67
    • generate changelogs for all crates. (a68cb79)
  • #71
    • switch to released version of bevy_simple_tilemap. (248f80a)
  • Uncategorized
    • Release bones_bevy_asset_macros v0.2.0, bones_bevy_asset v0.1.0, bones_bevy_renderer v0.1.0, safety bump 2 crates (7f7bb38)
    • Release type_ulid_macros v0.1.0, type_ulid v0.1.0, bones_bevy_utils v0.1.0, bones_ecs v0.1.0, bones_asset v0.1.0, bones_input v0.1.0, bones_render v0.1.0, bones_lib v0.1.0 (db0333d)
    • move entity sync to stage before CoreStage::PostUpdate. (5116014)
bones - bones_bevy_asset v0.1.0

Published by zicklag over 1 year ago

Chore

  • add missing crate descriptions.

Chore

  • generate changelogs for all crates.

Documentation

  • document source repository in cargo manifest.
    The repository key under bones_ecs previously pointed to https://github.com/fishfolk/jumpy.

    This updates this to point to the bones repo, and also adds the repository key to the other
    crates in the repository.

New Features

  • implement BonesBevyAssetLoad for more types.
    Added implementations for Option, HashMap,
    and bevy_utils::HashMap when the values implement
    BonesBevyAssetLoad.
  • add extra derive support & type implementations.
    • The derive macro for BonesBevyAssetLoad can now be used on enums.
  • Added more implementations of BonesBevyAssetLoad for primitive types.

Style

  • use if let statement instead of Option::map()

New Features (BREAKING)

  • add asset integration with bevy.
    This is a big overall change that adds ways to integrate Bones with bevy assets.

Refactor (BREAKING)

  • prepare for release.

    • Remove bones_has_load_progress: for now we don't use it, and if we
      want something similar we will work it into bones_bevy_asset.
    • Remove bones_camera_shake: it was moved into bones_lib::camera.
    • Add version numbers for all local dependencies.
  • make world in BevyWorld resource optional.
    Since the bevy world can't be cloned, we previously had it in
    an Arc, but that didn't play nicely with world snapshots.

    Now the bevy world inside the BevyWorld resource is an
    option, with the BevyAssets system param panicking if it
    doesn't find the world when it needs it.

Commit Statistics

  • 11 commits contributed to the release over the course of 14 calendar days.
  • 10 commits were understood as conventional.
  • 9 unique issues were worked on: #29, #33, #37, #39, #41, #52, #63, #65, #67

Commit Details

  • #29
    • add asset integration with bevy. (89b44d7)
  • #33
    • add derive macro for BonesBevyAssetLoad. (3206a4d)
  • #37
    • document source repository in cargo manifest. (a693894)
  • #39
    • add extra derive support & type implementations. (7fd1c59)
  • #41
    • make world in BevyWorld resource optional. (ef12c3f)
  • #52
    • use if let statement instead of Option::map() (de43e3c)
  • #63
    • prepare for release. (ae0a761)
  • #65
    • add missing crate descriptions. (2725246)
  • #67
    • generate changelogs for all crates. (a68cb79)
  • Uncategorized
    • Release type_ulid_macros v0.1.0, type_ulid v0.1.0, bones_bevy_utils v0.1.0, bones_ecs v0.1.0, bones_asset v0.1.0, bones_input v0.1.0, bones_render v0.1.0, bones_lib v0.1.0 (db0333d)
    • implement BonesBevyAssetLoad for more types. (c0a14c5)
bones - bones_bevy_asset_macros v0.2.0

Published by zicklag over 1 year ago

Chore

  • add missing crate descriptions.

Chore

  • generate changelogs for all crates.

Documentation

  • document source repository in cargo manifest.
    The repository key under bones_ecs previously pointed to https://github.com/fishfolk/jumpy.

    This updates this to point to the bones repo, and also adds the repository key to the other
    crates in the repository.

New Features

  • add extra derive support & type implementations.
    • The derive macro for BonesBevyAssetLoad can now be used on enums.
  • Added more implementations of BonesBevyAssetLoad for primitive types.

New Features (BREAKING)

  • add asset integration with bevy.
    This is a big overall change that adds ways to integrate Bones with bevy assets.

Commit Statistics

  • 6 commits contributed to the release over the course of 14 calendar days.
  • 6 commits were understood as conventional.
  • 6 unique issues were worked on: #29, #33, #37, #39, #65, #67

Commit Details

  • #29
    • add asset integration with bevy. (89b44d7)
  • #33
    • add derive macro for BonesBevyAssetLoad. (3206a4d)
  • #37
    • document source repository in cargo manifest. (a693894)
  • #39
    • add extra derive support & type implementations. (7fd1c59)
  • #65
    • add missing crate descriptions. (2725246)
  • #67
    • generate changelogs for all crates. (a68cb79)
bones - bones_matchmaker v0.1.0

Published by zicklag over 1 year ago

Chore

  • add missing crate descriptions.
  • update dependencies

Chore

  • generate changelogs for all crates.

Documentation

  • document source repository in cargo manifest.
    The repository key under bones_ecs previously pointed to https://github.com/fishfolk/jumpy.

    This updates this to point to the bones repo, and also adds the repository key to the other
    crates in the repository.

New Features

  • migrate crates from the jumpy repository

Other

  • add github workflows for ci, docs, matchmaker, and PR linter

Refactor (BREAKING)

  • prepare for release.
    • Remove bones_has_load_progress: for now we don't use it, and if we
      want something similar we will work it into bones_bevy_asset.
    • Remove bones_camera_shake: it was moved into bones_lib::camera.
    • Add version numbers for all local dependencies.

Commit Statistics

  • 7 commits contributed to the release over the course of 26 calendar days.
  • 7 commits were understood as conventional.
  • 5 unique issues were worked on: #37, #63, #65, #67, #7

Commit Details

  • #37
    • document source repository in cargo manifest. (a693894)
  • #63
    • prepare for release. (ae0a761)
  • #65
    • add missing crate descriptions. (2725246)
  • #67
    • generate changelogs for all crates. (a68cb79)
  • #7
    • update dependencies (49852b7)
  • Uncategorized
    • add github workflows for ci, docs, matchmaker, and PR linter (a516a68)
    • migrate crates from the jumpy repository (3724c69)