Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

Editing Existing Games

Discussion in 'Editor & General Support' started by ItzNight, Apr 2, 2020.

  1. ItzNight

    ItzNight

    Joined:
    Apr 2, 2020
    Posts:
    4
    Hey, just wondered if it's possible to somehow backwards engineer a game so you can edit the things in it. A game that I really liked back in like 2007 is broken, and I want to fix it since I want to complete the game. The creator of the game called the project of the game off in like 2011 and many people found bugs in the game.
     
  2. JoNax97

    JoNax97

    Joined:
    Feb 4, 2016
    Posts:
    611
    It is technically possible but not something you would do with any commercial tool.

    You don't clarify if the game is made with unity but let's assume it is (why would you be here otherwise?). The published game is compiled to a binary fromat and the Unity editor can no longer open it. Your two options are asking the creator for the sources to work from, or modifying the compiled game.

    Now this is the kind of thing that requires doing surgery on the binaries and using very advanced techniques to inject changes. If you really wanna go that path, start by googling "hex editing". That may give you an idea of what is like to edit a compiled program.
     
  3. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    This is the type of thing where the answer is yes, but if you have to ask then the answer for you is a hard no. Basically it is like asking if it is possible to build a rocket ship to go to Mars. Anyone who asks obviously hasn't spent the past decade learning the skills which will be required to do so.
     
    inetwiz likes this.
  4. bobisgod234

    bobisgod234

    Joined:
    Nov 15, 2016
    Posts:
    1,042
    You can load Assembly-CSharp.dll in dnSpy and effortlessly modify the game's code.

    If the bug is with data (e.g. prefabs, textures etc), then there are tools like UABE that can be used to tweak these things. This is somewhat harder, but not all that difficult.

    If the bug is within the Unity player itself, then you will have to use a disassembler (e.g. IDA). This is a much harder (but by no means impossible) task. You would be surprised how far you can get just by nop'ing out bad function calls, memory writes etc.
     
  5. ItzNight

    ItzNight

    Joined:
    Apr 2, 2020
    Posts:
    4
    The thing that I'm trying to fix is that there's a big invisible wall that cuts like half of the map, and all im trying to do is to remove that, will UABE help with that?
     
  6. ItzNight

    ItzNight

    Joined:
    Apr 2, 2020
    Posts:
    4
    Nevermind i found a program that can extract the level of the game
     
  7. bobisgod234

    bobisgod234

    Joined:
    Nov 15, 2016
    Posts:
    1,042
    It would be nice if you included the name of your solution, for anyone else who stumbles upon this thread. Nothing worse than googling a problem and finding a thread that ends in "nevermind, fixed it".

    You could use UABE to modify that objects serialized information (probably located in the scene file), or dnSpy to move/delete the object from C#
     
  8. ItzNight

    ItzNight

    Joined:
    Apr 2, 2020
    Posts:
    4
    sorry for not replying, but there's a tool called uTinyRipper which takes the level of the unity game and converts it to a unity file, it might've been legal for me since the creator of the game abandoned and said that anyone can edit the game but idk
     
    geromet and bobisgod234 like this.