360haven works best with JavaScript enabled
[WIP] Borderlands 2 Compression Toolkit - Page 7
Loading
Register
Page 7 of 8 FirstFirst ... 2345678 LastLast
Results 49 to 56 of 63
  1. #49
    Haven Donator
    pistol_pte is offline
    Join Date : May 2012
    Posts : 6
    Array

    Re: Borderlands 2 Compression Toolkit

    Not sure if this hepls but this is from WillowGame.xxx
    it might give some sort of idea of savegame structure

    Code:
    class PlayerSaveGame extends Object
    	editinlinenew;
    
    struct native SkillSaveGameData
    {
    	var private SkillDefinition SkillDefinition;
    	var private int Grade;
    	var private int GradePoints;
    	var private int EquippedSlotIndex;
    
    	structdefaultproperties
    	{
    		SkillDefinition=none
    		Grade=0
    		GradePoints=0
    		EquippedSlotIndex=-1
    	}
    };
    
    struct native ResourceSaveGameData
    {
    	var private ResourceDefinition ResourceDefinition;
    	var private ResourcePoolDefinition ResourcePoolDefinition;
    	var private float Amount;
    	var private int UpgradeLevel;
    
    	structdefaultproperties
    	{
    		ResourceDefinition=none
    		ResourcePoolDefinition=none
    		Amount=0.00
    		UpgradeLevel=0
    	}
    };
    
    struct native InventorySaveGameData
    {
    	var private ItemDefinitionData DefinitionData;
    	var private int Quantity;
    	var private bool bEquipped;
    	var private Engine.WillowInventory.PlayerMark Mark;
    
    	structdefaultproperties
    	{
    		DefinitionData=(ItemDefinition=none,BalanceDefinition=none,ManufacturerDefinition=none,ManufacturerGradeIndex=0,AlphaItemPartDefinition=none,BetaItemPartDefinition=none,GammaItemPartDefinition=none,DeltaItemPartDefinition=none,EpsilonItemPartDefinition=none,ZetaItemPartDefinition=none,EtaItemPartDefinition=none,ThetaItemPartDefinition=none,MaterialItemPartDefinition=none,PrefixItemNamePartDefinition=none,TitleItemNamePartDefinition=none,GameStage=0,UniqueId=0)
    		Quantity=0
    		bEquipped=false
    		Mark=PlayerMark.PM_Standard
    	}
    };
    
    struct native UnloadableDlcItemSaveGameData
    {
    	var private InventorySerialNumber SerialNumber;
    	var private int Quantity;
    	var private bool bEquipped;
    	var private Engine.WillowInventory.PlayerMark Mark;
    
    	structdefaultproperties
    	{
    		SerialNumber=(Buffer=0,Buffer[1]=0,Buffer[2]=0,Buffer[3]=0,Buffer[4]=0,Buffer[5]=0,Buffer[6]=0,Buffer[7]=0,Buffer[8]=0,Buffer[9]=0,Buffer[10]=0,Buffer[11]=0,Buffer[12]=0,Buffer[13]=0,Buffer[14]=0,Buffer[15]=0,Buffer[16]=0,Buffer[17]=0,Buffer[18]=0,Buffer[19]=0,Buffer[20]=0,Buffer[21]=0,Buffer[22]=0,Buffer[23]=0,Buffer[24]=0,Buffer[25]=0,Buffer[26]=0,Buffer[27]=0,Buffer[28]=0,Buffer[29]=0,Buffer[30]=0,Buffer[31]=0,Buffer[32]=0,Buffer[33]=0,Buffer[34]=0,Buffer[35]=0,Buffer[36]=0,Buffer[37]=0,Buffer[38]=0,Buffer[39]=0,State=SerialNumberState.SNS_Empty,RunningCounter=0,EncryptedLength=0)
    		Quantity=0
    		bEquipped=false
    		Mark=PlayerMark.PM_Trash
    	}
    };
    
    struct native WeaponSaveGameData
    {
    	var private WeaponDefinitionData WeaponDefinitionData;
    	var private WillowDeclarations.EQuickWeaponSlot QuickSlot;
    	var private Engine.WillowInventory.PlayerMark Mark;
    
    	structdefaultproperties
    	{
    		WeaponDefinitionData=(WeaponTypeDefinition=none,BalanceDefinition=none,ManufacturerDefinition=none,ManufacturerGradeIndex=0,BodyPartDefinition=none,GripPartDefinition=none,BarrelPartDefinition=none,SightPartDefinition=none,StockPartDefinition=none,ElementalPartDefinition=none,Accessory1PartDefinition=none,Accessory2PartDefinition=none,MaterialPartDefinition=none,PrefixPartDefinition=none,TitlePartDefinition=none,GameStage=0,UniqueId=0)
    		QuickSlot=EQuickWeaponSlot.QuickSelectNone
    		Mark=PlayerMark.PM_Standard
    	}
    };
    
    struct native UnloadableDlcWeaponSaveGameData
    {
    	var private InventorySerialNumber SerialNumber;
    	var private WillowDeclarations.EQuickWeaponSlot QuickSlot;
    	var private Engine.WillowInventory.PlayerMark Mark;
    
    	structdefaultproperties
    	{
    		SerialNumber=(Buffer=0,Buffer[1]=0,Buffer[2]=0,Buffer[3]=0,Buffer[4]=0,Buffer[5]=0,Buffer[6]=0,Buffer[7]=0,Buffer[8]=0,Buffer[9]=0,Buffer[10]=0,Buffer[11]=0,Buffer[12]=0,Buffer[13]=0,Buffer[14]=0,Buffer[15]=0,Buffer[16]=0,Buffer[17]=0,Buffer[18]=0,Buffer[19]=0,Buffer[20]=0,Buffer[21]=0,Buffer[22]=0,Buffer[23]=0,Buffer[24]=0,Buffer[25]=0,Buffer[26]=0,Buffer[27]=0,Buffer[28]=0,Buffer[29]=0,Buffer[30]=0,Buffer[31]=0,Buffer[32]=0,Buffer[33]=0,Buffer[34]=0,Buffer[35]=0,Buffer[36]=0,Buffer[37]=0,Buffer[38]=0,Buffer[39]=0,State=SerialNumberState.SNS_Empty,RunningCounter=0,EncryptedLength=0)
    		QuickSlot=EQuickWeaponSlot.QuickSelectNone
    		Mark=PlayerMark.PM_Trash
    	}
    };
    
    struct native InventorySlotSaveGameData
    {
    	var private int InventorySlotMax_Misc;
    	var private int WeaponReadyMax;
    	var private int NumQuickSlotsFlourished;
    
    	structdefaultproperties
    	{
    		InventorySlotMax_Misc=0
    		WeaponReadyMax=0
    		NumQuickSlotsFlourished=0
    	}
    };
    
    struct native MissionPlaythroughSaveGameData
    {
    	var private int PlayThroughNumber;
    	var init private array<init private MissionStatusPlayerData> MissionData;
    	var init private array<init private UnloadableDlcMissionStatusData> UnloadableDlcMissionData;
    	var init private array<init private PendingMissionRewardData> PendingMissionRewards;
    	var init private array<init private UnloadableDlcPendingRewardData> UnloadableDlcPendingMissionRewards;
    	var init private string ActiveMission;
    	var init private array<init private MissionDefinition> FilteredMissions;
    
    	structdefaultproperties
    	{
    		PlayThroughNumber=0
    		MissionData=none
    		UnloadableDlcMissionData=none
    		PendingMissionRewards=none
    		UnloadableDlcPendingMissionRewards=none
    		ActiveMission=""
    		FilteredMissions=none
    	}
    };
    
    struct native UnloadableDlcEchoCallData
    {
    	var init private string CallDefName;
    	var private int DlcPackageId;
    
    	structdefaultproperties
    	{
    		CallDefName=""
    		DlcPackageId=0
    	}
    };
    
    struct native PlayerUIPreferences
    {
    	var private string CharacterName;
    	var private Color PrimaryColor;
    	var private Color SecondaryColor;
    	var private Color TertiaryColor;
    
    	structdefaultproperties
    	{
    		CharacterName=""
    		PrimaryColor=(R=255,G=255,B=255,A=255)
    		SecondaryColor=(R=255,G=255,B=255,A=255)
    		TertiaryColor=(R=255,G=255,B=255,A=255)
    	}
    };
    
    struct native RegionGameStageData
    {
    	var private RegionDefinition RegionDef;
    	var private int GameStage;
    	var private int PlaythroughIdx;
    
    	structdefaultproperties
    	{
    		RegionDef=none
    		GameStage=0
    		PlaythroughIdx=0
    	}
    };
    
    struct native UnloadableDlcRegionGameStageData
    {
    	var private string RegionDefName;
    	var private int GameStage;
    	var private int PlaythroughIdx;
    	var private int DlcPackageId;
    
    	structdefaultproperties
    	{
    		RegionDefName=""
    		GameStage=0
    		PlaythroughIdx=0
    		DlcPackageId=0
    	}
    };
    
    struct native WorldDiscoveryData
    {
    	var private name DiscoveryName;
    	var private bool HasBeenUncovered;
    
    	structdefaultproperties
    	{
    		DiscoveryName=None
    		HasBeenUncovered=false
    	}
    };
    
    struct native ExpansionData
    {
    	var private int Tag;
    	var private array<private byte> Data;
    
    	structdefaultproperties
    	{
    		Tag=0
    		Data=none
    	}
    };
    
    struct native UnloadableDlcChallengeData
    {
    	var init private string ChallengeDefName;
    	var private int DlcPackageId;
    
    	structdefaultproperties
    	{
    		ChallengeDefName=""
    		DlcPackageId=0
    	}
    };
    
    struct native OneOffLevelChallengeData
    {
    	var private byte PackageId;
    	var private byte ContentId;
    	var private array<private int> Completion;
    
    	structdefaultproperties
    	{
    		PackageId=0
    		ContentId=0
    		Completion=none
    	}
    };
    
    struct native BankSlot
    {
    	var private InventorySerialNumber InventorySerialNumber;
    
    	structdefaultproperties
    	{
    		InventorySerialNumber=(Buffer=0,Buffer[1]=0,Buffer[2]=0,Buffer[3]=0,Buffer[4]=0,Buffer[5]=0,Buffer[6]=0,Buffer[7]=0,Buffer[8]=0,Buffer[9]=0,Buffer[10]=0,Buffer[11]=0,Buffer[12]=0,Buffer[13]=0,Buffer[14]=0,Buffer[15]=0,Buffer[16]=0,Buffer[17]=0,Buffer[18]=0,Buffer[19]=0,Buffer[20]=0,Buffer[21]=0,Buffer[22]=0,Buffer[23]=0,Buffer[24]=0,Buffer[25]=0,Buffer[26]=0,Buffer[27]=0,Buffer[28]=0,Buffer[29]=0,Buffer[30]=0,Buffer[31]=0,Buffer[32]=0,Buffer[33]=0,Buffer[34]=0,Buffer[35]=0,Buffer[36]=0,Buffer[37]=0,Buffer[38]=0,Buffer[39]=0,State=SerialNumberState.SNS_Empty,RunningCounter=0,EncryptedLength=0)
    	}
    };
    
    struct native LockoutData
    {
    	var private LockoutDefinition LockoutDef;
    	var private int LockoutTime;
    
    	structdefaultproperties
    	{
    		LockoutDef=none
    		LockoutTime=0
    	}
    };
    
    struct native UnloadableDlcLockoutData
    {
    	var private string LockoutDefName;
    	var private int LockoutTime;
    	var private int DlcPackageId;
    
    	structdefaultproperties
    	{
    		LockoutDefName=""
    		LockoutTime=0
    		DlcPackageId=0
    	}
    };
    
    var private PlayerUIPreferences UIPreferences;
    var private PlayerClassDefinition PlayerClassDefinition;
    var private int ExpLevel;
    var private int ExpPoints;
    var private int GeneralSkillPoints;
    var private int SpecialistSkillPoints;
    var private int CurrencyOnHand[13];
    var private int PlaythroughsCompleted;
    var private array<private SkillSaveGameData> SkillData;
    var private array<private ResourceSaveGameData> ResourceData;
    var private array<private InventorySaveGameData> ItemData;
    var private array<private UnloadableDlcItemSaveGameData> UnloadableDlcItemData;
    var private InventorySlotSaveGameData InventorySlotData;
    var private array<private WeaponSaveGameData> WeaponData;
    var private array<private UnloadableDlcWeaponSaveGameData> UnloadableDlcWeaponData;
    var private array<private MissionPlaythroughSaveGameData> MissionPlaythroughs;
    var private CustomizationDefinition AppliedCustomizations[5];
    var private transient array<private byte> StatsData;
    var private array<private name> VisitedTeleporters;
    var private transient name LastVisitedTeleporter;
    var private transient int SaveGameId;
    var private transient int SaveVersion;
    var private int PlotMissionNumber;
    var private int ActiveMissionNumber;
    var private bool bReceivedDefaultWeapon;
    var private transient bool bIsBadassModeSaveGame;
    var private bool bIsDlcPlayerClass;
    var private transient bool bShowNewPlaythroughNotification;
    var private transient bool bAwesomeSkillDisabled;
    var private transient array<private int> UsedMarketingCodes;
    var private transient array<private int> MarketingCodesNeedingNotification;
    var private transient int TotalPlayTime;
    var private transient string LastSavedDate;
    var private array<private ExpansionData> DLCExpansionData;
    var private array<private ChallengeDefinition> ChallengeList;
    var private array<private UnloadableDlcChallengeData> UnloadableDlcChallengeList;
    var private array<private RegionGameStageData> RegionGameStages;
    var private transient array<private UnloadableDlcRegionGameStageData> UnloadableDlcRegionGameStages;
    var private array<private WorldDiscoveryData> WorldDiscoveryList;
    var private array<private int> BlackMarketUpgrades;
    var private Guid SaveGuid;
    var private transient array<private int> LevelChallengeUnlocks;
    var private transient array<private OneOffLevelChallengeData> OneOffLevelChallengeCompletion;
    var private transient int MaxBankSlots;
    var private transient array<private BankSlot> BankSlots;
    var private transient int NumChallengePrestiges;
    var private transient array<private LockoutData> LockoutList;
    var private transient array<private UnloadableDlcLockoutData> UnloadableDlcLockoutList;
    var private int DLCPlayerClassPackageId;
    var private array<private name> FullyExploredAreas;
    var private transient int NumGoldenKeysNotified;
    var private transient int LastPlaythroughNumber;
    var private array<private TrainingMessageDefinition> QueuedTrainingMessages;

  2. #50
    thedevil-is-here

    Re: Borderlands 2 Compression Toolkit

    mine also does this

  3. #51
    Senior Member
    Zaid is offline
    Join Date : Mar 2012
    Location : New Hampshire
    Posts : 218
    Array

    Re: Borderlands 2 Compression Toolkit

    Hold on wait! So if this compression works, does it mean that we won't need a JTAG/RGH to modify Borderlands 2? Only Hex Editor? Because if its possible then this game is going to be ripped in to shreds :D
    Downloads : 3 || Uploads : 0 || Rep Power : 3403 || Posts : 218 || Thanks : 54 || Thanked 175 Times in 17 Posts



  4. #52
    Security
    Overlord

    reapermech is offline
    Join Date : Jun 2011
    Location : tx
    Posts : 1,008
    Array
    Alien attack Champion

    Re: Borderlands 2 Compression Toolkit

    it can be decompressed but when we try to compress the save there is still some issues that need to be looked at just keep being patient an editor will soon follow

  5. #53
    Senior Member
    Zaid is offline
    Join Date : Mar 2012
    Location : New Hampshire
    Posts : 218
    Array

    Re: Borderlands 2 Compression Toolkit

    Guys, I know you can't compress yet anyways but I wanted to Decompress my save and it didn't work! This is frustrating, I have a picture to show what I did...

    Downloads : 3 || Uploads : 0 || Rep Power : 3403 || Posts : 218 || Thanks : 54 || Thanked 175 Times in 17 Posts



  6. #54
    Vuze

    Re: Borderlands 2 Compression Toolkit

    Dont put it all on one line, thats what i did at first.
    where there is brackets put the file path to what is in brackets
    also make sure your savegame.sav is in the same folder as the .exe
    Do:
    cd c:\[folder containing borderlands2.exe]
    e.g. cd c:\borderlands2

    Press enter

    then type

    borderlands2.exe

    Press enter

    then type

    borderlands2.exe -d savegame.sav save.decompress

    press enter

    Then it should work


    Also fairchild i managed to find money in hxd (i understand it might be a dynamic offset, so it would be pointless posting), however when i edit (using hxd or the tool i quickly created), the save is corrupt in borderlands (not in xbox storage)
    I tried generating SHA1 checksums, but that didnt make a difference. Is it a different checksum or is there something else?

  7. #55
    DMand

    Re: Borderlands 2 Compression Toolkit

    Nice work fairchild hope you guys can knock out the compression now thanks for releasing this


  8. #56
    Senior Member
    Zaid is offline
    Join Date : Mar 2012
    Location : New Hampshire
    Posts : 218
    Array

    Re: Borderlands 2 Compression Toolkit

    Quote Originally Posted by Vuze View Post
    Dont put it all on one line, thats what i did at first.
    where there is brackets put the file path to what is in brackets
    also make sure your savegame.sav is in the same folder as the .exe
    Do:
    cd c:\[folder containing borderlands2.exe]
    e.g. cd c:\borderlands2

    Press enter

    then type

    borderlands2.exe

    Press enter

    then type

    borderlands2.exe -d savegame.sav save.decompress

    press enter

    Then it should work


    Also fairchild i managed to find money in hxd (i understand it might be a dynamic offset, so it would be pointless posting), however when i edit (using hxd or the tool i quickly created), the save is corrupt in borderlands (not in xbox storage)
    I tried generating SHA1 checksums, but that didnt make a difference. Is it a different checksum or is there something else?
    THANKS MAN!
    Downloads : 3 || Uploads : 0 || Rep Power : 3403 || Posts : 218 || Thanks : 54 || Thanked 175 Times in 17 Posts



 

 
Page 7 of 8 FirstFirst ... 2345678 LastLast

Similar Threads

  1. [Release] XCOM Enemy Unknown Compression Toolkit
    By fairchild in forum Xbox 360 Modding Programs
    Replies: 109
    Last Post: 01-18-2017, 06:02 PM
  2. Batman Arkham City Compression Toolkit
    By fairchild in forum Xbox 360 Modding Programs
    Replies: 112
    Last Post: 11-11-2015, 01:17 AM
  3. Dungeon Defenders Compression Toolkit
    By fairchild in forum Xbox 360 Modding Programs
    Replies: 275
    Last Post: 07-07-2014, 05:32 AM
  4. [WIP] Borderlands 2 Compression Tool
    By kill_seth in forum Xbox 360 Modding Programs
    Replies: 94
    Last Post: 10-14-2012, 09:18 PM

Visitors found this page by searching for:

Nobody landed on this page from a search engine, yet!

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

About 360haven

    360haven is an Forum Devoted To Game modding Fans from all over the world.

    An Awesome Community of Xbox 360 Gamers, Modders and Developers who Create & Share Tutorials, Applications, Gfx, Trainers and Gamesaves.

    A haven for the l33t.
    A scarce paradise for modders.

★★★★★¯\_(ツ)_/¯