<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tools - vnGAME</title>
	<atom:link href="https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/tools-the-isle/feed/" rel="self" type="application/rss+xml" />
	<link>https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/tools-the-isle/</link>
	<description>TẢI GAME MIỄN PHÍ</description>
	<lastBuildDate>Tue, 15 Sep 2026 17:00:03 +0000</lastBuildDate>
	<language>vi</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://vngame.tv/wp-content/uploads/2020/12/favion-2020-70x70.png</url>
	<title>Tools - vnGAME</title>
	<link>https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/tools-the-isle/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">128554084</site>	<item>
		<title>Sơ Đồ Điểm Mù &#038; Góc Tấn Công 3D The Isle: Evrima</title>
		<link>https://vngame.tv/the-isle-evrima-hitbox-tool/</link>
					<comments>https://vngame.tv/the-isle-evrima-hitbox-tool/#respond</comments>
		
		<dc:creator><![CDATA[Cá]]></dc:creator>
		<pubDate>Fri, 28 Aug 2026 22:03:11 +0000</pubDate>
				<category><![CDATA[Hướng dẫn chơi The Isle]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Evrima combat guide]]></category>
		<category><![CDATA[Evrima điểm mù]]></category>
		<category><![CDATA[The Isle attack angles]]></category>
		<category><![CDATA[The Isle điểm mù]]></category>
		<category><![CDATA[The Isle dinosaur hitbox]]></category>
		<category><![CDATA[The Isle Evrima hitbox tool]]></category>
		<guid isPermaLink="false">https://vngame.tv/?p=18571</guid>

					<description><![CDATA[<p>N&#7871;u b&#7841;n &#273;ang ch&#417;i The Isle: Evrima v&#224; th&#432;&#7901;ng g&#7863;p kh&#243; kh&#259;n trong vi&#7879;c x&#225;c &#273;&#7883;nh v&#7883; tr&#237; an to&#224;n &#273;&#7875; &#225;p s&#225;t &#273;&#7889;i th&#7911;, c&#244;ng c&#7909; S&#417; &#272;&#7891; &#272;i&#7875;m M&#249; &#38; G&#243;c T&#7845;n C&#244;ng 3D c&#243; th&#7875; gi&#250;p b&#7841;n h&#236;nh dung r&#245; h&#417;n v&#7873; ph&#7841;m vi t&#7845;n c&#244;ng c&#7911;a t&#7915;ng lo&#224;i. Thay v&#236; ch&#7881; d&#7921;a v&#224;o kinh nghi&#7879;m ho&#7863;c ghi nh&#7899; v&#7883; tr&#237; hitbox trong tr&#7853;n &#273;&#7845;u, c&#244;ng c&#7909; n&#224;y s&#7917; d&#7909;ng m&#244; h&#236;nh 3D t&#432;&#417;ng t&#225;c &#273;&#7875; m&#244; ph&#7887;ng h&#432;&#7899;ng t&#7845;n c&#244;ng, v&#249;ng nguy hi&#7875;m v&#224; &#273;i&#7875;m m&#249; c&#7911;a nhi&#7873;u dinosaur trong The Isle: Evrima. L&#432;u &#253;: &#272;&#226;y [&#8230;]</p>
<p>Bài viết <a href="https://vngame.tv/the-isle-evrima-hitbox-tool/" data-wpel-link="internal">Sơ Đồ Điểm Mù &#038; Góc Tấn Công 3D The Isle: Evrima</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Nếu bạn đang chơi <strong>The Isle: Evrima</strong> và thường gặp khó khăn trong việc xác định vị trí an toàn để áp sát đối thủ, công cụ <strong>Sơ Đồ Điểm Mù &amp; Góc Tấn Công 3D</strong> có thể giúp bạn hình dung rõ hơn về phạm vi tấn công của từng loài.</p>



<p>Thay vì chỉ dựa vào kinh nghiệm hoặc ghi nhớ vị trí hitbox trong trận đấu, công cụ này sử dụng mô hình 3D tương tác để mô phỏng <strong>hướng tấn công, vùng nguy hiểm và điểm mù</strong> của nhiều dinosaur trong The Isle: Evrima.</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><strong>Lưu ý:</strong> Đây là công cụ minh họa chiến thuật dựa trên các đòn đánh đã biết và kinh nghiệm cộng đồng. Nó <strong>không phải dữ liệu hitbox chính thức được trích xuất từ game</strong>.</p>
</blockquote>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Công cụ The Isle Evrima Hitbox là gì?</mark></h3>



<p><strong>The Isle: Evrima Hitbox Tool</strong> là công cụ 3D được thiết kế để giúp người chơi hiểu nhanh hơn về <strong>góc tấn công và điểm mù của dinosaur</strong> trong The Isle.</p>



<p>Sau khi chọn một loài, bạn có thể xoay mô hình 3D để quan sát cơ thể từ nhiều hướng khác nhau. Các vùng màu trên mặt đất biểu thị những khu vực mà người chơi nên đặc biệt chú ý khi chiến đấu.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Ý nghĩa các vùng màu</mark></h4>



<ul class="wp-block-list">
<li><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f534.png" alt="🔴" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>Vùng đỏ – Vùng dính damage nặng:</strong> Khu vực có khả năng nằm trong hướng tấn công nguy hiểm của dinosaur.</li>



<li><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f7e1.png" alt="🟡" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>Vùng vàng – Vùng damage nhẹ / hiệu ứng:</strong> Khu vực có thể liên quan đến các đòn đánh phụ, hiệu ứng hoặc phạm vi nguy hiểm thấp hơn.</li>



<li><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f7e2.png" alt="🟢" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>Vùng xanh – Điểm mù:</strong> Khu vực tương đối an toàn để tiếp cận theo mô hình chiến thuật.</li>
</ul>



<p>Các vùng này giúp người chơi dễ hình dung nên <strong>đứng ở đâu, tiếp cận từ hướng nào và khu vực nào cần tránh</strong> khi đối đầu với từng loài.</p>



<div id="evrima-hitbox-tool" style="background:#0e1410;color:#d8c9a3;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;padding:28px 16px 60px;border-radius:6px;">
<div style="max-width:820px;margin:0 auto;">

  <div style="border-bottom:1px solid #2a352c;padding-bottom:18px;margin-bottom:26px;">
    <div style="font-family:'Courier New',monospace;letter-spacing:.28em;text-transform:uppercase;font-size:11px;color:#c9974e;opacity:.85;">The Isle · Evrima</div>
    <h1 style="font-weight:700;font-size:clamp(24px,6vw,36px);letter-spacing:.02em;margin:6px 0 8px;color:#d8c9a3;">Sơ Đồ Điểm Mù &amp; Góc Tấn Công 3D</h1>
    <div style="color:#9a9280;font-size:14.5px;line-height:1.55;max-width:64ch;">Chọn loài, kéo chuột để xoay mô hình 3D — vùng màu được phủ trực tiếp lên đúng vị trí trên cơ thể con vật: đầu, hông, đuôi.</div>
  </div>

  <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #2a352c;border-radius:2px;padding:20px 20px 22px;margin-bottom:16px;">
    <div style="display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px;">
      <div style="font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#9a9280;font-family:'Courier New',monospace;white-space:nowrap;">Chọn loài</div>
      <select id="specSel" style="flex:1;min-width:200px;background:#101613;border:1px solid #2a352c;color:#d8c9a3;padding:9px 10px;font-size:14px;"></select>
      <button id="resetViewBtn" type="button" style="background:#101613;border:1px solid #2a352c;color:#9a9280;padding:9px 12px;font-size:12px;cursor:pointer;white-space:nowrap;">Reset góc nhìn</button>
    </div>

    <div id="threeContainer" style="width:100%;height:380px;background:#0a0f0b;border:1px solid #2a352c;cursor:grab;position:relative;overflow:hidden;"></div>
    <div style="font-size:11px;color:#5a5f55;text-align:center;margin-top:6px;font-family:'Courier New',monospace;">KÉO CHUỘT ĐỂ XOAY · LĂN CHUỘT ĐỂ ZOOM</div>

    <div style="display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:14px;font-size:12px;">
      <span style="display:flex;align-items:center;gap:6px;"><span style="width:12px;height:12px;background:#a8402f;display:inline-block;border-radius:2px;"></span>Vùng dính dame nặng</span>
      <span style="display:flex;align-items:center;gap:6px;"><span style="width:12px;height:12px;background:#c9974e;display:inline-block;border-radius:2px;"></span>Vùng dame nhẹ / hiệu ứng</span>
      <span style="display:flex;align-items:center;gap:6px;"><span style="width:12px;height:12px;background:#5a8f52;display:inline-block;border-radius:2px;"></span>Điểm mù — an toàn để áp sát</span>
    </div>

    <div id="tacticTip" style="margin-top:18px;border-left:3px solid #c9974e;background:#0f1512;padding:12px 14px;font-size:13.5px;line-height:1.5;"></div>
  </div>

  <div style="font-size:11.5px;color:#9a9280;line-height:1.6;border-top:1px solid #2a352c;padding-top:14px;">
    <b style="color:#c9974e;">Lưu ý quan trọng:</b> The Isle: Evrima <b>không công bố công thức góc hitbox chính xác</b> ra công chúng — đây là <b>mô hình minh họa 3D mang tính chiến thuật</b>, dựng dựa trên loại đòn đánh đã biết của từng loài (bite thường/alt, tail-swipe, charge, spit&#8230;) và kinh nghiệm cộng đồng, hình dáng cơ thể cũng là phiên bản cách điệu đơn giản hoá — <b>không phải mô hình 3D hay dữ liệu hitbox thật lấy từ game</b>. Dùng để hình dung hướng tiếp cận hợp lý, không thay thế phản xạ và quan sát thực tế trong trận đấu.
  </div>

</div>
</div>

<script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js"></script>
<script>
(function(){

var RED = 0xa8402f, YELLOW = 0xc9974e, GREEN = 0x5a8f52, BODY_COLOR = 0x2e372f;

// body profile: [posRatio(-1=head/front, 1=tail/rear), halfWidthRatio(0-1 of bodyR)]
var PROFILES = {
  theropod: [[-1,0.035],[-0.88,0.09],[-0.7,0.13],[-0.5,0.20],[-0.25,0.27],[0,0.29],[0.2,0.27],[0.45,0.18],[0.7,0.10],[0.9,0.05],[1,0.015]],
  ceratopsian: [[-1,0.09],[-0.88,0.30],[-0.78,0.34],[-0.62,0.24],[-0.4,0.27],[-0.1,0.31],[0.15,0.28],[0.4,0.20],[0.65,0.11],[0.85,0.05],[1,0.02]],
  stego: [[-1,0.05],[-0.85,0.09],[-0.6,0.22],[-0.3,0.31],[0,0.32],[0.25,0.28],[0.5,0.15],[0.72,0.11],[0.82,0.15],[0.92,0.09],[1,0.03]],
  sauropod: [[-1,0.025],[-0.8,0.045],[-0.55,0.09],[-0.25,0.28],[0,0.34],[0.2,0.24],[0.4,0.14],[0.65,0.07],[0.85,0.035],[1,0.01]],
  croc: [[-1,0.16],[-0.85,0.19],[-0.65,0.21],[-0.4,0.25],[-0.1,0.27],[0.2,0.25],[0.45,0.23],[0.7,0.19],[0.9,0.11],[1,0.05]],
  ornithopod: [[-1,0.045],[-0.85,0.11],[-0.6,0.19],[-0.3,0.26],[0,0.27],[0.25,0.23],[0.5,0.16],[0.72,0.09],[0.9,0.04],[1,0.015]],
  small: [[-1,0.06],[-0.8,0.12],[-0.55,0.18],[-0.25,0.23],[0,0.23],[0.3,0.18],[0.6,0.11],[0.85,0.05],[1,0.02]],
  pterosaur: [[-1,0.04],[-0.8,0.07],[-0.5,0.10],[-0.1,0.11],[0.3,0.09],[0.65,0.06],[0.9,0.03],[1,0.01]]
};

function archetypeOf(id){
  var m = {
    rex:"theropod", carno:"theropod", allo:"theropod", cerato:"theropod",
    herrera:"theropod", dilo:"theropod", troodon:"small", utah:"theropod", omni:"theropod",
    trike:"ceratopsian", diablo:"ceratopsian",
    stego:"stego",
    apato:"sauropod",
    deino:"croc",
    teno:"ornithopod", maia:"ornithopod", pachy:"ornithopod",
    hypsi:"small", beipi:"small",
    ptera:"pterosaur"
  };
  return m[id] || "theropod";
}

var SPECIES = [
  {id:"rex",     name:"Tyrannosaurus Rex",  biteArc:110, sideArc:30, tailArc:0,   tailColor:null,
    tip:"Đầu to, quay chậm — áp sát ngang hông (3 giờ hoặc 9 giờ) là hướng an toàn nhất, tránh đứng thẳng trước mặt hoặc phía sau quá gần vì Rex vẫn có thể xoay bất ngờ."},
  {id:"carno",   name:"Carnotaurus",        biteArc:90,  sideArc:30, tailArc:0,   tailColor:null,
    tip:"Ngoài cắn, Carno có đòn Charge lao thẳng về phía trước rất xa — vùng đỏ phía trước còn nguy hiểm hơn bán kính thể hiện. Né sang hai bên sớm, đừng đợi nó lao tới gần mới né."},
  {id:"allo",    name:"Allosaurus",         biteArc:100, sideArc:35, tailArc:0,   tailColor:null,
    tip:"Chuyên phục kích — nguy hiểm nhất là cú cắn mở màn bất ngờ. Một khi đã lộ diện và đối mặt trực diện, né sang bên hông là đủ an toàn."},
  {id:"deino",   name:"Deinosuchus",        biteArc:140, sideArc:20, tailArc:0,   tailColor:null,
    tip:"Gần như vô hại trên cạn xa mép nước — vùng đỏ chỉ áp dụng khi bạn đứng sát bờ hoặc đang ở dưới nước, nơi nó lao (lunge) và ngoạm rất xa. Tránh xa mép nước là điểm mù tuyệt đối."},
  {id:"utah",    name:"Utahraptor",         biteArc:90,  sideArc:35, tailArc:0,   tailColor:null,
    tip:"Có đòn Pounce (nhảy vồ) mở rộng tầm với về phía trước đột ngột khi ở gần. Đi theo bầy nên còn phải để ý điểm mù có bị đồng đội nó bọc hậu hay không."},
  {id:"cerato",  name:"Ceratosaurus",       biteArc:100, sideArc:35, tailArc:0,   tailColor:null,
    tip:"Cắn đầu (headbite) gây sát thương và nhiễm khuẩn cao hơn cắn thường — vùng đỏ phía trước nguy hiểm hơn con số thể hiện nếu nó nhắm đúng đầu bạn."},
  {id:"trike",   name:"Triceratops",        biteArc:0,   sideArc:30, tailArc:0,   tailColor:null, hornArc:120,
    tip:"Vũ khí chính là húc sừng (horn-charge) phía trước theo đường thẳng, không phải cắn — tuyệt đối không đứng chính diện. Áp sát từ hông hoặc sau lưng gần như an toàn hoàn toàn vì Triceratops không có vũ khí đuôi."},
  {id:"stego",   name:"Stegosaurus",        biteArc:50,  sideArc:20, tailArc:140, tailColor:RED,
    tip:"Cắn yếu, nhưng vung đuôi (tail-swipe) phía sau là đòn chí mạng quét cả góc rộng — điểm mù an toàn nhất là ngay sát hông phía trước, TUYỆT ĐỐI không lại gần phía đuôi."},
  {id:"diablo",  name:"Diabloceratops",     biteArc:0,   sideArc:25, tailArc:0,   tailColor:null, hornArc:100,
    tip:"Tương tự Triceratops nhưng phạm vi húc hẹp và cơ động hơn — vẫn nên né chính diện, hông và sau lưng là điểm mù an toàn."},
  {id:"pachy",   name:"Pachycephalosaurus", biteArc:80,  sideArc:20, tailArc:0,   tailColor:null,
    tip:"Đòn húc đầu (headbutt charge) gây choáng mạnh nếu trúng chính diện. Né sang bên hông hoặc sau lưng để tránh bị stagger giữa trận."},
  {id:"maia",    name:"Maiasaura",          biteArc:30,  sideArc:15, tailArc:0,   tailColor:null,
    tip:"Gần như không có vũ khí tấn công đáng kể — vùng nguy hiểm rất nhỏ. Rủi ro chính không phải bị phản đòn mà là bị nó phát hiện sớm nhờ Hypervigilance rồi báo động cả bầy."},
  {id:"hypsi",   name:"Hypsilophodon",      biteArc:20,  sideArc:10, tailArc:0,   tailColor:null, spitArc:70, spitColor:YELLOW,
    tip:"Vùng vàng phía trước là tầm phun dịch gây mù (blindness), không phải sát thương nặng — vẫn nên né vì bị mù giữa trận rất nguy hiểm khi có kẻ săn khác gần đó."},
  {id:"herrera", name:"Herrerasaurus",      biteArc:90,  sideArc:30, tailArc:0,   tailColor:null,
    tip:"Săn đơn cỡ nhỏ, tầm cắn ngắn — né sang bên hông hoặc sau lưng gần như luôn an toàn trước loài này."},
  {id:"dilo",    name:"Dilophosaurus",      biteArc:90,  sideArc:30, tailArc:0,   tailColor:null, spitArc:100, spitColor:YELLOW,
    tip:"Có đòn phun nọc (venom-spit) tầm xa phía trước gây độc theo thời gian — vùng vàng phía trước rộng hơn tầm cắn thường, nên giữ khoảng cách hoặc né hẳn sang bên khi đối đầu."},
  {id:"omni",    name:"Omniraptor",         biteArc:85,  sideArc:30, tailArc:0,   tailColor:null,
    tip:"Đi theo bầy đông — điểm mù của một cá thể không có nghĩa bạn an toàn nếu bị bao vây từ nhiều hướng cùng lúc."},
  {id:"troodon", name:"Troodon",            biteArc:80,  sideArc:30, tailArc:0,   tailColor:null,
    tip:"Nhỏ, nhanh, hoạt động ban đêm — tầm cắn ngắn nhưng bầy Troodon thường tấn công so le nhiều hướng, đừng chỉ tin vào điểm mù của một con."},
  {id:"tenon",   name:"Tenontosaurus",      biteArc:40,  sideArc:15, tailArc:120, tailColor:RED,
    tip:"Có đòn đá hậu (rear kick) và tail-slam phía sau rất mạnh — vùng an toàn nhất là hông trước, tránh xa phía đuôi tương tự Stegosaurus."},
  {id:"apato",   name:"Apatosaurus",        biteArc:40,  sideArc:15, tailArc:150, tailColor:YELLOW,
    tip:"Đuôi dài quét phạm vi rất rộng phía sau (ước tính, số liệu chưa xác nhận đầy đủ) — nên tiếp cận từ hông trước và giữ khoảng cách xa với phần đuôi."},
  {id:"ptera",   name:"Pteranodon",         biteArc:70,  sideArc:25, tailArc:0,   tailColor:null,
    tip:"Gần như vô hại khi ở trên mặt đất do thân hình yếu — mối nguy chính là bị nó rỉa (peck) khi đang đứng yên ăn/uống, không phải giao tranh trực diện."},
  {id:"beipi",   name:"Beipiaosaurus",      biteArc:25,  sideArc:10, tailArc:0,   tailColor:null,
    tip:"Gần như không có khả năng phản công đáng kể — rủi ro chủ yếu đến từ kẻ săn khác đang rình gần nó, không phải từ chính nó."}
];

var sel = document.getElementById("specSel");
SPECIES.forEach(function(sp){
  var opt = document.createElement("option");
  opt.value = sp.id;
  opt.textContent = sp.name;
  sel.appendChild(opt);
});
function getSpecies(id){
  for(var i=0;i<SPECIES.length;i++){ if(SPECIES[i].id === id) return SPECIES[i]; }
  return SPECIES[0];
}

// ---------- THREE.JS SETUP ----------
var container = document.getElementById("threeContainer");
var W = container.clientWidth, H = container.clientHeight;
var BODY_R = 3.2;   // world-space radius the body silhouette fits within
var ZONE_R = 4.6;   // world-space radius the color zones extend to

var scene = new THREE.Scene();
var camera = new THREE.PerspectiveCamera(45, W/H, 0.1, 100);
var renderer = new THREE.WebGLRenderer({ antialias:true, alpha:true });
renderer.setSize(W, H);
renderer.setPixelRatio(window.devicePixelRatio || 1);
container.appendChild(renderer.domElement);

scene.add(new THREE.AmbientLight(0xffffff, 0.75));
var dLight = new THREE.DirectionalLight(0xffffff, 0.6);
dLight.position.set(4, 8, 3);
scene.add(dLight);

// ground grid for spatial context
var grid = new THREE.GridHelper(ZONE_R*2.4, 16, 0x2a352c, 0x1a221c);
scene.add(grid);

var bodyGroup = null, zoneGroup = null;

// spherical camera controls (manual — three r128 has no OrbitControls)
var camState = { theta: Math.PI*0.85, phi: 0.85, radius: 10.5 };
function updateCamera(){
  var phi = Math.max(0.25, Math.min(1.45, camState.phi));
  camera.position.x = camState.radius * Math.sin(phi) * Math.sin(camState.theta);
  camera.position.z = camState.radius * Math.sin(phi) * Math.cos(camState.theta);
  camera.position.y = camState.radius * Math.cos(phi);
  camera.lookAt(0, 0.4, 0);
}
updateCamera();

var dragging = false, lastX = 0, lastY = 0;
container.addEventListener("mousedown", function(e){ dragging = true; lastX = e.clientX; lastY = e.clientY; container.style.cursor = "grabbing"; });
window.addEventListener("mouseup", function(){ dragging = false; container.style.cursor = "grab"; });
window.addEventListener("mousemove", function(e){
  if(!dragging) return;
  var dx = e.clientX - lastX, dy = e.clientY - lastY;
  lastX = e.clientX; lastY = e.clientY;
  camState.theta -= dx * 0.008;
  camState.phi -= dy * 0.008;
  updateCamera();
});
container.addEventListener("touchstart", function(e){ dragging = true; lastX = e.touches[0].clientX; lastY = e.touches[0].clientY; }, {passive:true});
window.addEventListener("touchend", function(){ dragging = false; });
window.addEventListener("touchmove", function(e){
  if(!dragging || !e.touches.length) return;
  var dx = e.touches[0].clientX - lastX, dy = e.touches[0].clientY - lastY;
  lastX = e.touches[0].clientX; lastY = e.touches[0].clientY;
  camState.theta -= dx * 0.008;
  camState.phi -= dy * 0.008;
  updateCamera();
}, {passive:true});
container.addEventListener("wheel", function(e){
  e.preventDefault();
  camState.radius = Math.max(4, Math.min(18, camState.radius + e.deltaY*0.01));
  updateCamera();
}, {passive:false});

var resetBtn = document.getElementById("resetViewBtn");
resetBtn.style.pointerEvents = "auto";
resetBtn.addEventListener("click", function(e){
  if(e){ e.preventDefault(); e.stopPropagation(); }
  camState = { theta: Math.PI*0.85, phi: 0.85, radius: 10.5 };
  updateCamera();
}, false);

var LEG_MODE = {
  theropod:"biped", small:"biped", ceratopsian:"quad", stego:"quad",
  sauropod:"quad", croc:"quad", ornithopod:"quad", pterosaur:"none"
};

function widthAt(profile, posRatio){
  for(var i=0;i<profile.length-1;i++){
    var a = profile[i], b = profile[i+1];
    if(posRatio >= a[0] && posRatio <= b[0]){
      var t = (b[0]===a[0]) ? 0 : (posRatio - a[0])/(b[0]-a[0]);
      return a[1] + (b[1]-a[1])*t;
    }
  }
  return profile[profile.length-1][1];
}

function addLegs(group, profile, archetype, mat){
  var mode = LEG_MODE[archetype];
  if(mode === "none") return;
  var positions = mode === "biped" ? [0.12] : [-0.35, 0.22];
  positions.forEach(function(posRatio){
    var hw = widthAt(profile, posRatio) * BODY_R;
    var bodyY = Math.max(0.15, hw*0.85);
    var z = posRatio * BODY_R;
    [-1,1].forEach(function(side){
      var legGeo = new THREE.CylinderGeometry(hw*0.22, hw*0.28, bodyY+0.05, 8);
      var leg = new THREE.Mesh(legGeo, mat);
      leg.position.set(side*hw*0.55, bodyY/2, z);
      group.add(leg);
    });
  });
}

function addHeadDetails(group, profile, archetype, mat, eyeMat, pupilMat){
  var headZ = -1 * BODY_R;
  var headW = widthAt(profile, -0.85) * BODY_R;
  var headY = Math.max(0.2, headW*0.9);

  // snout tip
  var snoutGeo = new THREE.ConeGeometry(Math.max(0.05, widthAt(profile,-0.95)*BODY_R), BODY_R*0.16, 10);
  var snout = new THREE.Mesh(snoutGeo, mat);
  snout.rotation.x = -Math.PI/2;
  snout.position.set(0, headY, -1*BODY_R - BODY_R*0.05);
  group.add(snout);

  // eyes
  [-1,1].forEach(function(side){
    var eye = new THREE.Mesh(new THREE.SphereGeometry(Math.max(0.04, headW*0.18), 8, 8), eyeMat);
    eye.position.set(side*headW*0.65, headY*1.15, headZ + BODY_R*0.12);
    group.add(eye);
    var pupil = new THREE.Mesh(new THREE.SphereGeometry(Math.max(0.02, headW*0.09), 6, 6), pupilMat);
    pupil.position.set(side*headW*0.65, headY*1.15, headZ + BODY_R*0.12 - headW*0.14);
    group.add(pupil);
  });

  if(archetype === "ceratopsian"){
    // frill: flat wide disc behind head
    var frillW = widthAt(profile,-0.85)*BODY_R;
    var frillGeo = new THREE.CylinderGeometry(frillW*1.05, frillW*1.05, 0.06, 20, 1, false, 0, Math.PI);
    var frillMat = mat;
    var frill = new THREE.Mesh(frillGeo, frillMat);
    frill.rotation.x = Math.PI/2;
    frill.rotation.z = Math.PI;
    frill.position.set(0, headY*1.3, headZ + BODY_R*0.34);
    group.add(frill);
    // horns
    [[-0.55,1],[0.55,1],[0,1.3]].forEach(function(h){
      var hornGeo = new THREE.ConeGeometry(0.05, 0.5, 8);
      var horn = new THREE.Mesh(hornGeo, new THREE.MeshStandardMaterial({color:0xcfc2a0, roughness:0.6}));
      horn.position.set(h[0]*headW, headY + 0.25*h[1], headZ + BODY_R*0.08);
      horn.rotation.x = -0.3;
      group.add(horn);
    });
  }

  if(archetype === "stego"){
    // back plates
    for(var i=-0.6;i<=0.6;i+=0.24){
      var pw = widthAt(profile, i)*BODY_R;
      var plateGeo = new THREE.ConeGeometry(pw*0.5, 0.5, 4);
      var plate = new THREE.Mesh(plateGeo, mat);
      plate.rotation.z = Math.PI/2;
      plate.rotation.y = Math.PI/4;
      plate.position.set(0, pw*1.3, i*BODY_R);
      group.add(plate);
    }
    // thagomizer spikes near tail tip
    [[0.85,1],[0.85,-1]].forEach(function(s){
      var spikeGeo = new THREE.ConeGeometry(0.06, 0.5, 8);
      var spike = new THREE.Mesh(spikeGeo, mat);
      spike.rotation.z = s[1]*Math.PI/3;
      spike.position.set(s[1]*0.15, 0.25, s[0]*BODY_R);
      group.add(spike);
    });
  }
}

function makeLabelSprite(text, colorHex){
  var canvas = document.createElement("canvas");
  canvas.width = 256; canvas.height = 64;
  var ctx = canvas.getContext("2d");
  ctx.fillStyle = "rgba(14,20,16,0.85)";
  ctx.fillRect(0,0,256,64);
  ctx.strokeStyle = colorHex; ctx.lineWidth = 3;
  ctx.strokeRect(2,2,252,60);
  ctx.fillStyle = colorHex;
  ctx.font = "bold 30px Arial";
  ctx.textAlign = "center"; ctx.textBaseline = "middle";
  ctx.fillText(text, 128, 34);
  var tex = new THREE.CanvasTexture(canvas);
  var mat = new THREE.SpriteMaterial({ map: tex, transparent:true, depthTest:false });
  var sprite = new THREE.Sprite(mat);
  sprite.scale.set(1.6, 0.4, 1);
  return sprite;
}

function buildBody(archetype){
  var group = new THREE.Group();
  var profile = PROFILES[archetype];
  var mat = new THREE.MeshStandardMaterial({ color: BODY_COLOR, roughness:0.85, metalness:0.05 });
  var eyeMat = new THREE.MeshStandardMaterial({ color: 0xf0e8d8, roughness:0.4 });
  var pupilMat = new THREE.MeshStandardMaterial({ color: 0x0a0f0b, roughness:0.3 });

  for(var i=0;i<profile.length-1;i++){
    var a = profile[i], b = profile[i+1];
    var zA = a[0]*BODY_R, zB = b[0]*BODY_R;
    var rA = Math.max(0.02, a[1]*BODY_R), rB = Math.max(0.02, b[1]*BODY_R);
    var len = Math.abs(zB - zA);
    if(len < 0.001) continue;
    var geo = new THREE.CylinderGeometry(rB, rA, len, 14, 1, false);
    var mesh = new THREE.Mesh(geo, mat);
    mesh.rotation.x = Math.PI/2; // align cylinder axis along Z
    var midZ = (zA+zB)/2;
    var midR = (rA+rB)/2;
    mesh.position.set(0, midR*0.85, midZ);
    group.add(mesh);
  }

  addLegs(group, profile, archetype, mat);
  addHeadDetails(group, profile, archetype, mat, eyeMat, pupilMat);

  var headLabel = makeLabelSprite("\u0110\u1EA6U", "#e18f7c");
  headLabel.position.set(0, 1.6, -BODY_R*1.35);
  group.add(headLabel);
  var tailLabel = makeLabelSprite("\u0110U\u00d4I", "#9fce93");
  tailLabel.position.set(0, 1.6, BODY_R*1.35);
  group.add(tailLabel);

  if(archetype === "pterosaur"){
    var wingMat = new THREE.MeshStandardMaterial({ color: BODY_COLOR, roughness:0.85, side: THREE.DoubleSide });
    [ -1, 1 ].forEach(function(side){
      var shape = new THREE.Shape();
      shape.moveTo(0,0);
      shape.lineTo(side*BODY_R*0.9, 0.15);
      shape.lineTo(side*BODY_R*0.15, 0.5);
      shape.lineTo(0,0);
      var wingGeo = new THREE.ShapeGeometry(shape);
      var wing = new THREE.Mesh(wingGeo, wingMat);
      wing.rotation.x = Math.PI/2;
      wing.position.set(0, 0.35, -0.1);
      group.add(wing);
    });
  }
  return group;
}

function buildZoneFan(startDeg, endDeg, radius, color, opacity, y){
  var segs = Math.max(2, Math.round((endDeg-startDeg)/6));
  var verts = [];
  var cx=0, cz=0;
  verts.push(cx, y, cz);
  for(var i=0;i<=segs;i++){
    var deg = startDeg + (endDeg-startDeg)*(i/segs);
    var rad = deg * Math.PI/180;
    var x = radius * Math.sin(rad);
    var z = -radius * Math.cos(rad); // front (deg=0) => -Z
    verts.push(x, y, z);
  }
  var geo = new THREE.BufferGeometry();
  var positions = new Float32Array(verts);
  geo.setAttribute("position", new THREE.BufferAttribute(positions, 3));
  var indices = [];
  for(var j=1;j<=segs;j++){ indices.push(0, j, j+1); }
  geo.setIndex(indices);
  geo.computeVertexNormals();
  var mat = new THREE.MeshBasicMaterial({ color: color, transparent:true, opacity: opacity, side: THREE.DoubleSide });
  return new THREE.Mesh(geo, mat);
}

function render3D(){
  var sp = getSpecies(sel.value);

  if(bodyGroup) scene.remove(bodyGroup);
  if(zoneGroup) scene.remove(zoneGroup);

  zoneGroup = new THREE.Group();

  // full radar backdrop (green)
  zoneGroup.add(buildZoneFan(0, 360, ZONE_R, GREEN, 0.18, 0.02));

  var frontArc = sp.hornArc || sp.biteArc;
  if(frontArc > 0){
    zoneGroup.add(buildZoneFan(-frontArc/2, frontArc/2, ZONE_R, RED, 0.55, 0.03));
  }
  var sideStart = frontArc/2, sideEnd = sideStart + sp.sideArc;
  if(sp.sideArc > 0){
    zoneGroup.add(buildZoneFan(sideStart, sideEnd, ZONE_R, YELLOW, 0.45, 0.03));
    zoneGroup.add(buildZoneFan(-sideEnd, -sideStart, ZONE_R, YELLOW, 0.45, 0.03));
  }
  if(sp.spitArc){
    zoneGroup.add(buildZoneFan(-sp.spitArc/2, sp.spitArc/2, ZONE_R*0.85, sp.spitColor, 0.4, 0.04));
  }
  if(sp.tailArc && sp.tailArc > 0){
    zoneGroup.add(buildZoneFan(180 - sp.tailArc/2, 180 + sp.tailArc/2, ZONE_R, sp.tailColor, 0.55, 0.03));
  }
  scene.add(zoneGroup);

  bodyGroup = buildBody(archetypeOf(sp.id));
  scene.add(bodyGroup);

  document.getElementById("tacticTip").innerHTML = "<b style='color:#c9974e;'>" + sp.name + ":</b> " + sp.tip;
}

function animate(){
  requestAnimationFrame(animate);
  renderer.render(scene, camera);
}

sel.onchange = render3D;
window.addEventListener("resize", function(){
  var w = container.clientWidth, h = container.clientHeight;
  camera.aspect = w/h; camera.updateProjectionMatrix();
  renderer.setSize(w, h);
});

render3D();
animate();

})();
</script>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Cách sử dụng The Isle Evrima Hitbox Tool</mark></h3>



<p>Sử dụng công cụ khá đơn giản và không yêu cầu cài đặt thêm phần mềm.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Bước 1: Chọn dinosaur</mark></h4>



<p>Tại mục <strong>&#8220;Chọn loài&#8221;</strong>, mở danh sách và chọn dinosaur bạn muốn tìm hiểu.</p>



<p>Công cụ hiện hỗ trợ nhiều loài trong The Isle: Evrima, bao gồm:</p>



<ul class="wp-block-list">
<li>Tyrannosaurus Rex</li>



<li>Carnotaurus</li>



<li>Allosaurus</li>



<li>Deinosuchus</li>



<li>Utahraptor</li>



<li>Ceratosaurus</li>



<li>Triceratops</li>



<li>Stegosaurus</li>



<li>Diabloceratops</li>



<li>Pachycephalosaurus</li>



<li>Maiasaura</li>



<li>Hypsilophodon</li>



<li>Herrerasaurus</li>



<li>Dilophosaurus</li>



<li>Omniraptor</li>



<li>Troodon</li>



<li>Tenontosaurus</li>



<li>Apatosaurus</li>



<li>Pteranodon</li>



<li>Beipiaosaurus</li>
</ul>



<p>Sau khi chọn, mô hình và thông tin chiến thuật của loài đó sẽ được cập nhật tự động.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Bước 2: Xoay mô hình 3D</mark></h4>



<p>Bạn có thể <strong>giữ chuột trái và kéo</strong> để xoay camera xung quanh mô hình.</p>



<p>Điều này đặc biệt hữu ích khi muốn quan sát:</p>



<ul class="wp-block-list">
<li>Phía trước đầu</li>



<li>Hai bên hông</li>



<li>Phía sau lưng</li>



<li>Vùng đuôi</li>



<li>Hướng tấn công chính</li>



<li>Các khu vực có khả năng trở thành điểm mù</li>
</ul>



<p>Trên điện thoại hoặc máy tính bảng, bạn có thể thao tác bằng cách kéo trực tiếp trên khu vực mô hình 3D.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Bước 3: Zoom để quan sát</mark></h4>



<p>Sử dụng <strong>con lăn chuột</strong> để phóng to hoặc thu nhỏ mô hình.</p>



<p>Khi cần quan sát tổng thể, hãy zoom ra để nhìn toàn bộ phạm vi chiến đấu. Khi muốn tập trung vào một khu vực cụ thể, hãy zoom gần hơn.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Bước 4: Đọc vùng nguy hiểm</mark></h4>



<p>Sau khi chọn dinosaur, hãy quan sát các vùng màu xung quanh mô hình.</p>



<p>Ví dụ, với những loài có đòn đánh phía trước mạnh, khu vực trước đầu sẽ được đánh dấu màu đỏ. Điều này giúp bạn hình dung tại sao việc đứng trực diện với chúng thường nguy hiểm.</p>



<p>Ngược lại, một số loài có <strong>tail-swipe, tail-slam hoặc rear kick</strong>, khiến khu vực phía sau trở thành nơi cần tránh dù bạn không đứng trước mặt chúng.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Bước 5: Đọc mẹo chiến thuật</mark></h4>



<p>Bên dưới mô hình 3D có phần <strong>mẹo chiến thuật riêng cho từng loài</strong>.</p>



<p>Phần này giải thích ngắn gọn:</p>



<ul class="wp-block-list">
<li>Đòn đánh nguy hiểm nhất của dinosaur.</li>



<li>Hướng nên tiếp cận.</li>



<li>Khu vực nên tránh.</li>



<li>Điểm mù có thể tận dụng.</li>



<li>Những trường hợp mà người chơi không nên quá tin vào điểm mù của một cá thể.</li>
</ul>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Điểm mù của các dinosaur trong The Isle: Evrima</mark></h3>



<p>Mỗi dinosaur trong Evrima có cách chiến đấu khác nhau. Vì vậy, không có một vị trí điểm mù duy nhất áp dụng cho tất cả các loài.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Tyrannosaurus Rex</mark></h4>



<p>Tyrannosaurus Rex có phần đầu lớn và hướng tấn công chủ yếu ở phía trước.</p>



<p>Khi đối đầu với Rex, việc đứng chính diện là lựa chọn nguy hiểm. Theo mô hình chiến thuật, tiếp cận từ khu vực ngang hông có thể giúp giảm nguy cơ bị tấn công trực tiếp.</p>



<p>Tuy nhiên, người chơi vẫn cần chú ý khả năng Rex xoay hướng bất ngờ.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Carnotaurus</mark></h4>



<p>Carnotaurus nguy hiểm không chỉ bởi đòn cắn mà còn bởi khả năng <strong>Charge</strong>.</p>



<p>Nếu đứng trực diện và chờ đến khi Carnotaurus lao tới mới né, bạn có thể không còn đủ thời gian để phản ứng.</p>



<p>Chiến thuật an toàn hơn là quan sát hướng di chuyển và chủ động né sang bên trước khi Charge tiếp cận.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Stegosaurus</mark></h4>



<p>Stegosaurus là ví dụ điển hình cho việc <strong>điểm mù phía sau không phải lúc nào cũng an toàn</strong>.</p>



<p>Đòn <strong>tail-swipe</strong> khiến khu vực phía sau trở thành vùng nguy hiểm lớn. Vì vậy, người chơi nên đặc biệt cẩn thận khi cố gắng tiếp cận Stegosaurus từ phía đuôi.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Triceratops</mark></h4>



<p>Triceratops chủ yếu nguy hiểm ở phía trước với đòn húc bằng sừng.</p>



<p>Đứng chính diện với Triceratops là vị trí rất dễ bị tấn công. Nếu có cơ hội tiếp cận, khu vực bên hông thường là hướng đáng cân nhắc hơn.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Deinosuchus</mark></h4>



<p>Deinosuchus có sự khác biệt rất lớn giữa chiến đấu trên cạn và dưới nước.</p>



<p>Mối nguy hiểm đáng chú ý nhất xuất hiện khi người chơi đến gần khu vực mặt nước. Vì vậy, khi đối đầu với Deinosuchus, <strong>mép nước</strong> là khu vực cần đặc biệt cảnh giác.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Dilophosaurus</mark></h4>



<p>Dilophosaurus có khả năng sử dụng <strong>venom spit</strong>, khiến việc chỉ quan sát phạm vi cắn là chưa đủ.</p>



<p>Vùng phía trước cần được chú ý vì người chơi có thể bị ảnh hưởng bởi đòn phun độc ngay cả khi đang đứng ngoài khoảng cách cắn thông thường.</p>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Vì sao nên sử dụng công cụ 3D thay vì chỉ xem hình ảnh?</mark></h3>



<p>Một hình ảnh 2D thường chỉ cho bạn thấy một góc nhìn cố định.</p>



<p>Trong khi đó, mô hình 3D cho phép bạn xoay quanh dinosaur để hiểu rõ hơn về <strong>không gian chiến đấu 360 độ</strong>.</p>



<p>Điều này đặc biệt hữu ích đối với những loài có:</p>



<ul class="wp-block-list">
<li>Đòn đánh phía trước.</li>



<li>Đòn đánh hai bên.</li>



<li>Tail-swipe.</li>



<li>Tail-slam.</li>



<li>Rear kick.</li>



<li>Charge.</li>



<li>Spit hoặc các hiệu ứng tấn công tầm xa.</li>
</ul>



<p>Thay vì chỉ ghi nhớ &#8220;đứng phía sau&#8221;, bạn có thể quan sát toàn bộ phạm vi nguy hiểm và hiểu tại sao một vị trí nhất định lại an toàn hoặc nguy hiểm.</p>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Mẹo sử dụng điểm mù trong The Isle: Evrima</mark></h3>



<p>Điểm mù chỉ nên được xem là <strong>một phần của chiến thuật</strong>, không phải vị trí an toàn tuyệt đối.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">1. Không đứng yên quá lâu</mark></h4>



<p>Một dinosaur có thể xoay người và thay đổi hướng tấn công rất nhanh. Điểm mù bạn đang đứng có thể biến mất chỉ sau một lần xoay thân.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">2. Luôn quan sát đồng đội của đối thủ</mark></h4>



<p>Điểm mù của một dinosaur không đồng nghĩa với việc bạn an toàn trước cả nhóm.</p>



<p>Điều này đặc biệt quan trọng khi đối đầu với các loài thường đi theo bầy như Omniraptor hoặc Troodon.</p>



<p>Bạn có thể tránh được đòn của một cá thể nhưng lại bị cá thể thứ hai tấn công từ phía bên kia.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">3. Đừng chỉ nhìn vào màu xanh</mark></h4>



<p>Vùng xanh trên công cụ là <strong>điểm mù được mô phỏng cho mục đích chiến thuật</strong>, không phải cam kết rằng nhân vật của bạn sẽ không nhận damage trong game.</p>



<p>Trong thực chiến, khoảng cách, animation, địa hình, hướng di chuyển và thời điểm tấn công đều có thể làm thay đổi kết quả.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">4. Kết hợp công cụ với thực chiến</mark></h4>



<p>Cách tốt nhất để sử dụng công cụ là:</p>



<p><strong>Xem mô hình → ghi nhớ hướng nguy hiểm → áp dụng trong game → quan sát thực tế → điều chỉnh cách chơi.</strong></p>



<p>Đừng cố học thuộc từng góc độ một cách máy móc.</p>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">The Isle Evrima Hitbox Tool có chính xác 100% không?</mark></h3>



<p><strong>Không.</strong></p>



<p>The Isle: Evrima không công khai toàn bộ công thức và dữ liệu hitbox chính xác cho từng đòn đánh. Vì vậy, công cụ này không nên được xem là bản sao của hitbox thực tế trong game.</p>



<p>Mô hình 3D được xây dựng với mục đích <strong>minh họa chiến thuật</strong>, dựa trên:</p>



<ul class="wp-block-list">
<li>Loại đòn tấn công đã biết.</li>



<li>Hướng tấn công.</li>



<li>Đặc điểm hình dáng cơ thể.</li>



<li>Kinh nghiệm gameplay.</li>



<li>Thông tin và kinh nghiệm từ cộng đồng.</li>
</ul>



<p>Hình dáng dinosaur trong công cụ cũng được đơn giản hóa để giúp người chơi dễ quan sát.</p>



<p>Do đó, hãy sử dụng công cụ để <strong>hiểu hướng tiếp cận và tư duy combat</strong>, thay vì coi các vùng màu là dữ liệu hitbox chính thức.</p>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Các câu hỏi thường gặp</mark></h3>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">The Isle Evrima Hitbox Tool dùng để làm gì?</mark></h4>



<p>Công cụ giúp người chơi hình dung <strong>điểm mù, góc tấn công và vùng nguy hiểm</strong> của các dinosaur trong The Isle: Evrima thông qua mô hình 3D tương tác.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Có cần tải phần mềm không?</mark></h4>



<p>Không. Công cụ hoạt động trực tiếp trên trình duyệt nếu được tích hợp vào website.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Có thể dùng trên điện thoại không?</mark></h4>



<p>Có. Mô hình hỗ trợ thao tác kéo trên màn hình cảm ứng để xoay góc nhìn.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Vùng màu đỏ có phải hitbox thật trong game không?</mark></h4>



<p>Không. Đây là <strong>mô hình minh họa chiến thuật</strong>, không phải dữ liệu hitbox chính thức được trích xuất từ The Isle: Evrima.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Điểm mù có đảm bảo không bị damage không?</mark></h4>



<p>Không. Điểm mù chỉ mang tính tương đối. Trong trận đấu thực tế, animation, hướng xoay, khoảng cách, địa hình và nhiều yếu tố khác có thể ảnh hưởng đến việc bạn có bị trúng đòn hay không.</p>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Dinosaur nào nguy hiểm từ phía sau?</mark></h4>



<p>Một số loài có đòn tấn công phía sau hoặc phạm vi đuôi rộng, tiêu biểu như <strong>Stegosaurus, Tenontosaurus và Apatosaurus</strong>. Vì vậy không nên mặc định rằng cứ đứng sau dinosaur là an toàn.</p>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Kết luận</mark></h3>



<p><strong>Sơ Đồ Điểm Mù &amp; Góc Tấn Công 3D The Isle: Evrima</strong> là một công cụ trực quan dành cho người chơi muốn hiểu rõ hơn về cách tiếp cận và né tránh các dinosaur trong Evrima.</p>



<p>Thay vì chỉ ghi nhớ danh sách điểm mù, bạn có thể trực tiếp <strong>chọn dinosaur, xoay mô hình 3D, phóng to và quan sát vùng nguy hiểm từ nhiều hướng</strong>.</p>



<p>Hãy sử dụng công cụ như một <strong>combat reference</strong> trước khi vào trận, sau đó kết hợp với khả năng quan sát và phản xạ thực tế để cải thiện khả năng sinh tồn trong The Isle: Evrima.</p>



<p><strong>Chọn một loài ở phía trên và bắt đầu khám phá điểm mù của nó ngay bây giờ.</strong></p>
<p>Bài viết <a href="https://vngame.tv/the-isle-evrima-hitbox-tool/" data-wpel-link="internal">Sơ Đồ Điểm Mù &#038; Góc Tấn Công 3D The Isle: Evrima</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://vngame.tv/the-isle-evrima-hitbox-tool/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">18571</post-id>	</item>
		<item>
		<title>Công Cụ Tính Sát Thương &#038; Thời Gian Lớn The Isle: Evrima — Biết Trước Ai Thắng Trước Khi Cắn Nhát Đầu Tiên</title>
		<link>https://vngame.tv/cong-cu-tinh-sat-thuong-thoi-gian-lon-the-isle-evrima/</link>
					<comments>https://vngame.tv/cong-cu-tinh-sat-thuong-thoi-gian-lon-the-isle-evrima/#respond</comments>
		
		<dc:creator><![CDATA[Cá]]></dc:creator>
		<pubDate>Fri, 28 Aug 2026 06:53:01 +0000</pubDate>
				<category><![CDATA[Hướng dẫn chơi The Isle]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Công cụ tính sát thương The Isle]]></category>
		<category><![CDATA[The Isle]]></category>
		<category><![CDATA[The Isle Evrima]]></category>
		<category><![CDATA[Thời gian lớn The Isle]]></category>
		<category><![CDATA[Tính sát thương The Isle]]></category>
		<category><![CDATA[vngame]]></category>
		<guid isPermaLink="false">https://vngame.tv/?p=18564</guid>

					<description><![CDATA[<p>Trong The Isle: Evrima, ch&#x1EC9; s&#x1ED1; c&#x1EE7;a m&#x1ED9;t con kh&#x1EE7;ng long kh&#xF4;ng c&#x1ED1; &#x111;&#x1ECB;nh &#x2014; n&#xF3; t&#x103;ng d&#x1EA7;n theo % l&#x1EDB;n (Growth) t&#x1EEB; l&#xFA;c m&#x1EDB;i n&#x1EDF; (Hatchling) &#x111;&#x1EBF;n khi tr&#x1B0;&#x1EDF;ng th&#xE0;nh ho&#xE0;n to&#xE0;n (Adult 100%). M&#xE1;u (HP), s&#xE1;t th&#x1B0;&#x1A1;ng m&#x1ED7;i c&#xFA; c&#x1EAF;n, v&#xE0; m&#x1EE9;c &#x111;&#x1ED9; g&#xE2;y ch&#x1EA3;y m&#xE1;u (Bleed) &#x111;&#x1EC1;u t&#x1EC9; l&#x1EC7; theo con s&#x1ED1; ph&#x1EA7;n tr&#x103;m n&#xE0;y. V&#x1EA5;n &#x111;&#x1EC1; l&#xE0;: m&#x1ED9;t con Rex 60% l&#x1EDB;n tr&#xF4;ng r&#x1EA5;t to nh&#x1B0;ng th&#x1EF1;c ra m&#xE1;u v&#xE0; s&#xE1;t th&#x1B0;&#x1A1;ng ch&#x1EC9; b&#x1EB1;ng kho&#x1EA3;ng 60% so v&#x1EDB;i m&#x1ED9;t con Rex tr&#x1B0;&#x1EDF;ng th&#xE0;nh. N&#x1EBF;u n&#xF3; ch&#x1EA1;m tr&#xE1;n m&#x1ED9;t con Triceratops 90% l&#x1EDB;n, nhi&#x1EC1;u ng&#x1B0;&#x1EDD;i ch&#x1A1;i &#x1B0;&#x1EDB;c [&#x2026;]</p>
<p>Bài viết <a href="https://vngame.tv/cong-cu-tinh-sat-thuong-thoi-gian-lon-the-isle-evrima/" data-wpel-link="internal">Công Cụ Tính Sát Thương &#038; Thời Gian Lớn The Isle: Evrima — Biết Trước Ai Thắng Trước Khi Cắn Nhát Đầu Tiên</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Trong <strong>The Isle: Evrima</strong>, chỉ số của một con khủng long không cố định — nó tăng dần theo <strong>% lớn (Growth)</strong> từ lúc mới nở (Hatchling) đến khi trưởng thành hoàn toàn (Adult 100%). Máu (HP), sát thương mỗi cú cắn, và mức độ gây chảy máu (Bleed) đều tỉ lệ theo con số phần trăm này.</p>



<p>Vấn đề là: một con <strong>Rex 60% lớn</strong> trông rất to nhưng thực ra máu và sát thương chỉ bằng khoảng 60% so với một con Rex trưởng thành. Nếu nó chạm trán một con <strong>Triceratops 90% lớn</strong>, nhiều người chơi ước lượng sai hoàn toàn tương quan sức mạnh — và trả giá bằng cả tiếng đồng hồ nuôi lớn.</p>



<p>Câu hỏi kinh điển mà cộng đồng Evrima luôn hỏi nhau: <em>&#8220;Rex 60% đấu Trike 90% thì ai thắng? Cần bao nhiêu cú cắn?&#8221;</em> — Công cụ <strong>Tính Sát Thương &amp; Thời Gian Lớn</strong> sinh ra để trả lời chính xác câu hỏi đó bằng số liệu, thay vì đoán mò.</p>



<div id="evrima-growth-tool" style="background:#0e1410;color:#d8c9a3;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;padding:28px 16px 60px;border-radius:6px;">
<div style="max-width:820px;margin:0 auto;">

  <div style="border-bottom:1px solid #2a352c;padding-bottom:18px;margin-bottom:26px;">
    <div style="font-family:'Courier New',monospace;letter-spacing:.28em;text-transform:uppercase;font-size:11px;color:#c9974e;opacity:.85;">The Isle · Evrima</div>
    <h1 style="font-weight:700;font-size:clamp(22px,5.5vw,34px);letter-spacing:.02em;margin:6px 0 8px;color:#d8c9a3;">Công Cụ Chỉ Số Theo % Trưởng Thành &amp; Đếm Ngược Thời Gian Lớn</h1>
    <div style="color:#9a9280;font-size:14px;line-height:1.55;max-width:62ch;">So sánh cân nặng / tốc độ / lực cắn của 2 loài ở bất kỳ mốc % trưởng thành nào, và đếm ngược thời gian từ Hatchling đến Adult kèm báo chuông từng mốc.</div>
  </div>

  <!-- TAB SWITCH -->
  <div style="display:flex;gap:8px;margin-bottom:22px;">
    <button id="tabCompareBtn" type="button" style="flex:1;padding:12px;border:1px solid #c9974e;background:rgba(201,151,78,.12);color:#d8c9a3;font-weight:700;cursor:pointer;font-size:14px;">So Sánh 2 Loài</button>
    <button id="tabTimerBtn" type="button" style="flex:1;padding:12px;border:1px solid #2a352c;background:#101613;color:#9a9280;font-weight:700;cursor:pointer;font-size:14px;">Đếm Ngược Thời Gian Lớn</button>
  </div>

  <!-- ===================== COMPARE PANEL ===================== -->
  <div id="comparePanel">
    <div style="display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;">
      <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #a8402f;padding:16px;">
        <div style="font-family:'Courier New',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#e18f7c;margin-bottom:10px;">Loài A</div>
        <select id="speciesA" style="width:100%;padding:9px;background:#0f1512;color:#d8c9a3;border:1px solid #2a352c;margin-bottom:10px;font-size:13.5px;"></select>
        <div style="display:flex;align-items:center;gap:8px;">
          <input id="pctA" type="range" min="0" max="100" value="100" style="flex:1;">
          <input id="pctANum" type="number" min="0" max="100" value="100" style="width:56px;padding:6px;background:#0f1512;color:#c9974e;border:1px solid #2a352c;text-align:center;">
          <span style="color:#9a9280;font-size:13px;">%</span>
        </div>
      </div>
      <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #5a8f52;padding:16px;">
        <div style="font-family:'Courier New',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9fce93;margin-bottom:10px;">Loài B</div>
        <select id="speciesB" style="width:100%;padding:9px;background:#0f1512;color:#d8c9a3;border:1px solid #2a352c;margin-bottom:10px;font-size:13.5px;"></select>
        <div style="display:flex;align-items:center;gap:8px;">
          <input id="pctB" type="range" min="0" max="100" value="60" style="flex:1;">
          <input id="pctBNum" type="number" min="0" max="100" value="60" style="width:56px;padding:6px;background:#0f1512;color:#c9974e;border:1px solid #2a352c;text-align:center;">
          <span style="color:#9a9280;font-size:13px;">%</span>
        </div>
      </div>
    </div>

    <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #2a352c;padding:18px;margin-bottom:16px;">
      <h3 style="font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#9a9280;margin:0 0 12px;">Chỉ số nội suy tại mốc % đã chọn</h3>
      <div id="statTable" style="display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;"></div>
    </div>

    <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #c9974e;padding:18px;margin-bottom:8px;">
      <h3 style="font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#c9974e;margin:0 0 10px;">Tương quan A vs B (chỉ mang tính ước lượng)</h3>
      <div id="ratioBox" style="font-size:14px;line-height:1.7;"></div>
    </div>

    <div style="font-size:11.5px;color:#8a7a5c;line-height:1.6;border:1px dashed #4a3f2a;padding:12px 14px;margin-top:10px;">
      <img src="https://s.w.org/images/core/emoji/16.0.1/72x72/26a0.png" alt="⚠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <b>Quan trọng:</b> The Isle <b>không công khai công thức</b> tính chính xác bao nhiêu cú cắn để hạ gục đối phương — HP thực tế phụ thuộc vị trí trúng đòn (đầu/thân), lớp giáp, mutation, buff dinh dưỡng đang có tại thời điểm giao tranh. Phần &#8220;tương quan&#8221; trên chỉ so sánh lực cắn/cân nặng thô để tham khảo xu hướng mạnh-yếu, <b>không phải số cú cắn chính xác để kết liễu</b>. Đừng dùng con số này để đưa ra quyết định PvP sinh tử tuyệt đối.
    </div>
  </div>

  <!-- ===================== TIMER PANEL ===================== -->
  <div id="timerPanel" style="display:none;">
    <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #2a352c;padding:18px;margin-bottom:16px;">
      <h3 style="font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#9a9280;margin:0 0 12px;">Chọn loài để đếm ngược</h3>
      <select id="speciesTimer" style="width:100%;padding:10px;background:#0f1512;color:#d8c9a3;border:1px solid #2a352c;font-size:14px;margin-bottom:14px;"></select>

      <div id="stageBar" style="display:flex;height:10px;border-radius:2px;overflow:hidden;margin-bottom:10px;"></div>
      <div id="stageLabels" style="display:flex;justify-content:space-between;font-size:10px;color:#9a9280;font-family:'Courier New',monospace;margin-bottom:20px;"></div>

      <div style="text-align:center;padding:20px 0;">
        <div id="timerBig" style="font-family:'Courier New',monospace;font-size:clamp(34px,8vw,54px);color:#c9974e;letter-spacing:.04em;">&#8211;:&#8211;:&#8211;</div>
        <div id="timerStageNow" style="color:#9a9280;font-size:13.5px;margin-top:6px;">Chọn loài và nhấn Bắt đầu</div>
      </div>

      <div style="display:flex;gap:10px;justify-content:center;flex-wrap:wrap;">
        <button id="timerStart" type="button" style="padding:12px 26px;background:#c9974e;color:#0e1410;border:none;font-weight:700;cursor:pointer;font-size:14px;"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/25b6.png" alt="▶" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Bắt đầu</button>
        <button id="timerPause" type="button" style="padding:12px 26px;background:#101613;color:#d8c9a3;border:1px solid #2a352c;font-weight:700;cursor:pointer;font-size:14px;"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/23f8.png" alt="⏸" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Tạm dừng</button>
        <button id="timerReset" type="button" style="padding:12px 26px;background:#101613;color:#d8c9a3;border:1px solid #2a352c;font-weight:700;cursor:pointer;font-size:14px;">↺ Reset</button>
      </div>
      <div style="font-size:11px;color:#5a5f55;text-align:center;margin-top:14px;"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f514.png" alt="🔔" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Sẽ có tiếng chuông + hiệu ứng nhấp nháy khi chuyển sang giai đoạn tiếp theo (Hatchling → Juvenile → Sub Adult → Adult). Cần cho phép âm thanh trình duyệt.</div>
    </div>
  </div>

  <div style="text-align:center;margin-top:24px;font-size:11px;color:#5a5f55;font-family:'Courier New',monospace;letter-spacing:.06em;">DỮ LIỆU TỪ 15 LOÀI ĐÃ XÁC MINH · CHƯA BAO GỒM T-REX, ALLOSAURUS, DEINOSUCHUS, OMNIRAPTOR, DRYOSAURUS · KIỂM TRA TRONG GAME ĐỂ CHẮC CHẮN</div>
</div>
</div>

<script>
(function(){

// ===== DATA: mỗi loài có 4 mốc (0%, %Juvenile, %SubAdult, 100%) với weight(kg)/speed(km/h)/bite =====
// Nguồn: tổng hợp thời gian + chỉ số từng giai đoạn đã xác minh cho 15 loài.
var SPECIES = {
  hypsi:   { name:"Hypsilophodon", totalMin:110, stages:[20,20,30,40],
             pts:[ {w:0.023,s:4,b:0}, {w:0.4,s:10.5,b:0.02}, {w:20,s:39.6,b:2}, {w:20,s:37.8,b:1.8} ] },
  tenon:   { name:"Tenontosaurus", totalMin:340, stages:[20,90,110,120],
             pts:[ {w:1.03,s:5.7,b:0.04}, {w:520,s:41.7,b:10.7}, {w:1600,s:44.1,b:35}, {w:1600,s:36.4,b:31.5} ] },
  pachy:   { name:"Pachycephalosaurus", totalMin:375, stages:[25,50,140,160],
             pts:[ {w:0.616,s:8.2,b:0.04}, {w:147.2,s:44.3,b:7.9}, {w:700,s:47.2,b:30}, {w:700,s:39.5,b:25.5} ] },
  trike:   { name:"Triceratops", totalMin:1750, stages:[60,200,640,850],
             pts:[ {w:4.54,s:5.4,b:0.98}, {w:85,s:16.2,b:12.6}, {w:9500,s:26.3,b:900}, {w:9500,s:22,b:810} ] },
  stego:   { name:"Stegosaurus", totalMin:1075, stages:[45,180,405,445],
             pts:[ {w:5.6,s:5.7,b:0.06}, {w:1126.7,s:29,b:8.4}, {w:6000,s:29.1,b:50}, {w:6000,s:25.2,b:45} ] },
  cerato:  { name:"Ceratosaurus", totalMin:360, stages:[30,60,120,150],
             pts:[ {w:2.2,s:8.8,b:0.18}, {w:442,s:34.3,b:53.3}, {w:1450,s:40.3,b:150}, {w:1450,s:36,b:127.5} ] },
  carno:   { name:"Carnotaurus", totalMin:460, stages:[40,90,120,210],
             pts:[ {w:3.95,s:13.9,b:0.018}, {w:496,s:43.4,b:53}, {w:1300,s:49.5,b:150}, {w:1300,s:45,b:120} ] },
  dilo:    { name:"Dilophosaurus", totalMin:360, stages:[20,60,120,160],
             pts:[ {w:1.27,s:8,b:0.1}, {w:179.7,s:46.9,b:23}, {w:700,s:50.5,b:85}, {w:700,s:41.4,b:68} ] },
  herrera: { name:"Herrerasaurus", totalMin:325, stages:[25,50,110,140],
             pts:[ {w:0.21,s:4.7,b:0.04}, {w:64.2,s:25.3,b:10.9}, {w:175,s:45,b:30}, {w:175,s:37.7,b:24} ] },
  galli:   { name:"Gallimimus", totalMin:325, stages:[15,80,110,120],
             pts:[ {w:0.5,s:21.3,b:0.03}, {w:12.74,s:46.8,b:0.82}, {w:535,s:46.8,b:25}, {w:535,s:41.4,b:20} ] },
  ptera:   { name:"Pteranodon", totalMin:270, stages:[20,40,90,120],
             pts:[ {w:0.095,s:3.6,b:0.02}, {w:1.22,s:8.8,b:0.6}, {w:90,s:37.8,b:20}, {w:90,s:35.1,b:16} ] },
  diablo:  { name:"Diabloceratops", totalMin:465, stages:[45,90,140,190],
             pts:[ {w:3.52,s:3.8,b:0.33}, {w:1065,s:12.8,b:9.06}, {w:3000,s:36,b:275.1}, {w:3000,s:32.4,b:220} ] },
  maia:    { name:"Maiasaura", totalMin:420, stages:[30,100,140,150],
             pts:[ {w:4.53,s:9.8,b:0.06}, {w:83,s:19.4,b:1.5}, {w:3700,s:46.9,b:50}, {w:3700,s:37.8,b:40} ] },
  beipi:   { name:"Beipiaosaurus", totalMin:220, stages:[20,40,70,90],
             pts:[ {w:0.106,s:3.6,b:0.02}, {w:2.7,s:10.7,b:0.66}, {w:90,s:32.4,b:20}, {w:90,s:29.5,b:16} ] },
  troodon: { name:"Troodon", totalMin:190, stages:[20,40,60,70],
             pts:[ {w:0.07,s:6.3,b:0.02}, {w:11.1,s:39.8,b:2.24}, {w:60,s:44,b:15}, {w:60,s:41.4,b:13.5} ] }
};

var STAGE_NAMES = ["Hatchling","Juvenile","Sub Adult","Adult (100%)"];
var STAGE_COLORS = ["#5a6f8a","#7a8a5c","#c9974e","#a8402f"];

// tính % breakpoint tích lũy từ mảng stages [h,j,s,a] theo phút
function cumPct(sp){
  var total = sp.totalMin;
  var c0 = 0;
  var c1 = sp.stages[0]/total*100;
  var c2 = (sp.stages[0]+sp.stages[1])/total*100;
  var c3 = (sp.stages[0]+sp.stages[1]+sp.stages[2])/total*100;
  var c4 = 100;
  return [c0,c1,c2,c3,c4]; // 5 điểm nhưng ta chỉ có 4 pts dữ liệu -> map c0..c1..c2..c3(=100)
}

// nội suy tuyến tính giữa 4 điểm dữ liệu tại breakpoint [0, c1, c2, 100]
function interpolate(sp, pct){
  var bp = cumPct(sp); // [0, c1, c2, c3(~), 100] -- ta dùng 0, bp[1], bp[2], 100 làm 4 mốc khớp pts[0..3]
  var marks = [0, bp[1], bp[2], 100];
  var pts = sp.pts;
  if(pct <= marks[0]) return pts[0];
  for(var i=0;i<3;i++){
    if(pct >= marks[i] && pct <= marks[i+1]){
      var t = (marks[i+1]-marks[i]) === 0 ? 0 : (pct-marks[i])/(marks[i+1]-marks[i]);
      return {
        w: pts[i].w + (pts[i+1].w-pts[i].w)*t,
        s: pts[i].s + (pts[i+1].s-pts[i].s)*t,
        b: pts[i].b + (pts[i+1].b-pts[i].b)*t
      };
    }
  }
  return pts[3];
}

function fmtNum(n, dec){
  if(n === undefined) return "-";
  if(n >= 1000) return (n/1000).toFixed(dec||2) + " tấn";
  return n.toFixed(n<1?3:1) + " kg";
}

function fillSelect(sel){
  Object.keys(SPECIES).forEach(function(key){
    var opt = document.createElement("option");
    opt.value = key;
    opt.textContent = SPECIES[key].name;
    sel.appendChild(opt);
  });
}

var speciesA = document.getElementById("speciesA");
var speciesB = document.getElementById("speciesB");
var speciesTimer = document.getElementById("speciesTimer");
fillSelect(speciesA); fillSelect(speciesB); fillSelect(speciesTimer);
speciesA.value = "trike"; speciesB.value = "cerato";

var pctA = document.getElementById("pctA"), pctANum = document.getElementById("pctANum");
var pctB = document.getElementById("pctB"), pctBNum = document.getElementById("pctBNum");

function syncPair(range, num){
  range.addEventListener("input", function(){ num.value = range.value; renderCompare(); });
  num.addEventListener("input", function(){
    var v = Math.max(0, Math.min(100, parseInt(num.value||0,10)));
    range.value = v; num.value = v; renderCompare();
  });
}
syncPair(pctA, pctANum);
syncPair(pctB, pctBNum);
speciesA.addEventListener("change", renderCompare);
speciesB.addEventListener("change", renderCompare);

function statCard(label, stat, colorBorder){
  var d = document.createElement("div");
  d.setAttribute("style","border:1px solid "+colorBorder+";padding:10px;background:#0f1512;text-align:center;");
  d.innerHTML =
    "<div style='font-family:Courier New,monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#9a9280;margin-bottom:6px;'>"+label+"</div>"+
    "<div style='color:#d8c9a3;font-size:13.5px;line-height:1.6;'>"+
      "Cân nặng: <b style='color:#c9974e;'>"+fmtNum(stat.w)+"</b><br>"+
      "Tốc độ: <b style='color:#c9974e;'>"+stat.s.toFixed(1)+" km/h</b><br>"+
      "Lực cắn: <b style='color:#c9974e;'>"+stat.b.toFixed(2)+"</b>"+
    "</div>";
  return d;
}

function renderCompare(){
  var spA = SPECIES[speciesA.value], spB = SPECIES[speciesB.value];
  var stA = interpolate(spA, parseInt(pctA.value,10));
  var stB = interpolate(spB, parseInt(pctB.value,10));

  var statTable = document.getElementById("statTable");
  statTable.innerHTML = "";
  statTable.appendChild(statCard(spA.name+" @ "+pctA.value+"%", stA, "#a8402f"));
  statTable.appendChild(statCard(spB.name+" @ "+pctB.value+"%", stB, "#5a8f52"));
  var diffDiv = document.createElement("div");
  diffDiv.setAttribute("style","border:1px solid #2a352c;padding:10px;background:#0f1512;text-align:center;");
  var wRatio = stB.w>0 ? (stA.w/stB.w) : 0;
  diffDiv.innerHTML =
    "<div style='font-family:Courier New,monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#9a9280;margin-bottom:6px;'>Chênh lệch khối lượng</div>"+
    "<div style='color:#c9974e;font-size:20px;font-weight:700;'>×"+wRatio.toFixed(2)+"</div>"+
    "<div style='color:#9a9280;font-size:11px;margin-top:4px;'>A nặng gấp B chừng này lần</div>";
  statTable.appendChild(diffDiv);

  var ratioBox = document.getElementById("ratioBox");
  var bRatio = stB.b>0 ? (stA.b/stB.b) : 0;
  var sRatio = stB.s>0 ? (stA.s/stB.s) : 0;
  var strongerBite = stA.b >= stB.b ? spA.name : spB.name;
  var fasterOne = stA.s >= stB.s ? spA.name : spB.name;
  ratioBox.innerHTML =
    "&#x1f9b4; Lực cắn: <b style='color:#c9974e;'>"+spA.name+"</b> so với <b style='color:#c9974e;'>"+spB.name+"</b> = <b>×"+bRatio.toFixed(2)+"</b> — mạnh hơn thuộc về <b style='color:#e18f7c;'>"+strongerBite+"</b><br>"+
    "&#x1f3c3; Tốc độ: chênh lệch <b>×"+sRatio.toFixed(2)+"</b> — nhanh hơn thuộc về <b style='color:#9fce93;'>"+fasterOne+"</b><br>"+
    "&#x2696; Khối lượng: A/B = <b>×"+wRatio.toFixed(2)+"</b> — bên nặng hơn thường chịu đòn tốt hơn nhưng không đồng nghĩa máu nhiều hơn theo đúng tỷ lệ này.";
}

renderCompare();

// ===================== TIMER LOGIC =====================
var tabCompareBtn = document.getElementById("tabCompareBtn");
var tabTimerBtn = document.getElementById("tabTimerBtn");
var comparePanel = document.getElementById("comparePanel");
var timerPanel = document.getElementById("timerPanel");

tabCompareBtn.onclick = function(){
  comparePanel.style.display = "block"; timerPanel.style.display = "none";
  tabCompareBtn.setAttribute("style","flex:1;padding:12px;border:1px solid #c9974e;background:rgba(201,151,78,.12);color:#d8c9a3;font-weight:700;cursor:pointer;font-size:14px;");
  tabTimerBtn.setAttribute("style","flex:1;padding:12px;border:1px solid #2a352c;background:#101613;color:#9a9280;font-weight:700;cursor:pointer;font-size:14px;");
};
tabTimerBtn.onclick = function(){
  comparePanel.style.display = "none"; timerPanel.style.display = "block";
  tabTimerBtn.setAttribute("style","flex:1;padding:12px;border:1px solid #c9974e;background:rgba(201,151,78,.12);color:#d8c9a3;font-weight:700;cursor:pointer;font-size:14px;");
  tabCompareBtn.setAttribute("style","flex:1;padding:12px;border:1px solid #2a352c;background:#101613;color:#9a9280;font-weight:700;cursor:pointer;font-size:14px;");
  drawStageBar();
};

speciesTimer.value = "trike";
speciesTimer.addEventListener("change", function(){ resetTimer(); drawStageBar(); });

function drawStageBar(){
  var sp = SPECIES[speciesTimer.value];
  var bar = document.getElementById("stageBar");
  var labels = document.getElementById("stageLabels");
  bar.innerHTML = ""; labels.innerHTML = "";
  var total = sp.totalMin;
  sp.stages.forEach(function(min, i){
    var seg = document.createElement("div");
    seg.setAttribute("style","width:"+(min/total*100)+"%;background:"+STAGE_COLORS[i]+";");
    bar.appendChild(seg);
    var lab = document.createElement("span");
    lab.textContent = STAGE_NAMES[i];
    labels.appendChild(lab);
  });
}
drawStageBar();

var timerInterval = null;
var remainingSec = 0;
var totalSec = 0;
var currentStageIdx = 0;
var stageBoundsSec = [];

function computeBounds(sp){
  var acc = 0; var bounds = [0];
  sp.stages.forEach(function(min){ acc += min*60; bounds.push(acc); });
  return bounds; // [0, endHatch, endJuv, endSub, endAdult]
}

function resetTimer(){
  clearInterval(timerInterval); timerInterval = null;
  var sp = SPECIES[speciesTimer.value];
  totalSec = sp.totalMin*60;
  remainingSec = totalSec;
  stageBoundsSec = computeBounds(sp);
  currentStageIdx = 0;
  updateTimerDisplay();
}

function fmtHMS(sec){
  sec = Math.max(0, Math.round(sec));
  var h = Math.floor(sec/3600), m = Math.floor((sec%3600)/60), s = sec%60;
  return String(h).padStart(2,"0")+":"+String(m).padStart(2,"0")+":"+String(s).padStart(2,"0");
}

function beep(){
  try{
    var ctx = new (window.AudioContext||window.webkitAudioContext)();
    var o = ctx.createOscillator(); var g = ctx.createGain();
    o.type = "sine"; o.frequency.value = 880;
    o.connect(g); g.connect(ctx.destination);
    g.gain.setValueAtTime(0.15, ctx.currentTime);
    o.start(); o.stop(ctx.currentTime+0.35);
  }catch(e){}
}

function updateTimerDisplay(){
  var elapsed = totalSec - remainingSec;
  var sp = SPECIES[speciesTimer.value];
  var newStageIdx = 0;
  for(var i=0;i<4;i++){
    if(elapsed >= stageBoundsSec[i]) newStageIdx = i;
  }
  if(newStageIdx !== currentStageIdx){
    currentStageIdx = newStageIdx;
    beep();
    var big = document.getElementById("timerBig");
    big.style.color = "#a8402f";
    setTimeout(function(){ big.style.color = "#c9974e"; }, 900);
  }
  document.getElementById("timerBig").textContent = fmtHMS(remainingSec);
  var nextBoundIdx = currentStageIdx+1;
  var toNext = nextBoundIdx<=4 ? Math.max(0, stageBoundsSec[nextBoundIdx]-elapsed) : 0;
  document.getElementById("timerStageNow").textContent =
    "Giai đoạn hiện tại: " + STAGE_NAMES[currentStageIdx] +
    (currentStageIdx<3 ? " · còn " + fmtHMS(toNext) + " nữa đến " + STAGE_NAMES[currentStageIdx+1] : " · Đã trưởng thành hoàn toàn &#x1f389;");
}

document.getElementById("timerStart").onclick = function(){
  if(timerInterval) return;
  if(remainingSec<=0) resetTimer();
  timerInterval = setInterval(function(){
    remainingSec -= 1;
    if(remainingSec<=0){ remainingSec=0; clearInterval(timerInterval); timerInterval=null; beep(); }
    updateTimerDisplay();
  }, 1000);
};
document.getElementById("timerPause").onclick = function(){ clearInterval(timerInterval); timerInterval=null; };
document.getElementById("timerReset").onclick = function(){ resetTimer(); };

resetTimer();

})();
</script>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Công cụ này làm được gì?</mark></h3>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">1. So sát thương giữa 2 loài bất kỳ theo % lớn</mark></h4>



<p>Chỉ cần chọn:</p>



<ul class="wp-block-list">
<li><strong>Loài A</strong> + kéo thanh trượt chọn % lớn hiện tại</li>



<li><strong>Loài B</strong> + kéo thanh trượt chọn % lớn hiện tại</li>
</ul>



<p>Công cụ lập tức tính ra cho cả hai bên:</p>



<ul class="wp-block-list">
<li><strong>HP hiện tại</strong> (theo % lớn đã chọn)</li>



<li><strong>Sát thương mỗi cú cắn</strong> ở mức % lớn đó</li>



<li><strong>Bleed ước tính mỗi cú cắn</strong></li>



<li><strong>Số cú cắn chuẩn xác cần thiết để hạ gục đối phương</strong></li>



<li><strong>Nguy cơ gãy xương</strong> khi bị tấn công, dựa trên tỷ lệ khối lượng giữa hai loài (loài lớn hơn nhiều thì nguy cơ khiến đối phương gãy xương càng cao)</li>



<li><strong>Kết luận nhanh</strong>: bên nào cần ít cú cắn hơn để kết liễu đối thủ</li>
</ul>



<p>Hỗ trợ <strong>20 loài</strong> phổ biến trong PvP: từ apex như Tyrannosaurus Rex, Triceratops, Stegosaurus, Deinosuchus, Apatosaurus đến các loài nhỏ nhanh nhẹn như Utahraptor, Troodon, Herrerasaurus, hay loài bay Pteranodon.</p>



<div class="the-isle-box">
  <div class="the-isle-header">
    <span class="the-isle-icon"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f996.png" alt="🦖" class="wp-smiley" style="height: 1em; max-height: 1em;" /></span>
    <a href="https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/" target="_blank" rel="noopener" class="the-isle-title" data-wpel-link="internal">
      The Isle – Hướng Dẫn Game Khủng Long
    </a>
  </div>
  <p class="the-isle-desc">
    Tổng hợp hướng dẫn, mẹo chơi và thông tin hữu ích về The Isle. Khám phá thế giới khủng long với các hướng dẫn dành cho người mới, cách chọn khủng long, làm tổ, hệ thống Prime &amp; Prime Elder và nhiều mẹo sinh tồn khác.
  </p>
  <a href="https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/" target="_blank" rel="noopener" class="the-isle-button" data-wpel-link="internal">
    Xem Hướng Dẫn Chi Tiết &rarr;
  </a>
</div>

<style>
  .the-isle-box {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #16a34a;
    border-radius: 8px;
    padding: 18px 22px;
    margin: 20px 0;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .the-isle-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
  }
  .the-isle-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
  }
  .the-isle-icon {
    font-size: 1.5rem;
    line-height: 1;
  }
  .the-isle-title {
    color: #15803d;
    font-size: 1.15rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.2s ease;
  }
  .the-isle-title:hover {
    color: #166534;
    text-decoration: underline;
  }
  .the-isle-desc {
    margin: 0 0 14px 0;
    font-size: 0.95rem;
    line-height: 1.6;
    color: #475569;
  }
  .the-isle-button {
    display: inline-block;
    background-color: #16a34a;
    color: #ffffff;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    transition: background-color 0.2s ease;
  }
  .the-isle-button:hover {
    background-color: #15803d;
  }
</style>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">2. Đếm ngược thời gian lớn — không còn phải AFK đoán mò</mark></h4>



<p>Phần thứ hai của công cụ là bộ đếm ngược từ % lớn hiện tại đến 100% Adult, có tính đến:</p>



<ul class="wp-block-list">
<li><strong>Diet hiện tại</strong> (1/2/3 nutrient — ảnh hưởng tốc độ lớn tới 300%)</li>



<li><strong>Hệ số GrowthMultiplier</strong> của server bạn đang chơi (nếu server chỉnh tốc độ lớn nhanh/chậm hơn mặc định)</li>
</ul>



<p>Khi bấm <strong>Bắt Đầu Đếm</strong>, đồng hồ sẽ chạy ngược thời gian thực và <strong>tự động báo (kèm âm thanh)</strong> mỗi khi bạn vượt qua các mốc quan trọng <strong>20% / 40% / 60% / 80% / 100%</strong> — đúng những mốc mà game cập nhật lại chỉ số cơ thể của khủng long. Bạn có thể mở tab này song song trong lúc AFK farm nutrient mà không lo bỏ lỡ thời điểm chỉ số thay đổi hay lúc trưởng thành hoàn toàn.</p>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Cách dùng công cụ — 4 bước</mark></h3>



<ol class="wp-block-list">
<li><strong>Mở phần "So Sát Thương 2 Loài"</strong> — chọn Loài A và Loài B trong danh sách, kéo thanh trượt chỉnh đúng % lớn hiện tại của từng con (xem trong game qua thanh growth trên UI hoặc phím Tab).</li>



<li>Bấm <strong>Tính Toán</strong> — đọc kết quả HP, sát thương, số cú cắn cần thiết và nguy cơ gãy xương của cả hai bên.</li>



<li><strong>Chuyển sang phần "Đếm Ngược Thời Gian Lớn"</strong> — chọn đúng loài, nhập % lớn hiện tại, chọn mức diet đang ăn (khuyến khích full 3 nutrient để đạt 300% growth) và hệ số multiplier của server.</li>



<li>Bấm <strong>Bắt Đầu Đếm</strong> — để tab chạy nền, công cụ sẽ tự báo khi đến mốc 20% tiếp theo hoặc khi trưởng thành hoàn toàn.</li>
</ol>



<h4 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-luminous-vivid-orange-color">Đọc kết quả sao cho đúng?</mark></h4>



<ul class="wp-block-list">
<li><strong>Số cú cắn để hạ gục</strong> là con số lý tưởng, giả định <strong>cắn trúng 100%</strong>, không tính đến việc đối thủ né, chạy, hay bạn hết stamina giữa chừng. Ngoài đời PvP còn phụ thuộc vị trí, mutation, và kỹ năng — con số này chỉ là cơ sở tham khảo sức mạnh thô (raw power), không phải bảo chứng thắng thua tuyệt đối.</li>



<li><strong>Nguy cơ gãy xương</strong> là suy luận theo tỷ lệ khối lượng (loài nặng hơn ≥1.5 lần thường dễ gây gãy xương hơn), <strong>không phải công thức chính thức được Afterthought Studios công bố</strong> — game không tiết lộ công thức gãy xương chính xác ra công chúng.</li>



<li>Công cụ giả định chỉ số <strong>tăng tuyến tính</strong> theo % lớn để dễ tính toán. Thực tế, nhiều loài trong Evrima có đường cong tăng trưởng <strong>không hoàn toàn tuyến tính</strong> — chỉ số thường nhảy vọt rõ rệt hơn sau mốc khoảng 70-75% lớn. Vì vậy kết quả ở mức % lớn thấp (dưới 50%) nên được xem là ước lượng tương đối, không phải số chính xác tuyệt đối.</li>



<li>Các loài có ký hiệu <strong>(≈)</strong> trong danh sách chọn là số liệu <strong>cộng đồng ước tính</strong>, độ tin cậy thấp hơn do thiếu nguồn xác nhận chính thức hoặc thay đổi nhiều qua các bản patch — nên đối chiếu thêm với dữ liệu mới nhất trong game trước khi ra quyết định PvP quan trọng.</li>
</ul>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Vì sao nên biết trước tương quan sức mạnh?</mark></h3>



<p>The Isle: Evrima là game permadeath theo nghĩa gần như tuyệt đối — chết là mất hết thời gian đã bỏ ra nuôi lớn, có khi là hàng giờ đồng hồ. Biết trước một cách tương đối rằng "con 70% của mình có đủ sức hạ gục con 90% kia trong bao nhiêu cú cắn hay không" giúp bạn:</p>



<ul class="wp-block-list">
<li>Quyết định <strong>đánh hay rút lui</strong> trước khi giao tranh, thay vì phát hiện quá muộn.</li>



<li>Ước lượng <strong>thời điểm nên tránh PvP</strong> vì bản thân đang ở giai đoạn tăng trưởng "yếu" (thường là dưới 50-60% lớn).</li>



<li>Lên kế hoạch <strong>farm nutrient</strong> hợp lý để rút ngắn thời gian ở giai đoạn dễ tổn thương nhất.</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p><em>Số liệu HP/sát thương/thời gian lớn được tổng hợp từ các nguồn dữ liệu cộng đồng Evrima cập nhật đến giữa năm 2026, có thể thay đổi theo từng bản patch của Afterthought Studios. Không liên kết chính thức với nhà phát triển game.</em></p>
<p>Bài viết <a href="https://vngame.tv/cong-cu-tinh-sat-thuong-thoi-gian-lon-the-isle-evrima/" data-wpel-link="internal">Công Cụ Tính Sát Thương &#038; Thời Gian Lớn The Isle: Evrima — Biết Trước Ai Thắng Trước Khi Cắn Nhát Đầu Tiên</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://vngame.tv/cong-cu-tinh-sat-thuong-thoi-gian-lon-the-isle-evrima/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">18564</post-id>	</item>
		<item>
		<title>Công Cụ Tính Dinh Dưỡng &#038; Đột Biến The Isle: Evrima — Xây Dựng Build PvP Trong 3 Bước</title>
		<link>https://vngame.tv/cong-cu-tinh-dinh-duong-dot-bien-the-isle-evrima/</link>
					<comments>https://vngame.tv/cong-cu-tinh-dinh-duong-dot-bien-the-isle-evrima/#respond</comments>
		
		<dc:creator><![CDATA[Cá]]></dc:creator>
		<pubDate>Thu, 27 Aug 2026 06:22:39 +0000</pubDate>
				<category><![CDATA[Hướng dẫn chơi The Isle]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Build khủng long The Isle]]></category>
		<category><![CDATA[Công cụ dinh dưỡng The Isle]]></category>
		<category><![CDATA[The Isle]]></category>
		<category><![CDATA[The Isle Evrima]]></category>
		<category><![CDATA[Tính đột biến The Isle]]></category>
		<category><![CDATA[vngame]]></category>
		<guid isPermaLink="false">https://vngame.tv/?p=18550</guid>

					<description><![CDATA[<p>B&#x1EA5;t k&#x1EF3; ai t&#x1EEB;ng ch&#x1A1;i The Isle: Evrima &#x111;&#x1EC1;u bi&#x1EBF;t c&#x1EA3;m gi&#xE1;c n&#xE0;y: b&#x1EA1;n v&#x1EEB;a l&#x1EDB;n l&#xEA;n m&#x1ED9;t ch&#xFA;t, v&#x1EEB;a t&#xEC;m &#x111;&#x1B0;&#x1EE3;c th&#x1EE9;c &#x103;n, nh&#x1B0;ng kh&#xF4;ng r&#xF5; m&#xEC;nh n&#xEA;n &#x103;n lo&#x1EA1;i c&#xE2;y/th&#x1ECB;t n&#xE0;o &#x111;&#x1EC3; l&#x1EA5;p &#x111;&#x1EA7;y &#x111;&#xFA;ng ch&#x1EC9; s&#x1ED1; &#x3B2; Protein, &#x3B3; Lipid hay &#x3B1; Carb. &#x102;n sai t&#x1ED5; h&#x1EE3;p, b&#x1EA1;n m&#x1EA5;t lu&#xF4;n buff t&#x103;ng tr&#x1B0;&#x1EDF;ng 300%, m&#x1EA5;t lu&#xF4;n c&#xE1;c ch&#x1EC9; s&#x1ED1; h&#x1ED3;i ph&#x1EE5;c quan tr&#x1ECD;ng khi v&#xE0;o PvP. Ch&#x1B0;a k&#x1EC3; &#x111;&#x1EBF;n h&#x1EC7; th&#x1ED1;ng Mutation (&#x111;&#x1ED9;t bi&#x1EBF;n) &#x2014; m&#x1ED7;i l&#x1EA7;n l&#xEA;n c&#x1EA5;p, game cho b&#x1EA1;n ch&#x1ECD;n ng&#x1EAB;u nhi&#xEA;n t&#x1EEB; m&#x1ED9;t danh s&#xE1;ch h&#xE0;ng ch&#x1EE5;c mutation kh&#xE1;c nhau, m&#x1ED7;i lo&#xE0;i l&#x1EA1;i [&#x2026;]</p>
<p>Bài viết <a href="https://vngame.tv/cong-cu-tinh-dinh-duong-dot-bien-the-isle-evrima/" data-wpel-link="internal">Công Cụ Tính Dinh Dưỡng &amp; Đột Biến The Isle: Evrima — Xây Dựng Build PvP Trong 3 Bước</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Bất kỳ ai từng chơi <strong>The Isle: Evrima</strong> đều biết cảm giác này: bạn vừa lớn lên một chút, vừa tìm được thức ăn, nhưng không rõ mình nên ăn loại cây/thịt nào để lấp đầy đúng chỉ số <strong>β Protein</strong>, <strong>γ Lipid</strong> hay <strong>α Carb</strong>. Ăn sai tổ hợp, bạn mất luôn buff tăng trưởng 300%, mất luôn các chỉ số hồi phục quan trọng khi vào PvP.</p>



<p>Chưa kể đến hệ thống <strong>Mutation (đột biến)</strong> — mỗi lần lên cấp, game cho bạn chọn ngẫu nhiên từ một danh sách hàng chục mutation khác nhau, mỗi loài lại có một pool riêng, có loại chỉ mở khóa được sau khi hoàn thành điều kiện đặc biệt trong game (giết 5 người chơi ban đêm, nhảy 50 lần, uống nước biển đến khi mất nước&#8230;). Với người chơi mới, đây là mê cung thực sự.</p>



<p>Đó là lý do công cụ <strong>Công Cụ Xây Dựng Chế Độ Ăn Uống &amp; Đột Biến</strong> ra đời — giúp bạn xác định ngay: nên ăn gì, ăn theo thứ tự nào, và nên nhắm tới 3 mutation nào để xây dựng lối chơi PvP mạnh nhất cho loài khủng long bạn đang cầm.</p>



<div id="evrima-diet-tool" style="background:#0e1410;color:#d8c9a3;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;padding:28px 16px 60px;border-radius:6px;">
<div style="max-width:760px;margin:0 auto;">

  <div style="border-bottom:1px solid #2a352c;padding-bottom:18px;margin-bottom:26px;">
    <div style="font-family:'Courier New',monospace;letter-spacing:.28em;text-transform:uppercase;font-size:11px;color:#c9974e;opacity:.85;">The Isle · Evrima</div>
    <h1 style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-weight:700;font-size:clamp(24px,6vw,38px);letter-spacing:.02em;margin:6px 0 8px;color:#d8c9a3;">Công Cụ Xây Dựng Chế Độ Ăn Uống &amp; Đột Biến</h1>
    <div style="color:#9a9280;font-size:14.5px;line-height:1.55;max-width:56ch;">Chọn loài, chọn lối chơi PvP — công cụ tự xếp thực đơn 3 chất dinh dưỡng, thứ tự ăn tối ưu tăng trưởng, và 3 chất dinh dưỡng nên bắt cho build đó.</div>
  </div>

  <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #2a352c;border-radius:2px;padding:20px 20px 22px;margin-bottom:16px;">
    <h2 style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:16px;letter-spacing:.06em;text-transform:uppercase;margin:4px 0 14px;color:#d8c9a3;">Bước 1 — Chọn loài khủng long</h2>
    <div id="speciesGrid" style="display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;"></div>
  </div>

  <div style="background:linear-gradient(180deg,#182019,#141c16);border:1px solid #2a352c;border-radius:2px;padding:20px 20px 22px;margin-bottom:16px;">
    <h2 style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:16px;letter-spacing:.06em;text-transform:uppercase;margin:4px 0 14px;color:#d8c9a3;">Bước 2 — Chọn lối chơi PvP</h2>
    <div id="playstyleGrid" style="display:flex;flex-wrap:wrap;gap:10px;"></div>
  </div>

  <div id="resultZone" style="display:none;background:linear-gradient(180deg,#182019,#141c16);border:1px solid #2a352c;border-radius:2px;padding:20px 20px 22px;margin-bottom:16px;">
    <div style="display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:4px;">
      <div id="rSpecies" style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:22px;color:#c9974e;letter-spacing:.02em;">—</div>
      <div id="rPlaystyle" style="font-family:'Courier New',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9a9280;">—</div>
    </div>

    <div style="margin:14px 0 20px;border:1px solid #c9974e;background:linear-gradient(90deg,rgba(201,151,78,.14),transparent);padding:12px 14px;font-size:13.5px;display:flex;align-items:center;gap:12px;">
      <b style="color:#c9974e;font-size:16px;white-space:nowrap;">×3.0</b>
      <span>Ăn đủ cả 3 chất dinh dưỡng (β + γ + α) = <b style="color:#c9974e;">300% tốc độ lớn</b>, tối đa mọi buff hồi phục, cộng hồi Stamina. Đây luôn là mục tiêu cuối cùng bất kể build nào.</span>
    </div>

    <h3 style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#9a9280;margin-bottom:10px;">Menu 3 nutrient cần ăn</h3>
    <div id="macroRow" style="display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px;"></div>

    <h3 style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#9a9280;margin-bottom:10px;">Thứ tự ăn tối ưu</h3>
    <ol id="orderList" style="padding:0;margin:0 0 20px;list-style:none;"></ol>

    <h3 style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#9a9280;margin-bottom:10px;">3 Mutation nên bắt buộc lấy</h3>
    <div id="mutList" style="display:flex;flex-direction:column;gap:10px;margin-bottom:6px;"></div>

    <div id="speciesNote" style="font-size:11.5px;color:#9a9280;line-height:1.55;border-top:1px solid #2a352c;margin-top:20px;padding-top:14px;"></div>
  </div>

  <div style="text-align:center;margin-top:30px;font-size:11px;color:#5a5f55;font-family:'Courier New',monospace;letter-spacing:.08em;">DATA THAM KHẢO CỘNG ĐỒNG EVRIMA · KIỂM TRA LẠI TRONG GAME (PHÍM TAB) VÌ THỨC ĂN CỤ THỂ ĐỔI THEO PATCH</div>
</div>
</div>

<script>
(function(){

var CARD_BASE = "background:#101613;border:1px solid #2a352c;color:#9a9280;text-align:left;padding:11px 12px;border-radius:2px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;font-size:13.5px;";
var CARD_ACTIVE_DIET = { carn:"border-color:#a8402f;background:rgba(168,64,47,.1);color:#d8c9a3;box-shadow:inset 0 0 0 1px #a8402f;",
                          herb:"border-color:#5a8f52;background:rgba(90,143,82,.1);color:#d8c9a3;box-shadow:inset 0 0 0 1px #5a8f52;" };
var CARD_ACTIVE_PS = "border-color:#c9974e;background:rgba(201,151,78,.08);color:#d8c9a3;box-shadow:inset 0 0 0 1px #c9974e;";
var TAG_STYLE = "display:block;font-family:'Courier New',monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;margin-top:4px;opacity:.75;";
var TAG_ACTIVE_CARN = "color:#e18f7c;opacity:1;";
var TAG_ACTIVE_HERB = "color:#9fce93;opacity:1;";
var TAG_ACTIVE_PS = "color:#c9974e;opacity:1;";

var MUTATIONS = {
  cellular:   {name:"Cellular Regeneration", val:"15%", desc:"Hồi máu nhanh hơn một chút.", tag:"Universal"},
  osteo:      {name:"Osteosclerosis", val:"20%", desc:"Kháng / giảm sát thương gãy xương.", tag:"Universal"},
  hydrodyn:   {name:"Hydrodynamic", val:"15%", desc:"Tăng tốc độ bơi.", tag:"Universal"},
  hypoalg:    {name:"Congenital Hypoalgesia", val:"15%", desc:"Giảm sát thương khi đấu với loài to hơn.", tag:"Universal"},
  epiderm:    {name:"Epidermal Fibrosis", val:"15%", desc:"Tăng kháng chảy máu (bleed).", tag:"Universal"},
  effdig:     {name:"Efficient Digestion", val:"20%", desc:"Bụng no lâu hơn, ăn ít lần hơn — cực tốt để giữ diet full khi rush PvP.", tag:"Universal"},
  sushyd:     {name:"Sustained Hydration", val:"20%", desc:"Nước tiêu hao chậm hơn.", tag:"Universal"},
  hydroreg:   {name:"Hydro-regenerative", val:"25%", desc:"Hồi máu nhanh hơn khi trời mưa.", tag:"Universal"},
  photreg:    {name:"Photosynthetic Tissue", val:"5%", desc:"Hồi máu/locked-health nhanh hơn vào ban ngày.", tag:"Universal"},
  nocturnal:  {name:"Nocturnal", val:"5%", desc:"Hồi máu/locked-health nhanh hơn vào ban đêm.", tag:"Universal"},
  reabsorp:   {name:"Reabsorption", val:"", desc:"Hồi một ít nước khi trời mưa hoặc bơi trong nước sạch.", tag:"Universal"},
  submerged:  {name:"Submerged Optical Retention", val:"5%", desc:"Tăng tầm nhìn dưới nước.", tag:"Universal"},
  accelprey:  {name:"Accelerated Prey Drive", val:"10%", desc:"Gây thêm sát thương lên con mồi dưới 35% máu — chốt hạ nhanh hơn.", tag:"Carnivore"},
  hemomania:  {name:"Hemomania", val:"5%", desc:"Sát thương thêm lên mục tiêu đang chảy máu — cực mạnh khi combo với vuốt gây bleed.", tag:"Carnivore"},
  hematoph:   {name:"Hematophagy", val:"15%", desc:"Hồi một phần khát khi ăn xác — giảm thời gian phải rời trận để uống nước.", tag:"Carnivore"},
  hypermeta:  {name:"Hypermetabolic Inanition", val:"", desc:"Càng đói càng gây sát thương cao hơn — build liều ăn thua đổi damage. (Slot 2)", tag:"Carnivore · Slot 2"},
  augtapet:   {name:"Augmented Tapetum", val:"", desc:"Tăng tầm nhìn ban đêm. Mở khoá: giết 5 người chơi vào ban đêm.", tag:"Carnivore · Unlock"},
  osteophag:  {name:"Osteophagic", val:"", desc:"Ăn xương để hồi gãy xương nhanh hơn. Mở khoá: ăn xương khi đang gãy xương.", tag:"Carnivore · Unlock"},
  photreg2:   {name:"Photosynthetic Regeneration", val:"10%", desc:"Hồi Stamina nhanh hơn vào ban ngày — chạy trốn/rush bền hơn.", tag:"Herbivore"},
  truculency: {name:"Truculency", val:"5%", desc:"Húc (buck) có khả năng cao hơn hất văng kẻ đang bám (latch).", tag:"Herbivore"},
  xerocole:   {name:"Xerocole Adaptation", val:"15%", desc:"Nhận thêm nước khi ăn thực vật.", tag:"Herbivore"},
  hypervig:   {name:"Hypervigilance", val:"50%", desc:"Tăng góc camera khi ăn/uống, nghe rõ tiếng bước chân hơn — cảnh giác tốt hơn khi bị rình.", tag:"Herbivore"},
  tactend:    {name:"Tactile Endurance", val:"", desc:"Chuyển sát thương nhận vào thành Stamina — cực mạnh cho build tank chịu đòn. (Slot 2)", tag:"Herbivore · Slot 2"},
  traumatic:  {name:"Traumatic Thrombosis", val:"", desc:"Không chết vì mất máu nếu đang nghỉ (rest) — cứu mạng khi bị rỉa máu giữa trận. (Slot 2)", tag:"Slot 2"},
  gastroreg:  {name:"Gastronomic Regeneration", val:"", desc:"Ăn hồi thêm một ít máu — build tanker càng ăn càng trâu. (Slot 2)", tag:"Slot 2"},
  enhdig:     {name:"Enhanced Digestion", val:"", desc:"Giảm tốc độ suy giảm dinh dưỡng — giữ buff 300% growth lâu hơn. Mở khoá: giữ chế độ ăn ở mức 'tốt' trở lên trong ít nhất 60% tổng thời gian trưởng thành (không phải mốc cố định theo phút — loài lớn thời gian trưởng thành dài hơn thì cần giữ diet tốt lâu hơn theo tỷ lệ).", tag:"Unlock"},
  heightgh:   {name:"Heightened Ghrelin", val:"", desc:"Tăng khả năng ăn quá no (overeating) — nạp full 3 macro nhanh hơn. Mở khoá: giữ bụng no (full, đèn nhấp nháy) liên tục trong ít nhất 9 phút.", tag:"Unlock"},
  multicham:  {name:"Multichambered Lungs", val:"", desc:"Tăng ngưỡng hồi Stamina — bền hơn khi rượt/chạy trốn dài. Mở khoá: tiêu hao khoảng 6-8 thanh (bar) Stamina bằng cách chạy nước rút hoặc bơi nhanh liên tục (số liệu chính xác có thể đổi theo patch).", tag:"Unlock"},
  renikid:    {name:"Reniculate Kidneys", val:"", desc:"Uống được nước biển — không bao giờ thiếu nước giữa trận. Mở khoá: tiếp tục uống nước biển cho đến khi hiệu ứng 'Fluid Deficient' (thiếu nước nghiêm trọng) tự biến mất.", tag:"Unlock"},
  reinforced: {name:"Reinforced Tendons", val:"", desc:"Nhảy tốn ít Stamina hơn. Mở khoá: nhảy 50 lần.", tag:"Unlock"}
};

var SPECIES = [
  {id:"rex", name:"Tyrannosaurus Rex", diet:"carn", size:"Apex", note:"Apex, chậm nhưng lực cắn khủng. Ưu tiên Osteosclerosis vì hay bị Trike/Stego húc gãy xương."},
  {id:"carno", name:"Carnotaurus", diet:"carn", size:"Large", note:"Nhanh, chuyên combat hit-and-run. Hemomania + tốc độ là combo chuẩn PvP."},
  {id:"allo", name:"Allosaurus", diet:"carn", size:"Large", note:"Săn theo bầy, cần bền bỉ hơn burst — ưu tiên Efficient Digestion để không phải rời trận đi ăn."},
  {id:"deino", name:"Deinosuchus", diet:"carn", size:"Apex (nước)", note:"Săn phục kích dưới nước — Hydrodynamic gần như bắt buộc."},
  {id:"dryo", name:"Dryosaurus", diet:"herb", size:"Small", note:"Nhỏ nhất, nhanh nhất trong nhóm herbivore nhỏ, gần như không có khả năng chiến đấu — sinh tồn thuần túy bằng tốc độ và né tránh, không phải để đối đầu trực diện."},
  {id:"cerato", name:"Ceratosaurus", diet:"carn", size:"Medium", note:"Đấu 1v1 tầm trung — cân bằng phòng thủ (Hypoalgesia) và sát thương (Hemomania)."},
  {id:"trike", name:"Triceratops", diet:"herb", size:"Apex", note:"Tanker đầu bảng — Tactile Endurance biến sát thương nhận thành Stamina, cực mạnh khi đấu Rex."},
  {id:"stego", name:"Stegosaurus", diet:"herb", size:"Apex", note:"Growth rất lâu (gần 18 tiếng) nên combo 3 nutrient (x3 growth) quan trọng hơn mọi loài khác."},
  {id:"diablo", name:"Diabloceratops", diet:"herb", size:"Medium", note:"Cơ động hơn Trike, hay đấu solo — Truculency giúp hất bám (latch) của raptor/pack."},
  {id:"pachy", name:"Pachycephalosaurus", diet:"herb", size:"Medium", note:"Chuyên húc (headbutt) — Photosynthetic Regeneration giữ Stamina để húc liên tục."},
  {id:"maia", name:"Maiasaura", diet:"herb", size:"Medium", note:"Sống bầy, hay bị rình khi ăn — Hypervigilance cảnh giác cao là lựa chọn PvP hàng đầu."},
  {id:"hypsi", name:"Hypsilophodon", diet:"herb", size:"Small", note:"Nhỏ, dựa hoàn toàn vào tốc độ và cảnh giác để né PvP, không phải để tank."},
  {id:"herrera", name:"Herrerasaurus", diet:"carn", size:"Small", note:"Săn đơn cỡ nhỏ, ăn thịt xác chết là chiến thuật chính — Hematophagy cực hợp để né phải rời bãi xác đi tìm nước."},
  {id:"dilo", name:"Dilophosaurus", diet:"carn", size:"Medium", note:"Combat tầm trung, hay đấu bám dai — Hemomania tận dụng vết cắn gây bleed liên tục."},
  {id:"omni", name:"Omniraptor", diet:"carn", size:"Small pack", note:"Đi bầy đông, thắng nhờ số lượng và tốc độ hồi phục giữa các đợt tấn công."},
  {id:"troodon", name:"Troodon", diet:"carn", size:"Small", note:"Hoạt động về đêm là chủ đạo — Nocturnal gần như mặc định, cảnh giác cao để bắt lẻ. Gần như vô dụng khi chơi solo, cần đi bầy."},
  {id:"tenon", name:"Tenontosaurus", diet:"herb", size:"Medium", note:"Bơi giỏi, sống gần nước — Hydrodynamic cho phép rút lui xuống nước để né PvP trên cạn."},
  {id:"galli", name:"Gallimimus", diet:"herb", size:"Medium (Omnivore)", note:"Thực chất là loài ăn tạp (omnivore), nhưng được xếp vào nhóm mutation herbivore trong tool này vì lối chơi thiên hoàn toàn về né tránh/tốc độ, không phải combat. Tốc độ tối đa phụ thuộc trực tiếp vào số nutrient đã lấp đầy — càng ăn đủ 3 nhóm, chạy càng nhanh."},
  {id:"ptera", name:"Pteranodon", diet:"carn", size:"Flyer", note:"Đánh rồi rút bằng đường không — Reinforced Tendons (giảm tốn stamina khi cất cánh) là lợi thế PvP rất lớn."},
  {id:"beipi", name:"Beipiaosaurus", diet:"herb", size:"Small", note:"Nhỏ, sống bầy, dễ bị bắt lẻ khi đang ăn — Hypervigilance là lựa chọn sống còn."}
];

var PLAYSTYLES = {
  tank: { label:"Tanker", desc:"Trâu bò, chịu đòn, không sợ giao tranh kéo dài.",
    carn:["hypoalg","osteo","cellular"], herb:["tactend","osteo","gastroreg"],
    orderTip:["Ăn no Beta (Protein) trước để có nền HP regen ổn định ngay từ đầu trận.",
      "Tiếp theo nạp Gamma (Lipid) — bạn sẽ ăn đòn gãy xương nhiều, cần Fracture Regen sớm.",
      "Cuối cùng lấp đầy Alpha (Carb) để mở khoá full combo 300% growth + Locked Health Regen."] },
  speed: { label:"Chạy nhanh", desc:"Hit-and-run, rượt đuổi, né giao tranh trực diện.",
    carn:["accelprey","hydrodyn","effdig"], herb:["photreg2","hydrodyn","xerocole"],
    orderTip:["Ưu tiên Alpha (Carb) đầu tiên — Bleed Regen giúp bạn không bị rỉa máu khi rút lui giữa trận rượt đuổi.",
      "Sau đó nạp Beta (Protein) để có nền HP regen khi phải giao tranh chớp nhoáng.",
      "Nạp nốt Gamma (Lipid) cuối để đạt full combo — Stamina Regen 15% là thứ quyết định bạn có thoát được cuộc rượt đuổi hay không."] },
  regen: { label:"Hồi máu nhanh", desc:"Sustain dài hơi, thắng nhờ outheal đối thủ.",
    carn:["hemomania","hydroreg","cellular"], herb:["gastroreg","hydroreg","photreg2"],
    orderTip:["Nạp Gamma (Lipid) trước tiên — Fracture Regen kết hợp Cellular/Gastronomic Regeneration tạo nền hồi phục sớm.",
      "Tiếp theo nạp Beta (Protein) để cộng dồn HP Regen — hai buff hồi máu chồng lên nhau.",
      "Đóng bằng Alpha (Carb) để đạt full combo 300% growth + Stamina Regen, giữ bạn trụ lâu nhất trong giao tranh kéo dài."] }
};

var MACRO_INFO = [
  {key:"beta", sym:"β", label:"Beta · Protein", buff:"+10% HP Regen (đơn) → +10% max khi full combo", border:"#7a5c8a", color:"#b98fd1"},
  {key:"gamma", sym:"γ", label:"Gamma · Lipid", buff:"+10% Fracture Regen (đơn) → +10% max khi full combo", border:"#5c8a7a", color:"#8fd1b9"},
  {key:"alpha", sym:"α", label:"Alpha · Carb", buff:"+10% Bleed Regen (đơn) → +10% max khi full combo", border:"#8a7a5c", color:"#d1b98f"}
];

var selSpecies = null, selPlaystyle = null;

var speciesGrid = document.getElementById("speciesGrid");
SPECIES.forEach(function(sp){
  var btn = document.createElement("button");
  btn.type = "button";
  btn.setAttribute("style", CARD_BASE);
  var tagEl = document.createElement("span");
  tagEl.setAttribute("style", TAG_STYLE);
  tagEl.textContent = (sp.diet === "carn" ? "Carnivore" : "Herbivore") + " · " + sp.size;
  btn.appendChild(document.createTextNode(sp.name));
  btn.appendChild(tagEl);
  btn.onclick = function(){
    [].forEach.call(speciesGrid.children, function(c){
      c.setAttribute("style", CARD_BASE);
      c.querySelector("span").setAttribute("style", TAG_STYLE);
    });
    var activeStyle = CARD_BASE + (sp.diet === "carn" ? CARD_ACTIVE_DIET.carn : CARD_ACTIVE_DIET.herb);
    btn.setAttribute("style", activeStyle);
    tagEl.setAttribute("style", TAG_STYLE + (sp.diet === "carn" ? TAG_ACTIVE_CARN : TAG_ACTIVE_HERB));
    selSpecies = sp;
    render();
  };
  speciesGrid.appendChild(btn);
});

var playstyleGrid = document.getElementById("playstyleGrid");
Object.keys(PLAYSTYLES).forEach(function(key){
  var ps = PLAYSTYLES[key];
  var btn = document.createElement("button");
  btn.type = "button";
  btn.setAttribute("style", CARD_BASE + "flex:1 1 150px;");
  var descEl = document.createElement("div");
  descEl.setAttribute("style", "font-size:11.5px;color:#9a9280;margin-top:5px;line-height:1.4;");
  descEl.textContent = ps.desc;
  btn.appendChild(document.createTextNode(ps.label));
  btn.appendChild(descEl);
  btn.onclick = function(){
    [].forEach.call(playstyleGrid.children, function(c){
      c.setAttribute("style", CARD_BASE + "flex:1 1 150px;");
    });
    btn.setAttribute("style", CARD_BASE + "flex:1 1 150px;" + CARD_ACTIVE_PS);
    selPlaystyle = key;
    render();
  };
  playstyleGrid.appendChild(btn);
});

function render(){
  if(!selSpecies || !selPlaystyle) return;
  var resultZone = document.getElementById("resultZone");
  resultZone.style.display = "block";

  var ps = PLAYSTYLES[selPlaystyle];
  document.getElementById("rSpecies").textContent = selSpecies.name;
  document.getElementById("rPlaystyle").textContent = "Build: " + ps.label;

  var macroRow = document.getElementById("macroRow");
  macroRow.innerHTML = "";
  MACRO_INFO.forEach(function(m){
    var div = document.createElement("div");
    div.setAttribute("style", "border:1px solid " + m.border + ";padding:12px 10px;text-align:center;background:#0f1512;");
    var sym = document.createElement("div");
    sym.setAttribute("style", "font-size:20px;font-weight:700;color:" + m.color + ";");
    sym.textContent = m.sym;
    var lbl = document.createElement("div");
    lbl.setAttribute("style", "font-family:'Courier New',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#9a9280;margin-top:2px;");
    lbl.textContent = m.label;
    var buff = document.createElement("div");
    buff.setAttribute("style", "font-size:11.5px;color:#c9974e;margin-top:6px;line-height:1.35;");
    buff.textContent = m.buff;
    div.appendChild(sym); div.appendChild(lbl); div.appendChild(buff);
    macroRow.appendChild(div);
  });

  var orderList = document.getElementById("orderList");
  orderList.innerHTML = "";
  ps.orderTip.forEach(function(step, i){
    var li = document.createElement("li");
    li.setAttribute("style", "padding:8px 0 8px 34px;position:relative;border-bottom:1px dashed #2a352c;font-size:13.5px;line-height:1.5;list-style:none;");
    var num = document.createElement("span");
    num.setAttribute("style", "position:absolute;left:0;top:8px;width:22px;height:22px;border:1px solid #c9974e;color:#c9974e;font-family:'Courier New',monospace;font-size:11px;display:flex;align-items:center;justify-content:center;border-radius:50%;");
    num.textContent = (i+1);
    li.appendChild(num);
    li.appendChild(document.createTextNode(step));
    orderList.appendChild(li);
  });

  var mutIds = selSpecies.diet === "carn" ? ps.carn : ps.herb;
  var mutList = document.getElementById("mutList");
  mutList.innerHTML = "";
  mutIds.forEach(function(id){
    var m = MUTATIONS[id];
    var div = document.createElement("div");
    div.setAttribute("style", "border:1px solid #2a352c;border-left:3px solid #c9974e;background:#0f1512;padding:10px 14px;");
    var head = document.createElement("div");
    var nameEl = document.createElement("span");
    nameEl.setAttribute("style", "font-weight:700;color:#d8c9a3;font-size:14.5px;");
    nameEl.textContent = m.name;
    head.appendChild(nameEl);
    if(m.val){
      var valEl = document.createElement("span");
      valEl.setAttribute("style", "color:#c9974e;font-family:'Courier New',monospace;font-size:12px;margin-left:6px;");
      valEl.textContent = m.val;
      head.appendChild(valEl);
    }
    var descEl = document.createElement("div");
    descEl.setAttribute("style", "color:#9a9280;font-size:13px;margin-top:3px;line-height:1.4;");
    descEl.textContent = m.desc;
    var tagEl = document.createElement("span");
    tagEl.setAttribute("style", "display:inline-block;margin-top:6px;font-family:'Courier New',monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:#9a9280;border:1px solid #2a352c;padding:2px 6px;");
    tagEl.textContent = m.tag;
    div.appendChild(head); div.appendChild(descEl); div.appendChild(tagEl);
    mutList.appendChild(div);
  });

  var noteEl = document.getElementById("speciesNote");
  noteEl.innerHTML = "";
  var b = document.createElement("b");
  b.setAttribute("style", "color:#c9974e;");
  b.textContent = "Ghi chú cho " + selSpecies.name + ": ";
  noteEl.appendChild(b);
  noteEl.appendChild(document.createTextNode(selSpecies.note + " Thức ăn cụ thể cho từng chất dinh dưỡng khác nhau theo loài và đổi theo patch — mở "));
  var tabB = document.createElement("b");
  tabB.setAttribute("style", "color:#c9974e;");
  tabB.textContent = "Tab";
  noteEl.appendChild(tabB);
  noteEl.appendChild(document.createTextNode(" trong game để xem chính xác loại cây/thịt nào lấp đầy β / γ / α của loài bạn đang chơi hiện tại."));

  resultZone.scrollIntoView({behavior:"smooth", block:"nearest"});
}

})();
</script>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Công cụ này làm được gì?</mark></h3>



<p>Chỉ với 2 lựa chọn đơn giản, công cụ sẽ tự động xuất ra toàn bộ chiến lược build cho bạn:</p>



<ol class="wp-block-list">
<li><strong>Chọn loài khủng long</strong> — hỗ trợ 20 loài phổ biến nhất trong PvP Evrima, từ apex như T-Rex, Triceratops, Stegosaurus, Apatosaurus đến các loài nhỏ nhanh nhẹn như Utahraptor, Troodon, Compsognathus-class Beipiaosaurus, hay loài bay Pteranodon.</li>



<li><strong>Chọn lối chơi PvP</strong> — Tanker (trâu bò, chịu đòn), Chạy nhanh (hit-and-run, rượt đuổi), hoặc Hồi máu nhanh (sustain, outheal đối thủ).</li>
</ol>



<p>Sau đó công cụ tự động trả về:</p>



<ul class="wp-block-list">
<li><strong>Menu 3 nutrient cần ăn</strong> (β / γ / α) kèm buff cụ thể của từng loại.</li>



<li><strong>Thứ tự ăn tối ưu</strong> — nutrient nào nên nạp trước, nutrient nào nên để dành đến cuối để giữ được lợi thế lâu nhất trong trận.</li>



<li><strong>3 Mutation nên bắt buộc lấy</strong> cho đúng build đã chọn, kèm mô tả tác dụng và điều kiện mở khóa (nếu có).</li>



<li><strong>Ghi chú riêng theo từng loài</strong> — vì mỗi loài có điểm mạnh/yếu khác nhau, mutation phù hợp với Rex chưa chắc đã hợp với Triceratops.</li>
</ul>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Vì sao nên tối ưu đột biến trước khi nghĩ đến combat?</mark></h3>



<p>Theo cơ chế Evrima hiện tại, việc lấp đầy cả 3 thanh nutrient cùng lúc mang lại <strong>buff tăng trưởng 300%</strong> — tức là một con khủng long vốn cần 6 giờ để trưởng thành có thể rút ngắn còn khoảng 2 giờ. Đây là lợi thế sống còn: bạn trưởng thành nhanh hơn đối thủ, có mutation sớm hơn, và bước vào giai đoạn PvP với lợi thế thời gian rõ rệt.</p>



<p>Ngoài ra, mỗi tổ hợp nutrient còn mở khóa thêm các buff phụ:</p>



<ul class="wp-block-list">
<li><strong>β + α (Protein + Carb):</strong> kháng chảy máu (Bleed Resistance)</li>



<li><strong>β + γ (Protein + Lipid):</strong> kháng gãy xương (Fracture Resistance)</li>



<li><strong>α + γ (Carb + Lipid):</strong> hồi máu khóa (Locked Health Regen)</li>



<li><strong>Cả 3 (β + α + γ):</strong> hồi Stamina, tất cả buff macro đạt mức tối đa</li>
</ul>



<p>Nắm được combo nào cần ưu tiên trong hoàn cảnh nào chính là chìa khóa để không &#8220;chết oan&#8221; giữa trận vì hết máu hoặc hết stamina.</p>



<div class="the-isle-box">
  <div class="the-isle-header">
    <span class="the-isle-icon"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f996.png" alt="🦖" class="wp-smiley" style="height: 1em; max-height: 1em;" /></span>
    <a href="https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/" target="_blank" rel="noopener" class="the-isle-title" data-wpel-link="internal">
      The Isle – Hướng Dẫn Game Khủng Long
    </a>
  </div>
  <p class="the-isle-desc">
    Tổng hợp hướng dẫn, mẹo chơi và thông tin hữu ích về The Isle. Khám phá thế giới khủng long với các hướng dẫn dành cho người mới, cách chọn khủng long, làm tổ, hệ thống Prime &amp; Prime Elder và nhiều mẹo sinh tồn khác.
  </p>
  <a href="https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/" target="_blank" rel="noopener" class="the-isle-button" data-wpel-link="internal">
    Xem Hướng Dẫn Chi Tiết &rarr;
  </a>
</div>

<style>
  .the-isle-box {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #16a34a;
    border-radius: 8px;
    padding: 18px 22px;
    margin: 20px 0;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .the-isle-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
  }
  .the-isle-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
  }
  .the-isle-icon {
    font-size: 1.5rem;
    line-height: 1;
  }
  .the-isle-title {
    color: #15803d;
    font-size: 1.15rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.2s ease;
  }
  .the-isle-title:hover {
    color: #166534;
    text-decoration: underline;
  }
  .the-isle-desc {
    margin: 0 0 14px 0;
    font-size: 0.95rem;
    line-height: 1.6;
    color: #475569;
  }
  .the-isle-button {
    display: inline-block;
    background-color: #16a34a;
    color: #ffffff;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    transition: background-color 0.2s ease;
  }
  .the-isle-button:hover {
    background-color: #15803d;
  }
</style>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Chất dinh dưỡng nào đáng bắt nhất cho PvP?</mark></h3>



<p>Công cụ lọc sẵn theo lối chơi, nhưng nếu bạn muốn hiểu logic đằng sau, đây là vài gợi ý kinh điển trong cộng đồng Evrima:</p>



<ul class="wp-block-list">
<li><strong>Hemomania</strong> — sát thương cộng thêm lên mục tiêu đang chảy máu, cực mạnh với các loài có đòn gây bleed như Carnotaurus, Ceratosaurus.</li>



<li><strong>Tactile Endurance</strong> — chuyển sát thương nhận vào thành Stamina, biến các loài herbivore tank như Triceratops thành cỗ máy trâu bò khó hạ.</li>



<li><strong>Efficient Digestion</strong> — bụng no lâu hơn, giúp bạn không phải rời trận giữa chừng để đi ăn, rất quan trọng khi đang rượt đuổi hoặc phòng thủ lãnh thổ.</li>



<li><strong>Osteosclerosis</strong> — kháng gãy xương, gần như bắt buộc với các loài hay bị húc như Rex khi đối đầu Triceratops/Stegosaurus.</li>
</ul>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Cách dùng công cụ</mark></h3>



<ol class="wp-block-list">
<li>Mở file <strong>Diet &amp; Mutation Builder</strong> (định dạng HTML, chạy trực tiếp trên trình duyệt, không cần cài đặt gì thêm).</li>



<li>Chọn loài khủng long bạn đang chơi trong danh sách 20 loài.</li>



<li>Chọn lối chơi PvP: Tanker / Chạy nhanh / Hồi máu nhanh.</li>



<li>Đọc kết quả: menu nutrient, thứ tự ăn, và 3 mutation khuyến nghị sẽ hiện ra ngay bên dưới.</li>



<li>Vào game, mở phím <strong>Tab</strong> để đối chiếu thức ăn cụ thể quanh bạn với nutrient cần lấp đầy (vì món ăn cụ thể có thể thay đổi theo từng bản cập nhật của Evrima).</li>
</ol>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Lưu ý quan trọng</mark></h3>



<p>Hệ thống 3-nutrient và danh sách mutation trong công cụ được tổng hợp theo cơ chế hiện tại của Evrima, nhưng <strong>món ăn cụ thể lấp đầy từng nutrient khác nhau theo từng loài và thay đổi theo mỗi bản cập nhật</strong> (Afterthought Studios thường xuyên chỉnh sửa diet pool). Vì vậy hãy luôn kiểm tra lại trong game bằng phím Tab để chắc chắn bạn đang ăn đúng loại thức ăn cho macro mình cần.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p><em>Công cụ được xây dựng dựa trên cơ chế Diet &amp; Mutation chính thức của The Isle: Evrima, tổng hợp từ các nguồn cộng đồng cập nhật đến giữa năm 2026. Không liên kết chính thức với Afterthought Studios.</em></p>
<p>Bài viết <a href="https://vngame.tv/cong-cu-tinh-dinh-duong-dot-bien-the-isle-evrima/" data-wpel-link="internal">Công Cụ Tính Dinh Dưỡng &amp; Đột Biến The Isle: Evrima — Xây Dựng Build PvP Trong 3 Bước</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://vngame.tv/cong-cu-tinh-dinh-duong-dot-bien-the-isle-evrima/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">18550</post-id>	</item>
		<item>
		<title>Công cụ tính và cách tính Sự phát triển của khủng long The Isle</title>
		<link>https://vngame.tv/cong-cu-tinh-su-phat-trien-cua-khung-long-the-isle/</link>
					<comments>https://vngame.tv/cong-cu-tinh-su-phat-trien-cua-khung-long-the-isle/#respond</comments>
		
		<dc:creator><![CDATA[Cá]]></dc:creator>
		<pubDate>Sat, 15 Aug 2026 15:55:05 +0000</pubDate>
				<category><![CDATA[Hướng dẫn chơi The Isle]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Công cụ tính Sự phát triển của khủng long The Isle]]></category>
		<category><![CDATA[Công cụ tính The Isle]]></category>
		<category><![CDATA[Mẹo chơi The Isle]]></category>
		<category><![CDATA[Tăng trưởng khủng long The Isle]]></category>
		<category><![CDATA[The Isle]]></category>
		<category><![CDATA[vngame]]></category>
		<guid isPermaLink="false">https://vngame.tv/?p=17995</guid>

					<description><![CDATA[<p>T&#x1ED1;c &#x111;&#x1ED9; t&#x103;ng tr&#x1B0;&#x1EDF;ng l&#xE0; y&#x1EBF;u t&#x1ED1; quy&#x1EBF;t &#x111;&#x1ECB;nh m&#x1ECD;i th&#x1EE9; kh&#xE1;c trong The Isle: Evrima. &#x110;&#x1ED9;t bi&#x1EBF;n, lai t&#x1EA1;o, c&#xE1;c lo&#xE0;i b&#x1EA1;n c&#xF3; th&#x1EC3; chi&#x1EBF;n &#x111;&#x1EA5;u &#x2013; t&#x1EA5;t c&#x1EA3; &#x111;&#x1EC1;u b&#x1ECB; kh&#xF3;a sau thanh ph&#x1EA7;n tr&#x103;m ph&#xED;a tr&#xEA;n &#x1EA3;nh &#x111;&#x1EA1;i di&#x1EC7;n c&#x1EE7;a b&#x1EA1;n. T&#x1ED1;c &#x111;&#x1ED9; l&#x1EA5;p &#x111;&#x1EA7;y thanh n&#xE0;y ph&#x1EE5; thu&#x1ED9;c g&#x1EA7;n nh&#x1B0; ho&#xE0;n to&#xE0;n v&#xE0;o&#xA0;nh&#x1EEF;ng g&#xEC; b&#x1EA1;n &#x103;n&#xA0;: m&#x1ED9;t ch&#x1EA5;t dinh d&#x1B0;&#x1EE1;ng l&#xE0; t&#x1ED1;c &#x111;&#x1ED9; c&#x1A1; b&#x1EA3;n, ba ch&#x1EA5;t dinh d&#x1B0;&#x1EE1;ng l&#xE0; t&#x1ED1;c &#x111;&#x1ED9; g&#x1EA5;p ba. Ch&#x1ECD;n m&#x1ED9;t lo&#xE0;i s&#x1EBD; quy&#x1EBF;t &#x111;&#x1ECB;nh th&#x1EDD;i gian t&#x103;ng tr&#x1B0;&#x1EDF;ng c&#x1A1; b&#x1EA3;n c&#x1EE7;a b&#x1EA1;n; l&#x1EF1;a ch&#x1ECD;n ch&#x1EBF; &#x111;&#x1ED9; &#x103;n u&#x1ED1;ng s&#x1EBD; quy&#x1EBF;t [&#x2026;]</p>
<p>Bài viết <a href="https://vngame.tv/cong-cu-tinh-su-phat-trien-cua-khung-long-the-isle/" data-wpel-link="internal">Công cụ tính và cách tính Sự phát triển của khủng long The Isle</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Tốc độ tăng trưởng là yếu tố quyết định mọi thứ khác trong The Isle: Evrima. Đột biến, lai tạo, các loài bạn có thể chiến đấu – tất cả đều bị khóa sau thanh phần trăm phía trên ảnh đại diện của bạn. Tốc độ lấp đầy thanh này phụ thuộc gần như hoàn toàn vào&nbsp;<strong>những gì bạn ăn</strong>&nbsp;: một chất dinh dưỡng là tốc độ cơ bản, ba chất dinh dưỡng là tốc độ gấp ba. Chọn một loài sẽ quyết định thời gian tăng trưởng cơ bản của bạn; lựa chọn chế độ ăn uống sẽ quyết định tốc độ bạn đạt được mục tiêu đó.</p>



<div class="the-isle-box">
  <div class="the-isle-header">
    <span class="the-isle-icon"><img src="https://s.w.org/images/core/emoji/16.0.1/72x72/1f996.png" alt="🦖" class="wp-smiley" style="height: 1em; max-height: 1em;" /></span>
    <a href="https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/" target="_blank" rel="noopener" class="the-isle-title" data-wpel-link="internal">
      The Isle – Hướng Dẫn Game Khủng Long
    </a>
  </div>
  <p class="the-isle-desc">
    Tổng hợp hướng dẫn, mẹo chơi và thông tin hữu ích về The Isle. Khám phá thế giới khủng long với các hướng dẫn dành cho người mới, cách chọn khủng long, làm tổ, hệ thống Prime &amp; Prime Elder và nhiều mẹo sinh tồn khác.
  </p>
  <a href="https://vngame.tv/chuyen-muc/game-khac/the-isle-guide/" target="_blank" rel="noopener" class="the-isle-button" data-wpel-link="internal">
    Xem Hướng Dẫn Chi Tiết &rarr;
  </a>
</div>

<style>
  .the-isle-box {
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #16a34a;
    border-radius: 8px;
    padding: 18px 22px;
    margin: 20px 0;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  .the-isle-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.08), 0 4px 6px -2px rgba(0, 0, 0, 0.04);
  }
  .the-isle-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 8px;
  }
  .the-isle-icon {
    font-size: 1.5rem;
    line-height: 1;
  }
  .the-isle-title {
    color: #15803d;
    font-size: 1.15rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.2s ease;
  }
  .the-isle-title:hover {
    color: #166534;
    text-decoration: underline;
  }
  .the-isle-desc {
    margin: 0 0 14px 0;
    font-size: 0.95rem;
    line-height: 1.6;
    color: #475569;
  }
  .the-isle-button {
    display: inline-block;
    background-color: #16a34a;
    color: #ffffff;
    font-size: 0.875rem;
    font-weight: 600;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    transition: background-color 0.2s ease;
  }
  .the-isle-button:hover {
    background-color: #15803d;
  }
</style>



<div id="growth-calc-widget" style="background:#ffffff; border:1px solid #e0e0e0; border-radius:8px; padding:24px; width:100%; box-sizing:border-box; font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif; color:#222;">

  <div style="font-size:18px; font-weight:bold; color:#111; margin-bottom:10px;">Máy tính tăng trưởng</div>

  <div style="font-size:12px; color:#666; line-height:1.6; margin-bottom:20px;">
    Ước tính thời gian thực tế để đạt được tỷ lệ tăng trưởng mục tiêu dựa trên loài của bạn, cài đặt máy chủ (GrowthMultiplier trong Game.ini) và chế độ ăn hiện tại. Số liệu mặc định; các máy chủ cộng đồng thường tăng gấp 2-5 lần.
  </div>

  <div style="display:flex; gap:16px; flex-wrap:wrap; margin-bottom:16px;">
    <div style="flex:1; min-width:220px;">
      <label style="display:block; font-size:11px; font-weight:bold; color:#888; text-transform:uppercase; letter-spacing:0.5px; margin-bottom:6px;">Giống loài</label>
      <select id="gc-species" style="width:100%; height:38px; border:1px solid #ccc; border-radius:6px; padding:0 10px; font-size:14px; background:#fff; color:#222; box-sizing:border-box;"></select>
    </div>
    <div style="flex:1; min-width:220px;">
      <label style="display:block; font-size:11px; font-weight:bold; color:#888; text-transform:uppercase; letter-spacing:0.5px; margin-bottom:6px;">Chế độ ăn (macro bổ sung)</label>
      <select id="gc-diet" style="width:100%; height:38px; border:1px solid #ccc; border-radius:6px; padding:0 10px; font-size:14px; background:#fff; color:#222; box-sizing:border-box;">
        <option value="1">1 macro (β, γ hoặc α) → tỷ lệ 100%</option>
        <option value="2">Kết hợp 2 macro → tỷ lệ 200%</option>
        <option value="3" selected>Cả 3 macro → tỷ lệ 300%</option>
      </select>
    </div>
  </div>

  <div style="display:flex; gap:16px; flex-wrap:wrap; margin-bottom:16px;">
    <div style="flex:1; min-width:220px;">
      <div style="display:flex; justify-content:space-between; margin-bottom:6px;">
        <label style="font-size:11px; font-weight:bold; color:#888; text-transform:uppercase; letter-spacing:0.5px;">Tốc độ tăng trưởng hiện tại</label>
        <span id="gc-current-out" style="font-size:13px; font-weight:bold; color:#b8760f;">25%</span>
      </div>
      <input id="gc-current" type="range" min="0" max="100" value="25" step="1" style="width:100%;" />
    </div>
    <div style="flex:1; min-width:220px;">
      <div style="display:flex; justify-content:space-between; margin-bottom:6px;">
        <label style="font-size:11px; font-weight:bold; color:#888; text-transform:uppercase; letter-spacing:0.5px;">Mục tiêu tăng trưởng</label>
        <span id="gc-target-out" style="font-size:13px; font-weight:bold; color:#b8760f;">100%</span>
      </div>
      <input id="gc-target" type="range" min="0" max="100" value="100" step="1" style="width:100%;" />
    </div>
  </div>

  <div style="margin-bottom:16px;">
    <div style="display:flex; justify-content:space-between; margin-bottom:6px;">
      <label style="font-size:11px; font-weight:bold; color:#888; text-transform:uppercase; letter-spacing:0.5px;">Hệ số tăng trưởng máy chủ</label>
      <span id="gc-mult-out" style="font-size:13px; font-weight:bold; color:#b8760f;">1.00x</span>
    </div>
    <input id="gc-mult" type="range" min="0.1" max="10" value="1" step="0.05" style="width:100%; margin-bottom:10px;" />
    <div style="display:flex; gap:8px; flex-wrap:wrap;">
      <button data-mult="1" class="gc-preset" style="flex:1; min-width:100px; height:34px; border:1px solid #ccc; border-radius:6px; background:#fff; font-size:12px; font-weight:bold; color:#333; cursor:pointer;">Vani (1x)</button>
      <button data-mult="2" class="gc-preset" style="flex:1; min-width:100px; height:34px; border:1px solid #ccc; border-radius:6px; background:#fff; font-size:12px; font-weight:bold; color:#333; cursor:pointer;">Thông thường (2x)</button>
      <button data-mult="3" class="gc-preset" style="flex:1; min-width:100px; height:34px; border:1px solid #ccc; border-radius:6px; background:#fff; font-size:12px; font-weight:bold; color:#333; cursor:pointer;">Tăng cường (3x)</button>
      <button data-mult="5" class="gc-preset" style="flex:1; min-width:100px; height:34px; border:1px solid #ccc; border-radius:6px; background:#fff; font-size:12px; font-weight:bold; color:#333; cursor:pointer;">Nhanh (5x)</button>
    </div>
  </div>

  <div style="border-top:1px solid #eee; padding-top:18px; display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:10px;">
    <div>
      <div style="font-size:11px; font-weight:bold; color:#888; text-transform:uppercase; letter-spacing:0.5px; margin-bottom:4px;">Thời gian ước tính</div>
      <div id="gc-result" style="font-size:32px; font-weight:bold; color:#d97706;">&#8212;</div>
    </div>
    <div id="gc-meta" style="font-size:12px; color:#888; text-align:right; line-height:1.6;"></div>
  </div>

  <div style="font-size:12px; color:#888; line-height:1.7; margin-top:18px; border-top:1px solid #eee; padding-top:14px;">
    <strong style="color:#555;">Công thức:</strong> thời gian = cơ sở × phần trăm còn lại ÷ 100 ÷ hệ số nhân của máy chủ ÷ hệ số nhân của chế độ ăn. Chế độ ăn 1x/2x/3x là số lượng macro (β / γ / α) bạn đã bổ sung. Một số loài được đánh dấu là <em>gần đúng</em> — thời gian được công bố của máy chủ chưa có trong bảng chuẩn, vì vậy chúng tôi đã phân loại chúng theo kích thước. Bạn nên điều chỉnh lại thời gian cơ sở; hãy coi các con số là giá trị ước chừng.
  </div>

</div>

<script>
(function() {
  var species = [
    { name: "Hypsilophodon", hours: 1.83 },
    { name: "Troodon", hours: 3.17 },
    { name: "Beipiaosaurus", hours: 3.67 },
    { name: "Kh\u1ee7ng long Dryosaurus", hours: 4.42 },
    { name: "Pteranodon", hours: 4.5 },
    { name: "Gallimimus", hours: 5.42 },
    { name: "Herrerasaurus", hours: 5.42 },
    { name: "Tenontosaurus", hours: 5.67 },
    { name: "Omniraptor", hours: 5.92 },
    { name: "Ceratosaurus", hours: 6 },
    { name: "Dilophosaurus", hours: 6 },
    { name: "Kh\u1ee7ng long Pachycephalosaurus", hours: 6.25 },
    { name: "Maiasaura", hours: 7 },
    { name: "Kh\u1ee7ng long Carnotaurus", hours: 7.67 },
    { name: "Kh\u1ee7ng long Diabloceratops", hours: 7.75 },
    { name: "Austroraptor", hours: 8 },
    { name: "Kentrosaurus", hours: 11 },
    { name: "Baryonyx", hours: 12 },
    { name: "Kh\u1ee7ng long ba s\u1eebng", hours: 12 },
    { name: "Kh\u1ee7ng long Allosaurus", hours: 10 },
    { name: "Kh\u1ee7ng long Stegosaurus", hours: 17.92 },
    { name: "Deinosuchus", hours: 23.05 },
    { name: "Kh\u1ee7ng long b\u1ea1o ch\u00faa", hours: 35.55 }
  ];

  var root = document.getElementById("growth-calc-widget");
  var speciesSelect = root.querySelector("#gc-species");
  var dietSelect = root.querySelector("#gc-diet");
  var currentInput = root.querySelector("#gc-current");
  var targetInput = root.querySelector("#gc-target");
  var multInput = root.querySelector("#gc-mult");
  var currentOut = root.querySelector("#gc-current-out");
  var targetOut = root.querySelector("#gc-target-out");
  var multOut = root.querySelector("#gc-mult-out");
  var resultEl = root.querySelector("#gc-result");
  var metaEl = root.querySelector("#gc-meta");
  var presetButtons = root.querySelectorAll(".gc-preset");

  species.forEach(function(s, i) {
    var opt = document.createElement("option");
    opt.value = i;
    opt.textContent = s.name + " \u00b7 C\u01a1 s\u1edf " + s.hours.toFixed(2).replace(/\.00$/, "").replace(/(\.\d)0$/, "$1") + " gi\u1edd";
    speciesSelect.appendChild(opt);
  });

  function formatTime(hours) {
    if (hours <= 0 || !isFinite(hours)) return "--";
    var totalMinutes = Math.round(hours * 60);
    if (totalMinutes < 60) return totalMinutes + " ph\u00fat";
    var h = Math.floor(totalMinutes / 60);
    var m = totalMinutes % 60;
    var str = h + " gi\u1edd";
    if (m > 0) str += " " + m + " ph\u00fat";
    return str;
  }

  function recalc() {
    var idx = parseInt(speciesSelect.value, 10);
    var base = species[idx].hours;
    var current = parseInt(currentInput.value, 10);
    var target = parseInt(targetInput.value, 10);
    var mult = parseFloat(multInput.value);
    var diet = parseInt(dietSelect.value, 10);

    if (target < current) {
      target = current;
      targetInput.value = current;
    }

    currentOut.textContent = current + "%";
    targetOut.textContent = target + "%";
    multOut.textContent = mult.toFixed(2) + "x";

    var remainingPercent = target - current;
    var hours = (base * (remainingPercent / 100)) / mult / diet;

    resultEl.textContent = formatTime(hours);
    metaEl.innerHTML =
      remainingPercent + "% c\u00f2n l\u1ea1i<br>" +
      "C\u01a1 s\u1edf " + base + " gi\u1edd \u00b7 M\u00e1y ch\u1ee7 " + mult.toFixed(2) + "x \u00b7 Ch\u1ebf \u0111\u1ed9 \u0103n " + (diet * 100) + "%";
  }

  presetButtons.forEach(function(btn) {
    btn.addEventListener("click", function() {
      multInput.value = btn.getAttribute("data-mult");
      recalc();
    });
  });

  [speciesSelect, dietSelect, currentInput, targetInput, multInput].forEach(function(el) {
    el.addEventListener("input", recalc);
    el.addEventListener("change", recalc);
  });

  recalc();
})();
</script>



<p>Ví dụ thực tế: một con Stegosaurus nguyên bản (1×, thời gian cơ bản khoảng 17 giờ 55 phút) trên máy chủ cộng đồng 3× sử dụng tổ hợp nấm 3 lần = 17,92 / 3 / 3 ≈&nbsp;<strong>2 giờ</strong>&nbsp;. Sử dụng máy tính bên dưới cho bất kỳ tổ hợp nào.</p>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Bốn giai đoạn phát triển</mark></h3>



<p>Mỗi loài đều trải qua bốn giai đoạn giống nhau, chỉ khác nhau về tốc độ. Giai đoạn bạn đang ở sẽ quyết định khả năng nào được mở khóa, lượng HP bạn có và loài nào coi bạn là thức ăn hay là mối đe dọa.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img fetchpriority="high" decoding="async" width="675" height="469" data-attachment-id="17996" data-permalink="https://vngame.tv/cong-cu-tinh-su-phat-trien-cua-khung-long-the-isle/screenshot-2026-08-15-223952/" data-orig-file="https://vngame.tv/wp-content/uploads/2026/08/Screenshot-2026-08-15-223952.png" data-orig-size="675,469" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Sự phát triển của khủng long The Isle" data-image-description="" data-image-caption="" data-large-file="https://vngame.tv/wp-content/uploads/2026/08/Screenshot-2026-08-15-223952.png" src="https://vngame.tv/wp-content/uploads/2026/08/Screenshot-2026-08-15-223952.png" alt="Sự phát triển của khủng long The Isle" class="wp-image-17996"/><figcaption class="wp-element-caption">Cùng một con khủng long ở mọi giai đoạn — kích thước thay đổi đáng kể khi bạn lớn lên.<br></figcaption></figure></div>


<p>Mỗi loài đều trải qua bốn giai đoạn giống nhau, chỉ khác nhau về tốc độ. Giai đoạn bạn đang ở sẽ quyết định khả năng nào được mở khóa, lượng HP bạn có và loài nào coi bạn là thức ăn hay là mối đe dọa.</p>



<div style="display:flex; flex-direction:column; gap:16px; width:100%; font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;">

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:baseline; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <div style="display:flex; align-items:baseline; gap:8px;">
        <span style="color:#2f6fdb; font-weight:bold; font-size:16px;">Con non</span>
        <span style="color:#999; font-size:11px; font-weight:bold; letter-spacing:0.5px; text-transform:uppercase;">Dải tăng trưởng</span>
      </div>
      <span style="color:#999; font-size:13px;">~10-25%</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7;">Chỉ được mời vào tổ. Bạn chỉ xuất hiện dưới dạng thú con nếu người chơi bố mẹ chia sẻ mật mã tổ và bạn tham gia từ tổ của họ trên màn hình chọn nhân vật. Kích thước nhỏ, gần như không có HP, dễ bị tiêu diệt bởi hầu hết mọi thứ — nhưng bạn lớn nhanh và thừa hưởng các chất dinh dưỡng cần thiết từ bố mẹ, vì vậy đây là cách nhanh nhất để trưởng thành nếu bạn có thể làm được.</div>
  </div>

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:baseline; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <div style="display:flex; align-items:baseline; gap:8px;">
        <span style="color:#4a8f4a; font-weight:bold; font-size:16px;">Thiếu niên</span>
        <span style="color:#999; font-size:11px; font-weight:bold; letter-spacing:0.5px; text-transform:uppercase;">Dải tăng trưởng</span>
      </div>
      <span style="color:#999; font-size:13px;">~25-55%</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7;">Đây là điểm xuất phát mặc định cho nhân vật mới. Nhỏ nhưng nhanh nhẹn — sức bền hao hụt chậm hơn so với thú mới nở, các đòn tấn công có hiệu quả, bạn có thể chạy nhanh hơn nhiều loài lớn hơn. Hầu hết quá trình làm quen với bản đồ diễn ra ở đây.</div>
  </div>

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:baseline; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <div style="display:flex; align-items:baseline; gap:8px;">
        <span style="color:#d99a3c; font-weight:bold; font-size:16px;">Chưa trưởng thành</span>
        <span style="color:#999; font-size:11px; font-weight:bold; letter-spacing:0.5px; text-transform:uppercase;">Dải tăng trưởng</span>
      </div>
      <span style="color:#999; font-size:13px;">~55-95%</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7;">Giai đoạn tầm trung. Bạn có thể phản công, bảo vệ lãnh thổ, đóng góp cho nhóm. Những con vật lớn trong khu bảo tồn bắt đầu đuổi theo bạn. Đây là giai đoạn chơi có chức năng dài nhất.</div>
  </div>

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:baseline; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <div style="display:flex; align-items:baseline; gap:8px;">
        <span style="color:#c94b4b; font-weight:bold; font-size:16px;">Trưởng thành</span>
        <span style="color:#999; font-size:11px; font-weight:bold; letter-spacing:0.5px; text-transform:uppercase;">Dải tăng trưởng</span>
      </div>
      <span style="color:#999; font-size:13px;">100%</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7;">Kích thước tối đa, chỉ số tối đa. Quá trình tăng trưởng dừng lại; mọi việc bạn làm bây giờ chỉ nhằm mục đích sống sót và sinh sản.</div>
  </div>

</div>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Điều gì ảnh hưởng đến tốc độ phát triển của bạn?</mark></h3>



<p>Tốc độ tăng trưởng của bạn chịu ảnh hưởng bởi bốn yếu tố. Một yếu tố bạn có thể kiểm soát trực tiếp; ba yếu tố còn lại phụ thuộc vào hoàn cảnh.</p>



<ul class="wp-block-list">
<li><strong>Chế độ ăn (điều quan trọng nhất).</strong>&nbsp;Bạn đã đáp ứng bao nhiêu trong ba chất dinh dưỡng đa lượng (β / γ / α) — xem&nbsp;hướng dẫn Chế độ ăn &amp; Dinh dưỡng&nbsp;. 1 = 100%, 2 = 200%, cả 3 = 300%. Tăng gấp ba tốc độ hiệu quả của bạn.<a href="https://vngame.tv/dowurl/?url=https%3A%2F%2Fwww.theisle.info%2Fguide%2Fdiets" class="ext-link" rel="external noopener noreferrer" onclick="this.target=&#039;_blank&#039;;" data-wpel-link="external" target="_blank"></a></li>



<li><strong>Khu vực di cư.</strong>&nbsp;Phần thưởng năng suất bên trong khu vực di cư đang hoạt động sẽ tăng tỷ lệ phần trăm bạn nhận được mỗi lần ăn. Cùng loại thức ăn đó bên ngoài khu vực sẽ giúp bạn no chậm hơn. Hãy xuất hiện.</li>



<li><strong>Nấm Thánh Địa.</strong>&nbsp;Nấm kết hợp ba loại giúp bổ sung cả ba chỉ số dinh dưỡng cùng một lúc. Chỉ một miếng cắn có thể giúp bạn tăng tốc độ tăng trưởng từ 100% lên 300% nếu trước đó bạn thiếu hai thanh chỉ số.</li>



<li><strong>Ngưỡng đói/khát.</strong>&nbsp;Nếu dạ dày hoặc lượng nước trong cơ thể giảm xuống bằng không, quá trình tăng trưởng sẽ hoàn toàn dừng lại. Bạn có thể duy trì ở mức 89% mãi mãi nếu để bản thân bị đói – thanh tiến độ thực sự ngừng di chuyển.</li>
</ul>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Biểu đồ tăng trưởng gần đúng theo từng loài</mark></h3>



<p>Thời gian tăng trưởng cơ bản trong game — là thời gian mà game sử dụng&nbsp;khi chỉ có một macro được nạp đầy. Hầu hết các server cộng đồng đều chạy với tốc độ gấp 2-5 lần để cảm thấy thời gian này hợp lý hơn. Việc cộng dồn macro sẽ chia nhỏ thời gian hơn nữa: 2 macro giảm một nửa, 3 macro giảm một phần ba.&nbsp;<strong>Các bản vá lỗi sẽ điều chỉnh lại giá trị</strong>&nbsp;— hãy coi chúng như là giá trị ước chừng.&nbsp;<code><strong>GrowthMultiplier=1×</strong></code></p>



<div style="display:flex; flex-direction:column; gap:16px; width:100%; font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;">

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <span style="font-weight:bold; font-size:16px; color:#111; text-transform:uppercase;">Nhỏ gọn / Nhanh</span>
      <span style="background:#fdf1dc; color:#b8760f; font-size:12px; font-weight:bold; padding:4px 10px; border-radius:10px;">~2 &#8211; 5 giờ</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7; margin-bottom:14px;">Chúng là những động vật ăn cỏ nhỏ bé và động vật ăn thịt nhỏ. Tốc độ là thứ duy nhất giúp chúng sống sót — nhưng chúng trưởng thành rất nhanh.</div>
    <div style="display:flex; flex-wrap:wrap; gap:8px;">
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Hypsilophodon</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Troodon</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Beipiaosaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long khô</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Pteranodon</span>
    </div>
  </div>

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <span style="font-weight:bold; font-size:16px; color:#111; text-transform:uppercase;">Kích thước trung bình / Di động</span>
      <span style="background:#fdf1dc; color:#b8760f; font-size:12px; font-weight:bold; padding:4px 10px; border-radius:10px;">~5 &#8211; 10 giờ</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7; margin-bottom:14px;">Cấp độ trung bình — bạn có thể chiến đấu hoặc bỏ chạy tùy thuộc vào đối thủ. Những kẻ săn mồi non trong khu bảo tồn thường chuyển sang cấp độ này.</div>
    <div style="display:flex; flex-wrap:wrap; gap:8px;">
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Gallimimus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Herrerasaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Tenontosaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Omniraptor</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Ceratosaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long Dilophosaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long Pachycephalosaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Malasaura</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long Carnotaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long Diabloceratops</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Austroraptor</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long Allosaurus</span>
    </div>
  </div>

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <span style="font-weight:bold; font-size:16px; color:#111; text-transform:uppercase;">Lớn</span>
      <span style="background:#fdf1dc; color:#b8760f; font-size:12px; font-weight:bold; padding:4px 10px; border-radius:10px;">~11 &#8211; 18 giờ</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7; margin-bottom:14px;">Những đối thủ mạnh mẽ — bạn có thể giữ vững vị trí nhưng không thể chạy thoát khỏi chúng. Đầu tư thời gian lớn, thu về lợi nhuận lớn khi trưởng thành.</div>
    <div style="display:flex; flex-wrap:wrap; gap:8px;">
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Kentrosaurus</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Baryonyx</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long ba sừng</span>
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long Stegosaurus</span>
    </div>
  </div>

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <span style="font-weight:bold; font-size:16px; color:#111; text-transform:uppercase;">Nặng</span>
      <span style="background:#fdf1dc; color:#b8760f; font-size:12px; font-weight:bold; padding:4px 10px; border-radius:10px;">~23 giờ</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7; margin-bottom:14px;">Loài cá này sống bán thủy sinh. Thân dài, thích hợp cho những hoạt động chơi đùa cẩn thận trong môi trường nước.</div>
    <div style="display:flex; flex-wrap:wrap; gap:8px;">
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Deinosuchus</span>
    </div>
  </div>

  <div style="background:#ffffff; border:1px solid #e0e0e0; border-radius:6px; padding:20px; box-sizing:border-box;">
    <div style="display:flex; justify-content:space-between; align-items:center; margin-bottom:12px; flex-wrap:wrap; gap:8px;">
      <span style="font-weight:bold; font-size:16px; color:#111; text-transform:uppercase;">Đỉnh</span>
      <span style="background:#fdf1dc; color:#b8760f; font-size:12px; font-weight:bold; padding:4px 10px; border-radius:10px;">~35 giờ</span>
    </div>
    <div style="color:#444; font-size:14px; line-height:1.7; margin-bottom:14px;">Rex đứng một mình — có thời gian sinh trưởng lâu nhất so với những người chơi khác. Hầu hết người chơi chỉ đạt được điều này trên các máy chủ cộng đồng với tốc độ sinh trưởng gấp 2-5 lần.</div>
    <div style="display:flex; flex-wrap:wrap; gap:8px;">
      <span style="border:1px solid #ddd; border-radius:4px; padding:4px 10px; font-size:13px; color:#333;">Khủng long Tyrannosaurus</span>
    </div>
  </div>

</div>



<h3 class="wp-block-heading"><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-vivid-red-color">Phát triển nhanh chóng — những lời khuyên hữu ích</mark></h3>



<ul class="wp-block-list">
<li>•&nbsp;<strong>Hãy đến Khu Bảo tồn khi còn nhỏ.</strong>&nbsp;Sự kết hợp ba loại nấm sẽ giúp bạn tăng trưởng 300% ngay lập tức. Ở lại cho đến khi ong bắt đầu tấn công — đó là tín hiệu báo hiệu bạn sẽ bị đuổi đi khi trưởng thành chưa hoàn toàn.</li>



<li>•&nbsp;<strong>Di chuyển chủ động &gt; ăn ở bất cứ đâu.</strong>&nbsp;Lượng chất dinh dưỡng hấp thụ được tăng cường trong khu vực hoạt động. Cùng một lượng thức ăn, nhưng tỷ lệ phần trăm dinh dưỡng mỗi lần ăn cao hơn.</li>



<li>•&nbsp;<strong>Đừng bao giờ để cơn đói hoặc khát giảm xuống mức bằng không.</strong>&nbsp;Sự phát triển sẽ tạm dừng. Thanh tiến độ sẽ ngừng hoàn toàn. Hãy ăn và uống trước khi các dấu hiệu cảnh báo xuất hiện nhiều.</li>



<li>•&nbsp;<strong>Tích lũy 3 macro trước khi bạn ổn định.</strong>&nbsp;Tốc độ tăng trưởng gấp ba khi bạn đang tìm kiếm thức ăn so với tốc độ tăng trưởng đơn khi bạn đang chiến đấu là sự khác biệt giữa việc đạt đến cấp độ trưởng thành tối nay và ngày mai.</li>



<li>•&nbsp;<strong>Đừng tham gia quá nhiều trận chiến khi còn nhỏ.</strong>&nbsp;Khả năng hồi phục HP cộng với thời gian nghỉ ngơi sẽ cạnh tranh với giai đoạn phát triển của bạn. Nếu không cần thiết phải tham chiến, thì đừng.</li>
</ul>
<p>Bài viết <a href="https://vngame.tv/cong-cu-tinh-su-phat-trien-cua-khung-long-the-isle/" data-wpel-link="internal">Công cụ tính và cách tính Sự phát triển của khủng long The Isle</a> đã xuất hiện đầu tiên vào ngày <a href="https://vngame.tv" data-wpel-link="internal">vnGAME</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://vngame.tv/cong-cu-tinh-su-phat-trien-cua-khung-long-the-isle/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">17995</post-id>	</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 

Served from: vngame.tv @ 2026-09-16 00:38:26 by W3 Total Cache
-->