lexpexkex (lexpexkex) wrote,
lexpexkex
lexpexkex

С++

В общем, нудился я, нудился на выходных.
Реализовывал потихоньку игровой смартфон.
Чтобы, типа, звонить можно было (тут просто включается уже реализованный диалоговый процессор), по миникарте ориентироваться (тут частично вышло, что хотел, частично нет, миникарта сама нормуль, но хотелось бы приделать к ней интерактив. А я пока не совсем понимаю, как её координаты пересчитать в игровые, учитывая, что у меня ещё и зум есть на ней), магазин (я ведь уже запилил основу для крафта, торговли и прочего вместе с инвентарём).
В общем, ковыряюсь в обработчике диалогов и у меня не то, чтобы проблема, но есть неудобство. Надо же при разговорах чтобы всё зависело от параметров и чтобы сами параметры диалог успешно изменял. И естественно, вся эта логика должна быть вынесена во внешний json-файл, где я буду всё править, не прибегая к программированию.
Короче, вся эта куча переменных очень неудобно была в двух функция в виде гигантских switch.
И тут у меня перемкнуло. А ведь в том же json-файле можно хранить не только диалоги и их логику, но ещё и параметры персонажа. И тогда мне не придётся за ними далеко ходить, ведь они тут же, в файле лежат. Читай себе и меняй. А потом подумалось, что зачем мелочиться, ведь туда и инвентарь запихнуть можно!
Единственное, что меня напрягало - это скучная реализация сериализации. Считать из json значения в переменные, потом наоборот, надо как-то всё это запихнуть в json-файл. Ведь параметры персонажа будут меняться и надо будет в будущем делать сохранения!

И вот тут меня перемкнуло во второй раз. А зачем мне страдать сериализацией? Ведь я получаю красивый rapidjson:: Document, где можно себе считать любое значение, обратившись к структуре документа. И даже можно его изменить.
Зачем мне сериализация, если я смогу напрямую работать с геттерами и сеттерами документа? И сохранить его в файл можно одной строчкой кода, как и загрузить.

В общем, либо это гениальное (для моих скромных возможностей) решение, либо на выходе получится лютый треш (ибо в классе персонажа практически отсутствуют и параметры и инвентарь и ХЗ откуда вообще они берутся).

Пока что, с учётом новой парадигмы, естественно, что мой инвентарь с системой крафта, торговлей и прочим стал совершенно непригоден (диалоги требуют минимального напилинга, ибо они уже базировались на json-файле). И придётся переписывать всё заново (точнее, хорошо адаптировать, потому что задачи круто изменились и старый код частично вообще не пригоден, хотя принципы, конечно, не поменялись, но иерархия классов уже пошла по одному месту, как и сам принцип независимых ячеек инвентаря).
Короче, я скоро в отпуск и надеюсь хоть там довести пару механик до финального результата.

ЗЫ. А зачем хохлам томос неподписанный привезли? И вот так у них всё...
1
Subscribe
Да, не сказал бы, что это- простой и понятный текст?):):)

С ПРАЗДНИКОМ!!!!!!
Тебя тоже!

levas555

1 day ago

Лекс , все зависит от того, насколько быстро оно будет читать. И какие объемы. Может и прокатить, но можно легко вляпаться в лаги.

lexpexkex

January 7 2019, 19:12:41 UTC 1 day ago Edited:  January 7 2019, 19:20:54 UTC

Поидее, при инвентаре и диалогах игру можно вообще останавливать.
Параметры игрока, да, могут породить лаги. Читать будет из памяти, так что, скорее всего, больших накладных расходов быть не должно. Хотя ХЗ, надо будет написать таймер и проверить время выполнения.
Больших объёмов не будет, сотни персонажей делать не собираюсь. Пока что склоняюсь к мысли, что это идея достаточно интересна. По производительности беспокоят только параметры персонажа, которые могут дёргаться не только во время диалогов и инвентаря, когда можно вообще всё останавливать, но и во время всяких боёв, например. Их можно будет и вынести из json.

braxwindfree

1 day ago

lexpexkex

1 day ago

braxwindfree

1 day ago

lexpexkex

1 day ago

braxwindfree

1 day ago

lexpexkex

1 day ago

braxwindfree

today

В общем просмотрел реализацию. С точки зрения производительности, идея не очень хороша.
Я, вроде, ещё ничего не выкладывал. Выложу аж после отпуска в хоть сколь-нибудь удобоваримом виде (с одним врагом, одним уровнем, парой ресурсов).
умничать не буду как лучше как хуже но креатив в правильном смысле этого слова это всегда хорошо. Делай потрфолио этими проектами устроишься в Москве или Питере или страшно подумать где еще...
Патриарх Московский и глава РПЦ Кирилл призвал россиян не впадать в зависимость от гаджетов.
По словам патриарха, такая зависимость сродни алкогольной или наркотической — электронные устройства лишают человека свободы и приводят к "дегуманизации" личности, уводя в виртуальную реальность.
Глава РПЦ также выразил мнение, что всемирная сеть гаджетов позволяет установить "вселенский контроль над человеческим родом", что, в свою очередь, знаменует "пришествие Антихриста". По словам патриарха, им станет тот, кто будет стоять "во главе всемирной паутины".
Утащат тя в ад,эти игры..
И там меня будет ждать персональный котёл и отопление.
Это даже как-то мило и заботливо.
А зачем хохлам томос неподписанный привезли?

не подписали сейчас, подпишут позже. теперь они турецкоподданные
Тяжело Трампу, но он своего добьётся.
Да и нефть радует))

blackhorror

today

lexpexkex

today

Лекс привет, тут тебе просили передать, что "уже давно вышла 2 версия Game Maker Studio, которая весит чуть меньше 2 сотен мегов и бегает по сети с кряком с разными цифрами после 2".
лучше бы ты никоса забанил, он долбоеб, ему не помочь :)
Есть куча прекрасных 2д-движков, не вижу смысла связываться с гейм-мейкером, да ещё и крякать.

Лучше уж Godot на 50 мегабайт с питоном и C#.

Более того, сейчас у меня цель написать на наиболее низком, доступном мне, уровне.
SFML для этого прекрасно подходит. Без проблем работа со спрайтами, но всё вручную.
Цель же не получить клон марио на выходе (это в современных движках за 10 минут делается), а научится чему-то в процессе.
Она медленно, но достигается. Заодно реализую на низком уровне механики из игры, вроде инвентаря, крафта, диалогов, которые потом можно будет перенести куда угодно.

temiar

today

Прям как во взрослых играх. Только там lua вместо json, что дает еще больше возможностей.

LUA круче, это язык.
А джейсон - просто текстовый файл, который, если правильно оформить, можно скормить библиотеке.

blackhorror

January 8 2019, 18:27:35 UTC today Edited:  January 8 2019, 18:29:17 UTC

Лекс, бросай свой оккупированный полуостров, доставай из загашника украинский паспорт и жми на Запад, пока ещё есть возможность и граница открыта.


Одним из результатов многолетнего подъема немецкой экономики стала рекордно низкая безработица и рекордно высокий уровень занятости. Оборотная сторона - растущая нехватка рабочих рук. "Дефицит квалифицированных кадров - это главная проблема предприятий в Германии, и эта проблема будет становиться все более острой на отечественном рынке труда", - говорил в октябре 2018 года министр внутренних дел Хорст Зеехофер (Horst Seehofer).

Выход немецкое правительство видит в превращении Германии в классическую иммиграционную страну. В этом году здесь примут еще один закон, упрощающий наем местными фирмами работников из других государств.

https://t.co/egTs7a2egy
Как IT-специалисты из Львова работают и живут в Берлине
Александр и София Кондрашовы - украинские специалисты, нашедшие работу в высокотехнологичных фирмах Германии. Корреспондент DW встретился с молодой семейной парой в Берлине.
В Немцы ему язык придется учить серьезно.А в Польшу,и так сойдет,от силы-курсы.
Леха,ты на призыв Гиркина,выходить майданить,откликнешься?Шмат новой родины отпиливают даже без референдума..

lexpexkex

January 9 2019, 08:59:54 UTC today Edited:  January 9 2019, 09:00:57 UTC


Наоборот, под портетом Путина сидел.
А на пару скал и принцип территориальной целостности России (Россия сама предпочитает этому принципу право сильного или богатого) мне насрать.
Сумеет Путин продать эти два острова - молодец, честь ему и хвала!

Зачем эти острова нужны? Чтобы тихоокеанскому флоту России супостат не угрожал.
Будет ли в будущем у России такой тихоокеанский флот, который можно остановить только базой на островах? После того, как чуть не утопили вместе с доком последний русский авианосец - очень сомневаюсь.

Эти острова имели значение для СССР. Для России это просто голые скалы.

lexpexkex

today

eisenberg_007

today

eisenberg_007

today

They liked it 0