RMVXAce Tips and Tricks

Discussion in 'RMVX Ace Tutorials' started by Archeia, Mar 5, 2012.

  1. Archeia

    Archeia Level 99 Demi-fiend Staff Member Developer

    Messages:
    14,481
    Likes Received:
    14,086
    Location:
    Game Dev Salt Mines
    First Language:
    Filipino
    Primarily Uses:
    VNM
    Hello everyone~ This is Archeia_Nessiah, bringing on some tips and tricks about RMVXAce.

    While I was making a game with RMVXAce I have noticed a lot of new things about it, here are some of them!

    I will update this thread as I get more, but feel free to add more stuff if you wish!

    You can find more over here: http://divisionheave...ce-workarounds/

    1.) My Parallel Process Event won't run whenever I'm talking to somebody!

    • Why? The reason why this happen is because of how RMVXAce handles event processing. This is due to Fiber.yield. It's going to be a long explanation and the only way to "Fix" this is to rewrite the game interpreter or the message system. But fret not, there's a way to fix this!
    • Why should I be concerned? If you like making animated events through parallel processes, they would stop whenever a message box is visible!
    • How to fix? Just put the commands of the parallel process event inside a loop or use labels. It will run normally~
    [​IMG]
    2.) Shift Mapping destroys auto-tile passability!

    • Why? This is intentional and only works with ceilings but not on walls. Unconfirmed, but it might only be A4 wall tops. Someone check this out?
    • Why should I be concerned? You can walk through autotiles for ceilings. [​IMG]

    How to fix?Kread is awesome to provide us with a very simple fix :>

    Code:
    # 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
     
    Last edited: Nov 1, 2018
    #1
    Marquise*, ponyo, Bonkers and 25 others like this.
  2. ~Mad Hatter~

    ~Mad Hatter~ Warper Member

    Messages:
    2
    Likes Received:
    0
    Location:
    Germany
    First Language:
    Germany
    ..Really? So easy?.. Just a Loop Q__Q?

    In Rpg XP, i used a lot of branches, ifs and Variables to fix it..xD

    But ok, saved a lot of time. ^^

    Thank you

    Madhatter~
     
    #2
  3. amerk

    amerk Veteran Member

    Messages:
    1,439
    Likes Received:
    510
    First Language:
    English
    I agree, this makes it very easy to do. I haven't used much for parallel processes as of yet, but I've wondered about getting things to loop before.
     
    #3
  4. Archeia

    Archeia Level 99 Demi-fiend Staff Member Developer

    Messages:
    14,481
    Likes Received:
    14,086
    Location:
    Game Dev Salt Mines
    First Language:
    Filipino
    Primarily Uses:
    VNM
    Updated~ This time about Shift mapping :>
     
    #4
  5. Denn

    Denn Veteran Veteran

    Messages:
    64
    Likes Received:
    10
    Location:
    Pacific Northwest
    First Language:
    C
    I'd like more information about how shif mappings passibility works. Based on what I've toyed around with, tt seems like if it can be used correctly, it might be extremely powerful for easy mapping.
     
    #5
  6. Archeia

    Archeia Level 99 Demi-fiend Staff Member Developer

    Messages:
    14,481
    Likes Received:
    14,086
    Location:
    Game Dev Salt Mines
    First Language:
    Filipino
    Primarily Uses:
    VNM
    Just added a video about it :>
     
    #6
  7. Chaos17

    Chaos17 Dreamer Veteran

    Messages:
    1,252
    Likes Received:
    419
    Location:
    France
    First Language:
    French
    Nessiah, ENTERBRAIN should have hired as beta tester :D
     
    Last edited by a moderator: Mar 14, 2012
    #7
    Cryranos and Lokana like this.
  8. Touchfuzzy

    Touchfuzzy Rantagonist Staff Member Lead Eagle

    Messages:
    6,255
    Likes Received:
    5,224
    Location:
    Athens, GA, USA
    First Language:
    English
    Primarily Uses:
    RMMV
    Actually, she WAS a beta tester. And after looking at the shift "bug" its actually not really a bug, just a feature that could cause problems if you are not paying attention.

    It only happens with TileA4 wall tops. When set to unpassable, they actually do 4 directional passability to allow you to walk on top of them. Since you would need a ladder or something normally to get up there, its not really that big of a deal, and can do some neat things design wise as far as walking on top of them. You just get into trouble if you are trying to do what the person in the video is doing.
     
    #8
  9. AstoXx

    AstoXx Subconscious Punmaster Member

    Messages:
    469
    Likes Received:
    76
    Location:
    England
    First Language:
    Logic
    I am very sad that we won't get the BEST SAMPLE GAME EVAR! Or maybe we still will? I shall keep my fingers crossed!

    And, yeah, it seems there are a lot of little things that can seem like bugs at first, because they are counter-intuitive but once you know how to work around them and how they work, you can utilise them really effectively and then you'll be glad that they're there. I never really got the hang of shift-mapping... I usually just made a little swatch map and used the various selection tools to cut out all the awkward bits or sort out layering in XP. Most things are stuff the player won't really ever envounter unless he/she is actively looking for it, but to us perfectionists, it is quite troublesome. Especially that looping. Who knew one could miss a simple feature so much?

    I'm sure they will be other things people will find in due course, so I'll definitely be watching this thread. Good job, Ness.
     
    #9
  10. XPKobold

    XPKobold Veteran Veteran

    Messages:
    235
    Likes Received:
    79
    First Language:
    English
    I am curious what exactly is this sample game anyhow considering there was none for VX but there was one for XP.
     
    #10
  11. AstoXx

    AstoXx Subconscious Punmaster Member

    Messages:
    469
    Likes Received:
    76
    Location:
    England
    First Language:
    Logic
    Ahhh, Ness's project which was crafted orginally with the JP trail of Ace, Princess Princess, was supposed to be a sample game, I think. I'm pretty sure that's what she posted on her blog, anyway. Anyway, stuff happened (it's not my place to go further) and now it's been delayed. But luckily for us, she's working on the prequel to the story; Porcupine Princess!
     
    #11
  12. Archeia

    Archeia Level 99 Demi-fiend Staff Member Developer

    Messages:
    14,481
    Likes Received:
    14,086
    Location:
    Game Dev Salt Mines
    First Language:
    Filipino
    Primarily Uses:
    VNM
    Updated with two more!
     
    #12
  13. Shaz

    Shaz Veteran Veteran

    Messages:
    37,164
    Likes Received:
    11,027
    Location:
    Australia
    First Language:
    English
    Primarily Uses:
    RMMV
    This Fiber.yield seems to be the cause of quite a few problems. I wonder if it's working the way it was intended? It may be better to come up with an improved way to do that, rather than using workarounds for every little thing that you don't want to stop just because a message is showing.
     
    #13
  14. Archeia

    Archeia Level 99 Demi-fiend Staff Member Developer

    Messages:
    14,481
    Likes Received:
    14,086
    Location:
    Game Dev Salt Mines
    First Language:
    Filipino
    Primarily Uses:
    VNM
    It's the way Game_Interpreter/Game_Message was made yes, it is due to fiber.yield. The problem is the same as how it's stopping parallel process etc.
     
    #14
  15. BulletPlus

    BulletPlus A True Gunfighter Veteran

    Messages:
    107
    Likes Received:
    7
    First Language:
    English
    thanks for this especially the parallel processing solution.
     
    #15
  16. BadMinotaur

    BadMinotaur You can do it! Veteran

    Messages:
    260
    Likes Received:
    114
    Location:
    Louisiana
    First Language:
    English
    Primarily Uses:
    RMVXA
    I guess while we're throwing tips around, a cool one that was mentioned in another topic is that scripts can be used in battle formulae.

    This sounds really advanced, but it also means that you can do some cool stuff without ever looking at a single function lookup in the script editor. For instance, take the following damage formula:



    Code:
    ((a.hp+=(a.mhp*1.5))*0) + (a.atk * 4 - b.def * 2)
    
    Because we use the "+=" operator in the formula, this will actually heal the skill's user by 50% of their max HP, and deal damage according to the default formula. It's a very useful trick, but I have the feeling that if it's abused, it might cause issues. Another thing to note is that the healing value won't show up anywhere at all -- it's done behind the scenes, so the character's life bar will just mysteriously go up with no explanation.
     
    #16
  17. Archeia

    Archeia Level 99 Demi-fiend Staff Member Developer

    Messages:
    14,481
    Likes Received:
    14,086
    Location:
    Game Dev Salt Mines
    First Language:
    Filipino
    Primarily Uses:
    VNM
    This is correct. I was planning to show off different battle formulas with my sample game once it's done. I'll of course update this thread and post a tutorial in pdf form as well on how we plan, if anyone wants it.
     
    Last edited by a moderator: Mar 21, 2012
    #17
  18. amerk

    amerk Veteran Member

    Messages:
    1,439
    Likes Received:
    510
    First Language:
    English
    Ace almost needs it's own topic where people can post their formulas and maybe what it does and why it's beneficial. It certainly does allow more control over combat and setting the appropriate challenges.
     
    #18
    Liak likes this.
  19. BadMinotaur

    BadMinotaur You can do it! Veteran

    Messages:
    260
    Likes Received:
    114
    Location:
    Louisiana
    First Language:
    English
    Primarily Uses:
    RMVXA
    That'd be awesome, definitely.
     
    #19
  20. JoeyLYCAN

    JoeyLYCAN Warper Member

    Messages:
    4
    Likes Received:
    1
    Location:
    Warren, Ohio
    First Language:
    English
    Lot's of interesting stuff! Thank you all, I will hopefully be able to put it all to use once I figure this program out a little more :)
     
    #20

Share This Page