VXA-OS - Create your MMO with RPG Maker

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA

Author: Valentine
Version: 1.1.0​

About
VXA-OS is the most complete and secure free tool for creating 2D online games from RPG Maker. It has been in active development since October 2017 and has been used in several MMORPGs, such as Urkon Online, Lotus Online and Darknessfall.

Features
Current:
» 4 types of chat;
» 9 types of equipment;
» 13 administrator commands;
» 3 moderator commands;
» Global server battle system;
» Passwords protected with the MD5 cryptographic function;
» 99% of event commands on the server;
» Common server events;
» Configurable resolution;
» Global Switches;
» EventMachine network library;
» Friends system;
» Quest system;
» Account Editor;
» Teleportation;
» Paperdolls;
» Party;
» Minimap;
» Bank.
Next:
» Remaining event commands, such as: Show Choices, Item Selection, Wait and Move Event;
» Customized movement of events;
» Parallel process start conditions and automatic start of events on the server;
» Weapons and long range skills.

Images
» Login

» Character selection

» Bank and party

» Quests and friend list

» Admin panel


Download
With DirectX:
Mega
4shared

No DirectX:
1) After downloading the DirectX version, download the Game.exe below and replace it with the one in the folder Client
Download Game.exe
2) Open the Script Editor (F11)
3) Browse the script [VS] Mouse:

4) Replace ALL the script [VS] Mouse with:
Code:
#==============================================================================
# ** Mouse
#------------------------------------------------------------------------------
#  Autor: Cidiomar
#==============================================================================

module Mouse
 
  typedef 'unsigned long HCURSOR'
  dll = 'System/VXAOS.dll'
  Mouse__setup = c_function(dll, 'void Mouse__setup(struct RArray*, struct RArray*, struct RArray*, void *)')
  Mouse__update = c_function(dll, 'void Mouse__update()')
  Mouse__getPos = c_function(dll, 'void Mouse__getPos(long *)')
  Mouse__getOldPos = c_function(dll, 'void Mouse__getOldPos(long *)')
 
  @triggered = Input.triggered
  @pressed = Input.pressed
  @released = Input.released
  @repeated = Input.repeated
  @last_lclick = Time.now
  @last_rclick = Time.now
  @dbl_lclick = false
  @dbl_rclick = false
  @pos = Array.new(2, 0)
  Mouse__setup.call(@triggered, @pressed, @released, @repeated)
 
  def self.click?(button)
    return @triggered[1] if button == :L
    return @triggered[2] if button == :R
  end
 
  def self.press?(button)
    return @pressed[1] if button == :L
    return @pressed[2] if button == :R
  end
 
  def self.release?(button)
    return @released[1] if button == :L
    return @released[2] if button == :R
  end
 
  def self.repeat?(button)
    return @repeated[1] if button == :L
    return @repeated[2] if button == :R
  end
 
  def self.dbl_clk?(button)
    return @dbl_lclick if button == :L
    return @dbl_rclick if button == :R
  end
 
  def self.tile_x
    # Corrige o display_x, já que a tela pode se mover
    #16 em vez de 32 pixel na horizontal se a largura da
    #resolução for superior a 1000
    x = $game_map.display_x > 0 && $game_map.display_x > $game_map.display_x.to_i ? self.x + 16 : self.x
    (x / 32 + $game_map.display_x).to_i
  end
 
  def self.tile_y
    (($game_map.display_y * 32 + self.y) / 32).to_i
  end
 
  def self.in_tile?(object)
    object.x == tile_x && object.y == tile_y
  end
 
  def self.update
    Mouse__update.call()
    @pos = [0, 0].pack('l2')
    @old_pos = [0, 0].pack('l2')
    Mouse__getPos.call(@pos)
    Mouse__getOldPos.call(@old_pos)
    @pos = @pos.unpack('l2')
    @old_pos = @old_pos.unpack('l2')
    @dbl_lclick = double_left_click?
    @dbl_rclick = double_right_click?
  end
 
  def self.double_left_click?
    return false unless click?(:L)
    result = false
    t_diff = Time.now - @last_lclick
    if t_diff < 0.5 && @last_pos == @pos
      result = true
    else
      @last_lclick = Time.now
      @last_pos = @pos
    end
    result
  end
 
  def self.double_right_click?
    return false unless click?(:R)
    result = false
    t_diff = Time.now - @last_rclick
    if t_diff < 0.5 && @last_pos == @pos
      result = true
    else
      @last_rclick = Time.now
      @last_pos = @pos
    end
    result
  end
 
  def self.x;        @pos[0];           end
  def self.y;        @pos[1];           end
  def self.pos;      @pos.dup;          end
  def self.old_x;    @old_pos[0];       end
  def self.old_y;    @old_pos[1];       end
  def self.old_pos;  @old_pos.dup;      end
  def self.moved?;   @pos != @old_pos;  end
 
end
 
#==============================================================================
# ** Graphics
#==============================================================================
module Graphics
 
  def self.is_fullscreen?
    false
  end
 
  def self.toggle_fullscreen
  end
 
end
Tips
How to attack and chat with events:
Press Ctrl.
How to open the admin panel:
Press F9.

Tutorials
Level next to the player's name in the chat
Show group in chat and on top of character
Only complete mission when speaking with NPC
Enemies do not attack administrators
Do not attack party member
Black background under the name
Independence of RTP

Additional Utilities
MySQL Database
Simple launcher

License
VXA-OS is a free open source framework, distributed under a very liberal license (the well-known MIT license). The project can be used for any purpose, including commercial purposes, without any cost or paperwork.
VXA-OS is not in the public domain and its creator retains its copyrights.
The only requirement is that if you use VXA-OS, you must give credit to the creator by including the copyright notice somewhere in your game.
In no event shall the copyright owner or copyright owner be liable for any claims, damages or other liabilities.

Credits
Creator:
Valentine

Thank you:
Cidiomar
Soreto
LeonM²
Komuro
zh99998
Gallighan
Shiy
RGD
 
Last edited:

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA
Can any moderator help me change the topic name? I did not find this option and I do not speak English.
 

TheoAllen

Self-proclaimed jack of all trades
Veteran
Joined
Mar 16, 2012
Messages
4,644
Reaction score
5,281
First Language
Indonesian
Primarily Uses
RMVXA
Edit your post > click more options. It will bring you to full editing option including change the topic.
 

TakeHomeTheCup

Veteran
Veteran
Joined
Oct 15, 2013
Messages
244
Reaction score
458
First Language
English
Primarily Uses
Hm, the server was marked by Windows Defender... Not sure if that's a false positive or something.
 

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA
I could not change the topic name. Some moderator could change topic name to: VXA-OS - Create your MMO with RPG Maker
 

Kes

Global Moderators
Global Mod
Joined
Aug 3, 2012
Messages
21,435
Reaction score
10,854
First Language
English
Primarily Uses
RMVXA
I have done this for you.
Next time you want a Mod to do something, it is best to Report your post and say what you would like. Mods may not see an individual post but will see a Report.
 

Sixth

Veteran
Veteran
Joined
Jul 4, 2014
Messages
2,136
Reaction score
805
First Language
Hungarian
Primarily Uses
RMVXA
In case you need to change topic titles in the future:
No need to enter editing mode, it should be right there at the top right corner of the opening post.

Nice engine, btw!
 

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA
Version 1.0.4 available.

Log:
-Fix hotbar bug;
-Move character with keys W, A, S and D added;
-DirectX 9 added;
-Resolution configurable;
-Mission system added.
 

jahad

Warper
Member
Joined
Dec 21, 2018
Messages
1
Reaction score
0
First Language
French
Primarily Uses
RMVXA
Thank you for your work ! This seems pretty cool i'm trying it tomorrow, or at least in the weekend. It's just a bit harsh for me to read portuguese (? not sure) but a little google translate and it will be ok :cutesmile:

I'm keeping an eye on your project ^^
 

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA
Thank you for your work ! This seems pretty cool i'm trying it tomorrow, or at least in the weekend. It's just a bit harsh for me to read portuguese (? not sure) but a little google translate and it will be ok :cutesmile:

I'm keeping an eye on your project ^^
Thanks for the feedback.

In the topic already has a translation from Portuguese to English.
 

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA
Version 1.0.6 available.

LOG:
-Paperdolls added;
-List of friends added;
-Bank added;
-Teleportation system added;
-Party added;
-Added moderator commands;
-Configurable maximum number of classes;
-Pup of gold added;
-Fix bug in the drop;
-Fix bug in the minimap;
-Other bugs fixed.

I added some things in the Manual.
 

Niclauke

Warper
Member
Joined
Dec 14, 2013
Messages
1
Reaction score
0
First Language
Norwegian
Primarily Uses
Started working on an online RPG because of this, great work so far:) The english translate work was a bit of a pain, but I don't mind - you've done a great job on this! Anything you've got planned for future updates?

How does switches work in multiplayer? Is there a way to flick a switch for a single client only. Example: Opening a door for one player only. etc, I tried this with switches but even though the door disappears - the player still can't move through it.

Is there also a way you can explain the quest system a bit more?

Thanks,
Nic
 
Last edited:

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA
Started working on an online RPG because of this, great work so far:) The english translate work was a bit of a pain, but I don't mind - you've done a great job on this! Anything you've got planned for future updates?

How does switches work in multiplayer? Is there a way to flick a switch for a single client only. Example: Opening a door for one player only. etc, I tried this with switches but even though the door disappears - the player still can't move through it.

Is there also a way you can explain the quest system a bit more?

Thanks,
Nic
Switches from 1 to 100 are from the player himself. From 100 onwards they are global.
 

Yui Kitamura

Villager
Member
Joined
Oct 29, 2015
Messages
7
Reaction score
1
First Language
English
Primarily Uses
RMVXA
In the topic already has a translation from Portuguese to English.
Mainly I think he means it would be more accessible if the instructions had an English translation as well. I'm also currently translating them using google translate.
 

Valentine90

Veteran
Veteran
Joined
Oct 5, 2017
Messages
37
Reaction score
12
First Language
Português
Primarily Uses
RMVXA
I intend to do a Manual in English in the future.
 

koezyrs

Warper
Member
Joined
Sep 22, 2018
Messages
3
Reaction score
0
First Language
English
Primarily Uses
RMMV
Can we use many other vxa scripts? or we have to make our own script for VXA-OS ?
 

koezyrs

Warper
Member
Joined
Sep 22, 2018
Messages
3
Reaction score
0
First Language
English
Primarily Uses
RMMV
Oh , i tried many rmvxa scripts but most of them didn't fit with vxa-os. I think i have to do it my self then >.< .
Also it will be great if the account editor can edit player gold, switches , variables, level ..... or admin command for that.
 

whitespirits

Veteran
Veteran
Joined
May 24, 2014
Messages
46
Reaction score
7
First Language
english
Primarily Uses
Is anyone capable of making new systems for this? I am looking for a team
 

Users Who Are Viewing This Thread (Users: 1, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

The stream will be live shortly with some more Witcher 3! Feel free to drop by~
a_a
As if my week could not be more shitty, my Iphone is currently stuck on the apple screen. I'm decently tech savvy so I'm going through all the options b4 I have to go to apple, but from the signs I'm pretty hosed.
Rip a buncha music I had on there, photos from trips, and every message. I shoulda backed it up :(

R.I.P Fbi Surveillance Van #5296 (6s)
Its Chinese new year today! Happy year of the rat~
just got back from the doctor about my back - 3 -)~ will know in a week or so's time how bad the problem is. Overall doing better though! not hurting so badly.
Oh God.. I'm so in love using "this" keyword in my codes. It is so more readable than my previous global objects xD

Forum statistics

Threads
93,590
Messages
913,763
Members
123,139
Latest member
younes
Top