This is a documentation for Board Game Arena: play board games online !
Template:Studio Framework Navigation: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
Changed hedlines to bold centered text to avoid collision with TOCs |
||
| Line 2: | Line 2: | ||
<div style="float: right; width: 300px; border: solid #000 1px; padding: 1em; margin-left: 1em; background: #fff;"> | <div style="float: right; width: 300px; border: solid #000 1px; padding: 1em; margin-left: 1em; background: #fff;"> | ||
<center>'''Studio Framework Navigation'''</center> | |||
[[Studio file reference|File structure of a BGA game]] | [[Studio file reference|File structure of a BGA game]] | ||
<center>'''Game logic (Server side)'''</center> | |||
* [[Main game logic: yourgamename.game.php]] | * [[Main game logic: yourgamename.game.php]] | ||
* [[Your game state machine: states.inc.php]] | * [[Your game state machine: states.inc.php]] | ||
| Line 17: | Line 14: | ||
* [[Game statistics: stats.inc.php]] | * [[Game statistics: stats.inc.php]] | ||
<center>'''Game interface (Client side)'''</center> | |||
* [[Game interface logic: yourgamename.js]] | * [[Game interface logic: yourgamename.js]] | ||
* [[Game art: img directory]] | * [[Game art: img directory]] | ||
| Line 25: | Line 21: | ||
* [[Your game mobile version]] | * [[Your game mobile version]] | ||
<center>'''Other components'''</center> | |||
* [[Translations]] (how to make your game translatable) | * [[Translations]] (how to make your game translatable) | ||
* [[Game options and preferences: gameoptions.inc.php]] | * [[Game options and preferences: gameoptions.inc.php]] | ||
| Line 34: | Line 29: | ||
* [[Some usual board game elements image ressources]] | * [[Some usual board game elements image ressources]] | ||
<center>'''BGA Studio game components reference'''</center> | |||
* [[Deck]]: a PHP component to manage cards (deck, hands, picking cards, moving cards, shuffle deck, ...). | * [[Deck]]: a PHP component to manage cards (deck, hands, picking cards, moving cards, shuffle deck, ...). | ||
* [[Counter]]: a JS component to manage a counter that can increase/decrease (ex: player's score). | * [[Counter]]: a JS component to manage a counter that can increase/decrease (ex: player's score). | ||
| Line 49: | Line 41: | ||
* [[Wrapper]]: a JS component to wrap a <div> element around its child, even if these elements are absolute positioned. | * [[Wrapper]]: a JS component to wrap a <div> element around its child, even if these elements are absolute positioned. | ||
<center>'''BGA Studio user guide'''</center> | |||
* [[BGA game Lifecycle]] | * [[BGA game Lifecycle]] | ||
* [[First steps with BGA Studio]] | * [[First steps with BGA Studio]] | ||
Revision as of 21:29, 15 April 2020
- Main game logic: yourgamename.game.php
- Your game state machine: states.inc.php
- Game database model: dbmodel.sql
- Players actions: yourgamename.action.php
- Game material description: material.inc.php
- Game statistics: stats.inc.php
- Game interface logic: yourgamename.js
- Game art: img directory
- Game interface stylesheet: yourgamename.css
- Game layout: view and template: yourgamename.view.php and yourgamename_yourgamename.tpl
- Your game mobile version
- Translations (how to make your game translatable)
- Game options and preferences: gameoptions.inc.php
- Game meta-information: gameinfos.inc.php
- Game replay
- 3D
- Some usual board game elements image ressources
- Deck: a PHP component to manage cards (deck, hands, picking cards, moving cards, shuffle deck, ...).
- Counter: a JS component to manage a counter that can increase/decrease (ex: player's score).
- Scrollmap: a JS component to manage a scrollable game area (useful when the game area can be infinite. Examples: Saboteur or Takenoko games).
- Stock: a JS component to manage and display a set of game elements displayed at a position.
- Zone: a JS component to manage a zone of the board where several game elements can come and leave, but should be well displayed together (See for example: token's places at Can't Stop).
Undocumented component (if somebody knows please help with docs)
- Draggable: a JS component to manage drag'n'drop actions.
- ExpandableSection: a JS component to manage a rectangular block of HTML than can be displayed/hidden.
- Wrapper: a JS component to wrap a <div> element around its child, even if these elements are absolute positioned.
- BGA game Lifecycle
- First steps with BGA Studio
- Tutorial reversi
- Tutorial gomoku
- Tutorial hearts
- Create a game in BGA Studio: Complete Walkthrough
- Tools and tips of BGA Studio - Tips and instructions on setting up development environment
- Practical debugging - Tips focused on debugging
- Studio logs - Instructions for log access
- BGA Studio Cookbook - Tips and instructions on using API's, libraries and frameworks
- BGA Studio Guidelines
- Troubleshooting - Most common "I am really stuck" situations
- Studio FAQ
- Pre-release checklist - Go throught this list if you think you done development
- Post-release phase
- BGA Code Sharing - Shared resources, projects on git hub, common code, other links