• 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.

[Release] Pokémon Essentials, version 14 - 28th September 2014

Status
Not open for further replies.

IceGod64

In the Lost & Found bin!
624
Posts
15
Years
  • It's still there for me too, you might want to try again if you haven't already.

    Also, great build Maruno, there are some long-needed fixes in the build, and so far in my testing it, everything is great!

    Thought the following isn't really a bug, so I'll say my suggestion here: When throwing a Pokéball, the actual ball falling seems to be a little slow.
     

    BadSamaritan

    Gone Fishin'
    148
    Posts
    14
    Years
    • Seen Jun 8, 2023
    Thought the following isn't really a bug, so I'll say my suggestion here: When throwing a Pokéball, the actual ball falling seems to be a little slow.

    Assuming it hasn't been changed since the previous release, I just edited a new one for the game I work on. Here's the code if you want it-

    Code:
    # Shows the player's Poké Ball being thrown to capture a Pokémon.
    def pokeballThrow(ball,shakes,targetBattler,scene,battler,burst=-1)
      [email protected](ball)
      oldvisible=@sprites["shadow#{targetBattler}"].visible
      @sprites["shadow#{targetBattler}"].visible=false
      ball=sprintf("Graphics/Pictures/ball%02d",balltype)
      ballopen=sprintf("Graphics/Pictures/ball%02d_open",balltype)
      # sprites
      spritePoke=@sprites["pokemon#{targetBattler}"]
      spriteBall=IconSprite.new(0,0,@viewport)
      spriteBall.visible=false
      # pictures
      pictureBall=PictureEx.new(spritePoke.z+1)
      picturePoke=PictureEx.new(spritePoke.z)
      dims=[spritePoke.x,spritePoke.y]
      center=getSpriteCenter(@sprites["pokemon#{targetBattler}"])
      if @battle.doublebattle
        ballendy=PokeBattle_SceneConstants::FOEBATTLERD1_Y-4 if targetBattler==1
        ballendy=PokeBattle_SceneConstants::FOEBATTLERD2_Y-4 if targetBattler==3
      else
        ballendy=PokeBattle_SceneConstants::FOEBATTLER_Y-4
      end
      # starting positions
      pictureBall.moveVisible(1,true)
      pictureBall.moveName(1,ball)
      pictureBall.moveOrigin(1,PictureOrigin::Center)
      pictureBall.moveXY(0,1,10,180)
      picturePoke.moveVisible(1,true)
      picturePoke.moveOrigin(1,PictureOrigin::Center)
      picturePoke.moveXY(0,1,center[0],center[1])
      # directives
      picturePoke.moveSE(1,"Audio/SE/throw")
      pictureBall.moveCurve(30,1,150,70,30+Graphics.width/2,10,center[0],ballendy-((ballendy-center[1])*1/3))
      pictureBall.moveAngle(30,1,-1080)
      pictureBall.moveAngle(0,pictureBall.totalDuration,0)
      delay=pictureBall.totalDuration+4
      picturePoke.moveTone(10,delay,Tone.new(0,-224,-224,0))
      delay=picturePoke.totalDuration
      picturePoke.moveSE(delay,"Audio/SE/recall")
      pictureBall.moveName(delay+4,ballopen)
      loop do
        pictureBall.update
        picturePoke.update
        setPictureIconSprite(spriteBall,pictureBall)
        setPictureSprite(spritePoke,picturePoke)
        pbGraphicsUpdate
        pbInputUpdate
        break if !pictureBall.running? && !picturePoke.running?
      end
      # Burst animation here
      if burst>=0
        scene.pbCommonAnimation("BallBurst#{burst}",battler,nil)
      end
      pictureBall.clearProcesses
      picturePoke.clearProcesses
      delay=0
      picturePoke.moveZoom(15,delay,0)
      picturePoke.moveXY(15,delay,center[0],ballendy-((ballendy-center[1])*1/3))
      picturePoke.moveSE(delay+10,"Audio/SE/jumptoball")
      picturePoke.moveVisible(delay+15,false)
      pictureBall.moveName(picturePoke.totalDuration+2,ball)
      delay=picturePoke.totalDuration+30
      pictureBall.moveXY(10,delay,center[0],ballendy)
      pictureBall.moveSE(pictureBall.totalDuration,"Audio/SE/balldrop")
      pictureBall.moveXY(6,pictureBall.totalDuration+2,center[0],ballendy-((ballendy-center[1])*1/6))
      pictureBall.moveXY(6,pictureBall.totalDuration+2,center[0],ballendy)
      pictureBall.moveSE(pictureBall.totalDuration,"Audio/SE/balldrop")
      pictureBall.moveXY(3,pictureBall.totalDuration+2,center[0],ballendy-((ballendy-center[1])*1/9))
      pictureBall.moveXY(3,pictureBall.totalDuration+2,center[0],ballendy)
      pictureBall.moveSE(pictureBall.totalDuration,"Audio/SE/balldrop")
      picturePoke.moveXY(0,pictureBall.totalDuration,center[0],ballendy)
      delay=pictureBall.totalDuration+18# if shakes==0
      [shakes,3].min.times do
        pictureBall.moveSE(delay,"Audio/SE/ballshake")
        pictureBall.moveXY(9,delay,center[0]-8,ballendy)
        pictureBall.moveAngle(9,delay,30) # positive means counterclockwise
        delay=pictureBall.totalDuration
        pictureBall.moveXY(9,delay,center[0]+8,ballendy)
        pictureBall.moveAngle(9,delay,-30) # negative means clockwise
        delay=pictureBall.totalDuration
        pictureBall.moveXY(9,delay,center[0],ballendy)
        pictureBall.moveAngle(9,delay,0)
        delay=pictureBall.totalDuration+29
      end
      if shakes<4
        picturePoke.moveSE(delay,"Audio/SE/recall")
        pictureBall.moveName(delay,ballopen)
        pictureBall.moveVisible(delay+10,false)
        picturePoke.moveVisible(delay,true)
        picturePoke.moveZoom(15,delay,100)
        picturePoke.moveXY(15,delay,center[0],center[1])
        picturePoke.moveTone(0,delay,Tone.new(248,248,248,248))
        picturePoke.moveTone(24,delay,Tone.new(0,0,0,0))
        delay=picturePoke.totalDuration
      end
      pictureBall.moveXY(0,delay,center[0],ballendy)
      picturePoke.moveOrigin(picturePoke.totalDuration,PictureOrigin::TopLeft)
      picturePoke.moveXY(0,picturePoke.totalDuration,dims[0],dims[1])
      loop do
        pictureBall.update
        picturePoke.update
        setPictureIconSprite(spriteBall,pictureBall)
        setPictureSprite(spritePoke,picturePoke)
        pbGraphicsUpdate
        pbInputUpdate
        break if !pictureBall.running? && !picturePoke.running?
      end
      if shakes<4
        @sprites["shadow#{targetBattler}"].visible=oldvisible
        spriteBall.dispose
      else
        spriteBall.tone=Tone.new(-64,-64,-64,128)
        pbSEPlay("balldrop",100,150)
        @sprites["capture"]=spriteBall
        spritePoke.visible=false
      end
    end

    (I also slowed down the ball wiggles, because I felt they were abnormally fast before)

    On another note, might anyone know the specific changes to the form's page framerate fix? I have a heavily edited essentials and am not really interested in any of the new releases features(though they are nice!), but that's one thing that's been bugging me(pun intended).
     
    664
    Posts
    15
    Years
  • Hey, this looks like it's come on a long way from when I left!
    Great job Maruno, I never had any doubts that Essentials was in the right hands.
     

    IceGod64

    In the Lost & Found bin!
    624
    Posts
    15
    Years
  • If I'm not mistaken, you left before even the new maps were in place, right CNG?

    You're also absolutely right, Essentials is just getting better and better!
     
    14
    Posts
    9
    Years
    • Age 33
    • Seen Sep 25, 2023
    Woot, the first post didn't mention it (but the wiki did): the animation for walking through tall grass has been fixed! That's always been my biggest gripe, so needless to say, this is glorious. Many of the other changes will prove useful as well, and I'm sure not only to me.

    So, thanks for that.~
     
    Last edited:
    Status
    Not open for further replies.
    Back
    Top