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

Thảo luận trong 'World Editor' bắt đầu bởi Tom_Kazansky, 20/10/11.

Trạng thái chủ đề:
Không mở trả lời sau này.
  1. minh_pro_hy

    minh_pro_hy Donkey Kong

    Tham gia ngày:
    30/6/11
    Bài viết:
    487
    Nơi ở:
    Mặt Trời
    Dùng chain lightning, xóa lightning đi '@^@|||
     
  2. Ryanpzo9

    Ryanpzo9 Donkey Kong

    Tham gia ngày:
    20/10/08
    Bài viết:
    326
    Có thử rồi nhưng nó lại ko có projectile 8-|

    ---------- Post added at 22:51 ---------- Previous post was at 22:47 ----------

    Vấn đề là cái này nó phải attack. Ý tôi ở đây là 1 skill target mà có projectile giống fire bolt ấy nhưng mà ko có effect stun slow v..v.. gì hết. Chỉ đơn giản là gây dmg thôi :|
     
  3. dh-g

    dh-g Fire in the hole!

    Tham gia ngày:
    29/8/09
    Bài viết:
    2,654
    Nơi ở:
    Q1 TP.HCM
    @Ryanpzo9:

    sự thật là có mà target point and unit thôi Crushing Wave, v.v. còn có target bay cái projectile chỉ có Storm Bolt :-? sao cậu hok cho thời gian stun của storm bolt là 0.01 :-/ còn ko thì nhờ trigger can thiệp :-"
     
  4. lonewolf020291

    lonewolf020291 T.E.T.Я.I.S

    Tham gia ngày:
    16/3/07
    Bài viết:
    579
    Nơi ở:
    Toy Box
    Dota chả có sẵn cái nào như thế, ngoại trừ việc mua 1 đống gà ra xếp hình rồi cho Omniknight chơi ulti =))

    1) Cái cậu nói tôi nghĩ ngay đến Death Coil =))
    2) Vậy câu sao ko nghĩ ngược lại, với cả đống ability ném missle và effect thế, Blizzard tạo ra 1 ability ném missle bình thường ko effect chỉ gây damage để làm gì ? Chẳng phải là phế và vô ích =)). Ít ra Finger of Death còn có chút khác thường (damage lớn) chứ cái cậu yêu cầu thì.. :-(||>
     
  5. Ngoc LeO

    Ngoc LeO Mario & Luigi

    Tham gia ngày:
    23/7/06
    Bài viết:
    839
    Nơi ở:
    Nothing...
    Ai gợi ý cho mình làm cái trigger unit take damage với,ở đây mình muốn unit take damage là attacked unit (khi thằng attacked nhận damage thì trigger mới hoạt động)

    Làm kiểu bên dưới thì ổn,xài tốt nhưng thằng Damage source gây ra damage kiểu gì,to hay nhỏ thì trigger cũng hoạt động (ví dụ cast ability vào thằng kia mất máu,có item gây damage aoe mỗi giây.v.v. cũng hoạt động)

    Ở đây mình chỉ muốn kiểu như thằng "attacked" nhận damage thì trigger mới hoạt động thôi,mình thử làm kiểu Unit attacked,Add to trigger xxx event attacked unit take damage mà nó lỗi quá,không xài được.

    Ai giúp với


    Mã:
    SS Int
        Events
            Time - Elapsed game time is 0.00 seconds
        Conditions
        Actions
            Set TempGroup2 = (Units in (Playable map area))
            Unit Group - Pick every unit in TempGroup2 and do (Actions)
                Loop - Actions
                    Unit Group - Add (Picked unit) to TakeDamGroup2
                    Trigger - Add to SS Take <gen> the event (Unit - (Picked unit) Takes damage)
            Custom script:   call DestroyGroup( udg_TempGroup2 )
    
    Mã:
    SS TakeDamage
        Events
            Unit - A unit enters (Playable map area)
        Conditions
            ((Triggering unit) is in TakeDamGroup2) Equal to False
        Actions
            Unit Group - Add (Triggering unit) to TakeDamGroup2
            Trigger - Add to SS All <gen> the event (Unit - (Triggering unit) Takes damage)
     
    Chỉnh sửa cuối: 18/12/11
  6. fantom2409

    fantom2409 Mr & Ms Pac-Man

    Tham gia ngày:
    15/8/11
    Bài viết:
    194
    projectile
    Cho mình hỏi cái ở trên là gì thế?
     
  7. DylandKyo

    DylandKyo Donkey Kong

    Tham gia ngày:
    28/10/10
    Bài viết:
    358
    Pro nào chỉnh giùm e skill Lightning Arrow (Autocast) trong map của e giùm với [Đính kèm ở dưới]. Em tìm hoài mà k thấy lý do nó k hoạt động mặc dù save k báo lỗi gì '+_+. Trong F4 [Trigger Editor] thì nó là FireStacking. Pro nào giúp e nha [Tks nhìu] View attachment Legend Of Champion.rar
     
  8. dh-g

    dh-g Fire in the hole!

    Tham gia ngày:
    29/8/09
    Bài viết:
    2,654
    Nơi ở:
    Q1 TP.HCM
    @Ngoc LeO:

    cái đó có thể xài jass Damage Event thay vì xài Taken Damage, nếu xài taken damage thì cho nó check buff như skill có Stacking :-?

    @fantom2409:

    projectile, là chỉ 1 vật gì đó phóng ra. bọn mình đang nói cái cục gì đó phóng ra mà không gây damage :|
     
  9. vuongkkk

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

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội
    Cậu thật quá vip, bọn tớ gà ko làm được và còn phải báo cáo cho cậu là bọn tớ ko làm được nữa sao :-))

    Mấy cậu học cơ bản trước khi hỏi về những cái nâng cao được hem :(

    Thứ 1: Chiêu Shadow Meld, của con Layana trong dota.
    Mình biết chiêu này base từ windwalk và khi dùng chiêu thì lập tức hold position Rồi sau đó bật 2 trigger
    - Every # second để kiểm tra nếu unit dời vị trí (ở 1 vị trí khác lúc starts ability effect) thì xóa buff Meld đi
    - Trigger khác là kiểm tra nếu có 1 unit bị dam bởi unit có buff Meld thì dùng dummy cast skill trừ giáp base từ Item Attack Corruption Bonus chả hạn
    Cái trigger thứ 2 có thể đổi thành Unit is attacked hoặc phải dùng system detect dam :-??
    Thứ 2: Là cái chiêu 2 của con VS trong dota
    - Lần lượt tạo các dummy ko có model hoặc model ko có gì để tạo sight + hú skill trừ giáp + tạo effect,
    - rồi Unit - Add a # second Generic expiration timer to (Dummy) để giữ sight
    Thứ 3: Mình định làm một chiêu mà khi cast ra nó sẽ .... target của nó về phía trước khoảng 250 range
    Mình thật ko hiểu bạn định làm gì ?? đẩy à? Thế thì học làm knock back đi là OK

    @dhg:projectile, là chỉ 1 vật gì đó phóng ra. bọn mình đang nói cái cục gì đó phóng ra mà không gây damage
    Cho mình đính chính lại nhé là bạn Ryanpzo9 muốn có spell base chỉ đơn thuần gây dam và phóng ra cái rì đó
    như rocket, missle, cục lửa đá, dép, gạch v.v... đều được gọi là projectile \m/
    còn phóng ra cái gì đó mà ko gây bất cứ thiệt hại nào thì quá vãi .....
     
  10. game_war48

    game_war48 Dragon Quest

    Tham gia ngày:
    7/9/08
    Bài viết:
    1,320
    Nơi ở:
    Ice City
    @fantom2409:
    Tại sao không tra từ điển thay vì hỏi nhỉ :-?

    @Ngoc LeO: Muốn vậy thì phải phân biệt giữa damage attack (đánh thường) và damage spell. Mà muốn phân biệt giữa damage attack và damage spell thì phải "trigger" TOÀN BỘ spell có trong map và phải đụng chạm đến vJass. Nói chung là cách này không đơn giản/ Còn một cách thứ 2 là add cho hero một spell Orb Effect kiểu Slow Poison, chỉnh duration thành 0,01. Tạo 1 trigger, khi 1 unit nhận damage mà có cái buff của skill Slow Poison kia thì biết chắc đó là do attack -> cho trigger hoạt động.
     
  11. lucifekit

    lucifekit The Warrior of Light

    Tham gia ngày:
    25/2/06
    Bài viết:
    2,344
    Thử laguna blade or finger of death xem có buff ko? Hình như trong dota là ko buff thì phải :D

    À ừ nhỉ,2 spell đấy oánh ra lightning.

    Dùng xecast thôi :P
     
    Chỉnh sửa cuối: 18/12/11
  12. leviettuan123123

    leviettuan123123 Youtube Master Race

    Tham gia ngày:
    9/3/11
    Bài viết:
    79
    Nơi ở:
    Hòn Đảo Hoan
    mình muốn làm 1 cái spell , khi sử dụng vào mục tiêu thì hất mục bay lên phía trước ( giống item trong map Pudge ấy ), ai bik thì giúp mình với nha:)
     
  13. D o r a e m o n

    D o r a e m o n Youtube Master Race

    Tham gia ngày:
    13/12/11
    Bài viết:
    18
    Nơi ở:
    J a p a n
    •NgocLeo: cần phải cho một trigger nho nhỏ check thử xem đang xài spell hay là đánh thường. chúng ta hãy kiểm tra nó qua một boolean. em tạo nó tên là bCheck array (array nếu muốn MUI) và một biến Integer, hãy đặt custom value đối với những unit đặt vào map, nếu muốn dùng tốt hơn hãy dùng các hỗ trợ Index bên jass.
    Bắt đầu làm ta có:
    xong thì nên cho biến kiểm tra khi gây đam, nếu bCheck[integer] mà bằng true, ta set nó bằng false, nên nhớ trước khi set phải Wait 0.02 giây. Và nên không cho array cố định khi set kẻo nó hỏng(vd thay vì set integer để set bCheck[integer] sau 0.02s mà làm bằng cách set bCheck[GetUnitId(GetDamageEventSource())])=true), còn nó bằng false, thong thả gây dam!
     
  14. DylandKyo

    DylandKyo Donkey Kong

    Tham gia ngày:
    28/10/10
    Bài viết:
    358
    Quote lần 1, mong pro giúp đở....................................
     
  15. game_war48

    game_war48 Dragon Quest

    Tham gia ngày:
    7/9/08
    Bài viết:
    1,320
    Nơi ở:
    Ice City
    "Cách" này chắc chắn sẽ bug tùm lum.
    Đơn cử, con hero đó có 1 spell buff hoặc 1 item dạng buff, chả gây damage cho ai cả. Như vậy khi nó cast spell xong rồi đánh thì chả phải đòn đánh đó k có tác dụng gì mà đáng nhẽ ra nó phải có ? Chưa kể còn có wait.

    Cách dùng Orb Effect là ổn nhất rồi. Cụ thể xem post này: http://forum.gamevn.com/showpost.php?p=12195058

    P/s: Cái vụ spell chỉ gây damage mà k có hiệu ứng gì thì dùng Death Coil như trên. Còn không muốn dùng Death Coil nữa thì tự tay trigger, thế là xong :-@.
    TOM: dùng Acid Bomb ấy, cho buff thời gian 0.01 và không slow/trừ armor là được.
     
    Last edited by a moderator: 18/12/11
  16. D o r a e m o n

    D o r a e m o n Youtube Master Race

    Tham gia ngày:
    13/12/11
    Bài viết:
    18
    Nơi ở:
    J a p a n
    Tại sao đặt Wait anh biết không?
    Thứ nhất, khi dùng spell, sẽ tính đến hai trường hợp, Đơn lẻ và AOE dam. Nếu không kể hàm wait thì AOE sẽ bị bug.
    Lí do của 0.02 s: Khi xài một ability, một unit không thể nào xuất ra một đòn đánh khác nhanh hơn 0.02s được!

    Còn nếu muốn không bug? Add một buff cho unit đó, mỗi giây gây dam!

    ---------- Post added at 10:04 ---------- Previous post was at 10:02 ----------

    còn bug của nó tùy vào người dùng thôi! nếu muốn an toàn thì thêm một cái boolean nữa, ta sẽ cho boolean đó kiểm tra xem gây một lần dam hay nhiều lần dam!

    ---------- Post added at 10:06 ---------- Previous post was at 10:04 ----------

    cho em hỏi tại sao map của em dùng Soul Burn thì bị lag kinh hồn, tới mức out cả game mới hết hoặc khi unit dính mất buff mới hết, em không có xài trigger nào để làm chiêu đó cả, chỉ cho cast thôi!
     
  17. lonewolf020291

    lonewolf020291 T.E.T.Я.I.S

    Tham gia ngày:
    16/3/07
    Bài viết:
    579
    Nơi ở:
    Toy Box
    Mình có vài câu hỏi nhỏ, xin ai đó biết trả lời hộ mình với:
    1) Mình thường bị báo lỗi "Function ... must not take any arguments when use as code" do gọi function ở 1 trigger khác nhưng map vẫn chạy và trigger bình thường, vậy lỗi đó có nghiêm trọng không ?
    2) Tại sao có hàm BJ và hàm ko, vd UnitAddAbility và UnitAddAbilityBJ chỉ khác nhau thứ tự đặt input ?!
    3) call Destroytrigger() có tác dụng gì ?
     
    Chỉnh sửa cuối: 19/12/11
  18. FlameDrake

    FlameDrake Dragon Quest

    Tham gia ngày:
    1/12/10
    Bài viết:
    1,298
    Nơi ở:
    Quận 10 HCM
    Tui chỉ biết cái thứ 3, ví dụ cho dễ, có trigger A bị call Destroy thì sau này có trigger B C D Turn on hay Run lại A cũng ko chạy đc nữa
     
  19. vuongkkk

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

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội
    1) Mình thường bị báo lỗi "Function ... must not take any arguments when use as code" do gọi function ở 1 trigger khác nhưng map vẫn chạy và trigger bình thường, vậy lỗi đó có nghiêm trọng không ?
    Lỗi 1 mình ko rõ lắm nếu có code thì dễ hiểu hơn nhưng nôm na đại ý là function ko cần bất cứ tham số nào khi sử dụng cả.
    Còn lỗi mà map vẫn chạy và ko có báo lỗi vẫn có thể xảy ra huống chi có báo lỗi :)), nhưng trigger có chạy bình thường ko thì còn tùy =>Tốt nhất là đừng để nó báo lỗi như thế
    Đó là vì xung đột ở cách hiểu của trình biên dịch khiến cho có 1 số lỗi. Nhưng cũng 1 phần do cách đặt tên của người code ko có unique nên dễ gặp kiểu như vậy

    2) Tại sao có hàm BJ và hàm ko, vd UnitAddAbility và UnitAddAbilityBJ chỉ khác nhau thứ tự đặt input ?!
    Nhiều cái nó là giống nhau chỉ sắp xếp lại các tham số truyền vào (để dùng cho GUI còn về ý nghĩa thì ko có sự khác biệt nhưng về code thì mất thêm 1 lần gọi function) nhưng có 1 số cái BJ có thể dùng như tiện ích được và ko có cái tương đương cái BJ đó

    3) call Destroytrigger() có tác dụng gì ?
    FlameDrake nói là ví dụ cụ thể còn hiểu về mặt ý nghĩa là:
    Trigger cũng cần tạo và có thể hủy giống như nhiều thứ khác trong WE nó cũng là 1 thể loại handle và có ID riêng biệt
     
    Chỉnh sửa cuối: 19/12/11
  20. game_war48

    game_war48 Dragon Quest

    Tham gia ngày:
    7/9/08
    Bài viết:
    1,320
    Nơi ở:
    Ice City
    Chả cần biết vì sao đặt wait. Chỉ biết là đặt wait trong trường hợp này chắc chắn sẽ bug. Hơn nữa, wait 0.02s thực chất là wait tầm 0.27~0.3s, nếu muốn chính xác phải dùng timer.
    Và một khi nghĩ ra cách làm thì phải đảm bảo 100% là nó hoạt động bình thường. Đơn cử spell Healing Wave, chả gây damage cho đứa nào mà trigger như thế kia thì chắc chắn sẽ có vấn đề, chưa kể những passive gây damage spell thì định tính sao :-@ ?
    Nói chung cách nào thì cách nhưng chắc chắn cách này không dùng được. Và trong số các cách tôi thấy cách dùng Orb Effect kiểu Poison ở trên là hợp nhất rồi.

    -----------------------

    Soul Burn có bị làm sao đâu nhở :-? ? Tôi vẫn dùng bình thường mà ?
     
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này