Region Battlebacks

Last Updated: 2011.12.30
Download Link
Github Link

RPG Maker VX Ace lacks any kind of a good battleback management system. All battlebacks for the overworld are predetermined based on their autotile. This becomes a problem when users would like to use different autotiles or when users aren’t using an overworld tileset. This script allows developers to bind certain battlebacks to regions and have the battleback shown change and vary depending on the region ID used if no specified battleback is used for that map.

Insert these notetags into a map’s notebox to give it custom battlebacks based on region:

<region battlebacks>
  x-y: string
  x-y: string
</region battlebacks>

This will set the region x to change battleback y to the string for the image filename. Insert as many “x-y: string” as needed for custom battlebacks. The region battlebacks that aren’t defined will refer to the hash in the Region Battlebacks script module.

And that’s all, folks!

32 comments on “Region Battlebacks

  1. I’m noticing an error on my end with this script–which of course probably just means I’m screwing up–it tells me it can’t find the corresponding graphics.

    Example: In my map’s notebox I have

    3-1: Dirt1
    3-2: Grassland

    When entering into battle it gives me an error saying it can’t find Graphics/Battlebacks2/Dirt1

    I tried instead to edit the Defaults in the Script and it returns with the same missing graphic error.

    I know there is no Dirt1 in Battlebacks2, but it seems to want Dirt1 in both Battlebacks1 and Battlebacks2 rather than Grassland in Battlebacks2.

    My apologies for such a long comment, but your most gracious help will be appreciated. :)

    • That’s really strange. I tried using the exact same notetags you are and not receiving an error. More than likely, this isn’t an error from this script, but rather, another script that modifies the Cache.

      • Actually it turns out I have the same problem even if I remove your script entirely and just modify the default scripts handling battlebacks. Anyway, thank you for your help, this is going to require some digging on my part.

  2. Why it does not work? I have written 1-1: sea 1-2: sand and tested in different ways, but still do not see what I write???

  3. Q: I read this script to see the designated battle back numbers.
    SO! My question is: How do i use the grass land battle back?
    And could you make a video tut on how to make our own custom battle backs?

    I tried changing 0 to 11, but when I walk on the squares marked 11 it only gives me
    an error message.

    Script ‘window_selectable’ line 61: ZeroDivisionError occurred.

    Divided by 0

    This also happens when I leave it blank but leave the encounter range on “Whole”.
    Please help me when you can!

    • I know this is over 3 years late, but for anyone wondering how to do this, here is what I did.
      1. Export a background2 image
      2. Load into photoshop, or something similar and delete everything so it is just a transparent background(for your case, make it all black instead )
      3. Save this as empty.png
      4. Import into the Background2 folder
      5. use “empty” for any of your x-2: values

  4. The background has two parts.
    I wrote

    1-1: GrassMaze
    x-y: string

    It cahnaged to Grassmaze but I also want to change to Forest2. How I do that?

  5. I don’t get it.. What i’ll do with that “Region_Battlebacks.rb” file? Where i put it and must i use it on “Specify Battleback” or something?

    Those notes aren’t working if i do only that.
    Can someone explain me step by step what to do, please?

  6. Hello Yanfly! Thanks for your Uber Wonderful scripts :). I am using this script and works flawless, however I came up with a doubt which I would like to ask you. Im implementing a day/night system in my RPG, and i intend to change the battlebacks of battles for day and night (mainly, change the sky to day and night) but I ran out of ideas on how to do it, Is there any possibility to implement or slightly modify the script to allow this?

  7. I’m getting this when I try to playtest

    Script ” line 194: NameError ocurred.

    undefined method `normal_battleback1_name” for class `Spriteset_Battle

    I copy/pasted so it should all be good there. Not sure what’s going on.

      • Are you using any other scripts? Sometimes they can interfere with eachother. It’s been so long I can’t recall what I did to fix this issue but make sure it’s close to the top of Materials and try removing any other scripts to see if it works then. If it does then add other scripts one at a time to see which one is causing the issue.

  8. It doesn’t do anything. I placed the script under Materials and entered

    1-1: Meadow
    1-2: Grassland

    in the map’s notebox.
    When I now start a battle on region 1, it still shows the standard background for the map.

  9. Best script I have found yet! I love it! I just spent the last half-hour editing the region part of the script to match the regions and it works amazingly!!!! The desert battles take place in the desert, the battles in the forest part of my map take place in the forest, my sea battles take place at sea, etc…, etc…
    THANK YOU!!

  10. Thanks for this script! I actually changed the region settings in a map thinking it would already be able to do this only to find that it wasn’t in the engine by default, so I’m glad you made a way to have this functionality!

  11. Io got a bit of a problem. Whenever I try to enter a battle with this script on, I get an error that leads me to this line. It’s line 263 in the script ‘ return region_battlebacks[$game_player.region_id][0]

  12. Despite all efforts to try and get this to work, I keep on ending up with only the backgrounds specified in the Map’s Properties, not the note box. If no backgrounds were chosen, I’d end up with black nothingness.

    I have even placed the script directly above Main and below all other scripts to hopefully ensure that it takes priority over any other scripts. I even did a search for all of the classes that’ve been edited and yet, I still can’t find the cause of the problem.

    I am using Enu’s Tankentai script (V1.00) alongside your Battle Engine. (V1.22)

  13. Is there a way to make the region-property battlebacks take priority over the ship-riding battlebacks, or eliminate the ship-riding check process altogether? I want my different ships to have different battlebacks, and I’m willing to make sure every region-activated map is fully covered in defined regions.

Leave a comment