GithubHelp home page GithubHelp logo

sebasoft / godotstarter Goto Github PK

View Code? Open in Web Editor NEW
33.0 2.0 7.0 90 KB

This package pretends to provide a startup point on how to structure projects using the Godot Game engine

Home Page: https://youtu.be/LUKzKMOc72M

License: MIT License

GDScript 100.00%
game-development game gamedev game-2d game-dev game-engine godot godot-engine godot3 godotengine

godotstarter's Introduction

Godot Template Starter

This package pretends to be a startup point on how to structure projects using the Godot Game engine


NOTE: This project structure is based (losely) in the proposals of the Official Documentation on project structure and the Assets Naming Convention from Unreal Engine to create a comprehensive set of folders. The premise is always: GROUPING ASSETS BY USAGE, NOT BY TYPE since the latter one doesn't scale on big projects.


Video explanation

A video explaining how to move arround the project and some Godot 3 basics

Directory structure

GodotStarter.
|   .gitattributes - Make sure git understands file types
|   .gitignore - to ignore import and others
|   LICENSE - MIT
|   README.md - this file
|   
+---game
|   |   project.godot - main project file
|   |   
|   +---build - folder to be used as a compilation input, look here for games!
|   |       
|   \---content - game's actual content
|       +---base - start and base reference/autoload scripts
|       |   |   globals.gd
|       |   |   startup.gd
|       |   |   startup.tscn
|       |   |   
|       |   +---helpers - helper script to handle strings, dates, and so on
|       |   |       
|       |   \---services - scripts that access external services or API's
|       |           
|       +---characters - all entities that has some form of intelligence and influence the experience actively
|       |   +---enemy - enemy creature and intelligent obstacles
|       |   |       
|       |   +---npc - non-player characters that will interact with the player
|       |   |       
|       |   \---player - one or more type of player characters (depending on genre and gameplay)
|       |       |   
|       |       \---warrior - sample player character directory
|       |           +---animations - animation files for this character
|       |           |       
|       |           +---effects - shaders and other effects that comes from players actions
|       |           |       
|       |           +---scripts - additional scripts for the player character
|       |           |       
|       |           +---sounds - sound effects for the player character
|       |           |       
|       |           \---textures - textures, sprites and other form of 2d art needed for the character
|       |                   
|       +---dev - assets (graphics and sound) that are related to the development of a game, but not directly part of it
|       |   |   screen-template.psd - a 720p screen template with safe zones
|       |   |   
|       |   +---boot-splash
|       |   |       boot-splash.png - image to be displayed when the game first loads (before first scene)
|       |   |       
|       |   +---icons-android - sets of icons for Android devices
|       |   |       
|       |   +---icons-base - regular sets of icons not related to any platform or PC-related ones
|       |   |       icon.png
|       |   |       
|       |   \---icons-ios - sets of icons for Apple devices
|       |           
|       +---effects - effects directories, it can be graphical or audio effects
|       |   \---postprocess - effects related to the composition after the game renders
|       |           
|       +---environment - environment specifications and related assets
|       |   |   default_env.tres
|       |   |   
|       |   +---background - graphics, sounds and scripts related to the infinite background
|       |   |       
|       |   +---buildings - graphics, sounds and scripts related to parts of the scenery that will be traversable by the player and are present in different scenes
|       |   |       
|       |   +---folliage - graphics, sounds and scripts related to plants, trees and folliage present in different scenes
|       |   |       
|       |   +---landscape - graphics, sounds and scripts related to biomes, soils, present in different scenes.
|       |   |       
|       |   +---scene-props - graphics sounds an scripts of boxes, obstacles, lamps and other props present in different scenes.
|       |   |       
|       |   +---sky - graphics, sounds and scripts related to ambience, sky and global illumination that are  present in different scenes.
|       |   |       
|       |   \---water - graphics, sounds and scripts related to liquids and water zones that are  present in different scenes.
|       |           
|       +---gameplay
|       |   +---ai - mainly scripts, that control the behaviour of diferent parts of obstacles, npcs, and enemies.
|       |   |       
|       |   \---multiplayer - mainly scripts that control the match rules if any and the multiplayer networking/messaging.
|       |           
|       +---items - all related to collectables
|       |   +---powerups - graphics, sounds, effects and scripts related to items that augment the player's capabilities
|       |   |       
|       |   +---stuff - graphics, sounds, effects and scripts related to other items the player can obtain/carry
|       |   |       
|       |   \---weapons - graphics, sounds, effects and scripts related to items that give power to fight against enemies/other players.
|       |           
|       +---maps - all "scenarios" 
|       |   +---episode-01 - maps should be divided into themes or episodes to provide a better browsing experience
|       |   |       
|       |   \---test-maps - test maps that may never appear in the final game
|       |       |   
|       |       \---test-island - sample test maps
|       |           +---animations - animations related to the specifics of this map
|       |           |       
|       |           +---effects - effects related to the specifics of this map
|       |           |       
|       |           +---materials - materials related to the specifics of this map
|       |           |       
|       |           +---meshes - models related to the specifics of this map
|       |           |       
|       |           +---particles - particle effects related to the specifics of this map
|       |           |       
|       |           +---scripts - additional scripts related to the specifics of this map
|       |           |       
|       |           +---sounds - sounds related to the specifics of this map
|       |           |       
|       |           \---textures - textures and sprites related to the specifics of this map
|       |                   
|       +---sound - sounds and music that could be used anywjere
|       |   +---music - music tracks for menues or general music
|       |   |       
|       |   \---sfx - sound effects for general stuff unrelated to characters, maps, etc.
|       |           
|       +---ui
|       |   +---hud - graphics, sounds, effects and scripts related to indicators that appear avobe the gaming experience
|       |   |       
|       |   \---menus - interaction screens througout the game
|       |       +---in-gme - graphics, sounds, effects and scripts related to pause menus and in-game menus
|       |       |       
|       |       +---inventory - graphics, sounds, effects and scripts related to player character management
|       |       |       
|       |       +---options - graphics, sounds, effects and scripts related to setting the options of the game
|       |       |       options.png - options menu background
|       |       |       OptionsMenu.gd - OptionsMenu script that set current options
|       |       |       OptionsMenu.tscn - OptionsMenu sub-scene nodes
|       |       |       
|       |       +---services - graphics, sounds, effects and scripts related to services menues like leaderboards and achievements
|       |       |       
|       |       +---splash - graphics, sounds, effects and scripts related to the very beggining of the game
|       |       |       splash.tres - animation secuence for the splash graphics
|       |       |       splash001.png - W-LINE games background (sample)
|       |       |       splash002.png - HartQuake productions background (sample)
|       |       |       SplashScreens.gd - script that controls and detects the end of the animation
|       |       |       SplashScreens.tscn - SplashScreens sub=scene nodes
|       |       |       
|       |       \---title - graphics, sounds, effects and scripts related to the main menu of the game
|       |               title-bg.png - Main Menu Background, be flashy here
|       |               TitleMenu.gd - script related to navigating the main menu and starting events
|       |               TitleMenu.tscn - TitleMenu sub-scene nodes.
|       |               
|       \---vehicles - graphics, sounds, effects and scripts related to alternative means of transportation/move around a map
|               
+---related - related documents and assets for marketing and commercialization purposes
|   +---android-store - screenshtos, videos and other material for android Google Play
|   |       
|   +---apple-store - screenshtos, videos and other material for android Google Play
|   |       
|   +---design - documents, concept art and other material related to the idea and development
|   |       
|   +---presskit - http://dopresskit.com/ here . . . do it
|   |       
|   \---print - diptics, triptics, posters, banners, flyers, social network graphics, etc.
|           
+---server - if you have multiplayer or stats and need to deploy a server, here is your place
|       
\---site - every nice game has its site full of info...

godotstarter's People

Contributors

sebasoft avatar

Stargazers

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

Watchers

 avatar  avatar

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.