• [THÔNG BÁO] CẢNH BÁO LỪA ĐẢO MẠO DANH QUẢN TRỊ VIÊN
    Chào các thành viên GameVN,
    Dạo gần đây tình trạng lừa đảo scamming và phishing đang gia tăng. Ban quản trị GameVN xin lưu ý toàn bộ thành viên:
    KHÔNG/ ĐỪNG / CẤM cho bất kỳ ai tự xưng là quản trị viên của server vay tiền.
    Mọi hành vi lân la làm quen, tự tiện nhắn tin trên Discord, Facebook, Zalo hoặc các nền tảng mạng xã hội khác,
    núp bóng dưới danh nghĩa sinh hoạt của quản trị viên, đều có tỉ lệ rất, rất cao là lừa đảo.
    Nếu có tài khoản lạ add friend hoặc nhắn tin xin tiền dưới danh nghĩa admin:
    Block ngay
    Report ngay
    Không chuyển khoản, không cung cấp thông tin cá nhân


    Quản trị viên của forum và Discord server GameVN không có nhu cầu vay tiền thành viên.
    Không có lý do nào để admin chủ động kết bạn rồi xin tiền.
    Mọi thông báo chính thức chỉ được đăng trên kênh thông báo của server và topic chính thức trên forum.
    Tin nhắn riêng từ tài khoản lạ không phải thông báo của ban quản trị.
    Cảm ơn các bạn đã chú ý và cùng giữ cộng đồng an toàn.
    — Ban quản trị GameVN

    Tắt thông báo bằng nút X bên góc phải của bảng thông báo*

Các Pro chỉ giùm mình với

TuyettinhkiemHC

Youtube Master Race
Tham gia ngày
5/11/05
Bài viết
24
Reaction score
0
Các Procó thể chỉ mình làm thế nào biết đc NPC DialogId thế đc ko, hình như mình thấy trc đây ở topic LegN@- Bản mới ra mắt có HD là dùng lệnh ts.ClickOnNPC nhưng mình ko nhớ là làm thế nào nữa, các Pro ai biết giúp mình đc ko?
À còn 1 vấn đề này nữa mình ko hiếu tại sao chỉ có 1 con NPC mà có nhiếu NPC DialogID thế, Vd ở sc bot TTT mình thấy

/********************* NPC Dialog ID ***********************/
public override void NpcDialog(ushort DialogId)
{
debug("Dialog ID = "+DialogId.ToString());
if(DialogId==10885) {ts.SendEnd();}
else if(DialogId==10886) {ts.SendEnd();}
else if(DialogId==10887) {ts.SendEnd();}
else if(DialogId==10883) {ts.ClickOnNPC(1);}
}

như thế là sao mình ko hiểu, mình tưởng 1 con NPC thì chỉ có 1 NPC DialogID thui chứ
Còn có vấn đề này là minh ko hiểu, nếu đc các Pro giải thích là mình có thể tự viết bot NPC đc rồi, ko làm phiền mo ng nữa, giúp mình với nha

CÁC PRO AI BIẾT CHỈ GIÙM MÌNH VỚI, CÁCH TÌM NPC Dialog ID THẾ NÀO VẬY
 
+cách 1:test ClickOnNPC bằng cách gõ lệnh vào ô chat của legna,

Mã:
legna://ts.ClickOnNPC(1)
(test Giản Ung)

lega sẽ debug ra DialogID nếu hàm NpcDialog trong script có command debug.

+cách 2:(đừng ai xái cách này:p)

trong script ở hàm Start chỉ để dòng:

Mã:
ts.ClickOnNPC(NPCId);

còn ở hàm NpcDialog và NpcDialogMenu thì để như vầy thôi:

Mã:
public override void NpcDialog(ushort DialogId) 
{     
debug("Dialog ID = "+DialogId.ToString()); 
}

Mã:
public override void NpcDialogMenu(ushort DialogId) 
{ 
debug("Dialog Menu ID = "+DialogId.ToString()); 
}

rùi log vô bằng legna và nhấn F3 thì legna sẽ debug ra DialogId và MenuId thôi.

=================================
sau khi nhận dc DialogId thì xử lý lần lượt(xử lý dần dần vào script) các DialogId đó bằng các lệnh ts.SendEnd()
nếu là Dialog bình thường và bằng ts.ClickOnNPC() nếu là Dialog kết thúc quest.

còn menuid thì xử lý bằng ts.SelectChoice().

ví dụ khi nhận dc 1 dialogid là 10157 đi,thì vô script thêm vào trong hàm NpcDialog dòng

Mã:
if(DialogId==10157){ts.SendEnd();}

sau đó lại trở về bước 1 và sẽ nhận dc thêm các dialog khác(nếu có).

vewyn5.jpg


À còn 1 vấn đề này nữa mình ko hiếu tại sao chỉ có 1 con NPC mà có nhiếu NPC DialogID thế
1 con NPC chỉ có 1 NPCId(như GU thì NPCId là 1,DDA là 3...v.v...) còn mỗi DialogId là 1 câu hội thoại khi nói chuyện với NPC,khi nói chuyện thì có nhiều câu hôi thoại phải ko nè:hug:
 
Back
Top