All Projects → nokka → d2client

nokka / d2client

Licence: MIT license
Client able to write and read data over TCP on a Diablo II server.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to d2client

Simpleunitytcp
🖧 Simple Unity Project to show how TCP communication are builded in C# without multi-threading or Unity network (Unet) involved.
Stars: ✭ 22 (+46.67%)
Mutual labels:  tcp-client
Eventstore
EventStore Haskell TCP Client
Stars: ✭ 77 (+413.33%)
Mutual labels:  tcp-client
Tcpgoon
tcpgoon, maximum TCP connections tester
Stars: ✭ 141 (+840%)
Mutual labels:  tcp-client
Tcpmessenger
TCPMessenger is a lightweight and simple Android library to send and receive tcp messages.
Stars: ✭ 12 (-20%)
Mutual labels:  tcp-client
Easytcp
Simple framework for TCP clients and servers. Focused on performance and usability.
Stars: ✭ 60 (+300%)
Mutual labels:  tcp-client
Packetsender
Network utility for sending / receiving TCP, UDP, SSL
Stars: ✭ 1,349 (+8893.33%)
Mutual labels:  tcp-client
Netcoreserver
Ultra fast and low latency asynchronous socket server & client C# .NET Core library with support TCP, SSL, UDP, HTTP, HTTPS, WebSocket protocols and 10K connections problem solution
Stars: ✭ 799 (+5226.67%)
Mutual labels:  tcp-client
Simplenet
An easy-to-use, event-driven, asynchronous network application framework compiled with Java 11.
Stars: ✭ 164 (+993.33%)
Mutual labels:  tcp-client
Synner
A TCP SYN flood client written in Rust, powered by libpnet
Stars: ✭ 59 (+293.33%)
Mutual labels:  tcp-client
React Native Tcp Socket
React Native TCP socket API for Android, iOS & macOS with client SSL/TLS support
Stars: ✭ 112 (+646.67%)
Mutual labels:  tcp-client
Tinytcpserver
A small tcp server working under Mono or .NET (4.0) and provides hooks for handling data exchange with clients (works under mono and .net). Behaviour/protocol/reaction could be specified via custom C# script.
Stars: ✭ 14 (-6.67%)
Mutual labels:  tcp-client
Gdtwitch
A Godot to IRC to Twitch interface.
Stars: ✭ 42 (+180%)
Mutual labels:  tcp-client
Simpletcp
Simple wrapper for TCP client and server in C# with SSL support
Stars: ✭ 99 (+560%)
Mutual labels:  tcp-client
Chat Socket
A simple chat room using java socket with the client-server paradigm
Stars: ✭ 24 (+60%)
Mutual labels:  tcp-client
Androidasyncsocketexamples
This project includes a few examples on how to create different types of sockets using AndroidAsync. It includes examples for a TCP client/server, TCP client with SSL and UDP client/server.
Stars: ✭ 152 (+913.33%)
Mutual labels:  tcp-client
Nat Ddns
tcp代理转发工具,可用于内网穿透实现类似花生壳等工具的功能
Stars: ✭ 19 (+26.67%)
Mutual labels:  tcp-client
Fixio
FIX Protocol Support for Netty
Stars: ✭ 84 (+460%)
Mutual labels:  tcp-client
Oksocket
An blocking socket client for Android applications.
Stars: ✭ 2,359 (+15626.67%)
Mutual labels:  tcp-client
Simpletcp
A minimal non-blocking TCP server written for Python 3.
Stars: ✭ 162 (+980%)
Mutual labels:  tcp-client
Extreme
Elixir Adapter for EventStore
Stars: ✭ 110 (+633.33%)
Mutual labels:  tcp-client

Diablo II TCP client

Go Report Card GoDoc

D2Client is a TCP client that logs into the Diablo II server and can then write messages to the server, both in the chat and whisper specific accounts.

Message example

Install

$ go get github.com/nokka/d2client

Usage

package main

import (
	"fmt"
	"log"

	"github.com/nokka/d2client"
)

func main() {
	client := d2client.New()
	client.Open("private.server:3001")
	defer client.Close()

	// Setup channel to read on.
	ch := make(chan []byte)

	// Setup output error channel.
	errors := make(chan error)

	client.Read(ch, errors)

	err := client.Login("user", "password")
	if err != nil {
		log.Fatal(err)
	}

	client.Whisper("nokka", "Hello!")


	// Read the output from the chat onto a channel.
	for {
		select {
		// This case means we recieved data on the connection.
		case data := <-ch:
			fmt.Println(string(data))

		case err := <-errors:
			fmt.Println(err)
			break
		}
	}
}

Contributing

Please see CONTRIBUTING.md.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].