All Projects → efroemling → Ballistica

efroemling / Ballistica

Licence: other
The BombSquad Game Engine

Programming Languages

python
139335 projects - #7 most used programming language
python3
1442 projects

Projects that are alternatives of or similar to Ballistica

Etlegacy
ET: Legacy is an open source project based on the code of Wolfenstein: Enemy Territory which was released in 2010 under the terms of the GPLv3 license.
Stars: ✭ 212 (+17.78%)
Mutual labels:  game, game-engine, game-engine-3d
Terasology
Terasology - open source voxel world
Stars: ✭ 3,247 (+1703.89%)
Mutual labels:  game, game-engine, game-engine-3d
Etlegacy Deprecated
Archived repository. For current repo, see: https://github.com/etlegacy/etlegacy
Stars: ✭ 470 (+161.11%)
Mutual labels:  game, game-engine, game-engine-3d
Newbark
🌳 A proof-of-concept Pokémon-style Retro RPG engine created with Unity.
Stars: ✭ 129 (-28.33%)
Mutual labels:  game, game-engine
Simplexrpgengine
Modular game engine built with MonoGame, with GMS2-like workflow and advanced level editor
Stars: ✭ 122 (-32.22%)
Mutual labels:  game, game-engine
Openjk
Community effort to maintain and improve Jedi Academy (SP & MP) + Jedi Outcast (SP only) released by Raven Software
Stars: ✭ 1,641 (+811.67%)
Mutual labels:  game, game-engine
Scala Game Library
Scala library for cross-platform 2D game development
Stars: ✭ 116 (-35.56%)
Mutual labels:  game, game-engine
Kaetram Open
An open-source 2D HTML5 adventure based off BrowserQuest (BQ).
Stars: ✭ 138 (-23.33%)
Mutual labels:  game, game-engine
Vault13
Reimplementation of Fallout 2 engine
Stars: ✭ 131 (-27.22%)
Mutual labels:  game, game-engine
Chronoshift
An open source re-implementation of Red Alert written in C++.
Stars: ✭ 144 (-20%)
Mutual labels:  game, game-engine
Openminer
Minecraft-like game engine written in C++17 with a client/server architecture and support for Lua modding
Stars: ✭ 156 (-13.33%)
Mutual labels:  game, game-engine
Lambda Lantern
🧙 ‎‎ A 3D game about functional programming patterns. Uses PureScript Native, C++, and Panda3D.
Stars: ✭ 122 (-32.22%)
Mutual labels:  game, game-engine
Gamedev4noobs
Olá, sejam bem-vindos ao repositório _gamedev4noobs_ do Estúdio Vaca Roxa. O propósito desse repositório, além de contribuir para o projeto 4noobs, é ensinar o básico do desenvolvimento de jogos para iniciantes. Apresentando boas práticas e insumos para criar games incríveis.
Stars: ✭ 122 (-32.22%)
Mutual labels:  game, game-engine
Openage
Free (as in freedom) open source clone of the Age of Empires II engine 🚀
Stars: ✭ 10,712 (+5851.11%)
Mutual labels:  game, game-engine
Gamedev Resources
🎮 🎲 A wonderful list of Game Development resources.
Stars: ✭ 2,054 (+1041.11%)
Mutual labels:  game, game-engine
Kudos
Kudos is a simple, high-performance, easy to expand and easy to deploy distributed game service framework based on microservice architecture, It is based on RPC of rpcx, supports pomelo communication protocol and can be easily applied to game development.
Stars: ✭ 132 (-26.67%)
Mutual labels:  game, game-engine
Fxgl
Stars: ✭ 2,378 (+1221.11%)
Mutual labels:  game, game-engine
Protogame
This project has been sunset as of 1st Jan 2018 and is no longer supported or maintained
Stars: ✭ 166 (-7.78%)
Mutual labels:  game, game-engine
Flux
A real-time physically based rendering engine written in C++ and OpenGL
Stars: ✭ 171 (-5%)
Mutual labels:  game, game-engine
Lumberyard
Amazon Lumberyard is a free AAA game engine deeply integrated with AWS and Twitch – with full source.
Stars: ✭ 1,785 (+891.67%)
Mutual labels:  game-engine, game-engine-3d

bal·lis·tic: physics of an object in motion; behaving like a projectile.

-ica: collection of things relating to a specific theme.

The Ballistica project is the foundation for the next generation of BombSquad. It will be debuting with the upcoming 1.5 release of the game and lays the foundation for some of the big changes coming in 2.0.

Head to the project wiki to get started, or learn more about the project below.

Project Goals

  • Cleanup
    • BombSquad's codebase, and especially its scripting layer, have grown a lot over its lifetime, but not always in a 'designed' way. It was overdue for a major refactoring, which should keep it more maintainable for years to come. Examples of this include breaking up the monstrous twenty-six-thousand-line bsUI.py file into a much cleaner individual subpackages, updating all code from Python 2.7 to 3.7, and adding type annotations to the entire codebase.
  • Provide modders and tinkerers with the best possible development environment
    • I've spent a lot of time incorporating auto-formatters, type-checkers, linters, and smart IDEs into my development workflow and have found them to be an enormous help. By sharing my setup here I hope to make them easily accessible to everyone.
  • Improve transparency
    • I get a lot of "what's in the next update?" or "how is 2.0 coming?" questions. By working here in the open I hope to make many of these questions unnecessary.
  • Increase community involvement
    • Provide a single place for tracking issues related to the engine/game
    • Allow people to submit their own bug fixes or improvements, making myself less of a bottleneck
    • Migrate modding documentation to this repo's wiki, allowing other modders to add their own bits of wisdom

Frequently Asked Questions

  • Q: What's with this new name? Is BombSquad getting renamed?

  • A: No, BombSquad is still BombSquad. 'Ballistica' is simply the new name for the engine/app-framework. This way it can also be used for other game/app projects without causing confusion (though that is mostly theoretical at this point). As a modder, the biggest changes you will notice is 'ba' prefixes in the API instead of 'bs' and naming that follows Python PEP8 standards (underscores and lowercase instead of camel-case). So bs.playSound(mySound) in the old system might look like ba.playsound(my_sound) in the new. You may also see the word 'BallisticaCore' show up various places, which in actual releases gets replaced by 'BombSquad'.

  • Q: Does this mean BombSquad is open source?

  • A: Yes and no. All code contained in this repo is MIT licensed and free for use anywhere. This includes game scripts, pipeline tools, and most of the binary engine sources. Anything not directly contained in this repository, however, even if automatically downloaded by build scripts, is still proprietary and cannot be redistributed without explicit consent. This includes assets and game libraries/binaries. So in a nutshell: create and share mods to your heart's content, but please don't distribute your own complete copies of the game without permission. Please email [email protected] if you have any questions about this.

  • Q: Will my existing BombSquad 1.4.x mods still work?

  • A: Not 'out of the box'. All mods will need to be explicitly updated to work with the new ballistica apis in 1.5+. This may or may not be a significant amount of work depending on the mod. I would highly suggest tinkering around with some of the new features in 1.5 such as type-safe Python and dynamic assets before attempting to port any old mods, as some things are done significantly differently now. You may also want to consider simply sticking with 1.4 builds for a while longer, especially for server duties, since they will remain fully compatible with clients running 1.5. The new ballistica APIs may be changing significantly for at least a while as the dust settles, but they will be worth switching to in the end, I promise!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].