Welcome to U.A.C. [O.S.A.]
login / register
Status: Guest
Архивы форума | iddqd.ru
Wolf 3D
ПравилаПравила ПоискПоиск
18+
Тема для новичков. Вопросы по маппингу/моддингу - любые! Пред.  1, 2, 3 ... 144, 145, 146 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!Ответить
АвторСообщение
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №2881 Отправлено: 03.12.11 15:06:29
YURA_111 :
летят в точно указанную точку (вот только где прописана реализация этого я так и не понял)

Может это поможет?
http://zdoom.org/wiki/Classes:BossTarget
Сам Icon Of Sin здесь: http://zdoom.org/wiki/Category:Icon_of_Sin
класс BossTarget D2-вский (не zdoom)

marat
Спасибо. Я давно знал о существовании таких эмуляций для C/C++, оказывается и здесь есть... впрочем, неудивительно.
1 7 13
c4tnt
= 1st Lieutenant =
Next rank: - Captain - after 211 points
1879

Doom Rate: 1.92
Ссылка на пост №2882 Отправлено: 03.12.11 17:40:49

int val = samples<<17 + samples<<19; //x*10 = x<<1 + x<<3


Интересно, неужели виртуальная машина гоззы действительно выполнит это быстрее чем простое умножение?
1 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №2883 Отправлено: 03.12.11 17:49:05
c4tnt
Это можно проверить, используя большой цикл и замеры времени с помощью Timer() ;-)

Кто знает, как в скрипте можно проверить наличие у игрока таких паверапов:
- Partial Invisibility
- Light Amplification Visor
- Radiation Suit
- Invulnerability

В документации zdoom как-то мутно сказано про это...

int CheckInventory(str inventory_item);
Checks the inventory of the actor who activated the script for the item specified by inventory_item. The function will return the number of items the actor carries.
Keep in mind that for active powerups, you cannot check for the pickup item. You have to check for the internal Powerup item.

Какой нафиг "internal Powerup item"? Это что такое? Встроенная переменная?
1 7 13
Nil
= Major =
Next rank: Lieutenant Colonel after 312 points
2978

Doom Rate: 2.34
Ссылка на пост №2884 Отправлено: 03.12.11 17:51:07
c4tnt, очень сильно сомневаюсь, если не лень, засунь в циклс с print(i:i++) и посмотри, какой из вариантов быстрее заглохнет. Хотя, возможно, придётся метод похитрее придумать.
1 2 1
c4tnt
= 1st Lieutenant =
Next rank: - Captain - after 211 points
1879

Doom Rate: 1.92
Ссылка на пост №2885 Отправлено: 03.12.11 18:07:49
Результаты проверки показали что тест не имеет смысла...


#library "test"
#include "zcommon.acs"

script 1 open {

    int i, j;

    j = 1.0;
    for ( i = 0; i < 65536; i++ ) {
        //j = j<<17 + j<<19;
        j = j * 10;
        print(i:i);
    }
}


Пришибается ранэвеем прямо на взлёте. Одно можно сказать точно - в простом умножении опкодов меньше.
1 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №2886 Отправлено: 03.12.11 18:14:13
c4tnt
Можно использовать развёрнутый цикл, чтобы уменьшить кол-во прогонов цикла (записав скажем, не 65536, а всего 6553):
Развертка цикла - это когда ты внутри него записываешь много одинаковых операторов подряд:

for ( i = 0; i < 6553; i++)
{
j = j * 10;
j = j * 10;
j = j * 10;
j = j * 10;
j = j * 10;
j = j * 10;
j = j * 10;
j = j * 10;
j = j * 10;
j = j * 10;
}
1 7 13
c4tnt
= 1st Lieutenant =
Next rank: - Captain - after 211 points
1879

Doom Rate: 1.92
Ссылка на пост №2887 Отправлено: 03.12.11 18:15:19
толку то, ранэвей триггер по количеству опкодов срабатывает. Режет где-то на 100000
1 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №2888 Отправлено: 03.12.11 18:18:12
Тогда теперь осталось применить "метод Nil-а": :)
Nil :
посмотреть какой из вариантов быстрее заглохнет

У тебя есть вариант с умножением и вариант со сдвигом.
Правда, нет способа узнать счетчик цикла после того, как сработал runaway... :( но если счетчик - это глобальная переменная... (!)
1 7 13
c4tnt
= 1st Lieutenant =
Next rank: - Captain - after 211 points
1879

Doom Rate: 1.92
Ссылка на пост №2889 Отправлено: 03.12.11 18:24:06
быстрее глохнет вариант со сдвигами, там опкодов очевидно больше. Видимо такая оптимизация в скриптах всё же не имеет смысла, только ранэвей раньше наступает. А теперь более интересный вопрос - по какому принципу в скриптовых библиотеках перемаркируются строки. Суть в том, что
str cursorsprite = "SKULLA0" у меня не скартировался и курсор отвалился как только на карте появился свой ACS кроме библиотеки. Зато скартировался массив с числами, это было ещё веселее.
1 1
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 24 points
736

Doom Rate: 2.17
Ссылка на пост №2890 Отправлено: 04.12.11 08:33:13
VladGuardian :
Может это поможет?
http://zdoom.org/wiki/Classes:BossTarget
Сам Icon Of Sin здесь: http://zdoom.org/wiki/Category:Icon_of_Sin</td>


Спасибо конечно, но я это все видел и собственно об этом и писал... Я все уже создал - я только не могу направить новый куб в нужную мне точку (при этом оригинальный куб должен быть на месте и лететь как всегда).

VladGuardian :
класс BossTarget D2-вский (не zdoom)

Вот это я вообще не понял... Т.е. в Zdoom я не могу этого сделать не меняя оригинал из DOOM2 ?

P.S. Блин надо же - оказалось совсем не банально :bitsa:
marat]ASTS[
- Sergeant Major -
Next rank: = Sergeant Major = after 22 points
578

Doom Rate: 1.68
Ссылка на пост №2891 Отправлено: 04.12.11 11:58:04
YURA_111
Сделай свой кубик монстром и сделай монстра-невидимку, не наносящего урона и не имеющего скорости. Монстра невидимку поставь туда, куда должен лететь кубик. Кубик сделай дружелюбным к тебе и с помощью Thing_Hate заставь его лететь к монстру-невидимке. Нужно сделать чтоб монстр-невидимка умирал только от атаки монстра-кубика и если он умрет, то выполнялся скрипт, который тебе нужен(и который будет убивать монстра-кубика). После смерти монстр-невидимка должен спавнить такого же монстра-невидимку. Монстру-кубику нужно в декоре сразу задать A_Wander.
Скрытый текст:


Spawn:
CUBE AB 10 A_Wander
loop



Спавнить кубомонстра через Thing_Spawn и обязательно с уникальным тагом. Короче я примерную схему объяснил - нюансы и прочую лабуду сам додумаешь. :o
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 24 points
736

Doom Rate: 2.17
Ссылка на пост №2892 Отправлено: 04.12.11 14:34:22
marat
Спасибо большое ! Попробую.
Жаль что счас убегаю на работу...
Nil
= Major =
Next rank: Lieutenant Colonel after 312 points
2978

Doom Rate: 2.34
Ссылка на пост №2893 Отправлено: 04.12.11 15:15:38
c4tnt
Здесь больше вопрос что компилятор даст на выходе. декомпилировать и посмотреть. В целом да, чем больше опкодов тем медленее, однако если количество вдруг окажется одинаковым, будет играть роль и то, какие именно команды создались. В целом ACC как и любой другой компилятор что-то там внутри себя оптимизирует, получается не совсем то, что можно было-бы ожидать при варианте трансляции "в лоб".
Я сомневаюсь только потому, что ACC написан очень грязно (именно поэтому был начат проект doomscript, потому как доработать ACC практически невозможно, только заново переписать), поэтому что он сотворит, заранее неизвестно.
1 2 1
VladGuardian
= Major =
Next rank: Lieutenant Colonel after 196 points
3094

Doom Rate: 1.17
Ссылка на пост №2894 Отправлено: 04.12.11 15:57:36
Не совсем понятны параметры команды Teleport.
Кто-нибудь может пояснить?
http://zdoom.org/wiki/Teleport

Teleport(destination_tid, tag, nofog)
tid: Thing ID of the destination spot
tag: Tag of the destination sector

1) Зачем указывать и mapSpot, и сектор, в качестве "пункта прибытия"?

2) Не достаточно ли чего-то одного? (либо сектора, либо mapspot-а) - как в команде TeleportOther, кстати.
1 7 13
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 24 points
736

Doom Rate: 2.17
Ссылка на пост №2895 Отправлено: 05.12.11 01:18:45
VladGuardian

А что именно хочешь сделать ?

может это лучше для тебя:
A_Teleport
http://zdoom.org/wiki/A_Teleport
Chaingunner
= Warrant Officer =
Next rank: - 2nd Lieutenant - after 54 points
1236

Doom Rate: 1.84
Ссылка на пост №2896 Отправлено: 07.12.11 15:59:06
Как составлять текстуры из патчей?
2
Thirteen
Lieutenant Colonel
Next rank: - Colonel - after 188 points
3852

Doom Rate: 1.93
Ссылка на пост №2897 Отправлено: 07.12.11 16:10:37
Chaingunner :
Как составлять текстуры из патчей?

Берёшь любой редактор вадов. Кликаешь на ламп TEXTURE1. Ну и смотришь, что там да как. Можно создать текстуру, задать ей имя, добавить патч, подвигать патч, удалить патч.

Но гораздо проще работать с текстурами, состоящими из одного патча. Не надо возиться с номерами патчей, всегда можно что-то удалить без последствий.
1
Jurijus
- Master Sergeant -
Next rank: = Master Sergeant = after 24 points
436

Doom Rate: 0.16
Ссылка на пост №2898 Отправлено: 07.12.11 17:13:16
Как в Poser 2012 проставить 8 камер с отклонением 45 градусов каждая, и при этом чтобы перспектива на всех была отключена?

Добавлено спустя 32 секунды:

Есть ли модели думера для Poser? Я поискал в Гугле не нашел
LEX SAFONOV
UAC Sergeant Major
Next rank: UAC Sergeant Major after 75 points
685

Doom Rate: 1.49
Ссылка на пост №2899 Отправлено: 07.12.11 21:12:55
Народ есть вопрос. Можно ли заставить звук выстрела крутиться по кругу? Так же второй вопрос - возможно ли заставить игрока выговаривать фразы в процессе стрельбы с этого оружия? Т.е. пока нажата клавиша стрельбы, игрок что то изредка выговаривает. При этом оружие должно ещё и стрелять. Кстати говоря эти обе фишки нужны в одном оружии мне. Если чё оружие - огнемёт.
YURA_111
UAC Sergeant Major
Next rank: UAC Sergeant Major after 24 points
736

Doom Rate: 2.17
Ссылка на пост №2900 Отправлено: 08.12.11 04:17:09
LEX SAFONOV :
Можно ли заставить звук выстрела крутиться по кругу?


Можно (http://zdoom.org/wiki/A_PlaySound) - существует A_PlaySound (string soundname[, int slot[, float volume[, bool looping[, float attenuation]]]]) здесь именно --bool looping-- отвечает за прокрутку звука по кругу. НО нужно будет и останавливать звук в нужное время - тут тебе понадобится A_StopSound (http://zdoom.org/wiki/A_StopSound)


LEX SAFONOV :
Так же второй вопрос - возможно ли заставить игрока выговаривать фразы в процессе стрельбы с этого оружия?

Можно и опять же - A_PlaySound


LEX SAFONOV :
Т.е. пока нажата клавиша стрельбы, игрок что то изредка выговаривает.


Если изредка, то нужно пользоваться A_Jump (http://zdoom.org/wiki/A_Jump) и создавать стэйт на который изредка будет перепрыгивать (ну ты понял)


P.S. Вроде все расписал... надеюсь понятно.
Страница 145 из 352Перейти наверх Пред.  1, 2, 3 ... 144, 145, 146 ... 350, 351, 352  След.
   Список разделов - Местечко мапперов и моддеров - Тема для новичков. Вопросы по маппингу/моддингу - любые!