Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Aegisrox

Pages: [1]
1
Resources / Question: Software for story telling with addons
« on: December 09, 2016, 02:53:20 AM »
Hi members of CP! I hope you are well!

Anyone can recommend me a story telling software for planning games that include
*dialogues
*story narrative
*and also is include to do the story board scenes shots even better

Thanks for your time!


2
Welcome! / RE:WELCOME! LMAO!!!
« on: December 04, 2016, 09:56:53 PM »
Hi again Guys! My nick is Aegisrox, but you can call me Aegis.

I reborn from the ashes i want to hang and chill even shit with this wonderfull community.

Long time ago we make will Blizzard (not gonna lie, his did almost everything) The Pokemon MMO project. Right now, i take a step back from coding and will try to improve my 3d rendering experience.

Was apprentice of Rpg Maker thanks to my close friend Blizzard although Right now, i don't feel good enough to start any new project, but if i can offer a little guidelines to any user can be done, step by step.

Please take patience with me and i hope we get along :)

Aegis, over and out!

3
Hi Community how are you guys!!! :D

The thing is that i want to adquire a VPS or a Dedicated server to host the community game "Pokemon Remexos" and i need some recommedantions :D

Any of you have idea of a good VPS or Dedicated server that i should consider? If it chep more better  ;)

The features i minumun need are the followings:
* Minimun 8GB RAM
* Minimum Dual Core
* Minimum 10 MB Connection

If you have any ideas please post and i hope your anwers  :naughty:

Thanks very much and thanks in advance  :haha:

My best regards

Aegis

4
RMXP Script Database / [XP] Chat Mouse Click Activation
« on: November 07, 2013, 04:38:02 PM »
Chat Mouse Click Activation
Authors: Wizered67, Aegisrox
Version: 1.0
Type: Mouse Script
Key Term: RMX-OS Plugin

Introduction

This scripts allow to activate the chat when you click on the chat line input, such as alternative to press the key F6.

Features

  • Press inside the chat box input line to activate the chat
  • Press outside of the chat box to desactivate

Screenshots

No Screenshots.  Only click on the text input of the chat of RMX!  What can I say?

Demo

No Demo

Script

Requires Mouse Controller of Blizzard in order to work.

Code: [Select]
class Scene_Map
    CHATBOX_X = 0
    CHATBOX_Y = RMXOS::Data::SCREEN_HEIGHT - (RMXOS::Options::CHATBOX_LINES * RMXOS::Data::ChatFontHeight) - RMXOS::Data::ChatFontHeight
    CHATBOX_WIDTH = RMXOS::Options::CHATBOX_WIDTH
    CHATBOX_HEIGHT = (RMXOS::Options::CHATBOX_LINES * RMXOS::Data::ChatFontHeight)
    alias update_chatbox update
    def update
    if Input.trigger?(Input::Key['Mouse Left'])
        if $mouse.x >= CHATBOX_X && $mouse.x <= CHATBOX_X + CHATBOX_WIDTH && $mouse.y >= CHATBOX_Y && $mouse.y <= CHATBOX_Y + CHATBOX_HEIGHT
            $game_temp.chat_active = true
        else
            $game_temp.chat_active = false
        end
    end

    update_chatbox
    end
end


Instructions

Just create a new script a put below de Blizzard Mouse controller


Compatibility

I don't know of any scripts this wouldn't be compatible with. But i tried with others mouse scripts and works great.

Credits and Thanks

  • Wizered67 for doing
  • Aegisrox for setting constants


Author's Notes
Enjoy it ;).

5
Troubleshooting / Help / [Solved][Question/Help] Mouse script in MRMX
« on: November 04, 2013, 07:03:39 PM »
Hi! I'am Aegis from MRMX, all of you know me xD

But i am writing because i have a problem with a custom script and i need the help to the community :D

The thing is that i am attemp to implement the Mouse Drop menu of nattman on MRMX, but i have some problems...

The thing is that the i implemented the code and it works pretty well, but works only just the player loggin in and just the player warp to another map...

As soon the player give one step in any direction, the drop menu doesn't appear again :(

I tried a lot of things but it makes me crazy xD

The strange thing is that the scripts works well in a blank RMX-OS project, the problem is the compatibility with pokemon essentials, that makes lost the player control when the players gives 1 step :(

In any case, this are the 3 scripts that i modified to works but essentials, feel free to take a look and tell me if you have any ideas to works well:

Mouse controller
Code: [Select]
#=begin
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Mouse Controller by Blizzard
# Version: 2.0b
# Type: Custom Input System
# Date: 9.10.2009
# Date v2.0b: 22.7.2010
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#  
#  This work is protected by the following license:
# #----------------------------------------------------------------------------
# #  
# #  Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
# #  ( http://creativecommons.org/licenses/by-nc-sa/3.0/ )
# #  
# #  You are free:
# #  
# #  to Share - to copy, distribute and transmit the work
# #  to Remix - to adapt the work
# #  
# #  Under the following conditions:
# #  
# #  Attribution. You must attribute the work in the manner specified by the
# #  author or licensor (but not in any way that suggests that they endorse you
# #  or your use of the work).
# #  
# #  Noncommercial. You may not use this work for commercial purposes.
# #  
# #  Share alike. If you alter, transform, or build upon this work, you may
# #  distribute the resulting work only under the same or similar license to
# #  this one.
# #  
# #  - For any reuse or distribution, you must make clear to others the license
# #    terms of this work. The best way to do this is with a link to this web
# #    page.
# #  
# #  - Any of the above conditions can be waived if you get permission from the
# #    copyright holder.
# #  
# #  - Nothing in this license impairs or restricts the author's moral rights.
# #  
# #----------------------------------------------------------------------------
#
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#
# Compatibility:
#
#   90% compatible with SDK v1.x. 80% compatible with SDK v2.x. May cause
#   incompatibility issues with other custom input Systems. Works with "Custom
#   Game Controls" from Tons of Add-ons and Blizz-ABS's custom controls.
#   This script is not meant to be used as a standalone but rather in
#   combination with special menus that are properly adapted to support a mouse
#   controller system.
#  
#  
# Features:
#
#   - fully automated mouse control in game
#   - can be enhanced with "Custom Game Controls" from Tons of Add-ons
#   - can be enhanced with "Blizz-ABS Controls"
#   - can be enhanced with "RMX-OS"
#
# new in 2.0b:
#
#   - added option to hide Windows' cursor
#   - added possibility to hide and show the ingame cursor during the game
#   - added possibility to change the cursor icon
#   - added several new options
#   - optimized
#
#
# Instructions:
#
# - Explanation:
#
#   This script can work as a stand-alone for window option selections. To be
#   able to use the mouse buttons, you need a custom Input module. The
#   supported systems are "Custom Game Controls" from Tons of Add-ons,
#   Blizz-ABS Custom Controls and RMX-OS Custom Controls. This script will
#   automatically detect and apply the custom input modules' configuration
#   which is optional.
#  
# - Configuration:
#
#   MOUSE_ICON          - the default filename of the icon located in the
#                         Graphics/Pictures folder
#   APPLY_BORDERS       - defines whether the ingame cursor can go beyond the
#                         game window borders
#   WINDOW_WIDTH        - defines the window width, required only when using
#                         APPLY_BORDER
#   WINDOW_HEIGHT       - defines the window height, required only when using
#                         APPLY_BORDER
#   HIDE_WINDOWS_CURSOR - hides the Windows Cursor on the window by default
#   AUTO_CONFIGURE      - when using "Custom Game Controls" from Tons of
#                         Add-ons, Blizz-ABS or RMX-OS, this option will
#                         automatically add the left mouse button as
#                         confirmation button
#  
# - Script Calls:
#  
#   You can use a few script calls to manipulate the cursor. Keep in mind that
#   these changes are not being saved with the save file.
#  
#   To hide the ingame Mouse Cursor, use following call.
#  
#     $mouse.hide
#  
#   To show the ingame Mouse Cursor, use following call.
#  
#     $mouse.show
#  
#   To change the cursor image, use following call. Make sure your image is
#  
#     $mouse.set_cursor('IMAGE_NAME')
#  
#  
# Additional Information:
#  
#   Even though there is an API call to determine the size of the window, API
#   calls are CPU expensive so the values for the window size need to be
#   configured manually in this script.
#  
#
# If you find any bugs, please report them here:
# http://forum.chaos-project.com
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=

$mouse_controller = 2.0

#===============================================================================
# Mouse
#===============================================================================

class Mouse
  
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# START Configuration
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  MOUSE_ICON = 'Pokeball2'
  AUTO_CONFIGURE = true
  APPLY_BORDERS = true
  WINDOW_WIDTH = 640
  WINDOW_HEIGHT = 480
  HIDE_WINDOWS_CURSOR = false
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
# END Configuration
#::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  
  if HIDE_WINDOWS_CURSOR
    Win32API.new('user32', 'ShowCursor', 'i', 'i').call(0)
  end
  
  SCREEN_TO_CLIENT = Win32API.new('user32', 'ScreenToClient', %w(l p), 'i')
  READ_INI = Win32API.new('kernel32', 'GetPrivateProfileStringA', %w(p p p p l p), 'l')
  FIND_WINDOW = Win32API.new('user32', 'FindWindowA', %w(p p), 'l')
  CURSOR_POSITION = Win32API.new('user32', 'GetCursorPos', 'p', 'i')
  
  def initialize
    @cursor = Sprite.new
    @cursor.z = 1000000
    self.set_cursor(MOUSE_ICON)
    update
  end
  
  def update
    @cursor.x, @cursor.y = self.position
  end
  
  def x
    return @cursor.x
  end
  
  def y
    return @cursor.y
  end
  
  def position
    x, y = self.get_client_position
    if APPLY_BORDERS
      if x < 0
        x = 0
      elsif x >= WINDOW_WIDTH
        x = WINDOW_WIDTH - 1
      end
      if y < 0
        y = 0
      elsif y >= WINDOW_HEIGHT
        y = WINDOW_HEIGHT - 1
      end
    end
    return x, y
  end
  
  def get_client_position
    pos = [0, 0].pack('ll')
    CURSOR_POSITION.call(pos)
    SCREEN_TO_CLIENT.call(WINDOW, pos)
    return pos.unpack('ll')
  end
  
  def set_cursor(image)
    @cursor.bitmap = RPG::Cache.picture(image)
  end
  
  def show
    @cursor.visible = true
  end
  
  def hide
    @cursor.visible = false
  end
  
  def self.find_window
    game_name = "\0" * 256
    READ_INI.call('Game', 'Title', '', game_name, 255, '.\\Game.ini')
    game_name.delete!("\0")
    return FIND_WINDOW.call('RGSS Player', game_name)
  end
  
  WINDOW = self.find_window
  
end

$mouse = Mouse.new

#==============================================================================
# module Input
#==============================================================================

module Input
  
  class << Input
    alias update_mousecontroller_later update
  end
  
  def self.update
    $mouse.update
    update_mousecontroller_later
  end
  
  if Mouse::AUTO_CONFIGURE
    if $BlizzABS
      C.push(Input::Key['Mouse Left']) if !C.include?(Input::Key['Mouse Left'])
      if !Attack.include?(Input::Key['Mouse Right'])
        Attack.push(Input::Key['Mouse Right'])
      end
    elsif $tons_version != nil && $tons_version >= 6.4 &&
        TONS_OF_ADDONS::CUSTOM_CONTROLS || defined?(RMXOS)
      C.push(Input::Key['Mouse Left']) if !C.include?(Input::Key['Mouse Left'])
    end
  end
  
end

#===============================================================================
# Rect
#===============================================================================

class Rect
  
  def covers?(x, y)
    return !(x < self.x || x >= self.x + self.width ||
        y < self.y || y >= self.y + self.height)
  end
  
end

#===============================================================================
# Sprite
#===============================================================================

class Sprite
  
  def mouse_in_area?
    return false if self.bitmap == nil
    return ($mouse.x >= self.x && $mouse.x < self.x + self.src_rect.width &&
        $mouse.y >= self.y && $mouse.y < self.y + self.src_rect.height)
  end
  
end

#===============================================================================
# Window_Base
#===============================================================================

class Window_Base
  
  def mouse_in_area?
    return ($mouse.x >= self.x && $mouse.x < self.x + self.width &&
        $mouse.y >= self.y && $mouse.y < self.y + self.height)
  end
  
  def mouse_in_inner_area?
    return ($mouse.x >= self.x + 16 && $mouse.x < self.x + self.width - 16 &&
        $mouse.y >= self.y + 16 && $mouse.y < self.y + self.height - 16)
  end
  
end

#===============================================================================
# Window_Selectable
#===============================================================================

class Window_Selectable
  
  alias contents_is_mousecontroller_later contents=
  def contents=(bitmap)
    contents_is_mousecontroller_later(bitmap)
    begin
      update_selections
      update_mouse if self.active
    rescue
    end
  end
  
  alias index_is_mousecontroller_later index=
  def index=(value)
    index_is_mousecontroller_later(value)
    update_selections
  end
  
  alias active_is_mousecontroller_later active=
  def active=(value)
    active_is_mousecontroller_later(value)
    update_cursor_rect
  end
  
  def update_selections
    @selections = []
    index, ox, oy = self.index, self.ox, self.oy
    (0...@item_max).each {|i|
        @index = i
        update_cursor_rect
        rect = self.cursor_rect.clone
        rect.x += self.ox
        rect.y += self.oy
        @selections.push(rect)}
    @index, self.ox, self.oy = index, ox, oy
    self.cursor_rect.empty
  end
  
  alias update_mousecontroller_later update
  def update
    update_mouse if self.active
    update_mousecontroller_later
  end
  
  # Aegis fix
  def mouse_in_area?
    return ($mouse.x >= self.x && $mouse.x < self.x + self.width &&
        $mouse.y >= self.y && $mouse.y < self.y + self.height)
  end
  
  def mouse_in_inner_area?
    return ($mouse.x >= self.x + 16 && $mouse.x < self.x + self.width - 16 &&
        $mouse.y >= self.y + 16 && $mouse.y < self.y + self.height - 16)
  end
  # Aegis fix
  
  def update_mouse
    if self.mouse_in_inner_area?
      update_mouse_selection
      return
    end
    self.index = -1
    if self.contents != nil && @selections.size > 0 && self.mouse_in_area?
      update_mouse_scrolling
    end
  end
  
  def update_mouse_selection
    update_selections if @selections.size != @item_max
    @selections.each_index {|i|
        if @selections[i].covers?($mouse.x - self.x - 16 + self.ox,
            $mouse.y - self.y - 16 + self.oy)
          self.index = i if self.index != i
          return
        end}
    self.index = -1
  end
  
  def update_mouse_scrolling
    if Input.repeat?(Input::C)
      if $mouse.x < self.x + 16
        if self.ox > 0
          $game_system.se_play($data_system.cursor_se)
          self.ox -= @selections[0].width
          self.ox = 0 if self.ox < 0
        end
      elsif $mouse.x >= self.x + self.width - 16
        max_ox = self.contents.width - self.width + 32
        if self.ox <= max_ox
          $game_system.se_play($data_system.cursor_se)
          self.ox += @selections[0].width
          self.ox = max_ox if self.ox >= max_ox
        end
      elsif $mouse.y < self.y + 16
        if self.oy > 0
          $game_system.se_play($data_system.cursor_se)
          self.oy -= @selections[0].height
          self.oy = 0 if self.oy < 0
        end
      elsif $mouse.y >= self.y + self.height - 16
        max_oy = self.contents.height - self.height + 32
        if self.oy <= max_oy
          $game_system.se_play($data_system.cursor_se)
          self.oy += @selections[0].height
          self.oy = max_oy if self.oy >= max_oy
        end
      end
    end
  end
  
end
#=end

Mouse enchacement
Code: [Select]
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Mouse Controller Enhancement Script by Nathmatt
# Version: 1.74
# Type: Add On
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#  
#  This work is protected by the following license:
# #----------------------------------------------------------------------------
# #  
# #  Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
# #  ( http://creativecommons.org/licenses/by-nc-sa/3.0/ )
# #  
# #  You are free:
# #  
# #  to Share - to copy, distribute and transmit the work
# #  to Remix - to adapt the work
# #  
# #  Under the following conditions:
# #  
# #  Attribution. You must attribute the work in the manner specified by the
# #  author or licensor (but not in any way that suggests that they endorse you
# #  or your use of the work).
# #  
# #  Noncommercial. You may not use this work for commercial purposes.
# #  
# #  Share alike. If you alter, transform, or build upon this work, you may
# #  distribute the resulting work only under the same or similar license to
# #  this one.
# #  
# #  - For any reuse or distribution, you must make clear to others the license
# #    terms of this work. The best way to do this is with a link to this web
# #    page.
# #  
# #  - Any of the above conditions can be waived if you get permission from the
# #    copyright holder.
# #  
# #  - Nothing in this license impairs or restricts the author's moral rights.
# #  
# #----------------------------------------------------------------------------
#
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Instructions:
#
#  To use the event effects in this script you will need to name the following.
#
#  definitions
#  d    = 2 down, 4 left 6, right, or 8 up
#  right click to access an events command list
#
#  \ignore               Use on events you want to be walkable
#
#  \msg[message]         This will add the message above the highlighted event
#
#  \directionfix[d]      If an event has a graphic and needs a specific direction
#                        they must be named this d as the open direction
#
#  \direction[d]         If an event has no graphic or isn't direction specific
#                        they must be named this d as the open direction
#
#  \commands             This will create a command list for each page with the
#                        name of the first avalible comment
#
#  \curser[graphic]      This will change the graphic of the curser while
#                        over that event
#
#  \auto                 This will start the event as soon as you click it
#
#  \door[id]             This will run the pages of an event as the following
#                        id is the item id needed to unlock the door
#                        first   page when door is locked
#                        second page when unlocking the door
#                        third   page any time after being unlocked
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Script Calls:
#
#  $MCES.disabled = true/false           whether or not this script is disabled
#
#  $MCES.movement_disabled = true/false  whether or not movement is disabled
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
module MCES
  
  Version = 1.74
  #============================================================================
  # MCES::Config
  #----------------------------------------------------------------------------
  #  The configuration for $MCES
  #============================================================================
  module Config
    No_Walk_Tag   = 7         # The terrain tag for unreachable locations
    Text_Size     = 20        # The size of the event name text
    Text_Color    = [0,0,160] # The color of the event name text
    Click_Graphic = false     # The sprite placed for move target
    Range         = 30        # The range for allows click movement    
  end

  #============================================================================
  # MCES::Cache
  #----------------------------------------------------------------------------
  # Stores data for use throughout $MCES
  #============================================================================
  module Cache
    PathDirs = [[0, 1, 2], [-1, 0, 4], [1, 0, 6], [0, -1, 8]]
    TDirs = [[0, true], [1, true], [2, true], [3, true], [4, true], [5, true],
        [6, true], [7, true], [8, true], [9, true]]
    DirOffsets = [[0, 0], [-1, 1], [0, 1], [1, 1], [-1, 0], [0, 0], [1, 0],
                  [-1, -1], [0, -1], [1, -1]]
    Direction = 0
    Commands = 1
    Curser = 2
    Auto = 3
    Door = 4
    Msg = 5
    Ignore = 6
  end

  #============================================================================
  # MCES::Processor
  #----------------------------------------------------------------------------
  #  This class performs the $MCES's processing.
  #============================================================================
  class Processor
    
    attr_accessor :item,:curser_lock,:disabled,:movement_disabled,:location
    attr_reader   :event_start
    
    def initialize
      @disabled,@movement_disabled,@location = false,false,[]
      @lwait,@rwait,curser_lock,@carry_sprite = 0,0,false,Sprite.new
      @carry_sprite.z = 999999;@carry_sprite.bitmap = Bitmap.new(24, 24)
      @mouse_set = true
    end
    
    def update
      if @lwait > 0;@lwait-= 1;end
      if @rwait > 0;@rwait-= 1;end
      @item = $data_items[@item] if @item.is_a?(Numeric)
      return if @disabled
      if !$scene.is_a?(Scene_Map);@lwait = 5;return;end
      if Input.trigger?(Input::Key['Mouse Left']) &&
          !$game_temp.message_window_showing && @lwait == 0
        @lwait = 5
        check_left
      elsif Input.trigger?(Input::Key['Mouse Right']) && @rwait == 0
        @rwait = 5
        check_right
      end
      check_player
      check_carry
      check_mouse
      if @command_window != nil && !@command_window.disposed?
        @command_window.update
      end
    end
    
    def check_left
      x,y = mouse_tile
      return if check_event || !$game_map.passable?(x,y,0) || @movement_disabled ||
        check_terrain_tag(x,y) || check_range(x,y,MCES::Config::Range)
      return if @command_window != nil && !@command_window.disposed?
      $game_player.set(x,y)
    end
    
    def check_event
      $game_map.events.each_value{|event|
      next if event.erased
      if event.mouse_in_area?
        if event.type.include?(MCES::Cache::Ignore)
          return false
        end
        if event.type.include?(MCES::Cache::Auto)
          event.start_event
          return true
        elsif event.type.include?(MCES::Cache::Door)
          event.check_door
          return true
        else
          $game_player.set(event) if !@movement_disabled
          return true
        end
      end}
      return false
    end
      
    
    def check_right
      $game_map.events.each_value{|event|
      next if event.erased
      if event.mouse_in_area?
        if event.type.include?(MCES::Cache::Commands)
          return if @command_window != nil && !@command_window.disposed?
          @command_window = Event_Command.new(event)
          return
        end
      end}
    end
    
    def mouse_tile
      x,y = $mouse.x,$mouse.y
      return (x+$game_map.display_x/4)/32,(y+$game_map.display_y/4)/32
    end
      
      
    def check_terrain_tag(x,y)
      return ($game_map.terrain_tag(x,y) == Config::No_Walk_Tag)
    end
    
    def check_target(x,y=0)
      if x.is_a?(Game_Character)
        c = x
        d = (x.direction_fixed != nil ? x.direction_fixed : x.direction)
        x,y = c.x,c.y
        x += (d == 4 ? -1 : 1) if d != (2 || 8)
        y += (d == 8 ? -1 : 1) if d != (4 || 6)
      end
      return x,y
    end
    
    def check_player
      return if @request == nil
      count = 4
      characters = [$game_player]
      while characters.size > 0 && count > 0
        char = characters.shift
        result = find_path
        result != nil ? char.force_movement = result : characters.push(char)
        count -= 1
      end
    end
    
    def check_carry
      @carry_sprite.x,@carry_sprite.y = $mouse.x,$mouse.y
      if @item != nil
        if @carry_curser != @item.icon_name
          @carry_curser = @item.icon_name
          @carry_sprite.bitmap.blt(0, 0, RPG::Cache.icon(@carry_curser),
            Rect.new(0, 0, 24, 24))
        end
      else
        @carry_curser = nil
        @carry_sprite.bitmap.clear
      end
    end
    
    def check_mouse
      $game_map.events.each_value{|event|
      if event.mouse_in_area?
        next if event.erased
        if event.type.include?(MCES::Cache::Curser)
          $mouse.set_cursor(event.curser)
          @mouse_set = false
          return
        end
      end}
      if !@mouse_set
        return if @curser_lock
        @mouse_set = true
        $mouse.set_cursor(Mouse::MOUSE_ICON)
      end
    end
    
    def request_path(x, y = nil)
      x,y = check_target(x,y)
      if x != nil && y != nil && @request == nil
        @request = PathRequesting.new(x, y)
      end
    end
    
    def distance(x,y,tx,ty)
      return Math.hypot((x - tx),(y - ty))
    end
    
    def check_range(x,y,range)
      pl = $game_player
      return (range <= distance(pl.x,pl.y,x,y))
    end
  
    def find_path
      request = @request
      if request.open.size == 0;@request = nil;return []end
      found = false
      key = request.open.keys.min {|a, b|
          Math.hypot(a[0] - request.tx, a[1] - request.ty) <=>
          Math.hypot(b[0] - request.tx, b[1] - request.ty)}
      request.closed[key[0], key[1]] = request.open[key]
      request.open.delete(key)
      Cache::PathDirs.each {|dir|
      kx, ky = key[0] + dir[0], key[1] + dir[1]
      if kx == request.tx && ky == request.ty
        request.closed[kx, ky] = dir[2]
        found = true
        break
      elsif request.closed[kx, ky] == 0 &&
        $game_player.passable?(key[0], key[1], dir[2])
        request.open[[kx, ky]] = dir[2]
      end}
      return nil unless found
      @request = nil
      return request.backtrack
    end
    
  end

  #============================================================================
  # MCES::Msg_Sprite
  #----------------------------------------------------------------------------
  #  The msg sprite.
  #============================================================================
  class Msg_Sprite < Sprite
  
    def initialize(event)
      super()
      @event = event
      self.z,self.opacity = 1000,0
      self.set
      @h = MCES::Config::Text_Size
      @w = event.msg.size*@h
      c = MCES::Config::Text_Color
      self.bitmap = Bitmap.new(@w,@h)
      self.bitmap.font.size = @h
      self.bitmap.font.color = Color.new(c[0],c[1],c[2])
      self.bitmap.draw_text(0,0,@w,@h,event.msg,1)
    end
  
    def set
      return if !$scene.is_a?(Scene_Map) || @event.erased
      b = @event.get_sprite.inner_bitmap
      xs = @event.get_sprite.x-(@event.get_sprite.cw/2)
      ys = @event.get_sprite.y-@event.get_sprite.ch
      self.x,self.y = xs + (b.width/2)-(@w/2),ys-@h
    end
  
    def update
      self.set
      return self.opacity = 0 if @event.erased
      if @event.mouse_in_area?
        if self.opacity < 255
          self.opacity += 25
        end
      elsif self.opacity > 0
        self.opacity -= 25
      end
    end
  end

  #============================================================================
  # MCES::Set_Sprite
  #----------------------------------------------------------------------------
  #  The set sprite.
  #============================================================================
  class Set_Sprite < Sprite
  
    def initialize(v)
      super
      self.bitmap = RPG::Cache.picture(MCES::Config::Click_Graphic)
      @x,@y,self.opacity,self.z = 0,0,0,1
    end
    
    def set(x,y)
      return if MCES::Config::Click_Graphic == false
      @e,x,y = x,x.x,x.y if x.is_a?(Game_Character)
      @x,@y,self.opacity = x,y,255
    end
  
    def update_screen
      return if self.opacity == 0
      x = ((@x * 128) - $game_map.display_x + 3) / 4
      y = ((@y * 128) - $game_map.display_y + 3) / 4
      self.x,self.y = x,y
    end
  
    def update
      return if MCES::Config::Click_Graphic == false
      update_screen
    end
    
  end

  #============================================================================
  # MCES::Event_Command
  #----------------------------------------------------------------------------
  #  The event command window.
  #============================================================================  
  class Event_Command < Window_Command
  
    def initialize(event)
      @size = 0
      @event = event
      @main_commands = event.commands
      @array = []
      @main_commands.each{|command|
      @array.push(command) if command != nil
      @size = (command.size * 32) if (command.size * 32) > @size}
      super(@size,@array)
      self.x,self.y = $mouse.position
    end
  
    def indexes
      return @main_commands.index(@array[self.index])
    end
    
    def update
      super
      if Input.trigger?(Input::Key['Mouse Left'])
        if self.index >= 0
          @event.start_command(indexes)
          self.dispose
        else
          self.dispose
        end
      end
    end
    
  end

  #============================================================================
  # MCES::Pathrequest
  #----------------------------------------------------------------------------
  #  This class preforms the movement requests.
  #============================================================================
  class PathRequesting
    
    attr_reader :open,:closed,:sx,:sy,:tx,:ty,:jd
    
    def initialize(tx, ty, jd = 0)
      pix = ($BlizzABS != nil ? BlizzABS::Config::PIXEL_MOVEMENT_RATE : 1)
      ox,oy = $game_player.location
      @sx, @sy, @tx, @ty, @jd = ox, oy, tx, ty, jd
      @x_off, @y_off = ox - @sx, oy - @sy
      @open = {[@sx, @sy] => -1}
      @closed = Table.new($game_map.width, $game_map.height)
    end
    
    def backtrack
      cx, cy, x, y, result = @tx, @ty, 0, 0, []
      loop do
        cx, cy = cx - x, cy - y
        break if cx == @sx && cy == @sy
        result.unshift(Cache::TDirs[@closed[cx, cy]])
        x, y = Cache::DirOffsets[@closed[cx, cy]]
      end
      return result
    end
    
  end
  
end

raise('This script requires Mouse Controller by Blizzard to work') if $mouse == nil
$MCES = MCES::Processor.new

#============================================================================
# Game_Character
#----------------------------------------------------------------------------
#  Adds a mouse_in_area? method to any instance of this class.
#============================================================================
class Game_Character_fix
  
  attr_reader   :type
  attr_accessor :icon_name,:direction_fixed
  
  alias mces_character_initialize initialize
  def initialize
    @type = []
    mces_character_initialize
  end
  
  def mouse_in_area?
    return false if get_sprite == nil || get_sprite.is_a?(Array)
    return false if get_sprite.inner_bitmap == nil
    return false if get_sprite.cw == nil || get_sprite.ch == nil
    return true if [$mouse.x/32,$mouse.y/32] == [self.x,self.y]
    b = get_sprite.inner_bitmap
    xs = get_sprite.x-(get_sprite.cw/2)
    ys = get_sprite.y-get_sprite.ch
    return ($mouse.x >= xs && $mouse.x < xs + b.width &&
        $mouse.y >= ys && $mouse.y < ys + b.height &&
        b.get_pixel($mouse.x-xs, $mouse.y-ys) != Color.new(255,255,255,0))
  end
    
  
  def get_sprite
    return if !$scene.is_a?(Scene_Map)
    $scene.spriteset.character_sprites.each{|s|return s if s.character == self}
  end
  
end

#============================================================================
# Game_Event
#----------------------------------------------------------------------------
#  This class sets the events proccesing for MCES.
#============================================================================
class Game_Event_fix < Game_Character_fix
  
  attr_accessor :event_start
  attr_reader   :key,:curser,:msg,:commands,:erased
  
  alias mces_initialize initialize
  def initialize(id,event)
    mces_initialize(id,event)
    @child_interpeter = Interpreter.new
    @event_start = false
    @type,@commands, = [],[]
    check_name
  end
  
  #alias mces_update update
  def mces_update
    mces_update
    @child_interpeter.update
    @msg_sprite.update if @msg_sprite != nil
  end
  
  #alias mces_start start
  def mces_start
    return if @trigger == 0 && (!@event_start || @commands.size > 0)
    mces_start
    @event_start = false
  end
  
  def start_event
    @event_start = true
    start
  end
  
  def check_door
    if @key == $MCES.item
      @child_interpeter.setup(@event.pages[1].list,@id)
      $game_party.gain_item($MCES.item.id, -1)
      $MCES.item = nil
      @key_unlock = true
    elsif @key_unlock
      @child_interpeter.setup(@event.pages[2].list,@id)
    else
      @child_interpeter.setup(@event.pages[0].list,@id)
    end
    return
  end
  
  def start_command(i)
    @child_interpeter.setup(@event.pages[i].list,@id)
  end
  
  def check_name
    if @event.name.clone.gsub!(/\\[Ii]gnore/) {''}
      @type.push(MCES::Cache::Ignore)
    end
    if @event.name.clone.gsub!(/\\[Aa]uto/) {''}
      @type.push(MCES::Cache::Auto)
    end
    if @event.name.clone.gsub!(/\\[Cc]ommands/) {''}
      @type.push(MCES::Cache::Commands)
      @interpreter = Interpreter.new
      @event.pages.each{|page|page.list.each{|list|
      @last_list = list if @last_list == nil
      if list.code == 108
        if @last_list.code == 111
          if @interpreter.command_111([@last_list,list])
            @commands[@event.pages.index(page)] = list.parameters[0]
          end
        else
          @commands[@event.pages.index(page)] = list.parameters[0]
        end
      end
      @last_list = list}}
      @interpreter = nil
    end
    if @event.name.clone.gsub!(/\\[Dd]irectionfix\[(\d+)\]/) {"#[$1]"}
      @type.push(MCES::Cache::Direction)
      @direction_fixed = $1.to_i
    end
    if @event.name.clone.gsub!(/\\[Dd]irection\[(\d+)\]/) {"#[$1]"}
      @type.push(MCES::Cache::Direction)
      @direction = $1.to_i
    end
    if @event.name.clone.gsub!(/\\[Ll]ocked\[(\d+)\]/) {"#[$1]"}
      @type.push(MCES::Cache::Door)
      @key = $data_items[$1.to_i]
    end  
    if @event.name.clone.gsub!(/\\[Cc]urser\[(.+?)\]/) {"#[$1]"}
      @type.push(MCES::Cache::Curser)
      @curser = $1
    end
    if @event.name.clone.gsub!(/\\[Mm]sg\[(.+?)\]/) {"#[$1]"}
      @type.push(MCES::Cache::Msg)
      @msg = $1
      @msg_sprite = MCES::Msg_Sprite.new(self)
    end
  end
    
end

#============================================================================
# Game_Player
#----------------------------------------------------------------------------
#  Adds force movement.
#============================================================================
class Game_Player_fix
  
  attr_accessor :force_movement
  
  #alias mces_update update
  def mces_update
    mces_update
    if @target_x == nil
      @force_movement = []
      $MCES.location = []
    else
      if @force_movement == []
        $MCES.request_path(@target_x, @target_y)
      end
      update_forcemovement if !moving?
      if location == $MCES.check_target(@target_x,@target_y)
        if @target_x.is_a?(Game_Event)
          @target_x.start_event
          face_target
        end
        if $scene.spriteset.set_sprite != nil
          $scene.spriteset.set_sprite.opacity = 0
        end
        @target_x = @target_y = nil
        @force_movement = []
        $MCES.location = []
      end
    end
  end
  
  def face_target
    sx = @x - @target_x.x
    sy = @y - @target_x.y
    return if sx == 0 and sy == 0
    sx > 0 ? turn_left : turn_right if sx.abs > sy.abs
    sy > 0 ? turn_up : turn_down if sx.abs < sy.abs
  end
  
  def update_forcemovement
    return if @force_movement.size == 0
    move = @force_movement.shift
    case move[0]
    when 1 then move_lower_left
    when 2 then move_down(move[1])
    when 3 then move_lower_right
    when 4 then move_left(move[1])
    when 6 then move_right(move[1])
    when 7 then move_upper_left
    when 8 then move_up(move[1])
    when 9 then move_upper_right
    end
  end
  
  def location
    return self.x,self.y
  end
  
  def click_jump(x,y)
    new_x,new_y = x-self.y,x-self.y
    jump(new_x,new_y)
  end
  
  def set(x,y=nil)
    @force_movement = []
    @target_x, @target_y = x,y
    $scene.spriteset.set_sprite.set(x,y) if MCES::Config::Click_Graphic != false
  end
  
end

#============================================================================
# Interpreter
#----------------------------------------------------------------------------
#  Allows external use of the condition command.
#============================================================================
class Interpreter
  
  alias mces_command_111 command_111
  def command_111(list = nil)
    if list != nil
      @index = 0
      @list = list
      @list.push(RPG::EventCommand.new(412, list[0].indent, []))
      @parameters = list[0].parameters
    end
    mces_command_111
    if list != nil
      return @branch[0] == nil
    end
  end
  
end
=begin
#============================================================================
# Input
#----------------------------------------------------------------------------
#  Adds the alias methods and updates the processor.
#============================================================================
module Input
  
  class << Input
    alias mces_trigger? trigger?
    alias mces_update update
  end
  
  def self.update
    $MCES.update
    mces_update
  end
  
end
if ($tons_version || $BlizzABS  || $network) == nil
#============================================================================
# Input
#----------------------------------------------------------------------------
#  Adds the mouse trigger commands if not using Blizzards input methods.
#============================================================================  
module Input
  
  Key = {'Mouse Left' => 1, 'Mouse Right' => 2}
  C = Key['Mouse Left']
  #======================================
  # |–>  Keyboard Input Module
  #======================================
  #   By: Near Fantastica
  #   Date: 06.07.05
  #   Version: 3  
  #
  #   Cut down by Zeriab
  #   Date: 16.08.06
  #======================================

  def self.trigger?(key)
    return false if key == nil

    if !Win32API.new("user32","GetKeyState",['i'],'i').call(key).between?(0, 1)
      return true
    else
      return mces_trigger?(key)
    end
  end

end

end
=end
#============================================================================
# Sprite_Character
#----------------------------------------------------------------------------
#  Creats a inner bitmap for use with the mouse_in_area? method.
#============================================================================
class Sprite_Character_fix
  attr_reader :ch,:cw,:inner_bitmap
  
  alias mces_initialize initialize
  def initialize(viewport,character = nil)
    mces_initialize(viewport,character)
  end
  
  #alias mces_update update
  def mces_update
    mces_update
    if $BlizzABS != nil
      return if @sprite == nil
      return if @sprite.cw == nil || @sprite.ch == nil
      @cw,@ch = @sprite.cw, @sprite.ch
    end
    if @character.icon_name != nil || @character.tile_id >= 384
      @inner_bitmap = self.bitmap.clone
      return
    end
    @inner_bitmap = Bitmap.new(@cw,@ch) if @inner_bitmap == nil
    if @pattern != @character.pattern
      @pattern = @character.pattern
      bitmap = ($BlizzABS != nil ? @sprite.bitmap : self.bitmap)
      src_rect = ($BlizzABS != nil ? @sprite.src_rect : self.src_rect)
      @inner_bitmap.clear
      @inner_bitmap.blt(0, 0, bitmap, src_rect)
    end
  end

end
#============================================================================
# Spriteset_Map
#----------------------------------------------------------------------------
#  Creats the set_sprite
#============================================================================
class Spriteset_Map_fix
  attr_reader :character_sprites,:set_sprite
  
  alias mces_initialize initialize
  def initialize
    mces_initialize
    if MCES::Config::Click_Graphic != false
      @set_sprite = MCES::Set_Sprite.new(@viewport1)
    end
  end
  
  #alias mces_update update
  def mces_update
    mces_update
    @set_sprite.update if @set_sprite != nil
  end
  
end
#============================================================================
#  Adds eternal reading of methods.
#============================================================================
class Sprite_Character_ABSEAL_ed;    attr_reader :ch,:cw end if $BlizzABS != nil
class Scene_Map;        attr_reader :spriteset           end
if $BlizzABS != nil
class BlizzABS::Processor
  
  def pixel
    return 1
  end
  
end
end

Mouse drop down menu
Code: [Select]
#=begin
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# Character Drop Down Menu by Nathmatt
# Version: 1.15
# Type: Misc System
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
#  
#  This work is protected by the following license:
# #----------------------------------------------------------------------------
# #  
# #  Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
# #  ( http://creativecommons.org/licenses/by-nc-sa/3.0/ )
# #  
# #  You are free:
# #  
# #  to Share - to copy, distribute and transmit the work
# #  to Remix - to adapt the work
# #  
# #  Under the following conditions:
# #  
# #  Attribution. You must attribute the work in the manner specified by the
# #  author or licensor (but not in any way that suggests that they endorse you
# #  or your use of the work).
# #  
# #  Noncommercial. You may not use this work for commercial purposes.
# #  
# #  Share alike. If you alter, transform, or build upon this work, you may
# #  distribute the resulting work only under the same or similar license to
# #  this one.
# #  
# #  - For any reuse or distribution, you must make clear to others the license
# #    terms of this work. The best way to do this is with a link to this web
# #    page.
# #  
# #  - Any of the above conditions can be waived if you get permission from the
# #    copyright holder.
# #  
# #  - Nothing in this license impairs or restricts the author's moral rights.
# #  
# #----------------------------------------------------------------------------
#
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
class Character_Drop_Down_Menu
  
  def initialize
    username = ''
    @mini_list_array = ['Add Buddy','Trade']
    @mini_list_array.insert(1,'Add Party') if $blizzabs_rmxos != nil
    if $network.guildleader == $network.username
      @mini_list_array.insert(0,'Guild Invite')
    end
    @mini_list_array.push('Kick','Ban') if $network.usergroup > 0
    @confirm_window = Window_Confirm.new
    @mini_list = Window_Mini_List.new(@mini_list_array)
    @mini_list.visible = false
    @wait = 0
  end

  def update
    @wait -= 1 if @wait > 0
    if Input.trigger?(Input::Key['Mouse Right'])
      return if @wait != 0
      @mx,@my = $mouse.pos
      @sx,@sy = $mouse.position
      @player_username = $network.check_player(@mx,@my)
      @players_info = $network.get_player(@mx,@my)
      if @player_username != nil
        @mini_list.visible = true
        @mini_list.active = true
        @mini_list.x = @sx
        @mini_list.y = @sy
        $MCES.disabled = true
      end
      @wait = 5
    end
    
    if @mini_list.active
      @mini_list.update
      if Input.trigger?(Input::Key['Mouse Left'])
        return if @wait != 0
        if @mini_list.index >= 0
          @confirm_window.set_commands(@mini_list.item,@player_username)
        end
        @mini_list.visible = false
        @mini_list.active = false
        @wait = 5
      end
    end
    
    if @confirm_window.active
      @confirm_window.update
      if Input.trigger?(Input::Key['Mouse Left'])
        return if @wait != 0
        case @confirm_window.index
        when 0
          case @mini_list.item
          when 'Add Buddy'
            $network.command_buddy_add(@player_username)
          when 'Trade'    
            $network.command_trade_request(@player_username)
          when 'Guild Invite'
            $network.command_guild_invite(@player_username)
          when 'Kick'
            $network.command_kick_player(@player_username)
          when 'Ban'
            $network.command_ban_player(@player_username)
          when 'Add Party'
            $network.command_party_invite(@player_username)
          end
          @confirm_window.visible = false
          @confirm_window.active = false
        else
          @confirm_window.visible = false
          @confirm_window.active = false
        end
        $MCES.disabled = false
        #$MCES.wait = 5
        @wait = 5
      end
    end
    
  end
    
end
#==============================================================================
# Scene_Map
#==============================================================================
class Scene_Map
  
  alias character_drop_down_menu_main main
  def main
    @mini_menu = Character_Drop_Down_Menu.new
    character_drop_down_menu_main
  end
  
  alias character_drop_down_menu_update update
  def update
    @mini_menu.update
    character_drop_down_menu_update
  end
  
end
#==============================================================================
# Mouse
#==============================================================================
class Mouse
  
  attr_accessor :cursor
  
  def pos
    x, y = self.position
    x = ( x + $game_map.display_x / 4) / 32
    y = ( y + $game_map.display_y / 4) / 32
    return x, y
  end
    
end
#==============================================================================
# Window_list
#==============================================================================
class Window_Mini_List < Window_Selectable
  
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(list)
    super(476, 175, 104, 300)
    @list = list
    @column_max = 1
    refresh
    self.index = 0
    self.opacity = 0
    self.active = false
    self.z = 10000
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item
    return @data[self.index] if self.index >= 0
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    @data = []
    @list.each {|i| @data.push(i)}
    # If item count is not 0, make a bit map and draw all items
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, row_max * 32)
      self.contents.fill_rect(0,0,width,height,Color.new(0, 0, 0, 160))
      @data.each_index {|i| draw_item(i)}
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #     index : item number
  #--------------------------------------------------------------------------
  def draw_item(index)
    x = index % 1 * (288 + 32)
    y = index / 1 * 32
    self.contents.font.size = 16
    self.contents.draw_text(x, y, width - 32, 32, @data[index].to_s, 1)
  end
end
#==============================================================================
# Window_Confirm
#==============================================================================
class Window_Confirm < Window_Selectable
  
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize
    super(100, 100, 300, 150)
    @data = ['Yes','No']
    @column_max = 2
    @command = nil
    @user = nil
    refresh
    self.index = 0
    self.opacity = 0
    self.active = false
    self.visible = false
    self.z = 10000
  end
  #--------------------------------------------------------------------------
  # * Get Item
  #--------------------------------------------------------------------------
  def item
    return @data[self.index] if self.index >= 0
  end
  #--------------------------------------------------------------------------
  # * reset
  #--------------------------------------------------------------------------
  def set_commands(command,user)
    @command = command
    @user = user
    self.visible = true
    self.active  = true
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    if self.contents != nil
      self.contents.dispose
      self.contents = nil
    end
    # If item count is not 0, make a bit map and draw all items
    @item_max = @data.size
    if @item_max > 0
      self.contents = Bitmap.new(width - 32, 20 + row_max * 32)
      self.contents.font.size = 16
      self.contents.fill_rect(0,0,width,height,Color.new(0, 0, 0, 160))
      self.contents.draw_text(0,0,width,20,
      'Are you sure you want to '+ @command.to_s + ' ' + @user.to_s)
      @data.each_index {|i| draw_item(i)}
    end
  end
  #--------------------------------------------------------------------------
  # * Draw Item
  #     index : item number
  #--------------------------------------------------------------------------
  def draw_item(index)
    x = index * (width - 32) / 2
    self.contents.draw_text(x, 20, (width - 32) / 2, 32, @data[index].to_s, 1)
  end
  #--------------------------------------------------------------------------
  # * Cursor Rectangle Update
  #--------------------------------------------------------------------------
  def update_cursor_rect
    if @index < 0
      self.cursor_rect.empty
    else
      self.cursor_rect.set(self.index * (width - 32) / 2, 25,
     (width - 32) / 2 , 20)
    end
  end
end
#============================================================================
# RMXOS::Network
#============================================================================
class RMXOS::Network
  def check_player(x,y)
    @players.any? {|key, value|
    return value.username if value.x == x && value.y == y}
    return nil
  end
  def get_player(x,y)
    if $blizzabs_rmxos != nil
      @players.any? {|key, value|
      return value.battler if value.x == x && value.y == y}
    end
    return nil
  end
end
# Load the network
$network = RMXOS::Network.new
#=end

PS: I also added the scripts of a blank project: *Window_base * Window_selectable *Window_Command, but the problem persist :(

-------------------------------------------------------------------------------------------------------------------------------------------------------

Thanks to Wizered and Blizzard this problem is solved, it was a error in the coordinates, thanks to they for this :D

6
RMXP Script Database / [XP] MRMX-OS SYSTEM - MultiPlatform RMX-OS SYSTEM
« on: October 07, 2013, 04:57:28 PM »
MultiPlatform RMX-OS SYSTEM
Authors: Aegisrox, Blizzard, Khkramer, Markz88, Kernys, Kusanagi, Gameus, Alexandre, Eduardobra
Version: 3.00
Type: RPG maker Engine
Key Term: Misc System

Introduction

MRMX-OS SYSTEM is the evolution of the RMX-OS System. It is a engine for multiples operating systems, desktop and mobile, to play RPG MAKER XP Games Online and Offline. Also the engine is integrate with the Pokemon Essential Kit to create Online games of Pokemon with a lot of special Online features.

This work is protected by the following license:
Quote
Creative Commons - Attribution-NonCommercial-ShareAlike 3.0 Unported
( http://creativecommons.org/licenses/by-nc-sa/3.0/ )

You are free:

to Share - to copy, distribute and transmit the work
to Remix - to adapt the work

Under the following conditions:

Attribution. You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).

Noncommercial. You may not use this work for commercial purposes.

Share alike. If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.

- For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to this web page.

- Any of the above conditions can be waived if you get permission from the copyright holder.

- Nothing in this license impairs or restricts the author's moral rights.


MRMX Features

  • Cross Platform: Windows, MacOsx, Linux and ANDROID
  • Updated to RMX-OS 2.0
  • Guild system with Guild tags above the user names
  • Fullscreen mode with fit the screen mode
  • Multi player game at same time
  • Savegame in a remote database online
  • Chat system and command system
  • Administrative tools for GameMasters
  • Debug mode only for GameMasters
  • Auto update system with a Launcher
  • Totally encryptable by application virtualization
  • Much more


Pokemon Online Features
  • Fully Functional Pokemon System (Battles/Evolutions/Pokedex/and more)
  • Fully Functional Online System !!! (Chatting/Trading/and more
  • All 649 pokemons will be catchable
  • Animated sprites of pokemons - AddOn
  • Pokemon follows the players
  • Customizable characters with a set of sprites
  • Special events with the creators of the system
  • Much more




Screenshots

(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)


Download

The following two download links are exactly the same. They both contain the Server and Client.
https://mega.nz/#!b5wwlTQT!XxbzVFPaER7nba3OkvFHKO72qnJEXDhhIzAW_XjL8Yc
http://www.mediafire.com/download/4i4er3d08bqtm1k/MRMX-OS.zip

(click to show/hide)


Compatibility

Requires RMX-OS 2.0, Ruby 2.0.0,  MySQL and Navicat for MySQL (also You can always download XAMPP and use phpmyadmin).

Credits and Thanks

  • Aegisrox for Lead development, RMX-OS 2.0 Update and publish the MacOsx Version
  • Blizzard of course for the awesome RMX-OS 2.0 and Scripting help
  • Khramer/Markz88 for development of the Pokemon Online Kit
  • Alexandre/Eduardobra/Markz88 for development of the PVP System
  • Kernys for development of the ANDROID Version
  • Kusanagi for development of the Linux version
  • Gameus for development of the Update System
  • TheChinStrap from epvp for help with the launcher
  • Poccil/Flameguru/Maruno for development of Pokemon Essentials

Author's Notes

Have Fun!, Report Error and questions to http://forum.chaos-project.com

.: PvP System - How to run the PVP Server :.
(click to show/hide)

7
Bug Reports and Tech Issues / Read Before Posting: Official To do List
« on: March 16, 2013, 11:20:48 PM »
This is the official "to do" list for the official server, before post a new thread please read this carefully:
Also, this post will be edit as users post his bugs and suggestions.

To do list:

  • Modify the font size and position of the Guild name
  • Get disconnected player sprite removed form the map a soon as they disconnect
  • Repair Black edge in some maps
  • Modify the UI to look similar to pokemon games
  • Implement Trade and PvP
  • Implement more sets of sprites: 10 per player
  • Modify the input to move with WASD instead of arrow keys
  • Add double wild battles
  • Add guild tags in names
  • Implement the followings pokemons: 88-grimer, 109-koffing, 126-magmar

Regards

Aegis

8
Pokemon Essentials with Online Features - Markz88 MMO Kit
Authors: Markz88, Aegisrox(Chevalsky)
Version: 1.00
Type: RPG maker Engine
Key Term: Misc System

Introduction

Markz MMO Kit is an attempt to make a Pokemon MMO With online features. Right now the engine is still on beta, but is totally playable and is a very promising project.


Features

  • Multi player game at same time
  • Savegame in a remote database online
  • Chat system and command system
  • Administrative tools for GameMasters
  • Debug mode only for GameMasters
  • Auto update system
  • Much more



Screenshots

(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)
(click to show/hide)


Download

http://pokemmokit.altervista.org/


Compatibility

Requires RMX-OS, MySQL and Navicat.

Credits and Thanks

  • Markz88 for development
  • Chevalsky(Aegisrox) for posting
  • Poccil/Flameguru/Maruno - Pokemon Essentials Version 11
  • Jackolas for part of the tutorial
  • Blizzard of course for the awesome RMX-OS

Author's Notes

Have Fun!, Report Error and questions to http://pokemmokit.altervista.org/

9
Troubleshooting / Help / [RPG Maker XP] How to use this Encryption Script
« on: February 16, 2013, 11:17:18 PM »
Hello members of chaos project! I am writing because while i was surfing internet i found a script to encrypt data in RPG Maker.  8)

The problem is that i have no idea how to use it  :^_^':

There are the instructions but i dont know much about scripting, and i have no idea to do.

If you like you can try it, This is the site

https://github.com/Repflez/RPG-Maker-Scripts/tree/master/MakerCrypt

Please if your discover how to make it works, please reply this topic and share with the community :D

Thanks in advance

My best regards

Chevalsky

10
Hello! My name is Ezequiel! I am a new member of the forum! Glat to meet you all!

Sorry to bother you, but i have a problem with the Online list script of RMX-OS.

I am writing because in the post http://forum.chaos-project.com/index.php/topic,7962.0.html
I have the same problem that have all users of the EC0NNABORTED when i type the /online.

I am using the original version of the script, and i have the last version of RMX-os too.

In the server, the extension is fully loaded, so there is no problem there.

I Checked out all, but everything seens fine.
*the script
*the database wipet out
*the rb extension

The connections seens to work too.

This is the error i am getting in the server side:



I hope you can help me, i really want this extension :(

Anyways thanks in advance to all members of the forum :D

My best regards ;)

Ezequiel

Pages: [1]