Sau thời gian táy máy với cái server alex (xoá đi chép lài mấy lần!!) rút ra một số cái. Sau đây tui xin dc trình bày những ji đã mò dc
hy vọng dc sự đóng góp ý kiến:
1. Các file trong server liên quan đến skill: Skills.txt, Missile.txt, 状态图形对照表.txt (có cài font) hoặc ״̬Óë¹âЧͼÐζÔÕÕ±í.txt
(no font) nằm trong Server/Settings/ và các file skill môn phái dưới dạng file .lua trong server/Script/Skill/
2. Ý nghĩa các file này: Theo tui hiểu thì mỗi file nhận 1 nhiện vụ khác nhau, có tất cả các file này cùng với các file .spr trong data
mới có thể làm thành skills hoàn chỉnh.
- Skills.txt: liệt kê tất cả các skill sử dụng trong game của người chơi và NPC, file này quy định trạng thái (chiến, buff, bị động, chủ
động ...), dạng skill (cận chiến, tầm xa, đuổi, ...), cự ly tương tác, cách thức tương tác lên đối tượng, các thuộc tính mà skill có thể
sử dụng trong game (tốc độ đánh, sát thương %, điểm, tốc độ di chuyển, ... Tui sẽ đi sâu vào ở phần sau.
- Missile.txt: chứa thông hiệu ứng hình ảnh của skill và một phần cách thức tương tác của skill với player hoặc NPC
- 状态图形对照表.txt (có cài font) hoặc ״̬Óë¹âЧͼÐζÔÕÕ±í.txt (no font) chứa thông tin 1 số trạng thái đặc biệt của nhân vật
(đa phần là trạng thái buff)
- các file .lua: là các file chứa thông tin chính về tính chất vật lý của skill (damage, AR, skillcost,...) tức là skill đánh ra sẽ cho nhiu
đam, mất bao nhiu nội lực, rồi phụ trợ bao nhiu ....
Ngoài ra còn có các file .spr dc nén trong các file missiletemplate.txt, skilltemplate.txt, .pak trong data là giao diện hình ảnh với
người chơi.
3. Trong mỗi file có những ji?
* Đầu tiên là Skills.txt: Chia làm nhiều cột:
- cột A: Name: (kiểu String) tên của skill
- cột B: Property: (kiểu String) mô tả đặc tính căn bản của skill (hỗ trợ bị động, chù động, tấn công, bùa chú...) Ví dụ: skill Thieu lam
con phap: có property là 被动攻击辅助 (Auxiliary passive attack) tạm dịch là Hỗ trợ bị động cho tấn công.
- cột C: SkillId (num) - Id của skill
- cột D: Attrib (num) - thuộc tính của skill (chưa rõ, chỉ bít trấn phái thì có attrib 9999)
- cột E:Skillstyle (num = {0,1,2,3,4,5,6,7,8,9,10,11,12}) - loại skill (không phân loại (tùy thuộc missile), tấn công, hỗ trợ chủ động, bị
động, gọi, độc sát, thêm độc, nạp (??), ẩn(??), thay đổi, đặt mìn, sửa chữa,bắt giữ)
- cột F:skillicon (str)- icon của skill
- cột G: PrecastSpr (str)- trạng thái trc khi xuất chiêu (giống như ngami mỗi lần trc khi ra chiêu sẽ thấy hiệu ứng hình màu xanh trên
thân nv)
- cột H:Mancastsnd (Str): âm thanh đi kèm skill (nam)
- cột I:FMcastsnd(Str) âm thanh (nữ)
- cột J: StateSpecialId (num) - trạng thái đặc biệt chủ yếu cho buff- các bạn sẽ thấy khi buff hỗ trợ bạn sẽ thấy hình dạng skill hỗ trợ
quanh mình và đồng đội. Đó chính là biểu hiện trong trạng thái buff. Một skill có hình dạng khác nhau nên trạng thái cũng khác nhau)
- cột K:Is Aura (num = {0,1})- có hoặc không. hok bít nói sao cho đúng nhưng Aura là trạng thái kích hoạt khi mình đang mở skill còn
nếu đổi skill thì mất.
- cột L:LRSkill (quy định skill bên tay trái hay tay phải (0: Cả 2 bên, 1 chỉ bên trái, 2 chỉ bên phải, >3 chưa test)
- cột M:needshadown: bóng (0:không; 1:có)
-cột N:Atradius: tầm đánh (num)
- cột P:Maxshadownnum: số bóng tối đa
- cột Q:MslsGenerate: hiệu ứng của đường đánh (Value=0,1,2,3,4,5) (bình thường: có sao ra vậy. Cùng lúc: đối với skill có nhiều
missile, cùng lúc xuất chiu. Tuần tự: skill n missile, xuất lần lượt từng missile. Ngẫu nhiên: không theo quy tắc nào. Cùng lúc ngẫu
nhiên: missile ra cùng lúc nhưng hướng bay của các missile sẽ ko đồng nhất. Trải rộng: các missile dàn hàng ngang trên cùng 1
mặt phẳng)
- cột R:MslsGenerateData
num) chưa hiểu về cái này.
- cột S:CharClass: ngũ hành {0,1,2,3,4,5} = {kim,moc,thuy,hoa,tho}
- cột T:MisslesForm: dạng Missile {0,1,2,3,4,5,6,7}={dạng tường phẳng, đường thẳng, bột, sóng, vùng, điểm, tự tương tác}. Ví dụ:
Skill Bông 9x CB có 3 bổng nằm trên 1 mặt phẳng.
- cột U: ChildSkillId: (num) skill nền hoặc skill liên quan. Id của skill mà skill đó dựa trên hoặc sử dụng
- cột V: ChildSkillLevel: lev của skill nền các bạn thấy là thường là -1 vì skill nền thường là ko có lev hoặc có lev nhưng lev ko ảnh
hưởng đến skill hiện tại
- cột W:Childskillnum: số lượng skill nền: (num) ví dụ: 9x bổng CB mún có 6 bổng thì số skill nền cứ set lên 6 sẽ thấy 6 bổng.
- cột X: BaseSkill: {0,1} = {không,có} có dựa trên skill nền hay ko?
- cột Y: CharAnimId : animation (hiệu ứng hình ảnh) của nhân vật khi tiến hành skill (num)
- cột Z: EventSkillLevel: {0,1} Khi chuyển lev skill có sử dụng hiệu ứng ji ko. (Giống như khi mình lên lev có cái hiệu ứng lên lev: một
vòng tròn màu vàng quanh nv)
- cột AA:Ismelee: {0,1} Cận chiến hay ko
- cột AB: Waittime: thời gian chờ trc khi xuất skill. Thường cho các skill đa hỗ trợ. Ví dụ: Phong Sương Nga Mi có Phong sương,
Thien Phat Thien Diep và Kim Dinh Phat Quang. Trong đó Kim Dinh ra đau tien( 4tia tỏa), tiếp theo thì Phong Suong (mưa rơi) cuối
cùng Thiên Phát (4 tia nhập) các skill sau thường phải wait skill trc một lúc rùi mới xuất ra tạo nên thứ tự xuất hiện skill.
- cột AC: chưa biết-cũng hok hiểu
- cột AD: SkillCostType {0,1,2,3}={MANA|LIFE|STAMINA|MONEY} dạng tiêu hao
- cột AE: CostValue: (num) lượng tiêu hao
- cột AF:TimePerCast: (num) Thời gian xuất chiêu (lâu mau tùy mình, nên để 0 vì sẽ hài hòa giữa hình ảnh và tác động thực)
- cột AG: IsPhysical: {0,1} vật lý (ở dạng này sẽ nhận hết mọi phụ trợ về tấn công ngoại công(sat thuong %,diem,bs,ls,ds,hs))
- cột AH: TargetOnly {0,1} chỉ tác động lên mục tiêu mà mình tập trung vào (nếu để 1 thì quánh con nào chỉ chết con đó, dù kiếm có
bay rợp trời thì mấy con xung quanh cũng hok chit)
- cột AI: TargetEnemy {0,1} có hiệu lực với kẻ thù. Rõ ràng tấn công thì phải giết chết kẻ thù (nên các chiêu đánh sẽ thấy để 1)
- cột AJ: TargetAlly {0,1} có hiệu lực với đồng đội. Ví dụ: nga mi buff
- cột AK: TargetSelf {0,1} có hiệu lực lên bản thân. Tất nhiên chỉ để 1 cho những skill nào phụ trợ cho mình. Chứ skill giết mà để 1
nữa thì lưỡng bại câu thương
- cột AL: TargetObj {0,1} có hiệu lực lên object ví dụ như item. Mún dùng đao thiếu lâm tự chặt bỏ đồ rớt khi đánh quái thì cứ cho số
1 vào đây
- cột AM: ByMissle: {0,1} tùy thuộc Missile (thường cho các skill tầm xa đơn) nếu chọn 1 khi Missile vừa chạm vào đối phương là
gây ra tác động (damage hay hỗ trợ..). Đối với các skill đa thức sát(trc khi giết thì có vài hiệu ứng phụ) như thiên vương thương.
Quánh đủ 5 thương quái mới dính dame. Nếu để bymissile =1 thì ngay thương đầu là đã ngậm dame rùi, 5 thương sẽ thành 5 dame
riêng
- cột AN:IsUseAR {0,1} (Use attackrating) skill sẽ cần độ chính xác nếu để cái này =1
- cột AO, AP, AQ, AR, AS, AT, AU, AV, AW: StartEvent StartSkillId FlyEvent FlySkillId FlyEventTime CollideEvent
CollidSkillId VanishedEvent VanishedSkillId: Sự kiện bắt đầu (num=0,1 (khong,co)), Id skill tương ứng sự kiện bắt đầu
(num); sự kiện lúc di chuyển (num=0,1 (khong,co)), Id skill(num); sự kiện lúc tương tác (num=0,1 (khong,co)), Id skill(num); sự kiện
lúc biến mất (num=0,1 (khong,co)), Id skill(num). Đây là những trạng thái trong quá trình diễn ra skill từ lúc bắt đầu đến kết thúc. Nếu
set hết cái này các bạn sẽ có 1 skill phức tạp nhiều hiệu ứng (đẹp or không tùy người tạo). Còn bình thường thì giá tri = 0
- cột AX, AY, AZ, BA: ReqLevel(num) MaxLevel(num) EqtLimit(num) HorseLimit (0,1=khong,co): Lev yêu cầu (đẳng cấp nhân
vật có thể sd skill) , Max lev skill (lev cao nhất của skill) và giới hạn trang bị (cái này chưa rõ), thi triển dc trên ngựa hay ko
- cột BB: DoHurt: thời gian sát thương(num = ): nên hiểu là thời gian tính từ lúc xuất chiêu đến khi đối phương nhận hiệu ứng. Đối
với các skill tầm xa đơn (chỉ xuất 1 lần 1 chiêu) thì nên set cái này = 0 và by missile =1 thì dame đánh sẽ trúng số khác (nếu o phù
hợp) bạn sẽ thấy chưởng đi đằng nào rồi mà quái chưa chết hoặc chưởng chưa đến mà quái đã lăn đùng ra chết. Đối với skill đa
thức sát thì cần set hời gian này chẳng hạn như truy tinh truc nguyet của Thien Vuong giá trị này là 60 có nghĩa thời gian quái chờ
dính dame = 40% thời gian để 1 missile hết khoảng cách từ người đánh đến quái (chứ ko phải thời gian mà cái cây thương chạm
dc vào quái nha) Tốc độ missile thực do skill trong file .lua quy định (hàm missle_speed_v, cái này nói sau)
- cột BC: weaponskill: {0,1} là skill của vũ khí ? nếu là 1 thì skill này chỉ dành cho vũ khí mà thôi
- cột BD,BE, BF, BG: Param1(num) Param1Memo(num) Param2(num) Param2Memo(num) (CHƯA HIỂU LẮM) lờ
mờ là param1 set sự chênh lệch trc sau của các skill có nhìu missile dạng tuần tự, pram1memo ???, param2 set góc giãn cách
giữa các missile, param2memo ???.
- cột BH StopWhenMove: {0,1} dừng skill khi di chuyển
- cột BI HeelAtParent (num) số 1: missile sẽ bắt đầu xuất ra từ skill đầu tiên (nếu có) hoặc từ người xuất skill nếu ko có skill đầu.
Nếu bỏ trống hoặc set = 0 thì ở trạn thái mặc định.
- cột BJ RelativePosType: ko bit lun
- cột BK
eaceCanUse: {0,1}sử dụng tốc độ nếu là 1: của đối tượng (người xuất chiêu, người nhận chiu) thường là các skill buff,
người ở đâu thì vòng buff ở đó, nếu set về 0: mặc định của skill.
- cột BL ShowEvent: {0,1} thể hiện sự kiện khi xuất chiu (ko rành) đại loại như hiệu ứng phụ trợ
- cột BM LvlSetScript(str) đường dẫn đến file .lua quy định các thuộc tính chiến đấu, phụ trợ thực
- các cột sau này sẽ có cấu trúc: cột tên skill rồi đến cột hàm thuộc tính (tên chính xác như trong file .lua). Cái này để qua phần file
.lua tui nói típ. Giờ nghỉ cái. mệt quá!
Be continued...