![]() |
| | #1 |
| Woof, woof! Join Date: Mar 2007 Location: Australia
Posts: 3,295
| OpenSource competitive network game I'm currently in the designing stage of my game -- I really want to make it OpenSource. However, it's primarily a competitive network game. Is it possible to create this game, as OpenSource with minimal risk of cheaters (More than if it were closed source). ie, someone could make a proxy, since the netcode would be available and pretty much do anything. That was certainly a cloud above the release of the 'Quake 3' source -- many commercial games still used the engine. I'm keen on ideas! Thanks in advance. Last edited by zacs7; 04-15-2008 at 06:52 AM. |
| zacs7 is offline | |
| | #2 |
| (?<!re)tired Join Date: May 2006 Location: Portugal
Posts: 5,661
| I faced the same problem with my current project, since it is also due to go Open Source once beta is over. The solution I found, on my particular case, was to separate the game in 3 parts. Only two are open source. The Client Application is OS. The Server Application is OS. The Game Engine is Closed Source. The Game Engine on my case is really just a couple of dlls. It contains the game rules and algos as well as the access routines to the database that necessarily only operate through validation. These DLLs are only meaningful to the Server Application, naturally. My plan is to do things in stages. - The client application is the one to go OS first. I'm building a rather complete Client Application, so I doubt anyone will want to code one themselves. However, they may want to port the current code. And maintain the ports as the game features increase. I may also eventually remove myself from the Client Application entirely. - The Server Application goes OS if and when I realize there is an interest in it. The game user base one day justifies the need to run concurrent games with their own administrators who may want to tweak the code, or I may have trouble adding features to the game as I start to concentrate on other things. - The Game Engine will stay closed source and I will pick myself those interest in working on it with a final team no larger than 5 people, including me. We are coding different beasts. Mine's a large scale PBeM Multiplayer turn base strategy game. But maybe this will help you somehow.
__________________ Originally Posted by brewbuck: Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster. Last edited by Mario F.; 04-15-2008 at 07:24 AM. |
| Mario F. is offline | |
| | #3 |
| Banned Join Date: Nov 2007
Posts: 678
| i was also trying to write a simple networked pong game (2 player). i was thinking that i will write one program which will first try to connect, and if failed, will become the server. no separate server-client versions. i will try to finish it soon and then post my *great* creation in games section! behold! ps ps ps: was that an off topic? was that a hijack?? >_< |
| manav is offline | |
| | #4 |
| Malum in se Join Date: Apr 2007
Posts: 3,188
| Well, define cheating? OS will always risk people writing bots, but CS has te same problem it just takes not much longer.
__________________ Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off. |
| abachler is offline | |
| | #5 |
| Cat without Hat Join Date: Apr 2003
Posts: 8,492
| Game security against cheating comes in two flavours. 1) Server-side security based on analyzing the player's incoming data. This is secure, but unreliable. There are many ways of cheating that can't be detected, such as information hacks. (Basically, any information the client has, it can be forced to give the player.) The solution is to make the clients as thin as possible, i.e. give them minimal data and let the server interpret low-level commands. The obvious disadvantage of this is the highly increased traffic, and consequentially, latency. 2) Client-side security against manipulation of the game state. If your client is open-source, this is a hopeless endeavor.
__________________ All the buzzt! CornedBee"There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code." - Flon's Law |
| CornedBee is offline | |
| | #6 |
| Malum in se Join Date: Apr 2007
Posts: 3,188
| I agree with the second point you made, but on the first, traffic is usually reduced when using server side procesing, but server load is increased, which results in latency issues. Bandwidth is reduced because the server no longer sends the info on things the client cant 'see'.
__________________ Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off. |
| abachler is offline | |
| | #7 |
| (?<!re)tired Join Date: May 2006 Location: Portugal
Posts: 5,661
| server load is manageable and usually where admins like to concentrate their efforts. Anything outside this is harder to manage and usually more expensive to deal with.
__________________ Originally Posted by brewbuck: Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster. |
| Mario F. is offline | |
| | #8 |
| Malum in se Join Date: Apr 2007
Posts: 3,188
| Server load can only be managed up to a point. Players per instance is capped at what one server can handle usually. Not that this is a serious bottleneck, the average server can easily handle several hundred clients depending on the game engine itelf of course.
__________________ Until you can build a working general purpose reprogrammable computer out of basic components from radio shack, you are not fit to call yourself a programmer in my presence. This is cwhizard, signing off. |
| abachler is offline | |
![]() |
| Thread Tools | |
| Display Modes | |
|
Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Need book to program game into multiplayer... | edomingox | Game Programming | 3 | 10-02-2008 09:26 AM |
| C# - Building a SCUMM-like game.. questions | Iyouboushi | Game Programming | 0 | 05-24-2008 10:54 PM |
| my upcoming UNO card game :) | Hussain Hani | Game Programming | 5 | 01-24-2008 01:19 AM |
| 2D RPG Online Game Project. 30% Complete. To be released and marketed. | drallstars | Projects and Job Recruitment | 2 | 10-28-2006 12:48 AM |
| My Maze Game --- A Few Questions | TechWins | Game Programming | 18 | 04-24-2002 11:00 PM |