Jump to content
xXL3g3ndXx

A beginner's guide to brave frontier modding with IDA Pro [PICS]

Recommended Posts


 I would need help for non-rooted devices (will test out later) if it is possible to just paste back the libgame.so into the .apk file through WinRaR and installing it. Any experts please help out with this section. If signing of the apk needs to be done, there are tutorials that you can find around here or on google, stay tuned!

For non-rooted devices, the people will have to sign the apk first.

Those are the steps I do when signing the apk.

 

1.All you have to do once you have done what you want with the libgame.so, move it into the apk using WinRAR.

2.Extract the AndroidMulitiool folder into your C:Disk (http://www.mediafire.com/download/7px0d9i51cv5boc/AndroidMultitool_3.3.zip)

3.Copy/ Move the .apk with the modified libgame.so into the files section of the AndroidMultitool (not needed but recommended)

4.Make sure the .apk doesn't have any spaces in the name of it. (Eg: BraveFrontierMod.apk)

5.Go back to the AndroidMultitool folder and run the AndroidMultitool.exe.

6.Go to Signing and click on the ellipses [...] and go to the location of your .apk with the modified libgame.so (C:\AndroidMultitool\Files ; if you moved it to the files section as recommended.)

7.Click sign. 

8.Go to your C:\AndroidMultitools\Signed_apk and you should see name_signed.apk (Eg: BraveFrontierMod_signed.apk)

9.Rename it to whatever you like.

10. Move it to your device, install, and play.

  • Upvote 3

Share this post


Link to post
Share on other sites

Instruction to do nothing is a NOP ( No Operation ) HEX C0 46 or you can put 00 to make a byte not do anything.

 

like this

[ 01 20 ] MOVS R0, #1

[ C0 46 ]NOP

 

or 

[ 01 20 ] MOVS R0, #1

[ 00 00 ]

 

Instead of repeating code or use other weird looking stuff its better to use those two alternatives.

  • Upvote 3

Share this post


Link to post
Share on other sites

Introduction

Starting as a legit player, I have been playing Brave Frontier for around 2 months. After that I got bored of the game and decided what exploits could be done to this game to get more fun out of it. Initially, I leeched off damage hacks and stats of my units. This made the game fun but there was never a mod that gave me exactly what I wanted, thus, I started to learn how to mod the game myself through tutorials.

 

Learning ARM from scratch has been quite a challenge for me even with some programming knowledge. As I have seen motivated people wanting to learn how to mod as well as the lack of tutorials of how to get started, I decided to write this guide to help people out as well as get help from people that will eventually surpass me.

 

While I started from scratch, I have been trying to tinker around with IDA Pro and might use some rather advanced terms, please notify me if you do not understand anything so I can make the tutorial easier to understand.

 

TL;DR

  1. Started Legit
  2. Got bored
  3. Leeched hacks
  4. Hacks not what I want
  5. Learnt to make own mod
  6. Now want to teach others how to mod

Required Tools

·         IDA Pro 6.1

·         HxD

·         WinRaR for extracting the apk file

·         ARM to ASM Converter

 

Optional Tools

Here are some extra files that are good for your reading reference/ modding reference

·         Original 1.1.6 Brave Frontier Global libgame.so

·         Book on ARM

 

the IDA Pro 6.1 link and Original 1.1.6 Brave Frontier Global libgame.so is the same could u fix it please :) 

BTW thanks for your guide

Share this post


Link to post
Share on other sites

For non-rooted devices, the people will have to sign the apk first.

Those are the steps I do when signing the apk.

 

1.All you have to do once you have done what you want with the libgame.so, move it into the apk using WinRAR.

2.Extract the AndroidMulitiool folder into your C:Disk (http://www.mediafire.com/download/7px0d9i51cv5boc/AndroidMultitool_3.3.zip)

3.Copy/ Move the .apk with the modified libgame.so into the files section of the AndroidMultitool (not needed but recommended)

4.Make sure the .apk doesn't have any spaces in the name of it. (Eg: BraveFrontierMod.apk)

5.Go back to the AndroidMultitool folder and run the AndroidMultitool.exe.

6.Go to Signing and click on the ellipses [...] and go to the location of your .apk with the modified libgame.so (C:\AndroidMultitool\Files ; if you moved it to the files section as recommended.)

7.Click sign. 

8.Go to your C:\AndroidMultitools\Signed_apk and you should see name_signed.apk (Eg: BraveFrontierMod_signed.apk)

9.Rename it to whatever you like.

10. Move it to your device, install, and play.

Hi Optimum! Thanks for the guide! I will add it in later on when I get home!

 

Instruction to do nothing is a NOP ( No Operation ) HEX C0 46 or you can put 00 to make a byte not do anything.

 

like this

[ 01 20 ] MOVS R0, #1

[ C0 46 ]NOP

 

or 

[ 01 20 ] MOVS R0, #1

[ 00 00 ]

 

Instead of repeating code or use other weird looking stuff its better to use those two alternatives.

Hey Anon, Thanks for this tip! Didn't know you could do that (obviously i'm still new) :x Will add that into the guide.

 

the IDA Pro 6.1 link and Original 1.1.6 Brave Frontier Global libgame.so is the same could u fix it please :)

BTW thanks for your guide

I've fixed the link, hope you are able to mod the game yourself! :)

Share this post


Link to post
Share on other sites

Hi Optimum! Thanks for the guide! I will add it in later on when I get home!

 

Hey Anon, Thanks for this tip! Didn't know you could do that (obviously i'm still new) :x Will add that into the guide.

 

I've fixed the link, hope you are able to mod the game yourself! :)

i'm trying right now :)

btw i have some idea but don't know it possible or not cause i really don't know much about the code

hope some one contact me and give me answer :)

here my email : filesabes@yahoo.com.vn

Share this post


Link to post
Share on other sites

Can we use this to get specific units as mission rewards? Like you always get metal gods for a certain mission that you set?

Share this post


Link to post
Share on other sites

Can we use this to get specific units as mission rewards? Like you always get metal gods for a certain mission that you set?

 

I believe that is possible if you can find the correct function :)

Share this post


Link to post
Share on other sites

Really? Think you could help? I don't think I'm capable of doing that just yet lol

Share this post


Link to post
Share on other sites

lol, I can only try. I'm new into these modding stuff too. Just want to help others that are motivated enough to start. Hopefully we can start up a modding community for brave frontier in gg.net and have some exclusives :D

Share this post


Link to post
Share on other sites

This is going to be really helpful, Thanks!

Share this post


Link to post
Share on other sites

New here HUEHUE. Can anybody tell me what is the keyword for ZEL and KARMA? I can't seem to find the right one.

 

Thanks!

 

EDIT:

 

I found the right one. Thanks anyways XD

Share this post


Link to post
Share on other sites

optional rooted device :

you can edit libgame.so right away at you device,

just download Hex Editor app at playstore, then edit libgame.so with it

 

well you still need ida pro at pc for knowing the address of its function that you wanna edit   

Share this post


Link to post
Share on other sites

Can we use this to get specific units as mission rewards? Like you always get metal gods for a certain mission that you set?

 

I also looking at this.

 

Hopefully there is a way.

New here HUEHUE. Can anybody tell me what is the keyword for ZEL and KARMA? I can't seem to find the right one.

 

Thanks!

 

EDIT:

 

I found the right one. Thanks anyways XD

 

Had you successfully changed the amount of zel and karma it drops ?

Share this post


Link to post
Share on other sites

I also looking at this.

 

Hopefully there is a way.

 

Had you successfully changed the amount of zel and karma it drops ?

 

Yep!

I've already changed the amount of zel and karma, Monster HP, Monster Attack, Arena Attack, and Monster Def.

Now I'm trying to find the right function for the Honor Points, the Monster IDs and their Capture Rates as well but I think the Capture Rates are server sided? I THINK.

 

I've already modded BF Japan and Global. I'm having problems with BF Korea hahaha that game has more codes than the other two.

Share this post


Link to post
Share on other sites

as I can make one similar for IOS version
I would be helpful if you could help me and other forums
have not helped me and I think this forum is expected and serves its user

 

Share this post


Link to post
Share on other sites

What do i have to do for edit monster's HP in Survey Office and Karl in Reseach Lab???

Share this post


Link to post
Share on other sites

Thanks a lot for this tutorial I really appreciate it, does anyone know if theres another application similar to this arm asm converter ? The one provided doesn't seem to work, it often doesn't show the equivalent hex code of the instruction provided.

EDIT: It seems it's not possible to multiply the value in a register directly thats why the converter wouldn't work. I did however find this site.
Although my smartphone is rooted I can't find the library file anywhere, any suggestions ?

Never mind I used Root Explorer. I am currently trying to figure out if it's possible to create a custom code cave which I can jump to and do my stuff then jump back. 

Edited by aspras

Share this post


Link to post
Share on other sites

Hi, mind to make a tutorial for puzzle trooper?  A gumi game too. By the way, what is the computer language used in .SO file ?  i cannot understand the language, pls help

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Similar Content

    • By RazarX
      Hello admins, can you help me? Im using GG on Mobile Legends, but im disconnecting in the game after i changed the value of damage? what can i do to not disconnect ingame? Thank you.
    • By Robchoc
      Hi 
       
      I have just come across this YouTube channel that has lot's of tutorials for Cheat Engine.
      By watching these I have learned more about how GG works and how to hack games.

      I highly recommend this to anyone.

      Playlist
    • By Kallalal_spamz
      This might be ligitness
    • By sfan85

      Name of Game:  Battlestation Harbinger
      Cheat Type: Resources
       
      Battlestation Classic uses the same encyrption algorithm and can by hacked by following the same method listed below.
       
      I've been lurking the request thread for someone to come up with a way to hack Battlestation Harbinger for a while. Took me quite a while to figure this one out. Reverse engineering the Java component from this games PC-Release, the game stores most integer vaues as 2x encrypted values. Hacking it on android makes it very uncomfortable but not impossible. A small tutorial on how to:
       
      Step 1: Navigate to https://jsfiddle.net/sfan85/4b6p77xw/36/ it's a small webbased tool i wrote to decrypt the values. (content from jsfiddle.net is "opensource" and you can see the encryption algorithm if you want to write something yourself.)
      Step 2: Write down the following values somewhere: 87312 and 2863308842 it's the encrypted values of 90000 (more than you will ever have to spend) we will need those values for later use. Do not tab out on your Phone, it will reset the addresses when you re-tab in. 
      Step 3: Get the current encrypted value from the tool.

       

      Step 4: Search for the 2nd Encrypted value (usually only yields one result) 

      Step 5: Tap and hold your found value and select "Go to the address XXXXXXXX"
      Step 6: Scroll up slightly (-4 Bytes) and confirm the values (Remember not to tab out)

      Step 7: Replace the values with the values from Step 2, this will give you 90000.

      Step 8: Perform some ingame-action (repair, sell, buy) to update the display value and you're all set!

       
      Enjoy. P.s. this works for most other values too (even stuff like shields, though i never found it necessary to do it for shields)
       
      Edit1:
       
       
      In order to gain XP and unlock all Ships you have to start a new game, pick a crappy ship. Alter your Scrap value to 90k and don't add any additional weapons on your ship. Find enemies so they can kill you. When the game ends, you will gain a massive amount of xp because of your current scrap value.
       
      Edit2: Cosmetics.
       
       
      Attachment: Imgur Album
    • By AnonThanatos
      Quick modding guide for Brave Frontier.
      Author: Anon-Thanatos
      Required tools:
      IDA Pro
      Android Tool
      HxD
      Ok lets start!
       
      First decompile/unpack the Brave Frontier APK by using Android Tool.
      Once it is done launch up IDA Pro, Then select new and close down the popup window that comes next "if it comes up a window".
      Drag and drop libgame.so into the IDA window the libgame.so are located in lib\armeabi folder.
      Make sure filetype is set to ELF for ARM and then press OK.
      IDA will now disassemble the .so file and depending on your computers speed it will take quite some time for it to complete. Once done you should have 2 forms open Functions and the ASM code window.
       
      Lets start with Karma Hack.
      In function windows search for function GetKarma and click it to make it show in the ASM window.
      Now you should see this,
      BL      _ZN16BattleRewardList14getRewardPointEv ; BattleRewardList::getRewardPoint(void)
      This is the part we want to change.
      select that part with the mouse and then go to hex view there you should see following hex values selected FF F7 9F FF
      Those 4 bytes are the ones we are going to edit.
      Now open HxD and open libgame.so into it and then search hex value
      FF F7 9F FF 00 F0 E9 FB  08 BD 00 00 70 B5 17 4C
      You should come to Offset 0x311A38 and see the FF F7 9F FF there.
      Now we want to make the original instruction into a MOVS R0, 0xFF00.
      To do that we add in the following values FF 20 00 02 "the FF is a value you can change to anything you like. FF is max and will make you always get 65k+ Karma" I dont recomend that high since the karma will pile up really fast and if you have alot of karma on your account it will most likely get banned so go for a fairly low number instead, you will have to test around with it.
       
      Next function you need to edit is the getSendKarma (it is located a couple of functions above the getKarma function)
      you will see the instruction
      BL      _ZN16BattleRewardList14getRewardPointEv
      There aswell. Just edit it the same way you edited the getKarma function.
      Ok now the Karma hack is completed, next will be Zel hack.
      Go to function getZel you see same instruction there as in the karma one. Do same thing as you did in karma hack.
      Next go to getSendZel and edit that instruction aswell. Remember dont do to high values because it will be obvious that you are hacking and you will get banned.
       
      This method of editing will work on alot other functions and its just to test around and explore the files functions.
      (Sometimes you will have to use different instructions like MUL to mutiply or ADD to add a value.)
      Here is a good page with Hex code for different ARM opcodes LINK
       
      If you got any questions then you can contact me on skype.
      skypename: gm-enigma
      I will answer when i got time and try help you with your questions as good as i can.
×