×

Як правильно розробити логіку гри для Android (реалізація рівнів)?

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

Пишу додаток для Android на Python (Kivy library)

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

Тобто, я хотів запитати, можливо в когось є досвід, підкаже як правильно (швидше і безболісніше) все це реалізувати

Коротко про функціонал — екран телефону- зверху по бокам зявляються різні предмети. і летять до низу. знизу стоїть чоловічок ( який може рухатися лише по горизонталі) і треба тикати по екрану, для переміщення чоловічка.
цей чоловічок повинен при зіштовхуванні з прдметом відкидати його. Предмети двох типів — «правильні» і неправильні.
Якщо відкидаєш неправильні — гра закінчилася, якщо пропустив неправильний — такод кінець

Якось так

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
як правильно (швидше і безболісніше) все це реалізувати

Найміть програмііста. Хочете мучатись — зробіть самі. Це саме конкретне, що вам можна відповісти.
Як на мене робити гру з графікою під мобіли на пайтоні — є збоченням і на роботу вас з таким навряд чи візьмуть. Краще взяти якійсь Unity або cocos2d якщо геймдеву під мобіли бажаєте.

Не очень понятно, в чем суть вопроса. Нужны советы по геймплею или по организации кода?
Если по коду и я правильно понял вопрос, то могу дать таких советов:

1) Не делать уровни классами, а-ля Level1, Level2, Level3, а сделать один Game класс. А уровни вынести в какой-нибудь json\xml файлик и там править настройки для каждого уровня индивидуально.

2) Использовать пул для объектов, чтобы при респавне не создавать новые, а реиспользовать старые.

3) Не писать логику выхода объекта за экран в классах объектов. Потому что, в данном случае, объект не должен знать ничего о геометрии уровня. Теоретически он должен иметь возможность заспавнится в любом виртуальном мире и знать о границах мира А — это плохо, когда ты находишься в мире Б. В общем, в Game классе просто циклом пробегайся по заспавненным объектам и проверяй факт выхода за экран или пересечение с игроком. А объекты, в твоем случае, должны иметь только координаты и скин (текстуру).

4) Остерегаться new после инициализации игры, чтобы не теребонькать GC. Хотя игра у тебя простая и там нечему тормозить — это правило все равно стоит практиковать.

Самый очевидный и простой способ реализации уровней в такой игре — из тетриса: ускорение скорости падения с увеличением уровня.

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

Надеюсь, я правильно понял вопрос.

Здравствуйте, Я, Кирилл. Хотел бы чтоб вы сделали игру, RPG суть такова... Пользователь может играть Java программистом, тимлидом или заказчиком. И если пользователь играет программистом, то программисты в опенспейсе, столы деревянные набигают тимлиды и HR-ы. Можно грабить печеньки на кухне... И программисты раз джависты, то сделать так что там густой энтерпрайз... А движок можно поставить так, что вдали кажется что интересные проекты, а когда подходишь они преобразовываются в формошлеперство и клепание XML конфигов[1]. Можно ходить на тренинги по английскому и т.п. как в универе. И все начальники 3-хмерные, и пьяные тела колег после корпоратива тоже 3д. Можно играть в тенис и т.п. Если играть за тимлида, то надо слушаться PM-а, и защищать проект от злого (имя я не придумал) и бизнес аналитиков, и тестеров, и ходит на митинги когото из этих (программистов, злого...). Ну а если за заказчика... то значит тестеры и бизнес аналитики иногда блокируют релиз, пользователь сам себе командир может делать что сам захочет прикажит своим менеджерам с ним самим приехать в офшорный офис и заставит внести изменения в требования в самом конце проекта. В игре 4 зоны. Т.е. карта и на ней есть 4 зоны, 1 — зона новых кандидатов (нейтрал), 2 — зона начальников (с хорошими столами и дорогим чаем), 3 — зона программистов (опенспейс), 4 — зона злого... (в Европе, там штаб есть квартира заказчика...)

Так же чтоб в игре могли не только посадить на бенч, но и заставить овертаймить а если пользователь не успевает к дедлайну то задержат зарплату, так же заставить переписывать из-за новых требований но пользователь может не уволиться а просто лайкать котиков пол дня, или найти проект на апворке, если проект закроют тоже либо уволят либо будешь сидеть на бенче, или самое хорошее... найти проект на апворке. Сохраняться можно...

P.S. Я джва года хочу такую игру.

Підписатись на коментарі