PDA

Orijinalini görmek için tıklayınız : Cranium Basher



BorisPeace
14/09/2010, 22:34
Cranium Basher (v6.68c)


Bir harita üzerinde çalışıyordum, sıkıldım :( Bunu yapacağımı söylemiştim :D Haydi Cranium Basher'ı inceleyelim:




http://www.playdota.com/img/items/49/icon.jpg |
+ |
http://www.playdota.com/img/items/35/icon.jpg |
+ |
http://www.playdota.com/img/items/72/icon.jpg |
= |
http://www.playdota.com/img/items/72/icon.jpg

Javelin |
+ |
Belt of giant Strength |
+ |
Basher Recipe |
= |
Cranium Basher
1500 Gold |
+ |
450 Gold |
+ |
1150 Gold |
= |
3100 Gold


Flavor Text:
"A powerful weapon, used to bash skulls in."

Özellikleri:

+40 damage
+6 strength
Bash (Passive)

Bash (Passive): %25 (melee) / %10 (ranged) 1.4 saniye 25 bonus damage ile Bash. 2 saniye cooldown'u vardır.



function Func0556 takes nothing returns nothing
local unit loc_unit01=GetAttacker()
local integer loc_integer01=25
local integer loc_integer02=GetPlayerId(GetOwningPlayer(GetAttac ker()))
local integer loc_integer03=GetHandleId(loc_unit01)
local real loc_real01=(TimerGetElapsed(timer001))
local real loc_real02=(LoadReal(hashtable001,(loc_integer03), (101)))
local boolean loc_boolean01=(LoadBoolean(hashtable001,(loc_integ er03),(99)))
local boolean loc_boolean02=(LoadBoolean(hashtable001,(loc_integ er03),(100)))
local boolean loc_boolean03=loc_real01<loc_real02
local boolean loc_boolean04=false
if IsUnitType(loc_unit01,UNIT_TYPE_MELEE_ATTACKER)==f alse then
set loc_integer01=10
endif
if GetRandomInt(0,100)<loc_integer01 then
set loc_boolean04=true
endif
if GetUnitAbilityLevel(loc_unit01,'A0JJ')>0 or GetUnitAbilityLevel(loc_unit01,'A081')>0 or GetUnitAbilityLevel(loc_unit01,'A0G5')>0 or GetUnitAbilityLevel(loc_unit01,'A09E')>0 then
call UnitRemoveAbility(loc_unit01,'A174')
set loc_unit01=null
return
endif
if loc_boolean01 and loc_boolean03==false and loc_boolean02==false then
call SaveReal(hashtable001,(loc_integer03),(101),((loc_ real01+2)*1.0))
if loc_boolean04==false then
call SaveBoolean(hashtable001,(loc_integer03),(100),(tr ue))
endif
elseif loc_boolean03 or loc_boolean02 then
call UnitRemoveAbility(loc_unit01,'A174')
call SaveBoolean(hashtable001,(loc_integer03),(99),(fal se))
call SaveBoolean(hashtable001,(loc_integer03),(100),(fa lse))
endif
if loc_boolean04 then
call UnitAddAbility(loc_unit01,'A174')
call SaveBoolean(hashtable001,(loc_integer03),(99),(tru e))
endif
set loc_unit01=null
endfunction

1) Bir unit'e saldırıldığında 2'yi oynat.

2) Aşağıdaki her şey doğruysa 3'ü oynat.

Saldırılan unit, saldıran unit'in dostu değil. (Allied unit)
Saldıran unit bir hero ya da Spirit Bear. (Lone Druid'in ayısı)
Saldıran unit bir ilüzyon değil.
Saldıran unit'in üzerinde Cranium Basher var.


3) Saldıran unit melee ise "Yüzde"yi 25'e eşitle. Saldıran unit ranged ise "Yüzde"yi 10'a eşitle. Saldıran unit'te aşağıdaki ability'lerden herhangi biri varsa 7'yi oynat. Ability'lerden hiçbiri yoksa 4'ü oynat.

A0JJ (Bash - Slardar)
A081 (Time Lock - Void)
A0G5 (Greater Bash - Barathrum)
A09E (Bash - Troll Warlord)

4) 0 ile 100 arası rastgele bir tamsayı tut. Bu tamsayı "Yüzde"den küçükse 5'i oynat. Büyükse 7'yi oynat.

5) Eğer şu anki zaman "BasherTime"dan büyükse 6'yı oynat. Küçükse 7'yi oynat.

6) "BasherTime" = "Şu anki zaman + 2 saniye" yap. Saldıran unit'e A174 ability'sini ekle. A174 bir spellbook ability'sidir (Başka spell'leri içinde bulunduran bir spell çantası diye düşünebilirsiniz.) ve için A175 ability'si vardır. (A175 = 1.4 saniye ve 25 bonus damage'a sahip %100 Bash)

7) Saldıran unit'ten A174 ability'sini kaldır.

1'de bir unit'e saldırılıp saldırılmadığını kontrol ettik.
2'de saldıran unit'in birkaç özelliğini kontrol ettik.
3'te saldıran unit'in üzerinde olmaması gereken ability'leri kontrol ettik.
4'te Basher yüzdesinin tutup tutmadığını kontrol ettik.
5'te Basher cooldown'unun geçip geçmediğini kontrol ettik. Daha sonra da eğer cooldown'da değilse 2 saniye cooldown koyduk.
6'da unit'e ataktan hemen önce %100 Bash koyarak o atakta Bash olmasını sağladık.
7'de bu %100 Bash'i kaldırdık.

Varılacak sonuçlar:

Herolar ya da Spirit Bear dışında hiçbir unit Cranium Basher ile Bash yapamaz.
İlüzyonlar Cranium Basher ile Bash yapamaz.
Slardar Bash öğrendiyse, Troll Warlord melee durumda ise, Void Time Lock öğrendiyse, Barathrum Greater Bash öğrendiyse Cranium Basher ile Bash yapamazlar.
Allied bir unit'e saldırırken (deny), Cranium Basher çalışmaz.
Cranium Basher ile Bash yaptıktan sonraki 2 saniye içinde tekrar Bash yapamazsınız.
Cranium Basher'ı aldıktan sonraki ilk atağınızda Bash yapamazsınız.


Cranium Basher alabilecek herolar:

http://www.playdota.com/img/hero/75/icon.gif Balanar
http://www.playdota.com/img/hero/44/icon.jpg Beastmaster
http://www.playdota.com/img/hero/48/icon.jpg Alchemist
http://www.playdota.com/img/hero/43/icon.gif Anti-Mage
http://www.playdota.com/img/hero/97/icon.gif Mortred
http://www.playdota.com/img/hero/124/icon.gif Slark
http://www.playdota.com/img/hero/100/icon.gif Ursa
http://www.playdota.com/img/hero/64/icon.gif Rikimaru
http://www.playdota.com/img/hero/67/icon.gif ve http://media.playdota.com/hero/67/skill-0.gif Lone Druid ve Spirit Bear
http://www.playdota.com/img/hero/71/icon.gif Yurnero
http://www.playdota.com/img/hero/122/icon.jpg N'aix

Bunlar sadece birkaç örnek. Burada önemli olan oyununa göre item seçmek. Vigoss'un Pudge'a Basher alarak ezdiği maçlar var (:


Kısa bir kafa dağıtma için yazmıştım yine beklediğimden uzun sürdü -.-


Saygılar,
Boris

junior10der
14/09/2010, 22:40
Bikaç sorum olacak:

Krebe deny yaparken ben kafasında stun işareti gördüğümü hatırlıyorum. Fake de değildi hani. Tam hatırlamıyorum ama belki de slardarla falan yapmışımdır.

Diğeri ilüzyonlar bash halindeki birine bash vurabilir deniyor doğru mu?

Realist
14/09/2010, 22:42
Değişik eklemeler yapılmış ve sade olmuş.Beğendim güzel =)

BorisPeace
14/09/2010, 22:43
Bikaç sorum olacak:

Krebe deny yaparken ben kafasında stun işareti gördüğümü hatırlıyorum. Fake de değildi hani. Tam hatırlamıyorum ama belki de slardarla falan yapmışımdır.

Diğeri ilüzyonlar bash halindeki birine bash vurabilir deniyor doğru mu?


Varılacak sonuçlar:

İlüzyonlar Cranium Basher ile Bash yapamaz.
Allied bir unit'e saldırırken (deny), Cranium Basher çalışmaz.



( ._.)

junior10der
14/09/2010, 22:44
( ._.)

Teşekkürler .

Ryogo
14/09/2010, 22:47
borisin rehberlerini anlamak güç jass kodu fln hiçbişi anlamadım :Z

BorisPeace
14/09/2010, 22:52
Kodu anlamana gerek yok ilgilenen olur diye yazdım (: Koddan çıkarılacak sonuçları yazdım zaten (:

Edit: 2 ekleme daha yaptım ^^

Sylar
14/09/2010, 23:03
( ._.)

Şu ifadeye hastayım (:

MetoLeto
15/09/2010, 00:49
Şu ifadeye hastayım (:

O da sana hasta (:

BorisPeace
15/09/2010, 01:00
Item'ı alması gereken herolar bölümü ünlüymüş burada (: Ekledim.

Ryogo
15/09/2010, 01:10
mom-basher iyi ikili oluyor -.-

2pac4life
15/09/2010, 01:38
bence wr da iyi gidiyor :)

pier0ws
15/09/2010, 01:50
boris kodları koyma artık

BorisPeace
15/09/2010, 02:02
boris kodları koyma artık

Tamam :(

pier0ws
15/09/2010, 02:03
Tamam :(

yanlış anlama koy da anlayan yok :)

BorisPeace
15/09/2010, 02:20
Olsun ben koyayım da isteyen açar spoiler'ları ^^ İstemeyen de açmadan okur (:

Jedi
15/09/2010, 02:31
Kodları koymaya devam et ben jass biliyorum :C Ilizyonlarda basherın çalışması lazım değil mi bu koda göre yoksa condition kısmı mı yok burda?

pier0ws
15/09/2010, 02:42
dur boris gelsin de seni bi ezsin :)

belki de borisin bilgileri çok alt seviyededir de biz onu çok iyi sanıyoruzdur :)

BorisPeace
15/09/2010, 12:46
Kodları koymaya devam et ben jass biliyorum :C Ilizyonlarda basherın çalışması lazım değil mi bu koda göre yoksa condition kısmı mı yok burda?

Evet kodun tamamı değil bu, ne yazık ki Icefrog'un direktifleriyle herhangi bir kodu tam olarak paylaşmak yasak; sadece belli noktaları ya da istenen kısımları paylaşabiliyoruz. Senin söylediğin kısım burada:


if integers098[integer355]>0 and IsUnitType(GetTriggerUnit(),UNIT_TYPE_STRUCTURE)== false and IsUnitIllusion(GetAttacker())==false and Func0302(GetAttacker(),integers084[integer152])==true then
call Func0568()


dur boris gelsin de seni bi ezsin :)

Böyle bir cümleye ne gerek var şimdi -.-

Realist
19/09/2010, 04:46
Hatalı bilgi var.Allied unite saldırırkende ( deny ) basher çalışır.

CoNqUeReR
19/09/2010, 09:42
Hmm kodun acıklamasını okuyunca anladım ama koda bakınca hic bisey anlamadım zZz... Guzel rehber olmus beklendigi uzere bu arada basher +strde vermiyo muydu??

[UnderqRound.]
19/09/2010, 10:20
Hmm kodun acıklamasını okuyunca anladım ama koda bakınca hic bisey anlamadım zZz... Guzel rehber olmus beklendigi uzere bu arada basher +strde vermiyo muydu??

Özellikleri:
+40 damage
+6 strength
Bash (Passive)

ayrıca snipe bash kassak çalışırmı?

BorisPeace
19/09/2010, 13:43
^ Niye çalışmasın :/


Hatalı bilgi var.Allied unite saldırırkende ( deny ) basher çalışır.

Replay verirsen sevinirim ^^

Realist
19/09/2010, 16:38
Replay verirsen sevinirim ^^

http://rapidshare.com/files/419970125/basher.w3g

Dakika 21.20 ;)

T-ThePhantomicLord
19/09/2010, 16:55
Kim vuruyor ayıptır sorması? Ayrıca bir tek Lucifer'da basher var o da 21:20'de base'deydi :D

Realist
19/09/2010, 17:03
Tam olarak 21.24 de vuruyor.Kaçırılmaması için 21.20den itibaren izle dedim 4 saniyelik fark var arada ve basede felanda değildim nerden uydurdun.Ve lucifer vuruyor evet.

T-ThePhantomicLord
19/09/2010, 17:05
Üstte 21:20 yazarken base'de olduğuna eminim diyebilirim. Ama replay olduğu için 3 dk'lık mod süresiyle ilgili bir kayma olabilir tam bilmiyorum...

Realist
19/09/2010, 17:07
Replay visionun altındaki 21.20.Sağ alt köşede.

BorisPeace
19/09/2010, 17:24
İndirmeye çalışıyorum ama hep "Server çok dolu, 2 dakika bekleyin." diyor -.-

Replayi indirdiğimde yazarım (:

Jedi
19/09/2010, 17:25
Doğru replayı koyduğundan emin misin?

T-ThePhantomicLord
19/09/2010, 17:27
Bildiğin Bash vuruyor lan :D Bashin damage dışında bütün etkilerini görebiliyorum... Damage yok demiyorum sadece damage farkedilmiyor tam olarak...

Jedi
19/09/2010, 17:31
Bende 2 saattir hero deny arıyorum creep denymiş :D Bide orda ard arda 4-5 kere bash vuruyor maşallah :D

BorisPeace
19/09/2010, 18:47
Evet oyunda kendi creep'ine deny yaparken Bash yapmış. Neden olabileceğini araştırıyorum şu an, birkaç arkadaşıma da ilettim replayi (benden biraz daha iyiler :D).

CoNqUeReR
19/09/2010, 18:50
Basherdan emin degilim fakat pasif skiller creblerde calısıyo sniperın headshotu buna en iyi ornek

T-ThePhantomicLord
19/09/2010, 18:53
Kesin Quelling Blade işleri bozmuştur :D

BorisPeace
19/09/2010, 20:15
Ahaha iyice inceledim ve cevabı buldum (: Yanlış bir şey yazdım diye çok korkmuştum :D Yazdığım herşey doğru oysaki :D

Icefrog böyle kodlamaya devam ederse buglar bitmez tabi -.-

Ice'a gönderdim bunu (:

T-ThePhantomicLord
19/09/2010, 20:24
Yazdığım herşey doğru oysaki :D

Burda Doom creepe son vuruş yaparken değil bir önceki vuruşunda bash çıktığı için mi demek istiyorsun¿

BorisPeace
19/09/2010, 21:11
Aynen ^^ Kod açıklamasında göreceğiniz gibi, Doom son düşman creep'e vurduğunda üzerinde %100 Bash spell'i oluyor. Daha sonra dost creep'e vurduğunda, bu Bash'in kaldırılması için hiçbir şey yapılmıyor. Yani kısaca düşman creep'e Bash tuttuktan sonra dost unit'lere vurduğunuz her vuruşta %100 Bash'iniz olacaktır :D

StrideR
20/09/2010, 15:44
Aynen ^^ Kod açıklamasında göreceğiniz gibi, Doom son düşman creep'e vurduğunda üzerinde %100 Bash spell'i oluyor. Daha sonra dost creep'e vurduğunda, bu Bash'in kaldırılması için hiçbir şey yapılmıyor. Yani kısaca düşman creep'e Bash tuttuktan sonra dost unit'lere vurduğunuz her vuruşta %100 Bash'iniz olacaktır :D

hmm güzel ayrıntıymış :D bunu denicem! (bu arada teşekkürler bilgilendrme içn :D)

ForLighT
20/09/2010, 17:13
Rehber için teşekkürler de....
Benim anlamadığım nokta tmm codu anlamadım bişey demiyorum açıklama demişsin 2.yi oynat 3 ü oynat 5i oynat demişsin kimi oynatıyon neyi oynatıyon abi bundanda bişey anlamadım açıklamasının bile açıklamasına gerek duymuşsun ve açıklamışsın saol ama bundam çıkardığımız ders ne halk dili ile biraz bundan bahsetsen yada amaç ne onu anlasam mevzuya çok fransız kaldım kusura bakma yani o kadar detaylı anlatmışsınki insanın ulan ne bashmış arkadaş diyesi geliyor. Tekrar teşekkür ediyorum :D

BorisPeace
20/09/2010, 17:46
Basit görülen birçok şey çok karışık bir şekilde kodlanmıştır aslında :D Özellikle kodcular arasında ün salan spell kodu Battle Hunger'dır. Bu kadar saçma dolambaçlı kodlanan bir şey olamaz ama sonuca bakıyoruz:

Çalışıyor mu? Çalışıyor :D

tobepeople
16/10/2010, 17:39
spirit breaker da basher işe yarıyor 25 lvl kende çalışır boşa skil seçmemeniz gerek demeye gerek yok önemli olan heroyu hızlandırmak yanına pt +Butterfly yada assault yada hepsini kasarsanız açıkça görüceksiniz ben kitlemek için yaparım genelde :) sürekli bash çakıyor bash ıskalarsa iter arada 1-2 boş olabilir ama bashlıyor bariz gözle görülecek şekilde pt +ass+fly alın deneyin lütfen :)
replay istemene gerek olduğunu sanmıyorum illaki gören olmuştur yada kendindene sırf 1-2 hatalı şey gördüm diye üye oldum diğeri de hand of midas işe yaramaz davasıydı özellikle doomda onun ilk skiline ek olarak işe yarar ve creep bittiğinde gelmesini beklerken nc den bir creep kesilip gelinerek çok hızlı lvl atlanılır ayrıca 2 kişi kasıyorsanız creepleri daha fazla çalarsınız ve düşmanınız deny edemez creepleri siz alırsınız ekstra goldu saymıyorum bile sırf bunun için üye oldum derken bu konuyu gördüm buna da yorum yazam dedim daha girmem siteye sadece bir şey ararken ilişti gözüme :)