All Projects → nezvers → Godot Gametemplate

nezvers / Godot Gametemplate

Licence: mit
Template with all necessary stuff taken care, just create your games main features.

Projects that are alternatives of or similar to Godot Gametemplate

Customalertviewdialogue
Custom AlertView Dialogue is the world's most advanced alert view library. Custom AlertView Dialogue includes simple message popups, confirmation alerts, selector popups, action sheet bottom menus, and input/feedback contact forms.
Stars: ✭ 100 (-77.01%)
Mutual labels:  menu, options
godot-radial-menu
A radial menu for Godot, supports Mobile & Desktop
Stars: ✭ 88 (-79.77%)
Mutual labels:  menu, godot
Vue Ui For Pc
基于Vue2.x的一套PC端UI组件,包括了Carousel 跑马灯、Cascader 级联、Checkbox 多选框、Collapse 折叠面板、DatePicker 日期选择、Dialog 对话框、Form 表单、Input 输入框、InputNumber 数字输入框、Layer 弹窗层、Loading 加载、Menu 菜单、Page 分页、Progress 进度条、Radio 单选框、SelectDropDown 仿select、Switch 开关、Table 表格、Tabs 标签页、Textarea 文本框、Tooltip 文字提示、BackTop 返回顶部、steps 步骤条、Transfer 穿梭框、Tree 树形、Upload 文件上传、Lazy 图片懒加载、Loading 加载、Pagination 分页等等
Stars: ✭ 156 (-64.14%)
Mutual labels:  menu, loading
KJNetworkPlugin
🎡A lightweight but powerful Network library. Network Plugin, Support batch and chain operation. 插件版网络架构
Stars: ✭ 43 (-90.11%)
Mutual labels:  manager, loading
Vue Loadable
⏳ Improve your loading state control with pretty simple methods and helpers.
Stars: ✭ 23 (-94.71%)
Mutual labels:  async, loading
React Loadable
⏳ A higher order component for loading components with promises.
Stars: ✭ 16,238 (+3632.87%)
Mutual labels:  async, loading
Vue Skeleton Mvp
VueJs, Vuetify, Vue Router and Vuex skeleton MVP written on JavaScript using async/await built to work with API REST skeleton: https://github.com/davellanedam/node-express-mongodb-jwt-rest-api-skeleton
Stars: ✭ 406 (-6.67%)
Mutual labels:  async
Quill
Asynchronous Low Latency C++ Logging Library
Stars: ✭ 422 (-2.99%)
Mutual labels:  async
Sppagemenu
分页菜单,功能非常齐全,满足绝大多数APP,简书地址:
Stars: ✭ 402 (-7.59%)
Mutual labels:  menu
Uiwidget
一个集成TabLayout、UIAlertDialog、UIActionSheetDialog、UIProgressDialog、TitleBarView(自带沉浸式标题栏)、CollapsingTitleBarLayout、RadiusView(圆角及状态背景设置View解放shape文件)、KeyboardHelper(软键盘控制及遮挡控制类)、StatusViewHelper(状态栏沉浸帮助类)、NavigationViewHelper(导航栏沉浸式帮助类)、AlphaViewHelper(View透明度控制帮助类) 等项目常用UI库
Stars: ✭ 400 (-8.05%)
Mutual labels:  loading
Bamboots
Bamboots - Extension 4 Alamofire
Stars: ✭ 434 (-0.23%)
Mutual labels:  loading
Multistatepage
Android APP缺省页的正确打开方式 高度解耦、低侵入、易拓展 多状态视图状态切换器
Stars: ✭ 433 (-0.46%)
Mutual labels:  loading
Actix Net
A collection of lower-level libraries for composable network services.
Stars: ✭ 415 (-4.6%)
Mutual labels:  async
Wmzpagecontroller
分页控制器,替换UIPageController方案,具备完整的生命周期,多种指示器样式,多种标题样式,可悬浮,支持ios13暗黑模式(仿优酷,爱奇艺,今日头条,简书,京东等多种标题菜单) (Pagination controller with full life cycle, multiple indicator styles, multiple title styles)
Stars: ✭ 405 (-6.9%)
Mutual labels:  menu
Antdata.orm
特色:vs插件或者t4一键生成entity 支持配置非物理外键。分离linq转sql引擎(原生linq非扩展)和执行dal功能,支持异步,支持netcore2.0
Stars: ✭ 428 (-1.61%)
Mutual labels:  async
Kotlin Flow Extensions
Extensions to the Kotlin Flow library.
Stars: ✭ 404 (-7.13%)
Mutual labels:  async
React Native Blurhash
🖼️ A library to show colorful blurry placeholders while your content loads.
Stars: ✭ 430 (-1.15%)
Mutual labels:  loading
Dutier
The immutable, async and hybrid state management solution for Javascript applications.
Stars: ✭ 401 (-7.82%)
Mutual labels:  async
Dlwidgetmenu
Versatile solution for displaying widget menus. Easily adjustable with custom layouts and/or animations.
Stars: ✭ 416 (-4.37%)
Mutual labels:  menu
Telegram Bot
Ruby gem for building Telegram Bot with optional Rails integration
Stars: ✭ 433 (-0.46%)
Mutual labels:  async

Godot-GameTemplate

Game Template is all necessary stuff taken care for Godot users not to worry about creating most boring and tedious work.
Main branch will be compatible with pixel art games, since those games require some more work to get everything right.
I'd be happy for any contribution to make this template as good as it can be and it is open for branching out Hi-Res game branch.

*Read this in other languages: Español

Features

  • Modular and clean code base.
  • Quick to setup (Plugin format - enabling plugin adds all singletons).
  • Easy to expand Save/Load system. (Comes with Resource saving as default but there's an option to switch to JSON).
  • Comes with custom ResourceAsyncLoader class (used in scene changing. Has fallbacks to regular loading for platforms that don't support async loading).
  • Localization system - community helped (EN, DE, ES, FR, IT, pt_BR, RU, sv_SE, TR. RU is not active due to font limitation).
  • Sound effects manager system - (manages SFX sample playing to not trigger multiple same samples together)
  • Controls rebinding system.
  • Resolution changing system.
  • Audio volume system.
  • Easy to change scene transition (comes with fade to black).
  • Menus can navigate without mouse.
  • Convinient singleton HtmlFocus, that asks to click on it if you have HTML5 game to gain game window focus (automatically free itself if not html5).
  • Comes with custom style (saved - planned to turn into theme).
  • HUD singleton (ready to be used in your way).
  • Music singleton for persistent music after restarting or changing scenes

How to use

  • Drop GameTemplate from addons folder in your projects addons folder;
  • Enable GameTemplate plugin in Project Settings. It will set up all necessary autoloads automatically;
  • Set projects audio bus layer - res://addons/GameTemplate/Assets/Audio_bus_layout.tres. Plugin can't do that automatically yet.
  • Add your main menu scene to addons/GameTemplate/Autoloads/PauseMenu.tscn script variable 'MainMenu'. It is used by PauseLayer to switch scene to main menu or similar;
  • Edit SettingsControls.gd (inside Autoload directory) Actions array of input map names. They are the ones uned in button remapping.
  • To change scenes trigger signal: Game.emit_signal('change_scene', scene_file_location_string)
  • To use SfxManager give Array of samples to load: SfxManager.load_samples( ["res://...."] ) and trigger samples with: SfxManager.play("file_name_without_extension")
  • To enable/disable HUD your levels set: Hud.visible = true
  • To enable/disable pause menu levels set: PauseMenu.can_show = true
  • Check convinient signals in Game singleton (New Game, Continue, Resume, Restart, ChangeScene, Exit)

Walkthrough

Singletone roles:

  • Game - convinient game signals, scene changing, scene restarting, game exit.
  • ScreenFade - scene transitioning layer. As a template it's just Fade-to-Black ColorRect but it's easy to add fading shader to it.
  • PauseMenu - Is a menu that appears while in game and pauses the game, allowing to (Resume, Options, Main Menu, Exit).
  • Options - GUI for changing resolution (Fullscreen, Borderless, scaling), Audio faders (Master, Music, SFX) and Controls section for Action bindings.
  • Settings - delegates order of other Settings singletons _ready.
  • SettingsSaveLoad - Manages save/load settings. Easily expandable for other parameters and comes with 2x versions Resource and JSON saving.
  • SettingsResolutions - handles the resolution changes.
  • SettingsControls - handles the information for controls.
  • SettingsLanguage - handles information for languages.
  • MenuEvent - handles events between options menu GUI.
  • Hud - reserved for game specific overlay (HP, Points, etc.).
  • Music - Persistent AudioStreamPlayer for music.
  • HTMLfocus - if game is HTML5 it will overlay a button on screen, requesting player to click on it and allowing the game to become in focus.

Options menu

Every settings option gets saved uppon exiting Options menu.

Languages menu

At the moment simplified interaction. Russian is translated but excluded in options because font doesn't support Cyrillic letters (If you know good pixel art font with Cyrillic supporl, please let me know).

Key action binding menu

Godot editor InputMap influenced rebinding with auto-detect function.
Buttons gets saved uppon exiting Options menu.

To-Do

  • Add pixel-art compliant slider in Action rebinding list
  • Use themes instead of CustomStyle (maybe)
  • Maybe some documentation
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].