forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на Blitz3D (http://forum.boolean.name/forumdisplay.php?f=14)
-   -   Bomberman_Standard_Edition (http://forum.boolean.name/showthread.php?t=79)

Fant 10.09.2005 17:19

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

Уже сейчас мне помогают(или помогали дельным советом!)

Жека!!!
SubZer0!!!
impersonalis!!!

Так что...вот так;)

Последнее что есть есть в исходнике!

Баги: " при разрыве" бомбы (бомба ставиться "пробелом", управление - 8,4,6 - доп. клава), осколок, который летит вправо не удаляет кубики, которые можно "взорвать. Разумееется не "взрывает" игрока. НУЖНА ПОМОЩЬ!!!!!!!!!

Делаю: остановился на AI. вот...любая помощь приветсвуется!

Нужно сделать ... AI.

7 файлов в исходниках+1 папка maps

1. Исходник бомбера (bomber.bb) - всемирными усилиями
2. Редактор карт бомбера (mapeditor.bb) - сделал Жека!!! Респетк!!!
3. и 4. и 5. - текстуры (cube1.bmp и cube2.bmp и tAI1.bmp)
6. и 7. - диздоки

Общий размер - 370 кб. В архиве - 17 кб.
Не стесняемся и качаем!!! И разумеется, что бы проект не СДОХ, то НУЖНА помощь по перечисленным вопросам!!!
особенно по пункту "баги"

jimon 10.09.2005 17:39

вообщем для 1 дневной работы сойдет
код более мение нормальный
как для продвинутого новичка :))


а вообще ... управление ацтой и графа нулевая
делать в 2d и на bmax надо было... красивее былоб ;)

impersonalis 10.09.2005 18:08

Управление надо переназначить (надали влево - объект разворачивается и идёт влево, а не только поворачивается и ждёт нажатия "вперёд").
2jimon: старайся аргуметировать и разворачивать свои рецензии ( знаю, иногда это очень тяжело)

Fant 10.09.2005 20:31

2 jimon
Это не однодневная работа!!! не шути так)))))
Код делал не только я) посмотри в "благодарностях" имеено эти люди приложили свои руки к коду.

2impersonalis
Это же даже не демка! Но поправки будут внесены!!!

Остается:

баг коллизий (с "несуществующим" осколком")
AI

продолжение следует...

Fant 11.09.2005 15:03

Вложений: 1
Я исправил управление.

Возник вопрос!
1. Не знаю как оптимизировать код. Типа через case пытался - фиг что вышло!
2. Если нажать и удерживать вправо и вверх(вместе) то игрок будет идти вверх. Но стрелка будет указывать вправо
3. Актуален вопрос по поводу:
Баги: " при разрыве" бомбы (бомба ставиться "пробелом", управление - 8,4,6 - доп. клава), осколок, который летит вправо не удаляет кубики, которые можно "взорвать. Разумееется не "взрывает" игрока. НУЖНА ПОМОЩЬ
4. Все-еще парюсь с AI

impersonalis 11.09.2005 15:32

Выложи плз, не только исходник, но и ресурсы

Fant 11.09.2005 15:39

Вложений: 1
2impersonalis
Я все ресурсы в 1ом моем тексте
Выкладываю опять ВСЕ что есть!

2ALL
Так! У меня вопрос!!! Мне всегда выкладывать ВСЕ ресурсы???
или только по мере "улучшения и дополнения". Я считаю что стоит только "дополнять"!

Выклабываю все, что есть!!!

2impersonalis
Надеюсь, что вы(ты) мне поможете(поможешь)

32 кб - максимальным сжатием RAR

Жека 12.09.2005 08:05

Цитата:

Originally posted by impersonalis@Sep 10 2005, 09:08 PM
2jimon: старайся аргуметировать и разворачивать свои рецензии
Очень ДЕЛЬНЫЙ совет!

А то просто наезд какой-то получается :blink:

Советы пиши, раз ты все знаешь. А если не интересно, можно вообще не лезть в эту тему...

Fant 12.09.2005 10:24

Код:
Код:

If KeyDown(72)=1 And KeyDown(75)=0 And KeyDown(77)=0 And KeyDown(80)=0
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,0,0
End If

If KeyDown(75)=1 And KeyDown(72)=0 And KeyDown(80)=0 And KeyDown(77)=0
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,90,0       
End If

If KeyDown(77)=1 And KeyDown(72)=0 And KeyDown(80)=0 And KeyDown(75)=0
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,-90,0
End If

If KeyDown(80)=1 And KeyDown(75)=0 And KeyDown(77)=0 And KeyDown(72)=0
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,180,0
End If

Вот кусок кода. теперь игрок поворачивается в ту сторону, куда он ходит. Но есть ли вариан его(код) сделать получше?(красивее, а то...жесткий он)

Смысле не "улучшеный"

или так и оставить можно???

если есть варианты получше, я обязательно переделаю этот кусочек

impersonalis 12.09.2005 16:50

Да- проглядел я, что ресурсы уже были. Выкладывай только обновления/дополнения.

jimon 12.09.2005 18:43

Код:

If KeyDown(72)=1 And KeyDown(75)=0 And KeyDown(77)=0 And ...
ета конструкция зачем ?
пиши просто
Код:

if keydown(72)=1 then ... end if

а вот ето :
Код:

MoveEntity player\obj,0,0,spd#
RotateEntity player\obj,0,0,0

зачем ?

пиши moveentity player\obj,spd#,0,0 moveentity player\obj,-spd#,0,0 и тд

в итоге прийдеш к чемуто типа
Код:

if keydown(xxx) moveentity p,s#,0,0
if keydown(xxy) moveentity p,-s#,0,0
if keydown(yxy) moveentity p,0,0,s#
if keydown(yxy) moveentity p,0,0,-s#

вот так :))

Жека 12.09.2005 18:59

Могу посоветовать вот так сделать:

Код:

KEY_MOVE_LEFT = KeyDown(75)
KEY_MOVE_UP = KeyDown(72)
KEY_MOVE_RIGHT = KeyDown(77)
KEY_MOVE_DOWN = KeyDown(80)

If (KEY_MOVE_LEFT=0 And KEY_MOVE_UP=1 And KEY_MOVE_RIGHT=0 And KEY_MOVE_DOWN=0)
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,0,0
End If

If (KEY_MOVE_LEFT=1 And KEY_MOVE_UP=0 And KEY_MOVE_RIGHT=0 And KEY_MOVE_DOWN=0)
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,90,0
End If

If (KEY_MOVE_LEFT=0 And KEY_MOVE_UP=0 And KEY_MOVE_RIGHT=1 And KEY_MOVE_DOWN=0)
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,-90,0
End If

If (KEY_MOVE_LEFT=0 And KEY_MOVE_UP=0 And KEY_MOVE_RIGHT=0 And KEY_MOVE_DOWN=1)
        MoveEntity player\obj,0,0,spd#
        RotateEntity player\obj,0,180,0
End If


Почему-то взрываются БЕЛЫЕ кубики, НО это зависит от стороны, с которой осколок прилетел. Так же и с синими :dontknow:

Fant 12.09.2005 20:45

Вложений: 1
2Jimon
Спасибо за совет!
я же не туплю, что все расписываю! Без этого будет баг с управлением и поворотом.

2impersonalisъ
Вот выкладываю...но буду очень признателен, если вы мне с AI поможете!

2Жека
обновил по твоей схеме управление!!! Спасибо!
баг я уже описывал( я знаю, что правый осколок ничего не делает)...пока народ молчит

2ALL
1)Баги: " при разрыве" бомбы (бомба ставиться "пробелом", управление - 8,4,6 - доп. клава), осколок, который летит вправо не удаляет кубики, которые можно "взорвать. Разумееется не "взрывает" игрока. НУЖНА ПОМОЩЬ
2) AI. то, что нужно есть в диздоке! Я над этим думаю, но так как знаний мало, то все идет ооочень медленно.


выложил исходник с "обновленным" управление. В управлении багов теперь нет.

ОСТАЕТСЯ:
БАГ со взрывом
AI

На этом пока все!

Жека 12.09.2005 21:43

для ИИ:
ИМО, для начала надо ограничить игрока и противников в движениях, а именно: чтобы они могли передвигаться только по середине прохода-лабиринта, чтобы не болтались от стенки к стенке. Сейчас это уже не так заметно, но "люфт" все же есть.
Например, при продвижении в смежный коридор (после поворота на 90град) наблюдается "въезд" игрока в этот коридор из-за колизии сфера-полигоны.

Также надо задавать "опорные точки" для противников, в которых они могут повернуться на +(-)90 град, в остальных только 180 град (это может и не обязательно).

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

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

Нужен доброволец, который бы уделил своего времени и более или менее основательно пересмотрел код. Истина ведь где-то рядом...

impersonalis 12.09.2005 21:58

К сожалению, не знаю когда разгебу с делами - но на выхах - точняк


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot