All Projects β†’ DarkoniusXNG β†’ barebones

DarkoniusXNG / barebones

Licence: Apache-2.0 License
πŸ– A starter Dota 2 custom game with useful hooks, settings, and libraries.

Programming Languages

lua
6591 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to barebones

Codechef Cards
[Obsolete] WebApp to follow friends doing CP on Codechef platform and to track their ratings and stars.
Stars: ✭ 17 (-37.04%)
Mutual labels:  hacktoberfest2021
materialize
Materialize, a CSS Framework based on Material Design
Stars: ✭ 458 (+1596.3%)
Mutual labels:  hacktoberfest2021
ember-headlessui
gavinjoyce.github.io/ember-headlessui/
Stars: ✭ 76 (+181.48%)
Mutual labels:  hacktoberfest2021
React-GitHub-Resume
React SPA that generates users GitHub resumé. showing information if available. showing users repositories if available with additional information.
Stars: ✭ 37 (+37.04%)
Mutual labels:  hacktoberfest2021
Contactless-Attendance-System
✨ A Contactless Attendance System where your face is identified for Attendance.
Stars: ✭ 20 (-25.93%)
Mutual labels:  hacktoberfest2021
react-boilerplate-2021
No description or website provided.
Stars: ✭ 52 (+92.59%)
Mutual labels:  hacktoberfest2021
Algorithms
πŸŽ“ Important Algorithms and their implementations
Stars: ✭ 30 (+11.11%)
Mutual labels:  hacktoberfest2021
gdscjgec.github.io
Official Website for GDSC JGEC
Stars: ✭ 16 (-40.74%)
Mutual labels:  hacktoberfest2021
github-fest-2021
No description or website provided.
Stars: ✭ 44 (+62.96%)
Mutual labels:  hacktoberfest2021
Dev-Geeks
Open Source Project
Stars: ✭ 16 (-40.74%)
Mutual labels:  hacktoberfest2021
eviloffice
Inject Macro and DDE code into Excel and Word documents (reverse shell)
Stars: ✭ 44 (+62.96%)
Mutual labels:  hacktoberfest2021
konker-platform
IoT Platform
Stars: ✭ 33 (+22.22%)
Mutual labels:  hacktoberfest2021
Hacktoberfest 2021
all valid pull requests accepted!!
Stars: ✭ 23 (-14.81%)
Mutual labels:  hacktoberfest2021
randomcodegenerator.lol
Need some code for your project? We've got you covered. Choose your language. Choose how much code. BΓ„M! You got code.
Stars: ✭ 32 (+18.52%)
Mutual labels:  hacktoberfest2021
crisp
CRISP is a Google Chrome extension for automated testing that generates test code and automates time-consuming operations in test development. It speeds up test development by replacing time-consuming manual operations with automated features.
Stars: ✭ 22 (-18.52%)
Mutual labels:  hacktoberfest2021
Hacktober Fest 2021
A repository to contribute and learn OpenSource
Stars: ✭ 20 (-25.93%)
Mutual labels:  hacktoberfest2021
weatherbes-android
An open sourced Weather App made using OpenWeatherMapAPI
Stars: ✭ 23 (-14.81%)
Mutual labels:  hacktoberfest2021
pychess-variants
Chess variants server
Stars: ✭ 137 (+407.41%)
Mutual labels:  hacktoberfest2021
better-escape.nvim
Escape from insert mode without delay when typing
Stars: ✭ 166 (+514.81%)
Mutual labels:  hacktoberfest2021
ask-hadith
πŸ”Ž A Hadith search engine
Stars: ✭ 33 (+22.22%)
Mutual labels:  hacktoberfest2021

Basic Barebones for Dota 2 Modding

Original BMDdota's Barebones can be found here.

If you have some questions for me, contact me on ModDota discord or through mail: [email protected].

Version 2.0.16.

Introduction

Barebones is meant to be a jumping off point for creating a custom game with all the basic stuff taken care of for you. Barebones sets up the necessary files to create a basic custom game (from a scripting persective), allowing you to simply find the places to put your Lua logic in order for you custom game to operate. Barebones currently provides limited examples for performing different tasks, and limited examples for unit/ability/item creation. Barebones divides scripts up into several sections: Core Files, Libraries and Examples.

Installation

Barebones can be installed by downloading this git repository and ensuring that you merge the "content" and "game" folder from this repo with your own "content" and "game" folders. These should be located in your "\SteamApps\common\dota 2 beta" folder.

Core Files

Core Files are the primary files which you should modify in order to get your basic game mode up and running. There are 4 major files:

settings.lua

This file contains many special settings/properties that allows you to define the high-level behavior of your game mode. You can define things like respawn times, number of teams on the map etc. Each property is commented to help you understand it.

addon_game_mode.lua

This is the entry-point to your game mode and should be used primarily to precache models/particles/sounds/etc.

gamemode.lua

This is the primary barebones gamemode script and should be used to assist in initializing your game mode. This file contains helpful pseudo-event functions prepared for you for frequently needed initialization actions.

events.lua

This file contains a hooked version of most useful events that are fired by DotA 2 Engine. You can drop your event functions in there to have your game mode react to events.

Libraries

BMDdota included some libraries with barebones that may prove useful in your game mode. Some of them are outdated or obsolete.

timers.lua by BMDdota

This library allow for easily delayed/timed actions without the messiness of thinkers and dealing with pauses. Most valuable library in here. See libraries/timers.lua for usage details and examples.

physics.lua by BMDdota

This library can be used for advanced physics/motion/collision of units. Outdated. See PhysicsReadme.md for more information.

projectiles.lua by BMDdota

This library can be used for advanced 3D projectile systems. Outdated. See ProjectilesReadme.md for more information.

notifications.lua by BMDdota

This library can be used to send panorama notifications to players/teams/everyone in your game.
See libraries/notifications.lua for usage details and examples.

animations.lua by BMDdota

This library can be used to start animations with customized animation rates, activities, and translations. Obsolete. See libraries/animations.lua for usage details and examples.

attachments.lua by BMDdota

This library can be used to set up and put in place 'Frankenstein' attachments for attaching props to units. Outdated. See libraries/attachments.lua for usage details and examples.

selection.lua by Noya

This library allows for querying and managing the selection status of players from the server-side lua script. It also allows for automatic redirection and selection event handling. See libraries/selection.lua for usage details and examples.

playertables.lua by BMDdota

This library sets up tables that are shared between server (lua) and client (javascript) between specific (but changeable) clients. Similar to nettables. Outdated. See libraries/playertables.lua for usage details and examples.

playerresource.lua

This library extends CDOTA_PlayerResource. It adds methods (functions) and handles (tables) that are important for detecting disconnected/abandoned players and for assigning heroes to players. It may become obsolete in the future, but currently its one of the core libraries.

buildings.lua

Library for custom made buildings using npc_dota_creature as BaseClass. Not finished but maybe it has some useful code. Use in combination with: https://github.com/MNoya/BuildingHelper See libraries/buildings.lua for more information.

custom_illusions.lua

Library for custom made illusions. Obsolete. Made when CreateIllusions method didn't exist. See libraries/custom_illusions.lua for usage details.

worldpanels.lua by BMDdota

This library allows for creating panorama layout panels that track the world position of an entity (or fixed world coordinate). Outdated. See libraries/worldpanels.lua for usage details and examples.

Debugging

This version of Barebones now only prints out (spams) debugging information when told to by setting the USE_DEBUG in settings.lua to true.

Additional Information

If you have any questions or concerns, contact me on ModDota discord (@Darkonius) or via mail ([email protected]).

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].