Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Мяф! M.A.Z.E
DF2 :: ФОРУМЫ > Основные форумы > Софт и железо > Программирование / Coding
Страницы: 1, 2, 3
Undead
У меня такие функции на задокументированы. Это какая версия языка?
(мне нужно именно такое решение, которое позволит использовать ось вращения, параллельную оси Х камеры, независимо от угла поворота шара)

Добавлено ([mergetime]1203433860[/mergetime]):
Ой, блииин! Ступил laugh.gif)))))))))))))))))
У меня заскок был, извиняюсь. Невнимательно посмотрел на код и комментарий к нему))))))

Я принял SphereSpeed за функцию. Теперь понятно. Но мне нужно разворачивать шар во всех направлениях.
Diplomat
Ну какие ф-и у тебя могут быть не задокументированы? MoveEntity, TurnEntity или EntityParent? smile.gif
И почему угол поворота камеры должен зависеть от угла поворота шара? wink.gif
Не вижу проблемы.
Ответил ведь уже: "Пивот- ездит. Припарентенный шарик- крутится." - всё остальное детали реализации. Хочешь - можешь и таким образоми реализовать:
Код
MoveEntity Pivot, SphereXSpeed# , 0 , SphereZSpeed#
Turnentity Sphere, SphereZSpeed#*K#,0,SphereXSpeed#*K#


P.S. Версия ессно 1.99. Можно 1.98. happy.gif
Undead
Цитата(Diplomat @ 19 Feb 2008, 18:16)
Ну какие ф-и у тебя могут быть не задокументированы? MoveEntity, TurnEntity или EntityParent? smile.gif
И почему угол поворота камеры должен зависеть от угла поворота шара? wink.gif
Не вижу проблемы.
Ответил ведь уже: "Пивот- ездит. Припарентенный шарик- крутится." - всё остальное детали реализации. Хочешь - можешь и таким образоми реализовать:
Код
MoveEntity Pivot, SphereXSpeed# , 0 , SphereZSpeed#
Turnentity Sphere, SphereZSpeed#*K#,0,SphereXSpeed#*K#


P.S. Версия ессно 1.99. Можно 1.98. happy.gif



Объясняю, что я хотел.
У меня задаются какие-то совершенно левые углы разворота шарика, случайные. И я хочу, чтобы при любых углах шарик !катился! в 100%-но том же направлении, что и направление его движения по MoveEntity x,y,z. Камера и шарик поворачиваются одинаково, Pivot у меня уже есть. Сам Pivot движется, шарик крутится. Но мне нужно, чтобы, когда, например, я поворачиваю камеру во время движения, шарик катился адекватно!!!

Добавлено ([mergetime]1203435052[/mergetime]):
Уж объясните тупому)))))

P. S.
Где взять 1.99? У меня до сих пор 1.94!
Diplomat
Сличайте! Повторять не буду. ))
Код
;Инициализация
Graphics3D 800,600,32,2

;Создаем камеру и освещение
Cam=CreateCamera()
TurnEntity Cam,45,0,0
MoveEntity Cam,0,0,-5

Sun=CreateLight(1)
TurnEntity Sun,45,45,0

;Создаем текстуру в клеточку для градуировки местоности
Texture=CreateTexture(128,128,1)
SetBuffer TextureBuffer(Texture)
Color 255,255,255
Rect 1,1,126,126
SetBuffer BackBuffer()

;Создаем землю, по которой будем ездить
Ground=CreatePlane()
PositionEntity Ground,0,-1,0
EntityColor Ground,0,255,0
EntityTexture Ground,Texture

;Создаем пивот, которій будет ездить, и шарик, который будет делать вид, что едет.
Pivot=CreatePivot()
Sphere=CreateSphere(6)
EntityColor Sphere,255,0,0
EntityTexture Sphere,Texture

EntityParent Sphere,Pivot
EntityParent Cam,Pivot

;Задаем ТТХ шара: его скорость, параметры разгона и трения о поверхность
V#=0
VAcceleration#=0.01
VFriction#=1.1

VYaw#=0
VYawAccel#=2
VYawFrict#=1.5
RotateK#=3.14 * 57

;Ограничитель ФПС для синхронизации
FPSTimer=CreateTimer(40)

;_____________________________
;Главный цикл
While KeyHit(1)=0

;Управление с помощью клавиш управления курсором: разгоняем шарик в нужную нам сторону.
    If KeyDown(200) Then V=V+VAcceleration
    If KeyDown(208) Then V=V-VAcceleration
    If KeyDown(203) Then VYaw=VYaw+VYawAccel
    If KeyDown(205) Then VYaw=VYaw-VYawAccel
;Трение о поверхность: тормозим шарик
    V=V/VFriction
    VYaw=VYaw/VYawFrict

;Движение пивота и вращение шарика
    MoveEntity Pivot,0,0,V
    TurnEntity Pivot,0,VYaw,0
    TurnEntity Sphere,V * RotateK,0,0

;Отрисовка и синзронизация
    RenderWorld()
    Flip(0)
    WaitTimer FPSTimer
    
Wend

End


1.99? Ну, хоть бы и Тут
)
Undead
Спасибо, посмотрю.

Добавлено ([mergetime]1203444082[/mergetime]):
Ну да, так-то каждый может!
Я бы это сделал без проблем. Мне нужна ФИЗИКА. Я хочу, чтобы шар потом отталкивался от стен, подскакивал, переворачивался и т. д.

Но, видимо, это сложновато. Подумаю, как можно это осуществить.
Undead
Ладно, сам придумаю. Всем спасибо за включение мозгов, но это, как минимум, задача олимпиадного уровня.
izrukvruki
Молодец Андед! Игруха прикольная!!! но какие-то подсказки или миникарта хотя бы были не лишними!!! Плюс лови!!
Undead
Цитата(izrukvruki @ 19 Feb 2008, 22:49)
Молодец Андед! Игруха прикольная!!! но какие-то подсказки или миникарта хотя бы были не лишними!!! Плюс лови!!

Пасиба Х)))
Undead
Я учудил со спрайтами... Протестируете потом на работоспособность.
Guevara-chan
Цитата
Я бы это сделал без проблем. Мне нужна ФИЗИКА. Я хочу, чтобы шар потом отталкивался от стен, подскакивал, переворачивался и т. д.

Используй физ. движок.
Diplomat
Оффтоп:

2 Undead:
"Кто ясно мыслит- тот ясно излагает!"(с) один-очень-умный-человек. )
Про "ФИЗИКУ" в твоих вопросах не было ни единого слова. Про "отталкивание от стен"- заметь, тоже. Пойми меня правильно, но тратить свои человек-часы впустую только из-за того, что вопрошающий поленился корректно и полностью сформулировать вопрос- это не очень радует.
Не знаю, что такое "задача олимпиадного уровня"- но использование враппера PsyX - это задача "включения мозгов" не требующая. А Newton - еще проще: меньше кликов, дрова не нужны. )))
Написание физики шара для задачи класса лабиринта на Блице- решение неэффективное в плане производительности, но тоже, кстати, дело весьма несложное.
Я-то могу показать как это делается, только не уверен, что потом не окажется, что тебе нужна была не физика, а лирика шара - и вся работа не пойдёт на смарку. Тем более, что иные обьяснения, кроме полных исходников, ты принимать не хочешь.
Господа! Все занятые люди, и время стоит денег. Давайте будем работать так, чтоб экономить время и силы друг друга!
smile.gif
Night Hunter
эээ...игру прошёл...счет 2700 с копейками...
Undead
Ай-ай-ай)))
Короче, ладно. Разберусь. Напишу движок, зашифрую, сделаю его дополнительным пакетом программы - флаг мне в ж... ой, то есть, в руки.
Физика в блице - реальная, крутая и реалистичная физика, а не трение и качение - это дело достаточно сложное лично для меня. Поэтому я хотел бы добавить свой голос за создание прогерского подфорума к многим другим. Там легче такие вопросы обсуждать.

Я изначально спросил следующее: как мне видоизменить СТРОЧКУ ХХХХХ В ДАННОМ КОДЕ, чтобы у меня получилось реалистичное качение БЕЗ периодических разворотов на 180 градусов.
Вы мне этого не смогли рассказать, зато подкинули более простую идею, на основе которой я могу изменять кое-что.
Так кто из нас прав? Какая разница.

Обтекстурьте шарик и привяжите камеру к его координатам, чтобы понять, что оно у меня делает. Я тоже не способен на хак в таком коде, это сложновато будет. Если бы был способен, я бы уже всё сделал. Я надеялся, что вы здесь - более извращённые программисты, чем я, а вы гораздо банальнее подходите к таким вопросам)))))))))))))))

Добавлено ([mergetime]1203513106[/mergetime]):
Цитата(NIGHT_HUNTER @ 20 Feb 2008, 16:08)
эээ...игру прошёл...счет 2700 с копейками...

Маладэц, да!
Deo
3200 с первой попытки :-p
Побольше роазрешение если можно плиз.
Убрать мигание уровня.
Сделать генератор случайных уровней с возможностью задавть размеры.
Поприятней текстуру ландшафта сделать.
Шар заменить на колобка smile.gif
Docent Picolan
шар лучше заменить на кусок дерьма а в конце уровня поставить унитаз. shit.gif yes.gif
Undead
))))))))))
Део, спасибо за советы - графические режимы я добавлю, а вот вместо шарика - мяч или что-то ещё.
Ghost#13
4412 biggrin.gif с третей попытки
Undead
laugh.gif
laugh.gif
laugh.gif
Короче, меня некоторое время не будет - буду активно и усиленно писать игрушку, кроме того, фигнёй там всякой помаюсь...
Комменты оставляйте, я их раз в день-два буду просматривать и писать, что уже сделано.
Undead
Обобщил свои работы на сайте, короче сделал главную страничку: http://undeadmonster.narod.ru/
Пока что не выложил туда новую версию.
Undead
Кроме всего прочего, я делаю ещё одну игрушку. Для неё делать отдельную тему, или выкладывать сюда же?
gamecreator
интересная игра? а на чем пишешь вообще?
Undead
Цитата(gamecreator @ 23 Feb 2008, 14:35)
интересная игра? а на чем пишешь вообще?

Типа трёхмерного арканоида. Пишу всё ещё на блице.
Undead
УРААААА!
НАКОНЕЦ-ТО!
На сайт залита новая версия M.A.Z.E!!!
Оцените, господа.

Добавлено ([mergetime]1204043974[/mergetime]):
http://undeadmonster.narod.ru
gamecreator
оценил. круто! еще бы если бы очки выло видно.
сначала не пользовался подсказками, потом заблудился в 3-м лабиринте. в 4-м вообще наугад шел.
Undead
Цитата(gamecreator @ 26 Feb 2008, 19:55)
оценил. круто! еще бы если бы очки выло видно.
сначала не пользовался подсказками, потом заблудился в 3-м лабиринте. в 4-м вообще наугад шел.

Ага, очки я вывел на экран, но решил, что их постепенное уменьшение нервирует.

Добавлено ([mergetime]1204045315[/mergetime]):
Спасибо)))
gamecreator
я имел ввиду итоговые очки (хотя бы в суме по всем уровням)
Undead
Цитата(gamecreator @ 26 Feb 2008, 20:04)
я имел ввиду итоговые очки (хотя бы в суме по всем уровням)

А, ок. Без проблем.
Undead
Где вы там?
Guevara-chan
А где, простите, те самые изменения в игровом процессе, повлекшие за собой лишний балл его оценки ?
Darkmoon
Милая игра... Только шарик мог бы и побыстрее кататься... Так со скуки можно помереть...
Undead
Цитата(Chrono Syndrome @ 27 Feb 2008, 10:57)
А где, простите, те самые изменения в игровом процессе, повлекшие за собой лишний балл его оценки ?

1) Подсветка в случае неправильного пути.
2) Плавное движение.
3) Количество уровней +1.

Добавлено ([mergetime]1204118083[/mergetime]):
Цитата(Darkmoon @ 27 Feb 2008, 14:36)
Милая игра... Только шарик мог бы и побыстрее кататься... Так со скуки можно помереть...

Наверное, притормаживает игра...
Undead
*зевает*
10 просмотров сайта... А в прошлый раз было 415.
Undead
Chrono Syndrome, ну что, можно переносить мои темы в твой подфорум?
Guevara-chan
Цитата(Undead @ 28 Feb 2008, 20:48)
Chrono Syndrome, ну что, можно переносить мои темы в твой подфорум?

Разумеется. Только этим не я заведую.
Undead
Цитата(Chrono Syndrome @ 28 Feb 2008, 20:00)
Цитата(Undead @ 28 Feb 2008, 20:48)
Chrono Syndrome, ну что, можно переносить мои темы в твой подфорум?

Разумеется. Только этим не я заведую.

Попросим админов... Disco и M.A.Z.E, думаю, надо переносить. Я ведь делаю Disco 3.
Irh
Прошел левел, прошел два -
Закружилась голова... rolleyes.gif

Добавлено ([mergetime]1204398376[/mergetime]):
А, если честно, на 3-м терпение кончилось. Музыка заработала, хотя я ничего не делал.
Undead
Странно даже. Но хорошо, что заработала. Уровень 3 - самый нудный, знаю.
Undead
Моя цель - создать до 100 уровней, причём каждые 10 - в одном файле, вместе с текстурами и цветовой гаммой.
Как считаете, если только первые 10 будут вот такими однообразными - народу будет интересно играть?
Я придумал, как выйду из положения с сохранением игры. 10 уровней - это и есть одна миссия. После её прохождения даётся рекорд и доступ к следующему файлу миссии.
P. S.
Если кто-то захочет войти в авторство, то он может сделать это, нарисовав 10 очень сложных лабиринтов, 1 из которых - 32*32, 6 - 64*64 и 3 - 128*128.
Ещё я принимаю помощь в виде MIDI-музыки. Но только в том случае, если она мне понравится с точки зрения атмосферности, возможности её использования в игре.
Соавтором считается тот, кто нарисовал или озвучил одну миссию, т. е. 10 уровней.

Да, и ещё: Игра будет распространяться как демо-версия с 20 или 30 уровнями. Тот, кто заплатит мне некоторую малую сумму, получит сложный сгенерированный файл, позволяющий играть дальше.
Как думаете, 0.99$ для народа других стран - цена неподъёмная?
(если некоторая сумма от каждой купленной копии игры пойдёт соавторам)
Guevara-chan
Цитата
Тот, кто заплатит мне некоторую малую сумму, получит сложный сгенерированный файл, позволяющий играть дальше.
Как думаете, 0.99$ для народа других стран - цена неподъёмная?
(если некоторая сумма от каждой купленной копии игры пойдёт соавторам)

Это такой тонкий юмор ?
Undead
Не парьтесь, я просто размышляю.
У меня ещё есть идея: сделать игру платной только для АКА.
А если серьёзно и в тему - я думаю, что несколько уровней и мелодий и игре можно сделать и безвозмездно, если это не по-настоящему профессиональная работа. Тогда я буду договариваться относительно цены готовой игры. Так как я выполняю основную работу сам, думаю, справедливо то, что я и этим буду управлять. В любом случае, я не надеюсь на большое желание купить мою игру - не более 10% от скачавших демо-версию, это уж точно.
Пока я не зашифровал ресурсы, игра бесплатная.
Как я их буду шифровать - не скажу. Это уже новая тема про шифровальщик. Структурирую его - и создам тему.
Lynxy
А мне игру дашь бесплатно?
Undead
Да ладно тебе... Вряд ли я вообще что-то продавать буду.
Undead
Код для создания предельно сжатых уровней. На Блице.
© Undead!!!
Первая версия - для уровня 64*64
Здесь нужен графический файл лабиринта, это программа-шифровальщик монохромного изображения.
Для теста возьмите мой файлег из прошлых версий M.A.Z.E
Очень скоро, вот-вот выложу новую версию. Осталось доделать совсем немного.
Код
Graphics 512,256,16,2
a=LoadImage("ter1.bmp")
DrawImage a,0,0
file=WriteFile("lvl1.AK")
WriteByte(file,4)

x=0
y=0
g=0
x2=100
y2=0

For z=0 To 64*8
GetColor(x,y)
If ColorRed()=255 Then g=g+128
x=x+1
GetColor(x,y)
If ColorRed()=255 Then g=g+64
x=x+1
GetColor(x,y)
If ColorRed()=255 Then g=g+32
x=x+1
GetColor(x,y)
If ColorRed()=255 Then g=g+16
x=x+1
GetColor(x,y)
If ColorRed()=255 Then g=g+8
x=x+1
GetColor(x,y)
If ColorRed()=255 Then g=g+4
x=x+1
GetColor(x,y)
If ColorRed()=255 Then g=g+2
x=x+1
GetColor(x,y)
If ColorRed()=255 Then g=g+1
x=x+1
If x=64 Then
x=0
y=y+1
EndIf

Color 0,g,g
WriteByte(file,g)
g=0
Plot x2,y2
x2=x2+1
If x2=108 Then
x2=100
y2=y2+1
EndIf
Next

CloseFile file

file2=ReadFile("lvl1.AK")
size=ReadByte(file2)
For y1=0 To size*16-1
For x1=0 To size*2-1
w=ReadByte(file2)
Color w,w,0
Plot x1+110,y1
Color 255,255,255
If w=>128 Then
w=w-128
Plot x1*8+160,y1
EndIf
If w=>64 Then
w=w-64
Plot x1*8+161,y1
EndIf
If w=>32 Then
w=w-32
Plot x1*8+162,y1
EndIf
If w=>16 Then
w=w-16
Plot x1*8+163,y1
EndIf
If w=>8 Then
w=w-8
Plot x1*8+164,y1
EndIf
If w=>4 Then
w=w-4
Plot x1*8+165,y1
EndIf
If w=>2 Then
w=w-2
Plot x1*8+166,y1
EndIf
If w=>1 Then
w=w-1
Plot x1*8+167,y1
EndIf
Next
Next

WaitKey()

End

Извините за корявость.
Есть какие-нибудь рацпредложения по сортировке, чтобы было ещё более просто и эффективно сжать файл?
Формат "AK" - это мой собственный, личный формат, с АКА не путать.

Добавлено ([mergetime]1205428077[/mergetime]):
(код не был оптимизирован, написан только что)
Undead
Цитата(gamecreator @ 17 Feb 2008, 19:47)
Классная игра. И совсем ниче бошка кругом не идет и не тошнит. Жду новых уровней. А формат лучше свой придумать.

Done, котяра!

Не люблю много хвастаться, но захотелось выложить мнения иностранных пользователей об игре.

Цитата
Just played it until level 3. Nice game,
but I tend to get lost...
It would be nice if you know in what
direction the end is from the start, so you
know where to aim for. Now you are just randomly
rolling in the mazes.


Цитата
It's very nice.
A few minior things that needs to be fixed,
like what densmiegd said an arrow to show where
you are supposed to go. This is just me but
I almost got a headache due to the stage
blinking and flickering.


Цитата
I played MAZE, I thought it was very good.
But I think the player needs more incentive
to keep going. Prizes on the way, and a
score bonus for speed perhaps?
Maybe you could pick up a temporary
speed burst along the way, or accidentally roll
over something that slows you down. Another
prize may double or triple your score. That
would make it more fun.


Цитата
Woot, 3:04.
I only tried the Maze game, but no bugs that
I could see. Level 3 was kinda hard to see
because of the glare on my screen. I really
liked the graphics, and the glow effect that
helped me out, especially in level 3.
Needs more levels! The turn speed, wall
detection, glow is great.
gamecreator
у игры есть шанс подняться до уровня Мегамейза.
Undead
)))))
В каком смысле?)))
gamecreator
в прямом

Добавлено ([mergetime]1205507575[/mergetime]):
http://forum.df2.ru/index.php?showforum=35
Guevara-chan
Цитата(gamecreator @ 13 Mar 2008, 23:47)
у игры есть шанс подняться до уровня Мегамейза.

Хм... А вот подняться в каком смысле ? Она как бы и так на пару голов выше по графике. И по звуковому оформлению тоже.
Undead
Спасибо)))
Значит, надо улучшить геймплей, добавить сюжет и на порядок изменить количество возможностей.

Добавлено ([mergetime]1205517385[/mergetime]):
Будет сделано.
gamecreator
Цитата(Chrono Syndrome @ 14 Mar 2008, 19:55)
Она как бы и так на пару голов выше по графике. И по звуковому оформлению тоже.

я не считаю это за оценку игры, поэтому имел ввиду геймплей
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2025 IPS, Inc.