Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Информационная доска

Данный раздел предназначен для обсуждения, а также решения технических проблем связанных с серверной частью. Обсуждения касательно игровых клиентов ведутся здесь.

1. Во время создания новой темы аккуратно оформляйте её, не допускайте грамматических ошибок.
2. Описывая проблему старайтесь, как можно больше рассказать о ней, а так же о действиях с сервером после которых она возникла, по возможности подкрепите информацию логами.
3. Если вопрос касается проблемы в работе сервера, то обязательно прикрепляйте список плагинов (введите в консоли сервера: meta list и amxx plugins), настройки server.cfg, логи. Так же указывайте операционную систему, версию HLDS (введите к консоли сервера: version) и где хостится сервер.

Длинную информацию скрывайте под спойлер.
2 страниц V   1 2

фикс плангинов для амх мода

, помощь начинающим скриптологам
Статус пользователя zippel
сообщение 26.7.2009, 23:48
Сообщение #1


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Люди помогите мне решить баг с плагином. У меня стоит amx 0.9.9, метамод 1.19.0.0 +3боты 1.5. Я поставил плагин glow_by_health.amx, он работает как бы нормально, это если смотреть из ситуации в игровом режиме. однако стоит открыть консоль сервера... как сразу в глаза кидается предупреждение об ошибке от модуля фан. Мне интересно узнать о том как бы его починить и я надеюсь вы мне в этом поможете.
[attachment=8893:error.PNG]


----------------------------------

Баг решён. Всем спасибо за содействие. Ответы и метод устранения в седьмом сообщении... пост №7

* * *


... и не вздумайте тут флудить :=)


Отредактировал: zippel, - 28.7.2009, 23:48
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
DeHu
сообщение 26.7.2009, 23:52
Сообщение #2
Стаж: 17 лет

Сообщений: 1015
Благодарностей: 255
Полезность: 0

zippel,
хех
переходи на амхх
все, что могу посоветовать
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя zippel
сообщение 27.7.2009, 0:01
Сообщение #3


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(DeHu @ 27.7.2009, 0:52) *
zippel,
хех
переходи на амхх
все, что могу посоветовать


спасибо, однако совет не принят...

-------------
(-1)*

Отредактировал: zippel, - 27.7.2009, 0:02
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Fedcomp
сообщение 27.7.2009, 1:52
Сообщение #4
Стаж: 17 лет

Сообщений: 3899
Благодарностей: 701
Полезность: 0

Это amx к сожалению причину ошибки он не указывает
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя zippel
сообщение 27.7.2009, 2:32
Сообщение #5


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(Fedcomp @ 27.7.2009, 2:52) *
Это amx к сожалению причину ошибки он не указывает


хм.. у вас все выдаю такие свежие идей. По моему для опытного скриптёра вполне хватает инфы про то в какой строке сбой...
читай p.s или я буду ставить минусы таким умникам... ты вопрос слышал. Вот и отвечай по теме, и не надо тут рассказывать что к сожалению, он не может... меня если ты не понял интересует совсем другой этап...

В крайнем случае - я буду вам очень благодарен, если вы мне поможете его чуток модернизировать. Например: у каждой команды разные отетнки, а то бывает насандаливаеш своих как чужих; уменьшить толшину ауры, потому что иногда игроки выглядят как будто в скафанде.

Отредактировал: zippel, - 27.7.2009, 2:48
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
holoc
сообщение 27.7.2009, 3:02
Сообщение #6
Стаж: 19 лет

Сообщений: 749
Благодарностей: 5723
Полезность: 0

Цитата(zippel @ 27.7.2009, 2:32) *
По моему для опытного скриптёра вполне хватает инфы про то в какой строке сбой...
В твоем плагине 53 строки, ошибка вылетает на 53 строке, в которой написано
Код
}
Что должен сказать опытный скриптер?

Правильно, он должен сказать, что такого рода ошибки появляются в любом языке программирования, если где-то не закрыто условие if, или есть незакрытый цикл. Только в данном случае такого не наблюдается. Чтобы тебе помочь, нужно либо охренительно разбираться в языке PAWN и во всех его различиях во всех версиях, либо по крайней мере иметь на руках инклуды от требуемой версии амх-а как минимум. Таких людей очень мало и на форуме они проявляют активность довольно редко.

И рекомендации обновиться до новой версии амхмода далеко не лишены смысла, потратив два-три часа ты без проблем соберешь новый сервер и найдешь все необходимые тебе плагины, оптимизированные под новую версию. Если конечно есть хотя бы минимальный опыт в сборке серверов.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 10 раз
   + Цитировать сообщение
Статус пользователя zippel
сообщение 27.7.2009, 4:03
Сообщение #7


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(holoc @ 27.7.2009, 4:02) *
В твоем плагине 53 строки, ошибка вылетает на 53 строке, в которой написано
Код
}
Что должен сказать опытный скриптер?

Правильно, он должен сказать, что такого рода ошибки появляются в любом языке программирования, если где-то не закрыто условие if, или есть незакрытый цикл. Только в данном случае такого не наблюдается. Чтобы тебе помочь, нужно либо охренительно разбираться в языке PAWN и во всех его различиях во всех версиях, либо по крайней мере иметь на руках инклуды от требуемой версии амх-а как минимум. Таких людей очень мало и на форуме они проявляют активность довольно редко.

И рекомендации обновиться до новой версии амхмода далеко не лишены смысла, потратив два-три часа ты без проблем соберешь новый сервер и найдешь все необходимые тебе плагины, оптимизированные под новую версию. Если конечно есть хотя бы минимальный опыт в сборке серверов.


Дело в том что я довольно не плохо разбираюсь в amx x, не раз собирал srv на этом моде. И явно трачу 2-3 часа скорее на разгребание кривых плагинов, что как я понял чаще всего встречаются в amx. Вовторых я не когда не юзал о-о`вский пак, просто сегодня меня занесло на amxmod.net и я решил отведать что же это за детище та такое. И понял одно - зря забросили его разработку, имхо, лутче бы вместо amxx делали до конца amx, потому что он куда лучше... был бы! Если бы его апдейтили как x. В третих, я понаходил несколько прикольных плагинов и теперь про100 не хочу слазить с 0.9.9. Вот уже около 14 часов играю с ботами 1.5, такое впечатление что кс на прохождение... короче люди этих два мода можно сравнивать как html и пхп. На последок хочу лиш сказать: если бы я шарил в PAWN, как сказал Холос, я бы непременно писал под Amх ибо он куда проще.

------------ 27,07,2009 5:38 АМ ------------

Короче всем спасибо за помощь и добрые советы. Разобрался сам, в принципе как всегда. Решил проблему всем известным методом тыка, удалив целую функцию или как вы там её называете... и получилось что всё работает, причём без ошибок!
Код

/*
*   HISTORY^
*   Glow by Damege
*   By Freecode (лол)  
*   Version: 1.1
*
*   Modifed by ..:ZASTRELIS:.. ||SPLASH ATTACK
*   Version 1.2a
*
*   This plugin will make all players glow depending on their health.
*   100 health = green || 1 health = red
*   If you go from 100 - 1 slowly it will change you color slowly
*   from green to red.
*    
*
*  Commands:
*  ========
*  amx_healthglow <1 = On || 0 = Off>
*
*  To Do:
*  ========
*  Nothing  
*
*   Have Fun
*/
#include <amxmod>
#include <fun>

public event_damage(id){
  if (get_cvar_num("amx_healthglow")!=1) return PLUGIN_HANDLED
  new health = get_user_health(id)
  new Float:Red = ((1.0 - (float(health) / 100.0)) * 255.0)
  new Float:Green = ((float(health) / 100.0) * 255.0)
  set_user_rendering(id, kRenderFxGlowShell, floatround(Red), floatround(Green), 0, kRenderNormal, 19)
  return PLUGIN_HANDLED
}


public plugin_init(){
  register_plugin("Glow by Health","1.2a","Freecode")
  register_event("Damage","event_damage","b")  
  register_cvar("amx_healthglow","1")
}


p.s: прошу не закрывать тему!

Отредактировал: zippel, - 27.7.2009, 7:20
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
DeHu
сообщение 27.7.2009, 6:57
Сообщение #8
Стаж: 17 лет

Сообщений: 1015
Благодарностей: 255
Полезность: 0

zippel,
ты не умеешь просить и спрашивать

не отвечу в следующий раз
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя zippel
сообщение 27.7.2009, 7:09
Сообщение #9


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(DeHu @ 27.7.2009, 7:57) *
zippel,
ты не умеешь просить и спрашивать

не отвечу в следующий раз



та ладно... не обижайся. Я слегка погарячился, бывает sad.gif. Много не отдыхал, вот и злюсь из за каждых пустяков. Что касается моих постов, то я не виноват что не умею их писать... в этом уж не надо меня упрекать :).

ps.gif может быть когда то я научусь писать посты?!
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mozart-1
сообщение 27.7.2009, 10:31
Сообщение #10
Стаж: 18 лет

Сообщений: 614
Благодарностей: 98
Полезность: 172

обнови includes
а то даже бывает вроде 1.8.1 а не компилиться ниче
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя zippel
сообщение 27.7.2009, 12:45
Сообщение #11


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(mozart-1 @ 27.7.2009, 11:31) *
обнови includes
а то даже бывает вроде 1.8.1 а не компилиться ниче


бугагага, чувак какой тебе тут инклудес показался? В плагине 5 строчек, которые как ты я вижу не понял. Они добавляют ауру свечения и изменяют её когда меняется хп у игрока. Правда я так до сих пор не понимаю как он действует, за щёт демаги или количества хп...

---------- Вопрос №2 ----------

Вот например я очень часто встречаю в плагине слово "authid". И меня терзает сомнение - как например в плагине gag сделать вместо того чтобы он баниn чат по authid, делал это по айпиадресу ?

Код
register_concmd("amx_gag","amx_gag",ADMIN_LEVEL_A,"<authid, nick or #userid> <a|b> [time]")
     register_concmd("amx_ungag","amx_ungag",ADMIN_LEVEL_A,"<authid, nick or #userid>")


Как я понял - надо менять сдеся... подскажите на что!

Отредактировал: zippel, - 27.7.2009, 12:45
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mozart-1
сообщение 27.7.2009, 12:59
Сообщение #12
Стаж: 18 лет

Сообщений: 614
Благодарностей: 98
Полезность: 172

ты неправильно понял
то что ты показал как раз показывает что ты тоже в етом не разбираешься
ты показал все го лишь зарегистрированную команду
а тебе надо найти
get_user_authid
и сменить на get_user_ip[32]
не забывая про [33]

в твоем плагине

public event_damage(id)

надеюсь ты понял что детектиться момент демеджа

register_event("Damage","event_damage","b")
и так как там флоат - то смотрится сколько снялось и выставляется аура

и не надо говорить всем чувак
тут спокойное обсуждение
мне тут до броваров недалеко подьехать
DeHu +1

ps. 2 в амхмоде есть поддержка плагинов их старого амх

axmod_compat

Отредактировал: mozart-1, - 27.7.2009, 13:06
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя zippel
сообщение 27.7.2009, 13:15
Сообщение #13


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

нету тут такого и похожего не наблюдаетцо....

Я вот тут над другим подумал: например есть в amxx такой плагин который может понизить яркость на карте, так вот решил сам сделать чтоб на картах всё время были сумерки. Начал делать, однако в связи с тем что я вовсе деревянный в таком деле, просто-напротсо застрял на создании функции и теперь прошу помочь мне с эдаким пустяком!

Код
/* Plugin generated by -dec. */

#include <amxmod>

public cmd_night(id){
    set_lights("b")
    return PLUGIN_HANDLED
}

public plugin_init(){
    register_plugin("night","0.1","-dec.")
    register_clcmd("amx_night","cmd_night","a")
    reguster_cvar("amx_night","1")
}


Отредактировал: zippel, - 28.7.2009, 0:35
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Mr.Dmitry
сообщение 27.7.2009, 23:29
Сообщение #14


Стаж: 19 лет

Сообщений: 3992
Благодарностей: 853
Полезность: 463

zippel,
Ты понимаешь что с таким отношением к людям тебе не кто помогать не станет?
За темой слежу, давайте взаимо уважать друг друга
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя zippel
сообщение 28.7.2009, 0:11
Сообщение #15


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(Mr.Dmitry @ 28.7.2009, 0:29) *
zippel,
Ты понимаешь что с таким отношением к людям тебе не кто помогать не станет?
За темой слежу, давайте взаимо уважать друг друга


якшы, давай )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Fedcomp
сообщение 28.7.2009, 0:34
Сообщение #16
Стаж: 17 лет

Сообщений: 3899
Благодарностей: 701
Полезность: 0

А теперь пару вопросов, чем amx лучше amxx?
зботы отключены для стабильности сервера, на 1.76 серв бывал рухал если были плагины делающие ботов на карте когда не играют.
ВО вторых зботы можно поставить как стандартный плагин
В третьих в amxx в разы больше возможностей
В четвертых ты хочешь сказать что amxx вылез не из amx?
в пятых amxx просто с большими плагинами в разы быстрее работает и более оптимизирован во всем остальном

Отредактировал: Fedcomp, - 28.7.2009, 0:34
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя zippel
сообщение 28.7.2009, 0:47
Сообщение #17


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(Fedcomp @ 28.7.2009, 1:34) *
А теперь пару вопросов, чем amx лучше amxx?
зботы отключены для стабильности сервера, на 1.76 серв бывал рухал если были плагины делающие ботов на карте когда не играют.
ВО вторых зботы можно поставить как стандартный плагин
В третьих в amxx в разы больше возможностей
В четвертых ты хочешь сказать что amxx вылез не из amx?
в пятых amxx просто с большими плагинами в разы быстрее работает и более оптимизирован во всем остальном


Не лучше, я не спорю. Хотя я юзаю его второй день- мне почему то больше нравится старый amx, сам не знаю почему. Появилась к нему у меня какая то страшная тяга, про100 ппц...

з.ы: конечно понимаю что в amxx больше возможностей, не до такой же степени я чурка, отлично могу собирать сервера из готовых материалов и т.д.

Отредактировал: zippel, - 28.7.2009, 13:38
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mozart-1
сообщение 28.7.2009, 14:13
Сообщение #18
Стаж: 18 лет

Сообщений: 614
Благодарностей: 98
Полезность: 172

честно говоря я тебе помоч не могу так как я полагаю функции и call сильно отличаются у амхх и амх
ето надо смотреть все функции в амх которые есть .. а я уверен что в амхх их на порядок больше.
и правда большинство плагинов амх можно скомпилить под амхх но различия которые были сделаны за ето время .. я в етом не шарю
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя zippel
сообщение 28.7.2009, 23:31
Сообщение #19


Стаж: 17 лет

Сообщений: 918
Благодарностей: 105
Полезность: 1

Цитата(mozart-1 @ 28.7.2009, 15:13) *
честно говоря я тебе помоч не могу так как я полагаю функции и call сильно отличаются у амхх и амх
ето надо смотреть все функции в амх которые есть .. а я уверен что в амхх их на порядок больше.
и правда большинство плагинов амх можно скомпилить под амхх но различия которые были сделаны за ето время .. я в етом не шарю


ы, точно... правду ты сказал нащёт того что амхх компилит амх). Вот у меня теперь вопрос по amxx: допустим есть готовый код для свечения игроков, причём свечение реагирует на HP! По скольку писался он под amx, автор забыл указать в нём альфу. Как мне нужно поступить чтобы на игроках заработала функция прозрачности ауры свечения, так же добавить функцию которая будет давать отдельную цветовую гамму для команд CT и T :? Например у КТ меняется с синего на красный, у Т меняется с зелёного на красный, при этом не повторяя периодически баг при убийстве - когда игрок умирает то не всегда светится тем цветом при котором получил критический урон?

Код

/*
*   Glow by Health
*   By Freecode  
*   Version: 1.1
*
*   Modded by -dec.
*   Version 1.2a
*
*   This plugin will make all players glow depending on their health.
*   100 health = green || 1 health = red
*   If you go from 100 - 1 slowly it will change you color slowly
*   from green to red.
*    
*
*  Commands:
*  ========
*  amx_healthglow <1 = On || 0 = Off>
*
*  To Do:
*  ========
*  Nothing  
*
*  Have Fun
*/
#include <amxmodx>
#include <fun>

public event_damage(id){
  if (get_cvar_num("amx_healthglow")!=1) return PLUGIN_HANDLED
  new health = get_user_health(id)
  new Float:Red = ((1.0 - (float(health) / 100.0)) * 255.0)
  new Float:Green = ((float(health) / 100.0) * 255.0)
  set_user_rendering(id, kRenderFxGlowShell, floatround(Red), floatround(Green), 0, kRenderNormal, 33)
  return PLUGIN_HANDLED
}
public plugin_init(){
  register_plugin("glow by health","1.2a","-dec.")
  register_event("Damage","event_damage","b")
  register_cvar("amx_healthglow","1")
}


Отредактировал: zippel, - 28.7.2009, 23:40
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mozart-1
сообщение 29.7.2009, 9:45
Сообщение #20
Стаж: 18 лет

Сообщений: 614
Благодарностей: 98
Полезность: 172

new Float:Red = ((1.0 - (float(health) / 100.0)) * 255.0)
new Float:Green = ((float(health) / 100.0) * 255.0)
тут как раз просчитывается зависимость но

вооще если разобраться то плагин не спрашивает максимум хп у игрока
ты его используешь на классике или с каким то модом
если например с модом где у кого то больше 100 хп .. тогда возможны баги
а также я полагаю что модуль фан для такого плагина можно опустить наверно для амхх можно и в фейк мета аналогичное сделать - просто на офф сайте всех заставляют портировать все туда

у тебя уже есть условие
на включение плагина
думаю можно включить туда еще запрос на то сколько у игрока жизни

if (get_cvar_num("amx_healthglow") && get_user_health(id) <=100) return PLUGIN_HANDLED

я не уверен что так - давно уже ничего не читал по скриптингу но в условии <= 100 менее или равно 100
просто тогда включить плагин можно командой не только со значением 1 но и 99 или 98 .. что думаю некритично
мало кто будет писать amx_glowhealth 99 для его включения)

Отредактировал: mozart-1, - 29.7.2009, 9:53
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: