Repository navigation
Add runnable entity foundation component examples - #1
Merged
Merged
Conversation
This was referenced Oct 12, 2026
Merged
JamieW105
added a commit
to Rustic-Game-Engine/engine
that referenced
this pull request
Oct 12, 2026
…#30) Scripts need live entity organization and lifetime operations across language adapters. Add 17 shared Rust/runtime APIs for tags, groups, world-preserving hierarchy edits, subtree/delayed destruction, component presence and tag/radius queries. All SDKs call the same typed query dispatcher; editor Lua/JavaScript API hints are updated. Destroyed component owners stop receiving callbacks and release operations/signals at cleanup. Stop/change review skips destroyed authored entities and suppresses translation-only diffs when an entity's parent differs from the original scene. Surviving entities with unchanged parents still contribute edits; restoring the authored parent makes local translations reviewable again. Structural edits remain runtime-only, avoiding wrong editor world positions and preserving normal Stop acknowledgements. Reuse SceneWorld validated commands, generational references, transforms and the existing gameplay clock/signals/scheduler. Runtime metadata avoids a scene format migration; reparenting rejects shear instead of silently changing poses. No dependencies added. This is the first incremental entity slice of Phase 1: component mutation, prefabs/pooling, scene streaming, input/persistence and subsequent phases remain unfinished in the checked-in feature checklist. Validation for the review fixes: all 70 engine-play tests passed, including two regression tests and a real authenticated Stop exchange after a component destroys its owner and reparents another entity. Both unit regressions were also executed against the pre-fix collector and failed as expected. Workspace/all-target compile check, engine-play Clippy with warnings denied, formatting/whitespace checks passed. Documentation lint/build/types/audit, all 34 site tests and documentation/exported-link checks passed. Existing SDK/world features remain covered by the CI suites. No Windows/macOS hardware compatibility claim. Companion documentation: Rustic-Game-Engine/docs#31 (merged), with final validation in Rustic-Game-Engine/docs#33 (17 API pages, language examples, setup/lifetime/errors, expansion checklist; site lint/build/types/audit/tests passed). Stop/change-review documentation fix: Rustic-Game-Engine/docs#34. Runnable examples: Rustic-Game-Engine/examples#1. Windows installer and all required CI passed for fix commit 68d11be: https://github.com/Rustic-Game-Engine/engine/actions/runs/38201074736. The full comprehensive scripting expansion remains unfinished. Fresh Windows installer: https://github.com/Rustic-Game-Engine/engine/actions/runs/38201074736/artifacts/11725608597 (windows-installer, 21,661,427 bytes; the successful upload requires Engine/dist/RusticGameEngine-Setup-*.exe). Both review threads are resolved.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add equivalent Lua and Python component scripts that tag their owner, register group membership, query component presence and schedule destruction. The README explains editor creation/attachment, expected Console output, toolchains and runtime-only lifetime rules.
Both scripts are mirrored and executed in the companion engine tests against a live SceneWorld, including tag/group registration and delayed destruction cleanup. These are runnable script demonstrations, not placeholder starter projects.
Companion engine: Rustic-Game-Engine/engine#30. Documentation: Rustic-Game-Engine/docs#31.