• Возможно ли сделать пароль приходящий на мой сервер невидимыми для меня же?

    @Karpion
    Постановка задачи непонятная. ПО идее - чтобы менять состояние игры, сервер должен знать действия игрока. А значит, админ может настроить всё так, чтобы узнать сведения, нужные для получения жульнического преимущества в игре.

    Более того: Даже если реализовать то, что Вы хотите - игрок не имеет никакой гарантии того, что админ сделал всё честно.

    По идее, Вам надо изучить шифрование с открытым ключом. Он позволяет много интересных вещей - например, "авторизация SSh по ключу", когда сервер проверяет истинность юзера (точнее, наличие у него секретного ключа), но сервер не может залогиниться на другой сервер, куда юзер ходит с тем же ключом. Т.е. это как использовать один пароль на разные серверах - но серверы не знают этого пароля никогда, в т.ч. даже при смене пароля на новый.

    Есть такой вариант:
    Юзер присылает на сервер свои действия в виде "архива с контрольной суммой под паролем". Не зная пароля - сервер не может раскрыть файл. Однако, когда юзер пришлёт пароль - сервер может раскрыть архив и убедиться, что юзер принял решение о действиях именно в то время, т.е. до присылки архива.
    Такой метод актуален для проведения "слепого аукциона", когда участники предлагают свою цену один раз, не зная, какие цены предложили другие. При таком аукционе - организатор может сообщить своему племяннику, какие ставки сделали другие - и тот перебьёт остальные ставки с минимальным перевесом (ведь невозможно организовать так, чтобы все прислали свои заявки одновременно).

    Вывод:
    1) Пароль засекретить от админа - можно.
    2) Действия игрока в игре и выдачу игроку секретной карты - скорее всего, невозможно. Ну, я могу предложить вариант, когда секретится и это. Но я боюсь - играбельность при этом обнулится. Я готов обсудить подробнее - но для этого мне надо знать, в чём состоит игра; а я не уверен, что Вы готовы это рассказать публично или мне лично, да и не настаиваю.
    Ответ написан
    Комментировать
  • Как реализовать выборку нужных элементов с помещением их во вновь создаваемые массивы?

    0xD34F
    @0xD34F Куратор тега JavaScript
    const result = arr.reduce((acc, n, i) => {
      if (здесь вы проверяете элемент массива на соответствие своему условию) {
        let group = acc[acc.length - 1];
        if (!group || group.index !== i - 1) {
          group = { data: [] };
          acc.push(group);
        }
    
        group.index = i;
        group.data.push(n);
      }
    
      return acc;
    }, []).map(n => n.data);
    Ответ написан
    Комментировать
  • Почему html кнопка с кастомным background "некрасиво" переключается?

    PavelMonro
    @PavelMonro
    Вопрос в другом, зачем нагружать сайт и загружать аж 3 изображения для такой простой кнопки? Она легко реализуется на css
    Ответ написан
    3 комментария
  • Как правильно отправить несколько функций в качестве колбека?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Является ли нормальной практикой создание нового метода , включающего в себя эти три метода

    Если вам надо эти методы вот так вот вызывать в нескольких местах - определённо стоит сделать.

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

    buildButton(() => {
      this.drawSomeButtons();
      this.changeSomeVariables();
      this.doSomethingElse();
    });
    Ответ написан
    Комментировать
  • Как добавить новые файлы в имеющийся репозиторий GitHub?

    NeiroNx
    @NeiroNx
    Программист
    Нужно извлечь итерацию с гитхаба, в другую папку, настроив там git репозиторий а затем вставить измененные файлы и зафиксировать изменения комитом и залить обратно.
    Ответ написан
    2 комментария