[ Сообщений: 1386 ]  На страницу Пред.  1 ... 11, 12, 13, 14, 15, 16, 17 ... 47  След.
3DO Doom sources released 
Автор Сообщение
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus писал(а):
static Byte SongLookup[] = {
0,
11, /* Intro */
12, /* Final */
3, /* Bunny */
5, /* Intermission */
5, 6, 7, 8, 9,10,11,12,13,14, /* Map 1 */
15, 5, 6, 7, 8, 9,10,11,13,14,
15,10,12,29, 1, 1, 1, 1, 1, 1,
1
};

и т.д всё написано далее в приведённом куске исходника
Я всё понимаю, но это извращение из извращений :facepalm: ....пошёл стучаться об стену головой...

Т.е получается так
typedef enum {      /* All the sounds in the game */
   Song_None,
   Song_intro,
   Song_final,
   Song_bunny,
   Song_intermission,
   Song_e1m1,
   NUMMUSIC=Song_e1m1+24      /* Song count */
} musicnum_t;


перечисляемый тип данных поэтому

typedef enum {      /* All the sounds in the game */
   0, ///Song_None=0, нет музыки
   1, ///Song_intro=1, вступительная музыка
   2, ///Song_final=2, победная музыка
   3, ///Song_bunny=3, что это за музыка?? :)))
   4, ///Song_intermission=4, какая-то промежуточная музыка
   5, ///Song_e1m1=5, номер муз.трека уровня
   6 ///NUMMUSIC=Song_e1m1+24      /* Song count */ хитрое исчиление
} musicnum_t;  :du_ma_et:


Versus писал(а):
S_StartSong(Song_e1m1-1+gamemap,TRUE);

:sh_ok: окончательно запутался так и не поняв как получится номер файла Song5...Song8

Последний раз редактировалось Author 29 июн 2015, 12:05, всего редактировалось 1 раз.



29 июн 2015, 11:45
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Я не помню, а они фактически есть в игре? Играют?
Для Song5 получается мы должны вызвать:
SongLookup[5] или SongLookup[6] или SongLookup[16].
Для этого выражение
S_StartSong(5-1+gamemap,TRUE) должно получать эти цифры.


29 июн 2015, 11:56
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus писал(а):
Я не помню, а они фактически есть в игре? Играют?

Да, они звучат на уровнях. Названия файлов именно такие.

Не понятно как в S_StartSong(Song_e1m1-1+gamemap,TRUE) при gamemap скажем больше 5 получится трек Song5???


29 июн 2015, 12:07
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Song5 - это 5-1+12=16. То есть, он играет на 12 уровне. :nez-nayu:

Добавлено спустя 15 минут 48 секунд:
Versus писал(а):
NUMMUSIC=Song_e1m1+24

Путаница из-за того, что в перечисляемом типе не написаны все треки. Общее их количество 5+24!


29 июн 2015, 12:13
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, можешь выложить файл исходника откуда ты эти куски привёл?


29 июн 2015, 12:30
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Вот. А все вызовы функции S_StartSong находятся уже в разных файлах.


У вас нет необходимых прав для просмотра вложений в этом сообщении.


29 июн 2015, 12:40
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, в общем лучше в дебаггере смотреть какие значения приходят и что выбирается по ним.
В SongLookup 36 значений. Что значит коментарий /*Map 1 */ я так и не врубился, то ли он для всей строки, то ли для первого значения т.е. "5", что значило бы на первом уровне играет 5 мелодия, тогда на 6 уровне должна играть 10, а её нет. Надо весь исходник смотреть видимо.


29 июн 2015, 16:55
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Дебаггером пользоваться я вообще не умею...


29 июн 2015, 17:14
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, да в этом ничего сложного нет, но вот как это сделать с приложением, которое должно запускаться не на ПК вопрос хороший. В среде разработки, после сборки программы (компиляции) и запуска или до этого в интересующих участках исходного кода ставятся точки останова напротив строки, где мы хотим посмотреть промежуточные результаты каких либо вычислений в программе. Начинаем выполнение программы (запускаем игру) и как только мы достигнем точки останова выполнение проги прерывается и мы может залезть в содержимое переменных. Но это когда прога/игра на ПК запускается. Для наших целей видимо нужен DEV kit или эмуль со спец.возможностями.

Как вариант ты можешь сохранить файл с данными в NVram (раз сейвы удалось добавить) в который скинешь, что передаётся в S_StartSong и как это было вычислено (т.е значения формирующиеся до вызова S_StartSong(5-1+gamemap,TRUE).
Либо пробовать методом тыка менять значения в SongLookUp.Либо в перечисляемом типе musicnum_t изменить NUMMUSIC=Song_e1m1+24 на NUMMUSIC=Song_e1m1+25 и добавить в папку с музыкой трек с именем SONG9. Затем проверить поменялся ли где-то звук?


30 июн 2015, 11:41
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author
На счёт NVRAM мне уже приходила мысль, но что именно туда писать? В какие моменты? Пока вплотную не брался за музыку, может, удастся раскурить и без дебаггера.


30 июн 2015, 11:57
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus писал(а):
На счёт NVRAM мне уже приходила мысль, но что именно туда писать?

Пиши туда содержимое переменной music_id и по возможности значение Song_e1m1 (хотя вероятно оно всегда 5) вместе с NUMMUSIC.

Versus писал(а):
В какие моменты?

Скидывание в файл вероятно следует разместить в процедуре S_StartSong перед строкой PlaySong(SongLookup[music_id]) файл sound.c, можно и после этой строки. Тогда информация в файл будет скидываться при старте мелодий (т.е. в начале уровня или входе в главное меню).

Чтобы знать, откуда произошёл вызов процедуры S_StartSong с этими параметрами желательно в этот же файл писать текст типа "главное меню", "загрузка уровня", для этого придётся найти все обращения к этой процедуре в исходнике. Но, если это сложно сделать можно ограничиться параметрами.


30 июн 2015, 12:40
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Итак, не потребовался такой дебаггер, все укладывается в то, что я написал раньше.
Level 1: S_StartSong(5-1+1) ---> SongLookup[5]=5 ----> Song5.
Level 2: S_StartSong(5-1+2) ---> SongLookup[6]=6 ----> Song6.
Level 3: S_StartSong(5-1+3) ---> SongLookup[7]=7 ----> Song7.
Level 4: S_StartSong(5-1+4) ---> SongLookup[8]=8 ----> Song8.
Level 5: S_StartSong(5-1+5) ---> SongLookup[9]=9 ----> Song9.
Level 6: S_StartSong(5-1+6) ---> SongLookup[10]=10 ----> Song10.
Level 7: S_StartSong(5-1+7) ---> SongLookup[11]=11 ----> Song11.
Level 8: S_StartSong(5-1+8) ---> SongLookup[12]=12 ----> Song12.
Level 9: S_StartSong(5-1+9) ---> SongLookup[13]=13 ----> Song13.
Level 10: S_StartSong(5-1+10) ---> SongLookup[14]=14 ----> Song14.
Level 11: S_StartSong(5-1+11) ---> SongLookup[15]=15 ----> Song15.
Level 12: S_StartSong(5-1+12) ---> SongLookup[16]=5 ----> Song5.
Level 13: S_StartSong(5-1+13) ---> SongLookup[17]=6 ----> Song6.
Level 14: S_StartSong(5-1+14) ---> SongLookup[18]=7 ----> Song7.
Level 15: S_StartSong(5-1+15) ---> SongLookup[19]=8 ----> Song8.
Level 16: S_StartSong(5-1+16) ---> SongLookup[20]=9 ----> Song9.
Level 17: S_StartSong(5-1+17) ---> SongLookup[21]=10 ----> Song10.
Level 18: S_StartSong(5-1+18) ---> SongLookup[22]=11 ----> Song11.
Level 19: S_StartSong(5-1+19) ---> SongLookup[23]=13 ----> Song13.
Level 20: S_StartSong(5-1+20) ---> SongLookup[24]=14 ----> Song14.
Level 21: S_StartSong(5-1+21) ---> SongLookup[25]=15 ----> Song15.
Level 22: S_StartSong(5-1+22) ---> SongLookup[26]=10 ----> Song10.
Level 23: S_StartSong(5-1+23) ---> SongLookup[27]=12 ----> Song12.
Level 24 (secret): S_StartSong(5-1+24) ---> SongLookup[28]=29 ----> Song29.

Музыка в меню:
Song_intro = 1 ---> SongLookup[1]=11 ---> Song11.

Музыка финальная:
Song_final = 2 ---> SongLookup[2]=12 ---> Song12.


30 июн 2015, 14:41
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, в ресурсах игры действительно есть все эти файлы?Если эти файлы есть, то добавить новый ресурс просто

static Byte SongLookup[] = {
0,
11, /* Intro */
12, /* Final */
3, /* Bunny */
5, /* Intermission */
******* ниже первая цифра номер мелодии для уровня 1, далее для 2го и т.д
5, 6, 7, 8, 9,10,11,12,13,14, /* Map 1 */
15, 5, 6, 7, 8, 9,10,11,13,14,
15,10,12,29, 1, 1, 1, 1, 1, 1,
1
};

Допустим на уровень 3 мы решили вставить новую музыку.
Создаём файл Song30 (главное чтобы номер не занят был) и меняем образец на такой

static Byte SongLookup[] = {
0,
11, /* Intro */
12, /* Final */
3, /* Bunny */
5, /* Intermission */
******* заменили озвучку 3го уровня на 30
5, 6, 30, 8, 9,10,11,12,13,14, /* Map 1 */
15, 5, 6, 7, 8, 9,10,11,13,14,
15,10,12,29, 1, 1, 1, 1, 1, 1,
1
};
Файл кидаем в папку ресурсов игры к остальным SONG'ам, собираем новый билд игры и по идее всё будет работать.


30 июн 2015, 15:58
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Да, все эти файлы есть. Как ты написал, я уже пробовал, все работает. SongLookup[] можно ведь и больше сделать. Обнаружилась проблемка с сохранениями. Вернее, недоработка. Нужно вырубить возможность сейва, когда мы закончили уровень 23. А то получается, что при последующей загрузке запускается секретный уровень 24. :-(
И еще. Даже в оригинале после окончания 22 уровня не пишется Entering Dis. Надо как-то пофиксить.


30 июн 2015, 16:26
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus писал(а):
SongLookup[] можно ведь и больше сделать


Для чего? У меня только вариант с увеличением количества уровней. :nez-nayu:

Versus писал(а):
А то получается, что при последующей загрузке запускается секретный уровень 24.

Ну, это не баг, а фича! Своего рода награда за прохождение всей игры. Игрок видит финальный экран, делает сейв, а потом решив его вдруг загрузить попадает в секретный уровень. А так-то выпилить это не проблема судя по всему.

Поздравляю с подвижкой в замене музыки!


30 июн 2015, 16:41
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author писал(а):
У меня только вариант с увеличением количества уровней.

Ну да... Я все-таки надеюсь на победу над REZFILE. Произойдет когда-нибудь это или нет? :nez-nayu:
Author писал(а):
Ну, это не баг, а фича!

Кстати, да, не подумал об этом. :co_ol:
Author писал(а):
Поздравляю с подвижкой в замене музыки!

Спасибо!

Добавлено спустя 58 минут 58 секунд:
Versus писал(а):
Даже в оригинале после окончания 22 уровня не пишется Entering Dis. Надо как-то пофиксить.

Пофиксил. Странно, Ребекка написала все правильно, а почему-то не работало... :du_ma_et:
И оставил возможность выбора 24 уровня из главного меню, когда мы его прошли. Мне кажется, что так будет честно.

Добавлено спустя 5 часов 5 минут 31 секунду:
Уточню. После прохождения игры без захода в секретный уровень максимально возможный уровень для выбора из главного меню - 23. А если мы прошли (получили доступ) секретный уровень, то максимально возможный уровень для выбора 24.


30 июн 2015, 16:44
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus писал(а):
И оставил возможность выбора 24 уровня из главного меню, когда мы его прошли. Мне кажется, что так будет честно.

Мне нравится эта идея, так действительно честно по отношению к игроку :)


01 июл 2015, 11:08
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Хм... Косячокс... Дело в том, что когда мы делаем возможным выбор 24 уровня из меню после его прохождения, то тем самым открываем доступ ко всем НЕПРОЙДЕННЫМ уровням 4-23. Неправильно это. Придется возвращать назад. Ну, или извращаться и делать возможным выбор уровня 1-3, 24. Хз, как это делать...


01 июл 2015, 11:52
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus, не понял про уровни. 24 открывается после чего?


02 июл 2015, 13:56
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author
Когда мы проходим секретный 24 и сохраняемся в конце уровня, то он становится доступным для выбора. Но вот только получается, что мы можем теперь перелистать уровни назад и запустить любой, хотя до этого прошли только 3.


02 июл 2015, 14:19
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

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


02 июл 2015, 14:29
Аватара пользователя
Консольный монстр
Консольный монстр

Группа: Разработчики
Сообщения: 2112
Регистрация: 21 окт 2011, 21:37
Откуда: Слобожанщина, 31Rus
Модель 3DO: GoldStar GDO-101M

На секретный уровень, если нужно, там выходить если идти прямо после открытия первой двери в третьем уровне, для этого надо пойти сразу влево и после того как... Блин, легче показать...



02 июл 2015, 16:52
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author
Вопрос комплексный. По умолчанию (то есть, в оригинале) уровень сохраняется в NVRAM, когда пройден. Вроде, все так, но у меня ситуация уже другая. Когда просто проходишь и сохраняешь игру, все работает четко. Но представим, что мы потерли файл DoomPrefs и оставили наш DoomSave. Тогда при первом запуске игры у нас доступен только первый уровень. Но, когда мы загружаем игру, то нам нужно обновить DoomPrefs нашими загружаемыми параметрами. Итого, имеем:
Приравниваем максимально доступный уровень из меню текущему уровню загружаемой игры. Но когда мы загружаем сохранение уровня 24, получается, что мы открываем на него доступ.
Вот одна из моих вставок:
void G_InitNew_LOAD(skill_t skill,Word map)
{
   Randomize();      /* Reset the random number generator */
   ReadPrefsFile();   /*Read params from PrefsFile. I need only MaxLevel value */
   ReadSaveFile();      /*Override params loaded*/

/* Force players to be initialized upon first level load */

   players.playerstate = PST_LOAD;
   players.mo = 0;   /* For net consistancy checks */
   
   DemoRecording = FALSE;      /* No demo in progress */
   DemoPlayback = FALSE;

   if (skill == sk_nightmare ) {      /* Hack for really BAD monsters */
      states[S_SARG_ATK1].Time = 2*4;   /* Speed up the demons */
      states[S_SARG_ATK2].Time = 2*4;
      states[S_SARG_ATK3].Time = 2*4;
      mobjinfo[MT_SERGEANT].Speed = 15;
      mobjinfo[MT_SHADOWS].Speed = 15;
      mobjinfo[MT_BRUISERSHOT].Speed = 40;   /* Baron of hell */
      mobjinfo[MT_HEADSHOT].Speed = 40;      /* Cacodemon */
      mobjinfo[MT_TROOPSHOT].Speed = 40;
   } else {
      states[S_SARG_ATK1].Time = 4*4;      /* Set everyone back to normal */
      states[S_SARG_ATK2].Time = 4*4;
      states[S_SARG_ATK3].Time = 4*4;
      mobjinfo[MT_SERGEANT].Speed = 8;
      mobjinfo[MT_SHADOWS].Speed = 8;
      mobjinfo[MT_BRUISERSHOT].Speed = 30;
      mobjinfo[MT_HEADSHOT].Speed = 20;
      mobjinfo[MT_TROOPSHOT].Speed = 20;
   }
   StartMap = gamemap;
   StartSkill = gameskill;
      if (MaxLevel<gamemap){
         MaxLevel = gamemap;
      }

           if (gamemap == 24) {
         MaxLevel = 3;     ВОТ ТУТ НУЖНО ПРОПИСАТЬ ПРАВИЛЬНО!!!!
         StartMap = 3;     ЭТОТ КОД НЕПОЛНЫЙ!
      }
   WritePrefsFile();
}

А вот ядро логики загружаемых уровней.
/**********************************

   The game should already have been initialized or loaded

**********************************/

void G_RunGame(void)
{
   for (;;) {

   /* Run a level until death or completion */

      MiniLoop(P_Start,P_Stop,P_Ticker,P_Drawer);

   /* Take away cards and stuff */

      G_PlayerFinishLevel();
      if ((gameaction == ga_died) ||   /* died, so restart the level */
         (gameaction == ga_warped)) {   /* skip intermission */
         continue;
      }

   /* decide which level to go to next */

      if (gameaction == ga_secretexit) {
          nextmap = 24;   /* Go to the secret level */
      } else {
         switch (gamemap) {
         case 24:      /* Secret level? */
            nextmap = 4;
            break;
         case 23:      /* Final level! */
            nextmap = 23;
            break;      /* Don't add secret level to prefs */
         default:
            nextmap = gamemap+1;
         }
         if (nextmap>MaxLevel) {
            MaxLevel = nextmap;   /* Save the prefs file */
            WritePrefsFile();
         }
      }

   /* Run a stats intermission */

      MiniLoop(IN_Start,IN_Stop,IN_Ticker,IN_Drawer);

   /* Run the finale if needed */

      if (gamemap == 23) {
         MiniLoop(F_Start,F_Stop,F_Ticker,F_Drawer);
         return;      /* Exit */
      }
      gamemap = nextmap;
   }
}


Добавлено спустя 46 минут 54 секунды:
Сделал так:
if (MaxLevel > gamemap) {
         MaxLevel = MaxLevel;
      }
      
      if (MaxLevel<=gamemap){
         MaxLevel = gamemap;
      }
      
      if (gamemap == 24) {
         MaxLevel = 3;
         StartMap = 3;
      }
   WritePrefsFile();

Вроде, работает. Криво, но часто эта фигня не вызывается, поэтому можно забить. Правда, палево получается. Третий уровень намекает, что выход на 24 находится там. А как иначе сделать?

Добавлено спустя 58 минут 49 секунд:
Yaranga
Выходить-то известно как. Задача - что делать с параметрами игрока после.

Добавлено спустя 3 часа 2 минуты 43 секунды:
Появился околовсяческий вопрос. Как использовать внешний asm файл в своем c# проекте?


02 июл 2015, 20:18
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus писал(а):
if (MaxLevel > gamemap) {
MaxLevel = MaxLevel; //// это точно правильно?? если да, то этот кусок вообще можно выбросить ибо ничего не меняется в переменной. }

if (MaxLevel<=gamemap){
MaxLevel = gamemap;
}

if (gamemap == 24) {
MaxLevel = 3; /// может замененить на 1???
StartMap = 3;
}


03 июл 2015, 11:17
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

А как тогда? Просто пустые скобки без MaxLevel = MaxLevel; оставить?
ОК, поменяю на 1. Тогда нужно и StartMap = 1;


03 июл 2015, 11:20
Аватара пользователя
Приставочник
Приставочник

Группа: Разработчики
Сообщения: 1211
Регистрация: 08 фев 2012, 13:12
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus писал(а):
Просто пустые скобки без MaxLevel = MaxLevel; оставить?

можно вообще это условие убрать

Versus писал(а):
Тогда нужно и StartMap = 1;

А не получится, что после выхода на 24 уровень мы потеряем доступ к пройденному 3му?


03 июл 2015, 11:50
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

Author писал(а):
А не получится, что после выхода на 24 уровень мы потеряем доступ к пройденному 3му?

Нет. У нас идет отработка ситуации, когда в файле настроек информация противоречит загружаемому уровню. Здесь нам сразу же нужно подкорректировать файл настроек. При загрузке на 24 уровень мы и корректируем его, назначая доступным для выбора только первый уровень. А если уже много уровней открыто (первое мое условие), то ничего не меняем.
Author писал(а):
можно вообще это условие убрать

Почему-то без него корректно не работало. :du_ma_et:

Добавлено спустя 11 часов 56 минут 22 секунды:
Просьба потестировать образ (подписан).
-Работают сохранения.
-Добавлена музыка (на каждом уровне своя, музыка финальных титров и между уровнями). Оригинальная тоже присутствует вся.
-Тест записи демок работает по кнопке С на Load game, Заканчиваем запись демки по кнопке Start. Потом демка циклически повторяется. Файл деморолика также сохраняется в NVRAM. Чтение демки из памяти приставки пока не работает. Планирую делать проигрывание демки из памяти, скажем, кнопкой B на Load game.
-Работает остановка чтения музыки, когда громкость установлена на ноль.
Если есть какие пожелания, или будут найдены ошибки, буду рад критике.
https://yadi.sk/d/OhY_a-YNhexW2


03 июл 2015, 11:56
Случайный аватар
Мегажитель
Мегажитель

Группа: Пользователи
Сообщения: 321
Регистрация: 13 апр 2012, 13:11
Модель 3DO: Panasonic FZ-10 NTSC-J

хорошо бы ещё добавить в настройках игры возможность увеличение картинки на максимум без ввода кода.

Добавлено спустя 3 часа 44 минуты 37 секунд:
а двухстволку в эту версию можно добавить?


04 июл 2015, 13:09
Аватара пользователя
Я консольный бог
Я консольный бог

Группа: Разработчики
Сообщения: 9841
Регистрация: 04 дек 2009, 11:59
Откуда: Сочи
Модель 3DO: Panasonic FZ-10 NTSC-U

GEN13
Размер экрана постараюсь сделать. Двухстволку можно будет добавить, если разберемся с REZFILE.


04 июл 2015, 18:26
Случайный аватар
Мегажитель
Мегажитель

Группа: Пользователи
Сообщения: 321
Регистрация: 13 апр 2012, 13:11
Модель 3DO: Panasonic FZ-10 NTSC-J

Versus
очень понравилась муз. тема после прохождения уровня :co_ol: тогда может заодно и перемещения черепа и Loading озвучишь в меню игры, как в версии PS1, если конечно имеется возможность?

а вот Load game хорошо бы перенести в раздел options, а то надпись "DOOM" перекрывает, но если всех устраивает, то можно не заморачиваться


04 июл 2015, 20:38
На страницу Пред.  1 ... 11, 12, 13, 14, 15, 16, 17 ... 47  След.
© 2008-2024 «3DOPLANET.ru». Создано на основе phpBB® Forum Software © phpBB Group
Designed by ST Software || Русская поддержка phpBB || Time : 0.060s | 20 Queries | GZIP : On