Почему в игре балда есть ошибки
Перейти к содержимому

Почему в игре балда есть ошибки

  • автор:

Почему в игре балда есть ошибки

Логическая игра Балда поможет приятно провести время в компании вашего телефона. Балда совместима с любым не очень старым телефоном с поддержкой Java. (Требуется поддержка профиля MIDP 2.0.) Если вы не знаете, поддерживает ли ваш телефон MIDP 2.0, попробуйте установить и запустить игру. Если она не заработает, её всегда можно будет удалить.

Игра Балда подстраивается под размер вашего экрана. Начиная с версии 1.3.1 в игре Балда реализована поддержка сенсорных экранов. Игра использует собственную виртуальную клавиатуру и виртуальный джойстик. Если при запуске игры ваш телефон рисует вспомогательный джойстик, то его надо отключить в «Диспетчере приложений», чтобы не занимал место на экране.

Игра Балда подходит взрослым и детям, т.к. содержит уровни разной сложности. Для тех, кто раньше не играл в Балду ниже приводится краткая инструция Как играть:

Как я гонял Балду-2, или в поисках оптимального алгоритма

Балдология, как оказалось (вы ведь слышали о существовании такой науки, правда?), имеет на Хабре отражение в виде нескольких статей, вот они:

Эта статья — продолжение моей предыдущей, последней в списке. Отправными точками для написания были присланные мне в комментариях ссылки на способ хранения словаря в виде дерева (статья в Википедии с описанием алгоритма Trie), а также упоминание коллеги chibiryaev о его собственной реализации поиска, которая тратит на нахождение слова в словаре из 110 000 элементов всего 16 миллисекунд!

Собственно, задача №1 – увеличение скорости поиска слов в текстовом массиве.
Начнем с реализации алгоритма Trie. Для этого нам необходимо поместить весь словарь существительных (43 303 слова) в структуру связанного дерева. Visual Basic не поддерживает переменных-ссылок, подобно C++ или C# (не говоря уже о Pascal), но в этом качестве вполне подойдут индексы массива.

Каждый элемент массива должен хранить следующую информацию:

— Букву,
— Индекс элемента массива, с которого начинаются буквы, следующие за данной буквой в реально существующих словах,
— Количество элементов в этом списке букв-продолжений,
— Признак того, получим ли мы законченное словарное слово, если остановимся на текущей букве.

На картинке это выглядит так

Массив должен содержать три типа данных – букву, логическое значение и числовое значение. Попытка сделать его универсальным для Visual Basic типом Variant, когда элемент массива может быть любым — хоть объектом, ни к чему хорошему не привела – в итоге было задекларировано 4 массива одинаковой длины, каждый нужного типа, что прибавило к скорости работы существенные 25%.
Наполнение подобного массива происходит, понятно, с помощью рекурсивной функции. Для нее, что интересно, также необходим механизм поиска в массиве строк))) Выход из этого замкнутого круга проливает свет на одну интереснейшую программистскую технологию, называемую «раскруткой». Суть ее в следующем.

Такую сложную программу, как оптимизирующий компилятор с языка С++, например, лучше всего писать… на языке С++. Ну не на ассемблере же! Где взять тогда такой компилятор, если мы только хотим его создать? Ответ таков – нужно взять любой, самый примитивный, неоптимизирующий, написанный чуть не на коленке, лишь бы работал без ошибок. Затем мы прогоняем через него наш исходный текст, и получаем на выходе программу-компилятор – медленную, как Windows NT 3.51, но уже умеющую оптимизировать и все прочее, что мы в нее заложили. А вот скормив ей еще раз наш исходный код, мы обретем уже желаемое во всей своей красе. Другой способ – написать полноценный компилятор на неком простом подмножестве С, для которого сделать опять-таки примитивнейший генератор кода, а потом как выше. (Статья в Википедии на эту тему )

Поэтому для создания и наполнения дерева-словаря я использовал алгоритм поиска через 2-буквенный индекс из предыдущей версии своей программы.

Мне захотелось сравнить результат с предыдущим – когда поиск осуществлялся с помощью 2-буквенного индекса. Оказалось, что выигрыш совсем невелик, процентов 7 с небольшим. Кардинальное отличие лишь в способе хранения исходного словаря.
Но у меня получилось ускорить этот алгоритм еще в три с лишним раза.

Я давно вывел для себя, что в программировании существует, по аналогии с физикой, нечто вроде «правила рычага». В физике это звучит так «Выигрываем в силе – проигрываем в расстоянии». В программировании – «Выигрываем в быстродействии, проигрываем в объеме необходимой памяти».

На примере: есть 2 способа ввести в компьютер операцию умножения. Либо реализовать ее в виде алгоритма, либо составить массив всех возможных пар чисел с их произведениями, и при запросе выбирать уже готовый результат прямо из таблицы. Между прочим, в школе учат умножать с помощью обоих этих методов. Сначала мы запоминаем таблицу умножения для чисел от 1 до 9, а потом уже используем запомненные результаты для умножения любых чисел с помощью алгоритма «в столбик».

Я отвлекаюсь здесь от физической возможности запомнить все пары чисел с их произведениями. К тому же, существуют промежуточные варианты – что-то предрассчитать и сохранить, и использовать затем для ускорения выполнения алгоритма. Самый яркий пример такого рода – знаменитая ошибка в процессоре Intel Pentium Для реализации быстрого алгоритма деления использовалась таблица поиска длиной 1024 байта, которую нерадивый сотрудник заполнил неверно. Ошибка стоила корпорации почти полмиллиарда долларов – Intel-у пришлось заменить все процессоры с ошибкой, и это в ценах 1994 года!

Если попытаться применить теперь правило рычага (имени меня)), то где узкое место поиска в дереве? При нахождении нужной нам буквы-продолжения среди элементов по ссылке от буквы текущей. Чтобы избежать этого поиска, давайте хранить в массиве не только те буквы, которые присутствуют в реальных словах, а все 32, помечая просто, что некоторые из них в словах не встречаются. Это позволит нам сразу переходить на нужный элемент массива, попросту рассчитав его индекс из буквы. Эту структуру естественно назвать «разреженным деревом». Размер массива при этом, надо сказать, вырастет весьма существенно – если обычное дерево занимало 169 693 элемента, то разреженное – уже 5 430 177 (правда, в каждом элементе соответствующего разреженного массива достаточно хранить 2 величины, а не 4 – не нужна сама буква, она определяется местом в алфавите, и также количество элементов по ссылке всегда равно 32).

Вот соответствующая картинка – обратите внимание, насколько увеличился номер индекса для тех же слов (столбцы (X) для пояснения, их нет в массиве — не нужны):

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

Здесь нам нужно просто смотреть значение элемента массива

СЛОВАРЬ(‘Б’, ‘А’, ‘Л’, ‘Д’, ‘А’) = TRUE
СЛОВАРЬ(‘Х’, ‘А’, ‘Б’, ‘Р’) = FALSE

Расход памяти при этом (чудовищный) посчитаем чуть ниже.
Итак, сравнение 4 алгоритмов на словах разной длины. Генерировалось сначала миллион, а потом сто миллионов случайных слов, длиной от 4-х до 24 –х букв, после чего оценивалось время поиска.

1. Поиск по 2-буквенному индексу.
2. Поиск по обычному дереву
3. Поиск по разреженному дереву
4. Прямой поиск в массиве (ввиду ограничений на размер массивов возможен только для слов длиной не более 6 букв, да и то – 6-буквенные с оговорками). Зато как быстро!

(Нужно упомянуть компьютер, на котором я считал – это Intel Core i3 -2125 на частоте 3.3GHz, 4GB оперативки. Процессор 4-ядерный, но это, я подозреваю, неважно, так как задача нераспараллеленная, разве что сама операционка и прочие процессы сидят на других ядрах и не мешают нашему счету.)

Небольшой оффтоп — список самых длинных существительных

22 ВОЗДУХОНЕПРОНИЦАЕМОСТЬ
22 НЕДИСЦИПЛИНИРОВАННОСТЬ
22 НЕПРЕДУСМОТРИТЕЛЬНОСТЬ
22 НЕУДОВЛЕТВОРИТЕЛЬНОСТЬ
22 ОБЩЕРАСПРОСТРАНЕННОСТЬ
22 САМОУСОВЕРШЕНСТВОВАНИЕ
23 ПЕРЕОСВИДЕТЕЛЬСТВОВАНИЕ
24 ВЫСОКОПРЕВОСХОДИТЕЛЬСТВО
24 ЧЕЛОВЕКОНЕНАВИСТНИЧЕСТВО

Не удивительно, что самые длинные слова в основном составные. Кстати, есть весьма изящная теория, что количество слов в языке, вообще говоря, бесконечно. Поскольку есть немаленький список исходных корней и правила образования из них новых слов (вспомните хотя бы производные того, что англичане называют f-word). Эта теория, конечно же, более понятна и мила программистам с их знакомством с рекурсией, чем самим филологам! Но я ее так же придерживаюсь. Одно время я даже собирал такие новообразованные слова:

— «он имел вид свежевыпоротого кота» (откуда это??)
— «в Москве прошли советско-слоново-берего-костийские переговоры» (из коллекции ляпов дикторов Центрального Телевидения СССР. Упомянутая страна – Берег Слоновой Кости – сейчас называется Кот Д’Ивуар, что то же самое, только по-французски)
— «лечу табакокурение» (на заборе)

Последнее словообразование меня особо позабавило. Можно, следуя этим путем, напридумывать много всяких новых слов. «Водкопитие», например. Или «девкогуляние»))

Кстати, даже будучи носителем этого самого великого и могучего русского языка, не всегда возможно понять, придуманное ли слово перед нами или нет. Например, в словаре Зализняка есть слово «самолетовождение», которое кажется мне еще более искусственным, чем отсутствующее там «табакокурение»! А «Балдология»? В общем, непаханое поле.

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

Тут есть некая дилемма. Ради быстродействия хранение данных в компьютере организовано в очень некомпактном виде. Процессор быстрее всего работает с двойными словами длиной 4 байта (или уже даже с четверными — в 8 байт?). Поэтому все компиляторы хранят данные очень неэкономно. Нам для хранения признака наличия слова в словаре достаточно одного бита (boolean), а в памяти это будет двойное слово. (Аттракцион невиданной щедрости! Запроси у операционной системы 1 бит памяти и получишь еще 31 совершенно бесплатно! Пользователи же привилегированных 64-битных систем получают бесплатно целых 63 бита!)

Но, наверно, для чистоты подсчета нужно брать реальное количество нужных нам битов –теоретическая эффективность алгоритма есть вещь абстрактная, что ей до конкретной реализации в процессоре той или иной архитектуры (хотя эта реализация может существенно – буквально в разы! — менять быстродействие при работе такого алгоритма).

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

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

Кстати, интересно оценить качество включенного в VBA (на самом деле, в саму Windows) генератора случайных (псевдослучайных, конечно же) чисел. Когда мы генерируем некоторое достаточно большое количество строк символов, в нем обязательно должны оказаться и реальные словарные существительные (помните присказку об обезьянах, которые печатают на пишущих машинках и делают это до тех пор, пока у какой-нибудь из них не получится полное собрание сочинений Шекспира/ Льва Толстого/ Эдуарда Лимонова?)

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

Характернее всего – первая строка. Она показывает отличие от теоретического максимума всего в 3 сотых процента. То есть нагенерируй мы еще большее количество слов, точность попадания в словарь была бы еще выше.

Ну, и на сладкое. В первом же комментарии к прошлой статье коллега zorgzerg пригрозил меня убить, так как я лишал людей кайфа игры вживую, вооружая себя и других инструментом для нечестной игры (плюс, правда, поставил)))). Имею сказать следующее. Балда относится к математическим задачам, полностью просчитываемым на совершенно среднем современном компьютере. На самом деле, к таковым задачам уже можно отнести и шахматы (после победы суперкомпьютера над чемпионом мира Гарри Каспаровым), но там и система была помощнее, и команда программистов … чуть получше. Поэтому мы, человеки, должны посвящать себя гораздо более сложным и трудноформализуемым задачам, а компьютеры пусть развлекаются сами с собой -под нашим присмотром и нам на радость. Для примера: используя последний алгоритм «разреженного дерева», я заставил компьютер, играя за обе стороны, прогнать 3 264 партии (по числу 5-буквенных слов в словаре, используемых для начала игры). На каждом шагу мой железный конь выбирал самое длинное найденное слово – первое из списка, последнее из списка, случайное из списка (если таких слов было несколько). Обычная средняя игра что человека, что компьютера, приносит каждой стороне от 50 до 60 очков (сумма длин найденных слов), то есть находятся в основном 5-буквенные слова, ну и очень редко 6-буквенные и выше. А вот компьютер наткнулся на несколько гораздо более интересных вариантов – и суммарный счет порой зашкаливал за 150!

Оцените, балдисты! Часто ли вам приходилось отправлять противника в нокаут шикарным 11-буквенным словом? А у моего компьютера получилось!

  • MS Office
  • MS Access
  • VBA
  • visual basic for applications
  • офисное программирование
  • Программирование
  • Совершенный код
  • Разработка игр
  • Microsoft Access
  • Visual Basic for Applications

Алгоритм быстрого поиска слов в игре балда

Как-то в одной социальной сети наткнулся на игру балда с нестандартными правилами (большие поля и узелки). Программы-подбиралки в основном работают по классическим правилам и на полях 5х5. Поэтому у меня появился спортивный интерес написать свою подбиралку полностью адаптированную под нестандартные правила. Причем не просто написать подбиралку, а реализовать максимально быстрый алгоритм поиска слов.

Из нестандартных правил выделяется довольно интересный режим «узелки», в котором составлять слово можно, используя одну букву до 2-х раз (например, на скриншоте сверху можно составить слово ШАЛАШ, буквы Ш и А использованы 2 раза). Как потом выяснилось, в одной и той же позиции алгоритм ищет все слова в режиме узелки почти ровно в 1.5 раз дольше, чем в классическом режиме без узелков (это и не удивительно, т.к. вариантов составления слов больше и найденные слова длиннее). В конце статьи описанный алгоритм будет протестирован в тестовой позиции в режиме узелки.

Словарь

Для того чтобы ещё больше затруднить жизнь алгоритму будет использоваться один из самых больших словарей в подобных программах. Он насчитывает примерно 110000 слов.
Важную роль в алгоритме играет способ хранения словаря в памяти программы. При загрузке каждое слово записывается в структуру в виде дерева. Каждый узел этого дерева означает конкретную букву слова и ссылается на не более чем 32 поддерева (по количеству букв в алфавите). Узел дерева в программе выглядит так:

typedef TREE *NEXT; //указатель на следующую букву struct TREE < NEXT *next; //массив указателей на все возможные следующие буквы char *str; //строка со всеми возможными следующими буквами char *wrd; //если не NULL, то это слово из словаря >; 

В поле str содержится строка со всеми буквами, которые выходят из данного узла, размер массива next[] равен длине этой строки.
Поле str используется для нахождения конкретного узла среди массива узлов next[] для данной буквы. Для этого введена функция ind() , основанная на strchr():

int k=ind('и',str); //возвращает индекс (позицию) буквы ‘и’ в строке str 
балда, банка, бар, манка, барсук 

Если поле str==NULL , то данный узел является листом и в нём содержится словарное слово wrd . Узел, соответствующий букве ‘р’ , содержит слово «бар» , и при этом он не является листом, потому что в данном словаре есть ещё одно слово, начинающееся на бар- . Поле wrd содержит строку, которая получается, если идти от корня к соответствующему узлу, но если эта строка не является словарным словом, то wrd содержит NULL .
Назовём это дерево словарным, в нём содержатся все слова из словаря. Помимо словарного дерева необходимо подготовить ещё одно, в котором содержатся все возможные инвертированные префиксы слов для каждого слова (назовём это дерево инвертированным). К примеру, для слова «балда» в инвертированное дерево попадут следующие строки: «адлаб», «длаб», «лаб», «аб», «б» . Даже для тестового словаря с пятью словами такое дерево будет громоздким, поэтому приведу упрощенный вариант:

Слова Префиксы словарных слов в этом дереве расположены задом-наперед. Узел в красном кружочке соответствует последней букве инвертированного префикса словарного слова, т.е. соответствует первой букве этого слова. Чтобы прочитать начало словарного слова нужно двигаться от красного узла к корню. Единственное отличие инвертированного дерева от словарного – это то, что wrd выполняет роль флага ( NULL/не NULL ). Т.е. в нем хранится не строка с инвертированным префиксом слова, а:

  • 1) Адрес глобальной строки (содержимое строки не имеет значения), если данный узел соответствует первой букве словарного слова
  • 2) NULL , для всех остальных узлов.
root_inv->str == ”адлбкнрусм”; root_inv->next[0]->str == ”бдкм”; root_inv->next[5]->next[0]->wrd == NULL; //АН не является префиксом словарного слова root_inv->next[5]->next[0]->next[1]->wrd != NULL; //МАН является префиксом словарного слова 

Оба дерева занимают в памяти 33М, и непосредственно из словаря они строятся примерно за 5 секунд на i5, поэтому было принято решение сохранить образ деревьев в файл и в дальнейшем грузить именно его. Так скорость загрузки составила всего 300 миллисекунд.

Алгоритм поиска

По правилам балды для хода нужно выбрать пустую клетку, и поставить туда любую букву.
Скрытый текст

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

  • 1) Перебираем все пустые смежные клетки
  • 2) Для каждой клетки перебираем все буквы алфавита (32 буквы)
  • 3) Заносим в текущую клетку (пусть её координаты будут [x, y] ) текущую букву s . Так получаем 32*n разных позиций, где n – число смежных клеток в исходной позиции
  • 4) Занесенную букву считаем первой буквой для инвертированных префиксов.
    Поэтому среди root_inv->next[] находим узел t_inv , соответствующий текущий букве, т.е. t_inv – поддерево, начинающееся с текущей буквы:
int k = ind(s, root_inv->str); //s – текущая буква if(k<0) continue; //вдруг инвертированный префикс не может начинаться с этой буквы TREE * t_inv = root_inv->next[k]; 
TREE *t=root; //корень словарного дерева loopi(strlen(prefix)) //prefix содержит найденный инвертированный префикс < int k=ind(prefix[i],t->str); t=t->next[k]; > find(t,x,y); 
  • a. Если она пустая, то переходим на шаг (3)
  • b. Если буква, находящаяся в этой клетке, не имеется в tree->str , то переходим на шаг (3)
  • c. Если count[i1, j1]==0 , то переходим на шаг (3)
  • d. Иначе переходим на шаг (5)

Заносим в эту клетку каждую букву из строки ”адлбкнрусм” (остальные буквы алфавита просто не существуют в root_inv->str и алгоритм для них быстро завершится, даже не начавшись). Для каждой буквы вызываем find . Для буквы А функция быстро завершится, потому что в инвертированном дереве нет веток, начинающихся на АА-, АС- и АКУ- , то же самое и для Д, К, У, С .

Для остальных букв в инвертированном дереве будут найдены валидные префиксы:
Л – лаб, Б – б, Н – наб, Р – раб, М – м . Для каждого префикса находим узел в словарном дереве (как описано в п.1.b) и вызываем для него функцию find .
Префиксу “бал” соответствует узел root->next[0]->next[0]->next[0] :

Следующей смежной буквой может быть С или К , но в поле str этого узла содержится “д” , поэтому сразу завершаем функцию find , т.е. в дереве нет веток, начинающихся на БАЛС- и БАЛК- . Для префикса “б” в словарном дереве нет веток, начинающихся на БК-, БС-, БАБ-, БАЪ- , то же самое и для префиксов “бан” и “м” .

Префиксу “бар” соответствует узел root->next[0]->next[0]->next[2] .
Т.к. поле wrd!=NULL , заносим строку wrd (БАР) в массив найденных слов и продолжаем поиск дальше. Для строк БАРК и БАРСЪ нет веток, завершаем для них функцию find , а вот строка БАРСУК содержится в дереве, помещаем её в массив найденных слов.

Результаты

Алгоритм тестировался на следующем поле (естественно уже не на тестовом словаре, а на словаре из 110000 слов):

Скрытый текст

Это реально игравшаяся партия.
Здесь поле 9х9 , и оно наполовину заполнено (пожалуй, это одна из наихудших позиций для любого алгоритма, потому что присутствует достаточно много клеток, куда можно сходить, и достаточно удачное взаимное расположение букв, из-за чего много длинных слов можно составить). В режиме узелки алгоритм находит все слова за следующее время:

  • 1) Mac mini i7 – 7 миллисекунд (не нативное приложение, а в эмуляторе iPhone)
  • 2) Комп. с i5 – 12 миллисекунд
  • 3) iPad 4 – 30 миллисекунд
  • 4) Samsung Galaxy Ace (железо трёхлетней давности) – 50 миллисекунд (с использованием NDK)
Приложение

Данный алгоритм применен в приложениях для iOS (доступно в app store) и Android. Помимо поиска всех слов реализованы ещё два вида поиска:

  • 1) Локальный поиск – если пользователю позарез нужно занять какую-либо определённую пустую клетку (например, призовая клетка, или прикрыть своим ходом клетку, в которой слишком много длинных слов), тогда он делает двойной тап по этой клетке и программа ищет только те слова, которые можно сходить в неё
  • 2) Проверка подстав – двойной тап по букве заставит программу найти все слова, проходящие через эту букву. Применение: сразу после хода соперника проверить его букву (вдруг он жестко подставился), перед своим ходом следует проверить предполагаемый ход на предмет подстав

webOS Forums — форум пользователей телевизоров LG на webOS

Спонсор
Сообщения: 100 Зарегистрирован: 15 июл 2014, 18:43 Благодарил (а): 0 раз. Поблагодарили: 0 раз.

Re: Балда не работает

tyomka » 02 ноя 2018, 12:57

JackSparrow писал(а): games.ru@lge.com, написать

Продублировал обращение по этому адресу.
Письмо вернулось, отсутствие адресата.
Наверное умерла Балда в приложениях к тв LG.
Отцу пульт Magic купил, ради этого. Вовремя. : (

За это сообщение автора tyomka поблагодарили: 2 abovar (02 ноя 2018, 15:14), Архивариус (02 ноя 2018, 17:54)

tyomka
Сообщения: 14 Зарегистрирован: 30 окт 2018, 18:14 Благодарил (а): 3 раз. Поблагодарили: 5 раз. Телевизор: 49SK7900

Re: Балда не работает

Архивариус » 02 ноя 2018, 20:29

tyomka
Кстати указанный адрес электронной почты ( games.ru@lge.com ) рабочий, только что проверил, отправив туда тестовое письмо с яндекс. почты:

**********
Ваше письмо было успешно доставлено указанному адресату (или адресатам, если было указано несколько). В случае возникновения проблемы на принимающей стороне Вы получите отдельное уведомление от другой почтовой системы.

Это уведомление автоматически отправлено почтовой системой Яндекса.

This is the mail system at host yandex.ru.

Your message was successfully delivered to the destination (s) listed below.If the message was delivered to mailbox you will
receive no further notifications.Otherwise you may still receive notifications of mail delivery errors from other systems.

: delivery via lgesmtp.lge.com[156.147.1.147]:25: 250 2.0.0
OK 1A/39-18760-8478CDB5

Архивариус
Сообщения: 9524 Зарегистрирован: 29 июл 2010, 20:22 Благодарил (а): 2283 раз. Поблагодарили: 1608 раз. Телевизор: LG 55C9 32LK6190 24MT57S Звук: Yamaha YSP-1100

Re: Балда не работает

tyomka » 03 ноя 2018, 01:46

Архивариус писал(а): Кстати указанный адрес электронной почты ( games.ru@lge.com ) рабочий

Я писал на этот адрес со своего зарегистрированного ящика на LG Smart, но ответ был такой:

Mail Delivery System
Ср 31.10.2018, 17:05
I’m sorry to have to inform you that your message could not
be delivered to one or more recipients.It’s attached below.

For further assistance, please send mail to

If you do so, please include this problem report.You can
delete your own text from the attached returned message.

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

tyomka
Сообщения: 14 Зарегистрирован: 30 окт 2018, 18:14 Благодарил (а): 3 раз. Поблагодарили: 5 раз. Телевизор: 49SK7900

Re: Балда не работает

Архивариус » 07 ноя 2018, 21:20

tyomka
Есть новости?

Архивариус
Сообщения: 9524 Зарегистрирован: 29 июл 2010, 20:22 Благодарил (а): 2283 раз. Поблагодарили: 1608 раз. Телевизор: LG 55C9 32LK6190 24MT57S Звук: Yamaha YSP-1100

Re: Балда не работает

tyomka » 07 ноя 2018, 21:42

Архивариус писал(а): tyomka
Есть новости?

Все, то же самое, письмо возвращается.

Mail Delivery System
Ср 07.11.2018, 20:35
I’m sorry to have to inform you that your message could not
be delivered to one or more recipients.It’s attached below.

For further assistance, please send mail to

If you do so, please include this problem report.You can
delete your own text from the attached returned message.

Может с @hotmail.com пишу.

С почты @yandex.ru, вроде ушло.

Утром позвоню по гор линии, попробую зафиксировать обращение.
Что за дискриминация к hotmail.com, в 2010 году в LG Aps я смог зарегистрироваться, только с этого ящика.
И Балда.

Добавлено спустя 45 минут 55 секунд:

Почта Яндекса позже отреагировала:

I’m sorry to have to inform you that your message could not
be delivered to one or more recipients.It’s attached below.

For further assistance, please send mail to

If you do so, please include this problem report.You can
delete your own text from the attached returned message.

X-Symantec-Messaging-Gateway-Queue-ID: 97/C1-18737-25333EB5
X-Symantec-Messaging-Gateway-Sender: rfc822; **********@yandex.ru
Reporting-MTA: dns; LGEAMRELI02.lge.com
Arrival-Date: Thu, 08 Nov 2018 03:47:46 +0900

Final-Recipient: rfc822; games.ru@lge.com
Status: 5.0.0
Action: failed
Last-Attempt-Date: Thu, 08 Nov 2018 03:47:46 +0900
Diagnostic-Code: smtp; 550 games.ru@lge.com . No such user

Все равно позвоню.

За это сообщение автора tyomka поблагодарил: Архивариус (07 ноя 2018, 22:28)

tyomka
Сообщения: 14 Зарегистрирован: 30 окт 2018, 18:14 Благодарил (а): 3 раз. Поблагодарили: 5 раз. Телевизор: 49SK7900

Re: Балда не работает

tyomka » 12 ноя 2018, 13:32

Долго общался с ТП, сказали что попробуют помочь. Рекомендовали, снова сделать обращение.
Написал в это бюрократическое логово.
https://yadi.sk/i/3eC6lGYsmxcV1g

tyomka
Сообщения: 14 Зарегистрирован: 30 окт 2018, 18:14 Благодарил (а): 3 раз. Поблагодарили: 5 раз. Телевизор: 49SK7900

Re: Балда не работает

Архивариус » 12 ноя 2018, 14:32

За это сообщение автора Архивариус поблагодарили: 2 abovar (12 ноя 2018, 21:16), tyomka (12 ноя 2018, 15:15)

Архивариус
Сообщения: 9524 Зарегистрирован: 29 июл 2010, 20:22 Благодарил (а): 2283 раз. Поблагодарили: 1608 раз. Телевизор: LG 55C9 32LK6190 24MT57S Звук: Yamaha YSP-1100

Re: Балда не работает

tyomka » 12 ноя 2018, 15:15

Архивариус
Это хорошо, что по разным каналам запросы идут.
За это сообщение автора tyomka поблагодарил: abovar (12 ноя 2018, 21:16)

tyomka
Сообщения: 14 Зарегистрирован: 30 окт 2018, 18:14 Благодарил (а): 3 раз. Поблагодарили: 5 раз. Телевизор: 49SK7900

Re: Балда не работает

LGERA » 13 ноя 2018, 09:05

abovar писал(а): По какой-то причине не работает игра «Балда». Пишет, что данного слова (любого, даже простейшего) нет в словаре. Кстати, не работает и «Скорость интернета» из LG-магазина. : (

Доброе утро! Подскажите по приложению «Скорость интернета», как понять не работает? Не открывается или скорость не меряет?

Всё что я здесь пишу — это исключительно по личной иннициативе.
Я лишь пытаюсь помочь в силу своей компетенции, либо озвучиваю политику компании.

LGERA
Сообщения: 352 Зарегистрирован: 15 мар 2016, 20:48 Город: Завод LG, Рузский район, МО, РФ Благодарил (а): 25 раз. Поблагодарили: 207 раз. Телевизор: OLED55B8

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *