[XP] RPG Maker XP Online System (RMX-OS)

Started by Blizzard, June 20, 2009, 11:52:23 am

Previous topic - Next topic

Blizzard

Nothing comes to my mind right now. :/
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Ununoctium

Could it be I messed something up with the config?
Spoiler: ShowHide

(Btw, I put in both IPs cuz I wasn't sure which one I was supposed to use, but my external IP address always shows up as offline)

fanmariopl

how can i change trade request message?

Blizzard

@Ununoctium: Internal IP only. Config looks fine to me, though. Have you tried getting somebody from the local network to connect?

@fanmariopl: At the top of the RMXOS script under RMXOS::Data for the client and in Data/Data.rb under RMXOS::Data for the server.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Futendra

Quote from: Ununoctium on January 14, 2012, 08:44:32 pm
Could it be I messed something up with the config?
Spoiler: ShowHide

(Btw, I put in both IPs cuz I wasn't sure which one I was supposed to use, but my external IP address always shows up as offline)


Watch out with putting IP's over the internet

fanmariopl

Quote from: Blizzard on January 15, 2012, 03:55:36 am
@fanmariopl: At the top of the RMXOS script under RMXOS::Data for the client and in Data/Data.rb under RMXOS::Data for the server.

I can`t find it in the client  :(

Blizzard

January 15, 2012, 06:12:15 am #1266 Last Edit: January 15, 2012, 06:13:21 am by Blizzard
RMXOS::Data is on top, the constants you're looking for are somewhere inside of RMXOS::Data. I've given them names that should make it easy to find them. There are lots of constants, you will have to do a bit of scrolling and reading until you find the ones you want to change.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Ununoctium

Nevermind, I got it to work using Hamachi.

Futendra

Can you upload the MySQL database and so to a webhost using that as a server?

G_G

If whatever host you're using allows for outside MySql connections, you can use your webhost as an SQL server. However, in order to run your game off of a web server, that server needs to be set up for that with proper software.

Wizered67

Why was buddying with a player disabled if you are not on the same map as them? Does it not work?

Blizzard

March 11, 2012, 04:07:31 pm #1271 Last Edit: March 11, 2012, 04:08:40 pm by User #1
I had a pretty good reason for that, but I honestly cannot remember. ._. I think it was so you can't go bother people in the whole game if you try to spam somebody with buddy requests. If you make a new friend, you're most likely going to do it while playing on the same map.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Wizered67

So would it generally be a bad idea to make any sort of "request" to a player on another map?

Blizzard

Basically yes, but I think there were a few exceptions.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

hansiec

March 27, 2012, 11:08:08 am #1274 Last Edit: March 27, 2012, 06:40:04 pm by hansiec
I got a weird error when logging in or registering:


---------------------------
RPG Maker XP - Online System
---------------------------
Script '(RMX-OS) Script' line 2267: Errno::ECONNABORTED occurred.

An established connection was aborted by the software in your host machine.
---------------------------
OK   
---------------------------

Blizzard

Your server was not properly configured to accept TCP connections.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

RyukLikesApples

Using Ruby-Mysql 2.8.1 (mysql.so) and ruby 1.9.1, RMX-OS gives me an error:

2012-04-19 22:10:27 UTC; -1 () - Error:
Cannot add or update a child row: a foreign key constraint fails (`rmxosdb`.`ips`, CONSTRAINT `ips_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE CASCADE)
./Data/Action_Handler1.rb:47:in `query'
/srv/rmxos/rmx/Data/Action_Handler1.rb:47:in `try_register'
/srv/rmxos/rmx/Data/Client.rb:135:in `check_connection'
/srv/rmxos/rmx/Data/Client.rb:47:in `handle'
/srv/rmxos/rmx/Data/Server.rb:272:in `block in run'

Using 2.8 mysql.so in conjunction with Ruby 1.8 did not work when I added Global Switches, and global switches worked when I used the 2.8.1 mysql.so and ruby 1.9. However, after a database wipe, I was greeted by this message when attempting to log in. Would you be able to help me fix this? I seem to remember that befre the wipe, existing accounts had no problems logging in, but after the wipe REGISTERING accounts caused this problem. And now I cannot remember the formatting of user entries in the database D:

Please Advise,
Ryuk

RyukLikesApples

Alright well, I fixed the error by removing foreign constraints completely; in the mysql database I merely executed the code without constraints as follows:
-- phpMyAdmin SQL Dump
-- version 3.5.0
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Apr 21, 2012 at 10:40 PM
-- Server version: 5.5.22-log
-- PHP Version: 5.3.10

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Database: `rmxosdb`
--

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

--
-- Table structure for table `buddy_list`
--

CREATE TABLE IF NOT EXISTS `buddy_list` (
  `user1_id` int(10) unsigned NOT NULL,
  `user2_id` int(10) unsigned NOT NULL,
  PRIMARY KEY (`user1_id`,`user2_id`),
  KEY `user2_id` (`user2_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

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

--
-- Table structure for table `guilds`
--

CREATE TABLE IF NOT EXISTS `guilds` (
  `guild_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `leader_id` int(10) unsigned NOT NULL,
  `guildname` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
  `password` varchar(11) COLLATE utf8_unicode_ci NOT NULL,
  PRIMARY KEY (`guild_id`),
  UNIQUE KEY `leader_id` (`leader_id`),
  UNIQUE KEY `guildname` (`guildname`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

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

--
-- Table structure for table `inbox`
--

CREATE TABLE IF NOT EXISTS `inbox` (
  `pm_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `recipient_id` int(10) unsigned NOT NULL,
  `sendername` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
  `senddate` datetime NOT NULL,
  `message` text COLLATE utf8_unicode_ci NOT NULL,
  `unread` tinyint(1) NOT NULL DEFAULT '1',
  PRIMARY KEY (`pm_id`),
  KEY `recipient_id` (`recipient_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

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

--
-- Table structure for table `ips`
--

CREATE TABLE IF NOT EXISTS `ips` (
  `user_id` int(10) unsigned NOT NULL DEFAULT '0',
  `ip` varchar(15) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  PRIMARY KEY (`user_id`,`ip`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

--
-- Dumping data for table `ips`
--

INSERT INTO `ips` (`user_id`, `ip`) VALUES
(1, '72.197.185.233');

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

--
-- Table structure for table `save_data`
--

CREATE TABLE IF NOT EXISTS `save_data` (
  `user_id` int(10) unsigned NOT NULL,
  `data_name` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `data_value` text COLLATE utf8_unicode_ci NOT NULL,
  PRIMARY KEY (`user_id`,`data_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

--
-- Dumping data for table `save_data`
--

INSERT INTO `save_data` (`user_id`, `data_name`, `data_value`) VALUES
(1, 'Game_Actors', '[Array]'),
(1, 'Game_Actors/@data', '[nil,nil,nil,nil,nil,nil,nil,nil,nil,Game_Actor]'),
(1, 'Game_Actors/@data[9]/Game_Actor', '[9,"Crispin","Crispin",0,9,35,0,0,0,0,1,0,Array,550,550,Array,0,0,0,0,0,0,0,0,Array,Array,1,8,8,0,0,Hash,Array]'),
(1, 'Game_Actors/@data[9]/Game_Actor/@item_hotkeys', '[0,0,0,0,0,0,0,0,0,0]'),
(1, 'Game_Actors/@data[9]/Game_Actor/@skill_hotkeys', '[0,0,0,0,0,0,0,0,0,0]'),
(1, 'Game_Actors/@data[9]/Game_Actor/@skills', '[]'),
(1, 'Game_Actors/@data[9]/Game_Actor/@state_time', '{}'),
(1, 'Game_Actors/@data[9]/Game_Actor/@states', '[]'),
(1, 'Game_Actors/@data[9]/Game_Actor/@triggers', '[]'),
(1, 'Game_Map', '[1]'),
(1, 'Game_Party', '[0,0,Array,Hash,Hash,Hash]'),
(1, 'Game_Party/@actors', '[Game_Actor]'),
(1, 'Game_Party/@actors[0]/Game_Actor', '[9,"Crispin","Crispin",0,9,35,0,0,0,0,1,0,Array,550,550,Array,0,0,0,0,0,0,0,0,Array,Array,1,8,8,0,0,Hash,Array]'),
(1, 'Game_Party/@actors[0]/Game_Actor/@item_hotkeys', '[0,0,0,0,0,0,0,0,0,0]'),
(1, 'Game_Party/@actors[0]/Game_Actor/@skill_hotkeys', '[0,0,0,0,0,0,0,0,0,0]'),
(1, 'Game_Party/@actors[0]/Game_Actor/@skills', '[]'),
(1, 'Game_Party/@actors[0]/Game_Actor/@state_time', '{}'),
(1, 'Game_Party/@actors[0]/Game_Actor/@states', '[]'),
(1, 'Game_Party/@actors[0]/Game_Actor/@triggers', '[]'),
(1, 'Game_Party/@armors', '{}'),
(1, 'Game_Party/@items', '{}'),
(1, 'Game_Party/@weapons', '{33=>6,34=>6,35=>5}'),
(1, 'Game_Player', '[43,44,1376,1408,"Crispin",nil]'),
(1, 'Game_SelfSwitches', '[Hash]'),
(1, 'Game_SelfSwitches/@data', '{}'),
(1, 'Game_Switches', '[Array]'),
(1, 'Game_Switches/@data', '[nil,true,false]'),
(1, 'Game_System', '[0,false,false,true,false,0,true,true,true,true,true,true,true,true,true,true,true,true,false,true]'),
(1, 'Game_Variables', '[Array]'),
(1, 'Game_Variables/@data', '[nil,15,0]'),
(1, 'Graphics.frame_count', '4295');

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

--
-- Table structure for table `users`
--

CREATE TABLE IF NOT EXISTS `users` (
  `user_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(32) COLLATE utf8_unicode_ci NOT NULL,
  `password` varchar(11) COLLATE utf8_unicode_ci NOT NULL,
  `usergroup` int(10) NOT NULL DEFAULT '0',
  `banned` tinyint(1) NOT NULL DEFAULT '0',
  PRIMARY KEY (`user_id`),
  UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=5 ;

--
-- Dumping data for table `users`
--

INSERT INTO `users` (`user_id`, `username`, `password`, `usergroup`, `banned`) VALUES
(1, 'Ryuk', 'pc20nGPeltQ', 10, 0);

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

--
-- Table structure for table `user_data`
--

CREATE TABLE IF NOT EXISTS `user_data` (
  `user_id` int(10) unsigned NOT NULL,
  `notrade` tinyint(1) NOT NULL DEFAULT '0',
  `lastlogin` datetime NOT NULL,
  `guild_id` int(10) unsigned DEFAULT NULL,
  PRIMARY KEY (`user_id`),
  KEY `guild_id` (`guild_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

--
-- Dumping data for table `user_data`
--

INSERT INTO `user_data` (`user_id`, `notrade`, `lastlogin`, `guild_id`) VALUES
(1, 0, '2012-04-20 05:59:18', NULL);

--
-- Constraints for dumped tables
--

--
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;


MOAL

April 22, 2012, 05:00:59 pm #1278 Last Edit: April 22, 2012, 05:14:53 pm by MOAL
Edit: Nevermind, I got it. :)

Blizzard

April 22, 2012, 05:15:46 pm #1279 Last Edit: April 22, 2012, 05:25:09 pm by Blizzard
@MOAL: You have not copied both parts of the script.

@RyukLikesApples: Actually the foreign key constraints are there to consecutively wipe data that is not needed anymore. e.g. If a user is deleted, there is no point in keep that user's save data or IP list (hence ON CASCADE DELETE). They also ensure that the data integrity is kept. e.g. Save data will always reference an existing player. Save data cannot be saved if it is not bound to a player. If you did a database wipe and then the error started happening, then you didn't do the database wipe properly. Have you tried dropping the whole database and creating it again or have you just tried emptying the tables? If you just tried emptying the tables, it's possible that they actually weren't wiped completely without giving you a proper error message.

EDIT: Wait, I can see that you have some data there. If you want to fill the database with data again, you have to do it in the right order. First you have to fill in all the users data and then the tables with foreign key constraints referring to the users table. Basically if you have a foreign key constraint, you first have to fill the table that is being referred to. The simplest way is to first fill the tables without constraints and then continuously fill the tables with constraints referring tables that you have already added.

Also, if you want a clean database without data, use the SQL script that is given with RMX-OS by default and it will create an empty database for you.

In case you're confused, this is what a line that adds data looks like:

INSERT INTO `ips` (`user_id`, `ip`) VALUES
(1, '72.197.185.233');


Notice the "INSERT INTO" command.
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.