Здравствуйте. В общем столкнулся с проблемой не приятной.
Писал систему по нестандартному пику героев. ID нестандартным юнитам присваивал сам. Точнее дамикам, чисто для удобства. 'd000',d001' и тд.
Недавно тестил карту, и у друга странное поведение игры. Т.е. спецээфекты от триггерных способностей не создаются. Снаряди летят ровно, хотя по идее они меняют высоту во время полета. У меня снаряды летят как положено а у него тот же спелл, и снаряды летят коряво.
У героя так же заметно, что некоторые анимации не проигрываются, хотя я пикал того же героя, у меня все норм.
До этого был десинк при выборе героя, но я пока отключил тот триггер.
Просто все испробовал, может быть кто сталкивался с такой проблемой, хз.
Писал систему по нестандартному пику героев. ID нестандартным юнитам присваивал сам. Точнее дамикам, чисто для удобства. 'd000',d001' и тд.
Недавно тестил карту, и у друга странное поведение игры. Т.е. спецээфекты от триггерных способностей не создаются. Снаряди летят ровно, хотя по идее они меняют высоту во время полета. У меня снаряды летят как положено а у него тот же спелл, и снаряды летят коряво.
У героя так же заметно, что некоторые анимации не проигрываются, хотя я пикал того же героя, у меня все норм.
До этого был десинк при выборе героя, но я пока отключил тот триггер.
Просто все испробовал, может быть кто сталкивался с такой проблемой, хз.
Я даже скинул ему свой клиент, но проблемы остались. Все триггеры в карте на данный момент отключил, когда выяснял какогой триггер все же портачит, но увы проблема осталась. Возможно ли что в редакторе объектов, что то не так.
Принятый ответ
l_Avenger_l, то есть по твоему переменные вида XH8 это нормально?
раз ты всё помнишь то скажи мне что делает следующий кусок кода
раз ты всё помнишь то скажи мне что делает следующий кусок кода
call KG8(GID)
call KG8(GJD)
call LT7(EC8)
call EA8(t)
короче вопрос закрыт по причине того что большая часть кода обфусцирована
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован l_Avenger_l
Просто несколько спеллов юзал, все косячат именно у второго игрока но не у хоста. У хоста эффект создается и проигрывается то у второго игрока он не появляется как будто не создается.
Думаю мб какие файлы повреждены в карте...
Отредактирован Borodach
попробуй другой комп у второго запустить. Иначе, проблема в коде
Отредактирован nvc123
если хост твой друг а ты 2 игрок то эта проблема возникает у тебя а не у друга?
если да то кидай j файл
если нет то пусть твой друг сменит вар/операционку/комп/провайдера/место жительства/пол/...
и мне тут стало интересно как ты мог отключить весь код в карте
если без кода карту даже хоставать нельзя
триггеры лишь часть кода карты
Отредактирован l_Avenger_l
Мне просто стало интересно, чего вдруг, до этого все было ок. Еще была мысль, что файл карты немного покоцан, потому что постоянно его с собой таскаю, то дома то на работе редактирую)
да/нет ?
Отредактирован l_Avenger_l
Сколько работаю над картой да и вообще с вариком, первый раз такое.
код кидай
а ещё лучше вообще всю карту ибо рассинхрон может не только код вызывать
Отредактирован l_Avenger_l
function Bomb_C takes nothing returns boolean
return GetSpellAbilityId()=='A01F'
endfunction
local timer t=GetExpiredTimer()
local integer id=GetHandleId(t)
local unit u=LoadUnitHandle(Hash,id,0)
local unit dummy=LoadUnitHandle(Hash,id,1)
local real ang=LoadReal(Hash,id,2)
local real dis=LoadReal(Hash,id,3)
local group g=null
local unit n=null
if dis>0 then
call SaveReal(Hash,id,3,dis-28)
call SetUnitX(dummy,GetUnitX(dummy)+28*Cos(ang))
call SetUnitY(dummy,GetUnitY(dummy)+28*Sin(ang))
if dis<=LoadReal(Hash,id,4) then
call UnitAddAbility(dummy,'Arav')
call UnitRemoveAbility(dummy,'Arav')
call SetUnitFlyHeight(dummy,0,LoadReal(Hash,id,4))
endif
else
call DestroyTimer(t)
call FlushChildHashtable(Hash,id)
call KillUnit(dummy)
call DestroyEffect(AddSpecialEffect("Objects\\Spawnmodels\\Other\\NeutralBuildingExplosion\\NeutralBuildingExplosion.mdl",GetUnitX(dummy),GetUnitY(dummy)))
set g=CreateGroup()
call GroupEnumUnitsInRange(g,GetUnitX(dummy),GetUnitY(dummy),250,null)
loop
set n=FirstOfGroup(g)
exitwhen n==null
call GroupRemoveUnit(g,n)
if GetWidgetLife(n)>0.405 and IsUnitEnemy(n,GetOwningPlayer(u)) then
call UnitDamageTargetEx(u,n,100+50*GetUnitAbilityLevel(u,'ANcs'),ATTACK_TYPE_NORMAL,DAMAGE_TYPE_NORMAL,null)
call Unit_Stun(n,0.75+0.25*GetUnitAbilityLevel(u,'ANcs'))
endif
endloop
call DestroyGroup(g)
endif
set t=null
set u=null
set dummy=null
set g=null
set n=null
endfunction
local unit u=GetTriggerUnit()
local real xu=GetUnitX(u)
local real yu=GetUnitY(u)
local real x=GetSpellTargetX()
local real y=GetSpellTargetY()
local real dx=x-xu
local real dy=y-yu
local real ang=Atan2(dy,dx)
local real dis=SquareRoot(dx*dx+dy*dy)
local unit dummy=CreateUnit(GetOwningPlayer(u),'d003',xu,yu,ang*bj_RADTODEG)
local timer t=CreateTimer()
local integer id=GetHandleId(t)
call UnitAddAbility(dummy,'Arav')
call UnitRemoveAbility(dummy,'Arav')
call SetUnitFlyHeight(dummy,dis*0.4,dis/2)
call SaveUnitHandle(Hash,id,0,u)
call SaveUnitHandle(Hash,id,1,dummy)
call SaveReal(Hash,id,2,ang)
call SaveReal(Hash,id,3,dis)
call SaveReal(Hash,id,4,dis/2)
call TimerStart(t,0.04,true,function Bomb_T)
set u=null
set dummy=null
set t=null
endfunction
local trigger t=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(t,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(t,Condition(function Bomb_C))
call TriggerAddAction(t,function Bomb_A)
set t=null
endfunction
Кстати ребят а может быть портак из за импорта?, ну т.е. путь к эффектам у меня Effects\ юниты Units\ и здания Buildings\
обфусцированный код
l_Avenger_l, я про j файл что ты скинул
похоже на код доты
l_Avenger_l, в общем в таком коде что ты скинул может происходить всё что угодно
начиная с десинка и заканчивая призывом сатаны
вывод - нефиг тырить чужой код
да к тому же ещё и обфусцированный
Отредактирован nvc123
раз ты всё помнишь то скажи мне что делает следующий кусок кода