Перейти к публикации
  • Перенос предметов из слота в слот


    Electr0
    • Сделано

    На данный момент это невозможно из-за давней проблемы с передачей ID предмета в базе данных после сохранения предмету на сервере чтобы тот мог понимать к какой записи в базе данных он относится, придется решить эту проблему в первой, в конечном итоге номер предмета (он рассчитывался путем очередности отправки на сохранение, либо загрузки) будет заменен ID записи о предмете в базе данных.

     

    Нужно сделать:

    • Реализовать при процедуре сохранения взятие ID только что добавленных записей в базу данных и соотносить с предметами на карте, при процедуре загрузки брать ID из записи и прописывать вместо номера который просто прибавлялся при загрузке сохранения. 
    • Сделать возможность пересохранить конкретный предмет в указанный игроком слот, однако нужно учитывать что в слоте должно быть место под этот предмет.
    • Сделать возможность переноса предметов из одного слота в другой пачками по типу предмета

    Отзывы пользователей

    Рекомендованные комментарии

    Прототип 1:

    • Загрузчик прошивает ID предмета из базы данных на стадии загрузки вместо порядкового номера.
    • После успешной транзакции сохраненного слота в базу данных отправляется запрос на взятие информации из слотов, с последующей прошивкой ID из базы данных путем поиска предмета в 2048 итераций в сумме, т.д. при загрузке запоминаем нужную инфу в стек и после проходим по предметам на сервере и заполняем ID предметов даннными из стека попутно стирая используемые записи и вынимая стек из памяти по окончанию.

     

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

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

    Прототип 2:

    • Оптимизации системы сохранения
    • Устранены исключения при выполнении команды запроса на сохранение всех предметов игрока в указанный слот и при сохранении всех предметов игрока под указанным стим идом и слотом.

     

    Теперь зная точный ID предметы можно перемещать между слотами, но это еще предстоит написать.

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

    Прототип 3:

    • Сырая версия команды sm_fs_send_obj_in_slot <номер слота куда перенести предмет под курсором>, учтены исключения: выход за рамки лимита в слоте куда перенести, объект должен быть сохранен, объект нельзя перенести в тот же слот где он находится, если объект находится в закрепленном слоте то ему запретят бегство, если слоткуда нужно перенести закреплен он не примет предмет, при использовании этой команды стирается история действий как при сохрании загрузке, т.к возможны исключения насчет номера слота и продажных предметов.
    • Цикл показа занятости сохранением, загрузкой слотов показывает все загружаемые, сохраняемые слоты а не первый попавшийся.
    Ссылка на комментарий
    Поделиться на других сайтах

    Прототип 4:

    • Нужно добавить в меню перенос предмета из слота в слот
    • Нужно понять нужно ли помечать слот из которого загружен предмет как загруженный
    Ссылка на комментарий
    Поделиться на других сайтах

    Прототип 5:

    • Сырая версия команды переноса содержимого слота в другой слот, sm_fs_move_objs_from_slot_in_other <текущий слот (1-10)> <новый слот (1-10)> <тип объекта> Пр: !fs_move_objs_from_slot_in_other 2 3 2, Типы: 0 - Все, 1 - Все обычное, 2 - Все платное, 3 - Оружие, 4 - Лампа, 5 - Персонаж
    • Написана документация в справку касательно двух добавленных команд

     

    Синхронизация номера слота после переноса на тех предметах что загружены еще не работает.

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

    Прототип 6:

    • Реализовать синхронизацию номера слота для предметов что были перенесены из слота в слот.
    • Добавить меню для новой команды
    Ссылка на комментарий
    Поделиться на других сайтах

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

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



    Присоединяйтесь к обсуждению

    Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

    Гость
    Добавить комментарий...

    ×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

      Разрешено не более 75 эмодзи.

    ×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

    ×   Ваш предыдущий контент был восстановлен.   Очистить редактор

    ×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.


  • Обозначения статусов

    В обработке = Мы работаем над вашим отзывом.

    Будет сделано = Ваша идея добавлена к плану будущих изменений.

    Тестируется = Изменения внесены, но требуют тестирования.

    Сделано = Ваша идея реализована!

    Отклонено = Отзыв некорректный, бред, либо уже реализовано. Если у вас есть дополнительная информация напишите комментарий и мы снова откроем этот вопрос.

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