Code Monkey home page Code Monkey logo

gameserver's Introduction

Build status Build Status codecov.io

The League Sandbox project's game server

Project website along with more specifications can be fround from: https://leaguesandbox.github.io/
Project chat on Discord: https://discord.gg/G6mcg5u Project board on Waffle: https://waffle.io/LeagueSandbox/leaguesandbox.github.io

Contributing

We're looking for people interested in contributing to the project.
Currently the technologies we use include:

  • C#
  • Lua
  • Electron
  • Node.js
  • Angular
  • Socket.io

For more detailed project specifications head over to https://leaguesandbox.github.io/
If you're interested in contributing, come find us from Discord and let us know

Setup guide

Running the client

Currently there are two options for launching the client.

Launching from command line

start "" "Path/To/Your/League420/RADS/solutions/lol_game_client_sln/releases/0.0.1.68/deploy/League of Legends.exe" "8394" "LoLLauncher.exe" "" "127.0.0.1 5119 17BLOhi6KZsTtldTsizvHg== 1"

Using a launcher created by TheWebs

  1. Clone the launcher's repository from https://github.com/TheWebs/IWLauncher
  2. Build it
  3. Copy the built launcher and it's dependencies to the game server's build folder GameServer/bin/Debug/
  4. Run it

Project policies

  • Line length should be 120 characters maximum whenever possible (use Editor Guidelines plugin for a ruler)
  • Pull requests must be approved before they can be merged
  • Pull requests should not be merged before the build has passed
    • If the build fails, ping the pull request creator and tell him to fix it
  • Files and folders in PascalCase
  • JSON dictionary keys in PascalCase
  • Keep the code as simple and clear to read as possible
  • Each separate feature should be developed in their own branch
  • Commits should be in logical small pieces
  • Pull requests should be kept as small as possible, generally one feature per pull requests
    • Instead of submitting one huge pull request with 3 features, submit each feature individually

C# guidelines

  • Function names in PascalCase
  • Constants in ALL_CAPS
  • Private variables in _camelCaseWithUnderscore
  • Public properties as getters / setters in PascalCase
  • All public variable access should happen through getters / setters
  • Regions shouldn't be used, instead split code into classes/files when needed
  • Dictionaries preferred over switches and long if/else statements
  • Boolean variable names should be prefixed with a question (is/can/should)
  • Conditional operator should be avoided. condition ? option1 : option2
    • This is fine to use in some niche cases where you can't avoid using it
  • Interpolated strings with embedded logic should not be used

Development flow and how to use git shell

  1. Pull latest version of master
    • git fetch -p
    • git pull origin master
  2. Checkout to a new branch
    • git checkout -b <branch_name>
  3. Make changes, do commits
    • git status - List of changed files
    • git add <filename> - Stage file for commit
    • git add -u - Stage all updated files for commit
    • git add -A - Stage all unstaged files for commit
    • git commit -m "<commit message>" - Create commit
  4. Push to github
    • git push origin <branch_name>
  5. Create pull request
  6. Checkout back to master
    • git checkout master
  7. Repeat

gameserver's People

Contributors

chutch1122 avatar deudly avatar fighter19 avatar furkans1821 avatar horato avatar matthewfrench avatar maufeat avatar mythicmaniac avatar neekhaulas avatar nitroxenon avatar thewebs avatar tornjv avatar

Watchers

 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.