Помощник по игре в Балду

13.12.13

Задачи пользователя - Игры

Предлагается программа-помощник по игре в Балду

Бесплатные

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Узнавайте о новых бесплатных решениях в нашей телеграм-группе Инфостарт БЕСПЛАТНО

Наименование Скачано Бесплатно
Дистрибутив программы
.rar 447,08Kb
1 Скачать бесплатно

Предлагаю программу "Balda prof".

Программа предназначена для подбора слов в игре "Балда".

Написана на C# с использованием .Net Framework.

Поставляется в виде дистрибутива с двоичными данными.

Строит дерево найденный слов (в левой чати программы), по кнопке "Найти".

В правом списке использованные слова.

В центре рабочее поле .

В нижней части алфавит.

Если на найденное слово можно подобрать слово длиннее, то окрашивает в красный.

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

Если на найденное слово можно подобрать слово той же длинны, то окрашивает в синий.

Двойным кликом по слову из левого списка добавляем его в найденные и обновляем рабочее поле.

Одинарный клик по левому списку показывает букву в рабочем поле (для визуального контроля)

Буквы в поле можно вносить 3 способами:

- с клавиатуры

- мышью (нажав на букву, затем на клетку поля)

- перетаскиванием

 

Словарь содержится в файле RusNoun.txt. Это обычный текстовый файл, слова в нем отсортированы по алфавиту.

Можете редактировать его вручную.

 

Немного истории.

Где-то в 2009-2010 году жена увлеклась игрой в балду. Можно найти на mail.ru. И вот мы собирались 3-4 человека с друзьями и устраивали мозговой штурм. С переменным успехом двигались по турнирой лестнице. Но обнаруживались игроки, подбирающие длинные незнакомые слова. Тогда же родилась мысль найти словарь и искать в нем слова. Нашли словарь, я написал мини программу на Visual Basic, работающую с регулярными выражениями. Но это был полуавтомат, он не мог проверить все комбинации, и к тому же поиск запускался вручную. Тогда же задался целью написать программу, которя анализирует поле и ищет куда добавить букву и затем осуществляет поиск в словаре.

На первом этапе была сделана консольная программа на C#, которая в тестовом виде выдавала все найденные слова, отсортированные по убыванию. Методом проб и ошибок и каждодневного тестирования/игры я устранял ошибки в алгоритме. В итоге получилось что-то минимально рабочее. Но существовали недостатки:

Во - первых, рассчет шел ужасно долго, по несколько минут... Проблему удалось решить индексированием словаря. Сделал 2-мерный массив индексов по первым 2-м буквам. В дальнейшем разбил алгоритм поиска по 3-м ситуациям. а) обе буквы известны, б)изветсна первая, в) известна вторая. Это тоже ускорило работу.

Во - вторых, не анализировались уже использованные слова и шаблоны.

В общем, назрела необходимость озаботиться интерфейсом. И я выпустил первую версию - Balda Game.

Она была на .Net Framework 2.0. По сути элементы интерфейса перекочевали и в последний релиз, который и выкладываю.

В ней был массив использованных слов и другие нововведения. Так день за днем добавлял новые опции. На каком-то этапе добавил ограничение по длинне слов, так как 3-х буквенные считались слишком долго. Переработал алгоритм, если слово < макс. длинны, то не рассматриваю.

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

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

Далее озаботился интерфейсом. Сначала работал только с клавиатурой, сделал обработчик нажатий кнопки и перемещение по ячейкам. Затем со временем добавил мышь и в финале перетаскивание (drag & drop). В заключении сделал подсветку подставляемой буквы, что потребовало переделки кода. Ведь раньше я игнорировал расположение букв при построении второго уровня, а это было ошибкой. В итоге работы программа строит дерево достоверно с учетом ситуации и положения добовляемой буквы на первом уровне.

Дойдя до стадии рабочей программы, я охладел к проекту. Так как основную задачу решил. Я оказался в первой сотне игроков. Далее выигрывать было сложно, так как у соперника был более полный и адаптированный к игре словарь. Бывало, что игра на сервере не принимала слова в моем словаре, и наоборот, их словарь содержал слова, отсутствующие в моем. Кроме того, вероятно на рынке есть программы использующие более прогрессивный метод расчета, строящие дерево прогнозирования, или "думающие" на три - четыре хода вперед. Мне это не позволяли вычислительные мощности и пробелы в знаниях. Так или иначе в игре со средними противниками помощник вам обеспечит преимущество.

Вступайте в нашу телеграмм-группу Инфостарт

балда balda

См. также

Игры 1С 8.3 Россия Бесплатно (free)

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

05.03.2026    642    84    user2163916    4    

8

Игры 1С:Предприятие 8 Россия Бесплатно (free)

Сокобан (Sokoban) — это классическая игра-головоломка, где игроку необходимо расставить ящики по целям, перемещая их по лабиринту.

20.02.2026    579    52    user2163916    3    

12

Игры 1С 8.3 Бесплатно (free)

Это расширение, практически к любой конфигурации 1С, идеально подойдёт не для того, чтобы парализовать работу организации, а для того, чтобы сформировать коллектив, объединённый общими целями, ценностями и интересами. И всё это достигается простым регулярно проводимым мероприятием по сплочению команды – шашечным турниром! В этом, не побоюсь этого слова, приложении, можно провести шашечную битву как с коллегой, так и самому с собой, если у вас раздвоение личности. А также к вашим услугам почти искусственный интеллект, то есть бот, который честно и по правилам играет с вами в поддавки, когда по правилам вы должны играть в обычные шашки.

28.12.2025    1476    102    Knyaz3d    6    

11

Игры 1С:Предприятие 8 Россия Бесплатно (free)

Преврати свой 1С с обычными формами в мощную игровую консоль! И пусть баланс подождет!

13.10.2025    8077    159    slava_1c    14    

44

Игры 1С:Предприятие 8 Россия Бесплатно (free)

Внешняя обработка, реализующая классическую игру "Крестики-нолики". Особенностью обработки является реализация противника, способного блокировать ходы пользователя и пытаться выиграть.

02.10.2025    1631    73    user2163916    2    

8

Игры 1С:Предприятие 8 Бесплатно (free)

Моя реализация игры "Сапер" на 1С.

15.04.2025    2778    170    Caliban    5    

17

Игры 1С:Предприятие 8 Россия Бесплатно (free)

Игра "Сапёр" на 1С. Три уровня.

04.04.2025    3854    228    user2015123    9    

18

Игры 1С:Предприятие 8 Бесплатно (free)

Игра Змейка на объектах форм, а ля ООП, или что можно сотворить за час )))

20.02.2025    3695    138    starik-2005    9    

16
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. _Ramzes 127 13.12.13 00:44 Сейчас в теме
2. polakoff 2 13.12.13 12:26 Сейчас в теме
to: _Ramzes.
Отличий много.
На первый взгляд у него упрощенный вариант игры. Он сам написал, что его программа может добавлять букву в начало или в конец. Моя же анализирует все поле, то есть последовательно перебирает все 25 ячеек поля и ищет куда можно вставить букву. Таким образом создается массив шаблонов, который проверяется словарем. Те шаблоны, по которым найдены слова остаются, остальные отбрасываются.

Второе важное отличие, что моя программа строит дерево найденных слов.
Третье отличие, что она написана на C# с .Net Framework 2.0
3. mikhailovaew 127 17.04.14 16:14 Сейчас в теме
откуда словарик в обработке? и что за слово "пором"? вроде в современном русском такого нет
4. polakoff 2 05.05.14 15:33 Сейчас в теме
Где-то скачал. Сейчас уже не помню. Единственный бесплатный словарь в формате txt, который нашел. Но, к сожалению, в нем попадаются "мусорные" слова которые не принимает сервер балды. Если найдете что-то лучше то можно заменить. Единственно нужно отсортировать слова.
Для отправки сообщения требуется регистрация/авторизация