Giter VIP home page Giter VIP logo

despatico_chat's Introduction

despatico_chat

A TCP/IP chat program with support for various commands. Wrote this for my Swinburne Intro To Programming assignment

How to use

Setting up

just simply git clone [email protected]:ItsThatBlackKid/despatico_chat.git then, using the msys version provided by MinGW cd [despacito_directory]. ###Building & Running To build the binary you'll have to run the build.sh file ./build.sh Then to run that binary simply execute the run.sh file ./run.h

Connecting and sending messages

Both the client and host logic have been bundled together so there aren't different executables for the two.

To run the program as a host: Enter your port number in the textbox labelled "Enter Port Here" and that's it. Despacito chat will start listening for clients as the host program.

To run the program as a client: Enter the host ip in the textbox labelled "Enter host here" Enter the host port in the textbox labelled "Enter port here" Enter your username in the username textbox If there is a host with the given IP, Despacito chat should connect instantly

Sending a message: Messages are straight forward, just enter messages in the message textbox and press send.

Features

Commands

Despacito chat allows you to send "commands" which are parsed locally The syntax for commands is: ![type] [value] Where [type] indicate what logic to perform on the [value]

Command types: !shout [value]: this command sets all letters to uppercase !whisper [value]: this command sets all letters to lowercase !spongemock [value]: (not yet implemented) -- this command creates a mixcase string, much like the famed spongemock meme

Users

Users are just commands that are sent upon connection to the host they share the same syntax as commands but [value] is tokenized even further

The program uses users to identify the origin of each message sent. Hosts are not treated as users.

Each user has their message automatically signed before it is sent. The signature is simply the user's username. Host messages are not signed

A list of connected users is stored and viewed beside the messages panel

Syntax: !user [username] [ip]: this creates a user struct which stores the values of [username] & [ip]

Curse word censoring

Despacito Chat will replace anything it views as a "curse word" with the word "DESPACITO"

The program loops through each case permutation of the identified "curse word" So writing fUcK or any other permutation of the word will lead to it being replaced with "DESPACITO"

How to contribute

Honestly, I'd suggest you don't even bother. Despacito Chat is built on an outdated and unmainted engine, SwinGame. There is very little documentation for the engine and this program probably won't be touched by me after I write this README

However, if you are interested, go ahead and fork this program.

Swingame Documentation: http://www.swingame.com/

despatico_chat's People

Contributors

itsthatblackkid avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.