Перейти к содержимому


Самый Популярный Контент


#13959 Обсуждение

Написано Lego 09 February 2014 - 12:07

если ссылку ручками поправить, то можно оживить.

Chipsman, подними лимит сообщений в ЛС, ну хоть до 500. Если потом будет какая-то нагрузка, то можно и обратно вернуть будет.

кстати, непонятно зачем есть возможность нажать "нравится" на собственном сообщении.


#7320 [GTA IV | Alice | Delphi] Езда по стенам и подствольный гранатомёт.

Написано VcSaJen 21 January 2011 - 14:11

Вот порт на Alice моих скриптов для езды по стенам и подствольный гранатомёт.
Управление:
Подствольный гранатомёт:
Выбрать AK-47 или M-4 и нажать E для пуска гранат. Если у вас гранаты, то будет стрелять гранатами, а если коктейль Молотова, то будет стрелять горючими бутылками. Правда, из-за особенностей физики GTA4 и большого сопротивления воздуха гранаты не летят далеко.
Езда по стенам:
J - подпрыгнуть
Shift - ускориться
Из-за особенностей физики GTA4 мотоциклы будут уходить вбок при повороте.
Из-за особенностей работы скрипта машина если перевернётся то будет подпрыгивать.
Если у вас другой FPS чем у меня, то настройте UpperForce под себя.
Другое:
I - Скопировать в буфер обмена текущие координаты
U - Переместиться в координаты из буфера обмена
N -
K - Получить санчез
J - получить Mule

library StickyAndGrenade; {$R *.res} {$E ext}

uses
  Windows,
  SysUtils,
  Clipbrd,
  ScriptNatives,
  ScriptTypes,
  ScriptUseful;

const
  Rus	   ='АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя';
  EncodedRus='ЋЏђ‘’””•–—˜™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМН';

function EncodeRus(const text: string): string;
var I,p: Integer;
begin
  Result:=Text;
  for I:=1 to Length(Result) do
  begin
	if Result[i]='ё' then Result[i]:='е';
	if Result[i]='Ё' then Result[i]:='Е';
	p:=pos(Result[i], Rus);
	if p>0 then Result[i]:=EncodedRus[p];
  end;
end;

function DecodeRus(const text: string): string;
var I,p: Integer;
begin
  Result:=Text;
  for I:=1 to Length(Result) do
  begin
	p:=pos(Result[i], EncodedRus);
	if p>0 then Result[i]:=Rus[p];
  end;
end;

procedure ShowText(text: string; time: integer = 5000);
begin
  PrintStringWithLiteralStringNow('string', PChar(EncodeRus(text)), time, 1);
end;

function Round(X: Extended): Int64;
begin
  Result:=System.Round(X);
end;

function FTS(Value: Extended): string;
begin
  DecimalSeparator:='.';
  Result:=FloatToStrF(Value,ffFixed,10,3);
end;

function ReadNum(S: string; var I: Integer): Single;
var ts: string;
begin
  while not (S[I] in ['0'..'9', '-', '.']) and (I<=Length(S)) do Inc(I);
  ts:='';
  while (S[I] in ['0'..'9', '-', '.']) and (I<=Length(S)) do
  begin
	ts:=ts+S[I];
	Inc(I);
  end;
  //ShowText(ts,2000);
  //Wait(2000);
  Result:=StrToFloat(ts);
end;

procedure SpawnCar(Name : PChar);
var
  PlayerId : Player;
  PlayerChar : Ped;
  Car : Vehicle;
  Hash : Cardinal;
  X, Y, Z : f32;
begin
  PlayerId := GetPlayerId();
  if PlayerId >= 0 then
  if IsPlayerPlaying(PlayerId) then
  if PlayerHasChar(PlayerId) then
  begin
	GetPlayerChar(PlayerId, @PlayerChar);
	if PlayerChar > 0 then
	begin
	  Hash := GetHashKey(Name);
	  RequestModel(Hash);
	  while not HasModelLoaded(Hash) do Wait(10);
	  GetOffsetFromCharInWorldCoords(PlayerChar, 0, 5, 0, @X, @Y, @Z);
	  CreateCar(Hash, X, Y, Z, @Car, True);
	  MarkModelAsNoLongerNeeded(Hash);
	  MarkCarAsNoLongerNeeded(@Car);
	  PrintStringWithLiteralStringNow('string', PChar(Name + ' spawned !'), 5000, 1);
	end;  
  end;
end;

var
  MemInfo: TMemoryBasicInformation;
  ModName: array[0..MAX_PATH] of Char;
  S: string;

//Если что не понятно, спрашивайте в темке.
procedure main(); export;
const
  MaxObjs=16; // Максимальное кол-во летящих одновременно гранат
  ReloadTime=500;// Время перезарядки в мс
var
  Objs: array [0..MaxObjs-1] of LongWord;
  ObjsStartTimes: array [0..MaxObjs-1] of Integer;

  procedure CheckObjs;
  var
	I: Integer;
	CurTime: Integer;
	Model: LongWord;
	X,Y,Z: Single;
  begin
	GetGameTimer(@CurTime);
	for I:=0 to MaxObjs-1 do
	begin
	  if DoesObjectExist(Objs[I]) and (Objs[I]>0) then
	  begin
		if HasObjectCollidedWithAnything(Objs[I])
					   or IsObjectInWater(Objs[I])
					   or (CurTime-ObjsStartTimes[I] = 5000) then
		begin
		  GetObjectCoordinates(Objs[I], @X, @Y, @Z);
		  GetObjectModel(Objs[I], @Model);
		  if Model=GetHashKey('w_grenade') then
			AddExplosion(X,Y,Z, 0, 5.5, 1, 0, 1.0);
		  if Model=GetHashKey('w_molotov') then
			AddExplosion(X,Y,Z, 1, 5.5, 1, 0, 1.0);
		  DeleteObject(@Objs[I]);
		end;
	  end;
	end;
  end;

  function GetFreeObjIndex: Integer;
  var I: Integer;
  begin
	Result:=-1;
	for I:=0 to MaxObjs-1 do
	  if not DoesObjectExist(Objs[I]) then
	  begin
		Result:=I;
		ShowText('OK', 1000);
		Exit;
	  end;
	ShowText('~r~Fail', 1000);
  end;

var
  PlayerId : Player;
  PlayerChar : Ped;
  PlayerCar: Vehicle;
  UpperForce: Single;
  //S: string;
  X,Y,Z: Single;
  I,N: Integer;
  LastTime, CurTime: Integer;
  SLastTime, SCurTime: Integer;
  Cam, Weap, Ammo, WeapModel: Cardinal;
  RotX,RotY,RotZ,Vx,Vy,Vz: Single;
  BonePos: Vector3;
  //---------------
  ptfx: Cardinal;
begin
  Wait(2000);
  try
  DecimalSeparator:='.';
  LastTime:=0;
  SLastTime:=0;
  //ShowText('Липучка (123456.654321)');
  UpperForce:=0.65;
  while True do
  begin
	PlayerId := GetPlayerId();
	if PlayerId >= 0 then
	if IsPlayerPlaying(PlayerId) then
	if PlayerHasChar(PlayerId) then
	begin
	  GetPlayerChar(PlayerId, @PlayerChar);
	  if PlayerChar > 0 then
	  begin
		if KeyPressed(Ord('U')) then
		begin
		  S:=Clipboard.AsText;
		  I:=1;
		  try
			X:=ReadNum(S,I);
			Y:=ReadNum(S,I);
			Z:=ReadNum(S,I);
			SetCharCoordinates(PlayerChar, X, Y, Z);
			ShowText('Выполнен переход на ~n~'+FTS(X)+', '+FTS(Y)+', '+FTS(Z));
		  except
			on EConvertError do ShowText('~r~Неверный формат координат телетортации!');
		  end;
		end;
		if KeyPressed(Ord('I')) then
		begin
		  GetCharCoordinates(PlayerChar, @X, @Y, @Z);
		  ShowText('Скопировано '+FTS(X)+', '+FTS(Y)+', '+FTS(Z));
		  Clipboard.AsText:=fts(X)+', '+fts(Y)+', '+fts(Z);
		end;

		CheckObjs;

		GetCurrentCharWeapon(PlayerChar, @Weap);
		GetGameTimer(@CurTime);

		if KeyPressed(Ord('E')) and
		   KeyPressed(VK_RBUTTON) and
		   (Weap in [14,15]) and
		   (CurTime-LastTime>ReloadTime) then
		begin
		  PlaySound(-1, 'ball_returned');
		  GetPedBonePosition(PlayerChar,1232,0.42,0.05,-0.15,@BonePos);
		  GetCharCoordinates(PlayerChar,@X,@Y,@Z);
		  GetDistanceBetweenCoords3D(BonePos.X,BonePos.Y,BonePos.Z,X,Y,Z,@X);
		  N:=GetFreeObjIndex;
		  GetCharWeaponInSlot(PlayerChar, 8, @Weap, @Ammo, @WeapModel);//04B8
		  if Ammo<=0 then ShowText('Нет гранат!');

		  if (X<2.0) and (N<>-1) and (Ammo>0) then
		  begin

			CreateObject(WeapModel,BonePos.X,BonePos.Y,BonePos.Z,@Objs[N],True);
			Dec(Ammo);
			SetCharAmmo(PlayerChar, Weap, Ammo);

			SetObjectVisible(Objs[N],False);
			SetActivateObjectPhysicsAsSoonAsItIsUnfrozen(Objs[N], true);

			GetGameCam(@Cam);
			GetCamRot(Cam,@rotX,@rotY,@rotZ);
			RotZ:=RotZ+90.0;
			Vx:=ScriptNatives.Cos(rotZ)*50.0;
			Vy:=ScriptNatives.Sin(rotZ)*50.0;
			Vz:=ScriptNatives.Sin(rotX)*50.0;

			ApplyForceToObject(Objs[N],1,Vx,Vy,Vz,0.0,0.0,0.0,0,1,1,1);// Эта конструкция может показаться странной: мол, зачем повторять 2 раза и делать задержку?
			Wait(0);											   // На самом деле при одинарном вызывании без задержки объект вообще не будет двигаться.
			ApplyForceToObject(Objs[N],1,Vx,Vy,Vz,0.0,0.0,0.0,0,1,1,1);//
			SetObjectVisible(Objs[N],True);
			SetObjectRecordsCollisions(Objs[N],True);
			
			GetGameTimer(@ObjsStartTimes[N]);
			GetGameTimer(@LastTime);

		  end;
		end;
		//SetPlayerInvincible(PlayerId, True);
		//SetPlayerNeverGetsTired(PlayerId, True);
		//SetPoliceIgnorePlayer(PlayerId, True);

		if KeyPressed(Ord('N')) then
		begin
		  ptfx:=StartPtfxOnPedBone('exp_trespass_mid', PlayerChar, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1205, 1065353216);
		  Wait(5000);
		  StopPtfx(ptfx);
		end;

		if KeyPressed(Ord('K')) then
		begin
		  SpawnCar('sanchez');
		end;
		if KeyPressed(Ord('J')) then
		begin
		  SpawnCar('mule');
		end;
		{if KeyPressed(Ord('M')) then
		begin
		  GetPedBonePosition(PlayerChar,1232,0.42,0.05,-0.15,@BonePos);
		  CreateObject(GetHashKey('w_grenade'),BonePos.X,BonePos.Y,BonePos.Z,@Obj,True);
		  ShowText(fts(X));
		  SetObjectCollision(Obj,False);
		end;}

		if IsCharInAnyCar(PlayerChar) then
		begin
		  StoreCarCharIsInNoSave(PlayerChar, @PlayerCar);
		  while IsPlayerPlaying(PlayerId) and IsCharInCar(PlayerChar, PlayerCar) do
		  begin
			if KeyPressed(Ord('J')) and (SCurTime-SLastTime<200) then
			begin
			  ApplyForceToCar(PlayerCar,1,0.0,0.0,1.0,0.0,2.0,0.0,1,1,1,1);
			  //Wait(90);
			  //ApplyForceToCar(PlayerCar,1,0.0,0.0,1.0,0.0,1.0,0.0,1,1,1,1);
			end;
			if KeyPressed(VK_SHIFT) and (SCurTime-SLastTime<200) then
			begin
			  ApplyForceToCar(PlayerCar,1,0.0,1.0,0.0,0.0,0.0,0.0,1,1,1,1);
			  //Wait(90);
			  //ApplyForceToCar(PlayerCar,1,0.0,0.0,1.0,0.0,1.0,0.0,1,1,1,1);
			end;

			//ShowText(FTS(UpperForce),100);
			{TODO:Сделать мод езденья по стенам и узнать назначение остальных параметров}
			GetGameTimer(@SCurTime);
			if not IsCarInAirProper(PlayerCar) then
			begin
			  GetGameTimer(@SLastTime);
			end;
			ShowText(IntToStr(SCurTime-SLastTime),100);
			if SCurTime-SLastTime<500 then
			begin
			  ApplyForceToCar(PlayerCar,1,0.0,0.0,UpperForce,0.0,0.0,0.0,1,0,1,1);
			  ApplyForceToCar(PlayerCar,1,0.0,0.0,-UpperForce,0.0,0.0,0.0,1,1,1,1);
			end;
			Wait(25);
		  end;
		end;
	  end;
	end;
	Wait(50);
  end;
  except
	on E: Exception do
	begin

	  Windows.Beep(100, 100);
	  Windows.Beep(1600, 100);
	  Windows.Beep(100, 100);
	  Windows.Beep(1600, 100);
	  Windows.Beep(100, 100);
	  Windows.Beep(1600, 100);

	  ShowText('-------------------------------',0);
	  ShowText('или в крайнем случае на ящик VcSaJen@ya.ru',0);
	  ShowText('Пожалуйста сообщите эти данные автору в темке RaCon на [url="http://forums.gtamodding.ru/',0);"]http://forums.gtamodding.ru/',0);[/url]

	  ShowText('Адрес: '+IntToHex(Integer(ExceptAddr),8),0);
	  ShowText('Адрес Main: '+IntToHex(Integer(@main),8),0);

	  VirtualQuery(ExceptAddr, MemInfo, SizeOf(MemInfo));
	  if (MemInfo.State = MEM_COMMIT) and
		 (GetModuleFileName(THandle(MemInfo.AllocationBase), ModName, SizeOf(ModName)) <> 0) then
	  begin
		S:=ModName;
		Delete(S, Pos(GetCurrentDir,S), Length(GetCurrentDir)+1);
		//ShowText('Локальный адрес Base: '+IntToHex(Integer(ExceptAddr)-Integer(MemInfo.BaseAddress),8),0);
		ShowText('Локальный адрес: '+IntToHex(Integer(ExceptAddr)-(Integer(MemInfo.AllocationBase)+$1000),8),0);
		//ShowText('Base: '+IntToHex(Integer(MemInfo.BaseAddress),8),0);
		ShowText('Allocation base: '+IntToHex(Integer(MemInfo.AllocationBase),8),0);
		ShowText('Модуль: '+S,0);
	  end
	  else begin

	  end;

	  ShowText(E.Message,0);
	  ShowText('Класс: '+E.ClassName,0);
	  ShowText('-------------------------------',0);
	  ShowText('  Информация об ошибке:',0);
	  ShowText('-------------------------------',0);

	  AddNextMessageToPreviousBriefs(False);
	  ShowText('В RaCon возникла ошибка. Перепишите информацию об ошибке и перезагрузите игру.',5000);

	  Wait(5000);
	  {'~r~'+E.ClassName+': '+E.Message}
	  AddNextMessageToPreviousBriefs(False);
	  ShowText('Информацию об ошибке смотрите в "Истории" (Briefs) в меню (2-й пункт, сразу после "Карты").',60000);
	  //Clipboard.AsText:=E.Message;
	  Exit;
	end;
  end;
end;

exports main;

end.

Прикрепленные файлы




#14483 Scarface на Rage

Написано XEPOMAHT007 13 March 2017 - 06:37

Проблема в том, что нет прог для открытия файлов из Scarface и только уже по этой причине порт не возможен. Если я ошибаюсь то было бы не плохо узнать название этой проги (этих прог), а если не ошибаюсь, то прошу прощение за раскопку старой темы.


Основные проблемы следующие:

1. Порт на ПК был сделан самими разработчиками. Кто хотел - уже поиграл.
2. Качество карты - на уровне гта3. Без материальных эффектов и качественных текстур на RAGE будет жуткое мыло.
3. Нулевая играбельность - карту перетащить не проблема, но что игрок будет на ней делать?

А то, что нет готовых программ - просто они никому не нужны. Не то что программы - сами файлы игры гугл не видит. По прошествии 10 лет одни дохлые торренты.


#14474 Команда OpenIV представляет Liberty City в GTA V

Написано cj2000 16 February 2017 - 13:19

04.png

Я понимаю, что даже сами рокстары не особо с географией дружат, но перенести LC немного на север было бы не плохо.




#14445 [REL] OpenIV (GTA V, GTA IV & Max Payne 3)

Написано cj2000 20 January 2017 - 10:34

Насколько старая? Инсталятор который скачивает файлы с интернета в OpenIV появился еще в ноябре 2011 года.

Версия старая конечно, но кажись не на столько старая, если быть точней 1.3.5.




#14438 [REL] OpenIV (GTA V, GTA IV & Max Payne 3)

Написано cj2000 18 January 2017 - 11:24

Антивирус? Фаервол? Кто-то блокирует доступ к сайту.

Возможно, админ немного долбанутый поставил какую то странную прогу и у меня уже была один раз проблема, что страница не открывалась, но прокси легко её решил.

На сей раз прокси тоже сразу всё решил. Без проблем через прокси скачал. Спасибо за подсказку.




#14413 Команда OpenIV представляет Liberty City в GTA V

Написано GooD-NTS 04 January 2017 - 13:24

Интересно, насколько поднимутся системные требования к гта5 после добавления нового города.

Есть мнение, что не сильно.

И по добавлению в гта5 карты Red Dead Redemption что-нибудь слышно?

Пока ничего. По одной карте за раз, давайте с либерти сначала разберёмся.

Эмм.. очень апасный же процесс? По времени наверно дольше чем установка гта 5?

Пока не понятно :)


#14381 [GTA V | REL]DWS system for ScriptHook V

Написано Kordal 31 May 2016 - 10:54

21022.jpg

 

Данный плагин является расширением для GTA 5 ScriptHook V, который позволит модмейкерам использовать возможности языка программирования Delphi для написания скриптов. В основе модификации лежит библиотека DWS(Delphi Web Script) и ScriptHook V for Delphi SDK . Проект только набирает обороты, поэтому реализовано совсем не много.

 

Требования:
  • ScriptHook V

Основные возможности:

  • Написание скриптов с возможностью использования синтаксиса языка DELPHI / PASCAL.
  • Нет необходимости использовать компилятор и среду разработки, таскать сторонние библиотеки.
  • Скрипты можно писать прямо в текстовом редакторе.
  • Скрипты выполняются в режиме реального времени интерпретатором Delphi Web Script.
  • Скрипты можно писать в режиме реального времени, свернув игру в Taskbar.
  • Перекомпиляция скриптов доступна по нажатию системной клавиши F9 непосредственно в игре.
  • Ведение логов (запись ошибок компиляции в файл с указанием строки, колонки и имени исполняемого скрипта).

Недостатки:

  • Большой размер плагина ~10 Мб.
  • Отсутствует пользовательский интерфейс.
  • Плагин находится на ранней стадии разработки, поэтому возможности его применения минимальны.

Установка:

  • Обновить версию ScriptHook V до последней. Распаковать содержимое архива (dxinput8.dllScriptHookV.dll) в директорию с игрой.
  • Поместить содержимое архива с данной модификацией в корневую директорию с игрой.

Настройка и использование:

В папке Data находятся: файл конфигурации DelphiWebScript.ini и директория Scripts со скриптами. 
DelphiWebScript.ini содержит два параметра:
  • ScriptDir - путь к скриптам, указывает системе где искать файлы со скриптами.
  • RunScript - название основного (ведущего) скрипт файла, которое будет запускать система, например Main.dws.
В директории Scripts (сюда помещаем файлы со скриптами):
  • Hashes.dws - константы с хеш кодами, для определения скриптовых функций в игре (полный список констант можно посмотреть в оригинальном SDK).
  • Scripting.dws - скриптовые функции игры, полный список функций см. в оригинальном SDK.
  • Test.dws, TurnSignals.dws -  примеры скриптов.
После редактирования всех скриптов, запускаем игру в одиночном режиме. Если все сделано правильно, вы увидите результат выполнения скрипта в игре, а DelphiWebScript.log информацию о состоянии ваших скриптов. По нажатию системной клавиши F9 происходит перезагрузка и повторная компиляция ведущего скрипта, указанного в параметре RunScript файла DelphiWebScript.ini. Таким образом, можно редактировать скрипты не завершая игру.
 

История версий:

  • 0.12 - Добавлены примеры скриптов.
  • 0.10 - Начальная версия, первый релиз.
Благодарности:
I express thanks:
- Alexander Blade

- Brink, Danie (South Africa)
- Darling, Jeremy
- Egorov, Nikita (Russia)
- Fuchs, Manfred (Germany)
- Grange, Eric (France)
- Hariseno, Jagad (Hungary)
- Hernler, Hannes (Austria)
- Krenn, Willibald (Austria)
- Lind, Martin (Denmark)
- Listac, John
- Luleich, Andreas (Germany)
- Rheinheimer, Danilo Luiz (Brazil)
- Riepp, Michael (Germany)
- Ronzano, Juan Luis (Portugal)
- Tosik
- Waldenburg, Martin (Germany) 
 
and to team of the site Modgames.net. Thank you very much!
 
Скрытый текст



#14311 Underground

Написано XEPOMAHT007 03 August 2015 - 15:42

Как уже было сказано выше, новые города не останутся безлюдными и подтверждение тому это видео:


Надеюсь, у Вас имеются исходники путей ЛС и ВС. Видно, что nodesXX.dat по узлам распилены криво (как это было в модификациях LC2SA и VC2SA), может быть исправите к первому публичному релизу.


#14297 Underground

Написано cj2000 22 June 2015 - 12:32

 

Сюжет тоже будет, над ним тоже несколько человек из команды работают.


Ну и как Вы собираетесь сюжетно объединять ВС 1986 года, СА 1993 и ЛС 2001? Рокстары показывали Америку 80-х, 90-х и 2000-х в трёх отдельных играх, Вы же спихали всё в одно, не привнеся ничего нового. В прогрессе видны лишь изображения того, что мы уже давным давно видели (для приличия хотя бы города переприлайтили под нормы СА или взяли бы города из Х-гроб версий гта3 и ВС с картами теней и более качественными текстурами), а то сейчас у моддеров сплошной copy-paste наблюдается, деградация одним словом.

 

Просто тупо объединять сюжеты из этих 3 игр мы не собираемся. У мода будет свой сюжет, и свой новый главный герой, а точней герои (ну по типу ГТА 5). Время сюжета должно быть где то 2003 год, из чего следуют не большие измененя для карты СА и значительные изменения для карты ВС. Прилайты должны тоже быть переделаны под нормы СА. Карты которые показаны в видео не обязательно будут выглядеть так же в окончательной версии. Главная задача этих видео была, показать возможность добавления новых карт, без замены существующей.




#14281 Underground

Написано cj2000 08 June 2015 - 10:28

А вот и новое видео, где можно увидеть прогресс работы над VC.

 

 

У мода есть теперь свой канал на трубе, кому интересно следите здесь.




#14234 Интересный скрипт миссии "BusMod" by rooft0p, разбор полётов.

Написано НикИТОС 26 April 2015 - 10:40

Попробуй метод GetHashCode класса Ped и сравни результат с полученным при помощи нейтива.


#14205 Интересный скрипт миссии "BusMod" by rooft0p, разбор полётов.

Написано НикИТОС 13 April 2015 - 19:17

Ок, гляну, но мне кажется там что-то другое, нежели SET_TIME_SCALE, ибо всё вокруг не затормаживается, а принудительно останавливается только игрок, остальной мир живёт своей жизнью (так, например, пока мы копаемся в консоли, в авто игрока может въехать какой-нибудь неуклюжий водитель :D и коллизии обоих транспортных средств при этом будут обработаны корректно и в реальном времени).

Думаю, SET_PLAYER_CONTROL тебе подойдёт.


#14165 Моддинг ChinatownWars

Написано DK22 06 April 2015 - 03:23

Просмотрищик ресурсов для iOS и Android версий CW




#14094 Ментовский Беспредел

Написано XEPOMAHT007 24 February 2015 - 22:09

То, что "окрашено красненьким" в шаблоне, то и на очереди: http://gtamodding.ru.../Шаблон:VC-navi

Те модификации, которые мне чем-то интересным запомнились 10 лет спустя, о тех и не жалко статью-некролог написать (помним, любим, скорбим и всё такое...).


#14061 Моддинг LCS и VCS (PSP/PS2)

Написано Lego 21 August 2014 - 19:47

P.S.Скоро выложу листинги VCS/LCS PSP версий на асме и c++.С последним проблемы,т.к. pspdecompiler надо скомпилировать в рабочий декомпилятор,а Dev-cpp меня с бубном заставляет танцевать.Никто не хочет помочь скомпилить?


Прикрепленный файл  pspdecompiler.zip   240.69К   94 загрузок
собирал компилятором 2008-й студии (т.е. для работы нужена msvcr90.dll) из вот этого репо, exe запускается, но на работоспособность не проверял.


#13971 [REL] OpenIV (GTA V, GTA IV & Max Payne 3)

Написано Chipsman 22 March 2014 - 16:43




#13943 LCS PC Edition

Написано Lego 28 December 2013 - 18:34

Интересно, а под андроид запилить реально? хотя бы частично?


#13914 Reverse engineering и IDA Pro

Написано listener 28 October 2013 - 08:44

Так в том-то и фокус, что переименовывать нужно не просто так, а проверять, что этот метод занимает тот же слот в VMT потомков (и больше не используется нигде). у меня уже есть safe_rename, который переименовывет методы, которые используются только в одном классе. В теории, пройтись по потомкам, можно и с помощью .idc, но проще, все-таки сделать это внешним скриптом.

Виртуальные методы pgBase раньше использовались при дефрагментации памяти (предположительно, как остаток от экспортера ресурсов). Сейчас они точно не используются (если посмотреть на pgDictionary<grcTexture>, там _m8 вообще выпадает в отладчик).


#13780 Обсуждение

Написано Chipsman 14 August 2013 - 11:55

Похоже на то, что я починил ipbwiki и теперь темы обсуждений статей должны работать как и раньше.

 

Ещё аттачи неправильно отображаются. Сначала число загрузок, а потом текст "Количество загрузок:". 

 

изменил на "загрузок" (так как если искать и изменять шаблон, то уже для других языков будет не правильно) 

 

3) хорошо бы исправить б-гмерзкие "лайки" в профиле на, скажем "нравится" (и без кавычек);

поменял

 

 2) хотел поставить +, но форум выдаёт ошибку, что я исчерпал положительные отметки за сегодня;

 

пол часа искал настройку, но вроде нашел, теперь пробуй


4) лого на вики ведёт на www.gtamodding.ru, хотя потом Redirect 301 на gtamodding.ru. (поправь ссылку лого);

 

исправлено