Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной
  • 0
sanek327

Проблема с импортом convert.sql от банков SC 3.0

Проблема заключается в следующем,когда я импортирую convert.sql из SC 3.0 мне выдает ошибку запроса:

 

Ошибка
SQL запрос:


convertsc: BEGIN
DECLARE done INT DEFAULT 0;
Ответ MySQL: Документация

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'convertsc: BEGIN
DECLARE done INT DEFAULT 0' at line 1

 

 

Вот сам запрос convert.sql в бд:

 

convertsc: BEGIN
DECLARE done INT DEFAULT 0;
DECLARE @player_id VARCHAR DEFAULT "-1";
DECLARE @instance INT DEFAULT 11;
/* Cherno = 11 or 17 , Tavi = 13 and so on. just check your Database to see instance number. */
DECLARE player_cursor CURSOR FOR SELECT PlayerUID FROM player_data;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
OPEN player_cursor;

read_loop: LOOP
FETCH player_cursor INTO @player_id;
DECLARE @charid INT DEFAULT -1;
DECLARE @player_money BIGINT DEFAULT 0;
DECLARE @player_bank BIGINT DEFAULT 0;
DECLARE @thesum BIGINT DEFAULT 0;
DECLARE @player_gear LONGTEXT DEFAULT '[]';

IF done <> 0 THEN
LEAVE read_loop;
END IF;

select @charid = CharacterID, @player_money = CashMoney, @player_gear = SUBSTRING(Inventory , 1, CHAR_LENGTH(Inventory ) - 1) from character_data where PlayerUID = @player_id and Alive = 1;
select @player_bank = BankSaldo from banking_data where PlayerUID = @player_id;

/* 999 hive , comment the previous 2 lines out and use the 2 following.
select @charid = CharacterID, @player_money = HeadshotsZ, @player_gear = SUBSTRING(Inventory , 1, CHAR_LENGTH(Inventory ) - 1) from character_data where PlayerUID = @player_id and Alive = 1;
select @player_bank = PlayerMorality from player_data where PlayerUID = @player_id;
*/

IF @charid <> -1 THEN
@thesum = @player_money + @player_bank;
set @player_gear = CONCAT(@player_gear, @thesum, ']');
UPDATE character_data SET Inventory = @player_gear WHERE CharacterID = @charid;
ELSE
set @player_gear = CONCAT('[["ItemFlashlight","ItemMap","ItemCompass","ItemHatchet","ItemKnife","ItemMatchbox","ItemWatch"],["FoodSteakCooked","ItemSodaCoke","ItemBloodbag","ItemPainkiller","ItemAntibiotic","ItemMorphine","ItemEpinephrine","ItemBandage","ItemBandage","ItemBandage"],', @player_bank, ']');
INSERT INTO `character_data` (`CharacterID`, `PlayerUID`, `InstanceID`, `Datestamp`, `LastLogin`, `Inventory`, `Backpack`, `Worldspace`, `Medical`, `Alive`, `Generation`, `LastAte`, `LastDrank`, `KillsZ`, `HeadshotsZ`, `DistanceFoot`, `Duration`, `CurrentState`, `KillsH`, `Model`, `KillsB`, `Humanity`, `Infected`) VALUES (NULL, @player_id, @instance, '2014-11-22 15:02:02', '2014-11-24 22:05:43', @player_gear, '["DZ_Backpack_EP1",[[],[]],[[],[]]]', '[158,[6320.97,7795.51,0.278]]', '[false,false,false,false,false,false,false,12000,[],[0,0],0,[64.82,61.753]]', 1, 99, '2014-11-22 15:02:02', '2014-11-22 15:02:02', 0, 0, 0, 46, '["","aidlpercmstpsraswrfldnon_idlesteady03",42,[]]', 0, 'Survivor2_DZ', 0, 2500, 0);
/* If the guys didn't had an alive character this creates a char for him with his bankmoney as cash on him in stary sobor. */
END IF;

END LOOP;
CLOSE player_cursor;
DEALLOCATE player_cursor;

ALTER TABLE character_data DROP COLUMN CashMoney;
END convertsc;

 

 

Но,когда я импортирую SCDBQuery.sql эта таблица от Single-Currency-4.0.все работает.

Вот ее запрос:

 


SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `banking_data`
-- ----------------------------
DROP TABLE IF EXISTS `banking_data`;
CREATE TABLE `banking_data` (
`PlayerUID` varchar(20) NOT NULL DEFAULT '0',
`PlayerName` varchar(128) NOT NULL DEFAULT 'Null',
`BankSaldo` bigint(24) NOT NULL DEFAULT '0',
`LastUpdated` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`PlayerUID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Table structure for `character_data`
-- ----------------------------

ALTER TABLE character_data ADD CashMoney int(11) NOT NULL DEFAULT 0 AFTER Infected;

 

Она импортируется без ошибок и работает,но я понимаю что она непригодна для использования sc 3.0 так как при выдаче денег больше миллиона,она выдает мне:

 

2015-10-20 22:56:40 HiveExt: [Error] Error executing |CHILD:201:1:[321,[6289.1,7816.81,0.00143433]]:[["ItemFlashlight","ItemGPS","ItemMap","NVGoggles"],["5Rnd_127x108_KSVK","5Rnd_127x108_KSVK","ItemBandage","ItemBandage"],1.11111e+026]:["",[[],[]],[[],[]]]:[false,false,false,false,false,false,false,12000,[],[0,0],0,[0,0.205556]]:false:false:0:0:0:1:["ksvk","aidlpercmstpsraswrfldnon_aiming02",37,[]]:0:0::0:1.11111e+026:|

 

 

А в таблицу cashmoney записывает числа только до миллиона.

 

Такая проблема только с таблицей,а для корректного отображения денег в дебаге и местах хранения я прописал

call BIS_fnc_numberText  

 

Можно ли с этим жить,не будет ли это мешать работе сервера?

 

Вот такая у меня проблема,помогите пожалуйста.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

  • 0

Проблему решил,кому интересно решение нашел вот тут:http://epochmod.com/forum/index.php?/topic/15975-issue-players-get-negative-sums-in-cashmoney-across-restarts/&page=1 теперь могу оперировать числами до миллиарда и никаких ошибок в рапорте и хеви нет.

Хотя подозреваю,что можно и увеличить число,вот в этом блоке в compiles.sqf,но мне кажется это уже лишнее:

            _decimals = _number % 1;
            _decimals = _decimals * 1000000;
            _number = floor _number;
            _str = _number call MDC_fnc_numberToString;
            _str = _str + "." + str _decimals;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах



  • 0

Аа, херня все это, я с ней дня три дрочился, ничего не получилось

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Вообщем я так понимаю,что разбирающихся в бд на форуме нет,ясненько,тогда тема закрыта.Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Ставь SC 2.0 Не ошибёшься 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: fedotovyasha
      не подключается к серверу и пишет что на сервере нету такого мода, хотя он там есть. Названия менял, другие моды все отключил, ничего не помогает. В батниках все прописано
    • Автор: JustBullet
      Всем привет! :) Как я рад всех видеть снова, дошли руки до ковыряния станделона (если уже его можно так назвать).
       
      Что пытаюсь сделать:
      1. Создать Рюкзак.
      2. Создать Радио.
          - Положить Батарейку в Радио.
      3. Положить Радио(с Батареей) в Персональный слот Рюкзака.
      4. Дополнительно поместить Радио в слот быстрого доступа (на панель).
       
      EntityAI itemEnt_Bag = player.GetInventory().CreateInInventory("FurCourierBag"); // Создаем РЮКЗАК. EntityAI itemEnt_Radio = player.GetInventory().CreateInInventory("PersonalRadio"); // Создаем РАДИО. itemEnt_Radio.GetInventory().CreateAttachment("Battery9V"); // Помещаем в Радио Батарейку. itemEnt_Bag.GetInventory().CreateAttachment(itemEnt_Radio); // Помещаем в РЮКЗАК РАДИО. player.SetQuickBarEntityShortcut(itemEnt_Radio, 0, true); // Помещаем РАДИО на первый слот. тут возникает проблема, в четвертой строке, поскольку я помещаю Элемент Радио+Батарея в Рюкзак, а команда ожидает Строковый параметр (String). Проблема больше в незнании мной синтаксиса. Возможно и в логике построения. Вообщем прошу помощи разобраться с этой строчкой :)))
       
      п.с. так разумеется срабатывает но без батарейки:
      itemEnt_Bag.GetInventory().CreateAttachment("PersonalRadio"); // Помещаем в РЮКЗАК РАДИО. Каким параметром/командой я могу загнать Радио с батареей в персональный слот Рюкзака?
    • Автор: Gromillla
      Доброго времени суток дамы и господа, и сразу к вопросу, в миссиях 2.2.5 версии, если боты "бандиты", то они скин игрока видят и реагируют на него, а если миссии с ботами "героями", то они скин игрока не видят. Скин  "RUS_Soldier_Marksman". Как соответственно решить эту проблему? Ошибок в РПТ нет.
    • Автор: petpoleoo
      Ребят ваша помощь нужна,суть проблема такая,мент кидает гражданского в тюрьму а вместо той тюрьмы где он должен быть игрок в поле скачет в редакторе была в этом месте только одна метка sky drive но ее перенести пробывали 0 эмоций,кто сталкивался может какую мысль подкините идею как решить;)
       

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • Автор: SPIRT
      В общем после недавнего обновления BattleEye стало выкидывать из игры с ошибкой BattleEye типа вам нужно перезагрузить игру. Хочу поделиться тем что помогло мне . Сразу говорю винда у меня пиратская .Итак начнем .
      1.Отключаемся от интернета.
      2.Вырубаем антивирус полностью.
      3.Заходим в Панель управления -- Администрирование -- Службы -- ищем Защита программного обеспечения --- останавливаем ее.
      4.Дальше идем по адресу диск С Windows -- System32  там надо найти два файла C7483456-A289-439d-8115-601632D005A0  перед этими цифрами могут стоять еще цифры но это не важно , удаляем их.
      5. Обратно запускаем Защита программного обеспечения. В правом нижнем углу появится надпись  что ваша Windows не является лицензионной.
      6. Перезагружаем комп - и активируем нашу винду, я активировал программой Windows 7 Loader . 
       
      У меня процесс сошел с мертвой точки со второй активации  , но согласитесь это лучше чем переустанавливать Windows 7 или переходить с любимой системы на 10 винду . Кому поможет ставим +  врепу. 
       
      PS в параметрах папок и поиска не забываем выставить  показывать скрытые файлы и папки !
       
  • Наш выбор

×
×
  • Создать...

Важная информация

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