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

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

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

    pmtan Youtube Master Race

    Tham gia ngày:
    1/11/09
    Bài viết:
    86
    Nơi ở:
    Lonely World
    Mấy bạn giúp mình trigger này nha: Khi một hero mua 1 item thì sẽ add ability vào hero đó ( học skill qua item) nhưng với điều kiện là hero đó phải có sẵn 2 skill X & Y. Nếu không có 2 skill X, Y thì không mua được item đó. Thanks.
     
  2. lonewolf020291

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

    Tham gia ngày:
    16/3/07
    Bài viết:
    579
    Nơi ở:
    Toy Box
    ^
    Theo hướng dẫn của game_war48 trong đây, sửa 1 tí
    1.Đối với Abilities chỉ có 1 level:
    [Spoil]
    Mã:
    Infernal
        Events
            Unit - A unit Acquires an item
        Conditions
            (Item-type of (Item being manipulated)) Equal to Summon Infernal
        Actions
            [COLOR="Red"]Set Units = (Triggering unit)
            Set Ability_muon_hoc[(Player number of (Owner of Units))] = Inferno[/COLOR]
            [COLOR="Blue"]Set Ability_can_hoc1[(Player number of (Owner of Units))] = Firebolt
            Set Ability_can_hoc2[(Player number of (Owner of Units))] = Raise Dead[/COLOR]
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    [COLOR="Red"](Level of Ability_muon_hoc[(Player number of (Owner of Units))] for (Triggering unit)) Less than 1
                    (Level of Ability_can_hoc1[(Player number of (Owner of Units))] for (Triggering unit)) Greater or equal to 1
                    (Level of Ability_can_hoc2[(Player number of (Owner of Units))] for (Triggering unit)) Greater or equal to 1[/COLOR]
    
                Then - Actions
                    Unit - Add Ability_muon_hoc[(Player number of (Owner of Units))] to (Triggering unit)
                    Game - Display to (Player group((Owner of Units))) for 10.00 seconds the text: You have bought the...
                Else - Actions
                    Game - Display to (Player group((Owner of Units))) for 5.00 seconds the text: You already have th...
                    Player - Add 350 to (Owner of Units) Current lumber
    [/Spoil]
    2.Đối với Abilities có nhiều level:
    [Spoil]
    Mã:
    Events
            Unit - A unit Acquires an item
        Conditions
            (Item-type of (Item being manipulated)) Equal to Inferno
        Actions
            [COLOR="Red"]Set Units = (Triggering unit)
            Set Ability_muon_hoc[(Player number of (Owner of Units))] = Inferno
            Set Ability_can_hoc1[(Player number of (Owner of Units))] = Firebolt
            Set Ability_can_hoc2[(Player number of (Owner of Units))] = Raise Dead[/COLOR]
            [COLOR="Blue"]If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    (Level of Ability_can_hoc1[(Player number of (Owner of Units))] for (Triggering unit)) Greater or equal to 1
                    (Level of Ability_can_hoc2[(Player number of (Owner of Units))] for (Triggering unit)) Greater or equal to 1
                Then - Actions
                    Do nothing.
                Else - Actions
                    Game - Display to (Player group((Owner of Units))) for 5.00 seconds the text: You don't have 2 basic spell to learn
                    Skip Remaining action.
     [/COLOR]
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    (Level of Ability_muon_hoc[(Player number of (Owner of Units))] for (Triggering unit)) Less than 1
                Then - Actions
                    Unit - Add Ability_muon_hoc[(Player number of (Owner of Units))] to Units
                    Game - Display to (Player group((Owner of Units))) for 10.00 seconds the text: Inferno Learned...
                Else - Actions
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            (Level of Ability_muon_hoc[(Player number of (Owner of Units))] for Units) Less than 3
                        Then - Actions
                            Unit - Increase level of Ability_muon_hoc[(Player number of (Owner of Units))] for Units
                            Game - Display to (Player group((Owner of Units))) for 5.00 seconds the text: (Infernal's Level + ( is + (  + (String((Level of Infenal for Units))))))
                        Else - Actions
                            Game - Display to (Player group((Owner of Units))) for 5.00 seconds the text: This spell is already max
                            Player - Add 100 to (Owner of Units) Current lumber
    [/Spoil]

    Màu đỏ là thay đổi, cần chú ý.
    Màu xanh là xét unit đã được 2 spell cần chưa.
    Nếu bạn hiểu cách thứ 2 của bác ấy, thì chỉ cần làm spell theo cụm. Ví dụ cụm [1,2,3] spell cần là số 1 và spell y/c là 2 và 3 thì thêm condition:
    (Level of Abilities[TempInt] for TempUnit) Less than 1
    (Level of Abilities[TempInt+1] for TempUnit) Greater or Equal to than 1
    (Level of Abilities[TempInt+2] for TempUnit) Greater or Equal to than 1


    Thứ bạn cần đây chăng ?
    Mã:
    Unit - Create 1 dummy for Lonewolf at MyPoint facing Default degrees
    Unit - Add Slow to (Last created unit)
    Unit - Set level of Slow  for (Last created unit) to 10
    Unit - Order (Last created unit) to Slow MyTarget
    Unit - Add a 0.50 second Generic expiration timer to (Last created unit)
     
  3. BooyViip

    BooyViip Mr & Ms Pac-Man GameOver

    Tham gia ngày:
    20/11/10
    Bài viết:
    120
    Nơi ở:
    Hà Nội
    Thanks Lonewolf, mà tiện thể hỏi luôn hộ GoldViper câu này vì nó có liên quan đến cái Set 1 Var = Damage hiện tại của 1 unit nào đó mình đang cần (liên quan cả với câu hỏi 2 của mình nữa).
    Và 2 câu hỏi này luôn:
    1.Bác nào chỉ kĩ lưỡng cho em về ý nghĩa và cách dùng của Action - For each Integer A (hay B gì đó) from x => y, do.....
    2.Làm thế nào để tạo 1 Trigger có dạng % chance thực hiện: ví dụ như hero cast spell, 90% là target mất 200HP, 10% là target chết luôn.
     
  4. Darious

    Darious Youtube Master Race

    Tham gia ngày:
    29/5/08
    Bài viết:
    78
    Nơi ở:
    ShakurasPlanet
    How can i save it :(
    [​IMG]
     
  5. meomeo3101

    meomeo3101 Mr & Ms Pac-Man

    Tham gia ngày:
    3/2/07
    Bài viết:
    246
    Nơi ở:
    Hà Nội
    Cho mình hỏi. Mình có các trigger chạy theo thời gian ấy. Tức là cứ bao nhiêu giây thì làm một việc nào đó. Bây giờ làm sao để dừng tất cả thời gian này lại để tạo 1 event riêng sau khi chạy xong công việc của event này thì lại mở lại đúng thời gian mà lúc trước mình đã dừng lại? Giúp mình với đang làm dở cái map đến đoạn này thì ko biết làm thế nào. Mình thấy các map khác đều có. Chắc chắn là làm được đúng không?
     
  6. FlameDrake

    FlameDrake Dragon Quest

    Tham gia ngày:
    1/12/10
    Bài viết:
    1,298
    Nơi ở:
    Quận 10 HCM
    Trigger làm việc
    Muốn tắt hay theo bạn là dừng thì dùng: Trigger off/on ( Trigger làm việc) - Trong trigger có 1 phần tạo trigger cho trigger @@
     
  7. goldviper

    goldviper Mario & Luigi Lão Làng GVN

    Tham gia ngày:
    7/1/10
    Bài viết:
    747
    Nơi ở:
    Tổ dân phố
    cho mình hỏi là có thể chỉnh lại size của map ko , mình làm dở 1 cái map mà đặt size to quá , làm lại h chắc chết , ai chả lời nhanh hộ mình với.Thank nhiều
     
  8. doan_hao15

    doan_hao15 Youtube Master Race

    Tham gia ngày:
    28/8/10
    Bài viết:
    63
    ai chỉ minh làm skill "Goblin's Greed" với: khi giết 1 wái ngoài số vàng rơi từ wái ra còn cộng thêm 2 vàng nữa và số vàng cộng thêm này sẽ tăng lên là 4,6,8,...,18 vàng khi giết được 2,3,4,...,9 con wái trong khoang thời gian quy định nào đó( khi đã giết được 1 wái sau khoảng thời gian quy định mà không giết được con nào nữa thì số vàng công thêm sẽ không tăng.)
     
  9. maixuanem

    maixuanem Mr & Ms Pac-Man

    Tham gia ngày:
    22/8/10
    Bài viết:
    182
    Nơi ở:
    Tân Binh
    Bro nào có nhiều model chất lượng cao share cho mình với. Model từ wow8 càng tốt :D. Dung lượng ko thành vấn đề
    //Codart
    ai post bài này thế :S
    mod đừng cho ăn thẻ nha tui ko có post
    ai post thế :s
    // Anh đây cu :">
     
    Chỉnh sửa cuối: 3/1/11
  10. meomeo3101

    meomeo3101 Mr & Ms Pac-Man

    Tham gia ngày:
    3/2/07
    Bài viết:
    246
    Nơi ở:
    Hà Nội
    Nếu sử dụng trigger on/off thì không có tác dụng bạn ạ. Mình thử rồi. Nếu dùng on/off time game vẫn chạy.
     
  11. FlameDrake

    FlameDrake Dragon Quest

    Tham gia ngày:
    1/12/10
    Bài viết:
    1,298
    Nơi ở:
    Quận 10 HCM
    Nếu là bảng Counddown Time ( Thời gian game or even), thì dùng cái Pause All Countdown Time là mọi bảng thời gian đều stop lại hết.
    Nhận tiện Flame hỏi mọi ng` chút vấn đề này, vẫn là vấn đề cũ thôi mà xem mãi vẫn ko hiểu :((
    _Mấy cái Avaible khi set cho 1 spell, sao Flame thấy có cái thì Remove liền, có cái thì chờ gần hết trigger mới Remove, nguyên nhận là sao ?
    _Trong phần Real, có 2 dòng này Flame ko hĩu nó sài như thế nào ?
    +Distance between (Position of (Triggering unit) and (Position of (Triggering unit)
    +Distance between (Position of (Triggering unit) and (Position of (Triggering unit)
    Flame hĩu sơ sơ là giữa 2 vị trí ( Caster và Target) nhưng ko biết dùng nó sao
    +Point With Polar Offset, sao lúc thì dùng cái dạng này cho đường thằng, lúc thì lại vòng tròn ?
    Mọi ng` có thể chỉ thật kỹ lưỡng khi viết trigger, các giá trị avaible nó ra sao, rồi nó chạy làm sao, để Flame có thể hĩu thật rõ về cái này dc ko @@ Thanks mọi ng` trước.
     
    Chỉnh sửa cuối: 3/1/11
  12. meomeo3101

    meomeo3101 Mr & Ms Pac-Man

    Tham gia ngày:
    3/2/07
    Bài viết:
    246
    Nơi ở:
    Hà Nội
    Bạn không hiểu ý mình hỏi rồi. Nghĩa là có event Time- Every xxx seconds of game time.
    Khi turn off thì time vẫn chạy nên khi mở on nếu đùng thời điểm thì nó chạy luôn không như mình mong muốn.
    Nghĩa là ở đây dùng time game đó. Có cách nào dừng nó lại không? Hay là phải tạo countdown time. :(
     
  13. DylandKyo

    DylandKyo Donkey Kong

    Tham gia ngày:
    28/10/10
    Bài viết:
    358
    cảm ơn bạn rất nhìu, mà sao mình thanks hok đc, Bâm vào dấu ngôi sao nó báo cái gì ák @@
     
  14. FlameDrake

    FlameDrake Dragon Quest

    Tham gia ngày:
    1/12/10
    Bài viết:
    1,298
    Nơi ở:
    Quận 10 HCM
    Theo như phương diện của mình thì ko thế đc, tại khi đã đặt every xxx seconds, thì khi vào game là nó chạy dù on hay off, off chỉ là tắt ảo nhưng xxx vẫn chạy, nên khi on lại thì nó ko thể theo ý mình mà theo chu kỳ của nó :D
    P/s: Theo mình thì nó thế còn ng` khác thì ko biết :D
     
  15. meomeo3101

    meomeo3101 Mr & Ms Pac-Man

    Tham gia ngày:
    3/2/07
    Bài viết:
    246
    Nơi ở:
    Hà Nội
    uk`! nh­ư vậy đó! giờ mình muốn làm sao để khi tắt nó đi khi bật lại nó vẫn ở thời điểm lúc tắt đi :(
     
  16. goldviper

    goldviper Mario & Luigi Lão Làng GVN

    Tham gia ngày:
    7/1/10
    Bài viết:
    747
    Nơi ở:
    Tổ dân phố
    @Flamedrake: mình nghĩ remove leak đầu hay cuối chả ảnh hưởng gì nên có lẽ ho. làm vậy cho đỡ quên :) và avaible có tên là variable :D
    Distance between (Position of (Triggering unit) and (Position of (Triggering unit) : theo mình hiểu thì có lẽ là dùng để set damage deal dựa trên khỏang cách giửa Hero và target ,vd : set stormboltdamage = ( Distance between (Position of (StormboltCaster) and (Position of (Stormbolttarget)) x lvl of stormbolt for stormboltcaster ) : càng xa càng mạnh :))
     
    Chỉnh sửa cuối: 3/1/11
  17. BooyViip

    BooyViip Mr & Ms Pac-Man GameOver

    Tham gia ngày:
    20/11/10
    Bài viết:
    120
    Nơi ở:
    Hà Nội
    Vậy còn 3 câu này hic hic :
    1.Bác nào chỉ kĩ lưỡng cho em về ý nghĩa và cách dùng của Action - For each Integer A (hay B gì đó) from x => y, do.....
    2.Làm thế nào để tạo 1 Trigger có dạng % chance thực hiện: ví dụ như hero cast spell, 90% là target mất 200HP, 10% là target chết luôn
    3.Làm thế nào để set Varible = damage của unit.

    ---------- Post added at 18:05 ---------- Previous post was at 18:01 ----------

    Mình ko hiểu ý bạn lắm, nhưng nếu muốn dừng gametime (đồng hồ trong Game ko chạy nữa) thì dùng Trigger "Game - Set Time Of Day Speed" về 0%.
     
  18. meomeo3101

    meomeo3101 Mr & Ms Pac-Man

    Tham gia ngày:
    3/2/07
    Bài viết:
    246
    Nơi ở:
    Hà Nội
    Như vậy là được hả bạn? Để mình thử! Cám ơn!
     
  19. GrudgeBoy

    GrudgeBoy Youtube Master Race

    Tham gia ngày:
    19/2/07
    Bài viết:
    80
    Mấy anh ơi cho em hỏi cách làm 1 spell dạng thế này nha! Mong các anh tận tình chỉ bảo...
    Có 1 hero cast 1 spell...spell đó khi được cast sẽ tạo ra 1 cái mũi tên bay ( cái mũi tên này sẽ bay theo ý người tạo spell, hình vòng tròn chẳng hạn - và cái mũi tên này sẽ biến mất trong 5s ).
    cái em muốn là làm thế nào đó mà khi cái mũi tên này bay trúng enemy nào ( trúng vào người ấy ) thì cái mũi tên sẽ biến mất và enemy sẽ bị deal damage ( cái damage deal ấy vào enemy tùy vào thuộc tính của hero đó - thí dụ strength càng mạnh bao nhiêu thì damaged mạnh như vậy )
    còn nếu mũi tên bay ko trúng enemy thì sẽ tiếp tục bay tiếp đến khi tự biến mất.
    Hix mong các anh làm giúp ( bằng trigger hay jass cũng được ) nếu là jass thì mong anh nào giúp giải thích cho em hiểu luôn nha
     
  20. raivor

    raivor Dragon Quest Lão Làng GVN

    Tham gia ngày:
    24/7/09
    Bài viết:
    1,411
    1. Về cái for này thì nó là vòng lặp.
    Vd: Action - For each (Integer A) from 1 to 10 do (Actions) thì trigger sẽ chạy lần lượt từ 1 rồi 2 3 4 ... 10 (nói là lần lượt chứ nó cùng 1 lúc đấy). Có thể áp dụng để set var. Như là:
    Mã:
      Action - For each (Integer A) from 1 to 10 do (Actions)
                   Create 1 Footman for Player 1 (Red) at (Center of (Playable map area)) facing Default buiding facing degrees
                   Set Dummy(Integer A) = (Last Created Unit)  
    Như vậy khi trigger hoạt động thì sẽ tạo ra 10 unit ở giữa map và mỗi unit tương ứng với 1 biến.
    Vd: Dummy (1), Dummy (2), Dummy (3) ... Dummy (10)
    Đã từng áp dụng cách này để tạo ra hình ngôi sao bằng Finger of Death :D
    Ngoài ra còn nhiều công dụng khác nữa. Bạn nên xem topic Post Spell của bác ducthai sẽ hiểu rõ hơn.
    2. Làm như thế này :
    [Spoil]
    Mã:
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to (tên ability, ở đây mình dùng Storm Bolt)
    Actions
        If....
              If - Conditions
                       (Random integer number between 1 and 100) Less than or equal to 90
              Then - Actions
                       Unit - Set life of (Target unit of ability being cast) to ((Life of (Target unit of ability being cast)) - 200)
              Else - Actions
                        Unit - Kill (Target unit of ability being cast) 
    [/Spoil]
    3. Thep công thức: Max damage = damage base + (number of dice X Sides per dice) mà Damage Base được tính bằng chỉ số intel, agi, strength ban đầu của hero đó nên ta set biến như thế này (Đối với hero Mountain King):
    Mã:
     Set (biến dmg) = ((Streng of (Triggering unit)(Exclude bonuses)) + (2 x 6))
    Cách này có rất nhiều hạn chế vd như dmg này không được cộng thêm bởi item hay aura tăng dmg (tăng streng thì được), và phải làm như vậy đối với từng hero. Nên còn một cách khác đó là dùng Damage Taken.
     
    BooyViip thích bài này.
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này