Topic hỏi đáp (tập 3) về cách làm map

Thảo luận trong 'World Editor' bắt đầu bởi Tom_Kazansky, 15/6/09.

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

    YAN[asian] Mario & Luigi

    Tham gia ngày:
    27/3/07
    Bài viết:
    812
    Có ai giúp mình làm Ulti của Luna với!
     
  2. herosf2006

    herosf2006 Mega Man

    Tham gia ngày:
    19/3/08
    Bài viết:
    3,449
    Nơi ở:
    Đà Nẵng
    ^ mặt dù chưa làm thử... nhưng theo mình dùng GUI dễ lắm mà....
    chọn 1 skill bất kì có dạng Cast Target nhé... cho nó cái Model giật sét... chọn Icon, chỉnh Dam... thêm Tooltip :) thử xem...
     
  3. YAN[asian]

    YAN[asian] Mario & Luigi

    Tham gia ngày:
    27/3/07
    Bài viết:
    812
    Có hiểu mình hỏi cái gì ko mà có cả sấm sét ở đây thế =))?

    À, hiểu rồi. Cậu tưởng Luna Dday hả? My bad! Là Luna Dota nhé.
     
  4. kingwar2010

    kingwar2010 T.E.T.Я.I.S

    Tham gia ngày:
    6/11/09
    Bài viết:
    554
    Nơi ở:
    TP.HCM
    có pác nào bít làm quest help với
    hoac giới thiệu maps có quest cho vô hoc ké cung dc
    (maps cần nhẹ... đễ nhìn, ko lock)
     
  5. Dragonmangia

    Dragonmangia Donkey Kong

    Tham gia ngày:
    8/5/09
    Bài viết:
    372
    Nơi ở:
    Kathapecea
    Bạn zô coi Map Kasthal Quest ấy (tự quảngcáo =)))
    Quest dễ mà,tạo Quest xong, set varỉable, Enable Quest và Mark COmplete Quest là xong thui :)
     
  6. ShadowThanatos

    ShadowThanatos -|--Soul Reaper--|-

    Tham gia ngày:
    23/2/09
    Bài viết:
    2,119
    Nơi ở:
    Horror Depht
    Hướng dẫn gợi ý nhớ (vì theo tôi thấy cậu dư thừa khả năng để làm)
    2 Trigger:
    trigger đầu set variable này kia kia nọ (caster, level, count,...etc....)
    trigger 2 event là Every [khoảng thới gian mỗi phát bắn] Sec
    Rồi set group với 1 đống condition (matching unit equals to enemy unit of owner of [Caster],..etc...)
    Rồi tạo 1 dummy, add dummy skill (storm bolt hay Firebolt,..mấy dạng stun target), set level = với level của skill chính, rồi order nó cast random 1 con trong group vừa pick. Xong rồi xóa group.
    Còn vụ limit thì hem biết :))
     
  7. babymoon12345

    babymoon12345 Youtube Master Race

    Tham gia ngày:
    22/1/09
    Bài viết:
    29
    http://forum.gamevn.com/showpost.php?p=9134777&postcount=850
    Em vẫn chưa hiểu lắm
    Cụ thể làm em muốn cho 1 area nhất định có khoảng X creeps. Khi ta giết creeps thì sau khi 1 creep chết đi thì 10s<tính từ thời gian creep đó chết>thì xuất hiệnh con khác ở 1 vị trí randomn trong area đó thì chỉnh như thế nào ạ
    .
    ___________Auto Merge________________

    .
    http://forum.gamevn.com/showpost.php?p=9134777&postcount=850
    Em vẫn chưa hiểu lắm
    Cụ thể làm em muốn cho 1 area nhất định có khoảng X creeps. Khi ta giết creeps thì sau khi 1 creep chết đi thì 10s<tính từ thời gian creep đó chết>thì xuất hiệnh con khác ở 1 vị trí randomn trong area đó thì chỉnh như thế nào ạ
    À mà nếu như em muốn chỉnh cho Hero XP theo kiểu <LV sau> = 120% < LV trước> thì chỉ điền gì và lọa bỏ những gì:D
     
  8. dannyminhduc

    dannyminhduc T.E.T.Я.I.S

    Tham gia ngày:
    20/1/09
    Bài viết:
    616
    Đầu tiên, tạo 1 region nằm trên vùng bạn muốn quái hồi sinh, rồi thiết lập trigger này!

    Mã:
    Xuất Hiện Quái Random Trong Region
        Events
            Unit - A unit Dies
        Conditions
            (Unit-type of (Triggering unit)) Equal to [U]<Loại Quái Bị Chết>[/U]
        Actions
            Wait [U]10.00 [/U]seconds
            Unit - Create 1 [U]<Loại Quái Muốn Tạo Ra (Hồi Sinh)>[/U] for [U]Neutral Hostile[/U] at (Random point in ([U]<Region Muốn Tạo Quái>[/U])) facing Default building facing degrees
    
    Với cách này, bạn có thể để quái trước hoặc dùng trigger tạo quái đều có hiệu quả hồi sinh lại!


    Câu hỏi 2: Anh Tom đã chỉ rõ rùi mà Hero XP - Required Experience to level up (điểm kinh nghiệm cần thiết để lên level)
     
  9. strongwindp

    strongwindp Mr & Ms Pac-Man

    Tham gia ngày:
    13/8/08
    Bài viết:
    144
    Cái đó có trên diễn đàn ko ? Có gì bạn gửi cho mình link đi , lâu rồi ko theo dõi box WE
     
  10. Maiev Shadowsong

    Maiev Shadowsong Donkey Kong

    Tham gia ngày:
    24/6/09
    Bài viết:
    355
    Nơi ở:
    Pikachu Hội
  11. herosf2006

    herosf2006 Mega Man

    Tham gia ngày:
    19/3/08
    Bài viết:
    3,449
    Nơi ở:
    Đà Nẵng
    có phải từ cái Ulti Luna ta có thể làm tương tự để tẠo ra Spell 1 của Clock, và Spell 2 của Lershac...
     
  12. strongwindp

    strongwindp Mr & Ms Pac-Man

    Tham gia ngày:
    13/8/08
    Bài viết:
    144
    hix , cảm ơn bạn đã nhiệt tình nhưng mà cái này là Jass , đọc ko hiểu gì ráo , mình chỉ mới là GUI-er thôi
     
  13. Computer(Lord)

    Computer(Lord) T.E.T.Я.I.S

    Tham gia ngày:
    2/11/08
    Bài viết:
    615
    Nơi ở:
    Defend Sea
    Omnislash GUI-vJass, credit cho Tinki3.
     
  14. romy

    romy Youtube Master Race

    Tham gia ngày:
    7/5/06
    Bài viết:
    49
    Quái, để array của var = 1 thì periodic trigger tự turn off, hỏi thehelper bảo đưa lên 100 thì ok. Nhưng ví dụ như skill Elune's Arrow của Mirana xài 1 lúc thì periodic trigger cũng... turn off nốt.

    Anh Tom xem cái skill Plasma Field này rồi giải thích cho em hiểu tại sao để array 1 thì bị lỗi dùng 1 lần tự tắt mà để 100 thì ổn.
    Mã:
    Plasma Field
        Events
            Unit - A unit Starts the effect of an ability
        Conditions
            (Ability being cast) Equal to PFAbilityMain
        Actions
            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                If - Conditions
                    PFCustomValue Less than 100
                Then - Actions
                    Set PFCustomValue = (PFCustomValue + 1)
                Else - Actions
                    Set PFCustomValue = 1
            Set PFCaster[PFCustomValue] = (Triggering unit)
            Set PFBoolean[PFCustomValue] = False
            Set PFRealMin = (40.00 + (40.00 x (Real((Level of PFAbilityMain for (Triggering unit))))))
            Set PFRealMax = (70.00 + (70.00 x (Real((Level of PFAbilityMain for (Triggering unit))))))
            Set PFRealDamageAdd[PFCustomValue] = ((PFRealMax - PFRealMin) / 56.00)
            Set PFRealDamage[PFCustomValue] = (PFRealMin / 2.00)
            Set PFRealDistance[PFCustomValue] = 0.00
            Set TempPoint = (Position of (Triggering unit))
            Set TempReal = 0.00
            For each (Integer A) from 1 to 36, do (Actions)
                Loop - Actions
                    Set TempReal = (TempReal + 10.00)
                    Set TempOffset = (TempPoint offset by PFRealDistance[PFCustomValue] towards TempReal degrees)
                    Unit - Create 1 PlasmaFieldDummy for (Owner of (Triggering unit)) at TempOffset facing TempReal degrees
                    Unit - Set the custom value of (Last created unit) to (Integer(TempReal))
                    Unit Group - Add (Last created unit) to PFUnitGroup[PFCustomValue]
                    Custom script:   call RemoveLocation(udg_TempOffset)
            Unit - Create 1 HiddenDummy for (Owner of (Triggering unit)) at TempPoint facing Default building facing degrees
            Unit - Set the custom value of (Last created unit) to PFCustomValue
            Unit Group - Add (Last created unit) to PFDummyGroup
            Custom script:   call RemoveLocation(udg_TempPoint)
    
    Mã:
    Plasma Field Periodic
        Events
            Time - Every 0.04 seconds of game time
        Conditions
        Actions
            Unit Group - Pick every unit in PFDummyGroup and do (Actions)
                Loop - Actions
                    Set TempInt = (Custom value of (Picked unit))
                    If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        If - Conditions
                            PFBoolean[TempInt] Equal to True
                        Then - Actions
                            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                If - Conditions
                                    PFRealDistance[TempInt] Less than or equal to 0.00
                                Then - Actions
                                    Unit Group - Remove all units from PFDamagedGroup[TempInt]
                                    Unit Group - Pick every unit in PFUnitGroup[TempInt] and do (Actions)
                                        Loop - Actions
                                            Set TempPoint = (Position of (Picked unit))
                                            Unit - Remove (Picked unit) from the game
                                            Special Effect - Create a special effect at TempPoint using AncestralGuardianMissileBlue.mdx
                                            Special Effect - Destroy (Last created special effect)
                                            Custom script:   call RemoveLocation(udg_TempPoint)
                                    Unit - Remove (Picked unit) from the game
                                Else - Actions
                                    Set PFRealDamage[TempInt] = (PFRealDamage[TempInt] - PFRealDamageAdd[TempInt])
                                    Set PFRealDistance[TempInt] = (PFRealDistance[TempInt] - 25.00)
                                    Set TempPoint = (Position of PFCaster[TempInt])
                                    Unit Group - Pick every unit in PFUnitGroup[TempInt] and do (Actions)
                                        Loop - Actions
                                            Set TempReal = (Real((Custom value of (Picked unit))))
                                            Set TempOffset = (TempPoint offset by PFRealDistance[TempInt] towards TempReal degrees)
                                            Unit - Move (Picked unit) instantly to TempOffset, facing (TempReal - 180.00) degrees
                                            Set TempUnitGroup = (Units within 100.00 of TempOffset matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner of PFCa
                                            Unit Group - Pick every unit in TempUnitGroup and do (Actions)
                                                Loop - Actions
                                                    Unit - Cause PFCaster[TempInt] to damage (Picked unit), dealing PFRealDamage[TempInt] damage of attack type Spells and damage type Magic
                                                    Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Weapons\Bolt\BoltImpact.mdl
                                                    Special Effect - Destroy (Last created special effect)
                                                    Unit Group - Add (Picked unit) to PFDamagedGroup[TempInt]
                                            Custom script:   call DestroyGroup(udg_TempUnitGroup)
                                            Custom script:   call RemoveLocation(udg_TempOffset)
                                    Custom script:   call RemoveLocation(udg_TempPoint)
                        Else - Actions
                            If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                If - Conditions
                                    PFRealDistance[TempInt] Greater than or equal to 700.00
                                Then - Actions
                                    Unit Group - Remove all units from PFDamagedGroup[TempInt]
                                    Set PFBoolean[TempInt] = True
                                Else - Actions
                                    Set PFRealDamage[TempInt] = (PFRealDamage[TempInt] + PFRealDamageAdd[TempInt])
                                    Set PFRealDistance[TempInt] = (PFRealDistance[TempInt] + 25.00)
                                    Set TempPoint = (Position of PFCaster[TempInt])
                                    Unit Group - Pick every unit in PFUnitGroup[TempInt] and do (Actions)
                                        Loop - Actions
                                            Set TempReal = (Real((Custom value of (Picked unit))))
                                            Set TempOffset = (TempPoint offset by PFRealDistance[TempInt] towards TempReal degrees)
                                            Unit - Move (Picked unit) instantly to TempOffset, facing TempReal degrees
                                            Set TempUnitGroup = (Units within 100.00 of TempOffset matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is Magic Immune) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) belongs to an enemy of (Owner of PFCa
                                            Unit Group - Pick every unit in TempUnitGroup and do (Actions)
                                                Loop - Actions
                                                    Unit - Cause PFCaster[TempInt] to damage (Picked unit), dealing PFRealDamage[TempInt] damage of attack type Spells and damage type Magic
                                                    Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Weapons\Bolt\BoltImpact.mdl
                                                    Special Effect - Destroy (Last created special effect)
                                                    Unit Group - Add (Picked unit) to PFDamagedGroup[TempInt]
                                            Custom script:   call DestroyGroup(udg_TempUnitGroup)
                                            Custom script:   call RemoveLocation(udg_TempOffset)
                                    Custom script:   call RemoveLocation(udg_TempPoint)
    
     
  15. Tom_Kazansky

    Tom_Kazansky

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    tốt nhất post map lên, nếu map to thì copy spell trên vào map mới

    chứ trong 2 trigger trên ko có action nào turn off cả, làm sao trigger tự turn off đc
     
  16. thecaptain3000

    thecaptain3000 Youtube Master Race

    Tham gia ngày:
    8/11/09
    Bài viết:
    77
    Mã:
    function Trig_Guardian_Conditions takes nothing returns boolean
        if ( not ( GetUnitTypeId(GetSummonedUnit()) == 'hphx' ) ) then
            return false
        endif
        return true
    endfunction
    
    function Trig_Guardian_Func004C takes nothing returns boolean
        if ( not ( DistanceBetweenPoints(GetUnitLoc(udg_ball), GetUnitLoc(udg_master)) >= 1000.00 ) ) then
            return false
        endif
        return true
    endfunction
    
    function Trig_Guardian_Actions takes nothing returns nothing
        set udg_master = GetSummoningUnit()
        set udg_ball = GetSummonedUnit()
        exitwhen IsUnitDeadBJ(ball)
        if ( Trig_Guardian_Func004C() ) then
            set udg_target = GetUnitLoc(udg_master)
            call IssuePointOrderByIdLoc(ball,851986,target)
            call RemoveLocation(target)
        else
            set udg_target = GetUnitLoc(udg_master)
            set udg_angel = GetRandomReal(0, 360.00)
            set udg_distance = GetRandomReal(100.00, 500.00)
            call PolarProjectionNL(target,distance,angle)
            call IssuePointOrderByIdLoc(ball,851983,target)
            call RemoveLocation(target)
        endif
        call TriggerSleepAction(.5)
    endfunction
    bác nào xem lỗi ở đâu dùm với:((
     
  17. Jarod Shadowsong

    Jarod Shadowsong Youtube Master Race

    Tham gia ngày:
    26/11/09
    Bài viết:
    65

    =))

    Không có event thì àm sao mà cast được :-j
     
  18. thecaptain3000

    thecaptain3000 Youtube Master Race

    Tham gia ngày:
    8/11/09
    Bài viết:
    77
    event :)ko phài tại cái đó
    ctrl+f9 nó khóa trigg
     
  19. Maiev Shadowsong

    Maiev Shadowsong Donkey Kong

    Tham gia ngày:
    24/6/09
    Bài viết:
    355
    Nơi ở:
    Pikachu Hội
    Post full code lên đi, post vậy ai giúp được :|

    Hay muốn mình tối ưu hóa code của trigger kia ?
     
  20. thecaptain3000

    thecaptain3000 Youtube Master Race

    Tham gia ngày:
    8/11/09
    Bài viết:
    77
    Mã:
    function Trig_Guardian_Conditions takes nothing returns boolean
        if ( not ( GetUnitTypeId(GetSummonedUnit()) == 'hphx' ) ) then
            return false
        endif
        return true
    endfunction
    
    function Trig_Guardian_Func004C takes nothing returns boolean
        if ( not ( DistanceBetweenPoints(GetUnitLoc(udg_ball), GetUnitLoc(udg_master)) >= 1000.00 ) ) then
            return false
        endif
        return true
    endfunction
    
    function Trig_Guardian_Actions takes nothing returns nothing
        set udg_master = GetSummoningUnit()
        set udg_ball = GetSummonedUnit()
        exitwhen IsUnitDeadBJ(ball)
        if ( Trig_Guardian_Func004C() ) then
            set udg_target = GetUnitLoc(udg_master)
            call IssuePointOrderByIdLoc(ball,851986,target)
            call RemoveLocation(target)
        else
            set udg_target = GetUnitLoc(udg_master)
            set udg_angel = GetRandomReal(0, 360.00)
            set udg_distance = GetRandomReal(100.00, 500.00)
            call PolarProjectionNL(target,distance,angle)
            call IssuePointOrderByIdLoc(ball,851983,target)
            call RemoveLocation(target)
        endif
        call TriggerSleepAction(.5)
    endfunction
    
    //===========================================================================
    function InitTrig_Guardian takes nothing returns nothing
        set gg_trg_Guardian = CreateTrigger(  )
        call TriggerRegisterAnyUnitEventBJ( gg_trg_Guardian, EVENT_PLAYER_UNIT_SUMMON )
        call TriggerAddCondition( gg_trg_Guardian, Condition( function Trig_Guardian_Conditions ) )
        call TriggerAddAction( gg_trg_Guardian, function Trig_Guardian_Actions )
    endfunction
    
    
    Đây fix giúp với nhé:-*
    Àh Maiev - laiev - jarod là 1 người hết hả:-o
     
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này