A multiplayer lobby system for Game Maker by darkhitman.
DOWNLOAD:
> DarkNet (.gm6 in .zip, ~0.1mb)
(Note: For registered users only, due to DLLs.)
Introduction:
DarkNet, unlike DarkStorm, is not a 'game.' It can best be related to Blizzard's BattleNet system, hence the name. You can use it to significantly expand the capabilites of any GM game -- whether it uses gm_mplay, SOC, or GMsock! It is, of course, editable -- it would have to be, in order to be of any use.
Features:
- Hundreds of players
- Channels (like in BattleNet) can be created and joined by players
- Each channel can host a game, of which all members of the channel can join
- Uses GMsock for efficiency
- Returns an IP that any (multiplayer) game that uses IP-based connection can connect to
- Server console with kick, listen, and global message commands
Anyone with an online game that uses IPs to connect... for example, DarkStorm can be applied to DarkNet (and I'll work on making an example of this, it will probably take all of five minutes to do).
Who can't use DarkNet?
Contrary to what some people may be hoping, DarkNet cannot be used to turn a single-player game into a multiplayer one. It can only be applied to multiplayer games, since it does not deal with the actual game.
Why use DarkNet?
Use DarkNet if...
- You have an online game that prompts the user for the IP to join.
- You constantly find your topic spammed with 'my IP is X' or 'who wants to play with me?' posts
- You want to just have a chat room for your single-player game (not recommended)
[These instructions are brief; see Game Information for more details.]
1. Merge DarkNet with your game.
2. Move the lobby room before the room(s) of your game.
3. The IP for the game being joined will be stored in global.dnet_channel_host. Use this IP as the IP to connect to in your game's connection object.
4. Run the DarkNet server, then run your game, and enjoy.
How does it work?
DarkNet is a chat program. The clients connect to the main server, and when a message is sent, they send it to the server -- not the other players. The server then sends the message to all of the clients in the same channel. If the server is down, the message will not be sent -- but the server can be restored without the clients needing to restart. When a player in the channel clicks Host, the other players in that channel will have the Join button light up, allowing them to join the game -- although, actually, all that's happening is that player's IP is set as the Hosting IP for the channel.
License: Any form of copying, distribution, citation, sale, or redistribution of DarkNet without sufficient credit given to DarkNet/darkhitman (see below) is strictly forbidden and will not be tolerated. As this is an (basically) open-source project, you are free to edit this in any way, without my express permission. It is not allowed for you to claim the entirety of DarkNet as your own work; however, it is acceptable to acknowledge your changes in the credits.
(Note: This does not apply to the scripts and DLL of GMsock. For information on GMsock, please read GMsock_readme.txt (included).)
Acceptable credit includes:
>>> A full-screen intro sponsoring the words 'Uses the DarkNet lobby system' or similar message.
>>> Text, in readable and at least size 12 font, at the bottom of the loader and/or title screen of your program.
>>> A reference in the credits; however, this reference must include the DarkNet license, a link to the topic, and my (screen)name and email.
What is not acceptable (by itself, at any rate):
>>> A reference to only my name in the credits.
>>> No reference at all (duh).
Note: Please don't PM me asking if your credit is acceptable. I don't really care that much. If you're the type of person who wouldn't give credit in the first place, I probably don't want my name on your game.
Screenshots:
And, please. Don't post 'wut is this/??'. I clearly explained it. And number ratings are pretty much inapplicable.
