Từng bước trở thành 1 Modder (Lớp học mod tập 2)

Thảo luận trong 'Diablo' bắt đầu bởi anchono, 24/12/09.

  1. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    Định lập cái topic này lâu rồi, nhưng phải chờ cái bên kia (txt files guild) post xong đã, mục đích của 2 topic là giúp cho các mem mới tìm hiểu về mod và các bước để trở thành 1 modder (nếu họ thích). Nếu topic bên kia nói về ý nghĩa của các files txt thì bên này nói về cách sử dụng các files đó như thế nào, có công dụng gì,… qua một số ví dụ cụ thể, để từ đó các mem rút ra cách thức (tui gọi là “ngộ ra chân lý”) thực hiện những việc khác.
    Vì 2 topic này tương hỗ cho nhau (nhưng ko muốn để chung vì sẽ gây loãng) nên chúng sẽ song hành với nhau, topic kia hướng files gì, thì topic này hướng dẫn có thể làm gì với files đó…
    Luật bên này cũng giống bên kia:
    1. Topics này hướng dẫn mod thông qua các Turtorials (Tạm dịch là ví dụ).
    2. Bài viết này cũng chỉ mang tính đóng góp, các bạn không nhất thiết phải làm giống như thế, dĩ nhiên, nếu có sai sót thì mong các bạn “nhiệt tình” sửa lỗi.
    2.5. Cái này ko chỉ lấy nguồn từ frozen keep mà còn từ một số sites khác (kể cả trong chính box này và do bản thân tự phịa ra ;))), lấy ở đâu sẽ để nguồn ở đó.
    3. Vì topic này hướng dẫn về cách thức làm mod nên rất khuyến khích những câu hỏi như : tại sao Laz làm được thía này? Tại sao mod này có cái kia hay thế ? Tại sao em làm ko được ?… Dĩ nhiên, tui sẽ trả lời nếu nó nằm trong khả năng của mình. Nhưng rất mong các bạn hỏi đúng chủ đề đang bàn luận (ví dụ như bây giờ thì chỉ nên hỏi về cách tạo các items, potions đặc biệt…). Note : nếu trong quá trình làm có lỗi hoặc làm ko được, đề nghị nên post hình theo để tiện trả lời.
    4. Có thể trong quá trình guilds, về các columns đã được hướng dẫn (bên topic kia) nên sẽ ko nói rõ (chỉ giải thích sơ sơ nếu khó, vậy các mem mới “ngộ” được chứ). Ai ko hiểu, cứ việc hỏi, hiểu rồi mà muốn hỏi cho chắc cũng được (rất hoan nghênh việc hỏi.) Ngoài ra, nếu bài guilds có đụng chạm đến các files khác chưa được hướng dẫn, tui sẽ có phần giải thích (chỉ sơ sơ tui, dạng như : tại vì sao lại thế ?), đến khi có phần hướng dẫn về files đó rùi, chúng ta sẽ bàn luận kĩ hơn
    5. Cuối cùng, một lần nữa, rất mong sự đóng góp của các mem khác.
    Cái này ghi nhỏ nhỏ thui : Vì trong box, mod đang được quan tâm nhất có lẽ là MXL, nên tui sẽ tập trung nhiều vào các guilds hướng dẫn cách làm các thứ bên MXL, cứ từng cái, từng cái, chúng ta sẽ có 1 MXL ko phải của Laz… (Sướng nhá).


    Dzô đề:

    MODDING TẬP 2​

    (Từ cơ bản đến nâng cao)

    Turtorial's List:

    1. History và Turtorial 1

    2. Turtorial 2 : Tạo Potions Với Hiệu Ứng Bạn Muốn

    3. Turtorial 3 : Tạo Potions giới hạn số lần sử dụng

    4. Turtorial 4 : Tạo bình máu phục hồi theo %HP của char

    txtFiles's Means:

    1. Armor.txt

    2. Weapons.txt

    3. Misc.txt
     
  2. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    **** Bắt đầu bằng tiết history nhá =)):
    Lịch sử phát triển Modding ở box chúng ta (Tóm tắt sơ sơ, có bỏ sót phần nào thì nhắc nhé):
    Vạn sự khởi đầu nan: 16-06-2007, 17:26 tiền bối gfminimog lập ra topic hướng dẫn modding đầu tiên (tui học mod lần đầu cũng từ topic này) với tiêu đề :
    Cơ bản về modding Diablo II
    Link đến topic : http://forum.gamevn.com/showthread.php?t=324214

    Với mục tiêu “phổ cập”, tiền bối đã cho chúng ta những kiến thức hết sức cơ bản, (nhưng quý giá) về việc modding, bài viết của tiền bối hiện vẫn còn là kim chỉ nam cho rất nhiều bạn trẻ muốn trở thành 1 modder. Vì vậy tui xin mạn phép copy bài viết của tiền bối ra đây, để các bạn tham khảo (rất may là cũng phù hợp với chủ đề hiện giờ: Bàn về items. Tuy nhiên còn có một số phần chưa được hướng dẫn như unique, cube recipes, pack… Tui cũng ko tiện sửa nên ai có điều chi thắc mắc thì cứ post lên hỏi – thật ra mấy cái đó ko khó đâu, tự tìm hiểu sẽ hay hơn). Đây cũng là Turtorials đầu tiên của chúng ta, nó mang tính tổng quát đúng như tôi mong đợi:

    Quả là vạn sự khởi đầu nan, topics của tiền bối gfminimog ko được hoan nghênh cho lắm. Khi nhìn lại topics tâm huyết của mình huynh ấy bàng hoàng (gọi vậy cho dễ, nói tiền bối nghe ghê quá =))) nhận ra nó đã bị spammer hoành hành =)). Thất vọng, anh đề nghị Mod lúc bấy giờ (là ai thì quên mất rồi) locks lại vào lưu vào box lưu trữ (giai đoạn đầu kết thúc thật bi thảm). Quả là tội nghiệp cho huynh ấy.
    Giai đoạn 2: Sự phát triển của các modders, modQB (của vkien). Hội Chiến Sĩ: Tưởng chừng như việc đưa modding vào VN đã đi ko còn hy vọng. Nhưng gfminimog ko hề bjk rằng, đằng sau sự im lặng đầy đau thương đó, là những modder thật sự, những modder đầy tâm huyết, đã quyết định thực hiện đúng tâm nguyện của anh ấy (chỉ hướng dẫn, ko muốn đi sâu). Bằng cách tự lên web tìm tòi và học hỏi, 1 thế hệ mod của VN đã ra đời, nổi bật trong số đó là Haidaibang và vkien.
    vkien bằng nỗ lực và (cái mà tôi rất khâm phục) tính kiên trì của mình, đã cho ra đời một bản mod đầu tiên của box (có thể nói là mod hoành tráng đầu tiên của VN): DiabloQB. Sự ra đời của DiabloQB đã khiến cho các mem nhận ra rằng, chúng ta cũng có thể làm mod. Điều này đánh dấu một bước ngoặt lớn trong lịch sử modding của box chúng ta=)) (vkien sướng nhé). DiabloQB đã khuấy động lên phong trào học mod trong box. Ai cũng muốn thực hiện riêng cho mình 1 bản mod, các topics hỏi về cách modding liên tục được lập ra (phần này nói hơi quá :P). Thế nhưng, sau 1 thời gian tìm hiểu, các mem mới thấy rằng làm mod ko hề dễ dàng như họ tưởng, 1 người bình thường ko thể nào tự mình làm mod (vkien xem ra ko bình thường =))) mà ko cần sự giúp đỡ của người khác. Vì vậy, lẽ dĩ nhiên, một nhóm làm chuyên làm mod ra đời, đó là đỉnh cao của phong trào modding : Hội Chiến Sĩ.
    Gian nan bắt đầu nản : Câu chuyện như thế nào thì tui ko bjk (vì tui ko phải thành viên của hội), nhưng theo như thui thấy thì sau 1 thời gian tích cực, các mem bắt đầu "nản", việc làm mod thật sự quá khó (vì họ đặt ra những mục tiêu quá cao chăng?), HCS kết thúc từ lúc nào thì cũng ko còn ai nhớ nữa.
    Điểm đáng nói đến cuối cùng là lớp học modding (mà cái này là phần 2 nè) của Haidaibang.
    Kết thúc. Chán nản sinh bần cùng:
    Với sự ra đời của Median 2k8, các modder dần dần chuyển sang player (mặc dù ban đầu chỉ để vọc ;))). Bên lớp học modding (topics cuối cùng còn hoạt động liên quan đến mod) Haidaibang biến mất, ko còn ai lãnh đạo, topic cũng lụi tàn dần.
    Khi cat lên ngôi thì đó cũng là lúc (gần như vậy thui) lịch sử modding của box chấm dứt.

    Cái này đa phần là ghi lại theo trí nhớ =)). Không dám khẳng định 100% (đặc biệt là khúc của HCS).

    Tự nhiên thấy mình giống Abd al-Hazir quá =)).

    Thanks for QHu91_IT vì đã bổ sung:
     
  3. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    Kết thúc tiết lịch sử. Hy vọng các bạn cũng đã có các khái niệm cơ bản về modding.
    Tiếp theo, chúng ta sẽ đi sâu vào chủ đề hiện tại : Items.
    Weapons thì trên kia nói rùi, armor thì cũng tương tự, ai còn gì thắc mắc thì cứ post lên hỏi.
    Tiếp theo là phần quan trọng và cũng là hay nhất trong chủ đề trên, file misc.txt.

    Turtorials 2: Tạo một Potions mới với những hiệu ứng mình mong muốn.

    (Gamemodding – How to creater a New Potions with speacial effects – by Nick).
    Dụ : Trong MXL, bạn thấy có nhưng potions đặc biệt, như tăng strength, tăng experience gained (kinh nghiệm nhận được khi kill quái),… Bạn muốn biết Laz làm thế nào. Hãy đọc hướng dẫn dưới đây… (Và tự nghiệm ra chân lý =))).
    Các tools cần dùng
    1. MS Excel (D2excel nếu bạn nào ko có điều kiện) .
    2. AFJ tbl Edit.

    Các files cần dùng, chỉ cần misc.txt là đủ.
    Guilds này sẽ hướng dẫn bạn tao một potions làm tăng 50 fire resistance (kháng lửa) của char trong vòng 5 phút.
    Bắt đầu nào, open files misc.txt (làm sao để có, Mở như thế nào thì đọc ở cái Basic Modding trên).
    Kéo đến hàng cuối cùng, ta tạo cái mới lun nhé (trong bản gốc bảo copy từ bình thawing, nhưng tôi mún làm từ đầu lun).

    [​IMG]

    Xong files text. Save and close.
    Tiếp theo dùng tool mở files TBL lên. (Ở đâu, khi nào, tại sao =)), thì tiền bối trên kia cũng đã chỉ).
    Tạo một mục mới với tên giống như tên trong namestr ban nãy của potions. Sau đó nhập vào tên của items.
    Tạo một mục mới với tên là cái Spelldesc ban nãy bạn đặt, tôi sử dụng firrespot.
    Nhập trong đó : Add 50 (hoặc chỉ số ban nãy bạn đặt vào calc1) to fireresistance. (Hoặc nhập bất cứ thứ gì bạn muốn).
    Save fire TBL lại.
    Vào game, tạo 1 char, tới shop của Akara và thấy 1 bình lạ hoắc (bình của mình chứ ai). Kaka, muốn mua thử rồi uống xem có được ko đúng ko nào, nhưng ko được đâu, vì…. =)).

    Turtorials sau sẽ là cái mà tui thích nhất trong phần này. Tạo Potions chỉ cho sử dụng một số lần nhất định trên 1 char.=))
     
  4. QHu91_IT

    QHu91_IT ٩(˘◡˘)۶ Moderator Knight

    Tham gia ngày:
    16/2/08
    Bài viết:
    9,798
    còn có nhiều anh hào nữa k kể tên lên thật k phải ~~ nếu k có đóng góp của họ thì thực sự sẽ k có được những thảnh quả hôm nay, người đầu tiên khơi mào lịch sử modding rầm rộ nhất là resky, người đầu tiên việt hóa k rõ là ai chỉ biết là mình ngồi nhà phát hiện ra cách thức việt hóa k dấu và đợi vài ngày sau lên mạng để giới thiệu cho anh em thì k biết đã có chú nào chiếm trước rồi =)) còn người đầu tiên mang ánh sáng việt hóa có dấu đến cho anh em chúng ta là bối bối, người chế tools việt hóa cho anh em là black2222 tuy hoạt động ít và ngắn nhưng thực sự đã có công rất là lớn cho anh em việt hóa thành công tiêu biểu là bản việt hóa của o0x0o, trên tất cả hầu như chỉ có mỗi vken là thành công trong việc làm thành công 1 bản modvn, còn bản mod của HCS (đầu tiên do o0x0o thành lập) thì k biết đã bay đi đâu chắc môi người cầm 1 ít :">, ngoài ra còn rất nhiều anh em khác hoạt động rất mạnh (sr vì k còn nhớ tên =)))
    Hiện nay cũng xuất hiện 1 số modvn do anh em nào đó ở đâu đó làm, chả biết ra sao nhưng bị tranh cãi về bản quyền khá là sôi nổi và do vậy mấy bản đó đều đi vào dĩ vãng trong những cuộc tranh cãi nảy lửa ~~
    Tinh thần modder của anh em thì vẫn còn nhưng mod game k đởn giản mà nó là cả 1 quá trình phức tạp mà phần lớn anh em đều có tính chán hội đồng, 1 người nản là cả hội nản, còn người nào chưa nản làm 1 mình rồi cũng sẽ nản =)) quan trọng là hứng thú đối việc modding cao độ và rảnh đời, phần lớn anh em đều có công chuyện gì đó và cáo từ dần dần là đi hết sạch ngay, lớp học mod chỉ nên là 1 topic tổng hợp các bài tut hướng dẫn cách làm mod thôi, còn bình luận thì spam cháy mấy topic rồi, giờ có thêm cũng chỉ là spam nhạt đi thôi :))
    Giờ này anh em nào còn giữ bí quyết modding nào có thể viết ra chia sẻ cùng anh em, khi mà nhà nhà chơi d2, người người chơi d2 đều biết đến những cách mod mà anh em chia sẻ thì chắc chắn việc huy động làm mod sẽ dễ dàng hơn
    Đã có nhiều topic như thế này nhưng trong đó những người biết rồi thì bình luận với nhau, người chưa biết vô hỏi sẽ rất rối vì họ chả biết gì cả, thành ra phải chỉ cho từng người khiến cho topic phình ra làm nhạt đi topic mà người biết thì biết mà người chưa biết thì vẫn chưa biết, tài liệu k thiếu nhưng toàn tiếng anh mà anh em khá là ngại đọc, chưa kể lắm cái nói chả hiểu gì ~~
    Bây giờ có lẽ lên họp lại những người biết mod và cùng nhau làm nên 1 topic hướng dẫn đúng nghĩa cho mọi người, nhớ ngày xưa có ông nhanred có tài mod đó và cũng lập mấy topic mod nhưng mà hình như thấy ổng khoe hàng là chính chứ chả thấy cái hướng dẫn gì cho nên topic nhanh chóng lụi tàn theo pages

    Tui nghĩ anchono sẽ làm lên 1 làn gió mới cho modding của box chăng, hi vọng vào các bài tut của bác đấy :">. Thân
    @anchono: sao bác k gộp các bài tut của bác vào topic này và lấy bài 1 làm menu (như mấy bài trước của tui ấy) cho dễ tra cứu, ngoài ra còn có thể đưa các bài viết cũ vào cho nó đông vui ;;) tui nghĩ mình có thể giúp bác 1 vài việc gì đó nhỏ nhỏ thôi :">
     
  5. zzsup3rmanzz

    zzsup3rmanzz Youtube Master Race

    Tham gia ngày:
    13/1/08
    Bài viết:
    62
    đọc xong cái này choáng luôn, làm ơn ghi lại 1 lần, ngắn gọn hơn :))
     
  6. anhquanhs

    anhquanhs Mayor of SimCity Lão Làng GVN

    Tham gia ngày:
    3/8/06
    Bài viết:
    4,480
    Nơi ở:
    Bà Rịa-Vũng
    Kêu bác mèo merge hết mấy bài của bác anchono lại cho vào 1 topic rồi đặt cái tên cho topic.
    Như là Lớp học Mod gì đó cho nó hay. ;))
     
  7. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    ^^! Cảm ơn đã đóng góp ý kiến.
    @QHu91_IT: cái phần làm menu, nói ra hơi ngai, nhưng thú thật là ko bjk làm =((.
     
  8. anhquanhs

    anhquanhs Mayor of SimCity Lão Làng GVN

    Tham gia ngày:
    3/8/06
    Bài viết:
    4,480
    Nơi ở:
    Bà Rịa-Vũng
    Ví dụ như là mình sẽ lấy #1 làm Menu:

    Txt Files Guilds

    Để chỉ tới những post của mình. Nên post trong 1 topic để dễ quản lý.
     
  9. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    Ah. Hiểu. Đơn giản thía sao nghĩ ko ra ta ^^! Thanks AQ nhiu` nhiu`.
    @QHu...: rất "thấm thía" 2 chữ rảnh đời của cậu. Năm nay em học 12.
     
  10. phamtien23890

    phamtien23890 Dragon Quest

    Tham gia ngày:
    20/4/08
    Bài viết:
    1,416
    Nơi ở:
    thái nguyên
    dài quá. nhưng có lẽ là nên học thui. cố lên bác=((
     
  11. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    @phamtien23890 : đang cố dọn dẹp cho ngắn lại, nhưng phải spam cho đủ 50 bài đã (nhìn cái chữ kí của bác hết dám spam ;))).
    Típ, phần 3 nè:

    Turtorials 3 : Tạo Potions chỉ sử dụng được 1 lần

    (Fronze Keep - Creating Single Use Potions – By Talonrage)

    Dụ : Trong MXL, có bao giờ bạn tự hỏi : “Làm sao Laz tạo được cái Signet Learning?” chưa. Ah, ý tui nói tới cái Signet ko phải vì nó add 1 stat point mỗi lần sử dụng đâu, mà là do nó giới hạn 500 lần sử dụng, sau đó ko dùng được nữa. Bài guilds này sẽ hướng dẫn các bạn tạo 1 potions chỉ cho phép sử dụng 1 lần/ 1 char, sau đó các bạn hãy tự tìm ra cách làm với 500 lần (thử xem – dễ lắm). Dĩ nhiên rất hoan nghênh những ai nghĩ ko ra và lên đây hỏi (hoan nghênh phần “nghĩ” và phần “hỏi” chứ ko phải phần “ko ra”… =))).

    Các tools cần dùng

    1. MS Excel (D2excel nếu bạn nào ko có điều kiện)
    2. AFJ tbl Edit.

    Các files cần dùng:

    1. Misc.txt
    2. ItemStatCost.txt

    Bài guilds này sẽ giúp bạn tạo ra 1 potions add ngẫu nhiên từ 1 – 1000 gold cho char. Tuy nhiên nó chỉ sử dụng được 1 lần/ char.

    Ok. Bây giờ bắt đầu với ItemStatCost.txt.
    Bước 1 dĩ nhiên là mở nó ra. Kéo đến hàng thứ 183, hàng này được sử dụng cho việc lưu trữ các stat lâu dài (tức là có thoát game ra cũng ko mất), vậy nên chúng ta sẽ sử dụng chúng cho turtorials này.
    Nói sơ qua về cái này đã :
    Các bạn có thể sử dụng các hàng khác như 184, 185,…, 212. Các hàng này được tạo ra trong game chỉ nhằm lưu trữ các thông tin mà modder muốn, ko tác dụng thật sự trong game. Vậy nên nó ko bị items add thêm, ko bị thay đổi chỉ số nếu không có tác động trực tiếp của modder ---> dễ dàng quản lí.
    Bạn có thể đổi tên các hàng này, tuy nhiên ko được tạo ra hàng mới. Tại sao ư ? Tui ko biết =)). Cái này rút ra được cũng là do kinh nghiệm của bản thân (mà trong game có nhìu rùi, xài ko hết, tạo làm j`). Thú thật là lúc đầu viết bài guild này, tui cũng dự định sẽ tạo hàng mới lun (trong bản gốc nó bảo xài cái unused183 ;))) nhưng ko ngờ khi test thử thì nó báo lỗi, ko xài được, làm đi làm lại rùi cũng quay dzìa với cái 183 chứ ko còn cách nào khác. Dĩ nhiên lỗi có thể do có nguyên nhân chủ quan từ em, nên em rất mong các bác làm thử rùi lỡ đâu bjk cách giải quyết chỉ lại em ;)).
    Dông dài quá nhỉ, dzô đề nào:
    Trong Row 183 (chứa cái unused183) của ItemStats Cost, bạn hãy thay đổi chỉ số trong các cột sau đây:
    Send Bits: 32. (Đại khái là cho biết số Bits game dành để lưu stats này trong bộ nhớ).
    Saved : 1. Cái này rất quan trọng, cho biết stats này có lưu trong files save (*.d2s) của char. Tức là nó tồn tại vĩnh cửu và độc lập đối với từng char.
    CSvSigned: 0. Cái này cho biết stats có dấu ko. Tức là số trong stats này có thể âm ko đó.
    CSvBits: 32. Tương tự như trên. Cho biết số Bits dùng để lưu stats này trong files save của char. (Nếu cái CSvBits = 0 thì chỉ lưu được các số trong đoạn từ [0, 4294967295], nếu CSvBits = 1 thì lưu được các số từ [-2147483648, 2147483647]).
    Divided : 1024. Nó = 1024 vì nó phải như thế ;)).
    Direct : 1. = 1 là có rollover, = 0 thì sẽ báo lỗi nếu vượt quá.
    OK. Save and close this files.
    Bước 2: Opens misc.txt ra, kéo xuống hàng cuối cùng nữa nhá, dưới cái fire resistance mới làm đó:
    Thêm 1 hàng mới nào :

    [​IMG]

    Khúc cuối thì y chang lần trước : Edit TBL thêm các Idex mới vào, ko chỉ nữa, tự hiểu.
    Ai có thể tìm ra cách làm với giới hạn 500 trước nào. Làm ra thì post code lên nhaz.
     
  12. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    Turtorials 4 sẽ hướng dẫn cách tạo các bình máu, mana phục hồi theo %hp theo thời gian (giống như mấy bình trong MXL ấy ;))).
     
  13. GoodLess

    GoodLess Legend of Zelda

    Tham gia ngày:
    22/5/09
    Bài viết:
    1,094
    Nơi ở:
    Việt Nam
    Bái phục cha quá người đọc muốn điên luôn thì người làm ra thật sự là quá pro :>.Hay là bác chờ D3 ra rồi hãy làm mod tiện thể Việt Hóa nó luôn đi chứ làm mod D2 giờ không được hợp lí lắm lí do bác tự hiểu.Tui chỉ góp ý thế thôi nha bác cũng đừng nói tui làm nhụt lòng chiến sĩ.Xin đừng chém tui nhé b-(
     
  14. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    =))=))=)).
    @GoodLess: cái kiểu làm cho người đọc muốn điên chắc là do tui ko có khiếu diễn đạt. Lần sau sẽ cố gắng ko dài dòng.
    Chuyện nản là ko bao giờ, dù by giờ chỉ có mình tui tui vẫn làm thấy ko :-*.
    Còn mod D2, nếu ko ai làm thì sẽ vẫn có mod (1 mình tui làm), còn chuyện DIII thì như stana nói, chịu khó đợi Blizz đi ;)).
     
  15. haidaibang667715

    haidaibang667715 T.E.T.Я.I.S

    Tham gia ngày:
    4/7/07
    Bài viết:
    672
    Nơi ở:
    Nha Trang
    Hix, cảm động quá, cố gắng lên nhé anchono, bỏ 3 cái mod này lâu rồi, giờ cũng chả nhớ gì nữa. Học hành căng quá, không giúp gì dc các bạn, thông cảm cho haidaibang nhé. ^^!
     
  16. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    haidaibang sao bjk mà trở lại vậy.
    Học j` mà căng ?
     
  17. haidaibang667715

    haidaibang667715 T.E.T.Я.I.S

    Tham gia ngày:
    4/7/07
    Bài viết:
    672
    Nơi ở:
    Nha Trang
    Dạo trước mê Jxserver, rồi giờ học đủ thứ, học chính ở trường, lớp lập trình mạng, mỹ thuật....hix, phải từ bỏ những gì mình thix để tập trung vào tương lai thôi, thình thoảng cũng hay online xem tình hình box Diablo chứ bạn. ^^
     
  18. anchono

    anchono Mr & Ms Pac-Man

    Tham gia ngày:
    29/8/08
    Bài viết:
    195
    Nơi ở:
    Nơi có ánh sao rơi
    Dạo này đang thi, nhưng vẫn cố gắng làm cho xong cái guides này =)):

    Turtorial 4 : Tạo bình máu phục hồi theo %HP của char.

    (Frozen Keep - by Ric Faith)​


    Dụ : Trong MXL, bạn thấy các bình máu và mana phục hồi tùy theo %HP (%MP) của từng char. Tại sao vậy nhỉ, bài guilds này sẽ hướng dẫn các bạn điều đó.

    Turtorial này sẽ hướng dẫn các bạn sửa bình máu, cụ thể là Lesser Healing Potion (hoặc Minor Healing Potion), có tác dụng phục hồi 25% lượng máu của char trong 3 giây.

    Các tools cần dùng:

    1. MS Excel.
    2. TBL editor.

    Các files cần chỉnh sửa : misc.txt only.

    Bài này chỉ hướng dẫn cách sửa công dụng bình máu, ngoài ra các bạn có thể thêm các bình mới hay gì đó, cách làm hoàn toàn tương tự.
    OK. Open misc.txt, kéo xuống hàng chứa dòng lesser healing potion (của tui là 81).
    Chuyển sang cột len (BD), bắt đầu sửa từ đây nhé:
    [​IMG]

    Rút kinh nghiệm mấy cái trước, cái này giải thích ở dưới cho đỡ vướng =)).
    Chỗ đầu tiên là stat('maxhp'.accr)/256/4. ‘maxhp’ là stat cho biết lượng máu của items, nên hàm stat('maxhp'.accr) sẽ trả về lượng máu của char (kể luôn phần được cộng). Tuy nhiên, stat maxhp gồm 32 bits, trong đó có 8 bits thừa (thật ra là dành để lưu trữ phần phía sau dấu phẩy động, nhưng kệ nó, bỏ qua đi), vì vậy khi sử dụng stat này, chúng ta phải chia cho 256 (2^8 = 256) mới lấy được lượng máu chính xác của char. Cuối cùng, ta chia cho 4 để được 25% =)). Vậy đoạn code trên sẽ trả về 25% lượng máu của char, hay nói cách khác sẽ giúp cho Healing Potion biết mà phục hồi 25% máu. ;))
    Xong phần đầu. Đến phần thứ 2 này, một vấn đề khác được đặt ra. Trong game, stat hpregent và manarecovery (phục hồi máu và mana) có tác dụng khác nhau với những class khác nhau. Ví dụ đối với máu, thì bar được phục hồi gấp đôi (bình máu trong files misc.txt cho phép bơm 30 máu thì nó được đến 60), ama phục hồi 150%... Nên nếu bạn ko sửa cột spelldsc thành 2, thì trong v1.10 chỉ hiện cho phục hồi 30 máu (đối với bình lesser), nhưng trong v1.11 thì lại hiển thị đúng số lượng được phục hồi (ví dụ con bar 1000 máu thì trong đó nó hiện đến 500), tức là con bar được phục hồi đến ½ chứ ko phải ¼ như công dụng ta muốn. Lúc đầu, tui cũng rất đau đầu vì vấn đề này. Nhưng cuối cùng, sau khi test kĩ MXL, tui mới nhận ra tằng Laz cũng chẳng làm được j` hơn (nó ghi phục hồi 100% nhưng với con bar của tui thì vẫn 200% =))). Thui thì chấp nhận thế đi, muốn chỉnh sửa thì các bạn phải edit files *.dll, mà đó lại ko phải là vấn đề đang bàn luận ở đây. Cách cuối cùng chúng ta có thể là bắt chước Laz, sửa spelldesc thành 1, tạo cho potions một spelldesc mới và edit cái spelldesc đó (của tui là NewPotion).
    Phần cuối cùng. Khi chúng ta sử dụng bình HP trên mà máu chỉ có 60 thì sao. Chẳng lẽ chỉ phục hồi được 60/4 = 15 máu sao (muỗi đốt còn mất nhiều hơn ;))). Thế nên, tốt nhất chúng ta nên đặt một giới hạn nào đó (ở đây tôi sử dụng 30), tức là ¼ máu của char ít hơn 30 thì sẽ phục hồi 30 máu, nếu ko thì phục hồi bằng ¼. Đến đây hẳn các bạn sẽ nghĩ đến code này:
    Mã:
    ((stat(‘maxhp’.accr)/256/4)<30)?30: stat(‘maxhp’.accr)/256/4
    
    Tuy nhiên ở đây, tôi sẽ giới thiệu cho bạn một code khác, đơn giản hơn và cũng nhanh hơn:
    Mã:
    max(stat(‘maxhp’.accr)/256/4,30)
    
    Tôi sẽ chỉ giới thiệu về hàm max (ngoài ra còn có hàm min() cũng tương tự nhưng có tác dụng ngược lại), còn tại sao sử dụng nó trong code trên thì các bạn tự tìm hiểu nhé.
    Hàm Max(A,B) nhận vào 2 số là A,B và trả về giá trị lớn hơn trong 2 số đó.
    Ví dụ : Max(1,2) = 2. (;)) đương nhiên). Max(7/3,6/3) = 7/3….
    Ngoài ra, bạn cũng có thể sử dụng với 3,4,5… số, chức năng ko đổi.
    End Of Guides.

    Kết thúc phần cơ bản về Items, thi xong sẽ tiếp tục bàn luận về uniques và set items...
     

Chia sẻ trang này