Coder Social home page Coder Social logo

warzone / website Goto Github PK

View Code? Open in Web Editor NEW
12.0 5.0 76.0 3.8 MB

Warzone's website

Home Page: https://warzone.network

License: GNU General Public License v3.0

JavaScript 85.71% CSS 12.34% HTML 1.68% Dockerfile 0.23% Shell 0.04%
warzone tgm website nodejs react hacktoberfest

website's Introduction

TGM Build Status Minecraft Version Discord

Team Game Manager. A Team Oriented Minecraft PVP plugin.

Project Goals

  1. Advanced Game Engine with game logic implemented through modular programming. Managers should offer hooks and data models to modules. Modules should be capable of communicating with one another. The project should strive to make new game type development as straightforward as possible.

  2. Map.json Scripting Language. Maps need access to a baseline scripting service that allows for map-specific dynamic content. As an example, a map should be able to provide different spawn points as the match time progresses.

  3. This project is heavily influenced by PGM. Our goal with TGM is to shift more of the game logic to Java as opposed to map configuration files. This allows for the rapid development and modernization of gamemodes over time.

Here's a basic example of what map configuration files look like:

"spawns": [
    {"teams": ["spectators"], "coords": "59, 48, 184.5, -180"},
    {"teams": ["red"], "coords": "149.5, 7, 184.5, 90"},
    {"teams": ["blue"], "coords": "-30.5, 7, 184.5, -90"}
],
"regions": [
    {"id": "red-spawn-protection", "type": "cuboid", "min": "126, 0, 168", "max": "152, oo, 199"},
    {"id": "blue-spawn-protection", "type": "cuboid", "min": "-8, 0, 198", "max": "-34, oo, 167"},

    {"id": "build-height", "type": "cuboid", "min": "-oo, 40, -oo", "max": "oo, oo, oo"}
],
"filters": [
    {
        "type": "enter", "evaluate": "deny", "teams": ["blue"],
        "regions": ["red-spawn-protection"], "message": "&cYou may not enter this region."
    },
    {
        "type": "enter", "evaluate": "deny", "teams": ["red"],
        "regions": ["blue-spawn-protection"], "message": "&cYou may not enter this region."
    },
    {
        "type": "build", "evaluate": "deny", "teams": ["red", "blue"],
        "regions": ["build-height"], "message": "&cYou have reached the max build height."
    }
]

Local Server Setup

  1. Start with the latest stable Paper (PaperSpigot) build.

  2. Compile the latest version of TGM or download it from our Jenkins.

  3. Create a Maps folder in the root directory of your server and insert a supported TGM map. Make sure you also include a rotation.json file with the names of maps you would like to be present in the rotation.

    • You can download our Maps folder as a reference on the Maps repository located here.
    • If you would like to load multiple map repositories or simply change the location, you can change the setting in the plugins/TGM/config.yml file.
  4. Start the server.

    • Additionally, if you would like stats to be saved, you need to set up the API here and enable the API feature in the plugins/TGM/config.yml file.
  5. (Optional) Install WorldEdit for added telelport tool functionallity

Compiling

  1. Clone the repo to your computer.

  2. Compile Spigot by downloading and running the BuildTools jar from here. Make sure you include the --remapped flag when compiling it, otherwise you might receive errors when later compiling the plugin.

  3. Make sure you have Maven installed and run mvn clean install in the top-level folder to generate the required libraries. You can then download the jar from the target folder.

Developer Tips

  1. We use Lombok. Make sure you have the Lombok plugin installed on your preferred IDE.

Documentation

This plugin takes advantage of a map.json required by every map to configure the gamemode and to document the coordinates needed by the gamemode to function. To learn more about the available gamemodes in the plugin, how to configure a map.json, and what features are currently offered through this file, we recommend checking out our Documentation repository located here. If you need any additional examples on how to format the JSON's, consider checking out our Maps repository as well located here.

website's People

Contributors

bennydoesstuff avatar crazyiscreeps avatar dependabot[bot] avatar draem avatar indicardo avatar jellz avatar jorgeberrex avatar lukechatton avatar matrixtunnel avatar mattbsg avatar mrscopes avatar palmidence avatar residal avatar smocksmock avatar sprule avatar tbg1000 avatar thebestgameeer avatar tjhubz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

website's Issues

Add Google Analytics

If Google Analytics doesn't slow the website down it should be added to the site. It will require some extra steps due to the client-side routing.

Add rules page (+ add to navbar)

It should be somewhat simple to setup a rules page, and we can't automatically rely on users to know about the Discord to read the rules considering the Discord is not currently advertised. We need a way for players visiting our site to know the rules, and a page would be very quick to set up.


Not following any of the rules listed on this Warzone page will result in a punishment. If you have a question if whether or not something is allowed, please contact a moderator for more information.

General Composure

  • Be kind to other players. While we're pretty lenient when it comes to swearing, we ask that you do not use foul language directed towards other players.
  • No advertising of any kind. This includes Minehut servers, external servers, YouTube channels, etc.
  • This is not a market. To protect our users from scams and other financial offenses, selling, soliciting, and/or buying anything through our services is not allowed.
  • Chat spamming/flooding is not allowed. Additionally, keep everything as appropriate as you can.
  • No client modifications that give you an advantage over other users.
  • Map abuse and stats abuse are bannable.
  • Be respectful to staff members. If they say something, you must listen and abide.
  • Do not encourage other players to break rules. If a player breaks a rule in response to your directions, you will be held accountable.
  • Do not impersonate staff members on any service, by rank, association, or username.
  • Directed threats to players or the server are not permitted. This includes things under the scope of DDoS threats, Dox threats, death threats, or personal threats.

General Gameplay

  • You must have an appropriate username and skin.
  • Do not do anything that may harm your team. This is team griefing and includes things such as breaking blocks under your teammates, blocking team arrows, stealing from chests, blowing up your own side, or preventing them from getting an objective.
  • Switching teams when you are losing is not permitted. (this is map abuse)
  • Leaving the match while in anticipation of dying is not permitted, if death is inevitable you may not leave, otherwise it is combat logging.
  • Macros, autoclickers, multiple attack functions, physical hardware or software modification to allow automated clicking, changing standard mouse settings, modifications to standard hardware limitations, etc. are not permitted. Any clicks beyond one click are not permitted. The general rule as to how you should click is one button, one finger, one click: butterfly clicking is not allowed.

In the Discord

  • Please keep all channels on topic. Be sure to read pinned messages in each channel if there are any.
  • Use of voice changers is prohibited. Additionally, if you have a lot of background noise please turn on push to talk.

Please note that all bans in game and on discord are IP bans. This means if your sibling is banned, you will be banned too, unfortunately. Additionally, these rules are subject to change at any time, so check them regularly for updates.

If you are banned, please use the Discord to appeal. If you wish to report a player, please use the Discord to report.

Update Discord link

When clicking on Discord in the navbar, it gives you an invitation link that no longer works.

Detailed server stats

On the play page, you should be able to view some more information about the server. Some info that we could possibly include:

  • The number of players on the server.
  • Amount of players currently playing.
  • The current map that's queued at the moment.
  • The next map that's coming up.

Basic kits

The kits have not yet been released yet, but I think that there should be more basic kits than the previous kit system.

I think that the kits shouldn't have super special abilities such as fire, protection, etc. They should be more simple.

Basically, the kits would be similar to this, just something cleaner and unique.

Marksman - Usually apart of base defense - More arrows but weaker gear
Tank - Also usually apart of base defense - Stronger gear
Rusher - Full leather
Midfighter - Full leather with an iron chest plate

(arrow count would have to be nerfed for default)

Add staff page

This has been put on hold for now until the API is restructured to have staff ranks recorded in the backend. The staff page would pull from the API and sort staff on the website by including:

  • The rank that they are (e.g. BennyDoesStuff - Moderator)
  • The role that they serve (e.g. Teejers -> Map Management)
  • The Minecraft head including top layer of their skin (viable API - Minotar)

It would be sorted into sections, such as Administrators, Developers, Moderators, and any further staff ranks that are included. These would be colored accordingly with what they are on Discord and in-game.

This would also be put into the footer of the site.

The wilderness needs a stats page to show how buff it is

Example
There is no link to go to Wilderness' page, nor does a skin load because there's no uuid attached.

Solutions would be to use a steve/alex skin (or if you're feeling ambitious, grab the nick skin), then just make a temporary player stats page until the nick is changed.

Website is not responsive

The site looks fine on mobile however the mover bar thing is off center. I’ll post a picture in the discord as it isn’t letting me upload

Add Carousel to landing page

The proposal

There currently isn't anything that advertises the Discord, which is the medium between the players, staff, and server, and there currently isn't quite anything on the site that will catch a player's eye. Many also might not know what we are and what we do, and a Carousel would be interactive and convenient for new visitors to the project.


I've made this Carousel, but it's a mockup and isn't an actual working version (though I can give the code, it uses old HTML which may no longer work. Conversion should be easy or rather one can be made from scratch.)


Of course, add more slides if necessary. I just think it'd help.

Add staff page

A web page that lists all staff members and their respective ranks, in order of rank hierarchy. It will also include player heads.

Allow us to make clans

Recently; some people are making a clan (cause i started it 😉 ) and we also need to have a second place to keep our clan members together. Mind adding Clans into Warzone?

Cache staff list

The staff page shouldn't need to send an API request every time the page is viewed, the data barely changes and storing it in session storage like the recent kills and matches would reduce the load on the API.

Respawn Kit

First spawn kit works.
But when you respawn, your kit drops onto the ground.
Your items also save from when you died, so arrows and blocks do not refill.

Information page

Create a general information page which describes, in reasonable detail, each game mode that Warzone has to offer.

This is beneficial in case someone who is relatively new or lesser knowledged of the server would like to be informed about our game modes, and has not been able to join our Discord server to view #info (though, the message is out of date)

The page can also contain brief information surrounding the creation of Warzone, and in general, what we have to offer to those who partake in our community (e.g. events, a relaxed atmosphere, dedicated staff team, mapmaking and staffing opportunities)

Add a privacy policy

Might go towards the need of having a footer at the bottom of the site: but a privacy policy would be necessary for parents who want to know more about how the information is collected, and how their child may be protected by the service. Players should know what is able to be accessed by who and when for security measures.


Last updated October 3rd,, 2017

By using our (Warzone) service, information may be collected and/or stored in numerous ways:

Information Collection

  • Any statistics, participation in matches, and other gameplay-related events are compiled to allow for profile pages and match pages.

  • Any messages you send to the server are stored on our Discord and stored in match pages for moderation purposes.

  • Any purchases made in our store are processed directly through PayPal and Xsolla, and not the Warzone administration. We do not store your personal card information on our services, nor do we have access to view it.

  • Any reports and appeals made are available in Discord for moderation purposes. Moderators will respond accordingly to any reports and/or appeals you may make, and other users may have the ability to see them.

  • Any IP address you use to connect to our server or Discord is stored privately in our database. Any bans are currently IP bans, so if you are taken off of our service, then your IP will be matched as well to prevent any logins from your current IP.

  • Any information you add to your Discord profile while on our service is entirely optional and is handled by Discord exclusively: we will not infringe and/or change any of your information. To see Discord's privacy policy, please visit this page.

Any information above will be used for the sole purposes that they are intended for. We will protect personal information with secure methods to the best of our ability, and will, to the best of our ability, address of the purposes & practices for collecting the aforementioned information.

Policy Modification

We reserve the right to update or modify this Privacy Policy with or without prior notice. It is your sole responsibility to stay updated with this page and to be responsible with any information that you may provide on our services (such as being mindful of what you send). You will always be able to see the last revision to the Privacy Policy on the given date above, and by continuing usage of Warzone services, you are complying with the current revisions of our Privacy Policy.

Contact Us

If you have any questions or wish to seek clarification about our Privacy Policy, please contact a staff member in our Discord server.

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.