RS Game Maker Community
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

 
Расширенный поиск
  Главная Форум Вики Блоги FAQ Игры Статьи Примеры Войти Регистрация  
  Просмотр сообщений
Страниц: 1 2 3 4 5 ... 60
1  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 11 Июня 2018 в 00:53
SDL посложнее (вроде как)
SDL в плане графики является обёрткой к OpenGL, если не использовать встроенный функционал двухмерной отрисовки, который насколько я помню (SDL 1.2) довольно примитивен.
OpenGL будет слишком сложным для такой игры, а двухмерного функционала не уверен что будет достаточно.
2  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 03 Мая 2018 в 21:36
Я вот не пойму, это баг в линуксовском Löve (отсюда, не компилировал ибо лень, в репозитории 0.10.2)
Хм, возможно проблема в версии Löve - я юзаю 11.1.
Я имел ввиду, что брал официальную сборку, поскольку в репозитории старая версия.
В Fedora 28 тоже 0.10.2. 11.x поломал некоторые вещи, поэтому либо мейнтейнер не стал обновлять, либо он просто уснул.

ошибка в шрифте
Вероятность есть. Текущий шрифт я нашел вообще хз где. Я соберу для тебя демку с другим шрифтом, потестим.

Кто-то, протесть пожалуйста вот это: https://www.dropbox.com/s/ph7zd6y6uwn3njb/fungi.love?dl=0

Там Courier. Интересно как с ним будет работать.
Я мог бы и сам поменять шрифт (что уже делал один раз), но вот:
Очевидно, проблема в шрифте, которая проявляется только под GNU/Linux. Нужно смотреть, что с ним не так.
3  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 01 Мая 2018 в 01:45
[attachment=1]
Я вот не пойму, это баг в линуксовском Löve (отсюда, не компилировал ибо лень, в репозитории 0.10.2), ошибка в шрифте, или ошибка в моих линуксах (чего быть не может).
Это происходит только с A. Под Windows проверить не могу, занят обновлением десятки.

Комментарии бы пригодились, может не для других, но для объяснения самому себе, что происходит.
4  Проекты и Релизы / Проекты в разработке / Re: [2D] - AGEHT: Blackline : 22 Апреля 2018 в 17:59
Во вложения не загрузить, пишется что разрешено максимум 37МБ (вроде около того). А кроме Яндекса я даже не знаю куда можно загрузить.
И что не так с Яндексом?
Гугл-диск.
Яндекс заблокирован в Украине, а скачивать через медленный впн — та еще морока.
Сервисы Гугла собираются заблокировать в России, пруф, так что тоже не вариант.
5  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 20 Апреля 2018 в 21:37
Но это будет быстрее чем мой честный 613.
Не знаю, какой смысл ты вкладываешь в понятие "честный". Для меня это решение, печатающее правильный ответ для любых корректных входных данных.
Честный наверное не лучшее слово, которое я выбрал.
Его, как минимум, можно определить как тот, который из входных данных получает выходные, и не сломается от смены ввода и вывода.
Показать613/12, про который я упомянул
У меня, по сути, каждое задание рандомное. Только ГПСЧ не инициализирован, по этому он всегда одни и те же числа генерит =)
Для изначального варианта seed лучше оставить один на все варианты, чтобы было проще разобраться. Вот когда уже первый окажется решён правильно, тогда уже следует запускать второй набор данных, случайный, чтобы знать что программа на самом деле решает задачу.
Так останется и «соревнование» на быстрый/компактный, и проверка на «честное» решение.
Классно выглядит, жаль, что я еще не прикрутил сохранение и загрузку "программ", было бы интересно пускануть это.
Проще всего взять «сырые» данные, возможно сжать какой нибудь библиотекой, обернуть результат в base64, и копировать в буфер обмена.
6  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 20 Апреля 2018 в 16:37
Скорее вниз, чтобы начало программы оставалось на той же изначальной инструкции, но при этом программа не уходила через край сетки.
Хотя гораздо проще сделать не сдвиг, а выбор стартовой позиции.
Вот пример, используя прошлое задание:
ПоказатьОригинал
ПоказатьС тем, что я предлагаю

Зелёный - стартовая позиция.
На баланс это никак не повлияет, только упростит понимание происходящего.
7  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 20 Апреля 2018 в 16:02
Блин, вот такого читинга я и боялся, ага. Как думаете, как обезопасить игру от таких решений? Тупо сделать поле меньше - не хочется =(
Сделать обязательным чтение ввода.
Можно ещё сделать обязательным вывод после ввода необходимых значений, но это может добавить головной боли в будущем.

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

Хотя если убрать !, и переставить местами ветки, выйдет 615/12
UPD 2
Что, если я скажу тебе, что это можно честно пройти за 320 циклов?
(Блин, чем я занимаюсь в два часа ночи...)
Показывай. Хотя у меня предчувствие, что ты сделал без смены направления спамом инструкций. Но это будет быстрее чем мой честный 613.
8  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 20 Апреля 2018 в 03:01
Самый быстрый, который возможно сделать - 615.
Я не скажу как, поэтому выкладываю второй по скорости вариант. Если никто не догадается, то я его выложу.
9  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 16 Апреля 2018 в 22:52
При нажатии Enter выводит kpenter, т.е. Numpad'овский.
Должно быть особенность ноутбука Prestigio 133S, поскольку у него физически нет места под Numpad, и клавиши Num Lock с Fn никак не влияют на отсылаемый код клавиши.
10  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 16 Апреля 2018 в 15:55
EDIT: поменял на rctlr, работает. Клавиши return и enter не работают.
Блин, очень странно. Перепроверю все сегодня, но все таки, мне кажется, что ты случайно вошел в какой-либо режим.
Я разобрался в режимах, особенно что режим выбора направления включается сразу после ввода _ и |, дело не в них.
Даже сразу после запуска игры, если нажимать Enter, ничего не происходит. Но в модифицированном файле при нажатии изменённой клавиши оно работает.
Я считаю, что это баг в Löve 11.0.0, либо они опять что-то поменяли.

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

EDIT: Ни в 11.1, ни в 0.10.2 со старым файлом не работает. Во всех трёх случаях использовалась 64-битная Windows версия.
11  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 16 Апреля 2018 в 00:14
Run либо не работает, либо ему что-то от меня требуется, не могу понять что.
Руками считать количество инструкций неудобно.
И ещё, Esc для закрытия опасен, я вот сейчас случайно закрыл, и пытаюсь понять что у меня там было пришлось повторно делать.

EDIT: поменял на rctlr, работает. Клавиши return и enter не работают.

EDIT2:

Красная ячейка лишняя, без неё выйдет 245/18
Хотя признаюсь, я поглядел в исходники и узнал, что делает каждая функция.

EDIT3: input.txt, твой вариант можно ускорить на 38 шагов, добавив лишь две инструкции.

EDIT4: нашёл баг, счётчик инструкций не уменьшается при удалении инструкции.

EDIT5:

EDIT6:

EDIT7:
Лучше пойду спать. Если кто побъёт этот рекорд - флажок в руки, я уверен что быстрее только спамом инструкций.
12  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 15 Апреля 2018 в 21:50
Я спокойно заменил строку в main.lua, больше ни на что не жаловалось. Если что, High DPI в 11й нет, например со шрифтом Consolas выходит мыло.
Для удаления текущего символа лучше добавить Backspace (если только вы не говорили про маковский Delete, который Backspace'ом и является)

EDIT: 84, не в одну строчку.
[attachment=1]
13  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 15 Апреля 2018 в 21:25
Поставил Löve 11.0.0 64-bit, получаю:
Error

main.lua:57: attempt to call field 'getPixelScale' (a nil value)


Traceback

main.lua:57: in function 'draw'
[C]: in function 'xpcall'
Запускаю на Windows 10 1709, если заменить на scale = 1.0 всё работает.
14  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 15 Апреля 2018 в 17:01
I am not a lawyer security specialist.

Первое, что приходит в голову — ставить подпись при отправке. Добиваешь результат нулями (чтобы усложнить брутфорс), дописываешь секретную строчку, получаешь хэш и отправляешь его вместе с результатом. На стороне сервера делаешь то же самое и сверяешь хэш, вычисленный сервером, с тем, что отправил игрок. Если они совпадают — всё ок.
Было бы проще понять, что ты сейчас нагромоздил, если бы объяснил откуда берётся секретная строчка, и как она оказывается на сервере.
Если из исходной программы, то зачем лишние шаги, и как это вообще должно помочь? Если программу не исполнять на сервере, то выходит что сервер доверяет программе что результат, секретная строчка и хэш не подменены.
Хотя на фразе «добиваешь результат нулями чтобы усложнить брутфорс» можно было и остановиться.

Чтобы защититься от Артмани, можно проверять программу непосредственно перед отправкой результата. Игрок поменял счёт в артмани, нажал «Отправить» — а ты ещё раз прогнал программу, вычислил результат заново и сразу же отправил.
От артмани поможет, но давай предположим, что у игры открытый исходный код (Lua компилируется в байт-код, который легко декомпилировать).
Если человек настроен на подмену результата, ему ничто не помешает убрать строку выполнения, который находится прямо перед отправкой. Но в этом случае гораздо проще отсылать любое число вместо переменной результата.
Можно попытаться защитить программу от «взлома», написав какой нибудь самописный DRM, но это будет пустой тратой времени.

Но самым крутым вариантом было бы переложить верификацию над пользователей. Чтобы игра в фоновом режиме проверяла решения других игроков.
Вот этот вариант самый адекватный (после выполнения кода на сервере, но Илья просил другие варианты). Осталось добавить блокчейн, кошельки, и назвать Fungecoin'ом.
Он сводится к тому, что сервер не доверяет результатам, и хочет чтобы его проверили. Но всё зависит от того, как реализуется проверка, поскольку это всё таки не криптовалюта, в которой миллионы майнеров независимо проверяют результат. В какой нибудь медленный день, когда игроков в сети совсем нет, ничто не помешает мамкиному хакеру запустить сотню экземпляров «взломанной» игры, которая говорит что результат определённой программы правильный.
В таком случае есть два варианта - каждому игроку проверять каждый результат топовой таблицы (надеюсь, больше чем ТОП-100 не будет), либо если не на сервере, то хотя бы на компьютере Ильи держать проверятель топовой таблицы.
15  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 14 Апреля 2018 в 20:35
Посылать на сервер рекорд, программу, и отдельно проверять подозрительные рекорды.
Для какого нибудь ТОП-10 или даже ТОП-100 ещё сойдёт, остальные же могут оставаться непроверенными.
16  Разработка / Вопросы и ответы по GameMaker / Re: Ответы@Gmakers.xyz — все вопросы сюда : 14 Апреля 2018 в 20:24
Хм.
Скачал случайную картинку из интернета (эту).
Оригинал в .png - 435 килобайт.
Сохранил в .jpg - 59,5 килобайт (GIMP 2.8.22, качество 90).
Сохранил в .bmp - 1400 килобайт.
Сжал .bmp gzip'ом (1.8) - 634,4 килобайт.

Если переводить из .jpg, то выйдет следующее:
.jpg - 59,5 килобайт.
.png - 374,4 килобайт.
.bmp.gz - 553,4 килобайт.
17  Разработка / Вопросы и ответы по GameMaker / Re: Ответы@Gmakers.xyz — все вопросы сюда : 14 Апреля 2018 в 02:19
Они конвертируются в несжатый .bmp
Единственное, что ты можешь сделать, это загружать из внешнего файла.
18  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 30 Марта 2018 в 21:41
fixedsys.ttf может и является векторным, на деле он очень квадратный, поскольку является векторной версией растрового шрифта.
Попробуй какой нибудь Arial, и сразу увидишь что оно выглядит некрасиво на Windows.
19  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 30 Марта 2018 в 18:10
Шрифты выглядят абсолютно нормально
Потому что они растровые, а не векторные.
На счёт линий. Они выглядит так, словно рисуются со сдвигом в пол пикселя, а движок пытается компенсировать.
Только вот линии на macOS выглядят точно также, но поскольку они отрисовываются с поддержкой High DPI то оно практически незаметно. Поэтому предположу, что виновата толщина линий. Попробуй поменять настройки у love.graphics.setLineWidth, и опять же попробуй сдвинуть линии на 0,5-1,5 пикселя.
20  Проекты и Релизы / Проекты в разработке / Re: Fungeoid [игра для программистов, головоломка] : 28 Марта 2018 в 02:05
На сколько я понял, это проблема решаема на LOVE 2D, в отличии от GM'a. HiDPI здесь поддерживается.
Тебе нужно будет использовать love.window.setMode с флагом highdpi, и опрашивать love.window.getPixelScale чтобы знать само масштабирование, поскольку даже на macOS не обязательно будет High DPI (MacBook Air, iMac с 1080p экраном, Mac Mini, хакинтош).
Оно не работает на Windows и Linux, но такая же проблема и у SDL2, возможно что по одинаковой причине.

Ни разу не использовал LÖVE 2D
Страниц: 1 2 3 4 5 ... 60
RSGMC (gmakers.ru) © 2007—2018
Счётчик–@Mail.ru