OGS Mahjong 2: Demo 2
We are glad to announce the release of the second demonstration of OGS Mahjong 2.
The purposes of this release were to refine our development techniques and
build a solid cross-platform foundation.
Run the latest version of OGS Mahjong 2 in your web browser:
You are encouraged to run the game with
seed parameter like this:
This allows you to play the same layout each time you launch the game.
Each seed uniquely identifies the placement of tiles. Thus, different seeds
give you a different experience.
Development techniques and foundation
During the second demonstration development, we switched from standard
development to example-driven one. This resulted in the
creation of three distinct repositories to back the development of OGS Mahjong 2:
- OpenSceneGraph cross-platform examples repository provides cross-platform foundation like resource handling, render window setup, etc.
- OGS Mahjong components repository provides Mahjong specific functionality like parsing layout, matching tiles, etc.
- OGS Mahjong repository contains snapshots of
OGS Mahjong components features that comprise specific game version. E.g.,
Demo 2 version is almost identical to 05.ColorfulStatus example of
OGS Mahjong components.
Beyond Mahjong solitaire
In addition to
seed parameter, you can let the game use remote layout hosted at GitHub:
Utilizing remote resources is an extremely powerful approach allowing anyone
to create a layout of his/her choice and see the layout in action instantly.
Our next step is to turn game logic into a resource, too.
Examples and dependencies
This article describes two new OpenSceneGraph cross-platform examples and the
change in handling dependencies.
Examples of HTTP client and node selection
Once we finished working on the remote debugging example and
reported its completion, we were surprised by the fact
that secure HTTP connection between a debugged application and debug …
This article explains how the third OpenSceneGraph cross-platform example
opened our eyes to example-driven development.
2018-08 EDIT: the third example has been renamed to the fourth one due to
the reasons described in the next article.
The third OpenSceneGraph cross-platform example
The third OpenSceneGraph cross-platform example explains how to implement …
OpenSceneGraph cross-platform examples
This article summarizes the work we did to produce the first two
cross-platform OpenSceneGraph examples.
By the time the first technology demonstration of OGS Mahjong 2
has been released, we've already had issue request
(to explain how to load images with OpenSceneGraph on Android) hanging for some
time. We considered …
First techdemo of OGS Mahjong 2: Gameplay
We are glad to announce the release of the first technical demonstration of
OGS Mahjong 2. The purpose of this release was to verify gameplay across
Get techdemo for your platform:
Mahjong recreation start
This article describes the start of Mahjong game recreation.
We started Mahjong recreation endeavour by composing a brief plan to get gameplay with minimal graphics:
- Load single layout
- Place tiles in layout positions
- Distinguish tiles
- Implement selection
- Implement matching
Just like any other plan, this one looked fine at …
The year of lessons
So, the year 2017 is approaching its finale, the year's results have already
been summed up. We're going to take a break from igniting the fireworks or
preparation of the champagne so that we can designate our goal for the
As it may be clear from other articles …
It's time to step back to see our accomplishments in 2017 and how they connect to the overall goal of Opensource Game Studio project.
Opensource Game Studio project is 12 years old now.
2005. We started the project with a fanatic call to create the best game ever …
Back to the Static
We have been using Wordpress as our website engine for more than seven years. And now it's time to move forward. Or backward.
For some time we've been tracking the development of the new breed of website engines - static site generators.
It seems that this is the technology capable of …
The birth of MJIN world
This article describes the birth of MJIN world in August 2017.
As you know, we spent July to research scripting. We found a solution that satisfies the following criteria. Scripts should:
- run unchanged on all supported platforms
- allow extending C++ code
We have verified the second criterion by writing …