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

1
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!!!
December 04, 2016, 02: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
November 07, 2013, 09:38:02 am
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.

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
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
#=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
#:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=:=
# 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
#=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
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

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide




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

Broken Links: ShowHide

Server Side
https://mega.co.nz/#!FVcDjSBL!L42MjVJPjMona_3TAIBwCGGoqPsyXkNKFNtS4Q7Q_zE
By Blizzard


Windows Client Version 2.1
https://mega.co.nz/#!kZ4QWAwB!eUWcfzHjociOpXIJfr_96EZzHwEiRITrqtI0YmtC2VM
Changelog:
* Updated to Pokemon Essentials 13

Made By Khkramer & Markz88


Windows Client Version 3.0
https://mega.co.nz/#!EMYXiSYA!LyhbSmw0fkDGmztrRQrRdB7PJywf1N7AivjArxeVQ-8
Changelog:
* Updated to Pokemon Essentials 13
* PvP System
* Experimental pokemon follow feature removed

Made By Khkramer & Markz88


MacOsx Client
https://mega.co.nz/#!ZM8RxYKQ!fU9jt1UvIWPtDkscOcE-7TIlNQ5a5IxH4gaFg2d_Aus
By Aegisrox


Linux Client
Coming soon. Uploading...
By Kusanagi


ANDROID Client
Coming soon.
By Kernys


Encryption System
https://mega.co.nz/#!FUclzIaT!DGWawGS2v5elkuCnb9m9iDNXJPcgg8n1i7PwRyiYdCE
By Aegisrox


Update System
Coming soon.
By Gameus


Auto Launcher System
https://mega.co.nz/#!tJUi3ARB!S7oI_WnR964nahu3Caz3dUefhVVBhGJif3V8qFQcPpo
By Aegisrox





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 :.
Spoiler: ShowHide
1) Extract the new windows client
2) Execute the SQL queries into PVP Server -> database folder and you'll have a new database named "peo"
3) Open the file "Main.rb" into the PVP Server folder with notepad to configure the PVP Server, you'll find:

IP = '127.0.0.1' ##edit
PORT = 5000
SQLHOST = "127.0.0.1"
SQLUSR = "" ##edit
SQLPASS = "" ##edit
SQLDBASE = "peo"
GMAILUSER = "" ##edit (insert a gmail account)
GMAILPASS = "" ##edit (gmail acocunt password)
GAMENAME = "MultiPlatform RMX-OS System" ##edit
VERSION = 1
MAXIMUM_CONNECTIONS = 1000
TRADETIMEOUT = 30
BATTLETIMEOUT = 30

4) Run "Main.rb"
5) Open the RPG Maker XP project, open the Script Editor, edit the HOST in the PVP Options


6) Run the game
7) Talk with Kernys in the Pokemon Lab to create a PvP Account
8 ) Go into a Pokemon Center and talk to one of the old men for start a battle!
9) Do your own experimentation to figure out how it works, it is not difficult

7
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

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide

Spoiler: ShowHide




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