Форум Игромании
 
Регистрация
Справка
Пользователи Календарь Сообщения за день

 
 
Опции темы
Старый 11.03.2008, 16:18   #241
Юзер
 
Аватар для DEAD_Angel
 
Регистрация: 30.12.2007
Адрес: г.Краснодар; Мой комп.
Сообщений: 227
Репутация: 51 [+/-]
Мне чет пока ниче существенного нарисовать не получилось.. школа напрягает, вот завтра нарисую точно! Так что знайте я жив!

И еще забыл: 6112105 - аська одного дельного программера, который (вроде правда знает и умеет програмировать на С++.
Только вот незадача, я его спрашивал, а он нехочет нам помочь(( так что кто нить на досуге уговорите его =)
__________________
Я не ленивый, просто мне лень не лениться...
________

........__|__
___ / **** \=======#
;|HH*T-34*HH:\
'(@=@=@=@=@)

Это русский танк, скопируй его себе в подпись, чтобы потом наша интернет-армия вынесла США! Права на танк прнадлежат FenX`y!!! ВСЕМ ПО ТАНКУ В ПОДПИСЬ!!!!
DEAD_Angel вне форума  
Отправить сообщение для DEAD_Angel с помощью ICQ
Старый 11.03.2008, 18:23   #242
Юзер
 
Регистрация: 07.06.2006
Адрес: this
Сообщений: 162
Репутация: 112 [+/-]
Цитата:
Сообщение от DEAD_Angel Посмотреть сообщение
И еще забыл: 6112105 - аська одного дельного программера
Не надо нам. Главная проблема не в программировании, а в художниках.
Цитата:
Сообщение от DEAD_Angel Посмотреть сообщение
Мне чет пока ниче существенного нарисовать не получилось..
Ну пробуй, старайся
L'ombre
Свойство ID у CellItem'a означает тип ячейки, я так понял? То есть, можно будет иметь ввиду типа "трава", "асфальт" и т.д. Так?
И еще: в ядре ведь подразумевается плавная езда танком? То есть, не сразу перескок с одной ячейки на другую, а плавно. А принадлежность танка к той или иной ячейке можно, к примеру, определять через центр танка, смотря к какой ячейке он ближе. Ага?
pokibor
Просил напомнить про копирование текстуры так как в асе тебя нет...
Цитата:
Сообщение от andNsX Посмотреть сообщение
Вот, тут трава, кирпичи и вода. Как я понял ещё бетон дорогу и т.п.
Отлично. Но, когда мы обсудим ядро, наверняка придется их поправить, то есть сделать новые. Чтобы не было прямых углов, то есть закругленные бока для всех углов. Ну и оставить один такой для центра.
__________________
www.rodionovstepan.ru
razor21 вне форума  
Отправить сообщение для razor21 с помощью ICQ
Старый 11.03.2008, 20:04   #243
Новичок
 
Аватар для L'ombre
 
Регистрация: 07.03.2006
Адрес: !here();
Сообщений: 38
Репутация: 26 [+/-]
Цитата:
Сообщение от razor21 Посмотреть сообщение
Свойство ID у CellItem'a означает тип ячейки, я так понял? То есть, можно будет иметь ввиду типа "трава", "асфальт" и т.д.
совершенно верно

Цитата:
Сообщение от razor21 Посмотреть сообщение
И еще: в ядре ведь подразумевается плавная езда танком?
нет. как раз в ядре не подразумевается.
я про это говорил тут - http://forum.igromania.ru/showthread...07#post3205007 - в результате был выбран второй вариант. То есть каждый танк может переместиться не более чем на одну ячейку за такт, а разная скорость создаётся засчёт задержек. Поэтому в ядре у траверсеров нет свойства "скорость", поэтому же координаты у всех объектов целочисленные, да и вообще идея дискретности пронизывает весь код ядра.

Вот визуализатор будет рисовать танки плавно. Раз уж возник такой вопрос, расскажу об этом подробнее.
Скрытый текст:

вот есть танк. он может стоять или двигаться, то есть у него два мозможных состояния. Чтобы заставить его двигаться, нужно вызвать метод OrderMove() - для танка это приказ "сдвинуться вперёд на одну клетку". Если ничего ему не мешает, то он начинает двигаться. У него есть задержка, которая определяет его скорость - грубо говоря, это количество игровых тактов, которые танк потратит на движение. Все такты между началом движения и окончанием движения танк, с точки зрения ядра, стоит на месте. при этом он "резервирует" ячейки, которые он займёт после движения, чтобы другие танки не могли начать двигаться туда же; при этом ядро само обрабатывает всякие столкновения летящих снарядов с этими ячейками. Так вот, танк находится в этом состояни несколько тактов, и каждый такт может занимать несколько единиц реального времени, и в это время его нужно отрисовывать на экране. так вот, отрисовывать его нужно плавно. "Картинка", представляющая танк, может находиться между ячейками (а сам танк - не может). Чтобы определить, где именно рисовать эту картинку, нужно сравнить текущее значение таймера танка (метод Timer() ) с его максимально возможным значением (метод ActualDelay() ). чем ближе это значение к нулю, тем ближе нужно рисовать танк к конечной точке движения.

всё это, кстати, относится и к снарядам; за исключением того, что снаряды движутся всегда, им не нужно приказывать двигаться

p.s. razor21, почитайте повнимательнее ранние посты этой темы. да, там много хлама, но хотя бы мои и pokibor'а сообщения почитайте - там уже есть ответы на многие вопросы

p.p.s. насчёт текстур. художники! - договоритесь с razor21'ом насчёт формата этих самых текстур - тип файла, размеры и тд, чтобы не получилось такого, что каждый делает текстуры своего размера. А пока текстуры не готовы, можно, и правда, сделать несколько цветных квадратиков в paint'е, чтобы отсутствие текстур не мешало процессу разработки.
__________________
Use the Darkness that you have inside

Последний раз редактировалось L'ombre; 12.03.2008 в 00:06.
L'ombre вне форума  
Старый 12.03.2008, 13:36   #244
Юзер
 
Аватар для DEAD_Angel
 
Регистрация: 30.12.2007
Адрес: г.Краснодар; Мой комп.
Сообщений: 227
Репутация: 51 [+/-]
Непонятно насчет текстур:
Цитата:
Сообщение от razor21 Посмотреть сообщение
наверняка придется их поправить, то есть сделать новые. Чтобы не было прямых углов, то есть закругленные бока для всех углов. Ну и оставить один такой для центра.
Поясни, плз, зачем?
_________________________________________
Цитата:
Сообщение от L'ombre Посмотреть сообщение
А пока текстуры не готовы, можно, и правда, сделать несколько цветных квадратиков в paint'е, чтобы отсутствие текстур не мешало процессу разработки.
конешн делайте пока цветные квадратики Это ж мы художники "ждем вдохновения" поэтому так медленно работем... или ленимся...

Добавлено через 46 минут
- Вот нарисовал в фотошопе при помощи элементарного зашумления и блюра *говорит с недовольством собой* кажется похоже или на мелкие камни, или на грязь вообщем текстура какого-то "состояния" земли =)
__________________
Я не ленивый, просто мне лень не лениться...
________

........__|__
___ / **** \=======#
;|HH*T-34*HH:\
'(@=@=@=@=@)

Это русский танк, скопируй его себе в подпись, чтобы потом наша интернет-армия вынесла США! Права на танк прнадлежат FenX`y!!! ВСЕМ ПО ТАНКУ В ПОДПИСЬ!!!!

Последний раз редактировалось DEAD_Angel; 12.03.2008 в 14:24. Причина: Добавлено сообщение
DEAD_Angel вне форума  
Отправить сообщение для DEAD_Angel с помощью ICQ
Старый 12.03.2008, 16:33   #245
Юзер
 
Регистрация: 27.10.2007
Адрес: г. Омск
Сообщений: 442
Репутация: 91 [+/-]
DEAD_Angel
Как я понял мы единственные живые художники! Насчёт формата: пока-что делай в PSD 256x256.
razor21
Так какой нам брать формат и разрешение?
andNsX вне форума  
Старый 12.03.2008, 18:54   #246
Юзер
 
Регистрация: 07.06.2006
Адрес: this
Сообщений: 162
Репутация: 112 [+/-]
Художникам
Формат файла решено использовать PNG. Пока делайте в разрешении 256х256.
__________________
www.rodionovstepan.ru
razor21 вне форума  
Отправить сообщение для razor21 с помощью ICQ
Старый 12.03.2008, 19:06   #247
Юзер
 
Аватар для DEAD_Angel
 
Регистрация: 30.12.2007
Адрес: г.Краснодар; Мой комп.
Сообщений: 227
Репутация: 51 [+/-]
Цитата:
Сообщение от andNsX Посмотреть сообщение
Насчёт формата: пока-что делай в PSD 256x256.
andNsX
Я понимаю, что в PSD это легче редактировать, но что будут делать люди у которых нет фотошопа ? Так что нужно делать файлы двух типов: PSD (для себя любимого), и ну допустим тот же PNG (для тех у кого нет фш, вед не у всех програмистов есть фш, наверное).

razor21
уходишь от ответа
Цитата:
Сообщение от razor21 Посмотреть сообщение
Но, когда мы обсудим ядро, наверняка придется их поправить, то есть сделать новые. Чтобы не было прямых углов, то есть закругленные бока для всех углов. Ну и оставить один такой для центра.
Зачем это? (Чисто для внешнего вида, или же это "необходимость"?)
__________________
Я не ленивый, просто мне лень не лениться...
________

........__|__
___ / **** \=======#
;|HH*T-34*HH:\
'(@=@=@=@=@)

Это русский танк, скопируй его себе в подпись, чтобы потом наша интернет-армия вынесла США! Права на танк прнадлежат FenX`y!!! ВСЕМ ПО ТАНКУ В ПОДПИСЬ!!!!

Последний раз редактировалось DEAD_Angel; 12.03.2008 в 19:12.
DEAD_Angel вне форума  
Отправить сообщение для DEAD_Angel с помощью ICQ
Старый 12.03.2008, 19:29   #248
Юзер
 
Регистрация: 07.06.2006
Адрес: this
Сообщений: 162
Репутация: 112 [+/-]
Цитата:
Сообщение от DEAD_Angel Посмотреть сообщение
уходишь от ответа
Не ухожу - забыл ответить. Это надо для того, чтобы объекты не казались квадратными,некрасивыми. То есть нарисуйте такие же только сделайте (в отдельности, то есть разные файлы) каждый угол прозрачным, чтобы при собирании карты не было прямых углов, а все было ровно. Ясно?
__________________
www.rodionovstepan.ru
razor21 вне форума  
Отправить сообщение для razor21 с помощью ICQ
Старый 13.03.2008, 10:57   #249
Новичок
 
Аватар для L'ombre
 
Регистрация: 07.03.2006
Адрес: !here();
Сообщений: 38
Репутация: 26 [+/-]
пофиксил пару багов в ядре
Скрытый текст:

http://www.shadow.dynalias.com/tanks/core.rar
пароль у архива t@nk$c0re

фиксы:
- Tank::OrderMove() вызывает MatrixTraverser::Move() (раньше вызывал Traverser::Move(), и это было неправильно)
- MatrixTraverser::RemoveTrace() правильно удаляет из матрицы движущиеся в момент удаления траверсеры (в предыдущей версии я забывал очищать зарезервированные клетки)

кстати, предлагаю этот линк поместить в первый пост.
__________________
Use the Darkness that you have inside
L'ombre вне форума  
Старый 13.03.2008, 19:07   #250
Юзер
 
Регистрация: 07.06.2006
Адрес: this
Сообщений: 162
Репутация: 112 [+/-]
L'ombre
Что-то у меня не качается. И браузер, и DM отказываются качать. Можешь заново выложить? Сервер не доступен.
__________________
www.rodionovstepan.ru

Последний раз редактировалось razor21; 13.03.2008 в 20:35.
razor21 вне форума  
Отправить сообщение для razor21 с помощью ICQ
Старый 16.03.2008, 22:25   #251
Новичок
 
Аватар для L'ombre
 
Регистрация: 07.03.2006
Адрес: !here();
Сообщений: 38
Репутация: 26 [+/-]
Цитата:
Сообщение от razor21 Посмотреть сообщение
Что-то у меня не качается.
всё правильно, в это время у меня отсутствовал интернет доступ. физически. сейчас линк доступен, но гарантировать доступность в дальнейшем не могу - от меня это не зависит, страна, видимо, такая.
на всякий случай, альтернативный линк:
http://ifolder.ru/5761774
__________________
Use the Darkness that you have inside
L'ombre вне форума  
Старый 17.03.2008, 20:01   #252
Юзер
 
Регистрация: 07.06.2006
Адрес: this
Сообщений: 162
Репутация: 112 [+/-]
L'ombre
Ok, теперь скачал.


Итак, я разработал редактор к игре.
В общем, пока поддерживает только два типа карт: 40х40 и 50х50.
Так же редактировать можно только ID ячеек, то есть визуальное отображение объекта.
(Все остальные параметры ячеек (armor, passability, hit_points, max_hit_points) принимают значение 0).
Карты можно сохранять в файлы и загружать из них.
(Кстати, я не стал давать возможность менять разрешение - там стоит по умолчанию 1024х768)

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

Я не делал возможность выбора файла для сохранения\загрузки. Сохраняется карта в файл map.map и появится он в директории с редактором. Чтобы загрузить карту файл с картой также должен быть назван map.map и лежать в директории с редактором. Думаю, это больших неудобств не принесет.

Формат файла для хранения карт предлагаю такой (каждая строка - новая строка в файле):
ширина_матрицы высота_матрицы
св-ва ячеек ( (0;0), (0;1) ... (1;0), (1;1)...)
респаун поинты

Ну, к примеру, так будет выглядеть файл для хранения матрицы 2х2:
(свойства ячейки: id passability armor hit_points hit_points_max)
Код:
2 2
1 0.0 0 0 0
4 1.0 0 0 0
1 1.0 0 0 0
2 1.0 0 0 0
1 1 0 2
Последняя строка, например, будет обозначать респаун поинт: коодинаты (1;1), команда 0 из 2 танков. Это пример. Скорее всего, он изменится. Однако, давайте все это обсудим.
Что касается ячеек, то, я считаю, все их свойства можно хранить именно так.
Давайте свои предложения по дополнению редактора и по формату файлов.

Скачивать редактор тут.
Дистрибутив VS, необходимый для запуска редактора скачивать тут.

Спасибо.
__________________
www.rodionovstepan.ru
razor21 вне форума  
Отправить сообщение для razor21 с помощью ICQ
Старый 17.03.2008, 21:44   #253
Новичок
 
Аватар для L'ombre
 
Регистрация: 07.03.2006
Адрес: !here();
Сообщений: 38
Репутация: 26 [+/-]
razor21
вы, похоже, так и не поняли одну важную идею движка, про которую я говорил ранее тут http://forum.igromania.ru/showthread...10#post3258610
(а также где-то ещё в этой ветке, а также в комментариях в коде ядра)

а именно: id ячейки полностью определяет все остальные её свойства. Не только, как она выглядит, но и проходимость, броню и максимальные хитпойнты.
Поэтому строка из примера в файле описания уровня -
4 1.0 0 0 0
- избыточна; достаточно только первого числа - id.
а чтобы задать это соответствие - нужен ещё один файл - о чём я уже говорил - угадайте где и посчитайте, сколько раз.

отсюда следуеет:
Цитата:
Сообщение от razor21 Посмотреть сообщение
Так же редактировать можно только ID ячеек
- а ничего другого в этом месте и не нужно.

Скрытый текст:

Цитата:
Сообщение от razor21 Посмотреть сообщение
В общем, пока поддерживает только два типа карт: 40х40 и 50х50.
а это мне просто интересно; зачем вносить искусственные ограничения, если можно поступить проще и сделать универсальный вариант?.. правда, интересно
__________________
Use the Darkness that you have inside
L'ombre вне форума  
Старый 18.03.2008, 20:12   #254
Юзер
 
Регистрация: 07.06.2006
Адрес: this
Сообщений: 162
Репутация: 112 [+/-]
L'ombre
Так тогда достаточно просто для каждого id определить параметры и все. Так давайте их определим вместе. Вообще, кол-во разных id должно быть равно кол-ву типов объектов (асфальт, кирпич, бетон, трава, вода), т.е. 5? Так?
Итак, асфальт
id = 1, passability = 1, armor = 0, hit_points = 0, max_hp = 0.
Кирпич
id = 2, passability = 0, armor = 1, hit_points = 1, max_hp = 1.
Бетон
id = 3, passability = 0, armor = 2, hit_points = 1, max_hp = 1.
Трава
id = 4, как у асфальта
Вода
id = 5, passability = 0, armor = 1, hit_points = 0, max_hp = 0

На этом все? Ваши корректировки.
Больше ж объектов не подразумевается? Тогда можно ini-файлик написать и все...
__________________
www.rodionovstepan.ru

Последний раз редактировалось razor21; 18.03.2008 в 20:28.
razor21 вне форума  
Отправить сообщение для razor21 с помощью ICQ
Старый 18.03.2008, 20:44   #255
Новичок
 
Аватар для L'ombre
 
Регистрация: 07.03.2006
Адрес: !here();
Сообщений: 38
Репутация: 26 [+/-]
корректировки.
1. при создании объекта его хитпойнты равны максимуму, поэтому задавать их значения вместе с остальными параметрами нет смысла
2. Если у воды armor == 1, то в неё будут врезаться снаряды.
passability работает только для танков, броня - для снарядов (поэтому можно сделать объекты, проходимые только для танков или только для снарядов)
3. passability, хоть и не сейчас, а в будущем, может быть дробным числом - для того, чтобы влиять на скорость (задержки) танков. так что было бы логично сделать для травы что-нибудь меньше единицы, чтобы по асфальту танк двигался быстрее
4.
Цитата:
Сообщение от razor21 Посмотреть сообщение
Больше ж объектов не подразумевается?
в оригинале на NES были ещё лёд и лес.
но суть не в этом -
Цитата:
Сообщение от razor21 Посмотреть сообщение
Тогда можно ini-файлик написать и все...
а в этом. я бы сказал - нужно. Тогда можно оставить придумывание новых объектов на совести геймдизайнеров или просто вернуться к ним на стадии финального тестирования. не так важно, какие именно будут объекты, если есть возможность сделать любые объекты

p.s. ну и текстуру задать в этом же ini-файле можно - номер в файле с текстурами или как там ещё

//

а вот про это я совсем забыл
Цитата:
Сообщение от razor21 Посмотреть сообщение
Последняя строка, например, будет обозначать респаун поинт: коодинаты (1;1), команда 0 из 2 танков. Это пример. Скорее всего, он изменится. Однако, давайте все это обсудим
действительно, обсудить надо. Про респаун-пойнты ядру (точнее, RespawnManager'у) надо сообщать в два этапа.
сначала надо определить сами команды - допустим, команда 0, два танка на поле, 10 общее количество; и так для всех команд.
а затем - определить точки - например, в точке 5,6 респаун команды 0.
При этом количество танков на игровом поле, общее количество танков и количество респаун-пойнтов никак не связаны (ну, разумеется, танков на поле не может быть больше, чем общее количество танков этой команды. но может быть больше количества точек респауна).
поэтому опять же, перечислять свойства команды (количества танков) в каждой строке, вместе с её номером - неправильно.
__________________
Use the Darkness that you have inside

Последний раз редактировалось L'ombre; 19.03.2008 в 00:57.
L'ombre вне форума  
Старый 18.03.2008, 21:14   #256
Юзер
 
Регистрация: 07.06.2006
Адрес: this
Сообщений: 162
Репутация: 112 [+/-]
L'ombre
Я passability поэтому и сделал float, чтобы могло быть меньше 1.

Ok. Напишу ini-файл, подправлю редактор и начну собирать движок с ядром...
__________________
www.rodionovstepan.ru
razor21 вне форума  
Отправить сообщение для razor21 с помощью ICQ
Старый 24.03.2008, 10:31   #257
Юзер
 
Аватар для DEAD_Angel
 
Регистрация: 30.12.2007
Адрес: г.Краснодар; Мой комп.
Сообщений: 227
Репутация: 51 [+/-]
У меня чего то неполучается нарисовать "пол". Пусть лучше andNsX этим займется... У меня еще и школа напрягает (чтоб эту школу ) так что я занят, но если нуно нарисовать оружие еще танчики - пишите в асю, постараюсь как можно быстрее нарисовать и кинуть на форум... =)
__________________
Я не ленивый, просто мне лень не лениться...
________

........__|__
___ / **** \=======#
;|HH*T-34*HH:\
'(@=@=@=@=@)

Это русский танк, скопируй его себе в подпись, чтобы потом наша интернет-армия вынесла США! Права на танк прнадлежат FenX`y!!! ВСЕМ ПО ТАНКУ В ПОДПИСЬ!!!!
DEAD_Angel вне форума  
Отправить сообщение для DEAD_Angel с помощью ICQ
Старый 25.03.2008, 05:31   #258
Юзер
 
Регистрация: 27.10.2007
Адрес: г. Омск
Сообщений: 442
Репутация: 91 [+/-]
DEAD_Angel
Что это у вас за школа, до сих пор не на каникулах. По теме : Бетон нужен? Уже готов, прада в качестве сомневаюсь, пришлось немного размыть.

http://ifolder.ru/5870221

Пароль - TANK_TEXTURE
andNsX вне форума  
Старый 25.03.2008, 08:16   #259
Юзер
 
Аватар для j@mal
 
Регистрация: 22.03.2008
Адрес: Канатчикова_Дача
Сообщений: 208
Репутация: 93 [+/-]
Готов помочь как 2Д художник, смогу сделать, текстуры, арты и т.д
Разбираюсь в Кореле , Фотошопе.
Писать в ЛС или сюда же.

Последний раз редактировалось j@mal; 25.03.2008 в 08:17. Причина: Писать в ЛС или
j@mal вне форума  
Отправить сообщение для j@mal с помощью ICQ
Старый 25.03.2008, 16:10   #260
Юзер
 
Регистрация: 19.07.2007
Сообщений: 480
Репутация: 228 [+/-]
j@mal
Выложи несколько своих текстур, мы посмотрим
__________________
Forza Rossoneri!
ORTODOX вне форума  
Отправить сообщение для ORTODOX с помощью ICQ
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 00:24.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Rambler's Top100 Яндекс цитирования