Форум TeamX
   Home   Members  
Pages: [1] |   Go Down
 
Author Topic: Декомпилим скрипты  (Read 901 times)
Jordan
Пользователь
Posts: 416

476228895
Декомпилим скрипты
« on: 06 November 2008, 11:10:12 »

Приветствую!

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

Вот пример скрипта

BOSBARTN.ssl из мода Alternativ Life

После декомпиляции

procedure Node004
begin
  gsay_reply(1381, 500);
  gsay_option(1381, 210, Node002, -1);
  gsay_option(1381, 211, Node003, -1);
  gsay_option(1381, 212, Node005, -1);
  gsay_option(1381, 214, Node999, -1);
end

procedure Node005
begin
  mark_area_known(0, 54, 1);
  set_global_var(670, 1);
  gsay_message(1381, 600, 49);
end

procedure Node006
begin
  gsay_reply(1381, 700);
  if (global_var(670) == 2) then begin
    gsay_option(1381, 710, the_war, -1);
  end
  if ((global_var(670) == 2) and (obj_is_carrying_obj_pid(dude_obj, 229) > 0)) then begin
    gsay_option(1381, 711, the_war, -1);
  end
  gsay_option(1381, 214, Node999, -1);
end


После препроцессора и программы для замены текста

procedure Node004
begin
   gsay_reply(NAME, 500) ;
   giq_option(1, NAME, 210, Node002, REACTION_-1) ;
   giq_option(1, NAME, 211, Node003, REACTION_-1) ;
   giq_option(1, NAME, 212, Node005, REACTION_-1) ;
   giq_option(1, NAME, 214, Node999, REACTION_-1) ;
end

procedure Node005
begin
  mark_area_known(0, 54, 1);
   set_global_var(GVAR_BRTHD_HDISK_TO_EPA, 1) ;
   gsay_message(NAME, 600, GOOD_REACTION) ;
end

procedure Node006
begin
   gsay_reply(NAME, 700) ;
  if ( global_var(GVAR_BRTHD_HDISK_TO_EPA)  == 2) then begin
     giq_option(1, NAME, 710, the_war, REACTION_-1) ;
  end
  if (( global_var(GVAR_BRTHD_HDISK_TO_EPA)  == 2) and (obj_is_carrying_obj_pid(dude_obj, 229) > 0)) then begin
     giq_option(1, NAME, 711, the_war, REACTION_-1) ;
  end
   giq_option(1, NAME, 214, Node999, REACTION_-1) ;
end


Вот архив в нем лежит препроцессор, программа и h.

http://jordan631.narod.ru/dec.7z

Можно ли с помощью батника переименовать файл, что бы название файла было большими буквами.

Пример

acklint.ssl переименовать в ACKLINT.SSL
« Last Edit: 07 November 2008, 15:32:41 by Jordan »

Воспрянет Россия, из праха отцов
Расправятся крылья, миллионов сердец
Поднимут все головы и грудью вздохнут
И громка скажут, что пришли
Мы пришли, со столетней войны
Mynah
Модератор
Posts: 29


Re: Декомпилим скрипты
« Reply #1 on: 06 November 2008, 17:02:29 »

Препроцессор - это полумера :) Всё равно в каждый файл ещё придётся добавлять "include global.h" ручками. Муторно сие занятие, скажу я вам.

Тут проще самому набросать утилиту минут за 15, которая будет и заменять, и добавлять инклюды. Или в батник p.bat добавить в конце что-то вроде:

copy hdrs.inc+%1 tmp.ssl
copy tmp.ssl %1
del tmp.ssl

где hdrs.inc - файл, в котором все #include уже прописаны.

ЗЫ:
Quote
BOSBARTN.ssl из мода global mod
Ай-ай-ай :)
« Last Edit: 06 November 2008, 17:29:55 by Mynah »
Jordan
Пользователь
Posts: 416

476228895
Re: Декомпилим скрипты
« Reply #2 on: 07 November 2008, 15:30:28 »

Mynah

Quote
Тут проще самому набросать утилиту минут за 15, которая будет и заменять, и добавлять инклюды. Или в батник p.bat добавить в конце что-то вроде:

copy hdrs.inc+%1 tmp.ssl
copy tmp.ssl %1
del tmp.ssl

где hdrs.inc - файл, в котором все #include уже прописаны.

Сделал это всё через батник.

Quote
Ай-ай-ай Улыбка

Исправил.

Оффтоп удалён. Вопрос либо в соответствующую тему, либо в личку.
« Last Edit: 07 November 2008, 18:50:30 by Wasteland Ghost »

Воспрянет Россия, из праха отцов
Расправятся крылья, миллионов сердец
Поднимут все головы и грудью вздохнут
И громка скажут, что пришли
Мы пришли, со столетней войны
Pages: [1] |   Go Up