Разработка и ромхакинг > Ромхакинг и программирование
[SMD] хакинг Dune: The Battle for Arrakis
<< < (357/447) > >>
SeregaZ:
у меня врод чот было подобное про цвет... но я уже не помню. вникать в код надо:

--- Код: ---;расшифровка значений цвета
Procedure.i ParseColor(imp$)
 
  out.i
 
  Select imp$
    Case "0"
      out = 0
    Case "2"
      out = 36
    Case "4"
      out = 72
    Case "6"
      out = 109
    Case "8"
      out = 145
    Case "A"
      out = 181
    Case "C"
      out = 219
    Case "E"
      out = 255
  EndSelect
 
  ProcedureReturn out
 
EndProcedure


     If FindString(tmpforhex$, "$")
           
       ;отрезаем доллар
       tmpforhex$ = ReplaceString(tmpforhex$, "$", "")
       Select Len(tmpforhex$)
         Case 3
           ColorArr(house)\colornum[k-1] = RGB(ParseColor(Right(tmpforhex$, 1)),ParseColor(Left(Right(tmpforhex$, 2), 1)), ParseColor(Left(tmpforhex$, 1)))
         Case 2
           ColorArr(house)\colornum[k-1] = RGB(ParseColor(Right(tmpforhex$, 1)), ParseColor(Left(tmpforhex$, 1)), 0)
         Case 1
           ColorArr(house)\colornum[k-1] = RGB(ParseColor(Left(tmpforhex$, 1)), 0, 0)
       EndSelect
           
     Else
       tmp = Val( tmpforhex$ )
       ColorArr(house)\colornum[k-1] = tmp
     EndIf


--- Конец кода ---

хотя я теперь не уверен это ли оно... :)))
Razor:
Портировал пару звуков из Earthworm Jim 2 и Robocop versus The Terminator. Звучит громковато и перегруженно, скорее всего в хак вставлять не буду.
Alexandr7:

--- Цитата: SeregaZ от 11 Декабрь 2015, 13:34:04 ---у меня врод чот было подобное про цвет... но я уже не помню. вникать в код надо:

--- Код: ---;расшифровка значений цвета
Procedure.i ParseColor(imp$)
 
  out.i
 
  Select imp$
    Case "0"
      out = 0
    Case "2"
      out = 36
    Case "4"
      out = 72
    Case "6"
      out = 109
    Case "8"
      out = 145
    Case "A"
      out = 181
    Case "C"
      out = 219
    Case "E"
      out = 255
  EndSelect
 
  ProcedureReturn out
 
EndProcedure


     If FindString(tmpforhex$, "$")
           
       ;отрезаем доллар
       tmpforhex$ = ReplaceString(tmpforhex$, "$", "")
       Select Len(tmpforhex$)
         Case 3
           ColorArr(house)\colornum[k-1] = RGB(ParseColor(Right(tmpforhex$, 1)),ParseColor(Left(Right(tmpforhex$, 2), 1)), ParseColor(Left(tmpforhex$, 1)))
         Case 2
           ColorArr(house)\colornum[k-1] = RGB(ParseColor(Right(tmpforhex$, 1)), ParseColor(Left(tmpforhex$, 1)), 0)
         Case 1
           ColorArr(house)\colornum[k-1] = RGB(ParseColor(Left(tmpforhex$, 1)), 0, 0)
       EndSelect
           
     Else
       tmp = Val( tmpforhex$ )
       ColorArr(house)\colornum[k-1] = tmp
     EndIf


--- Конец кода ---

хотя я теперь не уверен это ли оно... :)))

--- Конец цитаты ---
VB Net если неошибаюсь. Да то что нужно. Вообще по работе с графикой VB Net слабоват

Добавлено позже:

--- Цитата: Razor от 11 Декабрь 2015, 13:52:10 --- Портировал пару звуков из Earthworm Jim 2 и Robocop versus The Terminator. Звучит громковато и перегруженно, скорее всего в хак вставлять не буду.

--- Конец цитаты ---
А как ты портировал звук. Раскажи. Желательно в вк а не сюда если тема длинная

Добавлено позже:
Если правильно расшифровал то
От 255 до 220 - E
От 219 до 182 - С
От 181 до 146 - A
От 145 до 110 - 8
От 109 до 73 - 6
От 72 до 37 - 4
От 36 до 1 - 2
0 - 0
прошу сказать верно того кто знает палитру сеги.
SeregaZ:
так убавь громкость и делов то :) а в целом угарно.
volume 0 - значит полная громкость. чем больше это значение, тем тише будет volume 10 например там...

Добавлено позже:
Alexandr7, так ты хочешь из RGB получать сеговское обозначение цвета? так будет же потеря цвета один фиг :) и я думаю надо не 0 - 0, 2 - от 1 до 36 - я думаю надо половинить, то есть:
0 от 0 до 18 скажем
2 от 19 до 48
4 от 49 до 90... и так далее
Alexandr7:
Я хочу написать 2 функции
1 - для преобразования rgb
2 - для преобразования в палитру сеги
и главное мне точно нужно преобразовывать. как сказать навярняка чтобы было. А нет разве исходного кода?
Razor:

--- Цитата: SeregaZ от 11 Декабрь 2015, 14:30:09 ---так убавь громкость и делов то :) а в целом угарно.
volume 0 - значит полная громкость. чем больше это значение, тем тише будет volume 10 например там...

--- Конец цитаты ---

У меня не работает способ. Если в файле .CODE есть такая строчка - ничего не меняется. Если её добавить в файл где такой настройки нет - всё равно громко.
SeregaZ:
Alexandr7, в моем случае было так: мой недоязык программирования работает с RGB. а сеговские цвета были гранатами не той системы... но хорошо товарищи подсказали по какой формуле происходит конвертирование таких сеговских цветов в RGB. хотя точнее наверное надо сказать не сеговские цвета, а значения для цвета, которые были перечислены в сборщике.

в моем случае было так:
читаем файл gfx\palettes\gamepal.asm
и например там был упомянут цвет $ACE (специально чтоб все три значения были разные)
вот моя процедура расковыривала эту "цифру" на три A C E и потом уже шло само конвертирование по той таблице:
A - это 181
C - 219
E - 255

но там еще есть нюанс - RGB - подразумевает Red Green Blue - однако тут-же помница цвета перепутаны, то есть как BRG Blue Red Green, то есть надо не RGB(A, C, E) - это будет не тот цвет, а RGB(E, C, A), точнее согласно таблице конвертации RGB(255, 219, 181)

там-же где были всего два цвета типа $4C, то это то-же самое что $04C, а там где цифры без $... странно. а почему у меня бралось именно это значение, как оно есть? а... понятно :) например это была 4 - то есь потому что RGB(4, 0, 0) = и будет ровнятся этой самой 4.

Добавлено позже:
Razor, пойду проверять... в крайнем случае можно будет перезаписать сэмпл с более низкой громкостью. правда не исключено что качество, которое итак не блещет - будет еще больше похерено... хотя у меня вроде есть идея :) я её тоже перепроверю... а именно брать и каждому байту уменьшать или увеличивать его значение. в теории это понизит громкость :) тогда потери качества по идее не будет, будет чистое уменьшение громкости...
Razor:
Вот так вроде получше звучит. :cool:
SeregaZ:
и чот не хотит у меня громкость убавляться без потери качества :) шипение появляется... надо посмотреть будет как редакторы это делают. видимо там не все так однозначно :)
NakL3:
Razor,  Забавно звучит, ну через чур инородно, такое лишь для Руки Смерти подойдёт. Либо для какой-нибудь супер вундервафли :) Но, к сожалению, она у тебя стреляет лазером))))
Razor:
Альтернативная версия Dune Razor Missions с новыми звуками. Заменен звук пуска ракет Stingray и Specter. Заменен звук выстрела Eradicator. Заменен звук взрыва юнитов и тяжелых ракет. Добавлено несколько новых звуков, которые не используются. Пока только английская версия.

Скачать
SeregaZ:
а мне вроде втолковали буржуи как громкость менять, не портя шипением сэмпл :) надо будет добавить эту самую громкость в мой недоконвертер... но самое главное наконец-то утрясли там один неоднозначный момент... и теперь можно допилить еще одну функцию для конвертера :) и потом уже приступить к финальной затее, с чего и начался весь сыр бор :)
Ti_:

--- Цитата: Razor от 17 Октябрь 2015, 19:13:12 ---
Добавлено позже:
А играть на больших картах нельзя из-за активного использования большого объема SRAM.

--- Конец цитаты ---

--- Цитата: Sen244 от 18 Октябрь 2015, 21:19:56 ---А так тоже самое, что и в прошлый раз. Вся карта черная.

--- Конец цитаты ---
Попробуйте этот ром, что у вас вообще показывает? :
Sen244:
65536 16-BIT
SeregaZ:
все... тебе осталось семь дней.
Ti_:

--- Цитата: Sen244 от 12 Декабрь 2015, 19:18:55 ---65536 16-BIT

--- Конец цитаты ---
С какого с большими картами не пашет тогда непонятно.  :neznayu:
Sen244:
Как бы пашет, только на экране тьма. При старте миссии слышен также какой-то типа выстрел или взрыв. И радар пытается включится. Под темнотой нащупать курсором ничего не удается, а может там ничего и нет. На более простом картридже вообще же не запускается. Ну мне пофиг, хоть обычные карты нормально работают. А может если бы большие карты работали, там бы все тормозило по жесткому что хрен поиграешь?
M3tro ™:

--- Цитата: Sen244 от 12 Декабрь 2015, 21:37:08 ---А может если бы большие карты работали, там бы все тормозило по жесткому что хрен поиграешь?

--- Конец цитаты ---
Да, мне кажется, всё бы начало тормозить сразу после начала миссии, даже если на карте не так много юнитов. Вон, если поиграть на неразогнанном эмуле в карты *128, всё тормозит, а когда ещё и юнитов много становится, — вообще лагает невыносимо, что невозможно играть. Поэтому и рекомендуется в хаки с большими картами играть на разогнанных эмулях.

А что если в самой Сеге проц разогнать хотя бы до 15МГц?.. Тогда теоретически она должна будет их запустить…
Ti_:
Добавлено позже:

--- Цитата: Sen244 от 12 Декабрь 2015, 21:37:08 ---На более простом картридже вообще же не запускается.

--- Конец цитаты ---
А тест на более простом что показывает?

--- Цитата: Sen244 от 12 Декабрь 2015, 21:37:08 ---Под темнотой нащупать курсором ничего не удается, а может там ничего и нет.

--- Конец цитаты ---
Если во fusion запустить, и потом поставить галочку disable sram тоже всё черное, но юниты видны. (слева сверху ).
Sen244:
А на простом показывает 16384 8-BIT.
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии