RPG Maker Forums

So this will be a mass topic of a few scripts I made emulating a mix of current and past Dragon Quest/Warrior games. Enjoy!

DQ Style Status
Jamiras843 

Introduction
This script is used to give the game a more DQ stylesque status menu. It is loosely based off the DQIV-VI DS remakes. There are slight modifications here and there. Unfortunately there is not much customization due to the fact that it is supposed to mimic the DQ style.

Features

  • status is now broken up into three different windows.
  • minimal customization such as show face and bio attributes.
  • utilizes the nickname to be anything from gender to personality.
  • simple plug and play design
Screenshots




How to Use
Plug and play in the Materials section above main

Script

#============================================================================# [VXAce] Dragon Quest Status V1.00 (finished)#----------------------------------------------------------------------------# By Jamiras843## Features:# V1.00# * New status window similar to DQ DS remakes# * Minimal customization (sorry guys)#============================================================================$imported = {} if $imported.nil?$imported["Dragon Quest Status"] = truemodule Jami_DQ_Status#========================================================================# Script options#------------------------------------------------------------------------# Here you edit some simple aspects of the menu##========================================================================SHOW_EXP = true #Shows total EXPVOCAB_EXP = "Ex:" #I use "Ex:"LENGTH2 = 40 #Changes the text length of VOCAB_EXPSHOW_BIO = false #Shows Actor bio/descriptionSHOW_FACE = true #Shows Actor face graphicSHOW_NICKNAME = true #Show Actor nick nameVOCAB_NICKNAME = "Personality:" # I use "Sex" or "Personality"LENGTH1 = 100 #Changes the text length of VOCAB_NICKNAMEend #end module Jami_DQ_Menu#============================================================================# WARNING: Do not edit below unless you know what you are doing. This script# is rather sloppy but it does its job.#============================================================================#==============================================================================# ** Window_Status_Main#------------------------------------------------------------------------------# This window displays full status specs on the status screen.#==============================================================================class Window_Status_Main < Window_Selectabledef initialize(actor)super(0, 0, main_width, line_height * 8)@actor = actorrefreshdraw_horiz_line(line_height * 1)activateend #initialize#--------------------------------------------------------------------------# * Main Window Width#--------------------------------------------------------------------------def main_widthif Jami_DQ_Status::SHOW_FACE == true320else268endend#--------------------------------------------------------------------------# * Set Actor#--------------------------------------------------------------------------def actor=(actor)return if @actor == actor@actor = actorrefreshend #actor#--------------------------------------------------------------------------# * Refresh#--------------------------------------------------------------------------def refreshcontents.cleardraw_main_contentend #refresh#--------------------------------------------------------------------------# * Main Content#--------------------------------------------------------------------------def draw_main_contents1 = @actor.max_level? ? "-------" : @actor.expdraw_actor_name(@actor, 20, 0)draw_actor_icons(@actor, 200, 0)if Jami_DQ_Status::SHOW_FACE == truedraw_face(@actor.face_name, @actor.face_index, 0, 40, enabled = true)draw_actor_class(@actor, 128, y + line_height * 1)draw_text(128, y + line_height * 2, Jami_DQ_Status::LENGTH1, y + line_height, Jami_DQ_Status::VOCAB_NICKNAME)draw_actor_nickname(@actor, Jami_DQ_Status::LENGTH1 + 128, y + line_height * 2)draw_actor_level(@actor, 128, y + line_height * 3)draw_actor_hp(@actor, 128, y + line_height * 4)draw_actor_mp(@actor, 128, y + line_height * 5)if Jami_DQ_Status::SHOW_EXP == truedraw_text(128, y + line_height * 6, Jami_DQ_Status::LENGTH2, y + line_height, Jami_DQ_Status::VOCAB_EXP)draw_text(Jami_DQ_Status::LENGTH2 + 128, y + line_height * 6, 70, line_height, s1)end #show expelsedraw_actor_class(@actor, x, y + line_height * 1)draw_text(x, y + line_height * 2, Jami_DQ_Status::LENGTH1, y + line_height, Jami_DQ_Status::VOCAB_NICKNAME)draw_actor_nickname(@actor, Jami_DQ_Status::LENGTH1, y + line_height * 2)draw_actor_level(@actor, x, y + line_height * 3)draw_actor_hp(@actor, x, y + line_height * 4)draw_actor_mp(@actor, x, y + line_height * 5)if Jami_DQ_Status::SHOW_EXP == truedraw_text(x, y + line_height * 6, Jami_DQ_Status::LENGTH2, y + line_height, Jami_DQ_Status::VOCAB_EXP)draw_text(Jami_DQ_Status::LENGTH2, y + line_height * 6, 70, line_height, s1)end #show expend #show faceend#--------------------------------------------------------------------------# * Draw Horizontal Line#--------------------------------------------------------------------------def draw_horiz_line(y)contents.fill_rect(0, 24, contents_width, 2, line_color)end #draw line#--------------------------------------------------------------------------# * Get Color of Horizontal Line#--------------------------------------------------------------------------def line_colorcolor = normal_colorcolor.alpha = 200colorend #line colorend #window main#==============================================================================# ** Window_Status_Stats#------------------------------------------------------------------------------# This window displays full status#==============================================================================class Window_Status_Stats < Window_Basedef initialize(actor)super(stat_x + 4, 0, 220, line_height * 8)@actor = actorrefreshactivateend #initialize#--------------------------------------------------------------------------# * Stat Window X#--------------------------------------------------------------------------def stat_xif Jami_DQ_Status::SHOW_FACE == true320else268end #ifend #stat X#--------------------------------------------------------------------------# * Set Actor#--------------------------------------------------------------------------def actor=(actor)return if @actor == actor@actor = actorrefreshend #actor#--------------------------------------------------------------------------# * Refresh#--------------------------------------------------------------------------def refreshcontents.cleardraw_stat_content(0, 0)end #refresh#--------------------------------------------------------------------------# * Draw Parameters#--------------------------------------------------------------------------def draw_stat_content(x, y)[2, 3, 4, 5, 6, 7].each_with_index {|p, i| draw_actor_param(@actor, x, y + line_height * i, p) }end #Stat Contentend #window stat#==============================================================================# ** Window_Status_Equip#------------------------------------------------------------------------------# This window displays full status specs on the status screen.#==============================================================================class Window_Status_Equip < Window_Basedef initialize(actor)super(stat_x + 4, line_height * 8 + 4, 220, line_height * 6)@actor = actorrefreshactivateend #initialize#--------------------------------------------------------------------------# * Stat Window X#--------------------------------------------------------------------------def stat_xif Jami_DQ_Status::SHOW_FACE == true320else268end #if trueend #stat X#--------------------------------------------------------------------------# * Set Actor#--------------------------------------------------------------------------def actor=(actor)return if @actor == actor@actor = actorrefreshend #actor#--------------------------------------------------------------------------# * Refresh#--------------------------------------------------------------------------def refreshcontents.cleardraw_equip_content(0, 0)end #refresh#--------------------------------------------------------------------------# * Equip Content#--------------------------------------------------------------------------def draw_equip_content(x, y)@actor.equips.each_with_index do |item, i|draw_item_name(item, x, y + line_height * i)endendend#==============================================================================# ** Window_Status_Bio#------------------------------------------------------------------------------# This window displays character Bio.#==============================================================================class Window_Status_Bio < Window_Basedef initialize(actor)super(0, line_height * 14 + 8, 544, line_height * 3)@actor = actorrefreshactivateend #initialize#--------------------------------------------------------------------------# * Set Actor#--------------------------------------------------------------------------def actor=(actor)return if @actor == actor@actor = actorrefreshend #actor#--------------------------------------------------------------------------# * Refresh#--------------------------------------------------------------------------def refreshcontents.cleardraw_stat_bioend #refresh#--------------------------------------------------------------------------# * Draw Bio#--------------------------------------------------------------------------def draw_stat_biodraw_text_ex(0, 0, @actor.description)endend #class bio#==============================================================================# ** Scene_Status#------------------------------------------------------------------------------# This class performs the status screen processing.#==============================================================================class Scene_Status < Scene_MenuBase#--------------------------------------------------------------------------# * Start Processing#--------------------------------------------------------------------------def startsuper@status_window1 = Window_Status_Main.new(@actor)@status_window2 = Window_Status_Stats.new(@actor)@status_window3 = Window_Status_Equip.new(@actor)if Jami_DQ_Status::SHOW_BIO == true@status_window4 = Window_Status_Bio.new(@actor)end@status_window1.set_handler:)cancel, method:)return_scene))end#--------------------------------------------------------------------------# * Change Actors#--------------------------------------------------------------------------def on_actor_change@status_window.actor = @actor@status_window.activateendend


FAQ
None as of yet

Credit and Thanks

  • Jamiras843
Author's Notes (AKA Bug Log)

  • none noted

Latest Threads

Latest Posts

Latest Profile Posts

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!
one bad plugin combo later and one of my followers is moonwalking off the screen on his own... I didn't even more yet on the new map lol.
time for a new avatar :)

Forum statistics

Threads
106,017
Messages
1,018,354
Members
137,801
Latest member
topsan
Top