Перейти к содержимому


Свернуть чат Чат Открыть чат во всплывающем окне

Yakim (Watco... : (неделю назад) :D
Yakim (Watco... : (неделю назад) nope
Yandersen : (неделю назад) Айаяй. Поди Якимко заспамил чат стикерами. :)
Yandersen : (неделю назад) Да лан, тут каждый день кто-нить из админов заглядывает. Как пропустили?
Nextovoy : (неделю назад) Я писал
Гость : (неделю назад) Сорьки, что так у нас. Чего три года так и не попытался в чат писнуть? :)
Nextovoy : (2 недель назад) Спасибо
lz : (2 недель назад) Активировал.
Гость : (2 недель назад) Активируйте его.
Гость : (2 недель назад) Мой профиль - Nextovoy
Гость : (2 недель назад) Написать в чат. Профиль в ручную админы активируют.
Гость : (2 недель назад) Ох уж эта дурацкая привычка писать всё раздельно засоряя чат. Это всё классно, конечно, но ребята, одменестраторы, так называемые. Третий год пытаюсь зарегистрироваться (буквально, третий) на этом форуме, но ПИСЬМО С ПОДТВЕРЖДЕНИЕМ НА ПОЧТУ ТАК И НЕ ПРИХОДИТ. Что делать?
Гость : (2 недель назад) Перешёл я всё же по ссылке Redoctor'a...
Гость : (2 недель назад) Пора уже M4
Гость : (3 недель назад) итак м3
lz : (3 недель назад) Мы тебе и тут передадим.
Гость : (3 недель назад) Зачем в телеграмме делать?!Я вот например не могу зайти,написать в чат,подписаться и не только у меня это.
Redoctor : (3 недель назад) https://vk.com/away....0_23001&cc_key=
Redoctor : (3 недель назад) Тогда в телеграмме в поисковике набери Механоиды 3
Гость : (3 недель назад) Не открывается.
Redoctor : (3 недель назад) https://t.me/mechanoids3 Для тех кто в танке.
Yakim (Watco... : (15 Июнь 2018 - 01:33) КРУЗИИИС!!!11

Изображение
lz : (15 Июнь 2018 - 00:09) КРУЗИС!
lz : (15 Июнь 2018 - 00:09) ЗИС
lz : (15 Июнь 2018 - 00:09) КРУ
Yakim (Watco... : (14 Июнь 2018 - 14:50) Крузис и Королева тоже не в моем вкусе, а проигрывать нечего =D
lz : (14 Июнь 2018 - 13:55) Конечно, полюбить - так королеву, проиграть - так миллион, сделать - так крузис.
smt005 : (14 Июнь 2018 - 00:22) И от третьего лица тоже можно сделать простенькую игру. Простая игра это лучше чем ничего.
smt005 : (14 Июнь 2018 - 00:21) А, ты хочеш что-бы хит был, с "Crysis" графоном и контентом на 100500 часов игры?
Yakim (Watco... : (14 Июнь 2018 - 00:18) Ни топдовншутеры, ни стратежки)
Yakim (Watco... : (14 Июнь 2018 - 00:15) Не, спасибо, не в моем вкусе=)
smt005 : (13 Июнь 2018 - 23:13) Помнится за пару недель от скуки сделал. Делал по вечерам.
smt005 : (13 Июнь 2018 - 23:13)
smt005 : (13 Июнь 2018 - 23:11) Или например такое, только с моделями из игры -> https://youtu.be/RFDdN5dcX8s
smt005 : (13 Июнь 2018 - 23:07) Yakim, да сами себя пните... :) Сделайте что-то, хотя бы уровня "Scrolling TopDown Shooter".
Yakim (Watco... : (12 Июнь 2018 - 22:17) так что, думаю завтра с утреца стартану марафон)
Yakim (Watco... : (12 Июнь 2018 - 22:15) хе-хе, не сомневайся, я в чате по уе уже поинтересовался, сказали обалденный сериал)))
Yandersen : (12 Июнь 2018 - 20:56) Оооооо, поди ща залипнет на пару дней, стопудофф. :)
Yakim (Watco... : (12 Июнь 2018 - 18:28) Окей гляну)
Yandersen : (12 Июнь 2018 - 16:23) Сериал Пространство посмотри. Не по части Мехов, просто шикарен, авось ману доставит.
Yakim (Watco... : (11 Июнь 2018 - 18:50) Дуст и ты уже закаленные и пустые, надож где-то ману доставать)))
Yakim (Watco... : (11 Июнь 2018 - 18:49) Думаю, кого быть пнуть, что-бы тот пнул в ответ да по сильнее.
Yakim (Watco... : (11 Июнь 2018 - 18:48) Давненько и не маленько хе-хе, делать нечего, прокрастинирую =)
Yandersen : (11 Июнь 2018 - 17:46) Якимка, ты там шо, упоролсо маленько? Чиво картинами опспамилсо?
Yakim (Watco... : (09 Июнь 2018 - 22:27) Изображение

Фотография
- - - - -

Требуется помощь!


Лучший Ответ PA3UJIb, 07 Май 2015 - 15:05

Так подойдёт?

Да, так пойдет.
int quadrulate(uint16** _topLeft, uint16** _topRight, uint16** _botLeft, uint16** _botRight, uint16* _source, uint32 _side)
{
	// т.к. _side = 2^n + 1, то half будет 2^(n-1) + 1
	uint32	half = _side / 2 + 1;
	
	// выделяем память
	uint32	size = half*half*sizeof(uint16);
	*_topLeft = (uint16*)calloc(4, size);
	if (!(*_topLeft))
		return -1;
	*_topRight	= *_topLeft  + size;
	*_botLeft	= *_topRight + size;
	*_botRight	= *_botLeft  + size;
	
	// раскладываем данные из входного массива
	for (uint32 i=0; i<half; i++)
	{
		for (uint32 j=0; j<half; j++)
		{
			uint16*	ptr1 = *(_topLeft + i*half + j);
			uint16*	ptr2 = *(_topRight + i*half + j);
			uint16*	ptr3 = *(_botLeft + i*half + j);
			uint16*	ptr4 = *(_botRight + i*half + j);
			
			*ptr1 = *(_source + i*_side + j);
			*ptr2 = *(_source + (i+half-1)*_side + j);
			*ptr3 = *(_source + i*_side + (j+half-1));
			*ptr4 = *(_source + (i+half-1)*_side + (j+half-1));
		}
	}
	
	return 0;
}
Спасибо за "толчок" в нужном направлении Перейти к сообщению


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 39

#21 OFFLINE   SHW

SHW

    Разработчик

  • Создатель
  • 32 сообщений
  • Откуда:Самара
  • Настоящее имя:Слава

Отправлено 17 Август 2014 - 09:01

Ну не знаю, все люди разные. Я, например, не могу заниматься какой-то мелкой фигнёй, пока основного функционала нет. Это меня угнетает гораздо больше, чем недоделанная мелочь, которая всё равно никому кроме меня не нужна. А вот когда всё основное уже работает (20% времени - 80% результата), можно и позаниматься перфекционизмом, вылизывая каждую деталь до совершенства (80% времени - 20% результата).

 

Если уж и проводить аналогии с художником, то они делают точно также. Сначала делают грубые наброски крупными штрихами, чтобы определиться с основной композицией, сюжетом и настроением будущей картины. Потом, выбрав один из эскизов, уже начинают работать над основными персонажами, окружением, потом над детализацией персонажей, детализацией окружения. То есть, даже картины рисуют сверху вниз, от общего к частному.

 

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


Your mind is software. Program it.
Your body is a shell. Change it.
Death is a disease. Cure it.

#22 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 17 Август 2014 - 16:14

Так я ж так и делаю. Терраформинг есть, дальность видимости огромная есть - вот щас отрисовку клипмапов долизываю. Над деталями ж и работаю, разве нет?

 

Ну, решение уже нашёл в конечном итоге. Ввёл в функцию генерации клипмаповой сетки в качестве параметра максимальную длину стрипсов (таки стрипсами сетку генерю в итоге). Стрипсы теперь идут не на всю длину, а на указанное количество ячеек, затем обрываются рестартным индексом и следующая стрипса идёт ровно над предыдущей. Когда колонка набивается стрипсами доверху, алгоритм смещается и начинает следующую колонку. Эмпирически своим глаз-алмазным очемером обнаружил, что наивысшая производительность выходит при ширине колонки в 11 ячеек, что соответствует длине стрипсы в 24 индекса плюс рестартный. Видимо это связано с соответствующим значением вместимости пост-трансформационного кэша моей видюхи. Так или иначе, параметр можно легко менять.

 

В отличие от слепых машинных алгоритмов, ручной подход позволил мне оптимизировать модель сетки не только под post TnL cache, но и под Z-cull за счёт отрисовки сетки от ближних треугольников к дальним. Просто колонки начинаются не с верха клипмапы, а с середин и идут в направлении к краям карты, как и сами стрипсы внутри колонок. Алгоритм составления всей сетки такой жутко громоздкий и сложный, что мне пришлось даже рисовать участки модели в пэйнте, чтобы не запутаться. Ух, это был пазл!  :)

 

Зато теперь я могу спать спокойно, зная, что лучше сделать генерацию модели карты уже просто не получится, и тперь могу с чистой совестью идти отлизывать другие детали.



#23 OFFLINE   shadow

shadow
  • Механоид
  • 3 сообщений

Отправлено 06 Сентябрь 2014 - 18:29

Всем привет.Решил пройти М гонки и столкнулся с нереальным уровнем сложности, просто надоело задротствовать.Бесит то что основные пушки игрока наносят ну очень мили***дрический урон, в то время как аналогичные пушки у противника наносят просто огромный урон в сравнении с такими-же у игрока.Думаю сделать трейнер, но не знаю адресов или хотябы что искать в Cheat Engine , пробовал искать значение 1300 (13 квадратиков брони у глайдера) и 1.0 и потом отсеивать, не вышло.Идея такая чтобы сделать игроку непробиваемый щилд(обычный) или броню а остальной геймплей оставить как есть.
Если кто нибудь здесь знает адреса значений брони или щита для последней версии игры, дизасм структур для М гонки ,то  прошу помочь.

Также я в сети нашел трейнер, но думаю там могут быть вири, также он был запакован пакером.В его дизасме я мало что понял, так как не профи в этом, да еще и походу IDA  - licence expired
Если кому интересно  - вот архив с трейнером (версия с какого-то сайта и оно же unpacked анпакером)
Этот трейнер думаю может быть не совместим с последней версией игры, сам трейнер я не запускал, только дизасмил.
Чуть не забыл, пароль к архиву  - адрес этого сайта  с www

 

Прикрепленные файлы


Сообщение отредактировал shadow: 06 Сентябрь 2014 - 18:32

Во имя овса, сыра и свинного уха - пельмень !

#24 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 06 Сентябрь 2014 - 21:53

С гонками не знаком вапще. А описание проблемы так и подмывает ответить "а ты на лёгкий уровень переключись, и будь счастлив".



#25 OFFLINE   shadow

shadow
  • Механоид
  • 3 сообщений

Отправлено 07 Сентябрь 2014 - 02:05

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


Во имя овса, сыра и свинного уха - пельмень !

#26 OFFLINE   Yakim (Watcover3396)

Yakim (Watcover3396)
  • Создатель
  • 167 сообщений
  • Откуда:Донецкая Народная Республика
  • Настоящее имя:Дмитрий

Отправлено 07 Сентябрь 2014 - 03:03

shadow, насколько я знаю вылавливать значение можно только цифирные, то есть хочешь сделать бесконечное здоровье, то уменьшаешь здоровье до например 68хп, прописываешь в проге, отлавливаешь, снова уменьшаешь например до 33хп, прописываешь и отсеиваешь, в итоге находишь именно нужную переменную, ну а потом меняешь ее например на over100500, вот и все. А как ты собрался отлавливать переменную которую видишь лишь в графике, я не знаю.



#27 OFFLINE   shadow

shadow
  • Механоид
  • 3 сообщений

Отправлено 07 Сентябрь 2014 - 06:27

Yakim (Watcover3396), я знаю как это делается речь не  совсем об этом.Там к примеру 13 квадратиков  - это прочность брони, я почемуто подумал что это может быть 1300, на самом деле (скорее всего) это 13 квадратиков от максимума,и чему равен максимум хз. Еще был вариант что это 1.0f но походу там именно число hp .кстати трейнер тот я всетаки разобрал, в прошлый раз не туда смотрел.Оффсеты там имеются но походу там патчится все не так просто как я думал раньше.Ну и версия игры у меня видимо всетаки не та под которую делался этот трейнер.

Думаю что значение прочности и щилдов должно быть запаковано в ресурсах игры, нужно их оттуда выковырять и по этим значениям отсеивать.


Во имя овса, сыра и свинного уха - пельмень !

#28 OFFLINE   GranMinigun

GranMinigun

    Хранитель Форума

  • Админ
  • 170 сообщений
  • Откуда:Верхняя Салда
  • Настоящее имя:Александр

Отправлено 07 Сентябрь 2014 - 09:21

ArtMoney меня и не из таких задниц вытаскивал в свое время. Попробуй.


Mama Africa

#29 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 06 Май 2015 - 20:09

Дано:
массив А из М х М элементов
число М = 2n+1
Задача:
разбить массив на 4 равные части
результат выдать в виде четырех массивов В1, В2, В3, В4


 


#30 OFFLINE   lz

lz

    True Warrior

  • Админ
  • 213 сообщений

Отправлено 06 Май 2015 - 20:22

Решения не существует?


Polygon-4
Документация и инструкции по установке доступны по ссылке:
 

#31 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 06 Май 2015 - 20:38

Забыл указать, что края массивов Вх пересекаются.

Иллюстрация для массива А 9 х 9

Array_9.png


 


#32 OFFLINE   lz

lz

    True Warrior

  • Админ
  • 213 сообщений

Отправлено 06 Май 2015 - 21:04

Ну, а тогда в чём проблема?

Решение ты нарисовал уже.


Polygon-4
Документация и инструкции по установке доступны по ссылке:
 

#33 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 07 Май 2015 - 02:58

Проблема в отсутствии кода, выполняющего это решение. Нужна функция. Ну, или хотя бы пошаговый алгоритм


 


#34 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 07 Май 2015 - 06:21

Разужиб, ну ты ж почитай что написал. Вот о чём ты вапще? Массив данных? Произведение нечётных чисел - нечётное число, на 4 не делится. Проехали. А может ты имеешь в виду массив вершин и пляшешь щас с картой высот? Ну тогда конкретизируй задачу - как массив храниться, как отображается, зачем делить его на 4? Збадуна штоле? <_<



#35 OFFLINE   lz

lz

    True Warrior

  • Админ
  • 213 сообщений

Отправлено 07 Май 2015 - 09:42

Так подойдёт?

N - сторона квадратной матрицы А
/ - целочисленное деление
% - остаток от деления

Цикл i от 1 до N / 2
Цикл j от 1 до N / 2
Записать А[i,j] в B1

Цикл i от N / 2 + 1 + (N % 2) до N
Цикл j от 1 до N / 2
Записать А[i,j] в B2

Цикл i от 1 до N / 2
Цикл j от N / 2 + 1 + (N % 2) до N
Записать А[i,j] в B3

Цикл i от N / 2 + 1 + (N % 2) до N
Цикл j от N / 2 + 1 + (N % 2) до N
Записать А[i,j] в B4

Если N - нечётное, то
{
i = N / 2 + 1
Цикл j от 1 до N / 2
Делить А[i,j] в B1, B2

i = N / 2 + 1
Цикл j от N / 2 + 1 + (N % 2) до N / 2
Делить А[i,j] в B3, B4

j = N / 2 + 1
Цикл i от 1 до N / 2
Делить А[i,j] в B1, B3

j = N / 2 + 1
Цикл i от N / 2 + 1 + (N % 2) до N / 2
Делить А[i,j] в B2, B4

// центральная ячейка
i = N / 2 + 1
j = N / 2 + 1
Делить А[i,j] в B1, B2, B3, B4
}

Polygon-4
Документация и инструкции по установке доступны по ссылке:
 

#36 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 07 Май 2015 - 15:05   Лучший Ответ

Так подойдёт?

Да, так пойдет.
int quadrulate(uint16** _topLeft, uint16** _topRight, uint16** _botLeft, uint16** _botRight, uint16* _source, uint32 _side)
{
	// т.к. _side = 2^n + 1, то half будет 2^(n-1) + 1
	uint32	half = _side / 2 + 1;
	
	// выделяем память
	uint32	size = half*half*sizeof(uint16);
	*_topLeft = (uint16*)calloc(4, size);
	if (!(*_topLeft))
		return -1;
	*_topRight	= *_topLeft  + size;
	*_botLeft	= *_topRight + size;
	*_botRight	= *_botLeft  + size;
	
	// раскладываем данные из входного массива
	for (uint32 i=0; i<half; i++)
	{
		for (uint32 j=0; j<half; j++)
		{
			uint16*	ptr1 = *(_topLeft + i*half + j);
			uint16*	ptr2 = *(_topRight + i*half + j);
			uint16*	ptr3 = *(_botLeft + i*half + j);
			uint16*	ptr4 = *(_botRight + i*half + j);
			
			*ptr1 = *(_source + i*_side + j);
			*ptr2 = *(_source + (i+half-1)*_side + j);
			*ptr3 = *(_source + i*_side + (j+half-1));
			*ptr4 = *(_source + (i+half-1)*_side + (j+half-1));
		}
	}
	
	return 0;
}
Спасибо за "толчок" в нужном направлении

 


#37 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 07 Май 2015 - 19:15

Ну тогда конкретизируй задачу - как массив храниться, как отображается, зачем делить его на 4? Збадуна штоле?

Эта задача нужна для построения развернутого квадродерева. Квадродерево нужно для ускоренного доступа к данным карты высот.


 


#38 OFFLINE   PA3UJIb

PA3UJIb

    Серый

  • Создатель
  • 171 сообщений

Отправлено 20 Май 2015 - 16:12

int quadrulate(uint16** _topLeft, uint16** _topRight, uint16** _botLeft, uint16** _botRight, uint16* _source, uint32 _side)
{
	// т.к. _side = 2^n + 1, то half будет 2^(n-1) + 1
	uint32	half = _side / 2 + 1;
	
	// выделяем память
	uint32	size = half*half*sizeof(uint16);
	*_topLeft = (uint16*)malloc(size);
	if (!(*_topLeft))
		return -1;
	*_topRight = (uint16*)malloc(size);
	if (!(*_topRight))
		return -1;
	*_botLeft = (uint16*)malloc(size);
	if (!(*_botLeft))
		return -1;
	*_botRight = (uint16*)malloc(size);
	if (!(*_botRight))
		return -1;
	
	// раскладываем данные из входного массива
	for (uint32 i=0; i<half; i++)
	{
		for (uint32 j=0; j<half; j++)
		{
			uint16*	ptr1 = *(_topLeft + i*half + j);
			uint16*	ptr2 = *(_topRight + i*half + j);
			uint16*	ptr3 = *(_botLeft + i*half + j);
			uint16*	ptr4 = *(_botRight + i*half + j);
			
			*ptr1 = *(_source + i*_side + j);
			*ptr2 = *(_source + (i+half-1)*_side + j);
			*ptr3 = *(_source + i*_side + (j+half-1));
			*ptr4 = *(_source + (i+half-1)*_side + (j+half-1));
		}
	}
	
	return 0;
}

Исправил calloc(<count>, <size>) на malloc(<size>), а то указатели после работы не вычищаются


 


#39 OFFLINE   Witcher

Witcher
  • Пользователь
  • 1 сообщений
  • Настоящее имя:Vadim

Отправлено 23 Август 2015 - 21:40

Всем привет! :)  Сразу ивинюсь если не в тему, уж простите но ищу ответ как воздух где только можно и эта тема мне показалась подходящей!

Ребята подскажите кто знает чем можно открыть файлы игры AIM II в папке Data: db.ind, db.tab, quest.dat, quest.ind, quest.tab, и за что они отвечают, нужно ли в них что то менять, добавлять и т.д. при внесении изменений в игру, например добавить утраченное оружие из первой части игры?

Выражаясь яснее, у меня винда 8.1 установил СДК в папку с игрой AIM II, на игру установил мод(еще раз огромное спасибо Миксу за мод "Сектор лесов"), который добавил в игру два новых сектора и еще множество приятных плюшек, все работает без вопросов, но есть еще классный мод добавляющий в игру то самое утраченное оружие!

Сам факт существования этих творений натолкнул меня на мысль добавить оное в игру с установленным модом, так как удалять его я не хочу (иначе говоря на горизонте снова нарисовался этот гребаный компромис) :angry:.  Так вот руководствуясь той небольшой инфой, что смог нарыть в инете я решил воспользоваться СДК и объединить базы данных (есть в DataBaseEditor такая кнопка), ничего не получилось, но вроде как разобрался с db.dat, а дальше к сожалению не продвинулся из-за нехватки знаний и практики!

В самом СДК при запуске LocEditor выдает ошибку с предложением завершить работу программы, а TextEditor и Viewer вовсе не запускаются(ни в режиме совместимости ни от имени админа) :wacko:, так и не понял можно ли с помощью выше перечисленных инструментов внести изменения в выше упомянутые файлы воспользовавшись готовым материалом(так сказать исходниками) :wacko:? Может кто подскажет что и как правильно нужно сделать, Плиззззз!!! :( Заранее благодарю!



#40 OFFLINE   Yandersen

Yandersen

    Диванный теоретик

  • Админ
  • 454 сообщений
  • Откуда:Canada
  • Настоящее имя:Ян

Отправлено 23 Август 2015 - 22:48

Советую скопипастить вопрос в подходящую тему на Скаях, скорее всего сюда:

http://forum.skyrive...=1619&start=390

Там обитает Медведихъ, он мастер по модам и СДК.






Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных