biridius
online
Опыт:
20,277Активность: |
триггерная смена текстур земли создает кадавров
Код:
юниты grid[i] - отдалены друг от друга на 80 пунктов Функция должна менять текстуры ландшафта в начале каждой битвы, случайно заполняя поле боя текстурами из одного из 6-и наборов В начале каждого боя она заменяет старый ландшафт новым. Проблема: Иногда (после нескольких применений функции) результат получается смешивающим несколько разных типов ландшафта, причем бывает, что вместо указанных id создается только ландшафт города (который начинается на 'Y' и его не может быть в массиве, но это основной тип ландшафта карты) Что с этим делать? Скрины кадавров приложены Отредактировано biridius, 01.01.2015 в 16:37. |
01.01.2015, 14:34 | #1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Hate
конь вакуумный
offline
Опыт:
43,117Активность: |
а дебаг? |
01.01.2015, 19:16 | #2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
biridius
online
Опыт:
20,277Активность: |
Hate, а что дебажить, код работает правильно же?
когда я меняю рандом на определенное число 0-5, все работает без смешиваний но когда ландшафты разные, то они превращаются в разные куски ландшафта "Города" =( |
01.01.2015, 20:37 | #3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
Ancient
Щпаовапа
offline
Опыт:
38,370Активность: |
Ну вот рандом и дебаж. |
01.01.2015, 20:40 | #4
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
biridius
online
Опыт:
20,277Активность: |
Ancient, то есть узнать наложение какого на какой даст кривой? пока нашел 5->2, 1->2, 2->2, 5->3, и 4->3 но что с этим делать?
|
01.01.2015, 20:45 | #5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
отладочные сообщения за вас никто делать не будет (есть конечно инвалиды, но они сейчас в санатории).
смотрите что происходит в коде когда выпадает город, делаете выводы. |
02.01.2015, 06:57 | #6
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
biridius
online
Опыт:
20,277Активность: |
DioD,
я убрал пятый ландшафт и попробовал дебажить все что можно: дебаг мне говорит, что: 1) рандом набора дает от 0 до 4-и как надо 2) номер текстуры в массиве никогда не больше 2 и не меньше 0 как и надо 3) ид рандомных текстур при заполнении всегда выходит меньше 'Y000', а дальше идет ландшафт города ('Ydrt' и подобные), то есть текстуры кодом ставятся нужные, а превращаются в левые код работает правильно при использовании каждого одного ландшафта вместо разных (убирал рандом менял на 0-4) косяки появляются на всех видах ландшафта, когда они накладываются на отличающийся от них, через какое-то количество применений отсюда я делаю вывод что это косяк самого наложения текстур, которые почему-то превращаются в базовый набор текстур карты (город), а что делать с багами самого варкрафта я не знаю, потому и спрашиваю на форуме... Код:
при кадаврах ни разу не выводит, что неправильный индекс или текстура города, и наборы ландшафта разные берутся, работают отдельно нормально, а вместе превращаются в город Отредактировано biridius, 02.01.2015 в 13:17. |
02.01.2015, 13:04 | #7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
и каким образом я это могу увидеть из представленого кода?
состояние необратимое и больше такие тайлы не меняются вообще? или меняются но не так как хотелось бы? |
02.01.2015, 14:11 | #8
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
biridius
online
Опыт:
20,277Активность: |
DioD,
Цитата:
необратимо: некоторые тайлы превращаются в тайлы города и потом всегда генерируются как тайлы города хотя поверх них иногда удается сгенерить правильный ландшафт, тайлы которого не заменились на город, но только двух видов - ашенваля и подземелья (которое с лавой) Отредактировано biridius, 02.01.2015 в 17:27. |
|
02.01.2015, 14:20 | #9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
online
Опыт: отключен
|
у тебя на панели рельеф какие типы тайлов стоят, такие и дозволено проставлять, я думаю
ScorpioT1000 добавил: Попробуй вот это изящное решение) xgm.guru/forum/showthread.php?t=44648 долго искал чтобы показать) |
02.01.2015, 18:26 | #10
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
biridius
online
Опыт:
20,277Активность: |
ScorpioT1000, Спасибо, попробую. Я так понял надо копать Splats\UberSplatData.slk и заменять соответствующие кодам текстуры через менеджер на тайлы для создания уберсплата кодом? Тайлы в каком архиве вара лежат? |
02.01.2015, 18:59 | #11
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
ScorpioT1000
Работаем
online
Опыт: отключен
|
тайлы надо делить на куски, они в terrain art где-то, лучше уж взять более красивые текстуры,
там в теме посмотри по ссылке на другую систему, где разных текстур насоздавали для них |
02.01.2015, 19:35 | #12
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
небольшая "подсказка" посмотрите внимательно как игра хранит состояние тайла и сколько тайлов абсолютный предел, это поможет понять в чём именно проблема. |
03.01.2015, 07:13 | #13
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|