
《攻城投石》是 PiuPiu Games(piupiugames.com)的免費真實物理攻城網頁遊戲:按住拖曳投石車決定角度與力道,用每關僅 4~7 顆的石彈擊倒碉堡裡全部哥布林守軍,傷害由撞擊動能現場計算而非數值表。戰役共 12 關,排行榜比攻陷關數。免下載、免安裝,手機與電腦瀏覽器都能玩。這篇整理了遊戲裡實際的角度力道落點、材質血量、爆炸範圍與每關石彈數,讓你知道每一發「為什麼」會這樣飛、這樣倒。
「攻城投石」是一款真實物理攻城遊戲:你操作畫面左側的投石車,按住拖曳(像拉彈弓)決定角度與力道,放開發射石彈,把右側碉堡裡的哥布林守軍全部擊倒就攻陷過關。每關石彈有限(4~7 顆),石彈用完敵人還站著就算失守。戰役共 12 關,可以從已解鎖的最高關續攻;排行榜比攻陷關數,同關比分數。開局消耗一顆愛心體力(10 分鐘回一顆、上限 5)。

下表是用遊戲彈道預覽的同一套公式算出來的「石彈落到地面的位置」。戰場座標從畫面左緣 0 到右緣 960,投石車在 118 附近,碉堡大多蓋在 500~880 之間。實際打到建築物或哥布林時,石彈會在落地前就撞上,所以這張表適合用來抓「大概要用多少力」。
| 仰角 | 力道 12 | 力道 14 | 力道 16 | 力道 18 |
|---|---|---|---|---|
| 10° | 472 | 555 | 645 | 726 |
| 20° | 553 | 670 | 786 | 924 |
| 30° | 605 | 744 | 899 | 出界 |
| 40° | 622 | 771 | 928 | 出界 |
| 45° | 616 | 758 | 915 | 出界 |
| 50° | 594 | 733 | 886 | 出界 |
| 60° | 519 | 636 | 770 | 911 |
| 70° | 407 | 492 | 590 | 692 |
| 80° | 269 | 315 | 365 | 419 |
「出界」表示落點超過畫面右緣 960。表裡可以讀出幾件跟直覺不一樣的事:
飛行時間也差很多:力道 16 時,15° 的平射大約 0.7 秒就落地,70° 的吊射要飛 1.8 秒左右。吊射在空中待得越久,下墜時被重力加速得越多。
這遊戲沒有攻擊力數值表——每一下傷害都由撞擊動能現場計算。遊戲裡的公式是:
傷害 = ½ × 折合質量 × 撞擊速度² × 材質受傷倍率
「撞擊速度」只算兩個物體互相撞進去的那個方向的速度,擦過去不算;「折合質量」由兩個物體的質量合算,大致由比較輕的那一方決定(撞上不會動的地面或岩台時,就是物體本身的質量)。撞擊速度低於 2.2 的輕碰完全不扣血,所以靜靜疊著的建材不會自己壞掉。這帶來幾個直接推論:
每種東西的血量與「受傷倍率」都不一樣。受傷倍率越低,同樣的撞擊扣的血越少;把血量除以受傷倍率,就是打倒它需要的撞擊能量:
| 目標 | 血量 | 受傷倍率 | 打倒需要的撞擊能量 | 拆掉/擊倒得分 |
|---|---|---|---|---|
| 👺 哥布林 | 60 | ×2.0 | 30 | 500 |
| 👑 哥布林隊長 | 120 | ×1.8 | 約 67 | 1200 |
| 🧨 火藥桶 | 26 | ×1.5 | 約 17 | 150 |
| 🪵 木板 | 看大小:每 100 平方單位 8 點 | ×1.0 | =血量 | 40 |
| 🪨 石塊 | 看大小:每 100 平方單位 5 點 | ×0.45 | 血量的 2.2 倍 | 90 |
| 岩台 | 不會壞 | — | — | — |
木板和石塊的血量跟面積成正比(最少 20)。換算幾個關卡裡常見的零件:
| 零件 | 尺寸 | 血量 | 打倒需要的能量 | 相當於幾隻哥布林 |
|---|---|---|---|---|
| 望樓木柱(第 2 關) | 16 × 90 | 約 115 | 約 115 | 約 4 隻 |
| 木平台(第 2 關) | 120 × 16 | 約 154 | 約 154 | 約 5 隻 |
| 石牆塊(第 3、9、10、12 關) | 34 × 60 | 102 | 約 227 | 約 7.6 隻 |
| 石板屋頂(第 4 關) | 190 × 22 | 209 | 約 464 | 約 15 隻 |
受損的建材與敵兵頭上會出現血條,毀損在一關內持續累積——這一發沒拆完的牆,下一發接著拆,不會白費。
火藥桶爆炸的影響半徑是 132(大約 5 隻哥布林的身寬)。範圍內的東西會被往外、往上掀飛,並受到「95 × (1 − 距離 ÷ 132)」的爆炸傷害,再乘上各自的受傷倍率——越靠近中心越痛。換算成「一爆必死」的距離:
| 目標 | 爆炸直接炸死的距離 | 約幾隻哥布林身寬 |
|---|---|---|
| 👺 哥布林 | 90 以內 | 3.5 |
| 👑 隊長 | 39 以內 | 1.5 |
| 🧨 隔壁火藥桶(連環爆) | 108 以內 | 4 |
| 🪵 木板、🪨 石塊 | 爆炸傷害最多 95(石塊只有約 43),大多數完整的木柱、石牆炸不斷 | — |
一格=一隻哥布林身寬(26)。紅=隊長也會被直接炸死,深藍=普通哥布林會被直接炸死,綠=隔壁的火藥桶會被引爆、哥布林只受傷,最外圈=只剩一點傷害和衝擊。
只有哥布林會被重壓磨死,建材不會。判定條件是:有東西從上方壓在哥布林身上(接觸面要夠接近水平,從旁邊靠著不算),而且壓住的東西夠重——質量至少是這隻哥布林的 1.15 倍。符合條件時,每個物理步(每秒 60 步)扣「0.55 × 重量比」的血,最多每步扣 3。壓殺還在進行時,這一發不會結算,會等它跑完。
| 壓住的東西 | 壓死普通哥布林 | 壓死隊長 |
|---|---|---|
| 石板屋頂 190 × 22(第 4 關) | 約 0.3 秒 | 約 0.7 秒 |
| 木平台 120 × 16(第 2 關) | 約 0.6 秒 | 約 2.5 秒 |
| 木橋板 90 × 14(第 8 關) | 約 1 秒 | 壓不死(不夠重) |
上表是整塊建材正正壓在身上時的估算;斜斜壓住時,有效重量會打折、時間會更久。重點是:石板屋頂一塌下來,底下的哥布林幾乎是秒殺;木板也壓得死普通哥布林,只是慢一點;隊長比較重,薄木板壓在他身上是沒用的。
每一關上線前都用物理模擬器驗證過:存在一組比石彈數少至少一顆就能過關的打法,而且讓每一發都隨機手抖(角度標準差 0.7°、力道標準差 0.25)重打 30 輪,過關率要達 70% 以上。下表的「已驗證最少發數」是那組打法實際用到的石彈數,「容錯過關率」是手抖測試的結果:
| 關 | 名稱 | 石彈 | 守軍 | 火藥桶 | 已驗證最少發數 | 容錯過關率 | 擊倒分合計 |
|---|---|---|---|---|---|---|---|
| 1 | 哨站初戰 | 5 | 3 | 0 | 3 | 97% | 1,500 |
| 2 | 木造望樓 | 5 | 2 | 0 | 2 | 100% | 1,000 |
| 3 | 石牆之後 | 5 | 2 | 0 | 2 | 97% | 1,000 |
| 4 | 屋簷之下 | 5 | 2 | 0 | 1 | 100% | 1,000 |
| 5 | 火藥運補 | 4 | 3 | 1 | 1 | 80% | 1,500 |
| 6 | 雙子哨塔 | 6 | 3 | 0 | 2 | 100% | 1,500 |
| 7 | 石殿崩塌 | 5 | 2 | 0 | 1 | 83% | 1,000 |
| 8 | 空中吊橋 | 5 | 2 | 0 | 1 | 87% | 1,000 |
| 9 | 藥庫連環 | 5 | 2+隊長 | 2 | 2 | 100% | 2,200 |
| 10 | 前線堡壘 | 6 | 3+隊長 | 1 | 2 | 77% | 2,700 |
| 11 | 天守斷柱 | 7 | 2+隊長 | 0 | 3 | 100% | 2,200 |
| 12 | 哥布林王城 | 6 | 4+隊長 | 2 | 3 | 90% | 3,200 |
「已驗證最少發數」不一定是理論最少,但代表用這個發數過關是做得到的。如果你某一關總是要用到最後一顆,代表還有更省的打法沒找到。第 4、5、7、8 關都存在一發過關的打法,是衝分數的重點關。
| 項目 | 分數 |
|---|---|
| 擊倒哥布林(含潰逃) | +500 |
| 擊倒哥布林隊長 | +1,200 |
| 拆掉木板 | +40 |
| 拆掉石塊 | +90 |
| 引爆火藥桶 | +150 |
| 過關基礎分 | +800 |
| 每顆剩餘石彈 | +300 |
剩彈加分是分數差距最大的地方:同一關,三發過和一發過差了 600 分。舉例來說,第 12 關照已驗證的 3 發過關,擊倒分 3,200+過關 800+剩 3 顆 900;如果再把所有建材拆光,還能多 730 分。
Q:為什麼石彈打中石牆幾乎沒扣血?
A:石材受傷倍率只有 0.45,一塊石牆要的撞擊能量是一隻哥布林的七倍以上,正面硬拆是最貴的打法。改推倒它、繞過它(拋射),或找火藥桶借力。
Q:哨兵被打飛了但沒死,怎麼補刀?
A:被撞飛表示有受傷(看血條),他會躺在新位置。用彈道預覽把落點對到他身上;如果他被打出畫面邊界,會直接算潰逃擊倒。
Q:屋頂塌下來壓住敵人了,要再補一發嗎?
A:夠重就不用——被比自己重的建材從上方壓住,哥布林會持續掉血到死,石板屋頂不到一秒就能壓死普通哥布林。壓殺進行中這一發不會結算,看血條在掉就安心等。
Q:每一關真的都過得了嗎?
A:真的。每一關上線前都經過物理模擬器驗證:在石彈數-1 發內存在確定解,而且加上隨機手抖重打 30 輪,過關率都在 70% 以上,不是像素級狙擊。卡關就換個思路——通常是還沒找到那根該斷的柱子。
Q:攻城投石的最遠射程是幾度?
A:大約 40°。因為投石車的出手點比地面高、又有一點空氣阻力,最遠的角度比 45° 低一些;35°~50° 之間落點對角度都很不敏感。
Q:角度和力道微調一格差多少?
A:兩者都是一格 0.5。在力道 16 左右,力道一格會讓落點移動約 25~50,大約一到兩隻哥布林的寬度;角度一格最多移動 12 左右,拋射角度時幾乎不動。
Q:火藥桶的爆炸範圍有多大?
A:半徑 132,大約 5 隻哥布林的寬度。普通哥布林在 90 以內會被直接炸死,隊長要在 39 以內,其他火藥桶在 108 以內會被連環引爆。
Q:失守後重打本關,之前的分數會不見嗎?
A:會先把這一輪的累計分數結算上傳,再扣一顆愛心、從這一關開始新的一輪。新的一輪分數從 0 起算,不會和上一輪相加。