Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - SolarisSpell

1
When I updated to XPA, I also had problems with some images overlapping others.
It was specially clear during combat, as some battler where above its window, but below the border of such windows. And they appeared above the text of the menus, hiding the letters of what you were selecting.

I had to make some modifications to my scripts.
Regarding XPA, I had to edit [XPA] XPA_Window -- def _update_z
I changed the values of the background and the border until it worked.

After that I had to make some strange changes in my project. I even had to modify some viewports in order to make everything appear where it should (I know I tried creating new viewports, but I can't remember if that was a solution or just something I discarded), so I don't really know what I did or where, so I can't be more specific
Maybe you can also fix your project making changes like that
2
Welcome! / Re: Hi!
July 05, 2021, 06:23:18 pm
Hi

I know nothing about scripts, but I'm around if I can help with anything
3
RMXP Script Database / Re: [XP] Tons of Add-ons
June 02, 2021, 05:16:44 pm
Quote...or do you mean "doesn't fulfill your needs"?
Incompatible would mean it doesn't work with another script.

Sorry, I didn't mean to be pretentious. I just was sure something had to be wrong with my game, as I tried following the instructions and some things weren't responding, so I thought some other script were messing the code. (And when restarting the game with F12, the minimap changed. It was there, but blocky instead of drawing diagonals).


QuoteYou put \box in the event name. You should have been able to infer that from my previous post, though I will admit it's not documented anywhere.

It's so simple... argh. I did try it, but I only created an event with \box in it's name with no result. I didn't try to create a '\spc \box' or add it to the transfer event... I've done it now and have seen that it works perfectly.


Thanks again. It works and it was just me not knowing how to implement it in the game.

4
RMXP Script Database / Re: [XP] Tons of Add-ons
June 01, 2021, 04:52:07 pm
Thanks for the help.

 def check_events
    events, names = [$game_player], [nil]
This solved the problem of some transfer events being show as a square, but one as an arrow.
Now it always differentiates some events as arrows and some as squares. I've come to the conclusion that it depends if the events can face different directions (for example, the end of the map is a transfer event with nothing more, so it's a square, but a door is an arrow). I'm still trying to make it so that it is always a square.

The problem with the player arrow disappearing in some maps was fixed just increasing sprite.z


It's strange, but this script is giving a lot of problems, and I'm even thinking that maybe something in my project is affecting it.
For example, all the customizations options seems to not have any effect:
PLAYER_COLOR = Color.new(0, 255, 0)
EVENT_COLOR = Color.new(0, 128, 255)
TELEPORT_COLOR = Color.new(255, 255, 0)
SPECIAL_COLOR = Color.new(255, 0, 0)
MINIMAP_X = 0
MINIMAP_Y = 0
MINIMAP_WIDTH = 160
MINIMAP_HEIGHT = 160
MINIMAP_OPACITY = 160
MAP_MOVE_BUTTON = Input::Z
If I change these vales, nothing happen. I even tried using script calls as it says in the instructions with no result.

If I add \spc as a comment in an event, nothing happens, but if I add it in its name, it is shown. Right now, I can only see the player arrow, transfer events and these \spc in name events. I don't know if it should work any different (as I'd like to show with different colors events if they are enemies, npc, treasures, etc)

I'll try messing around with the code, but it seems the script is just not being fully compatible with my game
5
RMXP Script Database / Re: [XP] Tons of Add-ons
May 31, 2021, 02:12:36 pm
Hello

Can I ask for support using Blizzard's  Minimap?

I think Ton of Add-ons is amazing (I'm using some of its features). The minimap script I've using until now is proving to be more a more unreliable the grater my project becomes, so I wanted to use this one because it's so smooth.

If it were possible to ask for help, here are my troubles:

Spoiler: ShowHide

The script auto-detects my 'transfer events' and creates a purple square in the minimap. But sometimes, it instead creates a purple arrow and I don't know how to make sure it always creates a square. If I have more than one transfer event one after another, it sometimes shows the majority as purple squares, and one as a purple arrow.
Can you choose to not auto-detect so I can specify when/where to show in the minimap? And can you make that this purple squares are borderless? For events it's great to have a border, but if I want to have a large transfer area, I would like to show it as a large rectangle, and not as a line of squares

Also, maybe it's completely my fault, but I don't know how to create different kind of minimap events like, show enemies like this, npcs like that, treasures in a different way, etc...
It would be great if it were possible to use images for this little events, as I already have some nice ones.

It's probably not important, but I don't know what Game_Member is. I think it breaks my game, so I'm just removing it.

And finally, player arrow is somehow erratic. Sometimes it works, sometimes it isn't shown. But when it does work, if you change to the large version of the minimap (pressing F5 again), the green arrow just doesn't move, even if you do.


Thanks
6
I got those errors from time to time. A file named 'traceback.log' located in your game folder should have the error info, but some times it says the error but not where it happens, so just check both the error pop-up and the tracebak file and it should be ok
7
Actually, I don't know how VXAce works, but it was just an idea.

In my project I have a luck stat that affects almost anything (hit chance, evasion, drop rate, critical rate, status effects, etc...), but also use Intelligence as a way to make added effects more effective. Intelligence improves magical damage, but also, when a skill causes some kind of status effect, its base probability is depending of user Intelligence versus objective Constitution (and then, that probability is further modified by luck).

This allows to offer more options for your characters. Some will be stronger and will deal more damage, but will have a low chance of inflicting states, while other characters will offer the strategic option of dealing less damage in exchange of a higher chance of inflicting states.
8
SDK sounds like a good idea, but I can see the problems you're talking about.

It also creates a barrier for users like me who don't know how to properly script. My project has been constructed with a lot of scripts from a lot of sources from different countries, so it creates a barrier as some coding that should work is suddenly incompatible.

I've had it implemented since a lot of years ago, so it seems whatever I have in my game seems to work, but I cannot be certain. I have just discovered that this portion that should be ok wasn't working, so I'm going to check again every system, even those that I'm certain that were previously working.

Again, thanks for the help.
9
Thanks for the explanation and for the solution (it was so simple... and I think I wouldn't have figured it)

I've checked the XPA demo, and it seems Google Drive had marked it as a violation of terms of service.
I have created a new file and updated the link. Maybe is not needed to check the script for those who might be interested, but is a XPA-ready project (it even autoupdates the .dll with the method you posted) so I though it could be nice having it.
10
Hi

I've just realized that my project had and old script used for crafting, but after updating to XPA it just fails.

I'm trying to fix it, but is a script far too complex for mee¡. It uses something called SDK that I don't know what it is (but somehow is in my project) and when I call the script it fails in a line that uses 'eval'. It should just be a selection menu.

In order to clarify, I have prepared a demo of the XP version (which works) and another version for the XPA version (which doesn't work)


Crafting - XP


Crafting - XPA


Also, as an added bonus, if someone is having problems updating to XPA, maybe you can use this demo as base

Thanks
11
Maybe you could use Intelligence too improve skill effects.
For example, states are applied with a greater percentage if you have a greater Intelligence
12
Welcome! / Re: Presentation
April 25, 2021, 10:30:03 am
Hello Ti-Max

I'm also working with RPG Maker XP and have found lot of useful info in this forum and have received amazing help.
Hope you find it useful too ^_^
13
Resources / Original battlers
April 15, 2021, 08:11:19 am
I was looking for resources and have found a huge bundle of battlers made by Aekashics.

They have a very distinct graphic design, so you have to decide if they're good for you, but they're original and different:

Aekashics megapack

If you like what you see it seems there are animated battlers too, but I think that requires a patreon.
The link I'm sharing are free battlers. Almost 900 of them

Hope you find it useful
14
Resources / Re: Sound effects
April 11, 2021, 04:56:12 pm
I had no problems with the mail
I've looked and it seems I still have it, so I'm posting the links to the free samples:

Weather SFX Pack

Background Ambiences Pack

Impact SFX Pack

Whoosh SFX Pack

UI Button SFX Pack
15
Resources / Sound effects
April 08, 2021, 06:47:47 am
Hello

I've found a page with some nice sound effects.
It has a lot of pricing options, but also there is a free download as a sample... but is a huge sample.

Just in case it can be of use to anyone:
Accusonus

Hope it's useful
16
It works perfectly, thanks a lot

Of all the problems I encountered after updating to XPA, this one was defeating me.
For all other it seems I have found a work around
17
Thanks

I was asking in case it was something simple and maybe I could be able to insert it by myself

This is the script:
#Save System

class Window_File < Window_Selectable

  #------------------------
  # ● initialize
  #--------------------------------------------------------------------------
  def initialize()
    super(0, 64, 320, 416)
    self.contents = Bitmap.new(width - 32, 99 * 32)
#    self.contents.font.name = $fontface
#    self.contents.font.size = $fontsize
    index = $game_temp.last_file_index == nil ? 0 : $game_temp.last_file_index
    self.index = index
    @item_max = 99
    refresh
  end
 
  #--------------------------------------------------------------------------
  # ● refresh the window
  #--------------------------------------------------------------------------
  def refresh
    time_stamp = Time.at(0)
    for i in 0...99
      filename = "Save#{i + 1}.rxdata"
      self.contents.draw_text(1, i * 32, 32, 32, " "+(i + 1).to_s, 1)
      if FileTest.exist?(filename)
        file = File.open(filename, "rb")
        read_save_data(file)
        file.close
        case (@game_variables[14]) #Naming the chapter of the game
        when 0
          @texto = "Chapter 1"
        when 1
          @texto = "Chapter 2"
      #and so on...
      end
     
      # Draw the name with other color when playing in higher difficulty
      self.contents.font.color = arriba_color if @game_switches[150]
      self.contents.draw_text(1, i * 32, 32, 32, " "+(i + 1).to_s, 1) if @game_switches[150]
      self.contents.draw_text(30, i * 32, 284, 32, " "+@texto.to_s)
      self.contents.font.color = normal_color
     
      end
    end
  end
 
  def read_save_data(file)
    characters = Marshal.load(file)
    frame_count = Marshal.load(file)
    @game_system = Marshal.load(file)
    @game_switches = Marshal.load(file)
    @game_variables = Marshal.load(file)
    @game_self_switches = Marshal.load(file)
    @game_screen = Marshal.load(file)
    @game_actors = Marshal.load(file)
    @game_party = Marshal.load(file)
    @game_troop = Marshal.load(file)
    @game_map = Marshal.load(file)
    @game_player = Marshal.load(file)
  end
end

#==============================================================================
# ■ Window_FileStatus
#------------------------------------------------------------------------------
#  This window shows the status of the currently selected save file
#==============================================================================

class Window_FileStatus < Window_Base

  #--------------------------------------------------------------------------
  # ● initialize
  #--------------------------------------------------------------------------
  def initialize(save_window)
    super(320, 64, 320, 416)
    self.contents = Bitmap.new(width - 32, height - 32)
#    self.contents.font.name = $fontface
#    self.contents.font.size = $fontsize
    @save_window = save_window
    @index = @save_window.index
    rect = Rect.new(x + 16, y + (height - 32) / 2 + 16, width - 32, (height - 32) / 2)
    @viewport = Viewport.new(rect)
    @viewport.z = z + 10
    refresh
  end
 
  #--------------------------------------------------------------------------
  # ● dispose the map and the window
  #--------------------------------------------------------------------------
  def dispose
    tilemap_dispose
    @viewport.dispose
    super
  end
 
  #--------------------------------------------------------------------------
  # ● refresh the window
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    tilemap_dispose
    filename = "Save#{@index + 1}.rxdata"
    return unless FileTest.exist?(filename)
    file = File.open(filename, "r")
    Marshal.load(file)
    frame_count = Marshal.load(file)
    for i in 0...6
      Marshal.load(file)
    end
    party = Marshal.load(file)
    Marshal.load(file)
    map = Marshal.load(file)
    for i in 0...party.actors.size
      actor = party.actors[i]
      x = i % 2 * 144 + 4
      y = i / 2 * 64
      draw_actor_name(actor, x + 50, y)
      draw_actor_level(actor, x + 50, y + 24)
      draw_actor_graphic(actor, x + 10, y + 55)

      bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)
      cw = bitmap.width / 4
      ch = bitmap.height / 4
      src_rect = Rect.new(0, 0, cw, ch)
      self.contents.blt((x+10) - cw / 2, (y+55) - ch, bitmap, src_rect)
      #self.contents.blt(x,y+5, bitmap, src_rect)
    end
    total_sec = frame_count / Graphics.frame_rate
    hour = total_sec / 60 / 60
    min = total_sec / 60 % 60
    sec = total_sec % 60
    text = sprintf("%02d:%02d:%02d", hour, min, sec)
    map_name = load_data("Data/MapInfos.rxdata")[map.map_id].name
    self.contents.font.color = system_color
    self.contents.draw_text(4, 128, 150, 32, "Played time:")
    self.contents.draw_text(4, 160, 50, 32, "Area:")
    self.contents.font.color = normal_color
    self.contents.draw_text(155, 128, 140, 32, " "+text)
    self.contents.draw_text(60, 160, 230, 32, map_name)
    @tilemap = Tilemap.new(@viewport)
    @tilemap.tileset = RPG::Cache.tileset(map.tileset_name)
    for i in 0..6
      autotile_name = map.autotile_names[i]
      @tilemap.autotiles[i] = RPG::Cache.autotile(autotile_name)
    end
    @tilemap.map_data = map.data
    @tilemap.ox = map.display_x / 4 + 176
    @tilemap.oy = map.display_y / 4 + 148
  end
 
  #--------------------------------------------------------------------------
  # ● tilemap_dispose
  #--------------------------------------------------------------------------
  def tilemap_dispose
    unless @tilemap == nil
      @tilemap.tileset.dispose
      for i in 0..6
        @tilemap.autotiles[i].dispose
      end
      @tilemap.dispose
      @tilemap = nil
    end
  end
 
  #--------------------------------------------------------------------------
  # ● update
  #--------------------------------------------------------------------------
  def update
    @tilemap.update if @tilemap != nil
    if @index != @save_window.index
      @index = @save_window.index
      refresh
    end
    super
  end
end

#==============================================================================
# ■ Scene_File
#------------------------------------------------------------------------------
#  Base scene for load and save menus.
#==============================================================================

class Scene_File

  #--------------------------------------------------------------------------
  # ● initialize the scene
  #--------------------------------------------------------------------------
  def initialize(help_text)
    @help_text = help_text
  end
 
  #--------------------------------------------------------------------------
  # ● main
  #--------------------------------------------------------------------------
  def main
    @pic = Sprite.new
    #if $game_variables[98] == nil
    #@pic.bitmap = Bitmap.new("Graphics/Pictures/Menú.jpg")
    #else
    # 
    #case ($game_variables[98])
    #when 0
    #  @pic.bitmap = Bitmap.new("Graphics/Pictures/Menú.jpg")
    #when 1
    #  @pic.bitmap = Bitmap.new("Graphics/Pictures/LidantorFondo.jpg")
    #end
    #
    #end
    @help_window = Window_Help.new
    @help_window.back_opacity = 160
    @help_window.set_text(@help_text, 1)
    @file_window = Window_File.new
    @file_window.back_opacity = 160
    @status_window = Window_FileStatus.new(@file_window)
    @status_window.back_opacity = 160
    @com = Window_Command.new(96, [" Yes", " No"])
    @com.back_opacity = 160
    @com.index = 1
    @com.x = 272
    @com.y = 192
    @com.z = 1000
    @com.visible = false
    @com.active = false
    Graphics.transition
    loop do
      Graphics.update
      Input.update
      update
      if $scene != self
        break
      end
    end
    Graphics.freeze
    @help_window.dispose
    @file_window.dispose
    @status_window.dispose
  end
 
  #--------------------------------------------------------------------------
  # ● update
  #--------------------------------------------------------------------------
  def update
    @help_window.update
    @file_window.update
    @status_window.update
    @com.update
    if @com.visible
       @help_window.set_text("Overwrite?",1)
       update_com
       return
    end
    if Input.trigger?(Input::C)
      decision
      $game_temp.last_file_index = @file_index
      return
    end
    if Input.trigger?(Input::B)
      cancel
      return
    end
  end
  #--------------------------------------------------------------------------
  # ● return the selected file's name
  #--------------------------------------------------------------------------
  def filename
    return "Save#{@file_window.index + 1}.rxdata"
  end

  def update_com
   if Input.trigger?(Input::C)
     $game_system.se_play($data_system.decision_se)
     case @com.index
     when 0
       write_save_data
       @com.active = false
       @com.visible = false
       @file_window.active = true
       @help_window.set_text("Choose where to save",1)
     when 1
       @com.active = false
       @com.visible = false
       @file_window.active = true
       @help_window.set_text("Choose where to save",1)
     end
   end
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     @com.active = false
     @com.visible = false
     @file_window.active = true
     @help_window.set_text("Choose where to save",1)
   end
 end

end

#==============================================================================
# ■ Scene_Save
#------------------------------------------------------------------------------
#  Save menu
#==============================================================================

class Scene_Save < Scene_File
 
  #--------------------------------------------------------------------------
  # ● initialize the save menu
  #--------------------------------------------------------------------------
  def initialize
    super("Choose where to save")
  end
  #--------------------------------------------------------------------------
  # ● decision key pressed
  #--------------------------------------------------------------------------
  def decision
    $game_system.se_play($data_system.decision_se)
    #file = File.open(filename, "wb")
    #write_save_data(file)
    #file.close
    check
  end
 
  #--------------------------------------------------------------------------
  # ● cancel key pressed
  #--------------------------------------------------------------------------
  def cancel
    $game_system.se_play($data_system.cancel_se)
    if $game_temp.save_calling
      $game_temp.save_calling = false
      if $game_system.on_map == true #WorldMap
        $game_system.map_coords = [$game_variables[226], $game_variables[227]]
        $scene = Scene_World_Map.new
        return
      else
        $scene = Scene_Map.new
        return
      end
    end
    $scene = Scene_Menu.new(1)
  end

  #--------------------------------------------------------------------------
  # ● save the current data into the selected file
  #--------------------------------------------------------------------------
  def write_save_data
    $game_system.se_play($data_system.save_se)
    file = File.open(filename, "wb")
    characters = []
    for i in 0...$game_party.actors.size
      actor = $game_party.actors[i]
      characters.push([actor.character_name, actor.character_hue])
    end
    Marshal.dump(characters, file)
    Marshal.dump(Graphics.frame_count, file)
    $game_system.save_count += 1
    $game_system.magic_number = $data_system.magic_number
    Marshal.dump($game_system, file)
    Marshal.dump($game_switches, file)
    Marshal.dump($game_variables, file)
    Marshal.dump($game_self_switches, file)
    Marshal.dump($game_screen, file)
    Marshal.dump($game_actors, file)
    Marshal.dump($game_party, file)
    Marshal.dump($game_troop, file)
    Marshal.dump($game_map, file)
    Marshal.dump($game_player, file)
    file.close
    if $game_temp.save_calling
      $game_temp.save_calling = false
      if $game_system.on_map == true #WorldMap
        $game_system.map_coords = [$game_variables[226], $game_variables[227]]
        $scene = Scene_World_Map.new
        return
      else
        $scene = Scene_Map.new
        return
      end
    end
    $scene = Scene_Menu.new(1)
  end
 
  def check
    if FileTest.exist? ("Save#{@file_window.index + 1}.rxdata")
      @com.visible = true
      @com.active = true
      @file_window.active = false
    else
      write_save_data
    end
  end
end

#==============================================================================
# ■ Scene_Load
#------------------------------------------------------------------------------
#  Load menu
#==============================================================================

class Scene_Load < Scene_File
 
  #--------------------------------------------------------------------------
  # ● initialize the menu
  #--------------------------------------------------------------------------
  def initialize
  @pic = Sprite.new

  #if $game_variables[98] == nil
  #@pic.bitmap = Bitmap.new("Graphics/Pictures/Menú.jpg")
  #else
  # 
  #case ($game_variables[98])
  #when 0
  #  @pic.bitmap = Bitmap.new("Graphics/Pictures/Menú.jpg")
  #when 1
  #  @pic.bitmap = Bitmap.new("Graphics/Pictures/LidantorFondo.jpg")
  #else
  #  @pic.bitmap = Bitmap.new("Graphics/Pictures/Menú.jpg")
  #end
  #
  #end
 
  $game_temp = Game_Temp.new
  $game_temp.last_file_index = 0
  latest_time = Time.at(0)
  for i in 0..99
    filename = "Save#{i + 1}.rxdata"
    if FileTest.exist?(filename)
      file = File.open(filename, "r")
      if file.mtime > latest_time
        latest_time = file.mtime
        $game_temp.last_file_index = i
      end
      file.close
    end
  end
  super("Choose file to load")
end

  #--------------------------------------------------------------------------
  # ● decision key pressed
  #--------------------------------------------------------------------------
  def decision
    unless FileTest.exist?(filename)
      $game_system.se_play($data_system.buzzer_se)
      return
    end
    $game_system.se_play($data_system.load_se)
    file = File.open(filename, "rb")
    read_save_data(file)
    file.close
    $game_system.bgm_play($game_system.playing_bgm)
    $game_system.bgs_play($game_system.playing_bgs)
    $game_map.update
    $scene = Scene_Map.new
  end

  #--------------------------------------------------------------------------
  # ● cancel key pressed
  #--------------------------------------------------------------------------
  def cancel
    $game_system.se_play($data_system.cancel_se)
    $scene = Scene_Title.new
  end
  #--------------------------------------------------------------------------
  # ● load the selected file
  #--------------------------------------------------------------------------
  def read_save_data(file)
    characters = Marshal.load(file)
    Graphics.frame_count = Marshal.load(file)
    $game_system = Marshal.load(file)
    $game_switches = Marshal.load(file)
    $game_variables = Marshal.load(file)
    $game_self_switches = Marshal.load(file)
    $game_screen = Marshal.load(file)
    $game_actors = Marshal.load(file)
    $game_party = Marshal.load(file)
    $game_troop = Marshal.load(file)
    $game_map = Marshal.load(file)
    $game_player = Marshal.load(file)
    if $game_system.magic_number != $data_system.magic_number
      $game_map.setup($game_map.map_id)
      $game_player.center($game_player.x, $game_player.y)
    end
    $game_party.refresh
  end
end

I have prepared a demo to show it:
Save System Demo


In normal RPG Maker XP, it shows where you saved with a little preview:
Spoiler: ShowHide


But, in my project, after updating to XPA, it doesn't show that map preview:
Spoiler: ShowHide



I wanted to know if it is possible to make it work again or if this isn't possible with XPA

Thanks
18
Hi

I'd like to ask how can you show a preview of a map with RPG Maker XPA

I have two scripts that do this. One is a save system that, when selecting which file to load, shows where you were when you saved your game. The other one, is a teleport script that allows you to select where do you want to teleport and shows in a window the map you are selecting.

But after upgrading to XP Ace, both scripts still works, but shows nothing. Where the preview of the map used to be, now is just nothing.

I wanted to ask which code should I use to show the preview of a different map, so I can implement it in these scripts again.

Thanks
19
I must say, this is some kind of unthinkable witchcraft, and it is amazing.

I'm having a lot of little problems after implementing it, but I'm fighting to make it compatible with my project. I'm sure it will be worth it.

So, great job
20
That's good to know.

I'm enjoying using RPG Maker XP and I think the result is turning to be good (I know, is my game, so it could be terrible and I would love it...). Maybe I should say that the game is better than what I though I could do.