Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/1: Рейтинг темы: голосов - 1, средняя оценка - 5.00
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3

Совместное создание игры

08.01.2025, 12:45. Показов 45631. Ответов 942
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
 Комментарий администратора 
Обсуждение вынесено из темы Ищу человека для совместного изучения программирования


Цитата Сообщение от Royal_X Посмотреть сообщение
Вот на моем неигровом ноуте последний UE без проблем запускается и не тормозит даже.
ок.
если ТС готов варганить со мной сапера, то я сделаю ещё одну попытку его(пожалуй 4 версию) установить и испытать.

собсно что нужно: формально отображать некие графические модели на экране в нужном его месте нужного масштаба,
для теста сойдут спрайты - а потом можно и анимированные модели голых девочек,
на усмотрение геймдиза))

и больше ничаво.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.01.2025, 12:45
Ответы с готовыми решениями:

Для чего создан язык С++?
Для чего создан язык С++????

создан массив
создан массив автовладельцев, для каждого известны Ф.И.О., номер, адрес...,Выяснить есть ли автовладельцы у которых имеются больше 1-ой...

Теория игр, массивы
Есть задание (прикрепил его в виде файла к сообщению). Есть решение для 12-ого варианта на BORLANDC, у меня 2-ой. Я изменил в начале...

942
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6289 / 3013 / 1051
Регистрация: 01.06.2021
Сообщений: 11,393
14.02.2025, 16:06
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от SmallEvil Посмотреть сообщение
Хотелось поработать совместно. Каждый пишет часть одной программы/системы.
я тут уже писал XLAT, что совместное программирование это когда

XLAT реализует int foo(), а я int bar(), и в конце нам остается return foo()+bar().

По такому принципу мы смогли немного поработать вместе, когда я создал игру на годот, а XLAT написал движок, и каждый не лез в работу другого. До этого я еще давно писал сапера, как на С++, так и на GDScript, и мне не было бы трудно все сделать самому. Но цель эксперимента как раз была в том, делать совместно, подстраивать игру под консольку XLAT.

А вот если подразумевать под совместным программированием - я начал писать код для функции, а ты заверши, то получится бред...

Добавлено через 2 минуты
Цитата Сообщение от SmallEvil Посмотреть сообщение
Где план работы, где взять фрагмент проекта на реализацию?
в том и проблема, что XLAT красиво объяснил принципы совместного программирования, но почему-то он выложил код, когда тот был уже полностью готов, кроме нескольких багов. И что тут другим продолжать? К тому же, он начал писать код, не договорившись, кто и что будет писать. А сейчас жалуется, что никто совместно не пишет.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
14.02.2025, 16:08
Цитата Сообщение от Royal_X Посмотреть сообщение
А вот если подразумевать под совместным программированием - я начал писать код для функции, а ты заверши, то получится бред...
Не совсем так, конечно.
Но в команде, каждый должен быть готов завершить код другого. (ну или не каждый, а хотя бы один такой должен быть)
Это может быть необходимо по различным причинам.
Включая правку/добавление, или как сейчас называют, уже не помню.
В этом нет ничего страшного.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6289 / 3013 / 1051
Регистрация: 01.06.2021
Сообщений: 11,393
14.02.2025, 16:13
Цитата Сообщение от SmallEvil Посмотреть сообщение
Но в команде, каждый должен быть готов завершить код другого.
но тут уже нужно комментировать код очень хорошо и порой даже комментов недостаточно, нужна постоянная связь с тем, кто писал код, ведь можешь наткнуться на такое, например:

C++
1
2
3
4
5
6
7
// эта функция возвращает объем сферического коня
double getVolume()
{
    double mass{};
    // тут незавершенный код, который нужно продолжить
    return mass;
}
И вот второй программист окажется в тупике. Он не знает, исправить функцию, которая вместо объема считает массу, или продолжить писать код для массы, а исправить только коммент и название функции.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
14.02.2025, 16:15
Апдейт к посту №756
Экстремальное_программирование
Это тоже можно попробовать, но нужно пройти сначала знакомство с простым совместным программированием, "каждой тваре по паре" - каждому кодеру по своей задаче.
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
14.02.2025, 16:20  [ТС]
Цитата Сообщение от Royal_X Посмотреть сообщение
в том и проблема, что XLAT красиво объяснил принципы совместного программирования, но почему-то он выложил код, когда тот был уже полностью готов, кроме нескольких багов. И что тут другим продолжать?
ну, не совсем так.
изначально была модель и консольный гуй для её(модели) тестирования.
на чем то же мне надо было модель тестировать)

Добавлено через 4 минуты
пацана жалко, но не знаю как помочь
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6289 / 3013 / 1051
Регистрация: 01.06.2021
Сообщений: 11,393
14.02.2025, 16:21
Цитата Сообщение от SmallEvil Посмотреть сообщение
Экстремальное_программирование
один программист занимается написанием кода, а его напарник в это же время непрерывно просматривает только что написанный код
напарник может поддаться суггестии: первый написал с ошибкой, напарник тоже пропускает данную ошибку, учитывая, что это такая каверзная ошибка, которую допускают даже опытные программисты. Тогда как второй он возможно и не сделал бы такой ошибки, если писал бы сам.

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

Такой метод можно назвать multipass
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
14.02.2025, 16:57
Нужно четко прописывать ТЗ. Что модуль делает, какой интерфейс предоставляет, какие требования по быстродействию, функционалу и пр. В проекте всегда должен быть главный разработчик, который видит всю картину. Каждый разработчик пишет свой модуль руководствуясь ТЗ. Тестировщики проверяют конечные модули. Один разработчик ничего не знает о внутреннем устройстве других модулей. Как-то так. Но для конкретно сапера это избыточно.
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
14.02.2025, 17:12  [ТС]
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Нужно четко прописывать ТЗ
что думают об этом те, кто гребет деньги лопатой, т.е. профи:
https://www.youtube.com/watch?... 22&t=3745s

там он полезное сказал: "кодер пишет ТЗ на япе."
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
14.02.2025, 17:49
Цитата Сообщение от XLAT Посмотреть сообщение
кодер пишет ТЗ на япе
Распространенное заблуждение. Если ты пишешь только под себя, то разницы нет, но даже в этом случае через энное количество времени можно забыть некие нюансы прошлой работы. По себе знаю.
Нужен отдельный документ на чистом русском/английском, где прописывается всё, что нужно знать для понимания системы. Понимание системы по коду это как ребус разгадывать - пустая трата времени. Пора уже это понять.
3
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6289 / 3013 / 1051
Регистрация: 01.06.2021
Сообщений: 11,393
14.02.2025, 18:21
Цитата Сообщение от XLAT Посмотреть сообщение
профи
если он профи, то я шахиншах Млечного Пути)

Сакутин - самопровозглашенный кодер (https://www.youtube.com/watch?v=kalhCVeOHjw&t=64s)

как ты вообще находишь такой мусор? у сакутина отсутствует мозг, банальная логика, а сам он выглядит как петушара из кладбища.
Кто-то в комментах написал "Их компания делает откровенно бездушные , картонные, пустые игры."
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
14.02.2025, 18:26
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Но для конкретно сапера это избыточно.
Кажется что избыточно, если писать простой сапер.
Но если писать более обобщенные его части, то можно разделить на несколько вполне независимых подзадач.
Хватит по одной на каждого из желающих в этой ветке. (3-5+ задач).
Да и проектировать так же можно вместе.

Например: предлагаю разделить сапер на след. подзадачи:
- Само поле и его элементы. (почему сущность поля отдельно, об этом позже)
- Генератор поля (бомб и прочего). Могу сказать что рандомный генератор очень часто создает логически неразрешимые ситуации, где приходится лишь угадывать с различными шансами 50% 33% и т.д. Для начала пойдет и такой.
- Система возможных событий взаимодействия с полем, включая колбеки.
- Конечная логика/правила игры. Условия победы и поражения и доп. условий, событий.
- GUI, это отдельная задача/тема, которую также можно декомпозировать.

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

Теперь посмотрим на первую цитату этого поста. Уже не так однозначно звучит?

Добавлено через 3 минуты
update: особенно учитывая, что стандартный сапер нас особо не интересует, а вид конечного или возможных мы ещё не знаем.
Поэтому обобщенные и по возможности универсальные его части дадут нам или другим свободу експериментировать и фантазировать. Что бы получилась залипательная игрушка на несколько часов/десятков часов/ 50+ игр и т.д.
1
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
14.02.2025, 18:48
Цитата Сообщение от SmallEvil Посмотреть сообщение
Если достаточно гибко написать эти компоненты, можно создать массу разнообразных "саперов" с минимальными правками и большими отличиями как визуально так и геймплейно.
Полностью согласен. Тут простор для самовыражения.
Цитата Сообщение от SmallEvil Посмотреть сообщение
Генератор поля (бомб и прочего). Могу сказать что рандомный генератор очень часто создает логически неразрешимые ситуации, где приходится лишь угадывать с различными шансами 50% 33% и т.д. Для начала пойдет и такой.
Я уже в этой теме выкладывал свою рэндомную генерацию поля и расстановку мин. Правда консольный вариант. XLAT тоже выкладывал свой вариант. А вот как быть с неразрешимыми ситуациями, тут надо думать. И я уже тут писал об этом, что надо бы это учесть, хотя в оригинале это не учитывается. Мне осталось сделать модель поля, то есть формат представления состояния конкретной ячейки. Склоняюсь к одному байту, меньше памяти займет, а состояния выражать при помощи отдельных битов. И функции отрисовки рамок,табло со счетом, секундомера и самого поля.
Хочу еще свои спрайты сделать причем под разный масштаб.
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
14.02.2025, 19:18  [ТС]
Цитата Сообщение от SmallEvil Посмотреть сообщение
Например: предлагаю разделить сапер на след. подзадачи:
переписую на яп:
1.
Цитата Сообщение от SmallEvil Посмотреть сообщение
Само поле и его элементы. (почему сущность поля отдельно, об этом позже)
C++
1
2
3
4
struct Field
{
...
};
2.
Цитата Сообщение от SmallEvil Посмотреть сообщение
Генератор поля (бомб и прочего).
C++
1
2
3
4
struct Logic
{
...
};
3.
Цитата Сообщение от SmallEvil Посмотреть сообщение
Система возможных событий взаимодействия с полем, включая колбеки.
C++
1
2
3
4
struct Controller
{
...
};
4.
Цитата Сообщение от SmallEvil Посмотреть сообщение
правила игры
...должны идти второй строчкой после идеи игры ...
строка текста, согласно которой заполняются выше обозначенные модули.

5.
Цитата Сообщение от SmallEvil Посмотреть сообщение
GUI, это отдельная
namespace gui
{
...
}

мне нравится идея писать ТЗ на япе.
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
14.02.2025, 20:37
Это базовый план.
Потом для каждого из пунктов прописываешь конкретную задачу и интерфейс.
Задачи пишутся текстом. Интерфейс в виде диаграмм. Или же, опять, текстом.

Потом пишутся интерфейсы и всё остальное для выполнения поставленной задачи.
Интерфейс может быть дополнен или изменен с предложениями утвердить их.

ТЗ на ЯП - моя плакать.
XLAT, наверное, то что ты хочешь сказать называется как то по другому.
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
14.02.2025, 21:00  [ТС]
Цитата Сообщение от SmallEvil Посмотреть сообщение
наверное, то что ты хочешь сказать называется как то по другому.
ты, наверное, хотел сказать,
что тз не пишутся для кодеров,
тз пишутся для спонсоров, которые по тз определяют какие финансы нужно отслюнявить на команду.

на самом деле, тз пишет геймдизайнер на обычном языке, потому что он не знает яп.

но, тот же Сакутин - молодца, четко уловил, что в геймдеве тз вреден, ибо ограничивает свободный полет фантазии...
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
14.02.2025, 21:04
Цитата Сообщение от XLAT Посмотреть сообщение
что тз не пишутся для кодеров,
Откуда тогда кодер будет знать что кодить?
Или я проспал где то 50 лет, и уже не важно что кодить и как называть?

Так и не понял, желает ли кто совместно пописать и покакать сапера?
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
14.02.2025, 21:17  [ТС]
Цитата Сообщение от SmallEvil Посмотреть сообщение
Или я проспал где то 50 лет, и уже не важно что кодить и как называть?
из тз, на языке, который можно понять.

Цитата Сообщение от SmallEvil Посмотреть сообщение
Так и не понял, желает ли кто совместно пописать и покакать сапера?
а тз уже готово?

Добавлено через 1 минуту
Цитата Сообщение от SmallEvil Посмотреть сообщение
Так и не понял, желает ли кто совместно пописать и покакать сапера?
да, я пишу сервер на 100500 клиентов для казино-сапера.

Рояль_X ничего, вроде, не пишет - его можно загрузить по полной)
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6289 / 3013 / 1051
Регистрация: 01.06.2021
Сообщений: 11,393
14.02.2025, 22:29
вам что ТЗ написать?
0
 Аватар для SmallEvil
4086 / 2975 / 813
Регистрация: 29.06.2020
Сообщений: 11,000
15.02.2025, 01:03
Цитата Сообщение от XLAT Посмотреть сообщение
ты, наверное, хотел сказать,
что тз не пишутся для кодеров,
Цитата Сообщение от XLAT Посмотреть сообщение
из тз, на языке, который можно понять.
Сам себе противоречишь в каждом втором посте.
Русский можно понять?
0
Just Do It!
 Аватар для XLAT
4219 / 2680 / 656
Регистрация: 23.09.2014
Сообщений: 9,235
Записей в блоге: 3
15.02.2025, 05:46  [ТС]
Цитата Сообщение от SmallEvil Посмотреть сообщение
Сам себе противоречишь
ок, тогда меня можно не слушать.

моё ключевое:
1. я не против тз в любом виде.
2. текущее: тз существует в виде готовой старой игры.
3. текущее: тз модификация отдаётся на аутсорсинг участнику делающего модуль.
4. 2 и 3 не противоречат, а дополняют друг друга.
5. устанавливается тока интерфейсная часть между модулями для стыкования этих модулей.

Цитата Сообщение от Royal_X Посмотреть сообщение
вам что ТЗ написать?
вместо этого вопроса уже бы само тз сюда бы написал)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.02.2025, 05:46

Решение матричных игр. Есть у кого такая программа написанная уже...
Требуется программа по решению матричных игр... С выбором размера матрицы и выдачей решения... Может кто смогёт такую сбатцать?

Запуск приложений(старых игр) в оконном режиме
День добрый, подскажите, хотелось бы реализовать свое желание запуска старых игр windo`вых(типа StarCraft) в оконном режиме, с чего начать,...

Алгоритм календаря игр (например в футболе)
необходимо составить календарь футбольных матчей, допустим есть 6 команд char *teams = {"TEAM A","TEAM B","TEAM...

Движок для игр
Всем привет!!!, хотел узнать возможно ли создать движок на C++ чтобы экспортировать модели из 3ds max а после в самом движке можно было...

Выбор IDE для создания 2D игр
Здравствуйте. Задача сделать пака 2ух – мерные драчки загружая в проект анимацию-как удар(ы) и реакция на удар...(лучше всего секвенцию...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
760
Закрытая тема Создать тему
Новые блоги и статьи
Многофункциональное здание: как одно здание порождает конфликты требований, которые никто не планировал (мат мет мод 29)
anaschu 23.06.2026
Многофункциональное здание: как одно здание порождает конфликты требований, которые никто не планировал Материалы для обсуждения с МГСУ · 2026 Рисунки внутри приложенного ворд файла. Что за. . .
28. Конкретное развертывание плана номер 1 из поста номер 27
anaschu 22.06.2026
Можно ли из модели получить конкретные строительные требования? Честно — напрямую из текущей модели такие ответы не получить. Но цепочка логики есть, и она не такая длинная. Где разрыв . . .
27. Планы на разработку функциональных требований к строительству внутри модели пищеблока (или не только его?)
anaschu 22.06.2026
Что уже реализовано и даёт конфликты «бесплатно» Самый простой конфликт уже работает — конфликт за ресурс-работника. Заданий больше, чем доступных поваров → очередь в queue1. Это прямое отражение. . .
26. мед мат модель.Какие типы конфликтов функциональных требований можно рассчитать через ДЕС-моделирование (СМО) в AnyLogic?
anaschu 22.06.2026
Что ДЕС/ СМО умеет считать напрямую: Конфликты за ресурсы (очереди, узкие места). Несколько типов агентов (повара, учителя, рабочие, пациенты) претендуют на один ресурс (лифт, вход, коридор,. . .
25 модель здравосохранения и функциональных требований к пищеблоку: конфликты функциональных требований.
anaschu 22.06.2026
Есть ли данные о том, какие функциональные/ эксплуатационные требования или их сочетания труднее всего учитывать при проектировании зданий? Да, такие данные есть, и они хорошо описаны и в российской,. . .
Remote Connection Manager
DevAlt 21.06.2026
Написал для себя небольшую прилагу: https:/ / github. com/ altbodhi/ ReConMan По итогу пришел к мысли, что DU не дружат с существующими технологиями. От сериализации до отображения в реляционную. . .
Администрация Хабра удаляет новые энергоэфективные алгоритмы, которые не западной школы кода, и вовсе никак не сгенерированы
Hrethgir 20.06.2026
Делается это, как замечено, при правках - при объявлении концептуальных отличий в алгоримах. Делается это, по линейке событий - после дополнения публикации основными отличиями от основных западных. . .
Процесс ориентированная диалектика (не новость - просто системное обновление, философия).
Hrethgir 20.06.2026
Однажды один участник в своём блоге, на этом форуме, сделал запись "О языках замолвите слово". Понимая, что язык - важная вещь, я решил хорошо подумать, прежде чем сказать, и сказал то, что вы видите. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru