Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

Learning RGSS (Split from: post What's On Your Mind)

So guys. This is something I've just been thinking...
I enjoy RPGMaker a lot, but I feel I don't get the best out of it because to do anything substantial you must use scripts...

And so if anyone would be willing to teach me some RGSS I'd be very greatful. Be it a tiny slither or an extensive chunk.
I've got nothing to pay for such a service other than the promise of "If you need help with a project, I'll gladly do it."

Anyway. If any of you are interested in teaching this incompetent shit some code. Let me know :)
 
I assume you'll just want to edit what's already there. Like rearrange menus. Add more frames to sprite sheets. Control pictures and junk through scripts instead of events.
I might be able to help you out. But I've never been a good teacher.
 
That would be awesome! I'd like to be able to create things like my own menus and other simple things, but whatever you feel you can teach I would be very greatful!
Don't worry about how you're teaching though. Any great wisdom imparted would be a godsend.

I can't do today due to going to work and then going to sleep, but if you let me know when you're able to teach and I'll be happy to work around that :)
Thank you very much ^-^
 
I'm/we're always here in the scripting support forum should you need help with anything specific. I may also make some generic tutorials soon as I've been helping guys in irc learn the basics. Other than that, what's your starting point - how much do you know so far?
 
I need help with something specific, regarding minkoffs rtab system in rmxp. I've been messing around with configuration settings but I'm stuck on a part.
 
Are people still interested in tutorials? I'm thinking about learning RGSS myself and I can write my own tutorial as I learn.

Here's a commented test scene that shows a window saying "Hello World"
Ruby:
#==============================================================================

# ** Scene_HelloWorld

#------------------------------------------------------------------------------

#  A test scene class.

#==============================================================================

class Scene_HelloWorld < Scene_Base

  

  #==============================================================================

  # ** Window_HelloWorld

  #------------------------------------------------------------------------------

  #  Window class where we show "Hello World".

  #==============================================================================

  class Window_HelloWorld < Window_Base

    

    TEXT_ALIGNMENT = 1 # 1 means text will be centre to it's rectangle

  

    #--------------------------------------------------------------------------

    # * Construction: called with Window_HelloWorld.new( x, y, width, height )

    #--------------------------------------------------------------------------

    def initialize( x, y, width, height )

      super( x, y, width, height ) # Window_Base.initialize( x, y, width, height )

      

      refresh # Draw contents

    end

    

    #--------------------------------------------------------------------------

    # * Where all the drawing is done, call this when contents change

    #--------------------------------------------------------------------------

    def refresh

      contents.clear # Clear graphics in the window

      

      # Size of text box is x,y,width,heigth

      # Text to draw "Hello World"

      # With out constant TEXT_ALIGNMENT

      draw_text( 0, 0, contents.width, contents.height, "Hello World", TEXT_ALIGNMENT )

    end

    

  end

  

  #--------------------------------------------------------------------------

  # * Called when the scene is first pushed onto the SceneManager

  #--------------------------------------------------------------------------

  def start

    super # Scene_Base.start

    

    create_window( 160, 80 )

  end

  

  #--------------------------------------------------------------------------

  # * Called on the RGSS update thread every cycle

  #--------------------------------------------------------------------------

  def update

    super # Scene_Base.update

    

    # When the B button is pressed (Esc key, X key default)

    if Input.trigger?( :B )

      return_scene # SceneManager will return to the last scene viewed

    end

  end

  

  #--------------------------------------------------------------------------

  # * Creates a new Window_HelloWorld in the middle of the screen

  #--------------------------------------------------------------------------

  def create_window( width, height )

    # Calculate where our window's upper left corner is

    middleX = ( Graphics.width / 2 ) - ( width / 2 )

    middleY = ( Graphics.height / 2 ) - ( height / 2 )

    

    # Create Window_HelloWorld at left,top with width,height

    @window = Window_HelloWorld.new( middleX, middleY, width, height )

  end

  

end

Start it with SceneManager.call( Scene_HelloWorld )

I made a Parallel Process event on the map that has this Conditional Branch;
Code:
@>Conditional Branch: The Y Button is Being Pressed

    @>Script; SceneManager.call( Scene_HelloWorld )

    @>

 :  Branch End

@>
So when you hit the Y button (Defaults to S on the keyboard) the test scene will open (Which you can close with the B button, default for that is Esc or X)

EDIT: Wow didn't realise just HOW simple RGSS is, you can create a custom battle system really easily with it.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top