Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2010, 22:36   #1
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию Карточная RPG

Решил сделать Карточную RPG.
Временное название пока: Magic Story
Пока реализован только интерфейс, управление, некоторые свойства карт и отображение информации о карте.
До реализации серверной части игра будет оставаться неиграбельной.
Начать реализовывать серверную часть планирую после НГ.

Есть оконный и полноэкранный режим.
Полноэкранный режим пока "заточен" под разрешение 1680х1050.
Оконный - любое разрешение.
(Переключение между режимами F11)

Пока планирую до НГ продолжать дорабатывать интерфейс, управление и т.д.
Есть музыкальное сопровождение

Во вложениях скрины и последняя версия недоигры.

http://programmersclub.ru/wp-content.../files/MS1.rar
Изображения
Тип файла: jpg S1.jpg (77.5 Кб, 227 просмотров)
Тип файла: jpg S2.jpg (96.1 Кб, 224 просмотров)

Последний раз редактировалось Beermonza; 22.12.2010 в 22:54.
ZBEP вне форума Ответить с цитированием
Старый 22.12.2010, 22:46   #2
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

Если кто-то знает великий секрет того, как сделать так, что бы IdTCPServer мог отсылать команды IdTCPClient, без наличия в программе-сервера IdTCPClient и наличия в программе-клиента IdTCPServer, то пожалуйста поделитесь этим секретом)
Т.е. Я планирую что программа-сервер будет отдельно распространяться и все клиенты будут коннектиться к нему (если выбран интернет режим, а не сетевой).
Т.е. На клиенте во время интернет режима активен будет только IdTCPClient, он должен отсылать команды серверу и принимать их от него.
На сервере должен быть активен только IdTCPServer, он должен принимать и отсылать команды клиенту.

П.с.
Не хочется просто делать по корявому, в данный момент сервер может только принимать, а клиент отсылать, (т.е. и на сервере и на клиенте размещены IdTCPServer для принятия и IdTCPClient для отправки команд) не правильно как-то это.

П.п.с.
Еще такой глупый вопрос, пока нет возможности потестить и выяснить как правильнее.
Порты у клиентов, при активном подключении (Клиент <- Сервер -> Клиент или Клиент/Сервер <-> Клиент/Сервер), обязательно должны быть разные или нет?
Если обязательно должны быть разные, то как правильнее узнать какие порты уже заняты, что бы подключиться под индивидуальным портом?

Ну и если есть советы по поднятию игрового сервера, то будет интересно почитать.

Последний раз редактировалось ZBEP; 22.12.2010 в 23:14.
ZBEP вне форума Ответить с цитированием
Старый 25.12.2010, 21:23   #3
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

Изменения:
- Хранение информации и статов карт в ini файле.
- Ввел параметры играков.
- Начал делать боевой режим.
- Весь текст теперь выводится как положено, но шрифт походу придется самому рисовать, т.к. не очень красиво выглядит то, как есть.
Для текста кнопок меню используется шрифт Matilda.ttf (есть в архиве).
Если в системе он не установлен, то будет использоваться стандартный шрифт.
- НедоИгра подгоняется под размер рабочего стола не теряя пропорций. (Пока коряво).
- Что-то еще, но я уже не помню XD

http://programmersclub.ru/wp-content.../files/MS3.rar

Последний раз редактировалось ZBEP; 25.12.2010 в 21:26.
ZBEP вне форума Ответить с цитированием
Старый 26.12.2010, 23:02   #4
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

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

(Из команд пока только отчет об удалении карты, добавлении карты, хода картой (куда пошел, откуда пошел и чем пошел), ну и статы игроков).

П.с.
Клиент-сервер сделал на IRC.
ZBEP вне форума Ответить с цитированием
Старый 01.01.2011, 04:54   #5
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

Т.к. уезжаю завтра на неделю, то решил выложить сейчас последнюю версию на данный момент.
Сетевое меню пока не дорисовал, но добавил меню "Настройки"
Там можно выбрать:
-Оконный режим.
-Разрешение (любое, но пока только соотношение 16/9).
-Шрифт.
-Размер шрифта.
-Адрес к подключаемому серверу.
-Порт к подключаемому серверу.

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

Сделал динамическое изменение статов для каждой из карт (ну точнее для карт уже было, но тогда при изменении параметров, к примеру Карты №5 значения менялись у всех Карт №5 на поле. Теперь параметры меняются только у той карты, у которой они были изменены) + там с параметрами героев кое что сделал.

Во вложении сама "игра" и отдельно серверная часть (как меню дорисую - встрою серверную часть в игру, что юы можно было играть не только через инет, но и по сети).

П.с.
Сейчас стандартный адрес серва там стоит "zbep.dyndns-server.com", но он у меня еще не запущен, поэтому тем кто хочет протестировать "игру" по сети, необходимо будет запустить сервер и вписать свой локальный адрес компа в настройках. Для двустороней связи достаточно 1 запущенного сервера в сети.

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

С Новым Годом!

http://programmersclub.ru/wp-content.../files/MS5.rar

Последний раз редактировалось ZBEP; 01.01.2011 в 04:56.
ZBEP вне форума Ответить с цитированием
Старый 02.01.2011, 12:51   #6
Liaksey
Новичок
Джуниор
 
Регистрация: 29.04.2009
Сообщений: 1
По умолчанию

Здравствуйте, мне очень понравилась ваша программа, особенно оформление порадовало! Меня интересует фоновая картинка, вы её сами рисовали? По программе заметил, что при разрешении 1366 длина выставляется нормально, а с шириной малость коряво(экран 16:9), у меня при игре снизу срезаются меню(сравнивал с оконным режимом).
А игра хорошая, удачно доделать!
Liaksey вне форума Ответить с цитированием
Старый 06.01.2011, 08:22   #7
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

Liaksey, спасибо, фон и карты рисовал не я, но подбирал относительно долго, что бы атмосферность не портило
С разрешением и сохранением пропорций пока коряво, если не 16:10, то либо будет полоса (снизу или справа), либо во весь экран будет но не сохранены пропорции.
В ближайшее время постараюсь исправить.

Новая версия, наконец играбельна:
-Исправил "метод" загрузки текстур.
-Все настройки хранятся в файле Settings.ini в корне папки с игрой.
-Добавил серверную часть в игру.
-Добавил настройки сервера (порт).
-Временно убрал установку авто-разрешения при запуске (позже добавлю вкл/выкл авто-разрешения в меню).
-Синхронизировал весь наносимый урон по картам и игрокам, если здоровье игрока ниже 1, то он проигрывает.

Подробнее:
Теперь для игры по сети необходимо перейти:
Новая игра -> Создать.
Что бы подключиться к Вам, Ваш противник должен перейти:
Новая игра -> Подключиться.
Настройки подключения и сервера можно выставить в меню "Настройки".
Как только в игру входит противник начинается игра.
После запуска сервера в сети если к примеру к вам подключатся 3 игрока, то Вы будете играть с одним из-них, для оставшихся игроков будет автоматически "создана" отдельная игра и они будут играть не зависимо от Вас (ну пока запущен сервер).
Звуковые настройки добавлю позже.

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

П.с.
Если кто-то заметит какие-нибудь баги или "игра" будет вылетать или зависать, то пишите сюда, буду исправлять.

http://programmersclub.ru/wp-content.../files/MS7.rar

Последний раз редактировалось ZBEP; 06.01.2011 в 08:40.
ZBEP вне форума Ответить с цитированием
Старый 06.01.2011, 08:40   #8
Asker13
Форумчанин
 
Аватар для Asker13
 
Регистрация: 01.12.2010
Сообщений: 140
По умолчанию

Привет. У меня есть вопрос: как управлять картами ? У меня получается только выделять их, но ни перетаскиванием, ни щелчком по ним ничего не происходит. Нажимаю на "следуюший", но только выделение снимается. Кстати, может быть стоит сделать выделение карты только по щелчку, а при наведении курсора только подсветку карты? Атмосфера игры хорошая, мне нравится.
Asker13 вне форума Ответить с цитированием
Старый 06.01.2011, 09:45   #9
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

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

П.с.
Если карты прозрачные - то значит не достаточно маны для ее использования.
Если у Вас белый IP, то к вам смогут подключаться луди через интернет.

Последний раз редактировалось ZBEP; 06.01.2011 в 10:58.
ZBEP вне форума Ответить с цитированием
Старый 07.01.2011, 11:26   #10
ZBEP
Форумчанин
 
Аватар для ZBEP
 
Регистрация: 23.03.2009
Сообщений: 334
По умолчанию

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

П.с.
Ах, да, я и забыл, что изначально сила магии = 0 и следовательно мана, 10 стоит потому что мне для тестов так удобнее)

П.п.с.
Если у кого-нить есть предложения и т.д. то пишите, интересно почитать.
(Насчет разрешения в полноэкранном режиме еще не придумал как избавиться от полос на мониторах не 16:10, т.к. все управление привязано на координаты мыши, то поменяв положение полей/карт и т.д. для устранения полос придется менять условия управления).

Последний раз редактировалось ZBEP; 07.01.2011 в 17:12.
ZBEP вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
карточная игра 21 parasite_eve Gamedev - cоздание игр: Unity, OpenGL, DirectX 13 02.11.2009 12:59
Карточная колода при помощи Switch на С++ Amen Общие вопросы C/C++ 1 28.02.2008 08:24
Помогите с игрой в Visual Basic (совершенно любая, карточная, домино, дарц и т.д.) leogirl Gamedev - cоздание игр: Unity, OpenGL, DirectX 6 13.11.2007 19:18
Карточная игра steck Общие вопросы Delphi 3 07.10.2007 17:59
3D-RPG Кронос Gamedev - cоздание игр: Unity, OpenGL, DirectX 25 12.05.2007 11:21