• Do not use Discord to host any images you post, these links expire quickly! You can learn how to add images to your posts here.
  • The Eevee Expo Game Jam has concluded! 🎉 Head on over to the game jam forum to play through the games.
    Don't forget to come back September 21st to vote for your favorites!
  • Reminder: AI-generated content is not allowed on the forums per the Rules and Regulations. Please contact us if you have any questions!
Modular Title Screen

Resource Modular Title Screen 1.0

It looks great !, but I get an error on line 215: "File.runScript (" Data / TitleScreen.rxdata ")"

Here is the error:
6b8ee22e94b80a4821a678422d32fc6b.png
 
It looks great !, but I get an error on line 215: "File.runScript (" Data / TitleScreen.rxdata ")"

Here is the error:
6b8ee22e94b80a4821a678422d32fc6b.png
Get the 2.1 update of my Utilities script if you're using the manual download from my site. Just for future references, make sure that you meet all the dependencies for the manual downloads.
 
Get the 2.1 update of my Utilities script if you're using the manual download from my site. Just for future references, make sure that you meet all the dependencies for the manual downloads.
With the new version (I had to have it outdated) it works perfectly. Thank you!
 
I cannot understand where you put the modifiers. At first, I thought it might have been where it says to add the modifiers, but that didn't change anything. So then I put it after the "module ModularTitle::" bit, but now it says something else is wrong. Does anybody know where to put it? I'm using v19.1 for context.
 
I see this is compatible with Essentials 19.1. Will it work for the latest Essentials? 20.1, or will you be updating this plugin for 20.1?
 
I am currently having issues with the spinning effects for both effects 7 and 11. I'm not great with scripting and don't understand how to fix it. Below are the scripts I am using for the title. Thank you for any help.

Effect:
Expand Collapse Copy
class MTS_Element_FX7
  attr_accessor :x, :y
  def id; return "effect.shine"; end
  def id?(val); return self.id == val; end
  # main method to create the effect
  def initialize(viewport,x=nil,y=nil,z=nil)
    @viewport = viewport
    @disposed = false
    @fpIndex = 0
    self.position(x,y)
    @sprites = {}
    # initializes particles
    @sprites["shine"] = Sprite.new(@viewport)
    @sprites["shine"].bitmap = pbBitmap("Graphics/MODTS/Particles/shine003")
    @sprites["shine"].center!
    @sprites["shine"].x = self.x
    @sprites["shine"].y = self.y
    @sprites["shine"].z = z.nil? ? 30 : z
  end
  # positions effect on screen
  def position(x,y)
    @x = x.nil? ? @viewport.rect.width/2 : x
    @y = y.nil? ? @viewport.rect.height/2 : y
  end
  # changes visibility
  def visible=(val)
    for key in @sprites.keys
      @sprites[key].visible = val if @sprites[key].respond_to?(:visible)
    end
  end
  # disposes of everything
  def dispose
    @disposed = true
    pbDisposeSpriteHash(@sprites)
  end
  # update method
  def update
    return if self.disposed?
    # updates particle effect
    @sprites["shine"].angle-=1 if $PokemonSystem.screensize < 2
    @fpIndex += 1 if @fpIndex < 512
  end
  # checks if disposed
  def disposed?; return @disposed; end
  # end
end

Effect 11:
Expand Collapse Copy
# Spinning element
class MTS_Element_FX11
  attr_accessor :x, :y
  def id; return "effect.blend"; end
  def id?(val); return self.id == val; end
  # main method to create the effect
  def initialize(viewport,x=nil,y=nil,z=nil)
    @viewport = viewport
    @disposed = false
    @fpIndex = 0
    self.position(x,y)
    @sprites = {}
    # initializes the required sprites
    @sprites["cir"] = Sprite.new(@viewport)
    @sprites["cir"].bitmap = pbBitmap("Graphics/MODTS/Particles/ring004")
    @sprites["cir"].center!
    @sprites["cir"].x = self.x
    @sprites["cir"].y = self.y
    @sprites["cir"].z = z.nil? ? 30 : z
  end
  # positions effect on screen
  def position(x,y)
    @x = x.nil? ? @viewport.rect.width/2 : x
    @y = y.nil? ? @viewport.rect.height/2 : y
  end
  # disposes of everything
  def dispose
    @disposed = true
    pbDisposeSpriteHash(@sprites)
  end
  # changes visibility
  def visible=(val)
    for key in @sprites.keys
      @sprites[key].visible = val if @sprites[key].respond_to?(:visible)
    end
  end
  # update method
  def update
    return if self.disposed?
    # spins element
    @sprites["cir"].angle += 1 if $PokemonSystem.screensize < 2
    @fpIndex += 1 if @fpIndex < 512
  end
  # checks if disposed
  def disposed?; return @disposed; end
  # end
end

Edit: I was able to fix the issue. It was in the #spins element script, where it was only allowing to spin on a certain screensize. I deleted the script "if $PokemonSystem.screensize < 2", and it worked perfectly.
 
Last edited:
Used this for v21.1, and for some reason, the title screen starts playing at 1 frame every 5 seconds, so far no sound. I specifically used one of the examples to test it out, but it's not working as intended...
 
Used this for v21.1, and for some reason, the title screen starts playing at 1 frame every 5 seconds, so far no sound. I specifically used one of the examples to test it out, but it's not working as intended...
The pbWait() function changed in v21.1
Try to modify the number arguments given by /10 (or /100, can't remember right now) for example
 
The pbWait() function changed in v21.1
Try to modify the number arguments given by /10 (or /100, can't remember right now) for example
Did you reply to the right person? Because I'm not sure I follow otherwise?
 
Did you reply to the right person? Because I'm not sure I follow otherwise?
Yes I was referring to your message.
If you have a look at the scripts of this resource, you will see the pbWait function is used quite a lot.
For earlier Pokémon Essentials versions (which the resource was designed for) pbWait(x) was waiting for x frames.
In 21.1 though, pbWait(x) is now waiting for x seconds.
This is why your title screen seems to be laggy. Edit the script and change a pbWait(5) to something like pbWait(0.05) and it should work.
At least it did for me a few days ago.
I hope that you could follow my explanation now :)
 
Yes I was referring to your message.
If you have a look at the scripts of this resource, you will see the pbWait function is used quite a lot.
For earlier Pokémon Essentials versions (which the resource was designed for) pbWait(x) was waiting for x frames.
In 21.1 though, pbWait(x) is now waiting for x seconds.
This is why your title screen seems to be laggy. Edit the script and change a pbWait(5) to something like pbWait(0.05) and it should work.
At least it did for me a few days ago.
I hope that you could follow my explanation now :)
Ooooh, I see. I'm gonna try to do that, thank you!
This would also explain why (something I discovered after you'd responded the first time) all of my Pokémon Centers now heal insanely slow after porting over all my maps, I'm gonna look into that as well
 
Yes I was referring to your message.
If you have a look at the scripts of this resource, you will see the pbWait function is used quite a lot.
For earlier Pokémon Essentials versions (which the resource was designed for) pbWait(x) was waiting for x frames.
In 21.1 though, pbWait(x) is now waiting for x seconds.
This is why your title screen seems to be laggy. Edit the script and change a pbWait(5) to something like pbWait(0.05) and it should work.
At least it did for me a few days ago.
I hope that you could follow my explanation now :)
Okay yeah that definitely helped, however now the intro scene is just... stuck on this and refuses to progress
 

Attachments

  • 1704798123623.png
    1704798123623.png
    9.4 KB · Views: 32
Should be the same issue, you just have to find all the pbWaits
I've done all that, the problem still persists?
There is one pbWait that I don't know what to do with because it's different from the others, might that be the problem?
 

Attachments

  • 1704833683628.png
    1704833683628.png
    30.2 KB · Views: 42
I've done all that, the problem still persists?
There is one pbWait that I don't know what to do with because it's different from the others, might that be the problem?
Yes that should be the problem. Just divide the value in the brackets like you did before like this:
pbWait((IntroEventScene::SECONDS_PER_SPLASH * Graphics.frame_rate / 100).ceil)
 
Hi all. I've followed the above advice to try and configure use of this plugin for 21.1, but I cannot figure out how to "slow down" the title screen where it says "press start." It is moving a million miles a minute and I feel like I've edited every line of code I can think of to try and get it to process at a normal speed. Does anyone have a solution to this? Thanks!
 
Hi all. I've followed the above advice to try and configure use of this plugin for 21.1, but I cannot figure out how to "slow down" the title screen where it says "press start." It is moving a million miles a minute and I feel like I've edited every line of code I can think of to try and get it to process at a normal speed. Does anyone have a solution to this? Thanks!
Did you got it to work I been working on it
 
Back
Top