Bots

Mar 6, 2009 at 2:03 AM
First of all .... great ... great job.

Is possible to create n-number of rooms and make that bots auto play in at least the half of them?
Can we lost some performance if the code is changed to vb.net?

thanks.
Mar 6, 2009 at 3:40 AM
Edited Mar 6, 2009 at 3:40 AM

No this version does not support multiple rooms.

There will be no performance issue with VB.net but you will spend lots of time with the conversion.

I do have multi table version running, but needs some more tuning before release.

Cheers

 

Mar 6, 2009 at 5:17 AM
Ok .. I understand ...
If possible to you public the code to see how you manage the idea to control many rooms and auto bots on it.
To be honest, I'm really confuse in that part, I try to begin adding some new code the your recent version, but I suppose I don'thave clear the logic to begin and control automatically everything.

Once again ... great job.

Thanks.
Coordinator
Mar 6, 2009 at 11:40 AM

Hi,
Thanks for your interest in the project, and thanks for the positive feedback.

The great thing about the .NET framework is that applications can be written in multiple programming languages. So if you want to you can add code in VB. I wouldn't recommend converting the old code base since it is a lot of work. (Since the project is written in C#, the only issues you might encounter are name casing, C# is case sensitive)

As Ivan stated, there is no performance issue since C# and VB are similar languages (Static typing, dynamic binding and so on...)

Since I don't have much time working on the project, I would be glad seeing other contributions. Keep us posted!

Thanks,
Gil

Mar 6, 2009 at 2:21 PM
I began the translation to vb.net, in fact I took from the project before the last one because I don't know if WCF is better or useful that TCP socket (pure). I think, We can mange or control better the communication behind internet using TCP, well WCF is really new for me.
Now, I would like to get some ideas to make the lobby, the game server, and the master ...

I never stop to say ... excellent work ...

Thanks.
Johnatan
Mar 6, 2009 at 6:44 PM
How you are more experimented developers, maybe you can give some tips or ideas to better manage or control de following scenarios:
- Imagine you have four rooms (of course they're going to be more) for each kind of game (texas holdem, 7 stud, ...) and wants to connect 10 players (max) in each room, a player can be present in diferents rooms. Using TCP Sockets for internet connections (maybe exists any better, I don't know) 
¿How do you identify each player associated with their relative room? (*)
¿How make specific chats depending of the room?
¿How start automatically when the minimum players are present in the room, giving some time (10 seconds) to wait if somebody else wants to connect to the room?
¿More important, this got me grazy, How initiate each hand in each room (where is possible) automatically without freeze the time? (is necessary to have another thread checking about this?)
¿Inform to the lobby server the number of players and active rooms in the game server?
¿How many different ports is necessary open in the system client? I mean, one for the game, one for the chat, one to update the lobby, ???

forgive me if I'm making trivial questions or disturbing you're time, but I see a cleaning code in your program and I really love it, and I think all of you guys really know how to do the things.
ibondy said it has something about multiple rooms, and that is exactly I want to do.
Over Internet, many rooms, many players, which one WCF or Sockets TCP standard?

Great job.
Thanks in advance.
Johnatan.
Mar 6, 2009 at 8:54 PM
Edited Mar 7, 2009 at 4:24 PM
Hello Johnnatan,
I will make my code available when I am ready, but I will give you idea what I am working on:
Server Architecture:
1 - x Game servers
1 - x Lobby servers
1 - x Bot servers
1 - x MSSQL 2008 server (other 12 DB's also supported)

Each server is configured as Windows service and can run on separate server or all services can run on one server. I would expect in deployment to have 2 Lobby server, 2 SQL server, 1 Bot server and 2-5 Game servers, depending on expected # of players. This configuration should achieve 99.99 uptime.

Client:
Silverlight client (check my site for progress)

For game servers I successfully run test with 4500 players on 900 tables. All players where powered by bot servers.
You can get additional info at http://www.mammothmicro.com/Blog/archive/tags/Poker/default.aspx

As for the lobby servers I have bunch of the back end coding done but need to create UI.
Same think with bot servers; running but need better management interface.

I do have so many features I would like to implement and so little time...

As for your question about sockets vs wcf. As far I know, none of the Poker networks is using WCF as this is relatively new technology and their systems are java or c++ based. There are trade off between sockets and wcf like in everything. With wcf you will leave some performance on the table, but you will have easier time to manage the code. Also you can run wcf over http and bypass any firewall issues associated with sockets.

One of these days I will sit down and write about all the new features I implemented.
 
Cheers & good luck
Ivan Bondy

PS: Try to use C# it is very simmilar to VB.Net and you will save yourself lots of time converting this application.




Mar 7, 2009 at 2:23 AM
Edited Mar 8, 2009 at 6:22 AM
First of all thanks ..., and second WOW ...
That's exactly what I want to do ... I hope you have some soon at least to post in what way or how you achieve to do all of that.

Very good ...

PS: Yes, at this time I'm reading many books to stay on top about csharp and left for awhile vb.net.
If you see your Blog, you'll find that I posted some information many days ago ... ;-)