VX Ace connecting maps issue

● ARCHIVED · READ-ONLY
Started by Powell 11 posts View original ↗
  1. Using
    Yanfly Engine Ace - Parallax Lock v1.00
    modern algebra Animated Parallax 1.1

    the map size is 6144 by 8192 in jpg format (total map size 12288 by 8192) the only issue I have is how would I display the other side of the map in an animated parallax and have it transfer the player so they would not notice the change on the map? I have looked at map sliding etc
    upload_2018-11-4_5-0-43.png
  2. I did some testing by open the status menu then closing it
    6144 by 8192 5 second pause
    6144 by 4096 3 second pause
    6144 by 2048 1 second pause

    Having a large map isn't really an option with parallax mapping so how would I connect a bunch of smaller maps that use an animated parallax but make it seem like it is just one map? I have tried a transfer player event(s) with no fade but there is a screen flash between the transfer that is noticable. also is there a way to have the animated parallax keep in sync when moving from map to map IE. if map A is on parallax 6 of 16 then map B won't begin at map 1 of 16.
  3. You can't.
    There are scripts for connected maps, but they are intended for tiled maps.
    Parallaxes, especially animated parallaxes need a large amount of RAM. That is what is slowing your game and there is no way around that.
    Splitting the map will break the sync between parallaxes even if you succeed in this.

    Just as an info so that you understand tthe RAM issue: a fixed parallax map needs three tthousand times the RAM as a tiled mmap of the same size. And no, that is not a joke.
    Animating a parallax mmultiplies that again.
  4. So if I was to use Tsukihime's connected maps and a small parallax to animate just the water on the overworld map and animate everything else using events would that work? (also using a event sync update to make sure the events sync on the same maps)
  5. Using Hime's Connected Maps I have 24 maps... all 64 x 64
    01 02 03 04 05 06
    07 08 09 10 11 12
    13 14 15 16 17 18
    19 20 21 22 23 24

    Is this configured right? Edit no... I had to connect all maps in the same notetag on map 1...

    <connect map: 2 64 0>
    <connect map: 3 128 0>
    <connect map: 4 192 0>
    <connect map: 5 256 0>
    <connect map: 6 320 0>
    <connect map: 7 0 64>
    <connect map: 8 64 64>
    <connect map: 9 128 64>
    <connect map: 10 192 64>
    <connect map: 11 256 64>
    <connect map: 12 320 64>
    <connect map: 13 0 128>
    <connect map: 14 64 128>
    <connect map: 15 128 128>
    <connect map: 16 192 128>
    <connect map: 17 256 128>
    <connect map: 18 320 128>
    <connect map: 19 0 192>
    <connect map: 20 64 192>
    <connect map: 21 128 192>
    <connect map: 22 192 192>
    <connect map: 23 256 192>
    <connect map: 24 320 192>

    Using Kread's Event sync update and animating the map with events I can even keep it synchronized
  6. Ok so I tried a bunch of small events to get the same effect but there seems to be some serious "lag" when moving if I connect the maps together, if I did larger event images (ie. perhaps covering 13 by 13 tiles would that reduce the lag of events)
  7. I did notice some strange behavior when setting scroll type to anything other then none using Tsukihime's connected maps script when the map size is not adjusted to be the total map size (example map 1 is 64 by 64 but the total size is 384 W and 256 H) if I sail north or south past the edge of the map the ship disappears and the game gets confused. note this doesn't happen if I set the map to 384 by 256

    Also can anyone suggest a good anti-lag script for large graphic events and is there a minimum parallax size?
  8. upload_2018-12-2_9-51-2.png
    So I have a three frame animated parallax looping horizontally and vertically plus a -1 horizontal auto scroll to make the water appear as it's moving.

    I am sure I could get this to work with autotiles, but is it possible to have autotiles auto scroll like a parallax?
  9. Tsukihime's map connection script will not help you reduce lag. The game renders the small connected maps the same as it would render a large map. Since your map is so drastically segmented (visually) why not make it into three separate maps? One for the green area, one for the sea, and one for the gray area. Since you say the player is using a ship to traverse the sea, I guess there must be a "step on the ship" event, right? You can make it so that the green map ends where the player finds the ship. Then when the player enters the ship, they'll be taken to the sea map, but the start of the map will looks just the same as the end of the previous map, so it gives the impression that it's still the same place. The sea map will end where you land on the grey map. And the grey map will begin where you land the ship. The only transistions would be present when you step in or out of the ship. I don't think the player will mind a flash or fade out/fade in transition for that.

    Autotiles cannot scroll like parallaxes. But there are some animated autotiles for water that are good enough to map a sea.
    The demo for Galv's layers script included a part where he simulates water by overlaying 2 images and setting them to scroll in different directions instead of using frames. His demo doesn't really suffer from lag, but his sample maps are pretty small compared to yours, and he isn't using frame-by frame parallaxes.

    From what I have seen, anti-lag scripts keeps events from updating if the player can't see them. A few also prevent some lag with sprites and animations. I haven't seen any that are made specifically for events with large graphics. I'm not really sure, but lag from events seems to come more from the amound of events in map and the amount of processes the game has to handle because of them.

    Maybe you will have to make smaller maps, use less parallaxes, or limit the use of parallaxes to smaller maps.
  10. The parallax file size is 4 Kb that's pretty tiny and I am using tile set graphics for most of the maps because I am not using the autotiles I just used them as normal graphic slots (with the same image repeated)
    upload_2018-12-2_18-23-1.png
  11. Would it be possible to have a sync script that would take into account what map you are on to determine what tagged scripts need to be updated? For example if you wanted events on a group of maps to always update if your on any of the maps but as soon as you leave those maps then they stop updating and the next group of maps that you go to begin updating.

    Sync Script
    # Put [update] in the event's name and the move route will always update.
    #
    # ~Kread

    class Game_Event < Game_Character
    #--------------------------------------------------------------------------
    # * Determine if Near Visible Area of Screen
    #--------------------------------------------------------------------------
    alias_method:)krx_alfix_ge_nts?, :near_the_screen?)
    def near_the_screen?(dx = 12, dy = 8)
    # YEA compatibility
    if $imported && $imported["YEA-CoreEngine"]
    dx = dy = nil
    end # YEA compatibility
    return true if @event.name.include?('[update]')
    return krx_alfix_ge_nts?(dx, dy)
    end
    end