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

Status
Không mở trả lời sau này.
Cho hỏi bt khi làm một skill passive dạng tăng dmg mỗi phát đánh chẳng hạn, thì mình toàn làm với events unit is attacked, nghe các bậc lão làng bảo pick unit rồi take dmg gì đó, @@. Mà làm thì ko đc, nên ai cho mình xin cái map demo cứ dánh thì gây thêm sát thương như trên ko? Tức ko dùng event unit is attack vì dùng thì khi unit vừa hù đã mất, ko tự nhiên @@

GUI-Friendly Damage Detection

http://www.hiveworkshop.com/forums/...GUI-Friendly%20Damage%20Detection&d=list&r=20


Không hiểu máy tính nhà mình thiếu cái gì mà thanh công cụ gamevn ko hiển thị,ví dụ các biểu tượng chèn link,ẩn nội dung,in đậm,viết nghiêng.v.v.v.
 
Đầu tiên bạn phải tạo một trigger với event unit learn a skill,gán biến unit cho Hero học skill đó. Turn on trigger thứ 2 để trigger này bắt đầu hoạt động

Mã:
Learn
    Events
        Unit - A unit Learns a skill
    Conditions
        (Learned Hero Skill) Equal to Human Archmage - Blizzard
    Actions
        Set Unit = (Learning Hero)
        Trigger - Turn on Time <gen>

Kế tiếp ở trigger thứ 2,mỗi 2 giây (thời gian giãn cách mỗi lần giật sét ở đây tùy bạn) sẽ giật sét các unit xung quanh bản thân unit đó

Mã:
Time
    Events
        Time - Every 2.00 seconds of game time
    Conditions
    Actions
        Set TempLoc = (Position of Unit)
        Set TempGroup = (Units within 400.00 of TempLoc matching ((((Matching unit) is A structure) Equal to False) and ((((Matching unit) is alive) Equal to True) and ((((Matching unit) is Magic Immune) Equal to False) and (((Matching unit) belongs to an enemy of (Owner of Unit)) E
        Unit Group - Pick every unit in TempGroup and do (Actions)
            Loop - Actions
                Unit - Create 1 DummyOther for (Owner of Unit) at TempLoc facing Default building facing degrees
                Unit - Add Chain Lighting to (Last created unit)
                Unit - Order (Last created unit) to Orc Far Seer - Chain Lightning (Picked unit)
                Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
        Custom script:   call RemoveLocation(udg_TempLoc)
        Custom script:   call DestroyGroup(udg_TempGroup)

Trigger trên ko MUI



Mỗi giây pick tất cả các unit của computer,check các unit đó máu dưới 20% thì
Mã:
Hero - Order (Picked unit) to use Itemhoimau
Mình làm không được bạn ơi, tại mình làm Tower nó là Building chứ không phải Hero ,khi unit tới gần nó vẫn bắn bình thường và tự sử dụng skill. bạn sửa lại giúp mình và cho mình xin cái mapdemo được không tại mới bắt đầu làm nên không hiểu rõ lắm. thanks bạn
 
Chỉ mình cái trigger dạng mà mình đánh nhà chính của thằng enemy kia và cái nhà đó nó còn khoảng 100 máu thì nó sẽ làm thằng enemy đó trở thành đồng minh mình và chuyển cái nhà đó thành đồng minh mình lun ( ko phải dạng change owner nha), giống như thu phục thằng đó thành phe mình vậy.
 
Chỉ mình cái trigger dạng mà mình đánh nhà chính của thằng enemy kia và cái nhà đó nó còn khoảng 100 máu thì nó sẽ làm thằng enemy đó trở thành đồng minh mình và chuyển cái nhà đó thành đồng minh mình lun ( ko phải dạng change owner nha), giống như thu phục thằng đó thành phe mình vậy.
Lý thuyết đơn giản 1 có thể nói là:
[spoil]
Mã:
    Events
        Unit - A unit Is attacked
    Conditions
        ((Attacked unit) belongs to an enemy of (Owner of (Attacking unit))) Equal to True
        (Life of (Attacked unit)) Less than or equal to 100.00
    Actions
        Player - Make (Owner of (Attacked unit)) treat (Owner of (Attacking unit)) as an Ally with shared vision
        Player - Make (Owner of (Attacking unit)) treat (Owner of (Attacked unit)) as an Ally with shared vision
[/spoil]
Với thực tế thì sẽ cần thay đổi thêm, nếu cần có thể xem [Demo]Change Team

Mình làm không được bạn ơi, tại mình làm Tower nó là Building chứ không phải Hero ,khi unit tới gần nó vẫn bắn bình thường và tự sử dụng skill.
Đơn giản hơn là làm chiêu attack tự đánh sau 1 thời gian:
1) Tạo 1 spell từ Chain Lightning sửa theo ý muốn.
2) Tạo spell từ item ability Orb of Lightning New, sửa chances = 100 hết và attack bonus = 0, riêng Data-Effect Ability chọn ability trên, add vào trụ.
3) Khi trụ đánh sẽ xuất ra Chain lightning, và tần suất ra chiêu sẽ tương ứng với cooldown của Chain lightning
 
Cho hỏi
Mã:
Unit - Cause Caster to damage (Picked unit), dealing ((((Real((Level of Swim for Caster))) x 100.00) + 100.00) + ((Real((Strength of Caster (Exclude bonuses)))) x 2.00)) damage of attack type Spells and damage type Normal
Cái code như trên. Bị gì mà deal tới 4-6k dmg :|, Swim có 3 level => 3x100+100 = 400 + Str x 2. Hero lúc này Str đc 120 => 400 + 120x2 = 400 + 240 = 640 thôi.Mà nó deal dmg ảo quá :|
 
Ai cho mình hỏi cách sửa map tổng hợp 49.0 với. Có những files hero map này mình ko tìm được. Dùng World Editor chỉ có Trigger. Mình muốn sửa abilities và model của map này. Ai giúp mình với T_T".
 
Đơn giản hơn là làm chiêu attack tự đánh sau 1 thời gian:
1) Tạo 1 spell từ Chain Lightning sửa theo ý muốn.
2) Tạo spell từ item ability Orb of Lightning New, sửa chances = 100 hết và attack bonus = 0, riêng Data-Effect Ability chọn ability trên, add vào trụ.
3) Khi trụ đánh sẽ xuất ra Chain lightning, và tần suất ra chiêu sẽ tương ứng với cooldown của Chain lightning

Đầu tiên bạn phải tạo một trigger với event unit learn a skill,gán biến unit cho Hero học skill đó. Turn on trigger thứ 2 để trigger này bắt đầu hoạt động
[/code]

Mình làm được rồi cảm ơn 2 bạn nha!

---------- Post added at 23:42 ---------- Previous post was at 23:40 ----------

Đơn giản hơn là làm chiêu attack tự đánh sau 1 thời gian:
1) Tạo 1 spell từ Chain Lightning sửa theo ý muốn.
2) Tạo spell từ item ability Orb of Lightning New, sửa chances = 100 hết và attack bonus = 0, riêng Data-Effect Ability chọn ability trên, add vào trụ.
3) Khi trụ đánh sẽ xuất ra Chain lightning, và tần suất ra chiêu sẽ tương ứng với cooldown của Chain lightning

Đầu tiên bạn phải tạo một trigger với event unit learn a skill,gán biến unit cho Hero học skill đó. Turn on trigger thứ 2 để trigger này bắt đầu hoạt động

Mình làm được rồi cảm ơn 2 bạn nha!
 
Cho hỏi
Mã:
Unit - Cause Caster to damage (Picked unit), dealing ((((Real((Level of Swim for Caster))) x 100.00) + 100.00) + ((Real((Strength of Caster (Exclude bonuses)))) x 2.00)) damage of attack type Spells and damage type Normal
Cái code như trên. Bị gì mà deal tới 4-6k dmg :|, Swim có 3 level => 3x100+100 = 400 + Str x 2. Hero lúc này Str đc 120 => 400 + 120x2 = 400 + 240 = 640 thôi.Mà nó deal dmg ảo quá :|

Post cả trigger xem,nếu deal dạng silde (mỗi 0.0x giây) thì gây ra lớn là phải
 
các bạn ơi cho mình hỏi về chuyện thằng đệ khi mình mua item dịch chuyển đi chỗ khác thì làm trigger như nào để khi dịch chuyển hero dịch chuyển luôn thằng đệ ai biết xin chỉ giúp với :5cool_ops:
 
Pick Every Unit xung quanh rồi Move tới target point of ability being cast hoặc Move 1 thằng đệ thôi

Ai có thể vui lòng chỉ mình cách tính hướng AngleBetweenPoints và PolarProjectionBJ mà ko cần dùng tới hai lệnh này ko ?
 
Chỉnh sửa cuối:
Bạn nào chỉ giúp mình spell này với :
Mình thấy ở 1 số map có skill shockwave nhưng mà bắn ra hẳn 3 tia,vậy cho mình hỏi làm như thế nào vậy :9cool_pudency:
 
Bạn nào chỉ giúp mình spell này với :
Mình thấy ở 1 số map có skill shockwave nhưng mà bắn ra hẳn 3 tia,vậy cho mình hỏi làm như thế nào vậy :9cool_pudency:

Tạo dummy rồi add cho nó ability SW, order nó cast facing of caster + xx hoặc - xx :-?
Cách này là bắn 3 tia theo hình quạt, còn thẳng thì chịu :D
À mà chắc thẳng thì tạo dummy ntn
- - -
o
-: dummy
o: caster
rồi order nó cast facing of caster thôi ;))

Post cả trigger xem,nếu deal dạng silde (mỗi 0.0x giây) thì gây ra lớn là phải

Trigger ko phải dạng slide, tuy nhiên có wait. Vậy có ảnh hưởng? :-?
Mã:
Lan
    Events
        Unit - A unit Begins casting an ability
    Conditions
        (Ability being cast) Equal to Lan 
    Actions
        Set Lan_Caster = (Casting unit)
        Set Lan_Target = (Target point of ability being cast)
        Wait 0.50 seconds
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Lan_Caster is alive) Equal to True
            Then - Actions
                Unit - Hide Lan_Caster
                Wait 1.50 seconds
                Unit - Unhide Lan_Caster
                Set Lan_Point = (Position of Lan_Caster)
                Special Effect - Create a special effect at Lan_Point using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
                Special Effect - Destroy (Last created special effect)
                For each (Integer A) from 1 to 10, do (Actions)
                    Loop - Actions
                        Set Lan_Point2 = (Lan_Target offset by 150.00 towards ((Real((Integer A))) x 36.00) degrees)
                        Set Lan_Point3 = (Lan_Target offset by 300.00 towards ((Real((Integer A))) x 36.00) degrees)
                        Special Effect - Create a special effect at Lan_Point2 using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
                        Special Effect - Destroy (Last created special effect)
                        Special Effect - Create a special effect at Lan_Point3 using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
                        Special Effect - Destroy (Last created special effect)
                        Selection - Select Lan_Caster for (Owner of Lan_Caster)
                        Set Lan_Group = (Units within 500.00 of Lan_Target matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) is Mechanical) Not equal to True) and (((((Matching unit) is dead) Not equal to True) and (((Unit-type of (Matching unit)) Not equal to |c
                        Unit Group - Pick every unit in Lan_Group and do (Actions)
                            Loop - Actions
                                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    If - Conditions
                                        ((Picked unit) belongs to an enemy of (Owner of Lan_Caster)) Equal to True
                                    Then - Actions
                                        Unit - Cause Lan_Caster to damage (Picked unit), dealing ((((Real((Level of Lan  for Lan_Caster))) x 100.00) + 100.00) + ((Real((Strength of Lan_Caster (Exclude bonuses)))) x 2.00)) damage of attack type Spells and damage type Normal
                                    Else - Actions
                                        Do nothing
                        Custom script:   call RemoveLocation(udg_Lan_Point2)
                        Custom script:   call RemoveLocation(udg_Lan_Point3)
                        Custom script:   call DestroyGroup(udg_Lan_Group)
            Else - Actions
                Do nothing
        Custom script:   call RemoveLocation(udg_Lan_Point)
        Custom script:   call RemoveLocation(udg_Lan_Target)
 
Chỉnh sửa cuối:
Tạo dummy rồi add cho nó ability SW, order nó cast facing of caster + xx hoặc - xx :-?
Cách này là bắn 3 tia theo hình quạt, còn thẳng thì chịu :D
À mà chắc thẳng thì tạo dummy ntn
- - -
o
-: dummy
o: caster
rồi order nó cast facing of caster thôi ;))


[/COLOR]

Trigger ko phải dạng slide, tuy nhiên có wait. Vậy có ảnh hưởng? :-?
Mã:
Lan
    Events
        Unit - A unit Begins casting an ability
    Conditions
        (Ability being cast) Equal to Lan 
    Actions
        Set Lan_Caster = (Casting unit)
        Set Lan_Target = (Target point of ability being cast)
        Wait 0.50 seconds
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Lan_Caster is alive) Equal to True
            Then - Actions
                Unit - Hide Lan_Caster
                Wait 1.50 seconds
                Unit - Unhide Lan_Caster
                Set Lan_Point = (Position of Lan_Caster)
                Special Effect - Create a special effect at Lan_Point using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
                Special Effect - Destroy (Last created special effect)
                [b]For each (Integer A) from 1 to 10, do (Actions)[/b]
                    Loop - Actions
                        Set Lan_Point2 = (Lan_Target offset by 150.00 towards ((Real((Integer A))) x 36.00) degrees)
                        Set Lan_Point3 = (Lan_Target offset by 300.00 towards ((Real((Integer A))) x 36.00) degrees)
                        Special Effect - Create a special effect at Lan_Point2 using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
                        Special Effect - Destroy (Last created special effect)
                        Special Effect - Create a special effect at Lan_Point3 using Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl
                        Special Effect - Destroy (Last created special effect)
                        Selection - Select Lan_Caster for (Owner of Lan_Caster)
                        Set Lan_Group = (Units within 500.00 of Lan_Target matching ((((Matching unit) is A structure) Not equal to True) and ((((Matching unit) is Mechanical) Not equal to True) and (((((Matching unit) is dead) Not equal to True) and (((Unit-type of (Matching unit)) Not equal to |c
                        Unit Group - Pick every unit in Lan_Group and do (Actions)
                            Loop - Actions
                                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                    If - Conditions
                                        ((Picked unit) belongs to an enemy of (Owner of Lan_Caster)) Equal to True
                                    Then - Actions
                                        Unit - Cause Lan_Caster to damage (Picked unit), dealing ((((Real((Level of Lan  for Lan_Caster))) x 100.00) + 100.00) + ((Real((Strength of Lan_Caster (Exclude bonuses)))) x 2.00)) damage of attack type Spells and damage type Normal
                                    Else - Actions
                                        Do nothing
                        Custom script:   call RemoveLocation(udg_Lan_Point2)
                        Custom script:   call RemoveLocation(udg_Lan_Point3)
                        Custom script:   call DestroyGroup(udg_Lan_Group)
            Else - Actions
                Do nothing
        Custom script:   call RemoveLocation(udg_Lan_Point)
        Custom script:   call RemoveLocation(udg_Lan_Target)
[/COLOR][/B]

Như này nó deal 10 lần là phải,bỏ Pick Every Unit ra khỏi loop đi
 
Tạo dummy rồi add cho nó ability SW, order nó cast facing of caster + xx hoặc - xx :-?
Cách này là bắn 3 tia theo hình quạt, còn thẳng thì chịu :D
À mà chắc thẳng thì tạo dummy ntn
- - -
o
-: dummy
o: caster
rồi order nó cast facing of caster thôi ;))
Mình làm kiểu dạng hình quạt và làm ra 2 trigger như thế này
Mã:
facing1
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Wave 
    Actions
        Unit - Create 1 Footman for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing ((Facing of (Triggering unit)) - 45.00) degrees
        Unit - Add Wave  to (Last created unit)
        Unit - Order (Last created unit) to Orc Tauren Chieftain - Shockwave ((Position of (Triggering unit)) offset by 0.00 towards ((Facing of (Triggering unit)) - 45.00) degrees)
        Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
Mã:
facing2
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Wave 
    Actions
        Unit - Create 1 Footman for (Owner of (Triggering unit)) at (Position of (Triggering unit)) facing ((Facing of (Triggering unit)) + 45.00) degrees
        Unit - Add Wave  to (Last created unit)
        Unit - Order (Last created unit) to Orc Tauren Chieftain - Shockwave ((Position of (Triggering unit)) offset by 0.00 towards ((Facing of (Triggering unit)) + 45.00) degrees)
        Unit - Add a 2.00 second Generic expiration timer to (Last created unit)
Nhưng mà khi vào thì mình chỉ thấy mỗi 2 tia là 1 tia chính giữa và 1 tia facing+45 còn tia -45 thì không biết như thế nào @@
Và có 1 số lúc tia nó bị lệch đi đâu ấy @@
 
Cần gì 2 trigger,dùng loop đi bạn

Mã:
For each (Integer A) from 1 to 3, do (Actions)
    Loop - Actions
        Set TempLoc = ((Position of (Triggering unit)) offset by 300.00 towards (((Facing of (Triggering unit)) - 50.00) + ((Real((Integer A))) x 25.00)) degrees)
 
Cho em hỏi nếu muốn kiểm tra xem một unit có đang dùng skill defend ko thì làm thế nào và sao em làm computer dùng skill bằng trigger mà cần dùng đến point (VD: blink, beath of fire,...) thì nó cứ đứng đực ra đến chết thôi.
 
Bạn nào chỉ giúp mình spell này với :
Mình thấy ở 1 số map có skill shockwave nhưng mà bắn ra hẳn 3 tia,vậy cho mình hỏi làm như thế nào vậy :9cool_pudency:
Mình có trong map ne
Mã:
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
                (Ability being cast) Equal to Triple Shockwave
    Actions
        Set Shockwave_caster = (Casting unit)
        Set Shockwave_Angle = (Angle from (Position of Shockwave_caster) to (Target point of ability being cast))
        For each (Integer A) from 1 to 2, do (Actions)
            Loop - Actions
                Unit - Create 1 dummy caster spell for (Owner of Shockwave_caster) at ((Position of Shockwave_caster) offset by 150.00 towards (Shockwave_Angle + ((Real((Integer A))) x 120.00)) degrees) facing (Position of Shockwave_caster)
                Unit - Add Shockwave (Short Range) to (Last created unit)
                Unit - Set level of Shockwave (Short Range) for (Last created unit) to (Level of Triple Shockwave for Shockwave_caster)
                Unit - Order (Last created unit) to Orc Tauren Chieftain - Shockwave (Position of Shockwave_caster)
                Unit - Add a 2 second Generic expiration timer to (Last created unit)
 
Status
Không mở trả lời sau này.
Back
Top