Название: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 11, 2008, 20:41 Вот написал игрушку одну. Когда-то в школе играли часто, правда использовали тетрадку в клеточку и ручку.
Смысл игры - "уничтожить" все цифры. Можно "уничтожать" цифры если они одинаковые или сумма равна 10, и: 1. Они находятся рядом по вертикали или горизонтали. 2. Они являются крайними по вертикали и горизонтали. Когда ходов больше нет, нажимаем "More numbers" ("Добавть цифр") и все неуничтоженные цифры дописываются в конец списка. В общем если принцип непонятен, то запустите автоигру и посмотрите, как будут "уничтожаться" цифры. Выкладываю игру на суд общественности и, если понравится, прошу помочь. Помощь требуется: 1. Нужен нормальный набор иконок. К сожалению не смог придумать иконку к функции "More numbers" и иконку приложения. :( 2. Хотелось бы опубликовать на qt-apps, если она того стоит. 3. Бета-тестирование, пожелание, баги и пр. Буду очень благодарен всем откликнувшимся. Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 11, 2008, 20:45 ой а я в такую не играл ))
ps: а похоже атачи работают)) Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 11, 2008, 20:54 Ага. Вот только сделать бы поддержку 7z. :)
Admin:Ну как впечатления? Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 11, 2008, 21:58 я еще не качал щас затестим!
Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 11, 2008, 22:03 Жду с нетерпением. :)
Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 11, 2008, 22:08 поигрался
удивился что под Линукс все завелось qmake & make недочеты 1) размеры клеток с цифрами нада подгонять к размеру экрана - а то у меня широченный экран а играю где то в углу 2) не очень понял почему 1 1 1 не становятся черными а только по паре )) может правила такие 3) создал игру - 5 раз нажал F3 - получилось много цифр - нафиг такую опцию ))) PS: зачет за автоигру - люблю когда комп работает)) Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 11, 2008, 22:15 1. Не совсем понял. Они подгоняются под размер содержимого. Может сделать настройку шрифта?
2. Можно только попарно. 3. а)Создал игру б) Уничтожил все, что мог в) Если остались цифры, то F3, пункт б) г) Ты победил!!! Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 11, 2008, 22:21 1) смотри я на большом игране развернул программу - игровое поле где то слева верху и циферки маленькие
3) включать F3 когда все заполнил Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 11, 2008, 22:24 1. Ну тут поможет опция по изменению шрифта. Это в планах, если игра будет нужна кому-нибудь кроме меня. Так же в планах изменение цветов и многое другое.
3. Так точно. В принципе можно играть очень долго, я догонял до 4000. :) Хорошо занимает время и расслабляет. При раскладе 9 на 27 можно легко выиграть, автоигра это доказывает. Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 11, 2008, 23:12 1) я не про шрифт, а про квадратик - сделать его изменяемыv размер экрана
а то когда экран большой играть в углу не впечатляет Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 12, 2008, 08:37 Все равно никак не пойму.... Ты под квадратиком подразумеваешь таблицу? Если шрифт увеличить, то и она увеличится. Если что-то другое, выложи скрин как должно быть, или ui'шку.
Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 12, 2008, 09:44 смотри картинку
Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 12, 2008, 10:26 1. Можно не разворачивать на весь экран и играть в окне, расположив его посередине рабочего стола. ;)
2. Можно залезть в исходники и установить шрифт. В createControls() после создания qtvTable сделать: Код: QFont font=qtvTable->font(); Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 12, 2008, 11:13 в игры играть приходят) а не настраивать
так что лучше тебе все это проделать - что бы повысить юзабилити )) Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 12, 2008, 23:56 Игра была написана для себя. Если она будет нужна хотя бы 4 людям, то я буду ее усовершенствовать. Вообще желание есть, но нет пока смысла. Жду ваших пожеланий.
Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 13, 2008, 07:22 тут не та аудитория - врядт ли тут кто то играет в подобные игры
сделай статейку - со скриншотами выложи ее на trolltech - там где компоненты третьих компаний - тогда будет тебе аудитория Название: Re: Написал тут игрушку на досуге... Отправлено: ритт от Сентябрь 13, 2008, 13:27 выложи на qt-apps.org в тактические игры - уверен, там ты увидишь аудиторию
я выкладывал порт QNetWalk - хотя бы по количеству скачиваний и рейту можно судить о востребованности моё мнение: игре быть! :) Название: Re: Написал тут игрушку на досуге... Отправлено: uriel от Сентябрь 13, 2008, 15:16 А у меня вот падает под линуксом и Qt 4.4.1 при попытке сделать автоигру или получить подсказку. ;)
Цитировать ASSERT failure in QMutex::unlock(): "A mutex must be unlocked in the same thread that locked it.", file thread/qmutex.cpp, line 338 Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 13, 2008, 15:50 ща затестим снова тока щас 4.4.1 поставил на Debian
Название: Re: Написал тут игрушку на досуге... Отправлено: Admin от Сентябрь 13, 2008, 15:52 неа ничено не упало все работает))
Название: Re: Написал тут игрушку на досуге... Отправлено: uriel от Сентябрь 13, 2008, 16:37 Тогда странно. :)
Пока игрался, нашёл ещё несколько проблем: 1) Первая строчка всегда 1 2 3 4 5 6 7 8 9 2) Иногда дописывает новую строку в горизонтальный заголовок... 3) ...и вообще довольно странно работает с индексами. Один раз добавил в низ неполную строку, а после очередного добавления - сегфолтнулся 4) Иногда в параметрах показывает неправильное количество строк 5) Начальная расстановка цифр всегда одинаковая З.Ы. А так вполне ничего, мозг занять неплохо помогает. ;) Название: Re: Написал тут игрушку на досуге... Отправлено: Kreps от Сентябрь 13, 2008, 20:36 Сам думал такую написать когда-то, но руки не дошли :)
Респект и уважение... Правда я уже в нее не играю, так как однажды нашел алгоритм по которому выигрываешь не более чем при ТРЕХ добавлениях... Название: Re: Написал тут игрушку на досуге... Отправлено: ритт от Сентябрь 13, 2008, 22:18 мы в такую игрушку тоже не играли...
первый же раунд - играл минут 10, пока не заподозрил, что выиграть невозможно - поставил на автомат...автомат играет уже 15 минут, набрал чисел уже на 225 строк...и я практически уверен, что выиграть ему не судьба :) открыть секрет безвыигрышного раунда? :) а комментарий одмина по поводу размера ячеек весьма актуален - игра как бы должна расслаблять и отвлекать? а вместо этого от вглядывания в цифры аж глаза режет... Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 14, 2008, 18:34 Всем спасибо за коменты. В общем на qt-apps есть желание выложить, но нет знания английского, может кто-нибудь помочь?
По поводу ошибки при запуске автоигры, то это случается, но не на всех компах, точнее очень редко. Все из-за моего решения функции wait: Код: int iWaitTime=50; По поводу размера ячеек сделаю настройку. На счет того, что выиграть невозможно.... Иногда интересен процесс. И я уверен, что при любом раскладе можно выиграть. Игра всегда начинается стандартом, т.е. пишутся числа от 1 до указанного в настройке новой игры. В горизонтальном хедере содержутся самые верхние цифры по всем колонкам, для облегчения игры. Неправильное количество строк... это интересно. Данные берутся из модели rowCount(). Про сегфолт ничего не могу сказать, посмотрю. Еще раз всем спасибо. На днях выложу новую версию. Название: Re: Написал тут игрушку на досуге... Отправлено: ритт от Сентябрь 14, 2008, 20:14 я играл 9х27 (если не ошибаюсь) - секрет безвыигрышной ситуации прост - по мере возможности "съесть" все 6-7-8-9. если останется некоторое количество цифр от 1 до 5 (включительно), расклад получится почти безвыигрышным, т.к. вероятность выигрышного расположения новых цифр всегда будет стремиться к нулю.
думаю, этого можно избежать, если среди новых цифр (по f3) добавлять и те, которые уже выбыли из игры Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 14, 2008, 20:18 Добавлять можно только те, что остались. Это правило игры.
Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 15, 2008, 13:47 Новая версия с 2 фиксами.
Название: Re: Написал тут игрушку на досуге... Отправлено: Alex03 от Сентябрь 15, 2008, 15:14 1. Sleep() для винды хочет windows.h
2. у меня qt 4.3.3, нет ApplicationVersion. Закомментировал пару кусочков, при этом не очень понял надобность tr() в коде Код: tr("</h2>") 4. Из п.3, точнее из QCoreApplication::processEvents(); в одном из обработчиков эвентов возникает потенциальная опасность рекурсии (или не правильного поведения программы). Например мне хватает 15сек. чтобы получить Цитировать Unhandled exception at 0x102140f8 (msvcr71d.dll) in QNumbersDestroyer.exe: 0xC0000005: Access violation writing location 0x00030ea0. При этом быстро (много раз подряд) нажимается кнопка "получить подсказку", пока не отработало предыдущее нажатие, примерно 60-70 нажатий и вуаля! Толи стек кончается, толи....Другой эфект - нажмите на эту же кнопку быстро раз 10 (можно и парочку) 5. Код: * * * 1 * * 6. Какой смысл меняющихся цифр в заголовке (меняются как я понял на самую верхнюю в столбце)? Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 15, 2008, 16:37 1. Не учел... содрал решение с форума, а так как сейчас под Линем пишу, проверить не мог.
2. Пишу сейчас на 4.4.1. Можно и убрать этот кусок, только придется костыль лепить с версией. 3. Почитаю, поковыряюсь. 4. Изменил на QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents); 5. Можно уничтожать крайние по горизонтали и налево-вверх-налево. Понятнее не могу выразить, нужно на скринах подготовить. 6. Когда кол-во строк таково, что невозможно увидеть первые цифры колонок, тяжело скролить постоянно вверх-вниз. А так ты всегда видишь верхние цифры по всем столбцам. Название: Re: Написал тут игрушку на досуге... Отправлено: xintrea от Сентябрь 15, 2008, 21:21 Самого главного в игре нет - нету правил игры. Начать рубаться в такую игру без знания правил нереально. Когда будешь добавлять правила, обязательно напиши, что цифры уничтожаются только парами, ты про это в первом посте забыл упомянуть.
"Можно уничтожать крайние по горизонтали и налево-вверх-налево. Понятнее не могу выразить, нужно на скринах подготовить." - да, это тоже нужно прояснить, до сих пор не пойму что ты имеешь в виду... По самой игре - игра сугубо для ностальгирующего любителя. Имеет ценность "для коллекции". Советую напрячься и довести проект до логического конца, выложить на qt-apps, и дальше заняться чем-нибудь другим, имея в багаже накопленый опыт работы с Qt либой. Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 15, 2008, 21:25 Есть желание создать что-то на подобие QLogicalGames, где можно будет порубиться в "ностальгические" игры типа "Ход конем", "Морской бой" и пр.
На счет правил - руки пока не дошли. В данный момент правила игры можно понять по автоигре, хотя это и не есть хорошо. Вижу, что не только мне нужна игра, поэтому буду развиваться, периодически выкладывая все, что получилось. Название: Re: Написал тут игрушку на досуге... Отправлено: Alex03 от Сентябрь 16, 2008, 05:46 Цитировать Можно уничтожать крайние по горизонтали и налево-вверх-налево. А так:Последняя цифра в строке может быть в паре (уничтожена) с первой цифрой следующей строки. Название: Re: Написал тут игрушку на досуге... Отправлено: Пантер от Сентябрь 16, 2008, 11:25 Да, так понятнее.
|