Мое творчество. Игра Шахматный сапёр

Видео, книги, журналы, научные статьи, (по тематике форума), наше творчество
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

Найден глюк, при нажатии "ЗАНОВО" в сетевой игре во время расстановки секундомер падает на 0, а не на значение, которое выставил "ведущий" комп. Происходит рассогласование секундомеров. Нужно поправить.

Версия 3.08h
fixed: в сетевой игре при наличии активного соединения кнопка "ЗАНОВО" не меняет выставленное значение секундомера.
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

Версия 3.08m
fixed: наконец-то был устранён самый основной и мешающий фундаментальный глюк (в качестве условия контроля цикла repeat until использовались переменные большИх разрядностей, что приводило к сбою в контроле сетевых циклов, они либо работали мало, либо уходили в бесконечность)
данный код переписан полностью, что позволило наконец-то спокойно откалибровать сетевые циклы. Счётчик контроля выставлен 3 000 000 циклов, это примерно чуть более 5 секунд (при запросе расстановки после игры счётчик за 10 секунд успевает сделать 5 500 000 циклов).
Также добавлена индикация цикла во время ожидания доставки, каждые 100 000 циклов увеличивается на 1 цифровой индикатор.
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

Недочёты версии 3.08n:

1. Если соперник расставил фигуры, то сопернику приходит уведомление о расстановке. А если он сбросил кнопкой ЗАНОВО, то галочка РАССТАВЛЕНО не пропадает. (fixed!)

2. Опять иногда появляется решётка на СВОЁМ ПОЛЕ. (уже сделаны новые анти решёточные фиксы)

3. Один раз стартанул секундомер без начала сетевой игры обоими соперниками. (fixed!)
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

3.08p
+ во время системных циклов доставки секундомер хода на паузе
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

Шахматный сапёр v3.09 релизная версия.

обновлена до версии 3.10f в конце темы

Что нового:
  • При нажатии ПКМ на рыцаря появляется возможность Сохранить текущую расстановку/Загрузить сохраненную расстановку. Сохранение ведётся в INI-файл
  • Усложнена расстановка фигур компьютером в зависимости от достигнутого (или выбранного) уровня (параметр сила игры) - только для 5 фигур
  • Улучшен дизайн формы НАСТРОЙКИ
  • Добавлены новые звуки, упрощено построение схемы из новых игровых звуков
  • Улучшен дизайн игровых сообщений
  • html-хелп дописан новыми опциями в игре
  • Кнопка "<->" в НАСТРОЙКАХ, позволяющая сбросить статистику и настройки в исходное (как при скачивании дистрибутива) состояние
  • Кнопка "КОРЗИНА" над полем соперника - очищает все выделения и пометки на полях, фигурах и бордюрах
  • Стрелка под рядами мигает, когда надо открыть ряд
  • Стрелки под фигурами мигают, когда надо угадать фигуру
  • Добавлены всплывающие подсказки к рыцарю и фигурам-картинкам
Что исправлено:
  • отсутствие шахматного шрифта определяется идеально точно даже для редких или узких шрифтов
  • в сетевой игре при наличии активного соединения кнопка "ЗАНОВО" не меняет выставленное значение секундомера
  • в сетевой игре улучшен контроль доставки (циклы), добавлена индикация цикла во время ожидания доставки
  • в сетевой игре после расстановки всех фигур нельзя отменить расстановку (ЗАНОВО)
  • в сетевой игре иногда появлялись решётки на своём поле
  • в сетевой игре секундомер иногда стартовал до начала игры
  • в сетевой игре во время системных циклов доставки секундомер хода приостанавливается
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

Шахматный сапёр v3.10f релизная версия.

ChessBattle310f.zip

Что исправлено:
  • При победе на 10 уровне в состязании с компьютером при переходе на следующий уровень с бОльшим числом фигур можно без проблем использовать запомненную расстановку
  • улучшен вид сообщений, выводимых компьютером в СЕРВЕРНОЙ
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

 ! Сообщение из: Андрей
Сервер игры "Шахматный сапёр" был продлён до 29 июля 2025 года за счёт бонусных баллов.
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

 ! Сообщение из: Андрей
Сервер игры "Шахматный сапёр" был продлён до 29 июля 2026 года за неделю до подорожания услуг.
Аватара пользователя
Андрей
Архитектор
Сообщения: 7974
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов, МО
Благодарил (а): 766 раз
Поблагодарили: 500 раз

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей »

Выпущен Lazarus 4.0, среды разработки для FreePascal
09.05.2025 09:16

После полутора лет разработки опубликован релиз интегрированной среды разработки Lazarus 4.0, основанной на компиляторе FreePascal и выполняющей задачи, сходные с Delphi. Среда рассчитана на работу с выпуском компилятора FreePascal 3.2.2. Готовые установочные пакеты с Lazarus подготовлены для Linux, macOS и Windows.

Среди изменений в новом выпуске:
  • В интегрированную среду разработки добавлена поддержка встраиваемых панелей и реализован встраиваемый вариант окна с редактором.
  • Расширены возможности редактора кода. Предложена новая реализация вкладок. Улучшена подсветка модификаторов Proc и Var. Предложены настройки отступов и ширины.
  • В отладчике расширены возможности для работы с точками останова.
  • Добавлена возможность загрузки и настройки свежей версии пакета Pas2js (Tools / Install/Update pas2js), предоставляющего инструменты для разработки web-приложений в Lazarus.
  • Добавлен плагин Icon Finder для упрощения поиска пиктограмм по ключевым словам.
  • В наборе виджетов Cocoa, используемых в приложениях для macOS, предложена новая реализация полос прокрутки и полностью переделан компонент TListView, который теперь поддерживает все доступные стили (vsReport, vsIcon, vsSmallIcon, vsList), а также свойства OwnerDraw, CustomDraw, MultiSelection и CheckBox. Для настройки добавлен компонент CocoaConfig.
  • В компоненте TTaskDialog для взаимодействия с обработчиками диалогов реализована поддержка запросов (QueryChoices, QueryItemIndex, QueryResult, SimpleQuery и SimpleQueryPassWordChar) и отправки сообщений (SendMessage). Добавлены новые события (OnDialogConstructed, OnDialogCreated, OnDialogDestroyed, OnVerificationClicked, OnExpanded, OnTimer, OnRadioButtonClicked, OnHyperlinkClicked, OnNavigated, OnHelp) и свойства (CollapseButtonCaption, CustomMainIcon, CustomFooterIcon, ProgressBar).
  • Расширены возможности компонентов TCalendarDialog, TOpenDialog, TShape, TLabeledEdit, TTimeEdit, TColorDialog, TFilenameEdit, TMenu и TMenuItem.
Изображение

https://www.opennet.ru/opennews/art.shtml?num=63209
Аватара пользователя
BDK
Сообщения: 4934
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 171 раз
Поблагодарили: 593 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение BDK »

Мне приходится местами писать на C++. Он очень близок к Delphi. Ну как по мне. Во всяком случае если поставить в ряд Delphi, С++ и C# то Delphi и С++ в моей шкале будут очень близко а C# стоит довольно особняком. Если в эту шкалу добавить еще и Python (я кстати прошел курсы по Python и в итоге понял что выкинул деньги впустую - курсы не дали мне ничего такого что я и так не знал) - то Delphi и С++ будут очень близко друг другу но особняком от них будут стоять C# и Python, которые в свою очередь тоже очень близко друг другу.

Особенность C++ и Delphi - небезопасная работа с памятью. И это фактор который сильно усложняет программирование. Многообразие способов работы с указателями так же - вовсе не упрощает программирование. На отладку проблем связанных со случайным заходом не в те области памяти уходит очень много времени и в итоге полностью избавиться от ошибок всё равно не получается. А такие языки как C# и Python полностью лишены этой проблемы - и это ГИГАНТСКАЯ экономия времени для разработчика. Фактически я очень быстро создаю сложные структуры данных и процессы где огромные количества объектов интенсивно создаются и исчезают в процессе работы приложения - и всё это сразу работает и работает стабильно и стабильно многими сутками непрерывно - чего никогда не получалось добиться на Delphi. И всё это без трат времени на долгую отладку. К слову за несколько суток в приложении динамически создаются и удалются триллионы объектов и сложных структур данных - и всё это без малейших проблем с неверным доступом к памяти, с фрагментацией и переполнением памяти.

Но по ходу работы так или иначе приходится пользоваться разными языками потому что просто разные системы требуют определенного языка как обязательное условие. Например графический движок Unreal Engine 5 требует C++ как обязательное условие. И с многими другими системами обстоит так же. Например плагины VST3 тоже пишутся на C++. Поэтому хошь не хошь а приходится возвращаться к языкам подобным C++ - и это всегда зубная боль.

Но я для себя выработал такую стратегию - даже когда приходится писать под C++ я сначала делаю быстрый прототип на C#. Отрабатываю основные механизмы на C# версии и только потом переношу это на более низкоуровневые языки. Я этот процесс для себя несколько автоматизировал. Я сделал парсер с языка C# который разбирает код программы на объекты и затем из этих объектов можно опять перевести в текст - так вот фишка в том что я могу написать программу на C# , перевести это в такую вот "невербальную" форму а затем из этой формы перевести в С++. И впринципе я могу добавить в это и генерацию кода на Delphi тоже. И тогда я смогу писать на уже полюбившемся мне C# и при этом без дополнительных затрат обмениваться кодом с теми кто пишет на Delphi. Это было бы интересно. Еще можно было бы сделать парсер с Delphi в такую мою универсальную "невербальную" форму и затем так же без лишних затрат переводить в код на C#. Тогда можно было бы обмениваться кодом в обе стороны почти не замечая что мы пишем на разных языках. По сути проблему языкового барьера между разными людьми решает не приход к единому языку а развитие автоматического перевода который настолько прост и малозатратен что становится прозрачным и незаметным и позволяет объединить людей говорящих, мыслящих и пишущих код на разных языках в одно целостное сообщество.