GitHub - 0xCsy/PixelWorldsCheatEngine

Pixel Worlds - Cheat Engine

Summary
  1. Introduction
  2. Prerequisites
  3. Tutorial

Introduction

A short tutorial to understand how to integrate cheat engine on pixel worlds.

Why should you make your own cheat table? Nowaday everything related to pixel worlds has a steler, so you may get virus or your account will be stolen.

You will understanding what to change, it's a basic understanding of how to use cheat engine on unity game, you will learn how to change integer, how to skip a function call,...

Prerequisites

Download the lastest version of cheat engine: https://www.cheatengine.org

Tutorial

implementation

  1. Open the game file
  2. Open cheat engine or the source from this repo
  3. File -> Open Process -> Pixel Worlds (now the cheat engine should be attach to the game, you can now overwrite the game memory)
  4. Mono -> Activate Mono Features (with mono feature you will be able to save sometime if the game has update, learn more Cheat Engine Wiki - Mono and Mono - Documentation )
  5. You can now use the source code.

basic

  1. Mono -> Mono Dissector (with mono dissector, you will be able to review the mono class, most of the time the game script is located on the Assembly-CSharp.dll but some developper may use differente one.)

image

  1. For this first tutorial we will be try to unlock all recipes (for steam version), inside the Mono Dissector -> Assembly-CSharp.dll -> look for the class PlayerData -> Methods -> HasUnlockedRecipe.

image

  1. After founding the method you can see 'HasUnlockedRecipe(blockType: World.BlockType):System.Boolean', Boolean always return True or False, on binary 0 represent False, and 1 represent True.
  2. Go to your cheat engine and open Memory View, right click on any address -> Go To Address (we know the class and the method so it will be easy to found the address) -> Enter: PlayerData.HasUnlockedRecipe (Format: Class.Method).

image

  1. On the memory viewer, you can see 3 columns (Address, Bytes, Opcode),we will make change through Opcode, for the Opcode of HasUnlockedRecipes you can see for the first line mov [rsp+08],rbx and the second line push rdi,... So what should we do to unlock all recipe?

image

  1. Left click on the Opcode first line and change it to mov eax,1 and the second line to ret, easy right? so for a simple understanding with mov eax,1 you change the result to 1 and ret you ended the function.

image

  1. Result

image