Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Program Announcements / EZ_Serv is now FREE! - Multiplayer Server for DBP just went freeware...

Author
Message
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 1st Sep 2005 14:49
I have noticed people having problems with client code, aside from the zoning enhancements I am going to make, would any of you be interested in a ezs client plugin for dbp? This could help remove alot of the coding necessary in dbp and offload it to the dll, just a thought.

post here if this would be useful to you.

IceBird
21
Years of Service
User Offline
Joined: 11th Jan 2003
Location: Sweden
Posted: 2nd Sep 2005 02:07
Yea! That would be awsom

------------------------------------------------
Someone is watching you...... And it isn't ME!
------------------------------------------------
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 2nd Sep 2005 15:04
cool, the dll will encompass winsock and the ezs protocol, parsing, and all that jazz, so it need not be part of the dbp code. Also I'm thinking about a persisted array for an unlimited amount of PPT stubs that you can seed, so the dll will parse for your custom protocols as well. I'll get cooking on this over the weekend. I'll post it here when I have something ready for testing.

CR

CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 5th Sep 2005 05:14 Edited at: 5th Sep 2005 05:20
Update: DBP_EZSClient Plugin

Made very good progress on the Client Plugin today. I should have the first version ready for testing by tomorrow. Currently the plugin handles all tcpip communications for the dbp app (you wont need the winsock plugin) and it parses all messages from the server so you dont have to. It currently covers all of the EZS protocol automatically, there will be a few properties to set before you connect like login info, host and port, etc via exposed functions.

Tomorrow I want to add the RemoteClient manager so the plugin persists and maintains RemoteClient arrays, one for the Server and one for the Zones level. I think at that point I'll release the plugin, and then build in the ability for the plugin to persist your PPT lists, and parse them as well, which should be pretty useful.

One trade off to using this plugin however is that youll need the .net framework 1.1 or higher on whatever machine intends to run the dbp app that uses this plugin

Anyway I need sleep. Ill keep this thread updated.
Post any comments or suggestions here for EZS or the DBP_EZSClient plugin

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
Torq
20
Years of Service
User Offline
Joined: 18th Jan 2004
Location:
Posted: 5th Sep 2005 22:32
Great Will there be a small demo included ? Somtething like multisync has with the 2 cubes moving on eachother screen would be invaluable!!

Ive tried and tried with the other code you created and got so many errors I got frustrated. But I really want to use this server

Looking forward to trying the new client code!!

http://badtempergames.tripod.com

CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 6th Sep 2005 01:38
yes ill try and make a demo too
I got tied up at work and have not been able to work any further on the plugin yet today

stay tuned

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
Philip 1337
21
Years of Service
User Offline
Joined: 27th Aug 2002
Location: United Kingdom
Posted: 6th Sep 2005 09:30
Wicked

Torq
20
Years of Service
User Offline
Joined: 18th Jan 2004
Location:
Posted: 8th Sep 2005 05:19
Waiting............
Staying tuned......
I think I lost the channel...

Just checking in cant wait to give the new code a spin!

http://badtempergames.tripod.com

CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 8th Sep 2005 14:50 Edited at: 8th Sep 2005 14:51
hi, sorry. the plugin is nearly done - I have been overrun with work for work . When I get home this afternoon i will add the finishing touches to this first version of the plugin and release it

Then I will add some stuff to the ezs app, then I'll release a second version of the plugin to adjust for the ezs additions. hopefully within a day or two.

/me guzzles coffee ...

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 9th Sep 2005 01:10 Edited at: 10th Sep 2005 21:17
Ok, here is a beta version of the plugin...
EDIT: DISTRIBUTED WRONG DLL

Unfortunately I am having problems with the remote client management so this BETA version of the dll doesnt handle that yet. There is a keyword ini file included so you can see the func names and the args, and the return types, etc.

Currently the plugin handles all comms with EZS and will respond to pings, login requests, and client version requests automatically. You need to set various values prior to connecting (login, client version, etc) or the dll will send "" The entire ezs protocol is handled at the dll level so you dont have to. I am continuing to try resolve this issue here. Once I do I will release the dll with full client management.

give it a go, and let me know if you have any problems. I will post the next release as soon as I can. Remember, use the ini file as a temp guide for now

Thanks -CR

Edit: poll ezs_GetTCPData for data to see some limited server data like "END SUB" (don't ask) and various disconnect reason messages - i know, not too useful of a plugin yet. I might bypass remote client management for now and just pass raw ppt messages out via TCPData property. Sorry for the hold up...

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 9th Sep 2005 02:12 Edited at: 9th Sep 2005 05:33
stop the presses! i think i just fixed the darn problem...

bbialw.

EDIT: Yes the problem is fixed. The plugin can now persist information about remote server clients and will expose it to the dbp runtime (will be adding zone clients as well, but need to add the notifications to the server app first). Tomorrow I will add a few funcs that will allow you to get remote client info in various ways, then ill post the updated dll. -CR

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 10th Sep 2005 03:44 Edited at: 10th Sep 2005 14:56
The first Release version of dbp_ezsClient plugin is now available, click my sig link to download it. Its in the ezs section. The zip contains the dll and the keywords ini file. Here's a quick list:

Functions
ezs_SetMode ByVal ModeType As Integer
ezs_Connect ByVal Host As String, ByVal Port As Integer
ezs_GetTCPData() As String
ezs_GetConnectionState() As Integer
ezs_Send ByVal t As String
ezs_Disconnect
ezs_SetLoginData ByVal ClientNick As String, ByVal ClientPassword As String
ezs_SetClientVersion ByVal Version As String
ezs_GetServerTime (ByVal PartIndex As Integer) As String
ezs_SetPPTDelim ByVal Delimiter As String
ezs_GetSCCount() As Integer
ezs_GetSCNickByIndex (ByVal Index As Integer) As String
ezs_GetSCIDByNick (ByVal Nick As String) As Integer

The functions should be self-describing of their usage except for ezs_SetMode. Pass in 0 to have the dll autoparse/autorespond to EZ_Serv, set it to 1 to return all raw server data thru the TCPData property. The default is 0 so you need not call this function if you want to use Autoparsing. When set to one you basically make the plugin a tcpip client plugin, relying on you to handle all parsing/responding with the server.

The plugin maintains a list of remote clients (at the server level - zoning is not done yet) when you join the server the dll will parse the CL_LIST message, and it will maintain the list when receiving subsequent CL_JOIN or CL_EXIT messages. You can use ezs_GetSCCount, ezs_GetSCNickByIndex, and ezs_GetSCIDByNick to locally store (in dbp runtime) information about remotely connected clients on the server. ezs_GetSCCount() returns the upper count of the client list (1 based count, not 0), so you could build a loop on this value and then use ezs_GetSCNickByIndex to return the currently connected Nicknames.

I will try and work up a doc and some dbp examples, but in the meantime hopefully someone can give it a go

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
Kohaku
20
Years of Service
User Offline
Joined: 3rd May 2004
Location: The not very United Kingdom
Posted: 10th Sep 2005 06:19
One day, I'll have to sit down and make an ez_serv multiplayer framework for age. Looking good m00 man.


You are not alone.
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 10th Sep 2005 14:02
thanks doig. lemee know if theres anything I can do to help with that. Age is looking great.

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 10th Sep 2005 23:30 Edited at: 10th Sep 2005 23:31
OK, lets try this again...

DBP_EZSClient Plugin for Dark Basic Professional
The earlier version was not the correct version to be distributed and will not work with DBP whatsoever - I apologize for that mistake. The latest and correct version is found on my web page, by clicking my sig link. The zip now includes a User's Guide document which should get you started nicely.

Please remember this plugin is evolving. If you find anything whacky occurring just let me know, thanks.

CR

(EZS 1.6 coming soon, the plugin will be kept in sync with any ezs changes as they occur )

DBP Plugins | EZ_Serv 1.5 Bush, a retard, son of an *sshole
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 11th Sep 2005 21:04 Edited at: 11th Sep 2005 21:08
EZ_Serv 1.6 Update Released

The application has been updated to now send ZN_LIST, ZN_JOIN, and ZN_EXIT messages, when zoning is enabled. These messages behave exactly like their CL_ message counterparts, but under the context of Zoning. The update zip contains the updated exe and the updated User's Guide. Unzip it to your EZ_Serv directory where the exe resides.

I am updating the DBP_EZSClient plugin to handle these new messages, and maintain the plugin's zone client list. I'll post it when its ready.

CR

Philip 1337
21
Years of Service
User Offline
Joined: 27th Aug 2002
Location: United Kingdom
Posted: 12th Sep 2005 19:43 Edited at: 12th Sep 2005 20:47
Thanks CattleRustler
*starts to test out the plugin*

[Edit]
Oh no i keep getting a Connection Error



CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 12th Sep 2005 21:51 Edited at: 12th Sep 2005 21:52
Quote: "ezs_Connect "loop",9999"


thanks for trying out the plugin.
whats "loop"? is that the machine name?
try putting in the machine IP as a string, or if its the same machine try "localhost"

whats the connection error
did you remember to start the server listening? (ive done that)
lol

is there a firewall and/or router between the client and the server?
if so you may need to allow traffic on 9999, and/or forward port 9999.

could be a few things happening here.

Philip 1337
21
Years of Service
User Offline
Joined: 27th Aug 2002
Location: United Kingdom
Posted: 12th Sep 2005 21:59
DOH! lol
some how i was thinking loop was the same as localhost lol
Works now

CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 12th Sep 2005 22:06
awesome.

dont use zoning yet, that version of the plugin doesnt handle zones yet. I am working on that tonight.

the user guide is accurate.

let me know how it goes

CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 16th Sep 2005 04:36
Had to take a temporary diversion from the ezs plugin, to work on something related to it. Thats 99% done. When that is finished I can continue with the dbp_ezsClient plugin. Has anyone given the current version a go?

Philip 1337
21
Years of Service
User Offline
Joined: 27th Aug 2002
Location: United Kingdom
Posted: 16th Sep 2005 20:05
So far I can't get these commands to work:

ezs_GetSCIDByNick(userName$)
just returns 0

and

ezs_GetSCNickByIndex(1)
just makes the program create a CrashOn_09_16_05.txt

Otherthan that, It would be nice if there were some examples of how to use AddPPTStub

CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 16th Sep 2005 22:27
concerning the two commands above, at this point I am not sure if its a code issue from your code, or a dll issue. This is why I had to stop work on the plugin and sort out some tools issues. Those have been sorted and I will resum work on the plugin starting tonight. I'll have a better handle on whats occurring soon.

Regarding ezs_AddPPTStub: This command lets you add your own protocol stubs to the ezs plugin parser. When you add commands, each message will be checked for this PPT Stub (Please see the EZS docs on this issue) If its found it will be parsed automatically by the plugin and the data will be returned in the command, commandid, and commanddata buckets (use ezs_getCommand, ezs_getCommandID, ezs_getCommandData to return the current value)
Depending on how you formulate your data bucket will determine what the commandData data looks like when your app gets it (ie: % delimieted etc - this should match the server setting for ppt delimiter)

hope that helps

In the coming days when the plugin is better, and released I will work up some dbp examples of various types (ie chat, 3d, etc)

The 1nteger
19
Years of Service
User Offline
Joined: 30th Mar 2005
Location: United Kingdom
Posted: 24th Sep 2005 21:35
@CattleRustler: Nice1, i remember checking this out, and thinking pants (not the product ) don't got the cash right now , but, alas, not a problem now

I agree with Lost in thought, put a donations link so when were millionaires from the sexy dbpro multiplayer games made we can send you some cash for the efforts

Leroy Frederick - Director / Lead Designer - ETERNAL SYNDROME™ ONLINE: www.ETERNALSYNDROME.com ETERNAL SYNDROME™ - “Play Your Emagination!”™
CattleRustler
Retired Moderator
20
Years of Service
User Offline
Joined: 8th Aug 2003
Location: case modding at overclock.net
Posted: 25th Sep 2005 03:36
lol, thanks

I'm still having blasted issues with the plugin, thats why no new updates

Darkbasic MADPSP
18
Years of Service
User Offline
Joined: 15th Jun 2005
Location: Uk
Posted: 25th Sep 2005 11:16
WHAT still not stickied?

Gtas back and bigger and better than before
Banana Acid
18
Years of Service
User Offline
Joined: 26th Sep 2005
Location: Germany
Posted: 26th Sep 2005 11:54
im missing a few things ...

tell me if im wrong.

but aquiring:
Server.Name,
Server.Location (optional),
Server.Secure (needs a client to logon by PW or alike),
Server.UserCount,
Server.ClientVer (required client version),
Server.ClientType (game ID),
Server.Description ("Continent Alpha, Level Hard" - kinda thing)

this preferably without the need to logon!

and (logged in):
Server.Info (returns a string: "Hello welcome to Server %name%. Enjoy Playing. Todays Headlines: bla and bla...")


Why i got this fancy ideas...

I want to code a Server Directory (SD). Allowing the EZS to sign there up. Why ? A random game just retrives all matching games from the SD, to decide where to log on. Just a general thing like the Blizzard.Net. There is no login reqired on the SD to get the info.

just a few commands like:
SD_con "EZS_SD.net:9999"

indexing:
array = SD_retrive servers (array: SD_ID#, name$, SD_ID#, name$, ...)

info retrival:
var$ = SD_retrive location (var$, location is one of the serverprovided infos)

thinking about a command that does retrive all, after each server info block with a delimiter, since total info returned could change with future servers...)

what ya say? gimme a positive comment and ill go for it
Jadawin
18
Years of Service
User Offline
Joined: 20th Oct 2005
Location: Seattle, WA
Posted: 22nd Oct 2005 04:59
Well, none of the links are Mod2Software appear to work now. Anyone have this stuff and can post it for the rest of us?

Login to post a reply

Server time is: 2024-05-04 07:31:44
Your offset time is: 2024-05-04 07:31:44