<!DOCTYPE html>
<html>
    <meta charset="utf-8">
    <head>
        <style>
            #header
            {
                background: #2BA6E3;
                padding: 0.7em;
                text-align: left;
            }
            #header a
            {
                color: white;
                text-decoration: none;
                padding: 0.5em 1em 0.5em 1em;
            }

            #lang
            {
                float: right;
            }

            .news_item
            {
                background: #FFFFFF;
                width: 720px;
                padding: 1em;
                margin-top: 2em;
                margin-bottom: 2em;
                border: 1px solid #E0E0E0;
                text-align: left;
            }
            .news_item_contents
            {
                color: #444;
                line-height: 1.5em;
            }
            .news_item_date
            {
                margin-bottom: 2em;
                color: #aaa;
            }

            html
            {
                font-family: sans-serif;
            }
            body
            {
                background: #FAFAFA;
            }
            code, pre
            {
                font-family: monospace, serif;
                font-size: 1em;
                color: #7f0a0c;
            }
            img
            {
                width: 720px;
            }
            a
            {
                color: #3A91CB;
                text-decoration: none;
            }

            table
            {
                border-collapse: collapse;
            }
            table, th, td
            {
                border: 1px solid #aaa;
                padding: 0.5em;
                margin-top: 0.5em;
                margin-bottom: 0.5em;
            }
        </style>
    </head>
    <body>
        <div id="header">
            <strong id="title">Open Game Studio</strong>
            <a href="../../en/news/index.html">News</a>
            <a href="../../en/game/index.html">Games</a>
            <a href="../../en/tool/index.html">Tools</a>
            <a href="../../en/page/about.html">About</a>
            <div id="lang">
                <a href="../../en/news/mahjong-demo2.html">EN</a>
                <a href="../../ru/news/mahjong-demo2.html">RU</a>
            </div>
        </div>
        <center>
            <h1>In the news...</h1>
            <div class="news_item">
                <h2 class="news_item_title">
                    <a href="mahjong-demo2.html">OGS Mahjong 2: Demo 2</a>
                </h2>
                <p class="news_item_date">
                    2018-10-02 00:00
                </p>
                <div class="news_item_contents">
<p><img src="../../images/2018-10-02-mahjong-demo2.png" alt="Start of a Mahjong party" /></p>
<p>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.</p>
<p><strong>Release</strong></p>
<p>Run the latest version of OGS Mahjong 2 in your web browser: <a href="http://ogstudio.github.io/ogs-mahjong">http://ogstudio.github.io/ogs-mahjong</a></p>
<p>You are encouraged to run the game with <code>seed</code> parameter like this: <a href="http://ogstudio.github.io/ogs-mahjong?seed=0">http://ogstudio.github.io/ogs-mahjong?seed=0</a></p>
<p>This allows you to play the same layout each time you launch the game.</p>
<p>Each seed uniquely identifies the placement of tiles. Thus, different seeds give you a different experience.</p>
<p><strong>Development techniques and foundation</strong></p>
<p>During the second demonstration development, we switched from standard development to <a href="example-driven-development.html">example-driven one</a>. This resulted in the creation of three distinct repositories to back the development of OGS Mahjong 2:</p>
<ul>
<li><a href="https://github.com/OGStudio/openscenegraph-cross-platform-examples">OpenSceneGraph cross-platform examples</a> repository provides cross-platform foundation like resource handling, render window setup, etc.</li>
<li><a href="https://github.com/OGStudio/ogs-mahjong-components">OGS Mahjong components</a> repository provides Mahjong specific functionality like parsing layout, matching tiles, etc.</li>
<li><a href="https://bitbucket.org/ogstudio-games/ogs-mahjong">OGS Mahjong</a> repository contains snapshots of <code>OGS Mahjong components</code> features that comprise specific game version. E.g., <code>Demo 2</code> version is almost identical to <a href="https://github.com/OGStudio/ogs-mahjong-components/tree/master/05.ColorfulStatus">05.ColorfulStatus</a> example of <code>OGS Mahjong components</code>.</li>
</ul>
<p><strong>Beyond Mahjong solitaire</strong></p>
<p>In addition to <code>seed</code> parameter, you can let the game use remote layout hosted at GitHub: <a href="http://ogstudio.github.io/ogs-mahjong?seed=0&layout=github://OGStudio/ogs-mahjong-components/data/cat.layout">http://ogstudio.github.io/ogs-mahjong?seed=0&layout=github://OGStudio/ogs-mahjong-components/data/cat.layout</a></p>
<p>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.</p>
<p>Our next step is to turn game logic into a resource, too.</p>
                </div>
            </div>
            <div id="footer">
                The site has been generated by <a href="http://opengamestudio.org/pskov">PSKOV</a>
                from <a href="http://github.com/ogstudio/site-opengamestudio">this source code</a>.
                The site is hosted by <a href="https://pages.github.com">GitHub Pages</a>.
            </div>
        </center>
    </body>
</html>