![]() |
Разработка игры "DooM story"
Привет! Делаю игрушку на мидлет паскале. Многое сделал, скоро выложу демку. Но возникла проблема: сохранения.
Нормально использовать для этой цели хранилища не вышло. Хранить сейвы в файловой системе телефона более чем глупо... Тут приходит в голову решение знакомое людям помнящим древние консоли: пароль. Игра - рпг, так что в пароль в неявном виде должны входить и характеристики героя. Сделать такой пароль оказалось достаточно просто. Но есть опять же проблема! :SOS: Введенный пароль (11 символов) необходимо разбить необходимо разбить на части. Простое решение: Цитата:
|
Ответ: Помогите разобраться с длиной пременной
Уф, решение нашлось. Если у кого будет похожая проблема, то:
Цитата:
|
Ответ: Помогите разобраться с длиной пременной
Ждём DEMO:pure_magic:
|
Ответ: Помогите разобраться с длиной пременной
Знаете чё, друзья, прежде чем задавать вопрос - полистайте мануал по МП. Хорошая штука знаете ли
|
Ответ: Помогите разобраться с длиной пременной
Цитата:
|
Ответ: Помогите разобраться с длиной пременной
:-D Ну-у-у... Не надо мне напоминать грешки той недели :-D
|
Ответ: Помогите разобраться с длиной пременной
Давайте я вам скрины чтоль пока покажу:
![]() ![]() ![]() Думаю идея игры сразу становится понятна... |
Ответ: Помогите разобраться с длиной пременной
о боже как плохо ты владеешь графикой
|
Ответ: Помогите разобраться с длиной пременной
идея непонятна)
|
Ответ: Помогите разобраться с длиной пременной
NitE, а что именно так тебя ужасает?
Просто я сомневаюсь пока, что лучше: скрины моделей (то что ты видишь) или спрайты из дум64. Если прям очень уродливо, то попробую спрайты.... |
Ответ: Помогите разобраться с длиной пременной
demon112, идея проста: дум + фф
|
Ответ: Помогите разобраться с длиной пременной
конкретно просто ужасно вылядит первый скрин, гд ты попытался кривым шрифтом и невписывающимся шрифтом чтото дописать
|
Ответ: Помогите разобраться с длиной пременной
О_о
Я ожидал, что ты скажешь либо про уродца на 2ом, либо меню выбора на 2ом и 3м... Сверху собственно надпись дум взята из оригинала, а слово стори тип хайтечно)) Ладно, пасиб, что сказал, постараюсь как-нить посимпотяшней сделать... |
Ответ: Помогите разобраться с длиной пременной
не, меню конечно тоже не конфетка, но его ещё можно стерпеть, в отличие от надписи на первом - если поправишь будет здорово ))
|
Ответ: Помогите разобраться с длиной пременной
|
Ответ: Помогите разобраться с длиной пременной
дай плиз исходную картинку без изменений
|
Ответ: Помогите разобраться с длиной пременной
Вложений: 1
|
Ответ: Помогите разобраться с длиной пременной
Как только окончательно разберусь с перемещением персонажа, сразу будет демо.
![]() ![]() |
Ответ: Помогите разобраться с длиной пременной
Вложений: 1
\\\\
|
Ответ: Помогите разобраться с длиной пременной
Спасибо за попытку помочь, но лого дум3 + марс из дум3 лучше не вставлять. Игра основана на сюжете первого дума (вернее даже книги по первому думу).
Но в принципе симпатично))) |
Ответ: Помогите разобраться с длиной пременной
ну вот надпись стала лучше
|
Ответ: Помогите разобраться с длиной пременной
Вложений: 1
марс - настоящий
лого - старо как мир |
Ответ: Помогите разобраться с длиной пременной
Да, теперь совсем здорово)))
О_о мир появился в 1993??? Чегот меня глюкнуло кстати в думе не был глав гер на марсе... Ну лан, небольшая отсебятина - не страшно))) Может склероз пробил... 93й все таки давно был... |
Ответ: Помогите разобраться с длиной пременной
Вложений: 1
Вот демка.
Я бы это назвал тек демо, т.к. она только показывает что в принципе реализовано/будет реализовано. (т.е. доделано все будет не скоро) + ищу желающих помочь (нужна помощь в рисовании сцен для боя и перемещения персонажа) |
Ответ: Помогите разобраться с длиной пременной
Тема Помогите разобраться с длиной пременной :-D
|
Ответ: Помогите разобраться с длиной пременной
Цитата:
|
Ответ: Разработка игры "DooM story"
ViNT, спасибо)
|
Ответ: Разработка игры "DooM story"
Возник у меня еще вопрос:
Нужно написать текст, выровненый по правому краю. В хелпе подобного не нашел, т.е. в мидлете таких функций нет. Кто знает, может в либе какой есть? Или просто как сделать? |
Ответ: Разработка игры "DooM story"
глянь алгоритм из fallout qest в моих исходниках.
___ хотелось бы чтоб твой интерфейс адаптировался под разрешение экрана, a то не помещается в 176х208 |
Ответ: Разработка игры "DooM story"
abcdef, прочитал целиком исходники. Выравнивания не нашел.
Или ты к тому что можно использовать шрифт наподобие курьера и считать символы? Насчет разрешений: вся графика в игре растровая, т.е. под 176х208 надо её всю переделать. Под 176х208 будет отдельная версия, а владельцы 176х220 вероятно будут довольствоваться ей же, но с черной полосой внизу. Вобще я советую пускать игру через кемулятор, но при запуске нажимать alt+r, т.к. иначе последняя строка текста с экрана не видна. |
Ответ: Разработка игры "DooM story"
чтобы сделать выравнивание по правому краю достаточно выводить строку с конца
|
Ответ: Разработка игры "DooM story"
В смысле как-то так?
Код:
program abcdef; |
Ответ: Разработка игры "DooM story"
Есть такая функция function GetStringHeight(text: string): integer;
, как написано в хелпе: Returns the height (in pixels) for showing the 'text' on display in the current font. Поэтому я думаю, что с помощью нее труда вывести текст справо не составит труда.. |
Ответ: Разработка игры "DooM story"
Спасибо))
Только в нашем случае getStringWidth нужно. Высота нам любая подходит. В хелпе искал подобное в строках, а оно в рисовании оказалось... |
Ответ: Разработка игры "DooM story"
Цитата:
|
Ответ: Разработка игры "DooM story"
я бы написал для всей строки сразу: drawtext(s, maxw-getStringWidth(s),ypos);
где s - строка текста, maxw-граница правого края, ypos - у координата и для посимвольного вывода: Код:
var p.s. png нужно оптимизировать, 500 кб слишком много. Лучше сразу делать графику под разрешение 176x208 (176x220) т.к. они наиболее распространены, или 128x128 чтоб работало практически везде. |
Ответ: Разработка игры "DooM story"
Насчет png: часть картинок оптимизирована, а те для которых важна полупрозрачность - нет.
Все ресурсы сейчас 575кб. Думаю полная игра будет ~1.5мб. Т.к. сначала делаю под 240х320, а там телефоны в основном мощные, то думаю это норм. 176х208 уже не так сильно распространены. Года 2 назад еще может быть, а сейчас уже почти у всех 240х320, так что я даж не запаривался о разрешении. И вобще уже стоило бы задумываться о разрешении как на 5800 и тач скрине. |
Ответ: Разработка игры "DooM story"
А собрать универсальную, под все разрешения от 128*128 до 320*240, никак?
|
Ответ: Разработка игры "DooM story"
AVIZO, мидлет паскаль умеет ресайз картинкам делать, векторную графику поддерживает или ты предлагаешь запихать туда графики на все разрешения (будет игра на 10 метров)?
В нашем (как и в большинстве других) случае придется делать несколько версий. Я ограничусь 2мя: 240х320 и 176х208. За 176х208 возьмусь когда закончу 240х320. |
Ответ: Разработка игры "DooM story"
если делать средствами MP, то картики без прозрачности лучше соединить в однин файл, а разбивать на отдельные при загрузке. А лучше создать свой формат изображений с фиксированным набором цветов. в сети много советов как оптимизировать j2me архивы
__ p.s. на этом форуме у немногих есть устройства с разрешением 240х320, а смотреть в эмуляторе удовольствия мало |
Ответ: Разработка игры "DooM story"
Важен не только размер но и качество. Поэтому у всех картинок разные палитры (в некоторых вообще 16цв).
Если загнать в одну, то придется использовать гораздо больше цветов (практически полный ргб) либо использовать в картинках меньше цветов (и ![]() Так что лучше продолжать как есть. К тому же сделано еще далеко не все. И о вещах второстепенной важности задумываться пока не стоит. Опрос своего кл из аси (разрешение - люди): <176x208 - 4 176х208/176х220 - 8 240х320 -19 >240х320 - 6 |
Ответ: Разработка игры "DooM story"
да пускай делает 240х320 если у него тел с таким разрешением. я к примеру делаю для себя 176х220 и тестю на теле, а уже потом делаю версию 240х320. или сразу делаю мультискрин.
насчет демо, то плавающие астероиды в меню лучше сделать под названием игры. а курсор лучше сделать привязанным к пунктам меню, то есть. сначала он стоит на 1 пункте, потом нажимаешь вниз, он перемещается сам ко 2 пункту хоть скачком, хоть плавно, но штоб не приходилось самому двигать до нужного места. еще в самом начале появляется лого cherepets game. в ресурсах лежат 2 изображения. один из которых затемненный. затемнить можно с помощью либы effects и тем самым второе изображение не нужно. ну и текст можно было бы вывести стандартными средствами или использовать граф. шрифты. для каждой надписи картинку - слишком шикарно. да и сжать изображения тоже не помешает. 128 цветов и индексной прозрачность спокойно хватит для java игры. размер архива все же критичен для некоторых телефонов. |
Ответ: Разработка игры "DooM story"
Цитата:
Цитата:
Цитата:
Думаю это вполне нормально. |
Ответ: Разработка игры "DooM story"
Цитата:
|
Ответ: Разработка игры "DooM story"
Думаю разница будет невелика если я просто зажму картинки до максимума (2 цвета: белый + транспанент)
Собственно помощь показанная в демке - это и есть вообще вся помощь. |
Ответ: Разработка игры "DooM story"
Ээ... Графических шрифтов вероятно не будет((
При подключении любой либы мидлет у меня отказывается что-либо компилить((( Хз почему... |
Ответ: Разработка игры "DooM story"
Совместимость с windows 95 или 98 или 2000 ставил?
|
Ответ: Разработка игры "DooM story"
Да, уже пробовал.
Вобщем-то пофиг, мне они не сильно и нужны)) |
Ответ: Разработка игры "DooM story"
Вложений: 2
Ну, вот вроде и все!
Смотрите, отписывайтесь)) |
Ответ: Разработка игры "DooM story"
:super:
|
Ответ: Разработка игры "DooM story"
На эмуле запускается, но разрешение слишком большое :) АДаптировал бы под тач скрин, затестил бы на мобилке ))
|
Ответ: Разработка игры "DooM story"
О.о вот ет размер. графику не помешало бы сжать, ты бы еще в бмп перегнал.
курсор - 3 кб..... в фш открыл и сохранил - получилось около 300 байт. остальную графику тоже не помешает сжать, 128 цветов за глаза хватит на телефон, пускай там хоть 16 мильёнов цветов. |
Ответ: Разработка игры "DooM story"
в jar-файле без разницы в каком формате хранятся графические файлы, т.к. всё и так упаковывается, а после загрузки хранится в памяти в собственном формате. Единственный минус - в BMP нет прозрачного цвета - его нужно эмулировать.
___ оптимизировать размер лучше созданием одного файла со всеми изображениями (будет меньше служебной информации), содержащего фиксированную, минимальную палитру |
Ответ: Разработка игры "DooM story"
Цитата:
Нет, то что сейчас в пнг-28, то в нем и останется, т.к. полупрозрачность на мой взгляд в них важна. Ну так чего? Какие баги, просто недоработки нашлись? |
Ответ: Разработка игры "DooM story"
Цитата:
|
Ответ: Разработка игры "DooM story"
Супер игрушка !
|
Ответ: Разработка игры "DooM story"
Dj_Alex, рад что нравится.
Слушайте, а если я буду каждую секунду делать скриншот области 240х320, ресайзить его и выводить на то что есть, то ведь получится мультискрин? Стоит такую лажу делать или же ресайз всех ресуросов и переделывание координат? |
Ответ: Разработка игры "DooM story"
Цитата:
Мне кажется, нужно просто ресайзить все рессурсы заранее; или при инициализации программы. PS: у меня сименс c75, буду рад увидеть твою игрушку для него ) |
Ответ: Разработка игры "DooM story"
Просто у меня не выходит нормально текст умещать на 176х. Ресайзить скрины было бы самым простым решением, но наверно не лучшим...
Сейчас думаю как бы это было правильно замутить... Наверно тупо сделать процедуру для такой лажи и перед каждым репаинтом её вызывать... Игра не особо динамичная, так что сойдет надеюсь... |
Ответ: Разработка игры "DooM story"
Вложений: 1
На эмуле пашет только если экран больше чем 240х320, а на мелких нет(((
У кого маленький, проверьте тоже хрень или как? |
Ответ: Разработка игры "DooM story"
Цитата:
Но больше всего пугает размер - 1,5Mb !!! Надо что-то с ресурсами делать, в любом случае. Такая игра ну никак не должна быть больше 200-300 Kb (да и то многовато). По первой ошибке могу посоветовать использовать либу Lib_scodes, с помощью которой можно определить платформу телефона. Если Нокиа, то вызывать com/nokia/mid/uiFullCanvas, если другие телефоны - не вызывать. Но еще раз повторюсь - вес в полтора мега - это слишком круто. У меня 100% не запуститься с таким размером мидлета. |
Ответ: Разработка игры "DooM story"
Вложений: 1
Судя по ошибке дело в настройках мидлета.
Тоже самое с обычным мидп2 + все ресы сильно пожал (кач-во тошнотворное, но размер вышел 970кб... лажа блин...): |
Ответ: Разработка игры "DooM story"
А если твою игру разделить на несколько эпизодов напр. так :
DooM story episode 1 DooM story episode 2 . . . И все мисии равномерно разнести по ним? |
Ответ: Разработка игры "DooM story"
#63 - согласен! это наверное лучший вариант..
|
Часовой пояс GMT +4, время: 05:33. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot