[ Обновленные темы · Новые сообщения · Участники · Поиск · RSS ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Форум » Моддинг » 5.3. Идеи скриптов и их обсуждение » Внезапная смерть (я пишу скрипт)
Внезапная смерть
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
В какой-то теме обсуждалось создание новой внезапной смерти. Я решил взяться за создание армагеддона (как в предыдущих играх серии). Но столкнулся с проблемой. Я покопался в stdvs.lua и нашел место, отвечающее за внезапную смерть. Я заменил один из вариантов внезапной смерти (тот, где у червей становится 1 хп), но в игре ничего не изменилось. Просто по истечении времени таймера у всех червей хп становится 1, а функция, вписанная мной не выполняется. Вопрос: в чем проблема?



-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
Проверенные
Сообщений: 414
Реп: 5
Ты где изменял?

 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
-=Misha=-, в stdvs.lua, читай внимательнее.



-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
Саш
Проверенные
Сообщений: 341
Реп: 8
Думаю что тебя наведёт на мысль то что когда у червей становиться 1 хп(Внезапная смерть), то вода тоже поднимается. Может вопрос в этом?

My Little Pony
 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
Саш, нет, вода не поднимается.



-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
Саш
Проверенные
Сообщений: 341
Реп: 8
rocketvadim, у меня поднималась. Я с другом в трен играл, я островв посторил, потом была внезапная смерть и мой остров затопило. Но мы не вытерпели и вышли из игры. Или зачем спрашивается как быстро будет подниматся вода когда выбираешь внезапную смерть у всех 1 хп?

My Little Pony
 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
Саш, у меня ничего не поднимается. просто становится 1 хп.



-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
Герыч
Админы
Сообщений: 1240
Реп: 60 / Инв: 5
Когда пишешь луа скрипт, его можно отлаживать, выводя comment-сообщения. пробуй их вставлять, чтобы узнать, выполняется ли строка кода или нет.

________________________
__|____|____|____|____|__
|____|____|____|____|____|
__|___бицца головой___|__
|____|____|сюда|____|____|
__|____|____|____|____|__
|____|____|____|____|____|
 
firsacho
Админы
Сообщений: 3812
Реп: 84 / Инв: 15
Quote (rocketvadim)
Я заменил один из вариантов внезапной смерти (тот, где у червей становится 1 хп), но в игре ничего не изменилось. Просто по истечении времени таймера у всех червей хп становится 1, а функция, вписанная мной не выполняется. Вопрос: в чем проблема?

Приведи в данной теме код того что ты прописал в луа скрипт. Сложно говорить в чем причина, когда не видишь проблему)




Смысл жизни в том, чтобы жизнь имела смысл... (firsacho 2005)
Рай придуман, чтобы не страшно было умирать. Ад придуман, чтобы не страшно было жить. (firsacho 2007)
Мир делиться на два типа людей: Бездарные трудоголики и Талантливые лентяи. (firsacho 2008)

mod.worms.pro - мод Worms Renewation для Worms4
 
SW_Krash
Проверенные
Сообщений: 818
Реп: 28 / Инв: 7
да =) код в студию =)))

Всё что ни делается, делается в Китае(SW_Krash, 2009)
Мир делиться на два типа людей: Бездарные трудоголики и Талантливые лентяи. (firsacho 2008)
Я отрицаю вашу реальность и заменяю её своей!(Адам Севидж, 200x)
OFFTOP SWEAT OFFTOP(фольклор)

 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
ок. я решил сделать армагеддон путем создания нескольких авиа ударов. Я взял функцию lib_CreateAirStrike(направление, цель, оружие). направление я прописал 90 (это ведь градусы, не так ли?), в цель поставил Worm00, оружие взял Grenade. А теперь коды.
То, что было:
Code
function StartSuddenDeath()
     -- called at start if No game timer

     -- Set Sudden Death Options
     -- (0 = One health, 1 = Water rise, 2 = GameOver)

     StartedSuddenDeath = true

     local scheme = QueryContainer("GM.SchemeData")
     if scheme.SuddenDeath == 0 then
        SendMessage("Comment.SuddenDeath")
        lib_SetAllWormsEnergy(1)
     -- unecessary (we can switch it on and off by the later level rise button)
     elseif scheme.SuddenDeath == 1 then
        SendMessage("Comment.SuddenDeath")
     elseif scheme.SuddenDeath == 2 then
        RoundOver()
        SendMessage("GameLogic.Draw")
     end
       
     -- Set Water Rise Speed
     -- (0 = No Rise, 1 = Slow rise, 2 = Medium rise, 3 = fast rise)
     if scheme.WaterSpeed == 0 then
        SetData("Water.RiseSpeed.Current", 0)
     elseif scheme.WaterSpeed == 1 then
        SetData("Water.RiseSpeed.Current", GetData("Water.RiseSpeed.Slow") )
     elseif scheme.WaterSpeed == 2 then
        SetData("Water.RiseSpeed.Current", GetData("Water.RiseSpeed.Medium") )
     elseif scheme.WaterSpeed == 3 then
        SetData("Water.RiseSpeed.Current", GetData("Water.RiseSpeed.Fast") )
     end

end

То, что стало:
Code
function StartSuddenDeath()
     -- called at start if No game timer

     -- Set Sudden Death Options
     -- (0 = One health, 1 = Water rise, 2 = GameOver)

     StartedSuddenDeath = true

     local scheme = QueryContainer("GM.SchemeData")
     if scheme.SuddenDeath == 0 then
        SendMessage("Comment.SuddenDeath")
        lib_CreateAirstrike(90, Worm00, Grenade)
     -- unecessary (we can switch it on and off by the later level rise button)
     elseif scheme.SuddenDeath == 1 then
        SendMessage("Comment.SuddenDeath")
     elseif scheme.SuddenDeath == 2 then
        RoundOver()
        SendMessage("GameLogic.Draw")
     end
       
     -- Set Water Rise Speed
     -- (0 = No Rise, 1 = Slow rise, 2 = Medium rise, 3 = fast rise)
     if scheme.WaterSpeed == 0 then
        SetData("Water.RiseSpeed.Current", 0)
     elseif scheme.WaterSpeed == 1 then
        SetData("Water.RiseSpeed.Current", GetData("Water.RiseSpeed.Slow") )
     elseif scheme.WaterSpeed == 2 then
        SetData("Water.RiseSpeed.Current", GetData("Water.RiseSpeed.Medium") )
     elseif scheme.WaterSpeed == 3 then
        SetData("Water.RiseSpeed.Current", GetData("Water.RiseSpeed.Fast") )
     end

end




-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.


Сообщение отредактировал rocketvadim - СР, 26.01.2011, 17:04:54
 
SW_Krash
Проверенные
Сообщений: 818
Реп: 28 / Инв: 7
lib_CreateAirStrike - нет гарантии что это рабочая функция... хотя... нужно провести эксперимент... в скрипте lib_help заменить старую функция на ниже приведённую... и попробовать использовать воздушный удар... толстяка, бычий блиц... и посмотреть результат
Code

function lib_CreateAirstrike(direction, target, weapon)
    SetData("Text.TestComment", direction..target..weapon)  
    SetData("CommentaryPanel.Comment", "Text.TestComment")
    SendMessage("CommentaryPanel.ScriptText")
    SetData("Airstrike.Direction.Radians", direction)  
    SetData("Airstrike.TargetEntity", target)
    SetData("Airstrike.WeaponProperties", weapon)
    SendMessage("GameLogic.CreateAirstrike")
end

Если мой скрипт не заработает... (эито врятли но может быть) нужно заменить строчку SetData("Text.TestComment", direction..target..weapon) на строчку SetData("Text.TestComment", 'zarabotalo')

Кто первый сделает тот молодец =)


Всё что ни делается, делается в Китае(SW_Krash, 2009)
Мир делиться на два типа людей: Бездарные трудоголики и Талантливые лентяи. (firsacho 2008)
Я отрицаю вашу реальность и заменяю её своей!(Адам Севидж, 200x)
OFFTOP SWEAT OFFTOP(фольклор)

 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
SW_Krash, я проверил. Никаких изменений. Комментариев не появилось.



-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
SW_Krash
Проверенные
Сообщений: 818
Реп: 28 / Инв: 7
оставь функцию и играй =) может когда-нить вылезет каммент... хотя наврятли...

а пока что можно считать функцию мёртвой =)))

хотя может как-то её оживит =) дерзайте =)


Всё что ни делается, делается в Китае(SW_Krash, 2009)
Мир делиться на два типа людей: Бездарные трудоголики и Талантливые лентяи. (firsacho 2008)
Я отрицаю вашу реальность и заменяю её своей!(Адам Севидж, 200x)
OFFTOP SWEAT OFFTOP(фольклор)

 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
тогда нужно придумать другой вариант, с помощью которого можно скидывать с неба камни. у firsacho был вариант спаунить мины. но в этом случае будет мешать звук таймера мины. возможно его можно убрать через WeapTwk, но хз.



-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
Woitek
Проверенные
Сообщений: 523
Реп: 57 / Инв: 11
CreateAirstrike is not bad idea. For work this need be in map Dummy with lib Axis. For example dummy have name Comet 1. So

function CreateAirstrike()
SetData("Airstrike.Direction.Radians", 3.14)
SetData("Airstrike.TargetEntity", "Comet1")
SetData("Airstrike.WeaponProperties", "kWeaponAirstrike")
SendMessage("GameLogic.CreateAirstrike")
end

Know because this function is used in worms3d map ice,ice maybe :)

 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
mambaczarna, oh, yes! I wrote your parametres into the script. It still doesn't work full, but there is a change. Airstrike does'nt appear, but worms' HP doesn't change! And SW_Krash's comment appears! I think, problem is in the dummy. I'll try to fix it.

Перевод:
О, да! Я ввел параметры, данные Woitekom. Воздушного удара не появилось, но зато хп червей не изменилось и комментарий SW_Krash'a появился. Я думаю, проблема с отсутствием айрстрайка в болванке. Я попытаюсь ее исправить.

Добавлено (26.01.2011, 22:14)
---------------------------------------------
Только что нашел еще один интересный баг. После выполнения скрипта ход не кончается. Ни после применения оружия, ни даже после утопления червяка.




-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
Герыч
Админы
Сообщений: 1240
Реп: 60 / Инв: 5
Quote (SW_Krash)
а пока что можно считать функцию мёртвой =)))

Не факт - если она нигде не вызывается - не значит она мёртвая, просто не используется.
Quote (rocketvadim)
90 (это ведь градусы, не так ли?)

Не факт, ибо это может быть радианы, то есть вместо 90 надо написать 90*(3.14/180)


________________________
__|____|____|____|____|__
|____|____|____|____|____|
__|___бицца головой___|__
|____|____|сюда|____|____|
__|____|____|____|____|__
|____|____|____|____|____|
 
Герыч
Админы
Сообщений: 1240
Реп: 60 / Инв: 5
Quote (rocketvadim)
Только что нашел еще один интересный баг. После выполнения скрипта ход не кончается. Ни после применения оружия, ни даже после утопления червяка.

Признак того, что строка кода приводит к ошибке. То есть нет синтаксической ошибки, а ошибка в использовании функции или ещё чего-то.

Найти строчку кода, которая даёт ошибку легко - надо выводить комменты (1, 2, 3, ... ) между каждыми строками кода. Какого числа не будет - там и ошибка.


________________________
__|____|____|____|____|__
|____|____|____|____|____|
__|___бицца головой___|__
|____|____|сюда|____|____|
__|____|____|____|____|__
|____|____|____|____|____|
 
Проверенные
Сообщений: 2848
Реп: 60 / Инв: 6
Quote (Герыч)
Не факт, ибо это может быть радианы, то есть вместо 90 надо написать 90*(3.14/180)

я написал 3.14, как у Woiteka.
Quote (Герыч)
Признак того, что строка кода приводит к ошибке. То есть нет синтаксической ошибки, а ошибка в использовании функции или ещё чего-то.
Найти строчку кода, которая даёт ошибку легко - надо выводить комменты (1, 2, 3, ... ) между каждыми строками кода. Какого числа не будет - там и ошибка.

В какой строке кода ошибка я знаю, я менял только одну строку. Скорее всего, я неправильно указал один из параметров. Надо понять, что конкретно я указал неправильно: направление, цель или оружие. Направление 3.14, цель - какой-то эмиттер с карты, оружие - kWeaponAirStrike.




-------------------------------------------------------------
And when the sun is shining, there is justice for all...
And all the people will remember that funny "war".
War, which was so dark in the beginning and so shiny in the end.
But now it's over. Over for all.
-------------------------------------------------------------
Я сюда захожу только из-за Game Project. И да, я больше не модер, поэтому не надо писать мне тонны лс с просьбами кого-либо забанить. И еще: черви меня не интересуют. Совсем. Поэтому, даже не напоминайте мне про них - вызовете большой БУГУРТ.
 
Форум » Моддинг » 5.3. Идеи скриптов и их обсуждение » Внезапная смерть (я пишу скрипт)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: