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

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

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

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

> Правила форума

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

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер
2 страниц V   1 2

Проблема с нативом в плагине

Статус пользователя batonoid
сообщение 30.10.2013, 17:22
Сообщение #1


Стаж: 13 лет

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

Доброго времени суток всем. Каждую смену карты в логах появляется такие строчки:
Скрытый текст
L 10/30/2013 - 18:30:48: [AMXX] Run time error 10 (plugin "111vipmenupachwc.amxx") (native "nvault_close") - debug not enabled!
L 10/30/2013 - 18:30:48: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
L 10/30/2013 - 18:30:49: -------- Mapchange to 35hp_2 --------


Поставил дебаг Вот что получилось:
Скрытый текст
L 10/30/2013 - 19:11:57: [AMXX] Displaying debug trace (plugin "111vipmenupachwc.amxx")
L 10/30/2013 - 19:11:57: [AMXX] Run time error 10: native error (native "nvault_close")
L 10/30/2013 - 19:11:57: [AMXX] [0] 111Vipmenupachwc.sma::plugin_end (line 196)
L 10/30/2013 - 19:11:59: -------- Mapchange to awp_india --------


Вот строчки с 195 - 198 :
Скрытый текст
public plugin_end()
{
nvault_close(g_nvault)
}


Нужно ли это исправлять? Является ли это ошибкой? Если да, то как исправить?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Legenda
сообщение 30.10.2013, 17:26
Сообщение #2


Иконка группы

Стаж: 16 лет

Сообщений: 3619
Благодарностей: 1706
Полезность: 1010

Меценат Меценат

нужно, да, переписать плагин всего лишь нужно
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 30.10.2013, 17:39
Сообщение #3
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Цитата(batonoid @ 30.10.2013, 19:22) *
Нужно ли это исправлять? Является ли это ошибкой? Если да, то как исправить?

Да, это ошибка, но некритичная, раз у вас все работает и возникает только в конце карты.
Чтобы исправить, нужно смотреть весь плагин.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 30.10.2013, 18:11
Сообщение #4


Стаж: 13 лет

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

Safety1st,
Legenda,
Кто то из вас может помочь то есть через скайп, естественно я заплачу если все сделаете.
Мой скайп batonoid
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя mazdan
сообщение 30.10.2013, 20:49
Сообщение #5


Иконка группы

Стаж: 15 лет

Сообщений: 7566
Благодарностей: 5437
Полезность: 1305

Не с нативом, а с нваулт
Если каждую карту - удалите всю функцю плагин энд. Если не сломается то всё хорошо


Не пишите мне в ЛС. Пишите на почту. В ЛС я пропускаю сообщения.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 30.10.2013, 21:02
Сообщение #6
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Можно мне в ЛС исходник скинуть. Смогу помочь или нет - скажу после ознакомления с плагином. Разумеется, дальше меня исходник не уйдёт.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 31.10.2013, 7:05
Сообщение #7


Стаж: 13 лет

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

Safety1st,
я написал в ЛС
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.10.2013, 13:35
Сообщение #8
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Плагин в порядке, не считая убогого кода) Ошибка у меня не воспроизводится.
Попробуйте вот что: на остановленном сервере уберите 'базу данных' плагина - файл player_levels.vault из папки addons\amxmodx\data\vault\, затем пробуйте работу на смене карты (можно принудительной).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 31.10.2013, 14:02
Сообщение #9


Стаж: 13 лет

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

Safety1st,
Пожалуйста объясните вот vault это файл точнее БД для всех плагинов которые требуют БД или для каждого плагин требуется отдельная БД??
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.10.2013, 14:04
Сообщение #10
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Чётче сформулируйте, не понял.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 31.10.2013, 14:07
Сообщение #11


Стаж: 13 лет

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

Safety1st,
Ну вот у меня на сервере несколько плагинов которым нужны БД, так вот вопрос : player_levels.vault вот этот файл отвечает за сохранение БД всех плагинов или же для каждого плагина должен быть отдельный файл name.vault ??

Отредактировал: batonoid, - 31.10.2013, 14:15
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.10.2013, 14:16
Сообщение #12
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

БД разные бывают) nVault - один из видов БД. Какую БД будет использовать плагин - определяется в самом плагине автором и/или настройками. Маловероятно, что player_levels.vault использует ещё какой-то плагин, но вы можете в этом убедиться, прошерстив код и настройки остальных 'плагинов которым нужны БД' на предмет наличия записи о player_levels.vault.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 31.10.2013, 14:24
Сообщение #13


Стаж: 13 лет

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

Safety1st,
Все так и окозалось :D и в торой плагин использует g_nvault = nvault_open("player_levels") как решить проблему в данном случае?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.10.2013, 14:43
Сообщение #14
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Давайте посмотрим, с какой целью её использует второй плагин. Если цель другая - скажем ему использовать другую 'БД', чтобы не конфликтовали в конце карты.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 31.10.2013, 14:49
Сообщение #15


Стаж: 13 лет

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

Safety1st,
Цель у них одна и таже, то есть плагин сохраняет ники, чтобы они не могли повторно использовать функции плагина. Как это исправить? Исходы в личку.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.10.2013, 14:54
Сообщение #16
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Пришлите, посмотрю. Тут 50/50: действительно ли именно так нужно либо можно и нужно разделить.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 31.10.2013, 14:57
Сообщение #17


Стаж: 13 лет

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

Safety1st,
отправил
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.10.2013, 15:05
Сообщение #18
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Разделите базы. У вас разные команды для вызова меню, разные флаги доступа, разные ограничения:
в 1-м: Получить 30 lvl (2 раза)
во 2-м: Получить 35 lvl (3 раза)
А в БД общее значение для обоих плагинов. Мне кажется, это недоработка кодера.

Ещё лучше вариант - объединить оба плагина в 1, но он затратнее)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя batonoid
сообщение 31.10.2013, 15:10
Сообщение #19


Стаж: 13 лет

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

Safety1st,
а как то можно создать другую базу vault? И для первого и для другого?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.10.2013, 15:17
Сообщение #20
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Остановите сервер. Сделайте копию файла player_levels, переименуйте в player_levels_2. В одном из плагинов в исходнике пропишите player_levels_2 вместо player_levels и перекомпилируйте. Только у самих файлов расширение .vault не потеряйте. Всё)

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