COMBAT-LESS, INVENTORY-LESS UI

RPG Maker VX Ace

Not every story features combat. This script removes combat and inventory from the game UI.

  • bentelk
  • 01/23/2013 04:53 PM
  • 9956 views
Yume Nikki is perhaps the most famous example - that I can think of - of a combat-less RPG Maker game. Combat is often an expected aspect in RPGs, but when making a game, you should ask yourself whether it's really needed, or whether you're including it just because it's an RPG and "RPGs have combat."

* Does it make sense for the characters to be fighting? (To the death?)
* Does combat add to the story, or does it get in the way of it?
* If you remove combat from the game, will the game be better?

This last point is particularly interesting, and difficult to accept as a designer: it's always easier to add something new than it is to remove something you spent time on... but it's important to remember that more does not always equal better.

"A designer knows he has achieved perfection not when there is nothing left to add, but when there is nothing left to take away." ~ Antoine de Saint-Exupery

I would also personally encourage RPG Maker game designers to try making a combat-less game at least once in their life :)

* It lets you release a game faster, or perhaps at all! (No time spent worrying about game difficulty, balance, skills, equipment, leveling, experience... have you ever got so caught up on these things, you were unable to progress?)
* It makes you think about RPGs in a different way, and focus on other aspects of an RPG.

Certainly, combat is appropriate for many games, but not for all games. For those games where it's not, you can gut the system from RPG Maker entirely. (In addition to gutting the code, remember to delete the art, sound effects, and other unused assets from your final game package, to reduce the size of the download.)

Posts

Pages: 1
wow thanks for the scripts , could you also make a scripts that have only Items , Save and Load in menu screen?
Hello! Thanks for this awesome script, but I do have a small question for you. How can I add items to this list? I'm wanting my players to access their inventory to see what they have gather which will help them progress through the game. Please respond when able to. Thanks.
Katzerix: first of all, I've updated the script so that you no longer need to modify the base files, and instead just add a new script block. this is not only considered better practice, but probably makes it easier for people to install!

as to your question: check out the new script. you can add new text to the menus by updating both the "Create Command List" and "Create Command Window" sections. so:

#--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
    @command_window = Window_GameEnd.new
    @command_window.set_handler(:inventory, method(:command_inventory))
    @command_window.set_handler(:save,     method(:command_save))
    @command_window.set_handler(:shutdown, method(:command_shutdown))
    @command_window.set_handler(:cancel,   method(:return_scene))
  end


and:

#--------------------------------------------------------------------------
  # * Create Command List
  #--------------------------------------------------------------------------
  def make_command_list
    add_command("Inventory", :inventory)
    add_command(Vocab::save,     :save)
    add_command(Vocab::shutdown, :shutdown)
    add_command(Vocab::cancel,   :cancel)
  end


it's important that we used ":inventory" in both add_command and set_handler. this is the identifier that ties things together across the code. you can make up your own identifies like this whenever you want, just make sure you pick something that hasn't already been used elsewhere!

finally, we have to make the function (which we identified as ":command_inventory") to actually handle the new menu item. add this to "class Scene_End":

#--------------------------------------------------------------------------
  # * new inventory command!
  #--------------------------------------------------------------------------
  def command_inventory
    SceneManager.call(Scene_Item)
  end


again, the important part here is that ":command_inventory" matches "def command_inventory" - again, you could call these anything, so long as they match, and don't conflict with something else.

if you need to add your own items to the menu, follow the same procedure. SceneManager.call(Scene_XXXXX) is useful for opening any of the menu interfaces in the game. take a look at the list of "Scene_XXXXX" items in the Script Editor for a full list (for example, you could even make a menu item that calls Scene_Gameover!)
Pages: 1