sparky

A 5v5, blazingly fast, character-based libre tactical shooter written in pure C. 🎲

https://github.com/sparky-game/sparky

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.8%) to scientific vocabulary

Keywords

3d 5v5 c counter-strike cs2 csgo eframe egui game game-3d game-fps gamedev gamejam hacktoberfest raylib raylib-c rust shooter tactical valorant
Last synced: 6 months ago · JSON representation

Repository

A 5v5, blazingly fast, character-based libre tactical shooter written in pure C. 🎲

Basic Info
  • Host: GitHub
  • Owner: sparky-game
  • License: gpl-3.0
  • Language: C
  • Default Branch: master
  • Homepage: https://sparky-game.org
  • Size: 243 MB
Statistics
  • Stars: 8
  • Watchers: 1
  • Forks: 1
  • Open Issues: 16
  • Releases: 0
Topics
3d 5v5 c counter-strike cs2 csgo eframe egui game game-3d game-fps gamedev gamejam hacktoberfest raylib raylib-c rust shooter tactical valorant
Created almost 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing Funding License Code of conduct Citation Codeowners Security

README.org

# 
# GNU Sparky --- A 5v5 character-based libre tactical shooter
# Copyright (C) 2024 Wasym A. Alonso
# 
# This file is part of Sparky.
# 
# Sparky is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# 
# Sparky is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with Sparky.  If not, see .
# 


#+AUTHOR: Wasym A. Alonso

# Logo & Title
#+begin_html

Sparky Logo
Sparky

#+end_html # Subtitle #+begin_html

A 5v5 character-based libre tactical shooter

#+end_html # Repository marketing badges #+begin_html

itch.io
Buy Me A Coffee

#+end_html # Repository info badges #+begin_html

License C Standard Size Release Blazing Speed

#+end_html # Repository CI badges #+begin_html

CI Build Linux CI Test Coverage CI Website

#+end_html # Dedication #+begin_quote This project is created and maintained in loving memory of *Sparky*, aka *Chispitas*, aka *Chispis*, in the hope he will become immortal and, eventually, one with the Force. @@html:
@@ /To the moon and back, forever / #+end_quote *Defy the limits:* Blend your style and experience on a global, competitive stage. You have 13 rounds to attack and defend your side using sharp gunplay and tactical abilities. And, with one life per-round, you'll need to think faster than your opponent if you want to survive. *Creativity is your greatest weapon:* More than guns and bullets, youll choose a character armed with adaptive, swift, and lethal abilities that create opportunities to let your gunplay shine. No two characters play alike, just as no two highlight reels will look the same. *Fight around the world:* Each map is a playground to showcase your creative thinking. Purpose-built for team strategies, spectacular plays, and clutch moments. Make the play others will imitate for years to come. # GNU GPLv3+ License notice #+begin_quote Sparky is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. @@html:
@@ Sparky is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. @@html:
@@ You should have received a copy of the GNU General Public License along with Sparky. If not, see . #+end_quote # Graphic's style (Low Poly) #+begin_html

3D Low Poly Scene

#+end_html * Table of Contents :toc: - [[#projects-roadmap][Project's roadmap]] - [[#documentation][Documentation]] - [[#usage][Usage]] - [[#binary-distributions][Binary distributions]] - [[#build-from-source][Build from source]] - [[#get-the-code][Get the code]] - [[#dependencies][Dependencies]] - [[#debianubuntu][Debian/Ubuntu]] - [[#fedora][Fedora]] - [[#arch][Arch]] - [[#gentoo][Gentoo]] - [[#freebsd][FreeBSD]] - [[#openbsd][OpenBSD]] - [[#macos][macOS]] - [[#compilation--linkage][Compilation & Linkage]] * Project's roadmap For information about the detailed project's roadmap, including delivered milestones, see [[https://github.com/orgs/sparky-game/projects/1][the Sparky's Roadmap on GitHub]]. * Documentation The documentation of /Sparky/ includes: - Main documentation /(Coming soon!)/ - Reference manual /(Coming soon!)/ - GDD (Game Design Document) /(Coming soon!)/ - API documentation /(Coming soon!)/ * Usage #+begin_example $ ./sparky -h Usage: ./sparky [OPTION] GNU Sparky --- A 5v5 character-based libre tactical shooter If no option is provided, the client will start in offline mode. Options: -g, --gui start the graphical launcher -i, --ip start the client and connect to the server at -s, --server start the server -h, --help display this help and exit -v, --version output version information and exit Report bugs to: GNU Sparky home page: General help using GNU software: #+end_example * Binary distributions (...) * Build from source In order to build /Sparky/ from source, preparation is needed so as to the environment is properly setup and ready. ** Get the code First, download the codebase of the project. It's important to do so via the *OFFICIAL* Git repository hosted on [[https://github.com/sparky-game/sparky][GitHub]], and not through any tarball or compressed archive to ensure no tampering is done with the code. Appart from that, any ref can be checked out, being ~master~ (the trunk of all dev progress), a tagged commit (e.g. ~v1.0~), an actively maintained version branch (e.g. ~v1.0.y/stable~) or a LTS version branch (e.g. ~v1.0.y/lts~) the preferred ones. To clone the official repo as well as all its submodules, issue the following command: #+begin_src sh git clone --recurse-submodules https://github.com/sparky-game/sparky #+end_src ** Dependencies These are the packages needed to be able to build /Sparky/ from source, they are divided by distribution/package manager. Also, a command for each one is added to make the installation of these development dependencies as easy and straightforward as possible. - ~make~ - ~gcc~ / ~clang~ - ~rustc~ + ~cargo~ - ~jq~ - ~libX11~ - ~libXcursor~ - ~libXrandr~ - ~libXinerama~ - ~libXi~ *** Debian/Ubuntu #+begin_src sh xargs sudo apt install -y < Aptfile #+end_src *** Fedora #+begin_src sh sudo dnf install -y make gcc cargo jq libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel #+end_src *** Arch #+begin_src sh sudo pacman -S make gcc rust jq libx11 libxcursor libxrandr libxinerama libxi #+end_src *** Gentoo #+begin_src sh sudo emerge -va make gcc rust-bin jq libX11 libXcursor libXrandr libXinerama libXi #+end_src *** FreeBSD #+begin_src sh sudo pkg install gmake rust jq libX11 libXcursor libXrandr libXinerama libXi #+end_src *** OpenBSD #+begin_src sh sudo pkg_add gmake rust jq #+end_src *** macOS #+begin_src sh brew bundle install --file=Brewfile #+end_src ** Compilation & Linkage #+begin_example $ make help Targets ======= all :: Build all targets marked with [*] ,* checkdeps :: Check dependencies for build process menuconfig :: Edit build options with ncurses menu ,* game :: Build the bare game check :: Build and run the test engine editor :: Build the editor clean :: Remove the 'build' directory mrproper :: Remove and cleans everything version :: Show the current version string help :: Show this help and usage panel Execute 'make' or 'make all' to build all targets marked with [*] For further info see the ./README.org file #+end_example First, ensure the source tree is absolutely clean. From /Sparky/ we recommend this command to be issued prior to each compilation; do not rely on the source tree being clean after cloning the repository or after un-tarring: #+begin_src sh make mrproper #+end_src There are several ways to configure the build process for it to suit your needs. The most user-friendly way to do so is through a menu-driven interface: #+begin_src sh make menuconfig #+end_src To build the game, issue the following command: #+begin_src sh make #+end_src Next, run the test suite: #+begin_src sh make check #+end_src

Owner

  • Name: Sparky
  • Login: sparky-game
  • Kind: organization
  • Email: wasymatieh01@gmail.com

A 5v5 character-based libre tactical shooter.

GitHub Events

Total
  • Watch event: 5
  • Fork event: 2
Last Year
  • Watch event: 5
  • Fork event: 2

Issues and Pull Requests

Last synced: almost 2 years ago

All Time
  • Total issues: 7
  • Total pull requests: 19
  • Average time to close issues: 4 days
  • Average time to close pull requests: 4 days
  • Total issue authors: 1
  • Total pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.42
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 16
Past Year
  • Issues: 7
  • Pull requests: 19
  • Average time to close issues: 4 days
  • Average time to close pull requests: 4 days
  • Issue authors: 1
  • Pull request authors: 2
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.42
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 16
Top Authors
Issue Authors
  • iWas-Coder (4)
Pull Request Authors
  • dependabot[bot] (70)
  • iWas-Coder (5)
Top Labels
Issue Labels
✨ feature (2) 🏆 good first issue (2) 🐛 bug (1)
Pull Request Labels
🌀 dependencies (70) 🛃 submodules (33) submodules (12) 🙂 javascript (10) javascript (6) 🦀 rust (5) ✨ feature (4) rust (4) 📝 documentation (1)

Dependencies

.github/workflows/build-linux.yaml actions
  • actions/checkout v4 composite
  • github/codeql-action/analyze v3 composite
  • github/codeql-action/init v3 composite
.github/workflows/website.yaml actions
  • actions/checkout v4 composite
  • actions/configure-pages v4 composite
  • actions/deploy-pages v4 composite
  • actions/download-artifact v4 composite
  • actions/setup-node v4 composite
  • actions/upload-artifact v4 composite
  • actions/upload-pages-artifact v3 composite
  • github/codeql-action/analyze v3 composite
  • github/codeql-action/init v3 composite
Cargo.lock cargo
  • 356 dependencies
Cargo.toml cargo
docs/www/package-lock.json npm
  • 1091 dependencies
docs/www/package.json npm
  • @docusaurus/module-type-aliases ^3.2.1 development
  • @docusaurus/types ^3.2.1 development
  • @docusaurus/core ^3.2.1
  • @docusaurus/preset-classic ^3.2.1
  • @mdx-js/react ^3.0.0
  • clsx ^2.0.0
  • prism-react-renderer ^2.3.0
  • react ^18.0.0
  • react-dom ^18.0.0
  • react-typed ^2.0.12
Brewfile homebrew
  • jq *
  • rust *