Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Проекты > Проекты на Blitz3D

Проекты на Blitz3D Обсуждение будущих проектов, демок, набор команды и т.п.

Ответ
 
Опции темы
Старый 12.09.2005, 22:25   #16
jimon
 
Сообщений: n/a
вот твоя ошибка : посмотри внимательно c 272 по 275 строку
я нашол ошибку за ~45 сек...

ps. если невидете такую примитивную ошибку то как вам писать большие игры ?
а еще говорят что у меня нету опыта
 
Ответить с цитированием
Старый 12.09.2005, 23:30   #17
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
Совместно с jimon устранили баг с "взрывающимися" кубиками и осколками!
БАГ - очень сложно устранимый!

итак:
EntityType boom1\Obj,typeexp
EntityType boom2\Obj,typeexp
EntityType boom4\Obj,typeexp
EntityType boom4\Obj,typeexp
меняем НА
EntityType boom1\Obj,typeexp
EntityType boom2\Obj,typeexp
EntityType boom3\Obj,typeexp
EntityType boom4\Obj,typeexp
остается вопрос с AI

буду юзать!
но от помощи как всегда не откажусь!
(Offline)
 
Ответить с цитированием
Старый 13.09.2005, 05:08   #18
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Вот! Причем опечатку найти даже сложнее, чем другую ошибку, хотя и не всегда.

Насчет убивания белых все ясно, просто надо закомментировать 3 строчки в функции fnUpdateBooms()
;copy_cube.cubes = Object.cubes (EntityName (ent4))
;FreeEntity ent4
;Delete copy_cube
(Offline)
 
Ответить с цитированием
Старый 15.09.2005, 19:26   #19
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
Итак, уважаемые друзья
Смею вас заверить, что проект НЕ СДОХ, а успешно продолжает жить!
Просто сейчас из-за учебы у меня нет времени...

итак!
вот что сегодня как тяжкий груз висит:

1) AI. описание есть в диздоке

2) Сделать призы. (пока это 3Д кубики, которые изменяют параметры игрока( все в диздоке)
(Offline)
 
Ответить с цитированием
Старый 21.09.2005, 23:27   #20
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
Ладно, уважаемые друзья-кодеры

давайте все по-порядку! и добьем НАШ (заметим не мой, а уже Жекин, ZubZero, impersonalis, jimona)

коль скоро у всех учеба...и нету времени, то я решил (как руководитель и "задумщик" проекта) делать так:
а) задавать конкретные вопросы, а не писать тупо:сделаем призы
потому что это выглядит как:сделаем игру.
б) спрашивать конкретные вопросы.
в) в конце концов если вопрос туп (все просто) то убидительно прошу не напоминать мне это, ибо я уже не задаю вопрос, а говорю на каком этапе игра. То есть либо я это первый сделаю, либо ктто-то.. Кто первый сделает - тот и выкладывает!

Итак:
1) AI
нужно сделать так, что бы "кубик" (уже есть в исходниках - клавишей 1 активируется) при столкновении поворачивался на 90. При этом(это легко я делал) встречается баг! Если "кубик" между 3 кубиками-но он крутится до бесконечности. Вообзе про AI тип 1 есть в диздоке

2) Нужно создать кубик-приз.
а) создать кубик
- он должен создаваться ТОЛЬКО внутри убиваемого кубика(это сложность)
б) убивается бомбой
в)изменяет параметр игрока. Если взят - жизнь игрока=жизнь +1 (естть в диздоке.

Для этого нужно ввести переменную жизни. (она есть...ее нужно апдейтНУТЬ)

Итак...
теперь я надеюсь, что кно-нибудь 1 пункт, но сделает! А то проект...замерзает((
(Offline)
 
Ответить с цитированием
Старый 22.09.2005, 11:03   #21
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
(я новый код не зырил)

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

поле имеет размер 29х29, каждый кубик имеет размер 10х10х10
Получаем игровое поле 290х290
Допустим, противник врезался в стенку, имея координаты (надо только х и z) (127,y,200)
Надо получить из этого индексы для массива, так получаем их!

posX# = 127
posZ# = 200

koefX = posX# * 0.1 - "делим" координату Х на ширину кубика. Этим мы получили целое цисло кубиков, которые находятся слева от противника
koefX - целое число! = 12 в нашем случае
Надо что-то сделать с оставшейся 7-кой
addX = posX# - koefX * 10
if (addX-5>2.5) koefX = koefX + 1
На практике не должно получиться этого "округления", потому что размер противника соизмерим с размером кубиков...

так же для координаты z

потом проверяем значение массива

value = mapInfoMas(koefX,koefZ) - это для сектора, где противник в ДАННЫЙ момент - не интересно

mapInfoMas(koefX-1,koefZ) - что находится слева от противника?
mapInfoMas(koefX+1,koefZ) - что находится справа от противника?
mapInfoMas(koefX,koefZ+1) - что находится спереди от противника?
mapInfoMas(koefX,koefZ-1) - что находится позади противника?

имеется ввиду сдвиг на 1 кубик в каждую сторону


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


ПС: чем отличаются пункты а) и б), которые самые верхние?
(Offline)
 
Ответить с цитированием
Старый 22.09.2005, 15:02   #22
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Я немножко переделал функцию обработки ИИ, теперь противники бегают по полю и поворачиваются, если столкнулись с чем-то...

Но надо еще подправить кое-что: там, где я вписал проверку на коллизию противников с различными типами объектов, надо это писать не в один IF, а в несколько, т.к. бывает столкновение обновременно с игроком и стенкой и работает неправильно. Хотя может и не в том дело.

Я делал исправления в старой версии, какой не помню...

ПС: Изначально противник(и) нарезает креги в "замкнутом" пространстве, но стоит нам взорвать одно из препятствий, как...

ППС: это всем, кто просит помочь с кодом: те примеры, которые я пишу, НЕ ЯВЛЯЮТСЯ эталоном правильности или чего-то в этом роде, они позволяют врубиться что к чему (и то не всегда наверное), не больше.
Поэтому: нужно брать саму идею и делать по-своему как вам УДОБНЕЕ, и не переделывать свою прогу ПОД МОЙ код! (если хотите - делайте, я не против, просто сказал, как лучше будет).

Расширение файла надо ПЕРЕИМЕНОВАТЬ в RAR!
(Offline)
 
Ответить с цитированием
Старый 22.09.2005, 22:13   #23
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
2Жека:
Я посмотрел твой код. То, что есть в ИИ сейчас это то, к чему я когда-либо уже приходил. И потому я не выложил такой результат, что когда ИИ враг типа1 при коллизии с кубиком - поворачивается - это + , но при повороте он так же...меняет свою позицию - "дергается". Что крайне нежелательно. Убрать "дерганье" можно при помощи команды rotateentity. Но я не справился со всем. Посему прошу тебя немого пересмотреть "движение" ИИ.

2All
1) Сделал приз. дает +1 к кол-ву бомб. Теперь игрок не может клавишей пробел ставить больше 1 бомбы( пока не взорвется первая. При получении приза (активируется клавишей f5 на цифровой клавиатуре) игрок ставит уже 2 бомбы. Повторное нажатие f5 ставит опять кубик-приз

2) Убрал лишний код...привел в порядок то, что есть. Теперь белый(непробиваемый) кубик не пробивается

3) БАГ!
ВНИМАНИЕ:
то, что нужно сделать:
1) f5
2) берем приз
3) ставим !!рядом!! 2 бомбы
4) взрыв в неположеном месте. Это грусно((

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

5) Необходимо сделать ИИ 2 типа.
ОПИСАНИЕ:
2. Странник - этот тип имеет обыновение путешествовать по игровой локации, поворачивая в случайном направлении(на 90,180,270,360 грудусов) каждые N количество секунд. Если встречает препятствие(любое), поворачивает на 90 грудусов. Вырезка из ДизДока
Сложность: как сделать так, что когда ИИ2 поворачивается, то он не наталкивался бы на стены, а поворачивался в тот момент, когда можно пойти в "коридор". То есть он не должен поворачиваться на белые кубики.

*** Буду работать над кубиком-призом.

Последняя версия бомбера - прилагается!
(Offline)
 
Ответить с цитированием
Старый 22.09.2005, 22:47   #24
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
И еще!

Дальнейшая разработка призов-трата времени! необходимо сперва сделать

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


пока этоо не будет...не будет дальнейших призов...

думаем на этим...
(Offline)
 
Ответить с цитированием
Старый 23.09.2005, 17:12   #25
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
Вложил текстуру приза.

Теперь все работает
(Offline)
 
Ответить с цитированием
Старый 23.09.2005, 18:36   #26
jimon
 
Сообщений: n/a
мои изменения :
переделал колозии - нах так много ?
переделал управление - было глючное стало нормальное и краткое
убрал лошивий глюк - было в колозиях притом там две колозии повторялись !
поставил ботам тип колозий игрока - потомучто ето тоже самое
зделал более-мение тупой ai ) правда фактор случайности там кривой )

замечание которые я сказал fant'у, говорю и здесь

первое - ненадо столько колозий , тормозит
второе - updateworld тоже некидай куда попало
третье - ты зделал неочень рациональное управление
четвертое - ненадо условие для if писать в скобках - можно но ненадо, если после if идет конструктция if ... end if то лутче напиши if aa=0 then... end if чем ети скобки
а так вроде все нормально

и главное - код не оптимизирован

вообщем дерзайте
мона повесить на етот код надпись : jimon modification
 
Ответить с цитированием
Старый 23.09.2005, 23:04   #27
Fant
Бывалый
 
Регистрация: 05.09.2005
Сообщений: 623
Написано 4 полезных сообщений
(для 5 пользователей)
2jimon

1) Убрал баг
2) Положил начало ИИ (смешно звучит)

2ALL

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

2) ИИ первого типа надо добить.

5) Необходимо сделать ИИ 2 типа.
ОПИСАНИЕ:
2. Странник - этот тип имеет обыновение путешествовать по игровой локации, поворачивая в случайном направлении(на 90,180,270,360 грудусов) каждые N количество секунд. Если встречает препятствие(любое), поворачивает на 90 грудусов. Вырезка из ДизДока
Сложность: как сделать так, что когда ИИ2 поворачивается, то он не наталкивался бы на стены, а поворачивался в тот момент, когда можно пойти в "коридор". То есть он не должен поворачиваться на белые кубики.

и объяснить мне, что значит "оптимизировать код"...и почему мой - не оптимизированый.
(Offline)
 
Ответить с цитированием
Старый 24.09.2005, 13:17   #28
jimon
 
Сообщений: n/a
говорюже - с опытом прийдет к тебе понятие оптимизация
 
Ответить с цитированием
Старый 24.09.2005, 15:45   #29
Жека
Дэвелопер
 
Регистрация: 04.09.2005
Адрес: Красноярск
Сообщений: 1,376
Написано 491 полезных сообщений
(для 886 пользователей)
Это так, но можно этот процесс ускорить!
Надо только раз показать что к чему, и все...
(Offline)
 
Ответить с цитированием
Старый 24.09.2005, 17:22   #30
jimon
 
Сообщений: n/a
еще один :o

вот пример оптимизиции в жизни

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

а теперь представь ето в программировании...
 
Ответить с цитированием
Ответ


Опции темы

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

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


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com