Topic hỏi đáp về cách làm map | version 15

Ý bạn là vd map bạn đang đất cát (đất vàng nâu), thay vì ngồi "tô màu" (tức là chọn loại đất khác xong quẹt lên) thì bạn muốn "1 phát" thì tự động ra đất loại khác hết?
Mình ko nhớ rõ lắm, rất ít làm kiểu này, hầu như là ngồi tô thôi, nó ở trong phần "tile set" gì đó trên thanh công cụ đó bạn. Mò thử xem! :))

Advanced > Modify Titleset: Thay đổi toàn bộ địa hình sang kiểu khác.
Advanced > Replace Tiles: Thay thế một kiểu nền gạch bằng kiểu khác.
 
^ mình chỉ muốn coi cái phần tạo creep ra đi đánh như thế nào thui :)
-Cho mình hỏi thêm là làm sao để hero-unit không thể nhìn xuyên nhà được mấy cái Building-City Building trong structures ấy cám ơn :)
 
Cám ơn magicz123 toàn hàng ngon mà ko hiểu gì hết :)) thế tại sao mình không chơi map này được thế :( ? tks

À, hình như map này nó còn vài System như CasterSystem sử dụng return bug nên không chạy được trên 1.24, mà phần spell là cần thôi nên bạn có copy được cái gì thì cứ copy.

^ mình chỉ muốn coi cái phần tạo creep ra đi đánh như thế nào thui :)
-Cho mình hỏi thêm là làm sao để hero-unit không thể nhìn xuyên nhà được mấy cái Building-City Building trong structures ấy cám ơn :)

Dùng mấy cái Line Sight Blocker trong Doodad/Destructible ấy.
 
E down cái jassnewgenpack5d về nhà dùng, lúc save thì nó báo "Unrecognized PJASS (syntax) error" save vẫn được. Vậy nó báo cái gì vậy o.0!! ? Có ảnh hưởng gì ko ? tks
 
pjass là chương trình kiểm tra lỗi cú pháp của code, nếu bạn dùng GUI thì k cần quan tâm nó vì GUI được làm sẵn cho newbie với các yếu tố: dễ dùng, dễ nhìn, dễ hiểu, không bao giờ sai lỗi cú pháp :V
 
Có gì sai vậy giúp em :( em làm skill click vào đối phương thì gây storm bolt và wars storm và mưa băng tks :(
PHP:
function Blizzard_Shock_Conditions takes nothing returns boolean
    return GetSpellAbilityId() == 'A000' // kiem tra Blizzard Shock
endfunction

function Blizzard_Shock_Actions takes nothing returns nothing
    local unit Blizzard_Shock_C = GetTriggerUnit()
    local unit Blizzard_Shock_T = GetSpellTargetUnit()
    local location Blizzard_Shock_TP = GetUnitLoc(Blizzard_Shock_T)
    local unit dummyBlizzardShock = CreateUnitAtLoc( GetOwningPlayer(Blizzard_Shock_C), 'n000', Blizzard_Shock_TP, 270 )
    
    call UnitAddAbility( dummyBlizzardShock, 'A002' ) // Add storm bolt 
    call UnitAddAbility( dummyBlizzardShock, 'A001' ) // Add war storm 
    call UnitAddAbility( dummyBlizzardShock, 'A003' ) // Add Blizzard 

    call SetUnitAbilityLevel( dummyBlizzardShock, 'A002',GetUnitAbilityLevel(Blizzard_Shock_C,'A000'))
    call SetUnitAbilityLevel( dummyBlizzardShock, 'A001',GetUnitAbilityLevel(Blizzard_Shock_C,'A000'))
    call SetUnitAbilityLevel( dummyBlizzardShock, 'A003',GetUnitAbilityLevel(Blizzard_Shock_C,'A000'))
    
    call IssueTargetOrder( dummyBlizzardShock, "thunderbolt", Blizzard_Shock_T )
    call IssueImmediateOrder( dummyBlizzardShock, "stomp" )          
    call IssuePointOrderLoc( dummyBlizzardShock, "blizzard", Blizzard_Shock_TP )
    call UnitApplyTimedLife( dummyBlizzardShock, 'BTLF', 12.00 )
    call RemoveLocation(Blizzard_Shock_TP) // Remove leak TP //
    set Blizzard_Shock_C = null
    set dummyBlizzardShock = null  
endfunction

//===========================================================================
function InitTrig_Blizzard_Shock takes nothing returns nothing
    set Blizzard_Shock = CreateTrigger(  )
    call TriggerRegisterAnyUnitEventBJ( Blizzard_Shock, EVENT_PLAYER_UNIT_SPELL_EFFECT )
    call TriggerAddCondition( Blizzard_Shock, Condition( function Blizzard_Shock_Conditions ) )
    call TriggerAddAction( Blizzard_Shock, function Blizzard_Shock_Actions )
endfunction
 
^ thui khỏi mình tìm được lỗi rùi :D
-Cho mình hỏi có cách nào lấy model hay icon từ map này qua map khác không ?
-Mình đang tìm cái model này FrostTorture mà tìm trên hive quài không thấy có không biết có ai rãnh tìm dùm được không tks :(
 
Advanced > Modify Titleset: Thay đổi toàn bộ địa hình sang kiểu khác.
Advanced > Replace Tiles: Thay thế một kiểu nền gạch bằng kiểu khác.

Sẵn cám ơn bạn về cái này luôn :)
 
Sẵn cho hỏi về terrain: làm sao để phối nhiều loại đất vào bảng terrain của mỗi map
Vd: khi tạo 1 map mới, nó sẽ hiện lên 1 cái bảng nhỏ, cho chọn kích thước, độ cao, vùng đất,... của map. Thì cái chọn vùng đất đó nó có nhiều loại như Lordaeron Summer, Winter, Fall, Dungeon,... Nhưng khi chọn mỗi vùng đất khác nhau thì bảng terrain (T) của mỗi map sẽ có nhiều loại đất khác nhau (khoảng từ 7 - 10) gì đó, và vùng đất nào thì sẽ có nhiều loại đất đặc trưng chứ ko giống các vùng đất khác. Điển hình: Lordaeron Summer có đất cát (màu nâu vàng), đất gạch, đất cỏ,... còn bảng terrain của Lordearon Winter thì lại khác, gồm đất tuyết,v...v. Mình có mò tới mấy cái tile gì đó nhưng ko hiểu, ko biết sử dụng, nó ra tùm lum hết, rồi có lúc thì nó ko chọn hay sao í. Giúp với (cụ thể)
Cám ơn!
 
Sẵn cho hỏi về terrain: làm sao để phối nhiều loại đất vào bảng terrain của mỗi map
Vd: khi tạo 1 map mới, nó sẽ hiện lên 1 cái bảng nhỏ, cho chọn kích thước, độ cao, vùng đất,... của map. Thì cái chọn vùng đất đó nó có nhiều loại như Lordaeron Summer, Winter, Fall, Dungeon,... Nhưng khi chọn mỗi vùng đất khác nhau thì bảng terrain (T) của mỗi map sẽ có nhiều loại đất khác nhau (khoảng từ 7 - 10) gì đó, và vùng đất nào thì sẽ có nhiều loại đất đặc trưng chứ ko giống các vùng đất khác. Điển hình: Lordaeron Summer có đất cát (màu nâu vàng), đất gạch, đất cỏ,... còn bảng terrain của Lordearon Winter thì lại khác, gồm đất tuyết,v...v. Mình có mò tới mấy cái tile gì đó nhưng ko hiểu, ko biết sử dụng, nó ra tùm lum hết, rồi có lúc thì nó ko chọn hay sao í. Giúp với (cụ thể)
Cám ơn!

Bảng tạo bản đồ mới (Create new map): Initial Tile: mới tạo bản đồ nó sẽ đổ đầy bản đồ với nền được chọn. Chắc ai cũng biết =))

Phần Modify Tileset: cho phép phối nhiều kiểu đất khi chọn Use custom tileset.
- Nó cho phép tối đa 13 chỗ để thay thế các loại khác nhau. Mỗi loại nền sẽ chiếm một số chỗ mà nó hiển thị số trên hình nó.
- Bạn có thể thêm/bỏ nền, nhưng một số nền nó bắt buộc thì nó không cho bỏ/thêm (có ô màu đỏ ở góc). Đó là kiểu địa hình chính nền nó không cho bỏ/thêm.
Sau khi thêm/bỏ thì ở bảng ToolPalette > Terrain Palette bạn sẽ thấy những nền mà bạn vừa chọn.
 
Mình đang làm một spell như vậy: nhấn vào mục tiêu thì hồi 300 đồng thời gây 300 thiệt hại xung quanh. Có xuất hiện special efect vào unit group. Spell này mình làm dễ dàng trên GUI nhưng không biết cách làm trên Jass :( tại dg học jass giúp mình với. Không thì cho mình xin một cái spell mẫu dạng đó cũng được :D tks
 
Thì làm GUi rồi chuyển nó sang dạng Jass. Rồi xem thôi.
 
Cái đó thì mình biết nhưng nếu cứ convert như vậy thì làm sao khá nổi :( không biết cách gây damage thiệt hại xung quanh >.<
 
Bảng tạo bản đồ mới (Create new map): Initial Tile: mới tạo bản đồ nó sẽ đổ đầy bản đồ với nền được chọn. Chắc ai cũng biết =))

Phần Modify Tileset: cho phép phối nhiều kiểu đất khi chọn Use custom tileset.
- Nó cho phép tối đa 13 chỗ để thay thế các loại khác nhau. Mỗi loại nền sẽ chiếm một số chỗ mà nó hiển thị số trên hình nó.
- Bạn có thể thêm/bỏ nền, nhưng một số nền nó bắt buộc thì nó không cho bỏ/thêm (có ô màu đỏ ở góc). Đó là kiểu địa hình chính nền nó không cho bỏ/thêm.
Sau khi thêm/bỏ thì ở bảng ToolPalette > Terrain Palette bạn sẽ thấy những nền mà bạn vừa chọn.

Mấy cái số nó hiển thị trên nó mà bạn nói, cộng lại tất cả số đó mà ra tổng là 13 thì lúc đó nó ko cho add thêm đất khác nữa à?
 
Cái đó thì mình biết nhưng nếu cứ convert như vậy thì làm sao khá nổi :( không biết cách gây damage thiệt hại xung quanh >.<

Bạn cứ làm GUI rồi convert là được rồi, GUI làm lấy nền tảng spell, sau đó chuyển sang JASS thay biến local vào, dùng Handle cho nó gắn kết với function khác chạy bởi timer, loại bỏ BJ đi để tăng hiệu quả spell là bạn đã có JASS rồi.
Còn vJASS mà mới chỉ dùng ba cái globals, scope thì dùng JASS cho lành, theo mình đã dùng vJASS thì cứ struct, implement với method cố mà nhồi vào cho người khác khó hiểu.
 
Mấy cái số nó hiển thị trên nó mà bạn nói, cộng lại tất cả số đó mà ra tổng là 13 thì lúc đó nó ko cho add thêm đất khác nữa à?

Đúng thế, nếu muốn được nhiều thì chọn mấy nền số là 1.
 
ai chỉ cho em cách làm lùn unit như trong này với, em đã thử lệnh scale trong animation nhưng nó không hoạt động :|
 
Bạn cứ làm GUI rồi convert là được rồi, GUI làm lấy nền tảng spell, sau đó chuyển sang JASS thay biến local vào, dùng Handle cho nó gắn kết với function khác chạy bởi timer, loại bỏ BJ đi để tăng hiệu quả spell là bạn đã có JASS rồi.
Còn vJASS mà mới chỉ dùng ba cái globals, scope thì dùng JASS cho lành, theo mình đã dùng vJASS thì cứ struct, implement với method cố mà nhồi vào cho người khác khó hiểu.

vâng nói như bạn thì code nghe đơn giản ghê, và ng` làm ra vjass cũng rãnh thật chỉ tổ lảm ng` khác khó hiểu :8cool_tire: phải có lợi ích gì mới làm chứ không thì làm ra làm gì, đâu chỉ mình vjass còn có các ngôn ngữ khác nữa mà...

thay local vào thì nhớ destroy/remove và set null với nh~ var-type cần thiết k thì leak nặng đấy =)) với lại bỏ BJ thì đúng là code nhanh lên thật nhưng nên biết chút benchmark của war như: SetUnitPositionLoc < SetUnitPosition < SetUnitX + SetUnitY, hay pick unit = ForGroup < pick unit = loop, v.v...

p/s: code tự viết lun ngắn hơn convert rùi fix lại thà ngồi viết cho lẹ còn hơn làm rùi convert ra đọc lại rùi fix lại tốn time kinh
 
Back
Top