Một trận đấu trường được tính như thế nào — phân tích đầy đủ
Phân tích mã và cấu hình game: HP đến từ đâu, sát thương thực sự được tính từ đâu, chỉ số nào trên bảng hoàn toàn không hoạt động trong đấu trường, và robot tham chiến ra sao.
- Trận đấu do máy chủ tính, không phải điện thoại của bạn: kết quả được tính trọn vẹn trước khi hoạt ảnh chạy, trong đó không có yếu tố may rủi. Thay trang bị chỉ có hiệu lực sau khi vào lại game.
- HP của bạn trong đấu trường là độ bền của Chiến Xa, không phải máu anh hùng. Máu của anh hùng hoàn toàn không tham gia.
- Sát thương đạn của bạn được tính từ CP, không phải từ chỉ số Tấn công. Bảng «Tấn công» không tham gia vào việc bắn.
- Chí mạng vẫn nổ ra trong đấu trường, nhưng đánh y như một phát bắn thường. Khi chí mạng kích hoạt, game hiện hiệu ứng lóe sáng — còn con số sát thương thì đúng bằng lúc không chí mạng. Chính hệ số mà bạn cày cho chí mạng (ở màn chơi thường nó nhân đôi sát thương) không tồn tại trong đấu trường: game có tính, nhưng vào phút chót thay bằng sát thương thường. Đồng thời, xác suất chí mạng lại nâng CP nhiều hơn mọi chỉ số khác — mà sát thương đạn thì tính từ CP. Nên vẫn đáng nâng: sát thương tăng không phải vì chí mạng bắt đầu ăn, mà vì CP tăng.
Thêm nữa, một nửa bảng chỉ số bị nhân với 0 ngay trong trận: tốc độ bắn, nạp đạn, né đòn, toàn bộ chí mạng, sát thương lên Trùm. Nguyên tố bị hạ còn 20%. Nhưng cẩn thận: «không hoạt động trong trận» không có nghĩa là «vô dụng» — gần như tất cả các chỉ số này đều nâng CP, và sát thương của nhân vật được tính từ CP. Thứ duy nhất không nâng CP là thứ có trọng số bằng 0.
1.HP trong đấu trường KHÔNG phải là sức khỏe của anh hùng
Máu của anh hùng hoàn toàn không tham gia trận tay đôi. HP lấy từ Chiến Xa và được tính theo hai lớp:
HP = Độ bền Chiến Xa (theo cấp của nó trong gara) × (1 + «Độ Bền Chiến Xa»%)
Lớp chính là cấp của xe, tức là gara thuần túy. Độ chênh lệch cực lớn:
| Cấp | Độ bền |
|---|---|
| 1 | 300 000 |
| 100 | 1.2 tỷ |
| 200 | 6.9 tỷ |
| 500 | 43.8 tỷ |
| 900 | 450 tỷ |
| 950 | 900 tỷ |
| 1000 (Tối đa) | 4.5 nghìn tỷ |
Từ cấp 100 lên 200 — gần ×6. Năm mươi cấp cuối (950→1000) — thêm ×5 nữa. Từ cấp đầu tới cấp cuối chênh nhau 15 triệu lần. Không đòn tấn công nào bù nổi khoảng đó.
Lớp thứ hai là chỉ số «Độ Bền Chiến Xa» (tối đa +42%), nó nhân lên phần nền đã tích được. Phần trăm thì đẹp, nhưng so với cấp gara thì chỉ là lớp kem trên bánh. Còn chỉ số «HP khởi đầu» trong trận tay đôi thì đơn giản là không được đọc: HP lấy hoàn toàn từ Chiến Xa, engine đấu trường không hỏi tới máu anh hùng.
Chuyện nhỏ: xe đổi kiểu sát thương ở mốc 1/2 và 1/3 HP — thuần túy hình ảnh.
2.Công thức sát thương
SÁT THƯƠNG = Cơ sở × Hệ số đạn × (1 + % nguyên tố) × (1 − «Giảm ST Đấu Trường» của mục tiêu + «ST Đấu Trường» của người tấn công) × Kháng của Chiến Xa mục tiêu
Trong công thức này không có chí mạng. Đó không phải lỗi đánh máy — xem mục 3. Và «Cơ sở» chính là chỗ bất ngờ nhất của cả đấu trường.
Không phải chỉ số Tấn công. Tấn công của nhân vật hoàn toàn không tham gia việc bắn trong đấu trường: vũ khí ở đây được khởi tạo từ CP. Nghĩa là bảng «Tấn công» mà ai cũng nhìn chẳng liên quan gì tới sát thương đạn của bạn.
Thứ duy nhất đọc chỉ số Tấn công của nhân vật là robot (mục 5).
Từ đó có câu trả lời cho thắc mắc muôn thuở «sao thằng ít Tấn công hơn lại xé được mình»: trong đấu trường người ta đo bằng CP, xe và phần trăm, chứ không phải bằng Tấn công. Tấn công chỉ là một thành phần của CP, và không phải thành phần chính.
Và CP được làm từ gì?
Vì sát thương của nhân vật tính từ CP, câu hỏi «mình đánh mạnh cỡ nào» thành câu hỏi «CP được cộng ra sao». Nó được ghép lại một cách cực kỳ thô sơ: mỗi chỉ số có một trọng số ghi trong cấu hình, và CP là tổng của tất cả chỉ số nhân trọng số của chúng. Client tự tính rồi đối chiếu với máy chủ: nếu lệch quá 200, game chửi vào log và gửi báo cáo lên máy chủ. Nghĩa là client và máy chủ dùng chung một công thức.
Chỉ 16 chỉ số trong số 130 là có trọng số. Đây là tất cả:
| Chỉ số | Trọng số trong CP | Trong chính trận chiến |
|---|---|---|
| Xác Suất Chí Tử | 500 000 | không hoạt động |
| Xác Suất Chí Mạng | 100 000 | không hoạt động |
| Tốc Độ Bắn · TĐ Nạp | 40 000 | không hoạt động |
| Sát Thương Đạn | 20 000 | hoạt động ở mức 20% |
| Nguyên tố (bảy cái còn lại) | 10 000 | hoạt động ở mức 20% |
| ST gây ra cho quái Tinh Anh · ST gây ra cho Trùm | 10 000 | không hoạt động |
| Máu Khởi Đầu | 1 000 | không hoạt động |
| Tổng Tấn Công | 1 | chỉ thông qua một robot |
Nhìn mà xem. Trọng số nặng nhất lại rơi đúng vào những chỉ số bị đặt về 0 trong trận. Xác suất chí tử nặng 500.000, xác suất chí mạng nặng 100.000, còn Tấn công tổng mà ai cũng cầu khấn thì nặng đúng 1. Nhưng Tấn công thắng nhờ khối lượng: nó có hàng chục nghìn đơn vị, còn xác suất thì chỉ là phần lẻ của 1.
Từ đó rút ra kết luận thực dụng. «Không hoạt động trong trận» và «không cần cho đấu trường» là hai chuyện khác nhau. Xác suất chí mạng, tốc độ bắn, nạp đạn và sát thương lên Trùm không tham gia tính trận một chút nào, nhưng chúng đều đặn biến thành CP, mà CP thì biến thẳng thành sát thương đạn của bạn. Nên kiểm tra theo trọng số: nếu trọng số bằng 0, chỉ số vừa không cho trận đấu vừa không cho CP — đó mới là rác thật sự. Sát thương chí mạng, sát thương chí tử và né đòn chính là loại đó.
Và một sự thật soi gương: các chỉ số của đấu trường — «ST Đấu Trường», «Giảm ST Đấu Trường», «Độ Bền Chiến Xa», cả ba chỉ số robot — đều có trọng số 0 trong CP. Chúng không cho bạn điểm CP nào, nhưng lại chạy trực tiếp trong trận. Nghĩa là bảng CP và sức mạnh thật trong đấu trường là hai bộ chỉ số khác nhau, và chúng gần như không giao nhau.
3.Chí mạng trong đấu trường không gây thêm sát thương
Game vẫn quay số ngẫu nhiên tử tế, vẫn chớp hiệu ứng — rồi vứt kết quả đi. Hệ số chí mạng được tính rồi lập tức đặt về 1 trước khi sát thương chạm mục tiêu. Điều này thấy được bằng ba cách cùng lúc, và cả ba đều khớp:
- trong mã của đấu trường, hệ số chí mạng bị đặt về 0, còn trong mã màn chơi thường thì nó được áp dụng. Khác biệt nằm ở đấu trường;
- cả bốn chỉ số chí mạng (xác suất chí mạng, sát thương chí mạng, xác suất chí tử, sát thương chí tử) đều bị đánh dấu hệ số PVP bằng 0 trong cấu hình;
- chính điều đó nằm trong bản client hiện tại — vẫn đặt về 0 tại chỗ, dù mã chí mạng trong đó gần đây có được sửa.
Sát thương chí mạng và sát thương chí tử trong đấu trường là gánh nặng vô ích: chúng không cho hệ số nhân, cũng không cho CP. Nhưng xác suất lại là chuyện khác. Chúng cũng không cho hệ số nhân, nhưng đây là hai chỉ số nặng CP nhất game: xác suất chí tử nặng gấp 500 nghìn lần một đơn vị Tấn công, xác suất chí mạng gấp 100 nghìn. Mà sát thương đạn trong đấu trường lại tính từ CP. Thành ra nghịch lý: cày xác suất chí mạng cho đấu trường vẫn có lời — không phải với tư cách chí mạng, mà với tư cách CP. Nhân tiện, robot không hề chí mạng: trong đấu trường đơn giản là không có nhánh chí mạng cho chúng.
4.Có thể cộng dồn tối đa bao nhiêu?
«ST Đấu Trường» và «Giảm ST Đấu Trường» nằm trong cùng một ngoặc và trừ nhau: × (1 − Giảm_của_mục_tiêu + ST_của_người_tấn_công). Tuyến tính, không đường cong. Bấm vào tên bộ sẽ hiện thành phần và hiệu ứng cộng hưởng.
🗡 ST Đấu Trường
| Nguồn | Bao nhiêu |
|---|---|
| Phụ kiện vũ khí S: họng súng + laser + ống ngắm (3 × 8%) | 24% |
| Vật phẩm sưu tầm: 10% · 10% · 10% | 30% |
| Thiên phú gara (80 nút × 0,2%) | 16% |
| Skin Trại (cấp tối đa) | 10% |
| Người Sống Sót «Giai Nhân Sân Cỏ», 5★ | 10% |
| Album thẻ | 6% |
| Tổng cộng | 96% |
🛡 Giảm ST Đấu Trường
| Nguồn | Bao nhiêu |
|---|---|
| Phụ kiện vũ khí S: tay cầm + báng súng + băng đạn (3 × 8%) | 24% |
| Vật phẩm sưu tầm: 10% · 10% · 5% | 25% |
| Thiên phú gara (80 nút × 0,2%) | 16% |
| Album thẻ | 12.5% |
| Skin Trại (cấp tối đa) | 10% |
| Tổng cộng | 87.5% |
🚗 Máu Chiến Xa
| Nguồn | Bao nhiêu |
|---|---|
| Vật phẩm sưu tầm: 16% · 10% | 26% |
| Album thẻ | 10% |
| Skin Trại (cấp tối đa) | 6% |
| Tổng cộng | 42% |
🧪 Đại Dược — bonus theo loại vũ khí
| Nguồn | Tăng chỉ số nào | Bao nhiêu |
|---|---|---|
| Đại Dược Dũng Khí | Sát thương đấu trường (loại vũ khí) | 10% |
| Đại Dược Thịnh Nộ | Sát thương đấu trường (loại vũ khí) | 25% |
| Đại Dược Kiên Trì | Giảm sát thương đấu trường (loại vũ khí) | 10% |
| Đại Dược Bất Tử | Giảm sát thương đấu trường (loại vũ khí) | 25% |
| Tổng cho một loại | 35% sát thương + 35% giảm |
Đại Dược tăng một chỉ số riêng gắn với loại vũ khí: nó chỉ hoạt động khi bạn cầm vũ khí thuộc loại đó, và không hiện trong bảng chỉ số — giống chỉ số ẩn của người sống sót «Cô Nàng Bóng Đá». Mỗi lần dùng cho 0.2% với Dũng Khí và Kiên Trì, 0.5% với Thịnh Nộ và Bất Tử; giới hạn lượt dùng tăng theo cấp và dừng ở 50 mỗi loại. Đại Dược của các loại vũ khí khác nhau không cộng dồn — hãy nuôi đúng loại vũ khí bạn dùng.
Trong số này, cái nào thực dụng:
- Miếng sát thương lớn nhất là phụ kiện vũ khí S: 24% + 24%, tức ba ô mỗi bên.
- Vật phẩm sưu tầm đứng thứ hai (30% / 25%), và cũng cho phần lớn hệ số độ bền.
- Gara đánh vào bạn từ mọi phía cùng lúc: nền HP (cấp), thiên phú (16 + 16), hạng xe (kháng, xem bên dưới). Tụt hậu ở gara thì không thứ gì bù được.
- Phần đóng góp của «Giai Nhân Sân Cỏ» không hiện trên bảng chỉ số — chỉ số này ẩn và chạy ngầm.
5.Robot: được tính riêng biệt với nhân vật
Robot trong đấu trường sống theo luật riêng, và đây là phần bị đánh giá thấp nhất của cả đội hình.
Trước hết, chúng không bắn. Hoàn toàn không. Trong đấu trường, robot đỗ xa ngoài bản đồ và chỉ ló ra để dùng kỹ năng: dịch chuyển tới xe địch, ra đòn, rồi chạy về. Kỹ năng của robot trong đấu trường tách khỏi kỹ năng thường — chúng có bộ kỹ năng PVP riêng, hai ô mỗi robot, và mở theo hạng (xanh lục / tím / cam / đỏ). Hạng của robot trong đấu trường không phải là «thêm chút chỉ số», mà quyết định nó dùng được kỹ năng nào.
Nhân vật đánh từ CP. Robot đánh từ Tấn công của chính nó theo cấp, cộng với phần Tấn công chia sẻ từ nhân vật. Nghĩa là chỉ số Tấn công của nhân vật — thứ vô dụng với đạn của bạn — vẫn có tác dụng, nhưng chỉ thông qua robot.
Ba chỉ số đẩy mạnh bộ đôi này, và cả ba đều nằm trong cộng hưởng của vật phẩm sưu tầm:
| Chỉ số | Tác dụng | Trong đấu trường |
|---|---|---|
| ST Robot | Hệ số sát thương của robot | 100% |
| Lực TC Nhân Vật chia sẻ cho Robot | Phần lớn đòn tấn công của bạn mà robot thừa hưởng | 100% |
| Lực TC Nhân Vật do Robot chia sẻ | Hệ số tấn công mà robot mang lại cho nhân vật | 100% |
Cả ba đều chạy hết công suất. «ST Robot» được ghi hệ số 0,1 trong cấu hình — tức là lẽ ra phải cắt còn 10%. Nhưng đoạn mã thực sự tính sát thương robot lại đọc thẳng chỉ số này, bỏ qua chỗ áp hệ số. Kết quả: hệ số cắt không bao giờ được đọc, và chỉ số chạy 100%.
Trận đấu được tính cho phía bạn — nhưng ở nhánh pet, game lấy hai chỉ số này từ hồ sơ CỦA BẠN mà không tách hai phe. Tức là chúng áp cho cả robot của bạn lẫn robot của địch. Cày chúng lên là bạn buff cả hai. Có lời hay không tùy robot bên nào đánh mạnh hơn: nếu robot của địch mạnh hơn của bạn, bạn đang làm không công cho hắn.
Vì sao lại thế thì không rõ. Chỉ thấy kết quả: nhánh pet đọc hai chỉ số này từ hồ sơ chung của người chơi, chứ không từ hồ sơ của phe mà robot thuộc về.
Còn có chiều ngược lại: mỗi robot trong đội hình cộng thẳng cho nhân vật một lượng Tấn công gốc — theo cấp và hạng của nó, nhân với «Lực TC Nhân Vật do Robot chia sẻ». Cấp và hạng của robot được đọc từ cùng một bảng nhưng khác cột: một cột là robot tự đánh mạnh bao nhiêu, cột kia là nó cho nhân vật bao nhiêu.
Những gì cần thu thập cho robot
| Chỉ số | Vật phẩm sưu tầm | Bao nhiêu |
|---|---|---|
| Lực TC Nhân Vật do Robot chia sẻ | 10% · 10% · 10% | 30% |
| Lực TC Nhân Vật chia sẻ cho Robot | 10% | 10% |
| ST Robot | 10% · 10% | 20% |
Ngoài ra, thiên phú Trại cho 10% cho «ST Robot» và «Lực TC Nhân Vật do Robot chia sẻ».
6.Xe khắc chế một loại vũ khí cụ thể
Kháng = 1 − (chung + kháng riêng nếu vũ khí địch trùng loại) × Hệ số hạng
Phần trăm — ở hạng đỏ:
| Xe | Khắc chế | Chống lại người khác | Chống lại mục tiêu của bạn |
|---|---|---|---|
| Bán Chiến Xa | — | 10% | 10% |
| Lâm Suy | Súng Trường Tấn Công | 10% | 25% |
| Lửa và Biển | Súng Săn | 10% | 25% |
| Người Tuần Tra Graffiti | Súng Máy | 10% | 25% |
| Tử Ảnh | Súng Bắn Tỉa | 10% | 25% |
| Lam Quái | Máy Phóng Tên Lửa | 10% | 25% |
| Cổ Kiếm | Nỏ | 10% | 25% |
| Gai Lưu Đày | Súng Bắn Tỉa | 12.5% | 37.5% |
| Máy Cán Hủy Diệt | Súng Máy | 12.5% | 37.5% |
| Cá Mập Xương Neon | Súng Săn | 12.5% | 37.5% |
| Bá Tước Dracula | Nỏ | 12.5% | 37.5% |
| Dòng Thép Cuồn Cuộn | Máy Phóng Tên Lửa | 12.5% | 37.5% |
| Hiệp Sĩ Ngân Thương | Súng Trường Tấn Công | 12.5% | 37.5% |
| Tử Thần | Súng Bắn Tỉa | 12.5% | 37.5% |
| Huyết Lưu | Súng Máy | 12.5% | 37.5% |
| Pháo Đài Rừng Rậm | Súng Săn | 12.5% | 37.5% |
| Bóng Tối Vực Sâu | Nỏ | 12.5% | 37.5% |
| Người Thu Nhặt Hoang Thổ | Máy Phóng Tên Lửa | 12.5% | 37.5% |
Hạng nhân lên toàn bộ kháng: trắng 0,3 · xanh lục 0,4 · xanh lam 0,5 · tím 0,6 · tím+1 0,63 · +2 0,66 · +3 0,7 · cam 0,8 · +1 0,82 · +2 0,84 · +3 0,87 · +4 0,9 · đỏ 1,0. Các mức trung gian của tím và cam là hạng thật, không phải trang trí: cam+4 (0,9) cắt tốt gấp ba so với trắng.
«Tử Thần» đấu với bắn tỉa: hạng đỏ → cắt 37,5%; cũng xe đó ở hạng trắng → chỉ 11%. Hạng làm phòng thủ mạnh gấp ba.
7.Điều gì KHÔNG có tác dụng trong đấu trường?
Ở đây có hai trường hợp khác nhau, nên phân biệt. Thứ nhất: mỗi chỉ số có hệ số PVP riêng ghi trong cấu hình, chỉ số bị nhân ngầm với nó khi vào trận — với một số chỉ số hệ số đó bằng 0. Thứ hai: chỉ số không bị đặt lại, nhưng đơn giản là không ai đọc nó. Và một lưu ý quan trọng cho cả bảng: «không hoạt động» ở đây nghĩa là «không tham gia vào việc tính trận đấu». Các chỉ số này vẫn nâng CP, mà sát thương của nhân vật lại tính từ CP — nên không thể bỏ chúng khỏi build đấu trường.
| Chỉ số | Tại sao nó không hoạt động? |
|---|---|
| Tốc Độ Bắn | Hệ số PVP bằng 0. Hơn nữa, đấu trường có đọc chỉ số này — đọc xong thì luôn ra 0 |
| TĐ Nạp | Hệ số PVP 0, hoàn toàn giống nhau |
| Xác Suất Chí Mạng · ST Chí Mạng · ST Chí Tử | Hệ số PVP bằng 0, và bản thân hệ số chí mạng bị vô hiệu. Sát thương chí mạng và sát thương chí tử chết hẳn — chúng cũng có trọng số 0 trong CP |
| Xác Suất Né Đòn | Hệ số PVP 0 |
| ST gây ra cho quái Tinh Anh · ST gây ra cho Trùm | Hệ số PVP bằng 0, trong tính toán đấu trường không có nhánh nào cho nó |
| Sát thương theo loại vũ khí (tất cả sáu) | Hệ số PVP 0 |
| Tấn công từ phụ kiện vũ khí | Hệ số PVP bằng 0. Phần trăm «ST Đấu Trường / Giảm ST Đấu Trường» từ phụ kiện thì vẫn chạy — đó là các chỉ số khác |
| Máu Khởi Đầu | Không bị đặt lại, nhưng không được đọc: HP lấy từ Chiến Xa, engine không hề hỏi tới máu anh hùng |
Bị cắt, nhưng còn sống:
- Nguyên tố (cả tám) — chạy ở mức 20%.
Một chuyện lạ riêng: trong game có hai chỉ số khác nhau cùng tên «ST Đấu Trường». Một cái là hàng thật — cái mà phụ kiện vũ khí và vật phẩm sưu tầm cày lên. Cái thứ hai đã chết: hệ số PVP bằng 0 và không chỗ nào trong mã gọi tới nó. Chỉ là một chỉ số bị bỏ quên trùng tên.
Và chuyện lạ ngược lại: «ST Robot» được quy định hệ số 0,1, nhưng họ quên đọc nó — chỉ số chạy 100%. Cấu hình nói một đằng, mã làm một nẻo.
Epiphany (thưởng khoảng cách) - đã xóa.
8.Ai tính trận đấu
Máy chủ. Toàn bộ. Khi bạn bấm «đánh», máy chủ đã tính xong trận đấu từ đầu tới cuối và gửi về một protocol dựng sẵn: ảnh chụp HP của cả hai bên theo từng giây và người thắng đã được chỉ định. Điện thoại của bạn nhận protocol này TRƯỚC khi bạn thấy phát bắn đầu tiên.
Những gì diễn ra trên màn hình chỉ là bản ghi đang phát lại. Trong client có công thức tính cục bộ, nhưng khi báo cáo của máy chủ về thì nó bị vứt đi: HP được thay bằng số trong ảnh chụp, máy chủ chỉ định người thắng. Độ chính xác, phản xạ hay thời điểm bấm đều không ảnh hưởng gì — kết cục đã định trước khi hoạt ảnh bắt đầu.
Từ đó suy ra: trong trận không có yếu tố may rủi. Hai trận với cùng đối thủ và cùng chỉ số cho kết quả giống hệt nhau, tới từng chữ số HP ở mỗi giây. Điều này cũng giải thích vì sao chí mạng không có độ dao động: trong trận không hề có lượt quay số nào, kết cục là hàm thuần túy của chỉ số hai bên.
Máy chủ giữ ảnh chụp riêng các chỉ số đấu trường của bạn và tính trận theo nó, chứ không theo những gì bảng chỉ số đang hiện. Nếu bạn tháo hay đeo một món rồi vào đánh ngay, trận sẽ được tính theo chỉ số cũ, sát thương không đổi chút nào. Ảnh chụp được ghi lại sau khi trận đã diễn ra và có hiệu lực từ lần vào game kế tiếp, tức là nó trễ một nhịp «đánh → vào lại». Quy tắc bỏ túi: đổi build xong thì đánh một trận, vào lại game, sau đó chỉ số mới mới thực sự có tác dụng.