天天看點

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

目錄

  • 0x00 序言
  • 0x01 工具準備
  • 0x02 道具掉落數量修改
  • 0x03 成就修改
  • 0x04 結語

0x00 序言

    近期和小夥伴玩了下雨中冒險2(Risk of Rain 2),遊戲挺好玩,但是多人模式裡道具太少不好配置設定,實在是不爽。然後…就有了本文…

    本文将實作開一個箱子出5個道具的功能,并附贈成就解鎖的修改教程_(:з」∠)_。

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

0x01 工具準備

    Risk of Rain 2使用unity開發,用的是mono打包。那直接上.net逆向神器dnSpy。

dnSpy下載下傳位址https://github.com/0xd4d/dnSpy/releases

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

選擇自己的版本下載下傳安裝就好。

  • unity引擎,mono方式打包大多可以使用此方式破解 ,包括apk等
  • mono特點檔案目錄或者安裝包下有Assembly-CSharp.dll 檔案

0x02 道具掉落數量修改

首先找到你的遊戲檔案目錄,大概是這種

\steam\steamapps\common\Risk of Rain 2
           

然後複制到别的地方備份一下,以防萬一

然後打開Manged檔案夾

Risk of Rain 2\Risk of Rain 2_Data\Managed
           

打開後大概長這樣,看到Assembly-CSharp.dll

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

使用dnSpy打開Assembly-CSharp.dll (拖放,右鍵…都行)

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

打開後在搜尋欄搜尋ItemDrop

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

輕按兩下進入ChestBehavior類

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

在ItemDrop()中右鍵編輯方法

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

找到這兩行修改為 (就是加個循環)

for(int i=0;i<5;i++)									//新增
	{													//新增
	PickupDropletController.CreatePickupDroplet(this.dropPickup, this.dropTransform.position + Vector3.up * 1.5f, Vector3.up * this.dropUpVelocityStrength + this.dropTransform.forward * this.dropForwardVelocityStrength);
	}													//新增
           
雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

然後點選右下角的編譯

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

編譯後點選檔案->儲存子產品

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

然後點選确定…

ScavBackpackBehavior也也用同樣的方法改一下

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語
for(int i=0;i<5;i++)		//新增
	{						//新增
	PickupDropletController.CreatePickupDroplet(this.dropPickup, base.transform.position + Vector3.up * 1.5f, Vector3.up * 20f + base.transform.forward * 2f);
	}						//新增
           

改前

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

改後

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

都儲存好後,進遊戲看一下吧

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

5倍的快樂,再也不用擔心小夥伴的道具配置設定了_(:з」∠)_

本教程修改隻修改到這,有其他需求可以自己搜尋修改

下面介紹下成就解鎖修改

0x03 成就修改

    首先找到這個檔案夾 steam目錄->userdata檔案夾->你的使用者檔案夾(一串數字)->遊戲檔案夾(一串數字,可以按時間排序找)->remote->UserProfiles

\steam\userdata\<數字>\<數字>\remote\UserProfiles
           

裡面是一個字母數字混合的.xml檔案

打開後(記事本或者其他編輯器)應該長這樣,<achievementsList>之間的就是成就

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

我format一下,好看點_(:з」∠)_

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語
<achievementsList> </achievementsList>之間的是成就清單
<coin></coin>之間的是月球币數量 
<discoveredPickups></discoveredPickups>之間的是物品裝備清單
           

也就是說把成就名寫進<achievementsList> </achievementsList>之間就行了

成就名就在上章中遊戲檔案中 這些就是成就的實作

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

點進去,成就名就是方法名去掉Achievement

雨中冒險2逆向修改0x00 序言0x01 工具準備0x02 道具掉落數量修改0x03 成就修改0x04 結語

比如

AttackSpeedAchievement 成就名就是AttackSpeed (攻速成就)

CommandoKillOverloadingWormAchievement 成就名就是CommandoKillOverloadingWorm (指揮官殺超載蠕蟲成就)

把想解鎖的成就名加到清單裡就可以了

這個方法出了新成就也可以快速解鎖

當然我也準備了一份全成就 可以直接複制

把原來<achievementsList> </achievementsList>之間的内容删掉後粘貼進去

AttackSpeed BeatArena BurnToDeath CarryLunarItems ChargeTeleporterWhileNearDeath CleanupDuty Complete20Stages Complete30StagesCareer CompleteMultiBossShrine CompletePrismaticTrial CompleteTeleporter CompleteTeleporterWithoutInjury CompleteThreeStages CompleteThreeStagesWithoutHealing CompleteUnknownEnding DefeatSuperRoboBallBoss Die5Times Discover10UniqueTier1 Discover5Equipment FailShrineChance FindDevilAltar FindTimedChest FindUniqueNewtStatues FreeMage HardEliteBossKill HardHitter KillBossQuantityInRun KillBossQuick KillElementalLemurians KillEliteMonster KillElitesMilestone KillGoldTitanInOneCycle KillTotalEnemies LoaderBigSlam LogCollector LoopOnce MajorMultikill MaxHealingShrine MoveSpeed MultiCombatShrine NeverBackDown RepeatedlyDuplicateItems RepeatFirstTeleporter RescueTreebot ServerTracker StayAlive1 SuicideHermitCrabs TotalDronesRepaired TotalMoneyCollected UseThreePortals ObtainArtifact ObtainArtifactBomb ObtainArtifactCommand ObtainArtifactEnigma ObtainArtifactFriendlyFire ObtainArtifactGlass ObtainArtifactMixEnemy ObtainArtifactMonsterTeamGainsItems ObtainArtifactRandomSurvivorOnRespawn ObtainArtifactSacrifice ObtainArtifactShadowClone ObtainArtifactSingleMonsterType ObtainArtifactSwarms ObtainArtifactTeamDeath ObtainArtifactWeakAssKnees ObtainArtifactWispOnDeath CommandoClearGameMonsoon CommandoFastFirstStageClear CommandoKillOverloadingWorm CommandoNonLunarEndurance CrocoClearGameMonsoon CrocoKillScavenger CrocoKillWeakEnemiesMilestone CrocoTotalInfectionsMilestone EngiArmy EngiClearGameMonsoon EngiClearTeleporterWithZeroMonsters EngiKillBossQuick HuntressAllGlaiveBouncesKill HuntressClearGameMonsoon HuntressCollectCrowbars HuntressMaintainFullHealthOnFrozenWall LoaderClearGameMonsoon LoaderSpeedRun MageAirborneMultiKill MageClearGameMonsoon MageFastBoss MageMultiExecute MageMultiKill MercClearGameMonsoon MercCompleteTrialWithFullHealth MercDontTouchGround ToolbotClearGameMonsoon ToolbotGuardTeleporter ToolbotKillImpBossWithBfg TreebotClearGameMonsoon TreebotDunkClayBoss TreebotLowHealthTeleporter
           

(ver4811921版本的成就,不保證以後也是全的)

0x04 結語

  • 此修改不确定會對遊戲運作有什麼影響,也不确定會不會被封号,請酌情使用。
  • 本人逆向小白,其它功能也不打算修改
  • 有問題歡迎提出

繼續閱讀