[Request] [Ace] Achievement Display Grid

Discussion in 'RGSS3 Script Requests' started by EternalShadow, Feb 20, 2016.

  1. EternalShadow

    EternalShadow Veteran Veteran

    Messages:
    5,805
    Likes Received:
    1,049
    First Language:
    English
    Hi :D


    I hope this is generally a fairly simple request.


    Essentially, not limited to achievements, but can be used for images or other things in general as well.


    Basically, would it be possible to have a grid that shows a certain image in its respective location on a grid if the achievement is locked (a switch is not turned on) and then a different image if the achievement's switch is turned on? (And a title above this whole grid that says "Achievements")


    This grid should be 4*6 (4 wide 6 high) but perhaps adjustable for other people's use.


    Additionally, the whole thing should be generally centered, so you have the 4 columns in the middle of the screen in this example. Left and right sides should be equal amounts of blank space.


    This grid/achievement display should be accessible from the ingame menu that is accessed when you press esc.


    As you navigate around, it should be possible to hover over a certain achievement for its name/requirement/etc. I can handle this bit if you can simply have it bring up a text box whenever someone presses enter on the achievement as they select it.


    The script has to be commercially usable also, please.


    Because this script is quite generic, CSCA's achievement script isn't really what I'm looking for (requires CSCA core and other things that would cause conflicts). 


    Thanks!
     
    #1
    Seriel likes this.
  2. MeowFace

    MeowFace Meow Veteran

    Messages:
    1,034
    Likes Received:
    178
    Location:
    La La Land
    First Language:
    Meowish
    You mean a "Window" that display text?


    Grid generally mean the walking tiles. It's confusing if you use that for windows.


    If it's just a window that temporary displays a pop up text, there should be a bunch of them in the master script list already.


    You can give this a try too:





    Or if you want to have 100% control over the displaying windows, you can try this tutorial.


    It's eventing based:
     
    Last edited by a moderator: Feb 20, 2016
    #2
  3. Sixth

    Sixth Veteran Veteran

    Messages:
    2,130
    Likes Received:
    798
    First Language:
    Hungarian
    Primarily Uses:
    RMVXA
    Grid generally means this:


    [​IMG]


    It is a number of rows and columns aligned. 


    He wants images which are aligned like a grid (a 4x6 grid at that).


    And he wants to show different images for enabled and disabled ones.


    The images will represent achievements. 


    I currently need to make an image table with a similar function, and I usually make these so I can reuse them in most similar situations, so when I finish my project, and if you still need it by then, I will try to use that code to make this one for you. No idea when that will be, but it will be done sometimes in the next 2 weeks, I hope. 
     
    #3
    EternalShadow likes this.
  4. EternalShadow

    EternalShadow Veteran Veteran

    Messages:
    5,805
    Likes Received:
    1,049
    First Language:
    English


    That would be great, thanks!
     
    #4
  5. Sixth

    Sixth Veteran Veteran

    Messages:
    2,130
    Likes Received:
    798
    First Language:
    Hungarian
    Primarily Uses:
    RMVXA
    Ahoy!


    I finally managed to extract my grid menu from my project.


    You can check it out here: 




    I think this could work for you.


    I forgot to include a main menu button for the grid menu(s), but will do that tomorrow too. Kinda sleepy now, almost 5 AM. *-*
     
    #5
    EternalShadow likes this.
  6. EternalShadow

    EternalShadow Veteran Veteran

    Messages:
    5,805
    Likes Received:
    1,049
    First Language:
    English


    Only just noticed this 0_0; (no notif!)


    Ah yes, this is excellent! However, there are a couple of restrictions:


    - The help text is all image-based. It would be very slow to write a description in Photoshop, save it, email it, download it import it and edit again if something is wrong.


    It would be great if text could simply be input in text format for a text box that appears at the top.


    - The grid and text layouts aren't responsive.


    Here are my tests:


    On a small screen, you see this:


    [​IMG]


    On a large one (let alone the max resolution), you see this:


    [​IMG]


    Centering the top bar and grid based on the width of the game would be satisfactory!


    If these could be fixed, that'd be great! If this can be done, I'll start setting up and importing my own images etc.
     
    #6
  7. Sixth

    Sixth Veteran Veteran

    Messages:
    2,130
    Likes Received:
    798
    First Language:
    Hungarian
    Primarily Uses:
    RMVXA
    The settings I used are static for positioning and they are made for a 640x480 resolution. 


    If you use Graphics.width and Graphics.height, you should be able to set them dynamically based on the resolution. But for that, you need to put my script below the script which changes your resolution.


    If that won't work (if I remember right, the resolution selection script by Venka&Dekita sets the new resolution after the loading of modules), I can make a setting for it.


    Once you have a layout for your help texts in PS, you can simply duplicate the layers to make new ones with the correct positioning and blending modes already done, you just need to edit the texts. That is how I made mines, didn't take much time, and I made a lot and edited them a dozens of times too. :D


    But sure, I can make a simple text based help display.


    Gonna make it tomorrow, have to finish a commission today. *-*


    Edit:


    Updated the script. It now lets you add plain texts for your help images.


    You will still need to setup your help images for the commands because the text will be drawn on that, but you can use the same image for all of your commands if you want. Consider it as a background image for your help texts. 
     
    Last edited by a moderator: Mar 14, 2016
    #7
    EternalShadow likes this.
  8. EternalShadow

    EternalShadow Veteran Veteran

    Messages:
    5,805
    Likes Received:
    1,049
    First Language:
    English


    Brilliant, thanks very much.


    I'm still having trouble centering the commands, though. I've used Graphics.width, but everything is still smooshed to the top-left. I am a bit confused, to say the least!


    Here is an example with:


    Grid = {
        :pos => [(Graphics.width/2)-170,120],
        :max_cols => 6,
        :isize => [64,64],
        :spacing => [2,2],


    }


    Also tried without the (brackets).


    (Ignore the placeholder background and everything image based, apart from the location of the achievements themselves - I'm trying to get the grid position sorted so I can move onto the graphical stuff)

    [​IMG]


    [​IMG]
     
    #8
  9. Sixth

    Sixth Veteran Veteran

    Messages:
    2,130
    Likes Received:
    798
    First Language:
    Hungarian
    Primarily Uses:
    RMVXA
    Which script do yo use for changing the resolution? 


    Also, do you allow changing resolution in your game?
     
    #9
  10. EternalShadow

    EternalShadow Veteran Veteran

    Messages:
    5,805
    Likes Received:
    1,049
    First Language:
    English


    Venka/Dekita resolution select, and yes - I do allow for changing resolution. When resolution is changed, everything is re-initialized at the title screen so no need to worry about that. 


    Here:
     
    #10
  11. Sixth

    Sixth Veteran Veteran

    Messages:
    2,130
    Likes Received:
    798
    First Language:
    Hungarian
    Primarily Uses:
    RMVXA
    Okay, I added in some new ways of setting up the positions. 


    It should work with that script now.


    Just use ":center" for the X position, and your grid images will be centered on the X axis.


    If you want an offset, use an array with a single number. That number entered in the array will be the offset in pixels.
     
    #11
  12. MeowFace

    MeowFace Meow Veteran

    Messages:
    1,034
    Likes Received:
    178
    Location:
    La La Land
    First Language:
    Meowish
    I see that you are still struggling with that.


    Like what i said earlier, tile grid is the easiest way out, just make your "achievement menu" using a map. change your character sprite to mouse icon or select pointer icon, and the rest of the "grid" are just tiles that you can put events on. Simply change the event pictures using pages and switches will do. All done without additional script.


    All that you need is:


    [1] A map to create the menu.


    [2] events on the map to act as "graphics" on the "grid"


    [3] switches to turn on/off the images on event via pages.


    [4] change character sprite to a pointer sprite to move it around and "select/trigger" events when character is on it.


    additionally you will need:


    [1] A way to remember the old map X Y position before switching to achievement map (lots of tutorial out there for this)


    [2] A parallel event to check if esc/cancel key is pressed, then change the character sprite back and return to previous map.
     
    #12
  13. EternalShadow

    EternalShadow Veteran Veteran

    Messages:
    5,805
    Likes Received:
    1,049
    First Language:
    English


    Sorry, where did you make this update? The pastebin says last edited on March 3rd.


    @MeowFace a good suggestion if things go south here! However, every image would have to be set as a sprite (in sprite format) for it to work though, no?
     
    #13
  14. Sixth

    Sixth Veteran Veteran

    Messages:
    2,130
    Likes Received:
    798
    First Language:
    Hungarian
    Primarily Uses:
    RMVXA
    That date on pastebin shows the upload date, not the edit date. The word "Edited" in brackets just states that it has been edited one or more times since it has been uploaded.


    Most of the times I write the correct update dates, although sometimes I forget to edit the date which I copy/pasted.


    Anyway, the last update for this script was on March 19, like the change log states.


    If you are unsure of what version you need and when was the last update, you can always check the "Change Log" in the header of any of my bigger scripts on pastebin and compare it with your script version.
     
    #14
  15. MeowFace

    MeowFace Meow Veteran

    Messages:
    1,034
    Likes Received:
    178
    Location:
    La La Land
    First Language:
    Meowish
    The Map Scene are by default dealing with 32x32 grid tiles. You can easily use a parallax map with a parallax lock script to achieve this.


    While the Charset Sprite (event sprite) can be any size, but since you want it to be grid like, you will have to calculated the size according to 32x32 pixels.


    Also, you will need to add ! to the head of the file name to avoid it being moved 4 pixels upward. eg. !mychar01.png


    It's no difference than building a parallax map with check points.


    What you need is simply add an event to the map, put the desired sprite one it, set the event to be "below character" and that's it. Have the trigger open up a message window or whatever you like when the character step on and trigger the event. (Character can be changed to "pointer" sprite in this map for a more menu-like feel)


    [​IMG]


    eg of a space map with checkpoints


    [​IMG]
     
    Last edited by a moderator: Apr 4, 2016
    #15

Share This Page