Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

NP+ 1.7 - New Server - Version 0.03!

I made an awsome server for Netplay plus 1.7,
So why using this and not the old server?:
this server can send more then 5 k"b
this server use 1% from the CPU
this server updates faster and better
the users account are hosted in SQL Database
so you can add registration out-side the game

Versions:
0.03
http://rapidshare.de/files/40886817/Rub ... 3.rar.html NEWEST
- More Stable!
- Fixed some errors
- Added Debug canceling for client class
- faster send to all
- Group is over the database in "users" table
0.02
http://rapidshare.de/files/40869079/Rub ... 2.rar.html WORKS
- Fixed Send All function
- Fixed some socket functions
0.01
http://rapidshare.com/files/162092826/NP.rar - *

Short Setup guide:
1. create SQL scheme/database
2. upload the SQL file in the rar
3. edit the ini the server folder and cutomize it
4. open new RMXP Project then open it folder and replace the
Scripts.rxdata file with the NP pack Scripts.rxdata
5. Start The Server
6. Done, you can now connect and share your game :P

V0.01 Content:
- Chat
- Walking and view others
- Login
- Registration

If I'll get support from the community I will continue this project
have fun, Kono / NoWaySkill.
credits:
Dark Torando - Helping me with testing
Ghost Hunter - being so supportive? :P
AND MOST INPORTANT:
Credit for NP+ Dev team for creating NP+!
AND SPECIAL THANK FOR GOLDEN AURA FOR THE TCPSocket class
 
RAPIDSHARE

Error
This file is neither allocated to a Premium Account, or a Collector's Account, and can therefore only be downloaded 10 times.

This limit is reached.

To download this file, the uploader either needs to transfer this file into his/her Collector's Account, or upload the file again. The file can later be moved to a Collector's Account. The uploader just needs to click the delete link of the file to get further information.

Meh, Netplay aldeary came out in the better version.
 
Axules":ereazb00 said:
RAPIDSHARE

Error
This file is neither allocated to a Premium Account, or a Collector's Account, and can therefore only be downloaded 10 times.

This limit is reached.

To download this file, the uploader either needs to transfer this file into his/her Collector's Account, or upload the file again. The file can later be moved to a Collector's Account. The uploader just needs to click the delete link of the file to get further information.

Meh, Netplay aldeary came out in the better version.
Reploading...
Btw this netplay don't use Widgets.
and less lagish then the mo's netplay
i will add global events and server rxdata
if i'll get support.
i can also programm a characters screen :P
 
Think aout it, When just I upload it, the server won't be laggy.
But when 50 people download and use it, the server will be overload. Capish?
But what is new about 0.2?
 
Axules":1cmz38wh said:
Think aout it, When just I upload it, the server won't be laggy.
But when 50 people download and use it, the server will be overload. Capish?
But what is new about 0.2?
Chat Fixed, client debug messages fixed
registration user exist check fixed.
BTW:
Sucide Maniac Server caps:
- Server transfer capcity = 5K"B
- No SQL, you can't make web registration and server-saving characters.
 
Downloaded it, but hey!
I used it for an half hour, an than I got an Error Message.
"Script Hanging"
I got it by just starting up the game!
 
Well, given that *something* magically makes any Netplay based server not work on my network, the fact this actually works is amazing :thumb:

It seems to crash a lot and I have to restart it, but i think that is because I am running it off the same PC as the game, or something to do with my first sentence.
 
Axules":10rgv8no said:
Still doesn't work for me. Same prolem.
It might happen because:
- You have a router
- SQL Server is not working well (happens if you use wamp/xampp and not the original server)
- There are TOO many people connecting your computer (1.5MB => 20 people)
 
It sounds good so far, but methinks that you should code a linux daemon, with a web frontend. A lot of the servers out there usually run Linux, so it's great for remote hosting.
 
Cocoa":7aab7d44 said:
It sounds good so far, but methinks that you should code a linux daemon, with a web frontend. A lot of the servers out there usually run Linux, so it's great for remote hosting.
It support linux
 
Saving is ridiculously easy; I've been messing around with Marshal and worked out you can do:

@data = Marshal.dump($game_system)

@socket.send("<save>#{@data}</save>\n")

Obviously configure this in the server to save it to MySQL, then when loading get this back from the server in @data and do

$game_system = Marshal.load(@data)


I mean I could be wrong, but from my attempts so far this seems to work. I haven't tried sending the string across the server though, just manipulating it within RMXP.



This is my thoughts so far (I don't know how to do the SQL bit though):

Code:
module Network
  class Main
    def self.save

      @game_system = Marshal.dump($game_system)
      @game_switches = Marshal.dump($game_switches)
      @game_variables = Marshal.dump($game_variables)
      @game_selfswitches = Marshal.dump($game_selfswitches)
      @game_party = Marshal.dump($game_party)
      @game_map = Marshal.dump($game_map)
      @game_player = Marshal.dump($game_player)
      @abs = Marshal.dump($abs)

      @socket.send("<save1>#{@game_system},#{@id}</save1>")
      @socket.send("<save2>#{@game_switches},#{@id}</save2>")
      @socket.send("<save3>#{@game_variables},#{@id}</save3>")
      @socket.send("<save4>#{@game_selfswitches},#{@id}</save4>")
      @socket.send("<save5>#{@game_party},#{@id}</save5>")
      @socket.send("<save6>#{@game_map},#{@id}</save6>")
      @socket.send("<save7>#{@game_player},#{@id}</save7>")
      @socket.send("<save8>#{@abs},#{@id}</save8>")
      
    end
    def self.load
      @socket.send("<load1>#{@id}</load1>")
      $game_system = Marshal.load($1)
      
      @socket.send("<load2>#{@id}</load2>")
      $game_switches = Marshal.load($1)
      
      @socket.send("<load3>#{@id}</load3>")
      $game_variables = Marshal.load($1)
      
      @socket.send("<load4>#{@id}</load4>")
      $game_selfswitches = Marshal.load($1)
      
      @socket.send("<load5>#{@id}</load5>")
      $game_party = Marshal.load($1)
      
      @socket.send("<load6>#{@id}</load6>")
      @game_map = Marshal.load($1)

      @socket.send("<load7>#{@id}</load7>")
      $game_player = Marshal.load($1)
      
      @socket.send("<load8>#{@id}</load8>")
      $abs = Marshal.load($1)
      
    end
  end
end

My reasoning behind this:

p $game_switches[0] # returns false
@data = Marshal.dump($game_switches)
p @data # returns a string
$game_switches = Marshal.load(@data)
p $game_switches[0] # returns false
 
Wyatt, although correct, a million things can go wrong.

1. If one bit was changed, your way will definitly crash the program
2. Sending all that data is not needed
3. You have to decompress all the data before you know what was send
4. Updating one of those classes will make everyone that saved crash
5. If for whatever reason the data length is larger then 4096 bytes, it won't save.

But you are on the right way. Want don't you just get yourself a character class, like Game_Netplayer and send each variable.

data = "<save>#{id}C#{@char_name}HP#{@hp}-#{@maxhp} [...] etc.

that way, data is more likely to sustain, and you have more control over it.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top