Học nhanh cách tạo map như DF không khó !
Trước hết topic này chỉ dành cho những ai đã có thể chỉnh sửa thông số của các unit, phần nhiều abilities , buff , item ( ai không hiểu mấy thông số đó thì thôi đừng làm map nữa nhé ! .... và hiểu được kha khá phần lớn các câu lệnh trong trigger ( có thể xem tại đây http://www.phutu.org/t21222-topic ) , biết remove leak ( có nghĩa là xóa các point, unitgroup )!
I/Thuật toán :
Việc đầu tiên là các bạn cần phải học thuật toán là gì . Thuật toán là phương pháp để giải quyết 1 vấn đề nói nôm na là cách để làm 1 spell hero hay 1 event ... Một vấn đề có thể có nhiều thuật toán .
Một ví dụ nho nhỏ về thuật toán làm spell ném 1 cục lửa bay vào người đối phương và làm cho đối phương bị choáng, sau đó cục lửa sẽ phát nổ là gây sát thương ra xung quanh.
Nếu các bạn base từ các spell khác trong WE thì có tìm lòi mắt cững không thể tìm được spell nào tương tự để base ra cả. Do vậy chúng ta hãy dùng trigger !
Mở trigger lên nào , không quên cầm theo cây bút và tờ giấy , bắt đầu ghi những thứ mình cần làm nào :
- tạo 1 spell giả , khi cast sẽ không có bất kì hiệu ứng nào hay gây ra bất kì sát thương nào cả . Spell này là spell mà caster sẽ sử dụng
- tạo 1 dummy unit có hình quả cầu lửa , cho dummy là dạng bay , chiều cao tầm 60~100( chỉnh model là model của fire bolt rồi sửa thông số cho to lên cỡ nào thì tùy bạn )
- tạo 1 spell base từ spell ném búa của thằng búa lùn cho cast range là 100 , dmg và stun bao nhiêu thì tùy bạn, cho mana cost là 0.
_ bây giờ thì bắt đầu dùng thuật toán nào : khi chúng ta cast spell thì việc đầu tiên là xuất hiện quả cầu, sau đó quả cầu sẽ di chuyển với tốc độ bao nhiêu range mỗi giây ( cái đó do chúng ta chỉnh ). Khi quả cầu chạm vào mục tiêu ( có nghĩa là khoảng cách giữa quả cầu với mục tiêu =< 60 range ) thì cho con dummy hình quả cầu đó cast spell ném búa vào mục tiêu. Khi dummy ném rồi thì xóa nó đi và gây dmg = trigger ra xung quanh, tạo thêm 1 vài effect cho đẹp !
_ Theo thuật toán trên thì chúng ta sẽ tạo 2 trigger (trigger thứ 2 sẽ để turn off mặc định) . Một trigger sẽ tạo dummy, và 1 trigger còn lại sẽ làm cách công việc còn lại ( như cho dummy di chuyển và gây dmg..). Đến đây các bạn sẽ tự hỏi tại sao lại tạo 2 trigger mà không phải là 1 hay 3 hay nhiều hơn thế ! Vấn đề ở chỗ : chúng ta không thể vừa cho dummy di chuyển và vừa kiểm tra xem khoảng cách của dummy và mục tiêu có =< 60 range bởi vì mỗi giây mục tiêu của chúng ta sẽ di chuyển và nếu bạn cho dummy di chuyển = lệnh order thì dummy sẽ bay không trúng được mục tiêu để gây nổ ( các bạn hiểu chứ ! )
_ Trigger 1 : sẽ là dùng event khi 1 unit bắt đầu xài chiêu. Kiểm tra điều kiện là spell đang dùng phải là spell ném quả cầu lửa ra. Bắt đầu action nào : khai báo các biến mà chúng ta dùng bằng lệnh set variable = ... trong đó variable là biến cần dùng như là point của caster, facing của dummy ... Tiếp theo là lệnh tạo dummy tại vị trí caster đang đứng và có facing hướng về mục tiêu, set 1 biến unit = dummy Cuối cùng là turn on trigger 2 là remove những variable không dùng nữa ( tránh leak)
_ Trigger 2 : event là every 0.04s. Bắt đầu action nào : như tôi nói ở trên là dummy không thể di chuyển đựoc , do vậy chúng ta di chuyển dummy bằng cách move instantly nó tới điểm trước mặt trong 1 khoảng cách khá nhỏ ( tầm 40~60 range ). Vì hiện tượng tạo di ảnh của mắt sẽ làm cho người xem thấy : À, con dummy đang di chuyển. Như vậy, cứ mỗi 0.04s là dummy sẽ đi được 40~60 range ( giá trị này các bạn tự chọn nhé ). Kiểm tra mục tiêu còn sống hay đã chết , nếu còn sống thì tiếp tục còn nếu đã chết thì remove leak và turn off trigger này. Set lại point của mục tiêu . Kiểm tra khoảng cách của dummy và mục tiêu, nếu =< 60 thì bắt dummy cast spell ném búa và remove dummy, gây dmg AoE = trigger và tạo thêm effect ( nhớ phải Detroy Effect nhé ), sau đó remove leak và turn off trigger này . Thế là xong !
Nào các bạn hãy làm thử xem bằng thuật toán trên trước khi qua phần 2 !
Phần 2: http://www.phutu.org/t29377p20-topic
I/Thuật toán :
Việc đầu tiên là các bạn cần phải học thuật toán là gì . Thuật toán là phương pháp để giải quyết 1 vấn đề nói nôm na là cách để làm 1 spell hero hay 1 event ... Một vấn đề có thể có nhiều thuật toán .
Một ví dụ nho nhỏ về thuật toán làm spell ném 1 cục lửa bay vào người đối phương và làm cho đối phương bị choáng, sau đó cục lửa sẽ phát nổ là gây sát thương ra xung quanh.
Nếu các bạn base từ các spell khác trong WE thì có tìm lòi mắt cững không thể tìm được spell nào tương tự để base ra cả. Do vậy chúng ta hãy dùng trigger !
Mở trigger lên nào , không quên cầm theo cây bút và tờ giấy , bắt đầu ghi những thứ mình cần làm nào :
- tạo 1 spell giả , khi cast sẽ không có bất kì hiệu ứng nào hay gây ra bất kì sát thương nào cả . Spell này là spell mà caster sẽ sử dụng
- tạo 1 dummy unit có hình quả cầu lửa , cho dummy là dạng bay , chiều cao tầm 60~100( chỉnh model là model của fire bolt rồi sửa thông số cho to lên cỡ nào thì tùy bạn )
- tạo 1 spell base từ spell ném búa của thằng búa lùn cho cast range là 100 , dmg và stun bao nhiêu thì tùy bạn, cho mana cost là 0.
_ bây giờ thì bắt đầu dùng thuật toán nào : khi chúng ta cast spell thì việc đầu tiên là xuất hiện quả cầu, sau đó quả cầu sẽ di chuyển với tốc độ bao nhiêu range mỗi giây ( cái đó do chúng ta chỉnh ). Khi quả cầu chạm vào mục tiêu ( có nghĩa là khoảng cách giữa quả cầu với mục tiêu =< 60 range ) thì cho con dummy hình quả cầu đó cast spell ném búa vào mục tiêu. Khi dummy ném rồi thì xóa nó đi và gây dmg = trigger ra xung quanh, tạo thêm 1 vài effect cho đẹp !
_ Theo thuật toán trên thì chúng ta sẽ tạo 2 trigger (trigger thứ 2 sẽ để turn off mặc định) . Một trigger sẽ tạo dummy, và 1 trigger còn lại sẽ làm cách công việc còn lại ( như cho dummy di chuyển và gây dmg..). Đến đây các bạn sẽ tự hỏi tại sao lại tạo 2 trigger mà không phải là 1 hay 3 hay nhiều hơn thế ! Vấn đề ở chỗ : chúng ta không thể vừa cho dummy di chuyển và vừa kiểm tra xem khoảng cách của dummy và mục tiêu có =< 60 range bởi vì mỗi giây mục tiêu của chúng ta sẽ di chuyển và nếu bạn cho dummy di chuyển = lệnh order thì dummy sẽ bay không trúng được mục tiêu để gây nổ ( các bạn hiểu chứ ! )
_ Trigger 1 : sẽ là dùng event khi 1 unit bắt đầu xài chiêu. Kiểm tra điều kiện là spell đang dùng phải là spell ném quả cầu lửa ra. Bắt đầu action nào : khai báo các biến mà chúng ta dùng bằng lệnh set variable = ... trong đó variable là biến cần dùng như là point của caster, facing của dummy ... Tiếp theo là lệnh tạo dummy tại vị trí caster đang đứng và có facing hướng về mục tiêu, set 1 biến unit = dummy Cuối cùng là turn on trigger 2 là remove những variable không dùng nữa ( tránh leak)
_ Trigger 2 : event là every 0.04s. Bắt đầu action nào : như tôi nói ở trên là dummy không thể di chuyển đựoc , do vậy chúng ta di chuyển dummy bằng cách move instantly nó tới điểm trước mặt trong 1 khoảng cách khá nhỏ ( tầm 40~60 range ). Vì hiện tượng tạo di ảnh của mắt sẽ làm cho người xem thấy : À, con dummy đang di chuyển. Như vậy, cứ mỗi 0.04s là dummy sẽ đi được 40~60 range ( giá trị này các bạn tự chọn nhé ). Kiểm tra mục tiêu còn sống hay đã chết , nếu còn sống thì tiếp tục còn nếu đã chết thì remove leak và turn off trigger này. Set lại point của mục tiêu . Kiểm tra khoảng cách của dummy và mục tiêu, nếu =< 60 thì bắt dummy cast spell ném búa và remove dummy, gây dmg AoE = trigger và tạo thêm effect ( nhớ phải Detroy Effect nhé ), sau đó remove leak và turn off trigger này . Thế là xong !
Nào các bạn hãy làm thử xem bằng thuật toán trên trước khi qua phần 2 !
Phần 2: http://www.phutu.org/t29377p20-topic
Last edited by kietcuabe01 on 27.09.12 10:21; edited 1 time in total (Reason for editing : http://www.phutu.org)