Note: Please DO NOT translate Studio Documentation, so that there can be one place where you can find the last information available.
- 1 What is Board Game Arena Studio?
- 2 Discover BGA Studio in 5 presentations
- 3 How to join BGA developer team?
- 4 Great, I'm in! ... How should I start?
- 5 BGA Studio documentation
- 6 Other resources
What is Board Game Arena Studio?
Board Game Arena Studio is a platform to build online board game adaptation using the Board Game Arena platform.
It is open to any gamer with development skills :)
See announcement here: http://forum.boardgamearena.com/viewtopic.php?f=10&t=1973
Discover BGA Studio in 5 presentations
Why, how, what... to start discovering BGA Studio, we prepare you 5 "powerpoint" presentations:
- 5 reasons why you should use BGA Studio for your online board game
- The 8 steps to create a board game on Board Game Arena
- The BGA Framework at a glance
- Focus on BGA game state machine
- BGA developers guidelines
How to join BGA developer team?
Please see: How to join BGA developer team?
Great, I'm in! ... How should I start?
If you didn't already, check the presentations at the top of this page to get the basics.
After that, we would advise you to take a peek at one or both of these two game creation tutorials:
Then start editing files and see what happens! ;)
If you have any questions, please ask them on the development forum.
BGA Studio documentation
BGA Studio Framework reference
This part of the documentation focus on the development framework itself: functions and methods available to build your game.
- 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
BGA Studio game components reference
Game components are useful tools you can use in your game adaptations.
- 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).
- 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/hide.
- 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.
- Wrapper: a JS component to wrap a element around his child, even if these elements are absolute positioned.
- 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).
BGA Studio user guide
This part of the documentation is a user guide for the BGA Studio online development environment.