Tutorial: Angry Birds Android backup Page 1
  • Few days ago I wanted to update my OS from unrooted Android 1.6 (on LG GT540) to the newer one. I didn't want to waste all of my progress in Angry Birds so I came up with the solution for backing up save files.

    Unrooted system can be a pain. You can access and view files in the AB save files folder but you can't list the contents so actually you have to work blindly. You also don't have the access to the standard cp command (or maybe there isn't one in 1.6 version?) so copying saves isn't that trivial. But we have tricks for that.

    First you need to install some terminal for your phone. I recommend ConnectBot (just find it in the Android Market and download, it's free). After launching it select 'local' from the dropdown list on the bottom of the screen and type anything you want in the field on the right. After you press OK you will see the dollar sign. I assume you have mounted your SD/microSD card in your phone. Then you will need to type following commands:

    cd /data/data/com.rovio.angrybirds/files
    cat highscores.lua > /sdcard/ab_hi.lua
    cat settings.lua > /sdcard/ab_set.lua

    If you also want to backup your Angry Birds Seasons:
    cd /data/data/com.rovio.angrybirdsseasons/files
    cat highscores.lua > /sdcard/abs_hi.lua
    cat settings.lua > /sdcard/abs_set.lua

    I only backed up highscores.lua and had to complete all Golden Eggs again because Golden Eggs are stored in settings.lua

    Now you have copy of the Angry Birds save files. If you want to restore saves you need to install Angry Birds [Seasons], complete at least one level and type in ConnectBot:
    cd /data/data/com.rovio.angrybirds/files
    cat /sdcard/ab_hi.lua > highscores.lua
    cat /sdcard/ab_set.lua > settings.lua

    cd /data/data/com.rovio.angrybirdsseasons/files
    cat /sdcard/abs_hi.lua > highscores.lua
    cat /sdcard/abs_set.lua > settings.lua

    Tested on two different LG GT540 phones but on nothing else.
  • 65 Comments
  • I too recently switched phones... & also have an unrooted droid. I used an app from the market called Angry Birds Backup & Angry Birds Backup (Season) by Yongsin. It worked like a charm! One touch to backup, then to restore I opened up AB & played one level, then under app settings force stopped the AB app, then opened the backup app & touched restore. Voila! Cannot guarantee it works on all android, but did just fine on mine (verizon droid). Hope this helps!
  • Yea, it's probably a lot easier but it's not free : P I know that $1 is not much money but you can save even that dollar by backing all up by yourself. And in my country paid Android Market is unavailable. : )
  • Sorry did not work on samsung galaxy s. you will see your old highscores but when you play a level from 1 or 2 starts to 3 stars then you got problems. the game shut down and the new highscore is lost. :(

    Did somebody know how to fix this problem?
  • It looks like permissions problem. This thing should do the trick:
    $ cd /data/data/com.rovio.angrybirds/files
    $ chmod o+w highscores.lua
    $ chmod o+w settings.lua
    (You should guess but don't type "$ cd ...", only "cd ...", etc.)

    I am not sure but you might need rooted phone and issue those commands as root.
  • thx homie,

    i try it tomorrow and post my feedback.
  • tomorrow was to long to wait. i tried it now an it works now.

    important: change the permission for highscores.lua to rw-rw-rw-
    it did not work when the permission is set to default after the copy!!!

    after a hard work from 6 hours with rooting and so on
    great thx to homie
  • I'm happy to hear that it did worked but it's sad that Android won't let you chmod your own files. Android dynamically creates user for each application. If you created file highscores.lua you should be able to modify it's permissions without need to do it as a root.

    Actually I think you had this problem because you missed one step:
    If you want to restore saves you need to install Angry Birds [Seasons], complete at least one level and type in ConnectBot

    Am I right?
  • @homie Great writeup! Thanks for posting. Tempted to turn this into a full blown article. What do you guys think?
  • Thanks BirdLeader : ) I couldn't find any tutorial about backing up AB files on the net, so I figured out the solution on my own and I thought it would be cool if I share this one with others on a site where I find great infos about Angry Birds : ) Also if you want to use it in an article, please reword my tutorial, because English is not my native language and I'm sure that I made some mistakes writing the post.
  • Hi,thanks for the guide. I got the backups, but it doesn't work for restoration on my honeycomb transformer tablet. Cb says it cannot change folder to the com.rovio.angrybirds. Any ideas? Ty.
  • Bummer. If you played at least one level try issuing those commands:
    For Angry Birds:
    $ cat /sdcard/ab_hi.lua > /data/data/com.rovio.angrybirdsseasons/files/highscores.lua
    $ cat /sdcard/ab_set.lua > /data/data/com.rovio.angrybirdsseasons/files/settings.lua

    For Angry Birds Seasons:
    $ cat /sdcard/abs_hi.lua > /data/data/com.rovio.angrybirdsseasons/files/highscores.lua
    $ cat /sdcard/abs_set.lua > /data/data/com.rovio.angrybirdsseasons/files/settings.lua

    cd's only purpose was to not write this long path twice.

    It's all about the permissions. Root user doesn't care about permissions, he can do everything despite of them. So if the above one won't help you can try rooting your system. My solution is actually based on the security hole, because one user shouldn't be able to touch others files and Honeycomb is newer Android where it could be fixed and proper chmods could be set.
  • Here's my app to backup all three Angry Birds (including Seasons & Rio): https://market.android.com/details?id=com.appack.angry_birds_backup
  • Is there a way to do something similar to transfer the progress between the free and paid version of AB seasons?
  • I think you can do the same thing and it will work just fine. You can also try installing AB:S [paid] over the AB:S [free]. All game files should be overwritten but not save files. Just remember that if you uninstall the game all saves will be lost.
  • @homie -- I believe that the free versions and paid versions are completely separate games and scores cannot cross over. However, I am only familiar with the IOS platforms, so maybe on Android it is different.
  • Unless by "free" he means the ad supported version. If so, they can.
  • Tried this on an LG Revolution for a friend of mine. Get the message NOT FOUND when attempting to CD to the directory /data/data/com.rovio.angrybirds/files. Even trying to CD to just /data gave a NOT FOUND error. Trying to go up a level gives PERMISSION DENIED. Any assistance would be greatly appreciated.
  • @heathen: looks like his data directory is located in another place. Bad thing that systems on different phones acts like different distros. It would be a lot easier if he had rooted phone and root access. If the terminal application (ConnectBot, etc) is allowed to escalate it's privileges to root, do it by performing command:
    $ su
    then search for com.rovio.angrybirds directory
    # find / -name 'com.rovio.angrybirds'

    And then you can go to this directory instead to the one posted by me.

    If he doesn't have rooted phone then you won't be able to use find command because data directory doesn't allow you to list it. First check what is your data directory
    $ echo $ANDROID_DATA

    When it won't give you anything you can take a look at your filesystem structure
    $ ls /

    Your structure can be somehow unusual. For example in a standard Linux there is a /bin folder on the /. In my Android it's located in /system/bin or /vendor/bin.

    If you can't manage after doing what I wrote then post here what did the Android outputted you after performing ls / and echo $ANDROID_DATA

    PS Dollar sign ($) at the beginning of the line means that you need to type the command as a normal user. Hash sign (#) at the beginning of the line means that you need to perform this command as root. You don't include this sign in the command.
  • Using ConnectBot, echo $ANDROID_DATA gave me the following:

    /data

    After that, we tried to root the device using the latest of SuperOneClick (version 2.1.1), but it would not work. It always stuck on WAITING FOR DEVICE. Tried doing suggestions of author or program if you get that message, but none worked. I know that this isn't the place for teaching rooting of Android devices (in this case, 2.2.2), but if someone can send me an email with either instructions or directions to another site, I'd appreciate it. TIA.

    [Note: I have found many instances of what should work manually [they are all different, so it is yet to be determined which is more practical to use]. Was hoping for a single program like SuperOneClick]
  • I'm rooted, and I used a file explorer to find the highscores file (data/data/com.rovio etc.). I exported it onto my SD card and put the card into my computer. The highscores.lua file was just a bunch of Chinese characters! I was hoping I could edit it. Can anyone help me with this??

    Oh yeah, go to this link to figure out how to root: http://lifehacker.com/5789397/the-always-up+to+date-guide-to-rooting-any-android-phone make sure that your computer has all the drivers for your phone.
  • All Angry Birds data files are encrypted and not editable.
  • @Yanchenko, I was using your backup app, had to switch phones due to warranty replacement, when I went to reinstall your app and it's gone from the market! Argh! Now I've got a backup I can't use! Help! I had three stars on all but one level in Halloween Seasons.
  • I just picked up the new Galaxy Nexus from VZW and am trying to use ConnectBot to save/restore my Angry Birds progress, (original, Seasons, and Rio). I successfully saved the files from my old Moto Droid, and copied them to the internal storage of the new Nexus, but after I did the "cat" to get them back to the app directory on the Nexus, I still don't have the progress I did on the old phone.

    I did this backup/restore a number of times on the old phone with no issues, but now its not working on the Nexus. I saw something on another site that mentioned permissions, does the Nexus have something that causes the permissions to be wrong? I got an error when I tried to do a "chmod" from ConnectBot.

    Any help would be great as I don't want to lose all the time I put into these games. Thanks!
  • Have you completed at least one level before restoring backup? Also you can use apps linked here by other users.
  • Yeah, I completed at least one in each. I'm guessing its a permissions issue, but I don't know how to fix it and do not want to have to root the phone.

    What do you mean by "you can use apps linked here by other users"? I'm new to the site and not sure what you're talking about.
  • Ah, okay thanks. I checked that out and contacted the developer. Hopefully they'll be able to help me.
  • Or you could just install the app on the first phone, backup the files, install the app on the second phone and restore the files : P If you don't have access to the old phone you can try restoring files that you backed up using my method.
  • Angry birds fan 1000 responded to my messages and was able to help me with this. I got all my save data back. Turned out that I just had the wrong path for one of the apps and another was permissions issues. So thanks to everyone here and a huge thank you to Angry birds fan 1000 for his help too!
  • For Android users - there is a free app called Titanium Backup that lets you back up all your apps. Thrn you can do several things like restoring later on.
  • Have you tested it out on an unrooted phone? Although my method didn't work for few people out there it did work for me. It's hard for me to troubleshoot their problems, because I don't have access to their phones, but for me the problem was that permissions weren't allowing me to list the directory, so I had to know the names of the files. Without this you can't backup like whole directory, because backing up folders is just listing them and copying every file and doing the same thing above for folders recursively.
  • Well, good job for getting it to work! I didn't try it yet, only because my phone was rooted when i got the app. Then when i did a factory data reset, (because i reinstalled a Phone-Mod) i recovered the files from Titanium Backup and restored all of them
  • Anyone know why despite using the AB backup apps to save all my progress before switching phones that downloading the apps on my new phone and trying to recover them isn't working? I had a R2D2 Droid and recently upgraded to the Droid 4.
  • I've found a android app on the market very usefull... Backup 2SD for the birds... It let you backup ABO, Rio, Seasons and Space scores and info. FOR RESTORE: You need to finish AT LEAST ONE LEVEL on the version to restore BEFORE you press the button on the app. Tested and working on my phone. Reinstalled without troubles.
  • I will investigate this - thanks.
  • I have a samsung galaxy GS3, unrooted. When I tried the first method I got "permission denied". Then I tried the second method with the "chmod" and I got a "bad mode" error. Now what do I do.
  • @cillmylandlord CmdrBond is trying to write the other backup tutorial for jelly bean users.
  • @Birds - I am succeeding ;)

    It is just taking a little longer than planned. Damn this real life stuff.

    @cillmylandlord - I have a stock (not rooted) GS3 and everything works fine.

    Keep your eyes peeled - I hope to have it written and approved soon.
  • @CmdrBond: any progress on transferring the savegames from ICS to JB ?
  • The data files inside AB are the same.Try using carbon but it only compatibles on ICS and JB
  • @Bert - yes i have successfully transferred scores between platforms. Walkthrough is nearly complete.

    What I have had difficulty with is transferring between a couple of versions of AB:S due to the introduction of file encryption.
  • @Birds - Is carbon working on a not routed phone?

    @CmdrBond - Wow, that sounds great! Could you at least share what you already have and edit/complete the post as soon as you make progress? I'm already suffering some serious withdrawal symptoms. . .
  • @Bert yes, the description says that it doesn't need root
  • @Bert - I am doing the last section now. Real life (the wife) keeps interrupting, and I know I keep pushing the deadline back, but I hope to be taking the last of the screen shots tomorrow and have it submitted by Wednesday.

    I can only apologise for the delay.
  • I know the feeling about "life" interrupting. Any chance you have a sketched tutorial together that most of us who are more expert users could get a hand on?
  • Not really, I am taking the wife away for the night, but have the weekend off and am fixing my car next weekend, so it will be finished by Sunday come Hell or high water.
  • Status update

    I intended to have everything done by Sunday. Real life took over again - sorry.

    Saturday I was out with the wife, then Sunday was spent with a friend who has terminal cancer, so I couldn't really get out of it.

    I am on late shifts all week and am not good at getting up in the morning, so I will try and get this finished before I go to bed (provided the wife doesn't complain about me hitting the sack at 0200).

    The good news
    I was trying to get a script to work to simplify the steps you, my readers, will have to make. After lots of issues I finally got this script working at 0100 on Sunday night/Monday morning.

    I now have all the screenshots for the last section of the guide, and it is only this section left for me to complete, so *fingers crossed* it will be ready by the weekend or sooner.

    I hope that when you guys see the guide, you will appreciate why it took me so long to sort out, despite the fact I am working from other peoples instructions for the most part.

    I will part with one message

    Turn off automatic updates for your AB games, just in case Rovio roll out their cloud sync before you have managed to do your backups.
  • 1) @CmdrBond - Kudos to you for taking the time and effort.
    2) I re-read through the posts to see if I missed anything... Will this only handle moving from Jelly Bean to Jelly Bean? Or will this handle moving from Gingerbread to Jelly Bean? Or either?

    Thanks!
This discussion has been closed. Please check the new forum.
← All Discussions
Post in the New Forum!