Giter VIP home page Giter VIP logo

pokemon-server's Introduction

Pokemon-Server: Created by Oliver Drowzdowski and Denis Nadarevic

We wanted to recreate the core of Pokémon battles utilizing TCP sockets in Java. Players will connect to a server and take turns attacking until a Pokémon has fainted. Players can also choose from a selection of Pokémon. By doing this we hope to get a greater understanding of how TCP sockets, threads, Java, states, and client-server-client communication functions on a fundamental level. Note that we are just implementing the battling portion, as the rest of the game would be a massive undertaking.

A substantial amount of planning was needed to understand what type of battle and network systems we needed, how we would organize the database of Pokémon and more. This project idea was decided to challenge not only our understanding of TCP sockets but our ability to program a modern game that is popular to this day. The Java programming language was chosen since both members understand the language. This report will explain the main features, tools, and techniques implemented to perform properly.

To execute the code, the programs must be executed through the terminal on the UWindsor server. It is preferred that the server is executed first, along with the players. To play the game, have two players connect to the server by submitting their names. Once the server accepts the names, both players will be asked to pick a Pokémon to battle with. Once both players pick a Pokémon, one player will be randomly selected to start first. The players will be given a list of moves that they can use, with each move doing different amounts of damage. Players will take turns dealing damage to each other until a player’s Pokémon faints. When one Pokémon’s HP reaches zero, the game ends.

Please type the following terminal commands to try this out, this was made for SSH servers:

git clone https://github.com/bigboydeku/Pokemon-Server.git
cd "Pokemon-Server/src"
cp ../pokemon.db .
javac -cp '.:sqlite-jdbc-3.27.2.1.jar' Server.java
java -cp '.:sqlite-jdbc-3.27.2.1.jar' Server

Before executing the server, please read and run the Pokemon Client to have players from different networks play against each other.

The application was originally created using the IntelliJ IDE, but it was switched over to the University of Windsor server for the presentation. A problem that we faced, when switching over, involved the database. The server did not allow us to compile the files without a reference to the database. The commands above solve this problem; it requires additional steps, such as compiling and running with a reference to the database, as well as moving the database to the src file.

pokemon-server's People

Contributors

nadarevd avatar

pokemon-server's Issues

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.