{"id":135122,"date":"2026-06-08T02:28:35","date_gmt":"2026-06-07T23:28:35","guid":{"rendered":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/"},"modified":"2026-06-08T02:28:35","modified_gmt":"2026-06-07T23:28:35","slug":"sable-destructive","status":"publish","type":"mod","link":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/","title":{"rendered":"Sable: Destructive"},"content":{"rendered":"<p># Sable: Destructive<\/p>\n<p>**Sable: Destructive** is a NeoForge 1.21.1 add-on for Sable that turns physics blocks into something that can actually be **destroyed**. Crash a ship into the ground, set off a creeper next to a flying base, or drop an end crystal on a tank \u2014 Sable sub-levels now react to violence the way they should: chunks fly off, weak materials pulverize, and reinforced ones hold.<\/p>\n<p>&#8212;<\/p>\n<p>## What it does<\/p>\n<p>Out of the box, Sable gives you beautifully simulated physics blocks, but they are effectively indestructible. This add-on plugs directly into Sable&#8217;s collision and explosion callbacks and decides, on every meaningful impact, whether the affected blocks should:<\/p>\n<p>&#8211; **DETACH** \u2014 break off into a smaller, independent physics sub-level (default ~90% of impacts). The piece keeps flying, tumbling, and colliding on its own.<br \/>\n&#8211; **VANISH** \u2014 pulverize into particles + sound, with a fancy multi-layer effect (default ~10% of impacts). Used when the energy is high enough to truly shatter the material.<\/p>\n<p>The choice between the two is **not** a flat dice roll. It is biased by real physics:<\/p>\n<p>&#8211; Kinetic energy at the contact point (mass \u00d7 v\u00b2) vs. material toughness.<br \/>\n&#8211; Block brittleness (leaves and grass shatter; obsidian and netherite resist).<br \/>\n&#8211; A safety speed ceiling so absurdly fast impacts don&#8217;t spawn endless sub-levels.<\/p>\n<p>You see the underlying numbers right in-game with **F3 + H**:<\/p>\n<p>&#8220;`<br \/>\nMass: 540 kg<br \/>\nImpact strength: 20 m\/s<br \/>\n&#8220;`<\/p>\n<p>&#8212;<\/p>\n<p>## Features<\/p>\n<p>&#8211; \u2705 Full impact handling for **all 1.21.1 blocks**, with a sensible mass + toughness table.<br \/>\n&#8211; \u2705 Modded blocks default to the fragile end (clay-tier) so unknown blocks don&#8217;t become indestructible bricks.<br \/>\n&#8211; \u2705 Vanilla explosions are routed through the same path: **TNT, creepers, end crystals, beds-in-the-Nether** all damage Sable sub-levels.<br \/>\n&#8211; \u2705 World terrain is *also* affected, but only via VANISH (never DETACH), so the world never turns into a runaway physics sim. There&#8217;s a config flag to restrict damage to sub-level blocks only.<br \/>\n&#8211; \u2705 Fancy VANISH effect: 3-layer particles (block-dust with the actual block texture, POOF, CRIT chips) + block break sound + soft &#8220;whump&#8221;, with hard per-tick budgets so 500 simultaneous breaks don&#8217;t tank your FPS.<br \/>\n&#8211; \u2705 **Crash-safe**: every native call into Sable is wrapped, deferred to safe inter-tick windows, and guarded against `NaN`\/`Inf`, mid-step mutation, and cross-parent cluster errors. Years of &#8220;Minecraft just closed without a log&#8221; \u2014 fixed.<br \/>\n&#8211; \u2705 Cluster detach: blocks can break off in **chunks**, not strictly one at a time, for cinematic damage.<br \/>\n&#8211; \u2705 Runtime command system \u2014 no restart, no config file editing required.<br \/>\n&#8211; \u2705 **Persistent config** (since 1.2.0) at `config\/sabledestructive-common.toml`. Every value set via `\/sable-dv set \u2026` survives restarts, and editing the TOML on disk hot-reloads within ~250 ms.<br \/>\n&#8211; \u2705 **Hand-tuned block table** (since 1.2.0): ~70 of the most relevant 1.21.1 blocks \u2014 every wood species and the full stone family \u2014 carry their own mass and toughness instead of being lumped into one &#8220;wood&#8221; or &#8220;stone&#8221; bucket. Cherry is softer than oak. Mossy bricks crack a hair sooner than fresh ones. Slabs\/stairs\/walls\/fences\/doors\/trapdoors\/signs each get their own row. Other vanilla blocks continue to use the existing classification pipeline.<br \/>\n&#8211; \u2705 **Inertial penetration** (since 1.1.0): impacts no longer stop at the first block. The attacker&#8217;s kinetic energy is drained block-by-block along the motion direction by each consumed block&#8217;s break cost (`0.5 \u00b7 m \u00b7 v_thr\u00b2`). An obsidian hammer punches a deep crater into dirt and only chips the surface of stone, automatically.<br \/>\n&#8211; \u2705 **Real damage** (since 1.2.0): default damage roughly doubled, speed scales penetration depth and energy budget, and density actually matters \u2014 soft attackers no longer pretend to break hard surfaces.<br \/>\n&#8211; \u2705 **Self-damage** (since 1.2.0): when the attacker is much softer than the defender, the defender survives AND the attacker erodes its own contact face. Copper hammer vs obsidian wall: copper sheds, wall stands.<br \/>\n&#8211; \u2705 **Shockwave** (since 1.3.0): heavy hits radiate. When a big sub-level slams the ground hard, a stylised radial shockwave rolls outward from the contact point \u2014 dust ring sampled from the actual ground colour, layered &#8220;\u043f\u0448\u0448\u0448&#8221; sweep sound, then graded damage by distance. Plants and flowers trample out to the full radius, leaves shake loose probabilistically inside the inner 70%, and on truly massive impacts (\u2265 5 MJ) weak surface blocks (snow, fire, carpets, candles, redstone wire, vines) shatter in the inner core. Never touches structural masonry. 17 dedicated tunables, all live-reloadable.<\/p>\n<p>&#8212;<\/p>\n<p>## Commands<\/p>\n<p>All commands require op level 2.<\/p>\n<p>&#8220;`<br \/>\n\/sable-dv on                 enable the system<br \/>\n\/sable-dv off                disable the system<br \/>\n\/sable-dv toggle             flip enabled<br \/>\n\/sable-dv status             current enabled state<br \/>\n\/sable-dv config list        list every tunable + current value<br \/>\n\/sable-dv config get <name>  read one value<br \/>\n\/sable-dv config set <name> <value><br \/>\n\/sable-dv config reset <name><br \/>\n&#8220;`<\/p>\n<p>Tunables include `chanceDetach`, `chanceVanish`, `physicsBiasStrength`, `minBreakSpeed`, `absoluteMaxSpeed`, `detachSafeSpeedCeiling`, `maxDetachesPerSecond`, `maxActiveDetachedSubLevels`, `effects`, `fancyVanishEffect`, `affectOnlySubLevelBlocks`, and many more.<\/p>\n<p>&#8212;<\/p>\n<p>## Performance<\/p>\n<p>Designed to stay quiet when nothing is happening, and not to fall over when *everything* is happening:<\/p>\n<p>&#8211; Lock-free offer queue with atomic size counter and epoch-XOR dedup ring (8192 entries).<br \/>\n&#8211; Per-tick caps: 1024 offers, 600 vanish particles, 32 vanish effects.<br \/>\n&#8211; Spatial + temporal dedup on effects so big breaks don&#8217;t audio-clip.<br \/>\n&#8211; Auto-scaling under backpressure; falls back to vanilla `levelEvent(2001)` if the fancy pipeline is overloaded.<br \/>\n&#8211; DETACH is always deferred to a safe tick boundary \u2014 never executed while Sable&#8217;s physics system is mid-step.<\/p>\n<p>&#8212;<\/p>\n<p>## Requirements<\/p>\n<p>&#8211; Minecraft **1.21.1**<br \/>\n&#8211; NeoForge **21.1.227+**<br \/>\n&#8211; Sable **1.1.3+** (required dependency \u2014 the add-on does literally nothing without it)<br \/>\n&#8211; Sable&#8217;s bundled libraries (Sable Companion, Veil) \u2014 these ship inside Sable&#8217;s jar; you do not need to install them separately.<\/p>\n<p>&#8212;<\/p>\n<p>## Compatibility<\/p>\n<p>&#8211; Server + client. Effects are client-side; the destruction logic itself runs server-side.<br \/>\n&#8211; Should be compatible with most other mods. Modded blocks are auto-classified into a safe fragile tier.<\/p>\n<p>&#8212;<\/p>\n<p>## Known limitations<\/p>\n<p>&#8211; Block entities (chests, furnaces, etc.) are skipped by the world-terrain VANISH path on purpose, to avoid item-loss \/ NBT issues.<br \/>\n&#8211; Bedrock, barriers, and unbreakable blocks are skipped.<br \/>\n&#8211; Detach respects Sable&#8217;s parent boundaries \u2014 clusters never cross sub-levels.<\/p>\n<p>&#8212;<\/p>\n<p>## Addon API (since 1.1.0)<\/p>\n<p>Sable: Destructive ships a small, stable, SemVer-covered public API so other mods can teach it about *their* blocks. Unknown modded blocks otherwise fall back to a deliberately fragile clay-tier default \u2014 register an entry and your block participates in real impact \/ explosion physics with the mass and toughness *you* choose.<\/p>\n<p>The entire API lives in a single class: `com.destroynautics.sabledestructive.api.SableDestructiveAPI`. Anything outside that package is internal and may change between versions.<\/p>\n<p>### Quick example<\/p>\n<p>&#8220;`java<br \/>\n@Mod(&#8220;examplemod&#8221;)<br \/>\npublic class ExampleMod {<br \/>\n    public ExampleMod(IEventBus bus) {<br \/>\n        bus.addListener(this::onCommonSetup);<br \/>\n    }<br \/>\n    private void onCommonSetup(FMLCommonSetupEvent e) {<br \/>\n        \/\/ Direct Block reference (recommended, type-safe):<br \/>\n        SableDestructiveAPI.register(<br \/>\n            ExampleBlocks.MITHRIL_BLOCK.get(),<br \/>\n            8500.0,                                    \/\/ mass in kg<br \/>\n            SableDestructiveAPI.Tier.NETHERITE);<\/p>\n<p>        \/\/ By ResourceLocation (works even if the target Block class isn&#8217;t loaded \u2014<br \/>\n        \/\/ useful for optional cross-mod compat):<br \/>\n        SableDestructiveAPI.register(<br \/>\n            ResourceLocation.fromNamespaceAndPath(&#8220;othermod&#8221;, &#8220;arcane_brick&#8221;),<br \/>\n            3000.0,<br \/>\n            SableDestructiveAPI.Tier.STONE);<\/p>\n<p>        \/\/ Custom raw values (advanced):<br \/>\n        SableDestructiveAPI.register(<br \/>\n            ExampleBlocks.FOAM_PANEL.get(),<br \/>\n            40.0,                                      \/\/ very light (kg)<br \/>\n            0.8);                                      \/\/ very fragile (~8 toughness units)<\/p>\n<p>        \/\/ Bedrock-equivalent:<br \/>\n        SableDestructiveAPI.registerUnbreakable(ExampleBlocks.WARDSTONE.get());<br \/>\n    }<br \/>\n}<br \/>\n&#8220;`<\/p>\n<p>### Tier presets<\/p>\n<p>Use `SableDestructiveAPI.Tier` instead of magic numbers \u2014 your blocks then stay balanced relative to vanilla as the mod&#8217;s defaults evolve.<\/p>\n<p>| Tier | Toughness (units) | Vanilla example |<br \/>\n|&#8212;|&#8212;:|&#8212;|<br \/>\n| `PAPER` | 10 | flowers, candles |<br \/>\n| `LEAF` | 15 | leaves, vines |<br \/>\n| `EARTH` | 20 | dirt, sand, gravel |<br \/>\n| `CLOTH` | 30 | wool, hay, cobwebs |<br \/>\n| `SOFT` | 40 | sponge, slime, snow |<br \/>\n| `CLAY` | 60 | clay, ice, terracotta |<br \/>\n| `WOOD` | 120 | logs, planks |<br \/>\n| `STONE` | 200 | stone, cobble |<br \/>\n| `HARD_STONE` | 280 | deepslate |<br \/>\n| `METAL_SOFT` | 340 | gold, copper |<br \/>\n| `METAL` | 420 | iron, anvil |<br \/>\n| `GEM` | 520 | diamond, emerald |<br \/>\n| `OBSIDIAN` | 700 | obsidian |<br \/>\n| `NETHERITE` | 1000 | netherite, ancient debris |<br \/>\n| `REINFORCED` | 2000 | reinforced deepslate |<br \/>\n| `UNBREAKABLE` | \u221e | bedrock, barrier |<\/p>\n<p>### Method reference<\/p>\n<p>&#8220;`java<br \/>\n\/\/ Register \/ override<br \/>\nSableDestructiveAPI.register(Block, double massKg, double breakSpeedMs)<br \/>\nSableDestructiveAPI.register(Block, double massKg, Tier tier)<br \/>\nSableDestructiveAPI.registerUnbreakable(Block)<\/p>\n<p>\/\/ By ResourceLocation (optional cross-mod compat)<br \/>\nSableDestructiveAPI.register(ResourceLocation, double massKg, double breakSpeedMs)<br \/>\nSableDestructiveAPI.register(ResourceLocation, double massKg, Tier tier)<br \/>\nSableDestructiveAPI.registerUnbreakable(ResourceLocation)<\/p>\n<p>\/\/ Inspect \/ remove<br \/>\nboolean SableDestructiveAPI.isRegistered(Block)<br \/>\nvoid    SableDestructiveAPI.unregister(Block)<\/p>\n<p>\/\/ Read-only queries (e.g. for your own tooltips \/ ballistics)<br \/>\ndouble  SableDestructiveAPI.getMassKg(BlockState)<br \/>\ndouble  SableDestructiveAPI.getBreakSpeedMs(BlockState)<br \/>\ndouble  SableDestructiveAPI.getToughnessUnits(BlockState)   \/\/ m\/s \u00d7 10<br \/>\n&#8220;`<\/p>\n<p>### Notes<\/p>\n<p>&#8211; **Thread-safe.** Call from any thread; safe during mod loading and at runtime.<br \/>\n&#8211; **Last write wins.** Re-registering the same block replaces the previous entry.<br \/>\n&#8211; **Idempotent.** Multiple calls with the same arguments are harmless.<br \/>\n&#8211; **Mass** is in kilograms; the block is a 1m\u00b3 cube. Mass affects explosion kick scaling and diagnostics, not the break decision itself \u2014 that one is purely break-speed (m\/s).<br \/>\n&#8211; **F3+H** tooltip displays `Toughness: N units` where `N = breakSpeedMs \u00d7 10`.<\/p>\n<p>### Soft dependency setup<\/p>\n<p>Add Sable: Destructive as an *optional* runtime dependency in your `neoforge.mods.toml` so your mod loads either way:<\/p>\n<p>&#8220;`toml<br \/>\n[[dependencies.examplemod]]<br \/>\nmodId = &#8220;sabledestructive&#8221;<br \/>\ntype  = &#8220;optional&#8221;<br \/>\nversionRange = &#8220;1.1.0,)&#8221;<br \/>\nordering = &#8220;AFTER&#8221;<br \/>\nside = &#8220;BOTH&#8221;<br \/>\n&#8220;`<\/p>\n<p>Then guard your registration call so it doesn&#8217;t NoClassDefFoundError when Sable: Destructive isn&#8217;t installed:<\/p>\n<p>&#8220;`java<br \/>\nif (ModList.get().isLoaded(&#8220;sabledestructive&#8221;)) {<br \/>\n    ExampleSableCompat.register();   \/\/ wraps the SableDestructiveAPI calls<br \/>\n}<br \/>\n&#8220;`<\/p>\n<p>&#8212;<\/p>\n<p>## Credits<\/p>\n<p>&#8211; **Author \/ code**: Xylos_Official<br \/>\n&#8211; **Visuals**: Viaquelt<br \/>\n&#8211; **Built on top of**: [Sable by ryanhcode<\/p>\n<p>&#8212;<\/p>\n<p>## License<\/p>\n<p>MIT.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sable: Destructive makes Sable physics blocks actually break. Real kinetic energy, inertial penetration, density-aware self-damage, radial shockwaves on heavy hits \u2014 fast hammers dig deep into dirt, soft hammers shatter against stone, big drops radiate.<\/p>\n","protected":false},"featured_media":135123,"template":"","meta":{"_minecraft_slug":"sable-destructive","_minecraft_project_id":"s8kSCCgD","_minecraft_author":"Xylos_Official","_minecraft_license":"MIT","_minecraft_downloads":1094,"_minecraft_follows":17,"_minecraft_client_side":"required","_minecraft_server_side":"required","_minecraft_storage_type":"zip","_minecraft_archive_name":"sable-destructive.zip","_minecraft_size_bytes":744119,"_minecraft_version_count":4,"_minecraft_updated_at":"2026-05-16T13:41:25.690836Z","_minecraft_date_created":"2026-05-04T16:57:44.905834Z","_minecraft_date_modified":"2026-04-25T18:01:49.996422Z","_minecraft_project_url":"https:\/\/modrinth.com\/mod\/sable-destructive","_minecraft_icon_attachment_id":135123,"_minecraft_imported_at":"2026-06-07T23:28:36+00:00","_minecraft_import_hash":"ea33223fcf89af08933eb2f346b64d9b","_minecraft_versions":"","_minecraft_links":"","_minecraft_gallery":"","_minecraft_api_metadata":""},"mod_category":[87,89,158,123],"mod_loader":[160],"minecraft_version":[37],"class_list":["post-135122","mod","type-mod","status-publish","has-post-thumbnail","hentry","mod_category-adventure","mod_category-game-mechanics","mod_category-neoforge","mod_category-technology","mod_loader-neoforge","minecraft_version-1-21-1"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Sable: Destructive - Minecraft<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sable: Destructive - Minecraft\" \/>\n<meta property=\"og:description\" content=\"Sable: Destructive makes Sable physics blocks actually break. Real kinetic energy, inertial penetration, density-aware self-damage, radial shockwaves on heavy hits \u2014 fast hammers dig deep into dirt, soft hammers shatter against stone, big drops radiate.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/\" \/>\n<meta property=\"og:site_name\" content=\"Minecraft\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/\",\"name\":\"Sable: Destructive - Minecraft\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/sable-destructive-icon-5db77840057d742fa9c979216f0d985216a04ed4_96.webp\",\"datePublished\":\"2026-06-07T23:28:35+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/#primaryimage\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/sable-destructive-icon-5db77840057d742fa9c979216f0d985216a04ed4_96.webp\",\"contentUrl\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/sable-destructive-icon-5db77840057d742fa9c979216f0d985216a04ed4_96.webp\",\"width\":96,\"height\":96},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/sable-destructive\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mods\",\"item\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/mods\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Sable: Destructive\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/#website\",\"url\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/\",\"name\":\"Minecraft\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vpesports.com\\\/minecraft\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sable: Destructive - Minecraft","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/","og_locale":"en_US","og_type":"article","og_title":"Sable: Destructive - Minecraft","og_description":"Sable: Destructive makes Sable physics blocks actually break. Real kinetic energy, inertial penetration, density-aware self-damage, radial shockwaves on heavy hits \u2014 fast hammers dig deep into dirt, soft hammers shatter against stone, big drops radiate.","og_url":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/","og_site_name":"Minecraft","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/","url":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/","name":"Sable: Destructive - Minecraft","isPartOf":{"@id":"https:\/\/vpesports.com\/minecraft\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/#primaryimage"},"image":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/#primaryimage"},"thumbnailUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/sable-destructive-icon-5db77840057d742fa9c979216f0d985216a04ed4_96.webp","datePublished":"2026-06-07T23:28:35+00:00","breadcrumb":{"@id":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/#primaryimage","url":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/sable-destructive-icon-5db77840057d742fa9c979216f0d985216a04ed4_96.webp","contentUrl":"https:\/\/vpesports.com\/minecraft\/wp-content\/uploads\/2026\/06\/sable-destructive-icon-5db77840057d742fa9c979216f0d985216a04ed4_96.webp","width":96,"height":96},{"@type":"BreadcrumbList","@id":"https:\/\/vpesports.com\/minecraft\/mods\/sable-destructive\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vpesports.com\/minecraft\/"},{"@type":"ListItem","position":2,"name":"Mods","item":"https:\/\/vpesports.com\/minecraft\/mods\/"},{"@type":"ListItem","position":3,"name":"Sable: Destructive"}]},{"@type":"WebSite","@id":"https:\/\/vpesports.com\/minecraft\/#website","url":"https:\/\/vpesports.com\/minecraft\/","name":"Minecraft","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vpesports.com\/minecraft\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod\/135122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod"}],"about":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/types\/mod"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media\/135123"}],"wp:attachment":[{"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/media?parent=135122"}],"wp:term":[{"taxonomy":"mod_category","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_category?post=135122"},{"taxonomy":"mod_loader","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/mod_loader?post=135122"},{"taxonomy":"minecraft_version","embeddable":true,"href":"https:\/\/vpesports.com\/minecraft\/wp-json\/wp\/v2\/minecraft_version?post=135122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}