{"product_id":"realistic-smoke-grenade-fivem-standalone","title":"REALISTIC SMOKE GRENADE FIVEM | STANDALONE","description":"\u003cstyle\u003e\n  \/* =========================================================\n     FIVEM-LAB — AK47 REALISTIC SMOKE GRENADE\n     STANDALONE \/ VOLUMETRIC SMOKE \/ MULTIPLAYER SYNC\n     ========================================================= *\/\n\n  .fml-smoke {\n    --gold:#ffd700;\n    --white:#ffffff;\n    --black:#050505;\n    --text:rgba(255,255,255,.92);\n    --muted:rgba(255,255,255,.66);\n    --dim:rgba(255,255,255,.42);\n    --line:rgba(255,255,255,.10);\n    --line-soft:rgba(255,255,255,.055);\n    --gold-line:rgba(255,215,0,.34);\n    --panel:rgba(255,255,255,.022);\n    --green:#6be5a7;\n\n    width:100%;\n    max-width:1180px;\n    margin:0 auto;\n    padding:18px 0 88px;\n\n    color:var(--text);\n    background:transparent;\n    font-family:inherit;\n    font-size:16px;\n    line-height:1.7;\n  }\n\n  .fml-smoke,\n  .fml-smoke *,\n  .fml-smoke *::before,\n  .fml-smoke *::after {\n    box-sizing:border-box;\n  }\n\n  .fml-smoke h2,\n  .fml-smoke h3,\n  .fml-smoke p,\n  .fml-smoke dl,\n  .fml-smoke dt,\n  .fml-smoke dd,\n  .fml-smoke ol {\n    margin:0;\n  }\n\n  .fml-smoke ol {\n    padding:0;\n  }\n\n  .fml-smoke a {\n    color:inherit;\n  }\n\n  .fml-smoke ::selection {\n    color:#050505;\n    background:var(--gold);\n  }\n\n  .fml-smoke code {\n    padding:2px 6px;\n\n    color:var(--gold);\n    background:rgba(255,215,0,.055);\n\n    border:1px solid rgba(255,215,0,.18);\n    border-radius:3px;\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n  }\n\n\n  \/* =========================================================\n     HERO\n     ========================================================= *\/\n\n  .fml-smoke__hero {\n    position:relative;\n    isolation:isolate;\n    overflow:hidden;\n\n    display:grid;\n    grid-template-columns:minmax(0,1.03fr) minmax(330px,.72fr);\n    gap:clamp(28px,5vw,64px);\n    align-items:center;\n\n    padding:clamp(36px,5.5vw,72px);\n\n    border:1px solid var(--line);\n    border-top-color:var(--gold-line);\n    border-radius:7px;\n\n    background:\n      radial-gradient(\n        circle at 91% 5%,\n        rgba(255,215,0,.14),\n        transparent 30%\n      ),\n      linear-gradient(\n        135deg,\n        rgba(255,215,0,.034),\n        transparent 48%\n      ),\n      rgba(0,0,0,.18);\n  }\n\n  .fml-smoke__hero::before {\n    content:\"\";\n    position:absolute;\n    top:0;\n    left:0;\n\n    width:min(440px,72%);\n    height:2px;\n\n    background:var(--gold);\n    box-shadow:0 0 24px rgba(255,215,0,.36);\n  }\n\n  .fml-smoke__eyebrow {\n    display:flex;\n    flex-wrap:wrap;\n    gap:8px 16px;\n\n    margin-bottom:24px;\n\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:10px;\n    font-weight:900;\n    letter-spacing:.15em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__eyebrow span + span {\n    color:var(--dim);\n  }\n\n  .fml-smoke__eyebrow span + span::before {\n    content:\"\/\";\n    margin-right:16px;\n    color:var(--gold);\n  }\n\n  .fml-smoke__title {\n    margin:0 !important;\n\n    color:var(--white) !important;\n\n    font-size:clamp(42px,5.8vw,74px) !important;\n    font-weight:950 !important;\n    letter-spacing:-.052em;\n    line-height:.95 !important;\n\n    text-wrap:balance;\n  }\n\n  .fml-smoke__lead {\n    max-width:800px;\n    margin-top:26px !important;\n\n    color:var(--muted) !important;\n\n    font-size:clamp(18px,1.9vw,23px);\n    font-weight:600;\n    line-height:1.58;\n  }\n\n  .fml-smoke__lead strong {\n    color:var(--white);\n  }\n\n  .fml-smoke__badges {\n    display:flex;\n    flex-wrap:wrap;\n    gap:10px;\n\n    margin-top:31px;\n  }\n\n  .fml-smoke__badge {\n    display:inline-flex;\n    align-items:center;\n\n    min-height:37px;\n    padding:0 13px;\n\n    color:var(--white);\n    background:rgba(255,255,255,.025);\n\n    border:1px solid var(--line);\n    border-radius:3px;\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:900;\n    letter-spacing:.09em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__badge--gold {\n    color:#050505;\n    background:var(--gold);\n    border-color:var(--gold);\n  }\n\n  .fml-smoke__meta {\n    display:flex;\n    flex-wrap:wrap;\n    gap:10px 25px;\n\n    margin-top:28px;\n    padding-top:22px;\n\n    border-top:1px solid var(--line);\n  }\n\n  .fml-smoke__meta span {\n    position:relative;\n    padding-left:17px;\n\n    color:var(--dim);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:850;\n    letter-spacing:.09em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__meta span::before {\n    content:\"\";\n    position:absolute;\n    top:.7em;\n    left:0;\n\n    width:7px;\n    height:1px;\n\n    background:var(--gold);\n  }\n\n\n  \/* HERO MEDIA *\/\n\n  .fml-smoke__media {\n    position:relative;\n    overflow:hidden;\n\n    min-height:400px;\n\n    border:1px solid var(--line);\n    border-radius:5px;\n\n    background:#050505;\n  }\n\n  .fml-smoke__media img {\n    display:block;\n\n    width:100%;\n    height:100%;\n    min-height:400px;\n\n    object-fit:cover;\n  }\n\n  .fml-smoke__media::after {\n    content:\"\";\n    position:absolute;\n    inset:0;\n\n    pointer-events:none;\n\n    background:\n      linear-gradient(\n        180deg,\n        transparent 52%,\n        rgba(0,0,0,.82)\n      );\n  }\n\n  .fml-smoke__media-tag {\n    position:absolute;\n    z-index:2;\n    right:15px;\n    bottom:14px;\n    left:15px;\n\n    color:rgba(255,255,255,.72);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:900;\n    letter-spacing:.10em;\n    text-transform:uppercase;\n  }\n\n\n  \/* =========================================================\n     SECTIONS\n     ========================================================= *\/\n\n  .fml-smoke__section {\n    padding:clamp(54px,7vw,88px) 0;\n    border-bottom:1px solid var(--line);\n  }\n\n  .fml-smoke__head {\n    display:grid;\n    grid-template-columns:minmax(125px,.24fr) minmax(0,1fr);\n    gap:clamp(26px,5vw,68px);\n    align-items:start;\n  }\n\n  .fml-smoke__index {\n    padding-top:7px;\n\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:10px;\n    font-weight:900;\n    letter-spacing:.12em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__kicker {\n    margin-bottom:13px;\n\n    color:var(--dim);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:850;\n    letter-spacing:.14em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__section-title {\n    max-width:950px;\n    margin:0 !important;\n\n    color:var(--white) !important;\n\n    font-size:clamp(29px,3.9vw,47px) !important;\n    font-weight:950 !important;\n    letter-spacing:-.04em;\n    line-height:1.05 !important;\n\n    text-wrap:balance;\n  }\n\n  .fml-smoke__intro {\n    max-width:900px;\n    margin-top:20px !important;\n\n    color:var(--muted) !important;\n\n    font-size:clamp(16px,1.45vw,19px);\n    line-height:1.74;\n  }\n\n  .fml-smoke__statement {\n    display:grid;\n    grid-template-columns:minmax(0,1fr) auto;\n    gap:30px;\n    align-items:end;\n\n    margin-top:42px;\n    padding-top:27px;\n\n    border-top:1px solid var(--line);\n  }\n\n  .fml-smoke__statement p {\n    max-width:850px;\n\n    color:var(--text) !important;\n\n    font-size:clamp(18px,2vw,23px);\n    font-weight:650;\n    line-height:1.5;\n  }\n\n  .fml-smoke__code-label {\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:10px;\n    font-weight:900;\n    letter-spacing:.12em;\n    white-space:nowrap;\n  }\n\n\n  \/* =========================================================\n     STATS\n     ========================================================= *\/\n\n  .fml-smoke__stats {\n    display:grid;\n    grid-template-columns:repeat(4,minmax(0,1fr));\n    gap:12px;\n\n    margin-top:42px;\n  }\n\n  .fml-smoke__stat {\n    min-width:0;\n    padding:23px;\n\n    border:1px solid var(--line);\n    border-top-color:var(--gold-line);\n    border-radius:4px;\n\n    background:var(--panel);\n  }\n\n  .fml-smoke__stat small {\n    display:block;\n    margin-bottom:17px;\n\n    color:var(--dim);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:8px;\n    font-weight:900;\n    letter-spacing:.1em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__stat strong {\n    display:block;\n\n    color:var(--gold);\n\n    font-size:clamp(24px,2.8vw,36px);\n    font-weight:950;\n    letter-spacing:-.045em;\n    line-height:1;\n  }\n\n  .fml-smoke__stat span {\n    display:block;\n    margin-top:10px;\n\n    color:var(--muted);\n\n    font-size:12px;\n    line-height:1.5;\n  }\n\n\n  \/* =========================================================\n     CARDS\n     ========================================================= *\/\n\n  .fml-smoke__grid {\n    display:grid;\n    grid-template-columns:repeat(2,minmax(0,1fr));\n    gap:14px;\n\n    margin-top:42px;\n  }\n\n  .fml-smoke__card {\n    position:relative;\n    overflow:hidden;\n\n    min-width:0;\n    padding:clamp(24px,3vw,31px);\n\n    border:1px solid var(--line);\n    border-radius:4px;\n\n    background:var(--panel);\n\n    transition:\n      transform .18s ease,\n      border-color .18s ease,\n      background .18s ease;\n  }\n\n  .fml-smoke__card::before {\n    content:\"\";\n    position:absolute;\n    top:0;\n    left:0;\n\n    width:0;\n    height:1px;\n\n    background:var(--gold);\n\n    transition:width .22s ease;\n  }\n\n  .fml-smoke__card:hover {\n    transform:translateY(-2px);\n    border-color:var(--gold-line);\n    background:rgba(255,255,255,.038);\n  }\n\n  .fml-smoke__card:hover::before {\n    width:100%;\n  }\n\n  .fml-smoke__card-top {\n    display:flex;\n    justify-content:space-between;\n    gap:14px;\n\n    margin-bottom:26px;\n  }\n\n  .fml-smoke__number {\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:10px;\n    font-weight:950;\n  }\n\n  .fml-smoke__label {\n    color:var(--dim);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:8px;\n    font-weight:800;\n    letter-spacing:.09em;\n    text-align:right;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__card h3 {\n    margin:0 0 11px !important;\n\n    color:var(--white) !important;\n\n    font-size:clamp(20px,2vw,25px) !important;\n    font-weight:950 !important;\n    letter-spacing:-.03em;\n    line-height:1.15 !important;\n  }\n\n  .fml-smoke__card p {\n    color:var(--muted) !important;\n\n    font-size:14px;\n    line-height:1.7;\n  }\n\n\n  \/* =========================================================\n     PHASES\n     ========================================================= *\/\n\n  .fml-smoke__phases {\n    display:grid;\n    grid-template-columns:repeat(3,minmax(0,1fr));\n    gap:12px;\n\n    margin-top:42px;\n  }\n\n  .fml-smoke__phase {\n    min-width:0;\n    padding:24px;\n\n    border:1px solid var(--line);\n    border-top-color:var(--gold-line);\n    border-radius:4px;\n\n    background:var(--panel);\n  }\n\n  .fml-smoke__phase small {\n    display:block;\n    margin-bottom:27px;\n\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:900;\n    letter-spacing:.08em;\n  }\n\n  .fml-smoke__phase h3 {\n    margin:0 0 9px !important;\n\n    color:var(--white) !important;\n\n    font-size:19px !important;\n    font-weight:950 !important;\n  }\n\n  .fml-smoke__phase p {\n    color:var(--muted) !important;\n\n    font-size:13px;\n    line-height:1.65;\n  }\n\n\n  \/* =========================================================\n     SYNC\n     ========================================================= *\/\n\n  .fml-smoke__sync {\n    display:grid;\n    grid-template-columns:minmax(0,1fr) 260px;\n    gap:16px;\n\n    margin-top:42px;\n  }\n\n  .fml-smoke__sync-main,\n  .fml-smoke__sync-side {\n    padding:clamp(26px,4vw,38px);\n\n    border:1px solid var(--line);\n    border-radius:5px;\n\n    background:var(--panel);\n  }\n\n  .fml-smoke__sync-main {\n    border-color:var(--gold-line);\n\n    background:\n      linear-gradient(\n        130deg,\n        rgba(255,215,0,.055),\n        transparent 55%\n      ),\n      var(--panel);\n  }\n\n  .fml-smoke__sync small {\n    display:block;\n    margin-bottom:11px;\n\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:900;\n    letter-spacing:.11em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__sync h3 {\n    margin:0 0 13px !important;\n\n    color:var(--white) !important;\n\n    font-size:clamp(22px,3vw,32px) !important;\n    font-weight:950 !important;\n    letter-spacing:-.035em;\n    line-height:1.1 !important;\n  }\n\n  .fml-smoke__sync p {\n    color:var(--muted) !important;\n\n    font-size:14px;\n    line-height:1.72;\n  }\n\n  .fml-smoke__sync-side {\n    display:flex;\n    flex-direction:column;\n    justify-content:space-between;\n\n    min-height:230px;\n  }\n\n  .fml-smoke__sync-side strong {\n    color:var(--gold);\n\n    font-size:clamp(27px,4vw,42px);\n    font-weight:950;\n    letter-spacing:-.045em;\n    line-height:1;\n  }\n\n\n  \/* =========================================================\n     GALLERY\n     ========================================================= *\/\n\n  .fml-smoke__gallery {\n    display:grid;\n    grid-template-columns:repeat(2,minmax(0,1fr));\n    gap:14px;\n\n    margin-top:42px;\n  }\n\n  .fml-smoke__image {\n    overflow:hidden;\n\n    border:1px solid var(--line);\n    border-radius:5px;\n\n    background:#050505;\n  }\n\n  .fml-smoke__image img {\n    display:block;\n\n    width:100%;\n    height:100%;\n    min-height:290px;\n\n    object-fit:cover;\n\n    transition:transform .3s ease;\n  }\n\n  .fml-smoke__image:hover img {\n    transform:scale(1.015);\n  }\n\n\n  \/* =========================================================\n     TECH\n     ========================================================= *\/\n\n  .fml-smoke__terminal {\n    margin-top:42px;\n    overflow:hidden;\n\n    border:1px solid var(--gold-line);\n    border-radius:4px;\n\n    background:\n      linear-gradient(\n        180deg,\n        rgba(255,215,0,.026),\n        transparent 30%\n      ),\n      rgba(0,0,0,.20);\n  }\n\n  .fml-smoke__terminal-head {\n    display:flex;\n    flex-wrap:wrap;\n    justify-content:space-between;\n    gap:10px 24px;\n\n    padding:14px 18px;\n\n    border-bottom:1px solid var(--line);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:900;\n    letter-spacing:.09em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__terminal-head strong {\n    color:var(--gold);\n  }\n\n  .fml-smoke__terminal-head span {\n    color:var(--dim);\n  }\n\n  .fml-smoke__spec-grid {\n    display:grid;\n    grid-template-columns:repeat(2,minmax(0,1fr));\n  }\n\n  .fml-smoke__spec {\n    min-width:0;\n    padding:clamp(23px,3.5vw,32px);\n\n    border-right:1px solid var(--line);\n    border-bottom:1px solid var(--line);\n  }\n\n  .fml-smoke__spec:nth-child(2n) {\n    border-right:0;\n  }\n\n  .fml-smoke__spec:nth-last-child(-n + 2) {\n    border-bottom:0;\n  }\n\n  .fml-smoke__spec dt {\n    margin-bottom:11px;\n\n    color:var(--dim);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:8px;\n    font-weight:900;\n    letter-spacing:.12em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__spec-value {\n    display:block;\n\n    color:var(--white);\n\n    font-size:clamp(19px,2.3vw,28px);\n    font-weight:950;\n    letter-spacing:-.035em;\n    line-height:1.1;\n  }\n\n  .fml-smoke__spec:first-child .fml-smoke__spec-value {\n    color:var(--gold);\n  }\n\n  .fml-smoke__spec-copy {\n    display:block;\n    margin-top:9px;\n\n    color:var(--muted);\n\n    font-size:12px;\n    line-height:1.58;\n  }\n\n\n  \/* =========================================================\n     INSTALL\n     ========================================================= *\/\n\n  .fml-smoke__install {\n    margin-top:42px;\n    overflow:hidden;\n\n    border:1px solid var(--line);\n    border-left:3px solid var(--gold);\n    border-radius:4px;\n\n    background:\n      linear-gradient(\n        110deg,\n        rgba(255,215,0,.05),\n        transparent 50%\n      ),\n      rgba(0,0,0,.14);\n  }\n\n  .fml-smoke__install-head {\n    padding:14px 20px;\n\n    color:var(--gold);\n\n    border-bottom:1px solid var(--line);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:900;\n    letter-spacing:.11em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__steps {\n    display:grid;\n    list-style:none;\n    counter-reset:smoke-step;\n  }\n\n  .fml-smoke__steps li {\n    display:grid;\n    grid-template-columns:65px minmax(0,1fr);\n    gap:18px;\n\n    padding:21px 23px;\n\n    color:var(--muted);\n\n    border-bottom:1px solid var(--line-soft);\n\n    counter-increment:smoke-step;\n\n    font-size:14px;\n    line-height:1.65;\n  }\n\n  .fml-smoke__steps li:last-child {\n    border-bottom:0;\n  }\n\n  .fml-smoke__steps li::before {\n    content:\"[\" counter(smoke-step, decimal-leading-zero) \"]\";\n\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:10px;\n    font-weight:900;\n  }\n\n\n  \/* =========================================================\n     LINKS\n     ========================================================= *\/\n\n  .fml-smoke__links {\n    display:flex;\n    flex-wrap:wrap;\n    gap:12px;\n\n    margin-top:30px;\n  }\n\n  .fml-smoke__link {\n    display:inline-flex;\n    align-items:center;\n    justify-content:center;\n    gap:10px;\n\n    min-height:46px;\n    padding:0 18px;\n\n    color:var(--white) !important;\n    background:rgba(255,255,255,.025);\n\n    border:1px solid var(--line);\n    border-radius:4px;\n\n    font-size:11px;\n    font-weight:900;\n    letter-spacing:.04em;\n    text-decoration:none !important;\n    text-transform:uppercase;\n\n    transition:\n      transform .18s ease,\n      border-color .18s ease,\n      color .18s ease;\n  }\n\n  .fml-smoke__link:hover {\n    transform:translateY(-2px);\n    color:var(--gold) !important;\n    border-color:var(--gold-line);\n  }\n\n  .fml-smoke__link--gold {\n    color:#050505 !important;\n    background:var(--gold);\n    border-color:var(--gold);\n  }\n\n  .fml-smoke__link--gold:hover {\n    color:#050505 !important;\n    border-color:var(--gold);\n  }\n\n\n  \/* =========================================================\n     CLOSING\n     ========================================================= *\/\n\n  .fml-smoke__closing {\n    position:relative;\n    overflow:hidden;\n\n    margin-top:clamp(62px,8vw,100px);\n    padding:clamp(38px,6vw,72px);\n\n    border-top:1px solid var(--gold-line);\n    border-bottom:1px solid var(--line);\n\n    background:\n      radial-gradient(\n        circle at 100% 0,\n        rgba(255,215,0,.12),\n        transparent 34%\n      ),\n      rgba(255,255,255,.012);\n  }\n\n  .fml-smoke__closing-label {\n    margin-bottom:19px;\n\n    color:var(--gold);\n\n    font-family:\n      ui-monospace,\n      SFMono-Regular,\n      Menlo,\n      Monaco,\n      Consolas,\n      monospace;\n\n    font-size:9px;\n    font-weight:900;\n    letter-spacing:.13em;\n    text-transform:uppercase;\n  }\n\n  .fml-smoke__closing h2 {\n    max-width:950px;\n    margin:0 !important;\n\n    color:var(--white) !important;\n\n    font-size:clamp(31px,4.4vw,52px) !important;\n    font-weight:950 !important;\n    letter-spacing:-.045em;\n    line-height:1.03 !important;\n\n    text-wrap:balance;\n  }\n\n  .fml-smoke__closing p {\n    max-width:890px;\n    margin-top:20px !important;\n\n    color:var(--muted) !important;\n\n    font-size:16px;\n    line-height:1.74;\n  }\n\n  .fml-smoke__final {\n    margin-top:clamp(44px,7vw,72px);\n\n    color:var(--white);\n\n    font-size:clamp(25px,3.7vw,44px);\n    font-weight:950;\n    letter-spacing:-.043em;\n    line-height:1.08;\n    text-align:center;\n\n    text-wrap:balance;\n  }\n\n  .fml-smoke__final em {\n    color:var(--gold);\n    font-style:normal;\n  }\n\n\n  \/* =========================================================\n     RESPONSIVE\n     ========================================================= *\/\n\n  @media (max-width:1000px) {\n    .fml-smoke__hero {\n      grid-template-columns:1fr;\n    }\n\n    .fml-smoke__media,\n    .fml-smoke__media img {\n      min-height:430px;\n    }\n\n    .fml-smoke__stats {\n      grid-template-columns:repeat(2,minmax(0,1fr));\n    }\n  }\n\n  @media (max-width:900px) {\n    .fml-smoke__head {\n      grid-template-columns:1fr;\n      gap:15px;\n    }\n\n    .fml-smoke__sync {\n      grid-template-columns:1fr;\n    }\n  }\n\n  @media (max-width:680px) {\n    .fml-smoke {\n      padding-top:8px;\n    }\n\n    .fml-smoke__hero {\n      padding:29px 20px;\n    }\n\n    .fml-smoke__eyebrow {\n      display:grid;\n      gap:5px;\n    }\n\n    .fml-smoke__eyebrow span + span::before {\n      display:none;\n    }\n\n    .fml-smoke__media,\n    .fml-smoke__media img {\n      min-height:270px;\n    }\n\n    .fml-smoke__statement,\n    .fml-smoke__stats,\n    .fml-smoke__grid,\n    .fml-smoke__phases,\n    .fml-smoke__gallery,\n    .fml-smoke__spec-grid {\n      grid-template-columns:1fr;\n    }\n\n    .fml-smoke__code-label {\n      white-space:normal;\n    }\n\n    .fml-smoke__spec {\n      border-right:0;\n      border-bottom:1px solid var(--line);\n    }\n\n    .fml-smoke__spec:nth-last-child(-n + 2) {\n      border-bottom:1px solid var(--line);\n    }\n\n    .fml-smoke__spec:last-child {\n      border-bottom:0;\n    }\n\n    .fml-smoke__steps li {\n      grid-template-columns:46px minmax(0,1fr);\n      padding:19px;\n    }\n\n    .fml-smoke__links {\n      flex-direction:column;\n    }\n\n    .fml-smoke__link {\n      width:100%;\n    }\n\n    .fml-smoke__closing {\n      padding:36px 21px;\n    }\n  }\n\n  @media (prefers-reduced-motion:reduce) {\n    .fml-smoke *,\n    .fml-smoke *::before,\n    .fml-smoke *::after {\n      transition-duration:.01ms !important;\n      animation-duration:.01ms !important;\n    }\n  }\n\u003c\/style\u003e\n\n\n\u003carticle class=\"fml-smoke\"\u003e\n\n  \u003c!-- =======================================================\n       HERO\n       ======================================================= --\u003e\n\n  \u003cheader class=\"fml-smoke__hero\"\u003e\n\n    \u003cdiv\u003e\n\n      \u003cdiv class=\"fml-smoke__eyebrow\"\u003e\n        \u003cspan\u003eFiveM Standalone Script\u003c\/span\u003e\n        \u003cspan\u003eRealistic Smoke System\u003c\/span\u003e\n      \u003c\/div\u003e\n\n\n      \u003ch2 class=\"fml-smoke__title\"\u003e\n        Realistic Smoke Grenade\n      \u003c\/h2\u003e\n\n\n      \u003cp class=\"fml-smoke__lead\"\u003e\n        Vanilla smoke has one major problem:\n        \u003cstrong\u003eit looks like vanilla smoke.\u003c\/strong\u003e\n        Throw this one and the scene actually changes — a thick cloud grows\n        around the canister, fills the area, hangs there with weight and then\n        fades away instead of looking like somebody spawned the same particle\n        loop six times.\n      \u003c\/p\u003e\n\n\n      \u003cdiv class=\"fml-smoke__badges\"\u003e\n\n        \u003cspan class=\"fml-smoke__badge fml-smoke__badge--gold\"\u003e\n          Standalone\n        \u003c\/span\u003e\n\n        \u003cspan class=\"fml-smoke__badge\"\u003e\n          Volumetric Smoke\n        \u003c\/span\u003e\n\n        \u003cspan class=\"fml-smoke__badge\"\u003e\n          Multiplayer Sync\n        \u003c\/span\u003e\n\n        \u003cspan class=\"fml-smoke__badge\"\u003e\n          No Dependencies\n        \u003c\/span\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__meta\"\u003e\n        \u003cspan\u003e6 smoke emitters\u003c\/span\u003e\n        \u003cspan\u003e3-phase lifecycle\u003c\/span\u003e\n        \u003cspan\u003eLate-join sync\u003c\/span\u003e\n        \u003cspan\u003eDistance culling\u003c\/span\u003e\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__media\"\u003e\n\n      \u003cimg src=\"https:\/\/forum-cfx-re.akamaized.net\/original\/5X\/a\/e\/a\/5\/aea51c888881306c986e027e77f27bec1912931e.jpeg\" alt=\"Realistic Smoke Grenade FiveM standalone script\" loading=\"lazy\"\u003e\n\n      \u003cdiv class=\"fml-smoke__media-tag\"\u003e\n        Throw it · Watch it settle · Let the smoke take over\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/header\u003e\n\n\n  \u003c!-- =======================================================\n       THE DIFFERENCE\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        00 \/ The Difference\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          A smoke grenade should change the whole mood of the scene\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          Not one lonely puff. A cloud that actually looks like it belongs there.\n        \u003c\/h2\u003e\n\n\n        \u003cp class=\"fml-smoke__intro\"\u003e\n          The resource builds smoke from multiple emitters around the canister\n          instead of relying on one repeating effect. Small randomized puffs\n          help break up obvious looping patterns while ground checks keep the\n          smoke sitting where the terrain actually is.\n        \u003c\/p\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__statement\"\u003e\n\n      \u003cp\u003e\n        The result is simple: when somebody throws smoke during tactical RP,\n        the room, street or checkpoint suddenly feels different. Visibility\n        changes. Players react. The scene gets tension without needing another\n        giant UI or cutscene to tell everyone that something is happening.\n      \u003c\/p\u003e\n\n      \u003cspan class=\"fml-smoke__code-label\"\u003e\n        \/\/ THE CLOUD IS THE EFFECT\n      \u003c\/span\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__stats\"\u003e\n\n      \u003cdiv class=\"fml-smoke__stat\"\u003e\n\n        \u003csmall\u003ePrimary Emitters\u003c\/small\u003e\n\n        \u003cstrong\u003e6\u003c\/strong\u003e\n\n        \u003cspan\u003e\n          Staggered emitters build the main smoke volume.\n        \u003c\/span\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__stat\"\u003e\n\n        \u003csmall\u003eLifecycle\u003c\/small\u003e\n\n        \u003cstrong\u003e3 Phase\u003c\/strong\u003e\n\n        \u003cspan\u003e\n          Growth, dense coverage and dissipation.\n        \u003c\/span\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__stat\"\u003e\n\n        \u003csmall\u003eFramework\u003c\/small\u003e\n\n        \u003cstrong\u003eAny\u003c\/strong\u003e\n\n        \u003cspan\u003e\n          Standalone resource with no framework requirement.\n        \u003c\/span\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__stat\"\u003e\n\n        \u003csmall\u003eDependencies\u003c\/small\u003e\n\n        \u003cstrong\u003eNone\u003c\/strong\u003e\n\n        \u003cspan\u003e\n          No external dependency is listed.\n        \u003c\/span\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       SMOKE\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        01 \/ Smoke\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          This is where the script earns the “realistic” part\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          The cloud grows, moves with the terrain and avoids that obvious looping-particle look.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__grid\"\u003e\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e01\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003e6 Emitters · Volume\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eOne Canister, One Big Cloud\u003c\/h3\u003e\n\n        \u003cp\u003e\n          Six staggered emitters are positioned around the grenade to build a\n          more continuous smoke volume. That means fewer ugly gaps where one\n          effect ends and another suddenly restarts.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e02\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eRandom · Micro Puffs\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eThe Smoke Does Not Repeat Like a GIF\u003c\/h3\u003e\n\n        \u003cp\u003e\n          Randomized micro-puffs appear through the life of the cloud, helping\n          the effect feel less mechanical and a lot more alive when you're\n          standing next to it.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e03\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eGround · Raycast\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eIt Actually Respects the Ground\u003c\/h3\u003e\n\n        \u003cp\u003e\n          Ground-level raycasting helps position the smoke correctly over\n          asphalt, uneven terrain and slopes instead of leaving half the cloud\n          floating somewhere above the pavement.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e04\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eDense · Continuous\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eEnough Coverage to Change the Scene\u003c\/h3\u003e\n\n        \u003cp\u003e\n          At peak density, the cloud is designed to create strong visual\n          obstruction for tactical roleplay, training scenarios and staged\n          emergency-response scenes.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       LIFECYCLE\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        02 \/ Lifecycle\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          Smoke should arrive and leave like smoke\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          No instant full-size cloud. No disappearing act at the end.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__phases\"\u003e\n\n      \u003carticle class=\"fml-smoke__phase\"\u003e\n\n        \u003csmall\u003e01 \/ GROWTH\u003c\/small\u003e\n\n        \u003ch3\u003eIt Starts Small\u003c\/h3\u003e\n\n        \u003cp\u003e\n          The effect expands progressively from the initial ignition scale\n          toward the full configured smoke volume.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__phase\"\u003e\n\n        \u003csmall\u003e02 \/ DENSITY\u003c\/small\u003e\n\n        \u003ch3\u003eThen the Area Disappears\u003c\/h3\u003e\n\n        \u003cp\u003e\n          The cloud reaches its dense phase and holds meaningful visual\n          coverage instead of immediately fading after deployment.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__phase\"\u003e\n\n        \u003csmall\u003e03 \/ FADE\u003c\/small\u003e\n\n        \u003ch3\u003eThen It Leaves Properly\u003c\/h3\u003e\n\n        \u003cp\u003e\n          Smoke gradually thins and expands slightly while its opacity fades,\n          giving the effect a smoother end instead of suddenly switching off.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       PHYSICS\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        03 \/ Physics\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          The grenade needs to know where it actually landed\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          Track the projectile first. Spawn the smoke where the canister really stops.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__grid\"\u003e\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e01\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eFlight · Tracking\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eFollow the Grenade Through the Air\u003c\/h3\u003e\n\n        \u003cp\u003e\n          Thrown grenades and supported launcher projectiles can be tracked\n          while they are moving rather than guessing where the effect should\n          appear.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e02\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eRest · Detection\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eWait Until It Stops Rolling\u003c\/h3\u003e\n\n        \u003cp\u003e\n          The script can wait for the canister to come to rest before the main\n          synchronized cloud is deployed. Tiny detail. Massive difference when\n          you watch it happen.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e03\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eFallback · Event\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eFallback Detection Included\u003c\/h3\u003e\n\n        \u003cp\u003e\n          A server-side event fallback is included so fast-moving gameplay does\n          not rely on only one detection path.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e04\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eCustom · Weapons\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eMore Than One Smoke Weapon\u003c\/h3\u003e\n\n        \u003cp\u003e\n          The release lists support for the standard smoke grenade, smoke\n          launcher rounds, BZ Gas and configurable custom weapon entries.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       SYNC\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        04 \/ Sync\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          If one player sees smoke and another sees fresh air, the illusion is dead\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          Everybody should be looking at the same cloud.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__sync\"\u003e\n\n      \u003carticle class=\"fml-smoke__sync-main\"\u003e\n\n        \u003csmall\u003e\n          \/\/ SERVER-WIDE SYNC\n        \u003c\/small\u003e\n\n        \u003ch3\u003e\n          One active smoke state for the server.\n        \u003c\/h3\u003e\n\n        \u003cp\u003e\n          Active smoke clouds are synchronized across connected players with\n          duplicate-trigger protection. The goal is simple: when a grenade\n          changes visibility in a scene, everybody taking part in that scene\n          should experience the same thing.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003caside class=\"fml-smoke__sync-side\"\u003e\n\n        \u003csmall\u003e\n          Reconnect behavior\n        \u003c\/small\u003e\n\n        \u003cstrong\u003eLATE SYNC\u003c\/strong\u003e\n\n        \u003csmall\u003e\n          Active smoke can be restored with remaining duration\n        \u003c\/small\u003e\n\n      \u003c\/aside\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__grid\"\u003e\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e01\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eJoin · Reconnect\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eJoined Late? The Smoke Is Still There.\u003c\/h3\u003e\n\n        \u003cp\u003e\n          Newly spawned or reconnected players can receive currently active\n          smoke clouds with their elapsed phase and remaining lifetime taken\n          into account.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e02\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eCleanup · Memory\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eGone Means Gone\u003c\/h3\u003e\n\n        \u003cp\u003e\n          When the cloud expires — or the resource restarts — active smoke\n          state is cleaned from the server and client side instead of leaving\n          old effects hanging around forever.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       PERFORMANCE\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        05 \/ Performance\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          Dense smoke is cool. Rendering it across the whole map is not.\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          If the player cannot see the cloud from where they are, there is no reason to keep drawing it.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__grid\"\u003e\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e01\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003eRender Distance\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eDistance Culling\u003c\/h3\u003e\n\n        \u003cp\u003e\n          Smoke outside the configured render distance can be despawned on the\n          client and recreated if the player returns within range.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n\n      \u003carticle class=\"fml-smoke__card\"\u003e\n\n        \u003cdiv class=\"fml-smoke__card-top\"\u003e\n          \u003cspan class=\"fml-smoke__number\"\u003e02\u003c\/span\u003e\n          \u003cspan class=\"fml-smoke__label\"\u003e1000ms · Idle\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003ch3\u003eIt Does Not Need to Panic While Nothing Is Happening\u003c\/h3\u003e\n\n        \u003cp\u003e\n          The idle tick is described as sleeping at 1000ms, with more active\n          work focused around relevant weapons and nearby active smoke.\n        \u003c\/p\u003e\n\n      \u003c\/article\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       DAMAGE \/ FLEXIBILITY\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        06 \/ Control\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          Want smoke to be visual only? You can keep it that way.\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          Use the effect for atmosphere and tactical RP without forcing unwanted damage behavior.\n        \u003c\/h2\u003e\n\n\n        \u003cp class=\"fml-smoke__intro\"\u003e\n          A configuration option is provided to suppress weapon or gas damage\n          so the smoke can remain a non-lethal visual gameplay element when\n          that better fits the server's design.\n        \u003c\/p\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__statement\"\u003e\n\n      \u003cp\u003e\n        That makes the resource useful outside combat-heavy servers too:\n        police training, response scenarios, events, cinematics and other RP\n        scenes can use the cloud without automatically turning it into a damage\n        mechanic.\n      \u003c\/p\u003e\n\n      \u003cspan class=\"fml-smoke__code-label\"\u003e\n        \/\/ VISUAL OR GAMEPLAY · YOU DECIDE\n      \u003c\/span\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       PREVIEW\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        07 \/ Preview\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          Smoke screenshots are basically cheating\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          The whole point is seeing how much of the scene disappears once the cloud fills out.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__gallery\"\u003e\n\n      \u003cdiv class=\"fml-smoke__image\"\u003e\n\n        \u003cimg src=\"https:\/\/forum-cfx-re.akamaized.net\/original\/5X\/e\/8\/e\/b\/e8eb1eb5f84fdb8dd0986949cdb789f77220d83d.jpeg\" alt=\"FiveM realistic smoke grenade preview\" loading=\"lazy\"\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__image\"\u003e\n\n        \u003cimg src=\"https:\/\/forum-cfx-re.akamaized.net\/original\/5X\/a\/4\/8\/9\/a4894f0e0b831d3f5bac7f3ce8e95d8d50b6bffc.jpeg\" alt=\"FiveM volumetric smoke cloud\" loading=\"lazy\"\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__image\"\u003e\n\n        \u003cimg src=\"https:\/\/forum-cfx-re.akamaized.net\/original\/5X\/1\/f\/b\/8\/1fb8a38add70f949414533ac7519f6363bed2ae4.jpeg\" alt=\"FiveM smoke grenade tactical roleplay\" loading=\"lazy\"\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__image\"\u003e\n\n        \u003cimg src=\"https:\/\/forum-cfx-re.akamaized.net\/original\/5X\/3\/4\/3\/6\/34369323794ab223b5c683facfd0dcd8a99f5747.jpeg\" alt=\"FiveM realistic smoke system\" loading=\"lazy\"\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__image\"\u003e\n\n        \u003cimg src=\"https:\/\/forum-cfx-re.akamaized.net\/original\/5X\/e\/7\/2\/6\/e7262c5178a5ad8bef727d9ce38838668d54e2c6.jpeg\" alt=\"FiveM dense smoke effect\" loading=\"lazy\"\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdiv class=\"fml-smoke__image\"\u003e\n\n        \u003cimg src=\"https:\/\/forum-cfx-re.akamaized.net\/original\/5X\/f\/4\/a\/4\/f4a4d08758296f6654562be72c85e18c32955ba0.jpeg\" alt=\"FiveM standalone smoke grenade\" loading=\"lazy\"\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       TECHNICAL\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        08 \/ Technical\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          Good news: this part is refreshingly short\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          No ESX requirement. No QBCore requirement. No QBox requirement. It just runs standalone.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__terminal\"\u003e\n\n      \u003cdiv class=\"fml-smoke__terminal-head\"\u003e\n\n        \u003cstrong\u003e\n          \/\/ AK47_SMOKEGRENADE\n        \u003c\/strong\u003e\n\n        \u003cspan\u003e\n          FiveM \/ Standalone \/ Smoke System\n        \u003c\/span\u003e\n\n      \u003c\/div\u003e\n\n\n      \u003cdl class=\"fml-smoke__spec-grid\"\u003e\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eFramework\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              Standalone\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              Works independently and can be used alongside ESX, QB, QBX or\n              other frameworks.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eDependencies\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              None\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              No external dependency is listed.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eSmoke Architecture\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              Multi-Emitter\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              Six staggered billow emitters plus randomized micro-puff effects.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eLifecycle\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              3-Phase\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              Growth, peak coverage and smooth dissipation behavior.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eSynchronization\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              Multiplayer\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              Includes real-time server sync and late-join\/reconnect handling.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eRendering\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              Distance Culled\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              Configurable render distance helps avoid unnecessary distant\n              particle rendering.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eCode Access\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              Config Only\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              The technical information lists configuration access rather than\n              full source access.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eApprox. Lines\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              600+\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              Approximate line count listed by the developer.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003ePurchase Options\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              Multiple\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              The supplied listing states both subscription-based and\n              non-subscription options are available.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n\n        \u003cdiv class=\"fml-smoke__spec\"\u003e\n\n          \u003cdt\u003eSupport\u003c\/dt\u003e\n\n          \u003cdd\u003e\n            \u003cspan class=\"fml-smoke__spec-value\"\u003e\n              Discord\n            \u003c\/span\u003e\n\n            \u003cspan class=\"fml-smoke__spec-copy\"\u003e\n              Developer support is listed as available.\n            \u003c\/span\u003e\n          \u003c\/dd\u003e\n\n        \u003c\/div\u003e\n\n      \u003c\/dl\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       INSTALL\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        09 \/ Setup\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          Installing smoke should not become its own emergency\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          Add the resource, tune the values you care about, start it and move on.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__install\"\u003e\n\n      \u003cdiv class=\"fml-smoke__install-head\"\u003e\n        \/\/ INSTALLATION\n      \u003c\/div\u003e\n\n\n      \u003col class=\"fml-smoke__steps\"\u003e\n\n        \u003cli\u003e\n          Download \u003ccode\u003eak47_smokegrenade\u003c\/code\u003e from the CFX portal associated\n          with your purchase.\n        \u003c\/li\u003e\n\n        \u003cli\u003e\n          Place the resource inside your FiveM server's\n          \u003ccode\u003eresources\u003c\/code\u003e directory.\n        \u003c\/li\u003e\n\n        \u003cli\u003e\n          Review \u003ccode\u003econfig.lua\u003c\/code\u003e and adjust supported values such as\n          duration, smoke scale, render distance and damage behavior.\n        \u003c\/li\u003e\n\n        \u003cli\u003e\n          Add the resource to \u003ccode\u003eserver.cfg\u003c\/code\u003e using the supplied\n          resource name.\n        \u003c\/li\u003e\n\n        \u003cli\u003e\n          Restart the resource or server and verify synchronization and visual\n          behavior with multiple players before deployment.\n        \u003c\/li\u003e\n\n      \u003c\/ol\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       LINKS\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__section\"\u003e\n\n    \u003cdiv class=\"fml-smoke__head\"\u003e\n\n      \u003cdiv class=\"fml-smoke__index\"\u003e\n        10 \/ Get It\n      \u003c\/div\u003e\n\n\n      \u003cdiv\u003e\n\n        \u003cdiv class=\"fml-smoke__kicker\"\u003e\n          Seeing the screenshots is one thing. Watching the cloud build is the good part.\n        \u003c\/div\u003e\n\n\n        \u003ch2 class=\"fml-smoke__section-title\"\u003e\n          Watch the showcase, check the package and decide if vanilla smoke has survived long enough.\n        \u003c\/h2\u003e\n\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n\n    \u003cdiv class=\"fml-smoke__links\"\u003e\n\n      \u003ca class=\"fml-smoke__link fml-smoke__link--gold\" href=\"https:\/\/menanak47.tebex.io\/package\/7649796\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n        View on Tebex\n        \u003cspan aria-hidden=\"true\"\u003e↗\u003c\/span\u003e\n      \u003c\/a\u003e\n\n\n      \u003ca class=\"fml-smoke__link\" href=\"https:\/\/www.youtube.com\/watch?v=EZsR7zGW3Z0\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n        Watch Showcase\n        \u003cspan aria-hidden=\"true\"\u003e↗\u003c\/span\u003e\n      \u003c\/a\u003e\n\n\n      \u003ca class=\"fml-smoke__link\" href=\"https:\/\/discord.gg\/menanak47\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n        Discord Support\n        \u003cspan aria-hidden=\"true\"\u003e↗\u003c\/span\u003e\n      \u003c\/a\u003e\n\n\n      \u003ca class=\"fml-smoke__link\" href=\"https:\/\/forum.cfx.re\/t\/realistic-smoke-grenade-fivem-standalone\/5424231\" target=\"_blank\" rel=\"noopener noreferrer\"\u003e\n        Cfx.re Release\n        \u003cspan aria-hidden=\"true\"\u003e↗\u003c\/span\u003e\n      \u003c\/a\u003e\n\n    \u003c\/div\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003c!-- =======================================================\n       CLOSING\n       ======================================================= --\u003e\n\n  \u003csection class=\"fml-smoke__closing\"\u003e\n\n    \u003cdiv class=\"fml-smoke__closing-label\"\u003e\n      Realistic Smoke Grenade \/ FiveM Standalone\n    \u003c\/div\u003e\n\n\n    \u003ch2\u003e\n      Throw one grenade and suddenly the entire scene has a different atmosphere.\n    \u003c\/h2\u003e\n\n\n    \u003cp\u003e\n      Multi-emitter smoke, organic particle variation, ground-aware placement,\n      staged expansion, smooth dissipation, projectile tracking, multiplayer\n      synchronization, reconnect handling and distance culling turn a tiny\n      gameplay object into something players actually react to.\n    \u003c\/p\u003e\n\n  \u003c\/section\u003e\n\n\n  \u003cdiv class=\"fml-smoke__final\"\u003e\n    Vanilla smoke says “effect”.\n    \u003cem\u003eThis one says “where the hell did everybody go?”\u003c\/em\u003e\n  \u003c\/div\u003e\n\n\u003c\/article\u003e","brand":"Menanak47","offers":[{"title":"Default Title","offer_id":45780391592045,"sku":null,"price":15.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0683\/2072\/3053\/files\/aea51c888881306c986e027e77f27bec1912931e.jpg?v=1788595524","url":"https:\/\/fivem-lab.com\/products\/realistic-smoke-grenade-fivem-standalone","provider":"Fivem-Lab","version":"1.0","type":"link"}