• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

Compressing Game Data of Essentials Games

302
Posts
13
Years
    • Seen Aug 25, 2014
    Hello there. Currently, I'm having some issues in distributing the game I made with Pokemon Essentials.

    For typical RPG maker projects, it's a matter of compressing the game data and creating an encrypted archive to create an executable that will allow other people to play your game. What I am wondering, then, is if there is a special way you need to do it with Essentials projects?

    The reason I'm asking is because the first time I tried to compress the data of my project, with "create encrypted archive" checkmarked, the output had multiple problems, mainly with graphic files not appearing (the windowskin) and a slew of other issues that were not present with the unencrypted file.

    Any help is appreciated.
     

    D. Lawride

    Audi Famam Illius, Scriptor!
    577
    Posts
    14
    Years
  • Hello there. Currently, I'm having some issues in distributing the game I made with Pokemon Essentials.

    For typical RPG maker projects, it's a matter of compressing the game data and creating an encrypted archive to create an executable that will allow other people to play your game. What I am wondering, then, is if there is a special way you need to do it with Essentials projects?

    The reason I'm asking is because the first time I tried to compress the data of my project, with "create encrypted archive" checkmarked, the output had multiple problems, mainly with graphic files not appearing (the windowskin) and a slew of other issues that were not present with the unencrypted file.

    Any help is appreciated.

    I know I'm not really helping here, but I'm subscribing to the above post. I'll add that I've had those problems and a lot more, such as no sound in spite of the presence of the Audio folders, no ability to save (somehow retconned in more recent releases, but still present for many users).

    What I can tell to help is that you should include a folder called graphics containing only the Windowskins folder. This restores the windowskins completely.

    I'd like some help with these issues too, as they were the greatest pain I've had when it came to releases (check Nightmare's 1.4 if you the patience just so you can see how badly it was).
     

    ~JV~

    Dev of Pokémon Uranium
    684
    Posts
    16
    Years
  • I've made many releases of my game already and never had any problems with the compression (I always used a 2008 essentials version though).
     

    D. Lawride

    Audi Famam Illius, Scriptor!
    577
    Posts
    14
    Years
  • Do you guys use a legal version of RMXP?

    Yes, but regardless, I don't think the two are related, because other projects I've exported worked perfectly in those senses. So it narrows down to something to do with Essentials itself.
     
    302
    Posts
    13
    Years
    • Seen Aug 25, 2014
    I've made many releases of my game already and never had any problems with the compression (I always used a 2008 essentials version though).

    Then the problem, as lawride stated, may be connected with the new release, and to whoever asked whether we use the legal version of RMXP, yes I do. >_>
     

    Maruno

    Lead Dev of Pokémon Essentials
    5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    Can you be more specific about what problems you're getting? Which pictures aren't showing, etc.?

    Can someone else try compressing/encrypting a game, to see if they get problems too?
     
    302
    Posts
    13
    Years
    • Seen Aug 25, 2014
    Okay, I tried compressing the game data again. When I extracted the exe file, I recieved this error:
    pokeessentialsProblem_1.png


    Then, I went back and deleted some of the music files that were in my project, and compressed again. Behold, the game successfully extracted from the executable and worked semi-perfectly.

    I say semi-perfectly because it still caused some errors. Namely with attack animations, as while the animation plays for attacks initiated by a Pokemon in your party, the animation initiated by the enemy doesn't. It may be a simple fix, however. Most of my battle animations are set to "middle" instead of "screen", but before I compressed it worked either way.
     

    FL

    Pokémon Island Creator
    2,450
    Posts
    13
    Years
    • Seen yesterday
    The default compressing system is also very weak, try to use something like this: http://www.pokecommunity.com/showthread.php?t=239535
    Can you be more specific about what problems you're getting? Which pictures aren't showing, etc.?

    Can someone else try compressing/encrypting a game, to see if they get problems too?
    I use the 04/03/10 version that the windows problem. The easy fix is to change these .txt folder to one out of Graphics folder.
     

    Maruno

    Lead Dev of Pokémon Essentials
    5,286
    Posts
    16
    Years
    • Seen May 3, 2024
    I just tried compressing the latest version of Essentials, and it seems to work fine, except for the misshapen text boxes which is a known problem.

    I'll look into CollosalPokemon's compression, to see if that helps any. Game compression is a very strange thing, and it really shouldn't be breaking things but it does.
     

    FL

    Pokémon Island Creator
    2,450
    Posts
    13
    Years
    • Seen yesterday
    I finally manage to fix the Windows issue! You only need to define the skins in script rather that the txt files on Graphics folder.
    Search for "def loadSkinFile(file)" on SpriteWindow Script. Change the
    Code:
     def loadSkinFile(file)
      begin
        data=load_data(file).split("\n")
        # Body = X, Y, width, height of body rectangle within windowskin
        bodyRE=/[Bb]ody\s*=\s*(\-?\d+)\s*,\s*(\-?\d+)\s*,\s*(\-?\d+)\s*,\s*(\-?\d+)\s*/
        # Trim = X, Y, width, height of trim rectangle within windowskin
        trimRE=/[Tt]rim\s*=\s*(\-?\d+)\s*,\s*(\-?\d+)\s*,\s*(\-?\d+)\s*,\s*(\-?\d+)\s*/
        for line in data
          if line[bodyRE]
           @skinrect.set($~[1].to_i,$~[2].to_i,$~[3].to_i,$~[4].to_i)
          end
          if line[trimRE]
           @trim=[$~[1].to_i,$~[2].to_i,$~[3].to_i,$~[4].to_i]
          end
        end
        privRefresh(true)
      rescue Errno::ENOENT, Errno::EINVAL
        # ignore
      rescue
        raise
      end
     end
    to
    Code:
     def loadSkinFile(file)
      if(file.to_s.size>29)
       name=(file.to_s[0,file.size-4])[25,20]
       if(name[0,7]=="textbox")
        # Body = X, Y, width, height of body rectangle within windowskin
        @skinrect.set(32,16,16,16)
        # Trim = X, Y, width, height of trim rectangle within windowskin
        @trim=[32,16,16,16]
       else  
        case name
        when "rstextskin"
         @skinrect.set(32,32,16,16)
         @trim=[32,16,16,48]
        when "rstextskin2"
         @skinrect.set(32,16,16,16)
         @trim=[32,16,16,16]
        when "frlgtextskin"
         @skinrect.set(32,32,16,16)
         @trim=[32,16,16,48]
        when "emtextskin"
         @skinrect.set(32,16,16,16)
         @trim=[32,16,16,16]
        end
       end  
      end
     end
    or
    Code:
     def loadSkinFile(file)
      if(file.to_s.size>29)
       name=(file.to_s[0,file.size-4])[25,20]
       case name
       when "rstextskin"
        # Body = X, Y, width, height of body rectangle within windowskin
        @skinrect.set(32,32,16,16)
        # Trim = X, Y, width, height of trim rectangle within windowskin
        @trim=[32,16,16,48]
       when "rstextskin2"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "frlgtextskin"
        @skinrect.set(32,32,16,16)
        @trim=[32,16,16,48]
       when "emtextskin"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox0"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox1"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox2"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox3"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox4"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox5"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox6"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox7"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox8"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox9"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox10"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox11"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox12"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox13"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox14"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox15"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox16"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox17"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox18"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       when "textbox19"
        @skinrect.set(32,16,16,16)
        @trim=[32,16,16,16]
       end
      end
     end
     
    Back
    Top