Astromenace (Делаю нейтивную линукс игру, нужны тестеры.)

Нативные и в Wine/Cedega - проблемы, настройка, обсуждение

Модератор: Модераторы разделов

Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Astromenace

Сообщение eduard_pustobaev »

Mellon писал(а):
08.12.2007 21:06
Какова причина появления OpenAstroMenace?

www.google.ru -> OpenAstroMenace - Возможно, вы имели в виду: Оренастроменаце
В дисгармонии со вселенной.
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

eduard_pustobaev писал(а):
08.12.2007 21:30
Mellon писал(а):
08.12.2007 21:06
Какова причина появления OpenAstroMenace?

www.google.ru -> OpenAstroMenace - Возможно, вы имели в виду: Оренастроменаце

Какой кошмар :)
Причем именно на www.google.ru, на http://www.google.com.ua все ок :)
Спасибо сказали:
Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Astromenace

Сообщение eduard_pustobaev »

viewizard писал(а):
08.12.2007 21:41
Какой кошмар :)
Причем именно на www.google.ru, на http://www.google.com.ua все ок :)

Ага...
http://www.google.com.ua/search?num=20&...ng_en%7Clang_ru
В дисгармонии со вселенной.
Спасибо сказали:
xintrea
Сообщения: 27

Re: Astromenace

Сообщение xintrea »

Кстате, давно хотел вопрос один задать по игре, да все редактора векторного небыло.. Вопрос по скриптам. Пытался делать уровень, но заткнулся на том, что не понимаю как заставить точно двигаться пиратские корабли. Уткнулся в то, что задания нужной траетории, надо тупо играться с коэффициентами, причем их значения не совсем однозначные и заранее просчитать ни через Пи, ни через какое-то отношение не получается...

Вот пример. Надо заставить пиратский корабль двигаться по такой простой траектории

Изображение

Вопрос - каким должен быть скрипт? Есть ли рекомендации, как делать поворот так, чтобы корабль четко повернулся на 180 градусов по нужному радиусу? Я конечно сделал такое движение методом проб и ошибок, но - потратил много времени, оно достаточно кривое и с некрасивыми "примерными" коэффициентами. Если можно, код такого движения в студию.
Спасибо сказали:
Аватара пользователя
creative
Сообщения: 136
ОС: openSuSE / Windows XP

Re: Astromenace

Сообщение creative »

xintrea,
интересно, а с какой стороны(если предположить) находится корабль игрока на твоём последнем рисунке?
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

Тут надо сразу понять две вещи:
1) Корабль поворачивает не по окружности, это вам не геометрическая траектория с заданной в пространстве точкой вокруг которой надо повернуть и передвинуть корабль.
2) Поворот зависит от направления движения корабля и скорости + не надо сбрасывать со счетов ваш фпс. Фактически поворот в данном случае - это ломанная кривая вокруг мнимой окружности.

Фактически, в скрипте вы как-бы "программируете" пилота корабля.
Спасибо сказали:
xintrea
Сообщения: 27

Re: Astromenace

Сообщение xintrea »

viewizard писал(а):
13.12.2007 09:42
Тут надо сразу понять две вещи:
1) Корабль поворачивает не по окружности, это вам не геометрическая траектория с заданной в пространстве точкой вокруг которой надо повернуть и передвинуть корабль.
2) Поворот зависит от направления движения корабля и скорости + не надо сбрасывать со счетов ваш фпс. Фактически поворот в данном случае - это ломанная кривая вокруг мнимой окружности.

Фактически, в скрипте вы как-бы "программируете" пилота корабля.


В общем, я так понял, что указав угол поворота, например roty="180", коэффициент поворота, например rotacy="1.0", и скорость, например speed="10", этого еще не достаточно чтобы сделать точно поворот. Нужно учитывать время, отведенное на поворот, чтобы его хватило. А оно зависит от FPS. Поэтому корабль либо не доповорачивает до конца и летит потом не туда куда надо, либо поворачивает до конца, но не с той скоростью. Скорость видимо меняется из-за того что корабль пытается уложиться сделать поворот за отведенное время и снижает скорость, может еще какой фактор влияет, так и не допонял.

Рекомендую аффтару в следующей игре не допускать неоднозначности, и ликвидировать перехлест области ответственности параметров. Ибо если этого не сделать, "программирование" поведения объекта превращается в игру "угадай число".
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

xintrea писал(а):
13.12.2007 22:59
В общем, я так понял, что указав угол поворота, например roty="180", коэффициент поворота, например rotacy="1.0", и скорость, например speed="10", этого еще не достаточно чтобы сделать точно поворот. Нужно учитывать время, отведенное на поворот, чтобы его хватило. А оно зависит от FPS. Поэтому корабль либо не доповорачивает до конца и летит потом не туда куда надо, либо поворачивает до конца, но не с той скоростью. Скорость видимо меняется из-за того что корабль пытается уложиться сделать поворот за отведенное время и снижает скорость, может еще какой фактор влияет, так и не допонял.

Вы указываете roty="180" rotacy="1.0" speed="10", что происходит:
1) Корабль начинает "разгоняться" до 10-ти, одновременно начинает увеличивать приращение поворота (фактически находим по ускорению поворота корабля) до максимально возможной с коэф rotacy="1.0" (т.е. ускорение у нас 100%, увеличивать приращение поворота будем максимально быстро).
2) Корабль какое-то время набирает скорость и выходит на максимальное приращение угла поворота
3) Поворачиваем и летим с максимальными параметрами.
4) Плавно начинает "убирать" приращение угла поворота когда подходим к 180 градусам (опять же с учетом "ускорения").
5) Поворот завершен (приращение по углу нулевое), продолжаем движение со скоростью 10.

Не совсем понял, о каком "перехлест области ответственности параметров" вообще идет речь. Есть скорость, есть ускорение, есть угол поворота, есть ускорение по углу...

xintrea писал(а):
13.12.2007 22:59
Рекомендую аффтару в следующей игре не допускать неоднозначности, и ликвидировать перехлест области ответственности параметров. Ибо если этого не сделать, "программирование" поведения объекта превращается в игру "угадай число".

Давайте расставим точки над "и" сразу - скрипт делался _для нас_, так как было нужно _нам_, и только потом, я написал мануалы, чтобы кто угодно мог делать миссии... и я теперь еще виноват и что-то там должен учесть? ;)
Как говорится - сырцы вам вруки (благо они открыты), ваяйте что посчитаете нужным.
Спасибо сказали:
Аватара пользователя
Voice
Сообщения: 1073
Статус: столлманист
ОС: Debian GNU/Linux

Re: Astromenace

Сообщение Voice »

Игрушка супер! Спасибо автору огромное!

Но вот у меня тут маленькая проблемка возникла. Дошел я значит до 6-й миссии и там в конце "бос", значит я в него стреляю, а его жизни даже не шевелятся. Его убить то можно? :)
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

Voice писал(а):
14.12.2007 00:08
Игрушка супер! Спасибо автору огромное!

Спасибо :)

Voice писал(а):
14.12.2007 00:08
Но вот у меня тут маленькая проблемка возникла. Дошел я значит до 6-й миссии и там в конце "бос", значит я в него стреляю, а его жизни даже не шевелятся. Его убить то можно? :)

Можно конечно, просто видно вы оружие не правильно подобрали ;)
Спасибо сказали:
xintrea
Сообщения: 27

Re: Astromenace

Сообщение xintrea »

Рекомендую аффтару в следующей игре не допускать неоднозначности, и ликвидировать перехлест области ответственности параметров. Ибо если этого не сделать, "программирование" поведения объекта превращается в игру "угадай число".


Давайте расставим точки над "и" сразу - скрипт делался _для нас_, так как было нужно _нам_, и только потом, я написал мануалы, чтобы кто угодно мог делать миссии... и я теперь еще виноват и что-то там должен учесть? Как говорится - сырцы вам вруки (благо они открыты), ваяйте что посчитаете нужным.


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

Представьте

старт(x,y)->прямое_движение(100 метров, азимут 180)->по_радиусу(R 25, 90 градусов)->прямое_движение(50 метров, азимут не задан - относительно предыдущего положения)->движемся_по_синусоиде(амплитуда 80, 1 период)->...

При таком подходе легче знать, куда корабль прилетит в конце своей траектории. Кроме того, это более наглядно (а в отладке можно сделать режим "показать траетории"), и с таким подходом кстати легче контролируются движения объетов друг относительно друга. Скорость, вращение можно менять параметрически между узловыми точками пути. Заметте, я вам рекомендую это учесть в следующей игре, а не переделывать astromenace.

Перехлест области ответственности - это когда изменение одного параметра влияет на изменение (требует корректировки) другого параметра для получения нужного результата. В случае физических величин так и происходит со скоростью и ускорением, ибо они немного :) взаимосвязаны. Если это мешает (а это явно мешает), то лучше от такой взаимосвяи уйти, применив другою модель перемещения описанную выше по тексту.
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

:) Ну, если сделано было именно так, а не иначе... наверно на то были свои причины :), только не надо думать что я об этом не думал или у меня не хватило ума это сделать, у меня конечно не 7 пядей во лбу, но кое-что я еще умею а кол-во вариаций на тему "игровой скрипт для AstroMenace" было весьма велико. :)
Честно говоря, нет времени сейчас спорить и обсуждать этот момент - все равно ничего переделываться уже не будет. Если кто-то захочет реализовать этот момент в OpenAstroMenace - без проблем :)
Спасибо сказали:
Аватара пользователя
Voice
Сообщения: 1073
Статус: столлманист
ОС: Debian GNU/Linux

Re: Astromenace

Сообщение Voice »

viewizard писал(а):
14.12.2007 00:14
Можно конечно, просто видно вы оружие не правильно подобрали ;)

Я тоже так подумал, но у меня четыре пушки по 300 и ракеты за 4000. Неужели мало? :unsure:
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

Voice писал(а):
15.12.2007 15:33
viewizard писал(а):
14.12.2007 00:14
Можно конечно, просто видно вы оружие не правильно подобрали ;)

Я тоже так подумал, но у меня четыре пушки по 300 и ракеты за 4000. Неужели мало? :unsure:

Я думаю этого маловато ;)
Спасибо сказали:
Аватара пользователя
sonapax
Сообщения: 215
Статус: . . . . . .
ОС: DebIaN testing

Re: Astromenace

Сообщение sonapax »

viewizard, не подскажите какими книгами пользовались, и есть ли блог какой или чтото типа описания подводных камней , граблей в программировании ?
Я хотел бы бы попробовать чтонить сделать попытаться под линь, конечно можно читать что попадя, но если вас так благодарят, то может дадите пару советов? )
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

sonapax писал(а):
19.12.2007 15:51
viewizard, не подскажите какими книгами пользовались, и есть ли блог какой или чтото типа описания подводных камней , граблей в программировании ?
Я хотел бы бы попробовать чтонить сделать попытаться под линь, конечно можно читать что попадя, но если вас так благодарят, то может дадите пару советов? )

Я бы советовал работать с библиотекой libsdl, за нее можно почитать тут, правда все на англ:
http://www.libsdl.org/tutorials.php
http://www.libsdl.org/articles.php
мне этого хватило с головой. Там и как инить, и о куче подводных камней я где-то видел (мне правда почти ничего не понадобилось - не мои случаи были).

Для звука лучше взять OpenAL, как играть ogg и wav хорошо написано сдесь (на русском):
http://www.gamedev.ru/articles/?id=100102

И почаще писать и читать сюда:
http://www.gamedev.ru/forum/
там весьма много линуксоидов кстати, так что подскажут если что ;)

По поводу подводных камней... даже ничего сказать толком не могу... советую спрашивать или на геймдев форуме, или смотреть на сырцы той же AstroMenace
http://www.viewizard.com/ru/download.php?forceos=source
там же можно посмотреть как работает libSDL с OpenGL, OpenAL и т.д. Почти все комментарии на русском языке, так что вам будет легче :)
Спасибо сказали:
Аватара пользователя
sonapax
Сообщения: 215
Статус: . . . . . .
ОС: DebIaN testing

Re: Astromenace

Сообщение sonapax »

viewizard писал(а):
19.12.2007 16:14
---

огромное спасибо, что не поленился ответить, ведь работы та много )
почитать обязательно надо...учился 6 лет назад на программера...чувствую возрождаюсь )) надо с чего нить начинать ) благо у же под линухом сижу -
благородное ето дело "!
Спасибо сказали:
Аватара пользователя
creative
Сообщения: 136
ОС: openSuSE / Windows XP

Re: Astromenace

Сообщение creative »

viewizard, а для создания 3D моделей кораблей ты сам программку какую-нибудь писал, или пользовался уже готовым софтом?
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

creative писал(а):
20.12.2007 15:35
viewizard, а для создания 3D моделей кораблей ты сам программку какую-нибудь писал, или пользовался уже готовым софтом?

Как я уже говорил, мы лицензировали большую часть моделей, т.е. сами не делали, какие программы использовали моделеры я точно не знаю, знаю что был 3дмакс.
Потом я сделал небольшой конвертор, чтобы в игре тянуть модели в своем формате и исключить парсер нужного 3д формата и доп. обработку данных к нужному виду. Сконвертировал все модели. И все.
Спасибо сказали:
Аватара пользователя
creative
Сообщения: 136
ОС: openSuSE / Windows XP

Re: Astromenace

Сообщение creative »

понятно :)
Спасибо сказали:
Аватара пользователя
rain_99
Сообщения: 989
ОС: Debian

Re: Astromenace

Сообщение rain_99 »

большое спасибо за игру, очень красивая и приятно поиграть. Если будет мультиплеерная стрелялка такой же красоты - куплю незадумываясь за разумные деньги конечно.
...Все в наших руках...
Спасибо сказали:
Аватара пользователя
Deo
Сообщения: 365
ОС: openSuse 12.3

Re: Astromenace

Сообщение Deo »

Качаю посмотреть...
а она уже опенсорсная как я понял?
моё любимое облачко
Фхтагн! Мозг! Ням-ням! ~ Ктулху про Ленина
Спасибо сказали:
Аватара пользователя
FrozeNangeL
Сообщения: 222
Статус: Linux newbie
ОС: Fedora 23 x86_64

Re: Astromenace

Сообщение FrozeNangeL »

Нашел игру в репозитариях OpenSuSE.. Вопрос - кнопки меню никак не именованы. Абсолютно никак. Исправить можно?

ЗЫ При загрузке надпись Lade
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

FrozeNangeL писал(а):
01.12.2008 20:28
Нашел игру в репозитариях OpenSuSE.. Вопрос - кнопки меню никак не именованы. Абсолютно никак. Исправить можно?

ЗЫ При загрузке надпись Lade

Ну, хочу сказать что репку сюзи я не поддерживаю.
То, что она там кривая - мне известно, судя по надписи Lade вы скачали _немецкую_ версию игры, но при это скачали данные для англ версии (я думаю они этот глюк так и не исправили). За глючность пакетов в репках, так сказать, я ответственности не несу. :unsure:
Спасибо сказали:
Аватара пользователя
eduard_pustobaev
Сообщения: 2629
Статус: Ленивец
ОС: Arch/Debian.

Re: Astromenace

Сообщение eduard_pustobaev »

Чота FPS неприлично низкие. Без АА тож самое. Карточка Ati 2600, ноутбучная. Попробовать поиграть хочется, но не выходит :(
В дисгармонии со вселенной.
Спасибо сказали:
Аватара пользователя
viewizard
Сообщения: 279
ОС: Gentoo

Re: Astromenace

Сообщение viewizard »

eduard_pustobaev писал(а):
01.12.2008 21:05
Чота FPS неприлично низкие. Без АА тож самое. Карточка Ati 2600, ноутбучная. Попробовать поиграть хочется, но не выходит :(

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