forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на MidletPascal (http://forum.boolean.name/forumdisplay.php?f=88)
-   -   La Nuit Tombe (изометрический движок) (http://forum.boolean.name/showthread.php?t=12699)

cherepets 21.06.2010 20:43

La Nuit Tombe (изометрический движок)
 
Вложений: 1
собираюсь сделать изометрическую игру (экшн-рпг), хочу узнать у вас как себя ведет мой двиг. то что я выкладываю - техно-демка движка (играть тут особо не во что, а сама игра вообще не про то будет). что у нас тут есть:

изометрия, большая карта, генерация ладшафта, непроходимые объекты (деревья, столбики), анимация героя, стрельба, летающие духи (типо провников, они облетают столбы и деревья, они нас не трогают, их можно убивать), ориентировался как всегда на 240х320, но т.к. интерфейса нет вообще - смотрите на любых

пишите если найдете баги, указывайте свой фпс, работает ли вибрация (при выстрелах) и просто что думаете

скрины:


скачать:

Igor 21.06.2010 21:05

Ответ: La Nuit Tombe (изометрический движок)
 
Вложений: 1
Наступает на траву, которая должна его загораживать

cherepets 21.06.2010 22:00

Ответ: La Nuit Tombe (изометрический движок)
 
трава у меня просто на тайле нарисована, а не объектом сделана))
в самой игре конечно сделаю лучше :)
___________________________________
кстати, что у тебя за комп??
мои скрины тоже с кЕмуля...

cHeRsAnYa 22.06.2010 00:32

Ответ: La Nuit Tombe (изометрический движок)
 
Работает нормально, только вот уж очень неестественно двигается персонаж. На KEmulator 120-140 FPS, на K660 - стабильно 30.

Zorba 22.06.2010 17:46

Ответ: La Nuit Tombe (изометрический движок)
 
Работает нормально и смотриться симпатично :) FPS 30.

Igor 23.06.2010 21:15

Ответ: La Nuit Tombe (изометрический движок)
 
Размер перса слишком большой для такого экрана.

IvanNes 28.06.2010 07:00

Ответ: La Nuit Tombe (изометрический движок)
 
Круто! Работает хорошо, FPS 15.
Только спрайт стреляющего человека, мне не очень понравился, т.к. гильзы сразу кучей валятся, и не остаются на земле.

cherepets 28.06.2010 17:05

Ответ: La Nuit Tombe (изометрический движок)
 
в самой игре стрельбы не будет, так что все равно))

abcdef 29.06.2010 10:35

Ответ: La Nuit Tombe (изометрический движок)
 
http://waper.ru/folder/206005/915727

cherepets 29.06.2010 16:06

Ответ: La Nuit Tombe (изометрический движок)
 
abcdef, эта диабла не изометрия, а топ-даун.
да и вообще это жуть какая-то... ничего кроме заставки нет((

хотя вроде отрисовка идет правильно, так что вполне возможно что двиг неплох))

Arton 30.06.2010 10:52

Ответ: La Nuit Tombe (изометрический движок)
 
Siemens S75, полёт нормальный, но не совсем, 9 FPS, я так понимаю потому что видно только левою верхнею часть экрана. Можно сделать с подстраиваемым разрешением? И перса, да, надо поменьше сделать, а то он как кол в чистом поле выше всех.

P.S. Почему солдат немец? >>:( Или это будет история о том что произошло в аду с одним нацистом?

cherepets 30.06.2010 11:51

Ответ: La Nuit Tombe (изометрический движок)
 
да, 9 фпс маловато... после проверки фпс (первые пара секунд) я ставлю фпс всем на 16. менее 16 - значит тормозит((

сама игра вообще не про то будет, да и надеюсь хоть на этот раз не поленюсь сделать еще под 2 экрана (176х208 и 320х480)

фашиста поставил, т.к. это была единственная приличная модель солдата у меня. кстати приглядись как он держит автомат, он вообще крутой :-D

cherepets 30.06.2010 12:54

Ответ: La Nuit Tombe (изометрический движок)
 
такой вопрос:
как вы считаете, лучше прописать всего по максимуму в алгоритм поведения врагов (чтобы не тупили когда мы встаем между деревьями), оставить все как есть (все равно когда их много не заметно что парочка долбится в стену) или же повесить на рандом (и смотрится прикольно када толпа ведет себя по разному и дерево обойдет со второй или третей попытки)

Arton 30.06.2010 13:43

Ответ: La Nuit Tombe (изометрический движок)
 
Цитата:

Сообщение от cherepets (Сообщение 152211)
надеюсь хоть на этот раз не поленюсь сделать еще под 2 экрана (176х208 и 320х480)

Тогда и на мой пожалуйста 132x176!

cherepets 30.06.2010 13:56

Ответ: La Nuit Tombe (изометрический движок)
 
а смысл? почти пустая демка двига, без нормального окружения, почти без АИ, со всего 2мя спрайтами и то лагает...

Rock2roll 14.07.2010 22:08

Ответ: La Nuit Tombe (изометрический движок)
 
Норм двиг будет. Молодец

cherepets 04.08.2010 14:26

Ответ: La Nuit Tombe (изометрический движок)
 
скоро игра будет готова. пока смотрим скрин:

Reizel 04.08.2010 23:07

Ответ: La Nuit Tombe (изометрический движок)
 
ПРеведМедвед :) А так ниче, красиво :)

Rock2roll 04.08.2010 23:11

Ответ: La Nuit Tombe (изометрический движок)
 
Мне нравится. Помойму неплохо

cherepets 05.08.2010 22:50

Ответ: La Nuit Tombe (изометрический движок)
 
возможно не финал, надо проверить работу на:
- 176х220/176x208
- 240х320 (только SЕ или нокиа s40)
- 320х480 с сенсорным экраном

качать: http://upwap.ru/979769

отписывайтесь)

Rock2roll 05.08.2010 23:18

Ответ: La Nuit Tombe (изометрический движок)
 
FPS: 24. Игрушка крутая с плана карты, животных. Можешь сделать что то типо охоты на зверей. Зделай чудика с пушкой и пусть всех мочит. ЗЫ, Супер. 320х240. Мой г502

cherepets 05.08.2010 23:40

Ответ: La Nuit Tombe (изометрический движок)
 
а как ты фпс посчитал?

psih1 06.08.2010 09:26

Ответ: La Nuit Tombe (изометрический движок)
 
Чтож круто не чегоне скажеш

Rock2roll 06.08.2010 10:12

Ответ: La Nuit Tombe (изометрический движок)
 
FPS у меня в функциях телефона. На приложении жму "функции"-"информация"-"показать скорость"-"да"

cherepets 06.08.2010 11:00

Ответ: La Nuit Tombe (изометрический движок)
 
временами СЕ меня удивляют))

я вообще в шоке был когда увидел что у девушки телефон игры под меньшие эраны растягивает на полный...

Rock2roll 06.08.2010 14:23

Ответ: La Nuit Tombe (изометрический движок)
 
У мну так тоже. И с большого на меньший, и с меньшего на большой. И в "окно" кидает

Rock2roll 06.08.2010 14:23

Ответ: La Nuit Tombe (изометрический движок)
 
cherepets, молодец. Мне лично игра оч понравилась, особенно меню!

cherepets 06.08.2010 14:31

Ответ: La Nuit Tombe (изометрический движок)
 
пасиб. кстати, лабиринты случайно генерируются)

Rock2roll 06.08.2010 14:34

Ответ: La Nuit Tombe (изометрический движок)
 
Вау. Это классно. Красиво вышло и эффектно.

Dj_Alex 06.08.2010 15:41

Ответ: La Nuit Tombe (изометрический движок)
 
прикольно так, только под мой экран нет и пробовал на эмуле.
играл за зайца, там от волка хоть можно убежать? а то он догоняет постоянно.
и смысл игры не совсем понял, типа симулятор дикого зверя?

cherepets 06.08.2010 17:08

Ответ: La Nuit Tombe (изометрический движок)
 
у зайца скорость больше чем у волка, а лису надо сбивать с хвоста об деревья.
ну да, типо того)) в начале в обучении сказано что именно делать

Rock2roll 06.08.2010 17:42

Ответ: La Nuit Tombe (изометрический движок)
 
Переделай двиг на охоту на зверей. Как я писал. Ну оставь этот, а копию переделай. Типо охотником ходишь и мочишь зверей. Там домик с припасами воткни и т.д. Транспорт. Будет зашибись!

cherepets 06.08.2010 17:56

Ответ: La Nuit Tombe (изометрический движок)
 
не, эта игра останется как есть.
но вообще двиг вышел неплохой, так что может на нем и будет шутер какой-нить))

psih1 06.08.2010 18:08

Ответ: La Nuit Tombe (изометрический движок)
 
у меня есть не большой вопрос как ты сделал деревья??Они больше тайлов

cherepets 06.08.2010 18:54

Ответ: La Nuit Tombe (изометрический движок)
 
деревья - не тайлы, они такие же спрайты как и звери

Rock2roll 06.08.2010 19:41

Ответ: La Nuit Tombe (изометрический движок)
 
У меня по-ходу темы накопились вопросы:
1) ЧТо такое изометрия?
2) Что такое изометрический движок?
3) Почему твой движок изометрический?
4) Что значит La Nuit Tombe?
5) Жанр твоей игры?
6) Дальнейшее розвитие, или что ждать в будущем? =)

Надеюсь получить ответы))

cherepets 06.08.2010 21:45

Ответ: La Nuit Tombe (изометрический движок)
 
1-3) Это значит что тайлы в форме ромбов у которых углы по 30 и 60 градусов
4) "Наступает ночь". В демке туман довольно тёмный и призраки... Почти хоррор)))
5) Сейчас про подобное чаще всего говорят "симулятор жизни животного" или типо того. Но на самом деле это обычный экшн и никакие спрайты жанра я думаю не изменят.
6) Для начала надо дождаться пока проверят игру на всех девайсах. Тогда я скажу что это финал и сяду делать что-то другое. Хотя я устроился на работу, так что хз что там со временем будет...

cherepets 08.08.2010 15:49

Ответ: La Nuit Tombe (изометрический движок)
 
ну, раз жалоб на баги нет, значит говорим слово "финал" и радуемся))

The Rustling of Leaves

особенности:
- выбор из 4 животных
- 4 времени года
- погодные эффекты
- случайные лабиринты

скрины:


качать:
http://upwap.ru/979769

Rock2roll 08.08.2010 16:52

Ответ: La Nuit Tombe (изометрический движок)
 
Всё на высшем уровне!

cherepets 09.08.2010 16:10

Ответ: La Nuit Tombe (изометрический движок)
 
как правильный разраб, ( :crazy: ) я решил слушать игроков.
так что делаю мясную игру на том же двиге, рабочее название alien shooter mobile (потом придумаю менее плагиатное).

Rock2roll 09.08.2010 16:44

Ответ: La Nuit Tombe (изометрический движок)
 
в чём заключается "мясистость" игры? =)))

cherepets 09.08.2010 17:40

Ответ: La Nuit Tombe (изометрический движок)
 
рабочее название хорошо намекает в чем.

http://www.bestshareware.net/img8/al...ooter-big3.jpg
если нет, то alien shooter - культовая игра для ПК от отечественной студии Sigma.
ориентироваться буду на нее, но без откровенного списывания

Rock2roll 09.08.2010 18:29

Ответ: La Nuit Tombe (изометрический движок)
 
Понял. Спасибо. С названием помудрим. Не копирайти)))

Bananbl4 10.08.2010 09:02

Ответ: La Nuit Tombe (изометрический движок)
 
Идеально -- скрестить alien shooter с crimsonland (если кто не знает, тоже самое, только про пауков, ящерок и першельцев(не очепятка:-D))
А название --- alienland или crimson shooter :rolleyes:

Rock2roll 10.08.2010 12:31

Ответ: La Nuit Tombe (изометрический движок)
 
"alien attack", "alien battles", "alien conflict", "alien's destroyer", "alien killer (тут же "A-killer")", "alien blood". Названия))) Если надо, ещё придумаю)))

NetBuilding 10.08.2010 14:23

Ответ: La Nuit Tombe (изометрический движок)
 
хотелось бы взглянуть на движок изнутри в учебно справочных целях.

cherepets 10.08.2010 14:35

Ответ: La Nuit Tombe (изометрический движок)
 
могу скинуть в личку ключевые моменты (весь исходник игры не буду скидывать, потому что ты только запутаешься в итоге)

Rock2roll 10.08.2010 15:21

Ответ: La Nuit Tombe (изометрический движок)
 
Не скидать. А продавать! Ты трудился над двигом и не должен роспостранять. Хотя можешь.
ЗЫ. Это мой совет если не хочешь чтобы в итоге по форуму пробежалась волна игр на твоём движке но без твоего авторства с коментами: "Сделал сам, ещё и без либ!" =)
Улыбно, но правда

cherepets 10.08.2010 15:26

Ответ: La Nuit Tombe (изометрический движок)
 
думаю даже если я выложу полный исходник - такого не произойдет.
исходник Stille Nacht'a лежит же на форуме, а единственная игра на нем - мой же дум стори.

правда там двиг в очень странном виде и с ним тяжело разобраться, может в этом и все дело...

Nuprahtor 10.08.2010 15:31

Ответ: La Nuit Tombe (изометрический движок)
 

Stille Nacht, La Nuit Tombe
Творческий подход к названию движков, так держать!:)

Rock2roll 10.08.2010 15:55

Ответ: La Nuit Tombe (изометрический движок)
 
Как сказано на форуме МОТОфан.ру: "Твоя жизнь, твой выбор". Твой исходник- его судьба в твох руках =). Всё выше сказанное мной было написано с добрыми намереньями))( #48 )

cherepets 11.08.2010 17:46

Ответ: La Nuit Tombe (изометрический движок)
 
блиииин...
для новой игры старый алгоритм сортировки не пойдет (он сортировал только врагов, количество которых известно заранее) и делил все остальное на 2 группы (перед игроком и за игроком).

в новой же игре есть стены и количество стен и врагов заранее не известно.
вопрос: как это все отсортировать? желательно с примером...

подробнее о том что есть:

var object:array[1..400,1..2] of integer;
quan:integer;

400 - максимальное колиство объектов.
quan - реальное количество объектов.
1я строка в массиве - координата x.
2я строка в массиве - координата y.
объекты в массиве должны идти по возрастанию суммы x и y.

_Nox_ 11.08.2010 18:44

Ответ: La Nuit Tombe (изометрический движок)
 
Код:

for i:=1 to quan do
 begin
  p:=false;
  for j:=1 to quan-1 do
  if object [j,1]+object [j,2] >  object [j+1,1]+object [j+1,2] then
    begin
    cc:=object [j,1];
    object [j,1]:=object [j+1,1];
    object [j+1,1]:=cc;
    cc:=object [j,2];
    object [j,2]:=object [j+1,2];
    object [j+1,2]:=cc;
    p:=true;
    end;
  if not p then break;
  end;

Походу так, самый простой вариант

cherepets 11.08.2010 19:00

Ответ: La Nuit Tombe (изометрический движок)
 
ты по-видимому опечатался, for j:=1 to quan
а вообще спасибо)) не знаю почему меня ввел в ступор вроде простой вопрос...

cherepets 12.08.2010 14:32

Ответ: La Nuit Tombe (изометрический движок)
 
_Nox_, а зачем нужно p:boolean?
у меня когда я его использую графика подглючивает (видимо сортировка не до конца проходит)

cherepets 26.10.2010 12:18

Ответ: La Nuit Tombe (изометрический движок)
 
Вложений: 1
Решил вместо пузырьковой использовать быструю сортировку и был слегка шокирован результатом:


Отсортировать надо по возрастанию суммы 1го и 2го "столбца".
Вот исходник, может посмотрите как такое может быть?

_Nox_ 26.10.2010 17:44

Ответ: La Nuit Tombe (изометрический движок)
 
Цитата:

Сообщение от cherepets (Сообщение 158013)
ты по-видимому опечатался, for j:=1 to quan
а вообще спасибо)) не знаю почему меня ввел в ступор вроде простой вопрос...

Нет я не опечатался, можно даже for j:=1 to quan-i do

Цитата:

Сообщение от cherepets (Сообщение 158082)
_Nox_, а зачем нужно p:boolean?
у меня когда я его использую графика подглючивает (видимо сортировка не до конца проходит)

Этот булин служит как флаг для того, что-бы когда в цикле после прохода ничего не изменилось просто выходить, например если у нас 1000 элементов, и на каком-то шаге например 257 массив уже отсортирован, то зачем гонять сортировку, можно просто выйти

Лучше поздно чем никогда:)

Может криво из-за рекурсии, я не знаю. можно сортировать кучей, тоже за O(n log n) работает, там рекурсия не нада. Если надо могу написать сортировку

cherepets 26.10.2010 17:59

Ответ: La Nuit Tombe (изометрический движок)
 
Новые элементы всегда добавляются в конец, так что первые 257 у меня могут идти правильно, а дальше - нет.

Если можешь - напиши, пожалуйста.

_Nox_ 26.10.2010 18:00

Ответ: La Nuit Tombe (изометрический движок)
 
Объясни подробней как тебе сортировать надо, а то ты меня что-то запутал

cherepets 26.10.2010 18:13

Ответ: La Nuit Tombe (изометрический движок)
 
так же как и в примере.
если object[i,1]+object[i,2]>object[j,1]+object[j,2], то меняем их местами так:
object[i,1] = object[j,1]
object[i,2] = object[j,2]
и наоборот

_Nox_ 27.10.2010 01:09

Ответ: La Nuit Tombe (изометрический движок)
 
Код:

program heapsort;
const
        max_Heap = 10000;
type
        THeap = record
          h:array [1..max_heap] of integer;
          E:integer;         
        end; 

var
        Heap: theap;
        i,p:integer;
       
procedure create_heap;
begin

heap.E:=0;
 
end;

procedure in_heap (A:integer);
var
        cc:integer;
        cur:integer;
begin
inc (heap.e);
heap.h [heap.e]:=a;
cur:=heap.e;
while (heap.h [cur]<heap.h [cur div 2]) do
 begin
  cc:=heap.h [cur];
  heap.h [cur]:=heap.h [cur div 2];
  heap.h [cur div 2]:=cc;
  cur := cur div 2;
  if cur = 1 then break;
 end;
end;

PROCEDURE OUT_HEAP (var A:integer);
var
        cc,cur,next:integer;
begin
a:=heap.h[1];
heap.h [1]:=heap.h[heap.e];
dec (heap.E);
cur:=1;
while true do
 begin
  if heap.h [cur*2]<heap.h [cur*2+1] then next:=cur*2 else next:=cur*2+1;
  if heap.h [cur]>heap.h [next] then
  begin
    cc:=heap.h [cur];
    heap.h [cur]:=heap.h [next];
    heap.h [next]:=cc;
    cur := next;
    if cur * 2> heap.e then break;
  end else break;
 end;
end;


begin
create_heap;
for i:=1 to 1000 do
 IN_heap (random (10000));
for i:=1 to 1000 do
 begin
  Out_heap (P);
  write (p, ' ');
 end;
end.

Вот, только что написал, слегка протестировал, вроди работает, адаптируй код под себя, мне просто спать уже пора, нет времени, кстати, я бы тебе посоветовал, посчитать сразу один массив с суммами, чтобы сократить количество вычислений. И не забудь указать кто код писал:)

cherepets 27.10.2010 12:01

Ответ: La Nuit Tombe (изометрический движок)
 
я так понял Е - число заполненных элементов массива?
тогда у меня выходит вот чего:


и вот:

(слева твоя, справа пузырьковая)

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

Вообще есть мысль сделать массив boolean'ов и туда загонять индексы изменившихся элементов. Тогда, надеюсь выйдет ускорить сортировку)

_Nox_ 27.10.2010 16:39

Ответ: La Nuit Tombe (изометрический движок)
 
На таких маленьких числах, пузырьковая сортировка по любому выигрывает, Если бы размерность была хотя бы более тысяч чисел, то тогда действительно, имеет смысл использовать другие виды сортировок,

Кстати, что-то на первой картинке, мужыки как-то не правильно стоят, то от сортировки зависит?

cherepets 27.10.2010 19:49

Ответ: La Nuit Tombe (изометрический движок)
 
У меня и стены и враги в одном массиве.
Враги уже перешли на новое место, а в массиве их положение не изменилось.

Просто на реальном телефоне пузырьковая тратит ~30мс, а не 1 как эмулятор. А это уже не очень-то хорошо(


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

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