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.

Messages - nathmatt

1
Chat / Mine craft
February 20, 2013, 11:21:36 am
was wondering if anyone knew the difference in playing offline demo world and buying the full game ?
2
this just adds the install location to the pc registry
3
i got this error when installing pysqlite on a 64bit pc i found this solution so i thought i would post a link

reg fix
4
im sorry but i no longer have RMXP so i can't really script in it right now as soon as arc's released i should start scripting again but until then i can't really support any of my scripts
5
General Discussion / rpgmaker vx ace lite
October 15, 2012, 07:53:03 pm
got an email saying you can get rpg maker vx ace lite free no trial

i revert my previous statement limitations list

Spoiler: ShowHide
10 heroes
10 classes
126 skills
16 items
60 weapons
60 armors
30 enemies
30 troops
25 states
110 animations
10 common events
No script editor
6 Tilesets
15 events per map.
20 maps max.
Can save projects
No call script but you can use the script functions of the other event commands like variable.
You can't make it use the RMVXAce RTP. So you have to manually import resources to the project folder.



feel free to move
6
Chat / Re: The "Post your Desktop" Thread
October 07, 2012, 10:26:20 am
since i haven't posted in a while and have bought a new PC my new desktop

Spoiler: ShowHide
7
updated 1.74 fixed above error.
8
Script Troubleshooting / RMX-OS Map (Instances)
August 21, 2012, 03:41:05 pm
So i have been messing around with an idea of how map instances could work.

This is my server extension so far my idea is to create a class for every map instance that stores the id, map_id, and
list of clients on that instance.

Spoiler: ShowHide
module RMXOS

#------------------------------------------------------------------
# Passes the extension's main module to RMX-OS on the top
# level so it can handle this extension.
# Returns: Module of this extension for update.
#------------------------------------------------------------------
def self.load_current_extension
return Map_Instances
end

end

#======================================================================
# module ExtensionSkeleton
#======================================================================

module Map_Instances

# extension version
VERSION = 1.0
# required RMX-OS version
RMXOS_VERSION = 1.2
# whether the server should update this extension in an idividual thread or not
SERVER_THREAD = true
# the extension's name/identifier
IDENTIFIER = 'Extension Skeleton'

# :::: START Configuration
  NonInstMaps = [] # Array of non instance maps
MaxPlayers = nil  # nill if not using style 2
  # 0 only party  members can see each other requires Blizz ABS.
  # 1 only guild  members can see each other.
  # 2 once there is MaxPlayers player will be sent to a new_instance
  Instance_Style = 0
# :::: END Configuration

#------------------------------------------------------------------
# Initializes the extension (i.e. instantiation of classes).
#------------------------------------------------------------------
def self.initialize
    @instances = {}
    @style = {}
    @index = {}
end
  #------------------------------------------------------------------
# Sets instances.
#------------------------------------------------------------------
  def self.set_instances(client,style = Instance_Style)
    case style
    when 0
      id = client.player.user_id
      id = client.sender.get_client_by_name(client.player.partyleader).user_id if client.player.partyleader !=  ''
      map_id = client.player.map_id
      key = [id,map_id]
      if @instances[key] != nil
        @instances[key].add_client(client)
      else
        @instances[key] = Map_Instance.new(id,[client],map_id)
      end
      return @instances[key]
    when 1
      id = client.player.user_id
      id = client.sender.get_client_by_name(client.player.guildleader).id if client.player.guildleader != ''
      map_id = client.player.map_id
      key = [id,map_id]
      if @instances[key] !=nil
        @instances[key].add_client(client)
      else
        @instances[key] = Map_Instance.new(id,[client],map_id)
      end
      return @instances[key]
    when 2
      map_id = client.player.map_id
      @index[map_id] = 0 if  @index[map_id] == nil
      key = [@index,map_id]
      if @instances[key] != nil
        @instances[key].add_client(client)
      else
        @instances[key] = Map_Instance.new(id,[client],map_id)
      end
      @index[map_id] += 1 if @instances[key].clients.size >= (MaxPlayers - 10) # allow room for instance swap
      return @instances[key]
    end
  end
  #------------------------------------------------------------------
  # Exit map
# -----------------------------------------------------------------
  def self.exit_map(client,style = Instance_Style)
    style = @style[client] if @style[client] != nil
    @style[client] = nil
    case style
    when 0
      id = client.sender.get_client_by_name(client.player.partyleader).id
      map_id = client.player.map_id
      key = [id,map_id]
      @instances[key].remove_client(client)
      @instances.delete(key) if @instances[key].clients.size = 0
    when 1
      id = client.sender.get_client_by_name(client.player.guildleader).id
      map_id = client.player.map_id
      key = [id,map_id]
      @instances[key].remove_client(client)
      @instances.delete(key) if @instances[key].clients.size = 0
    end
  end
#------------------------------------------------------------------
# Calls constant updating on the server.
#------------------------------------------------------------------
def self.main
# while server is running
while RMXOS.server.running
self.server_update
sleep(0.1) # 0.1 seconds pause, decreases server load
end
end
#------------------------------------------------------------------
# Handles the server update.
#------------------------------------------------------------------
def self.server_update
# - YOUR SERVER CODE HERE
end
#------------------------------------------------------------------
# Handles updating from a client.
# client - Client instance (from Client.rb)
# Returns: Whether to stop check the message or not.
#------------------------------------------------------------------
def self.client_update(client)
# - YOUR CLIENT MESSAGE CODE HERE
    case client.message
    when /\AMENIM(.+)/
      @style[client] = $1.to_i
      client.sender.get_map_clients(false,$1.to_i)
      return true
    end
return false
end

end

#======================================================================
# Sender
#----------------------------------------------------------------------
# Provides methods for sending messages.
#======================================================================

class Map_Instance
 
  def initialize(id,clients,map_id)
    @id = id
    @clients = clients
    @map_id =clients[0].player.map_id
  end
 
  def add_client(client)
    @clients.push(client) if !@clients.include?(client)
  end
 
  def remove_client(client)
    @clients.delete(client)
  end
 
  def clients
    return @clients
  end
 
end

class Client
 
  alias instance_check_game check_game
  def check_game
    case @message
    when /\AMEX\Z/ # map exit
      Map_Instances.exit_map
    end
    return instance_check_game
  end
 
end

class Sender
 
  #----------------------------------------------------------------------
# Gets all clients on the same map including or excluding self.
#  including - whether to include or exclude this client
# Returns: Clients on the same map.
#----------------------------------------------------------------------
def get_map_clients(including = false,style=nil)
# find all clients on this map
clients = $clients.find_all {|client| client.player.map_id == @client.player.map_id}
# exclude self if necessary
clients.delete(@client) if !including
return Map_Instances.set_instances(@client).clients if !Map_Instances::NonInstMaps.include?(@client.player.map_id)
    return clients
end
 
end


I am editing the get_map_clients method for desired effect as you can see.

I am still trying to come up with a effective way for max map player limits.

What i want to know is if this if an effective way to make them or should i try another method.
10
here

Spoiler: ShowHide
class Game_Temp
 attr_accessor :scene
 attr_accessor :condition
 attr_accessor :question_start
end

class Interpreter
 
 def ask_question(s)
   $game_temp.question_start = true
   current_indent = @list[@index].indent
   $game_temp.scene = Scene_Question.new(s)
   while $game_temp.scene.is_a?(Scene_Question)
     # Update game screen
     Graphics.update
     # Update input information
     Input.update
     # Scene update
     $game_temp.scene.update
   end
   if $game_temp.condition
     $game_temp.condition = nil
     return true
   else
     $game_temp.condition = nil
     return false
   end
 end
 
end

class Question_Command < Window_Selectable
 
 attr_accessor :condition
 
def initialize(x, y, width, height)
   super
   @item_max = 2
   @column_max = 2
   @commands = ['yes','no']
   self.contents = Bitmap.new(width - 32, 32)
   refresh
   self.index = 0
 end
 #--------------------------------------------------------------------------
 # * Refresh
 #--------------------------------------------------------------------------
 def refresh
   self.contents.clear
   for i in 0...@item_max
     draw_item(i)
   end
 end
 #--------------------------------------------------------------------------
 # * Draw Item
 #     index : item number
 #     color : text color
 #--------------------------------------------------------------------------
 def draw_item(index)
   w = self.contents.width / 2
   rect = Rect.new( w * index, 0, w, 32)
   self.contents.draw_text(rect, @commands[index],1)
 end
 #--------------------------------------------------------------------------
 # * update
 #--------------------------------------------------------------------------
 def update
   super
   if Input.trigger?(Input::B)
     # Play cancel SE
     $game_system.se_play($data_system.cancel_se)
     @condition = false
     return
   end
   # If C button was pressed
   if Input.trigger?(Input::C)
   # Branch by command window cursor position
     case @index
     when 0  # yes
       @condition = true
     when 1
       @condition = false
     end
     @index = -1
   end
 end
end

class Scene_Question
 
 
 def initialize(s)
   @s = s
   b = Bitmap.new(100,32)
   w = b.text_size(s).width + 32
   $game_temp.condition = false
   @window_help = Window_Help.new
   @window_help.width = w
   @window_help.contents = Bitmap.new(w-32,32)
   @window_help.x = 320 - @window_help.width / 2
   @window_help.y = 240 - 128
   @window_help.set_text(s)
   @window_command = Question_Command.new(@window_help.x,@window_help.y+64,w,64)
 end
 
 def update
   @window_help.update
   @window_command.update
   if @window_command.condition != nil
     $game_temp.condition = @window_command.condition
     dispose
   end
 end
 
 def dispose
   @window_help.dispose
   @window_command.dispose
   $game_temp.scene = nil
 end
 
end

class Game_Event
 
 alias question_start start
 def start
   if $game_temp.question_start
     $game_temp.question_start = false
     return
   end
   question_start
 end
 
end

class Scene_Map
 
 alias question_call_menu call_menu
 def call_menu
   $game_temp.menu_calling = false
   if $game_temp.question_start
     $game_temp.question_start = false
     return
   end
   question_call_menu
 end
 
end


use
ask_question("msg here")

in a script condition branch
11
RMXP Script Database / Re: [XP] Event Proximity Icons
August 07, 2012, 04:47:34 pm
this should fix it place this below the tileset swap

class Game_Map
 
  attr_accessor :proximity_data
 
  alias zer02_proximity_setup setup
  def setup(map_id)
    @proximity_data = {}
    zer02_proximity_setup(map_id)
  end
end
12
Quote from: Blizzard on August 04, 2012, 02:32:32 am
Line 193.

@phase = 4 if $game_map.battlers_group(BlizzABS::Alignments::ENEMY_GROUP).size == 0


Change it to:

if $game_map.battlers_group(BlizzABS::Alignments::ENEMY_GROUP).size == 0
  @phase = 4
  self.delay(1) #number of seconds
end



edit: my method already multiplies it by 40
13
Welcome! / Re: Vacation
August 03, 2012, 01:05:02 pm
14
if the location behind the event is unreachable you just need that to have the No_Walk_Tag terrain tag and the the player will not try to reach it as for clicking on the transparent part of the event i did that to have true event clicking it allows you to be able to click on any size graphic or click behind them by clicking on transparent part.   
15
@ForeverZer0 true but was bored so i made a class that would allow it

Spoiler: ShowHide
class Enhanced_table
 
  def initialize
    @data = {}
  end
 
  def [](*args)
    return @data[args]
  end
 
  def []=(*args)
    value = args.pop
    @data[args] = value
  end
 
end


edit fixed to allow any size

myArray = Enhanced_table.new
myArray[0,1,2,3,4,5,6,7,8,9] = "cows "
16
updated 1.73 fixed above error
17
i finally got around to looking into your bugs and i can't reproduce them im going to need a demo 
18
update 1.72 fixed above errors let me know if any you get any more
19
update 1.71 fixed bug where opening the command window would disable movement

@phcs666 let me know if the command still shows up if this is happening when the event is erased if so it should be fixed
20
update 1.70 fixed icon_name error, command_window and, erased event error

also fixed instructions

@TestScripts  im going to need a demo because i have never had issues with move by clicking