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

Thảo luận trong 'World Editor' bắt đầu bởi Tom_Kazansky, 2/9/12.

  1. ZhengHe

    ZhengHe T.E.T.Я.I.S

    Tham gia ngày:
    4/1/09
    Bài viết:
    623
    Cho mình hỏi 2 vấn đề:
    1/ Có cách nào chỉnh shop quay mặt theo ý mình ko?
    2/ Mình tạo 1 item bình máu, mình muốn hero level 10 mới xài đc thì làm sao? Trong object editor có chỉnh đc ko hay phải dùng trigger?
     
  2. Meepolisk

    Meepolisk Donkey Kong

    Tham gia ngày:
    8/2/08
    Bài viết:
    336
    1. được nếu nó là unit
    2.dùng trigger. khi hero mang bình máu, nếu lvl của nó thấp hơn 10 thì drop ngay


    =============================================
    cho em hỏi có ai có dạng system summon unit ra, k điều khiển đc nó như nó sẽ đi theo caster k?
    tựa như follower từ diablo 3 á :D
     
  3. ZhengHe

    ZhengHe T.E.T.Я.I.S

    Tham gia ngày:
    4/1/09
    Bài viết:
    623
    system cậu cần đây

    trong item editor có phần level (unclassified) để lam gì vậy
     
  4. andy_bi

    andy_bi Mr & Ms Pac-Man

    Tham gia ngày:
    17/5/12
    Bài viết:
    106
    mấy pro giúp mình cái này cái, đây là map của mình: http://www.mediafire.com/download/pcg41rm7mhp4f7p/The'_Gioi'_Phep'_Thuat._v1.0.w3x
    trong map mình có đặt sẵn 1 con nvm và 1 vài con tướng của team kia. nvm của mình cũng như nvm của dota, có skill 1 là raze (3 cái)
    ko biết dạo này mình làm gì trong map mà nó bị lỗi skill đó. raze ngoài đất: hiện model raze. raze vào creep: hiện model raze. raze vô tướng: hiện model raze. vậy mà.... raze vô tướng mà LÀM TƯỚNG CHẾT thì lại ko hiện model raze, thậm chí ko gây damage AoE. nói thì có vẻ khó hiểu, mấy pro down về xong vô xem thử dùm
    cám ơn mấy pro trước!
    p.s: bỏ qua chuyện lúc trước mà giúp dùm chuyện tương lai :)!!!
     
  5. Meepolisk

    Meepolisk Donkey Kong

    Tham gia ngày:
    8/2/08
    Bài viết:
    336
    thanks bác đã share. Mà cái này e tìm r, nó k như ý muốn.
    Mình vẫn điều khiển đc con lính, quan trọng nhất là nó chi chuyển quanh caster mỗi 1 mốc thời gian xác định.

    thôi chắc e tự viết 1 cái lun -.-"
     
  6. ZhengHe

    ZhengHe T.E.T.Я.I.S

    Tham gia ngày:
    4/1/09
    Bài viết:
    623
    @^: Cậu có thể thêm 1 trigger nhỏ như
    Event: Player Unit Selected
    Cond: Unit Type of Trigger Unit == '__'
    Act: Deselect TriggerUnit

    Còn move mỗi mốc thời gian xác định thì diablo 3 cũng vậy
     
  7. Meepolisk

    Meepolisk Donkey Kong

    Tham gia ngày:
    8/2/08
    Bài viết:
    336
    mình viết Jass luôn cho tiện :|
    vả lại, nếu bác chơi Diablo 3 r thì biết, khi mà order char chính di chuyển, bọn kia di chuyển theo và đứng ở 1 vị trí nhất định so với char chính. nghĩa là k phải order mỗi mốc thời gian, mà order mỗi khi mình ra lệnh di chuyển (hoặc bị knockback)
     
  8. vuongkkk

    vuongkkk T.E.T.Я.I.S

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội
    Nếu là trong game chỉnh hướng mặt thì ko thể trừ khi là unit
    Nhưng nếu chỉnh sẵn ở WE để nó nằm sẵn ở trong map và lun lun quay 1 hướng thì cậu có thể thực hiện = cách:
    + Chỉnh shop thành Unit
    + Quay hướng mặt
    + Chỉnh lại thành Building

     
    Chỉnh sửa cuối: 6/6/13
  9. mrhinh89

    mrhinh89 Youtube Master Race

    Tham gia ngày:
    20/10/10
    Bài viết:
    10
    Cần giúp đỡ về spell wath of chill tôi tham khảo ở map hướng dẫn.
    Tôi coppy từ map hướng dẫn về và chỉnh lại trong map của mình rồi mà khi vào Hero lich dùng skill thì unit ko bị đóng băng như map mẫu.
    Ai có thể tìm giúp lỗi ở đâu chỉ giúp với.
    Thank nhiều.
    Đây là spell mẫu: http://www.mediafire.com/?cz4ckiglr3l6bpg
    Còn đây là map tôi đang tạo http://www.mediafire.com/?mer5pjcx06mcy1n

    Bác nào chỉ giúp tôi nó thiếu sót ở đâu và chỉnh sửa ntn với.
    Tôi mới tập làm nên mọi người thông cảm nhé!
     
  10. Meepolisk

    Meepolisk Donkey Kong

    Tham gia ngày:
    8/2/08
    Bài viết:
    336
    ai hướng dẫn mình thuật toán để tạo mỗi unit có 1 custom valve với
    VD đã có 1,2,3,4,5,6,7; nhưng nếu unit 4, 6 bị chết, làm sao để unit tiếp theo sẽ có custom valve lần lượt là 4 và 6 :D
     
  11. HiroshiKaze

    HiroshiKaze Youtube Master Race

    Tham gia ngày:
    19/8/12
    Bài viết:
    66
    Nơi ở:
    Tp.HCM
    1/ google tra dynamic indexing, cái này có thể lên hive tìm kiếm 1 số spell có thể thấy, cái này dùng làm spell khá nhìu (allocate/deallocate trong struct)
    Mã:
            private static integer ins = 0 
            private static integer array insAR 
            static method alloc takes nothing returns thistype 
                local thistype this = insAR[0] 
                if this==0 then 
                    set ins = ins + 1 
                    set this = ins 
                else 
                    set insAR[0] = insAR[this] 
                endif 
                return this 
            endmethod 
            method dealloc takes nothing returns thistype
                call this.remove() 
                set insAR[this] = insAR[0] 
                set insAR[0] = this 
                return this.next
            endmethod 
    
    2/ hoặc làm 1 recycler = stack array đơn giản khi unit nào chết add value vào stack và khi create thì lấy trong stack ra, nếu như stack rổng thì tự động +1 cho value lớn nhất và add vào unit đó
    Mã:
            private static thistype array recycled
            private static integer recycledMax = 0
            private static integer lastAlloc = 0
            static method alloc takes nothing returns thistype
                if .recycledMax==0 then
                    set .lastAlloc = .lastAlloc + 1
                    return .lastAlloc
                endif
                set .recycledMax = .recycledMax - 1
                return .recycled[.recycledMax]
            endmethod
            method dealloc takes nothing returns thistype
                call this.remove()
                set .recycled[.recycledMax] = this
                set .recycledMax = .recycledMax + 1
                return this.next
            endmethod
    
    p/s :6cool_beat_brick: tặng cục gạch vì ta ko ưa mi :2cool_misdoubt:

    - - - Updated - - -

    à lưu ý 1 cái là code lấy bên R32 nên mí cái dòng "call this.remove()" và "return this.next" bỏ đi nhá (ta lười bật WE nên sang R32 lấy tạm)
     
  12. Meepolisk

    Meepolisk Donkey Kong

    Tham gia ngày:
    8/2/08
    Bài viết:
    336
    ^tut trên cho phần nào thế ạ :| nếu là trả lời câu hỏi của em thì em lỡ làm gì phật ý mà k ưa :|
    ======================
    thêm 1 cái nữa là trình em còn gà, method chưa bao h đụng tới, toàn dùng function cả thôi ~.~
     
  13. HiroshiKaze

    HiroshiKaze Youtube Master Race

    Tham gia ngày:
    19/8/12
    Bài viết:
    66
    Nơi ở:
    Tp.HCM
    ^trả lời ngay dưới chú thì còn hỏi là trả lời cho ai nữa sao O.o

    method với chẳng me thót, mặc nó
    không hiểu thì ta diễn giải cách khác vậy (chỉ stack array thui):

    viết 1 trigger làm bin (thùng rác):
    events: khi 1 unit die
    conditions:
    actions:
    set a=Custom Value of Unit (a là thùng rác, khi unit die thì quăng value vào thùng rác)
    set i=i+1

    viết 1 hàm đơn giàn:
    function setcustomvalue takes unit u returns nothing
    if i==0 then
    set max=max+1 (+1 thì value của các unit cách nhau 1 đơn vị, mún điều chỉnh sao tùy ng` dùng)
    call SetUnitUserData(u,max)
    else
    call SetUnitUserData(u,a[i-1])
    set i=i-1
    endif
    set u=null
    endfunction

    cách xài là gọi hàm setcustomvalue ngay sau khi create unit

    chú thích: i,max,a là var globals
    i để nhận biết xem trong thùng rác còn value không (default = 0)
    max là custom value tối đa (default = tùy người xài mún bắt đầu từ số mấy)
    a là thùng rác chứa value

    p/s bên trên là mã giả
    theo cách trên thì 1 2 3 4 5 6 7 rùi 4 6 chết thì nó sẽ lấy 6 ra trước rùi mới lấy 4 (bị ngược, nhưng vẫn sử dụng lại giá trị cũ)
    nếu muốn không ngược thì xài queue (google đại ca)

    _____
    lúc trước có láo nháo với ta nên ta không ưa, còn mi nhớ hay không không quan trọng, vì nếu ta là kẻ tính toán thì bây giờ chẳng ngồi đây chỉ mi
    tặng thêm cục gạch :6cool_beat_brick:
     
  14. Meepolisk

    Meepolisk Donkey Kong

    Tham gia ngày:
    8/2/08
    Bài viết:
    336
    ^rất cảm ơn bác :> đơn giản thế mà k nghĩ ra, chắc phải dk 1 lớp học giải thuật quá :>
    btw, em chưa từng gây lộn với ai cả :< trả bác lại 2 cục:6cool_beat_brick::6cool_beat_brick:
     
  15. minhtronglam90

    minhtronglam90 Donkey Kong GameOver

    Tham gia ngày:
    5/6/12
    Bài viết:
    422
    cho mình hỏi cách làm cho toàn bản đồ biến thành màu đen ko hiện gì cả kể cả minimap
     
  16. findingmagic

    findingmagic Youtube Master Race

    Tham gia ngày:
    15/7/12
    Bài viết:
    42
    cho mình hoỉ mình muốn làm một skill như thế này , khi hạ một muc tiêu (muc tiêu phải là hero) thì skill sẽ dc sử dụng lại thêm một lần nữa (sẽ reset hoàn toàn delay) và skill này sẽ ko dc reset nếu khi xuất chiêu ko thễ hạ đc mục tiêu hoăc cho dù muc tiêu chỉ còn 1 HP, mình lấy skill thunder bolt cua MK làm skill ví dụ. bác nào pro xim làm dùm mình, co map demo share thì cang tốt cám on nhìu
     
  17. andy_bi

    andy_bi Mr & Ms Pac-Man

    Tham gia ngày:
    17/5/12
    Bài viết:
    106
    ^
    Mã:
    Trigger 1
        Events
            Unit - A unit Learns a skill
        Conditions
            (Learned Hero Skill) Equal to XXX 
        Actions
            Set unit[2] = (Learning Hero)
    Mã:
    Trigger 2
        Events
            Unit - A unit Dies
        Conditions
            (Owner of (Killing unit)) Equal to (Owner of unit[2])
        Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    killed Equal to 1
                Then - Actions
                Else - Actions
                    Unit - Reset ability cooldowns for unit[2]
     
  18. langthangbairac

    langthangbairac T.E.T.Я.I.S

    Tham gia ngày:
    19/5/12
    Bài viết:
    594
    Nơi ở:
    Thanh Chương
    ^
    chú bị ảo à
    là reset all ability
    => Thay dòng này bằng :
     
  19. eike2000

    eike2000 Youtube Master Race

    Tham gia ngày:
    3/9/07
    Bài viết:
    18
    Nơi ở:
    gầm cầu
    xin giúp 1 spell cơ bản, nhưng lại không thành công.
    1-Spell cast là vùng cast , khi cast, ~ creep trong vùng cast ( vùng cast hình tròn không fải là region-hình vuông ) sẽ bị dính Entangling Roots. Mình đã làm thử nhưng nó chỉ dính có 1 con. ( tương tự với cả stom bolt )
    2- mình tạo 1 dummy, cast thunder clap, nhưng cái effect không xuất hiện, chỉ có vùng đất bị lún xuống rồi trồi lên lại, mấy cái nứt nẻ, và dậm ầm ầm không có
     
  20. findingmagic

    findingmagic Youtube Master Race

    Tham gia ngày:
    15/7/12
    Bài viết:
    42
    vậy rốt cuộc làm nhu thế nào hả bạn set thành code text dùm mình dc ko:5cool_big_smile:
     

Chia sẻ trang này