{"description":"Welcome to the best place to find Luanti mods, games, and texture packs","expired":false,"feed_url":"https://content.luanti.ru/packages/mzel1982/radapi/releases_feed.json","home_page_url":"https://content.luanti.ru/","icon":"https://content.luanti.ru/favicon-128.png","items":[{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Refactored v3 entity API</li>\n<li>Added v3 pedestal API</li>\n<li>Added documentation in the v3 older of this mod for the new api</li>\n</ul>\n","date_published":"2025-12-26T10:19:33Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34131/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v2.6.0","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v2.6.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34131/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<p>NOTE: I am slowly adding the v3 API in the code withouth breaking the mod</p>\n<ul>\n<li>Added v3 ENTITIES API (No documentation)</li>\n</ul>\n","date_published":"2025-12-25T13:37:12Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34109/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"NOTE: I am slowly adding the v3 API in the code withouth breaking the mod","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v2.5.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34109/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li><strong>Customizable Arrow Trails</strong>: Full control over particle effects, textures, glow, and behavior for projectile weapons</li>\n<li><strong>Enhanced Physics Engine</strong>: Improved collision detection and kinetic damage calculation for projectiles</li>\n<li><strong>Performance Optimizations</strong>: More efficient globalstep handling and attachment management</li>\n<li><strong>Blank Asset Fallbacks</strong>: The API now handles missing textures and meshes gracefully, using blank fallbacks to prevent crashes during development</li>\n</ul>\n","date_published":"2025-12-21T12:59:53Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34065/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v2.4.0","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v2.4.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34065/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Added support for torches</li>\n</ul>\n","date_published":"2025-12-21T11:08:04Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34063/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v2.2.0","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v2.2.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34063/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Lazy-Loading Globalstep: Optimized performance by only initializing the lighting loop if a glowing item is registered.</li>\n<li>Integrated Lighting Engine: Added a native, zero-dependency system for dynamic light sources.</li>\n<li>Multi-Source Light Logic: Implemented a priority system to calculate the highest light level when multiple sources overlap.</li>\n<li>Enhanced Item Registration: Added the wield_glow property to radapi.register for hand-held and attached illumination.</li>\n<li>Persistent Display States: Fixed an issue where rotated items in pedestals/frames would reset after chunk unloads.</li>\n<li>Memory Management: Added a safety gate to prevent redundant globalstep registrations across multiple mod calls.</li>\n<li>Automatic Cleanup: Refined the logic for removing light nodes and entities during player logout and death events.</li>\n</ul>\n","date_published":"2025-12-21T08:50:29Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34061/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v2.1.0","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v2.1.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34061/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<h2 id=\"breaking-changes\">Breaking Changes <a class=\"header-anchor\" href=\"#breaking-changes\" rel=\"nofollow\">\ud83d\udd17</a></h2>\n<ul>\n<li>Node metadata key changed to <code>radapi:item_full</code> and uses serialized tables instead of strings.</li>\n<li>Internal callbacks renamed to <code>_on_attach</code> and <code>_on_detach</code> to avoid engine name collisions.</li>\n<li>Registration tables now require <code>display_offset_value</code> instead of the legacy <code>offset</code> key.</li>\n<li>Player persistence data migrated from Player Metadata to the global <code>ModStorage</code> backend.</li>\n<li><code>attach_entity</code> API now requires a full <code>ItemStack</code> object to ensure metadata preservation.</li>\n</ul>\n<h2 id=\"added--improved\">Added &amp; Improved <a class=\"header-anchor\" href=\"#added--improved\" rel=\"nofollow\">\ud83d\udd17</a></h2>\n<ul>\n<li>Full preservation of enchantments, wear, and custom descriptions through table serialization.</li>\n<li>Sneak + Right-click interaction added to rotate displayed items in 90-degree increments.</li>\n<li>Automatic LBM restoration ensures display entities re-spawn instantly when MapBlocks load.</li>\n<li>Built-in <code>minetest.is_protected</code> checks added to all pedestal and item frame interactions.</li>\n<li>Automatic item dropping logic implemented for player death via <code>drop_all_attachments</code>.</li>\n<li>New <code>RADAPI.get_node_item(pos)</code> helper for programmatic retrieval of stored item stacks.</li>\n</ul>\n<h2 id=\"removed--fixed\">Removed &amp; Fixed <a class=\"header-anchor\" href=\"#removed--fixed\" rel=\"nofollow\">\ud83d\udd17</a></h2>\n<ul>\n<li>Removed lossy string-only item storage that stripped custom metadata and descriptions.</li>\n<li>Removed manual entity cleanup requirement in favor of automated LBM and <code>on_destruct</code> logic.</li>\n<li>Fixed visual &quot;ghost entity&quot; stacking issues through improved entity management.</li>\n</ul>\n","date_published":"2025-12-20T23:10:36Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34057/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"## Breaking Changes","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v2.0.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34057/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Switched from mod_storage to Node Metadata</li>\n<li>Added an LBM to automatically migrate existing data to the new format without data loss.</li>\n<li>Disabled static_save on entities to prevent map corruption and implemented an LBM to restore visuals on load.</li>\n<li>Added logic to save and restore player attachments via metadata so they persist across relogs.</li>\n<li>Refined entity detection to use precise coordinates, preventing interactions from affecting neighboring nodes.</li>\n<li>Updated metadata keys to use the radapi: namespace to prevent conflicts with other mods.</li>\n</ul>\n","date_published":"2025-12-20T09:00:02Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34048/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.3.3","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.3.3","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34048/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>fix: prevent stack overflow in deepcopy and UUID collisions on restart</li>\n</ul>\n","date_published":"2025-12-20T08:15:55Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34047/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.3.2","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.3.2","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34047/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>FIX: use UUID for entity removal instead of radius</li>\n<li>REFACTOR: move local functions to separate file</li>\n</ul>\n","date_published":"2025-12-20T07:55:24Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34046/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.3.1","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.3.1","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34046/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Added support for registering pedestals</li>\n<li>Updated the readme</li>\n</ul>\n","date_published":"2025-12-19T17:46:31Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34032/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.3.0","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.3.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34032/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>make target keys unique</li>\n<li>detach on player leave,</li>\n<li>tighten frame deletion radius,</li>\n<li>guard reloads against missing items</li>\n</ul>\n","date_published":"2025-12-19T16:53:31Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34031/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"  - make target keys unique","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.2.2","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34031/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Changed from JSON serialization to core.serialize and core.deserialize</li>\n<li>Fixed a bug in the local function get_target_key(target)</li>\n<li>Optimized reload to iterate only over actually attached entities</li>\n</ul>\n","date_published":"2025-12-19T16:25:19Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34030/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.2.1","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.2.1","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34030/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<p>Add custom display positioning and multi-material support for item frames</p>\n","date_published":"2025-12-19T05:45:32Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34024/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"Add custom display positioning and multi-material support for item frames","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.2.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34024/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Optimized get_target_key and merge_properties for better performance</li>\n</ul>\n","date_published":"2025-12-19T05:29:54Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34023/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.1.1","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.1.1","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34023/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Support for attaching/detaching items to other enities then only to the player.</li>\n<li>Updated the readme to add  the new API calls</li>\n</ul>\n","date_published":"2025-12-18T19:58:56Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34009/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.1.0","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.1.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/34009/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<ul>\n<li>Improved readme</li>\n<li>Added blank.glb mesh</li>\n</ul>\n","date_published":"2025-12-17T21:10:38Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/33992/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.0.1","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.0.1","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/33992/"},{"author":{"avatar":"https://secure.gravatar.com/avatar/26d019ca684ff7823795907f522b28e2?s=64&d=retro&r=g","name":"mzel1982","url":"https://content.luanti.ru/users/mzel1982/"},"content_html":"<p><a href='https://content.luanti.ru/packages/mzel1982/radapi/releases/33991/'>Read more</a></p>","date_published":"2025-12-17T20:00:50Z","id":"https://content.luanti.ru/packages/mzel1982/radapi/releases/33991/","image":"https://content.luanti.ru/thumbnails/4/0a0f6a77dd.png","language":"en","summary":"v1.0.0","tags":["release"],"title":"\"Register, Attach & Detach\" updated: v1.0.0","url":"https://content.luanti.ru/packages/mzel1982/radapi/releases/33991/"}],"title":"ContentDB package updates","version":"https://jsonfeed.org/version/1"}
