<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ioannis Gyftakis</title>
    <description>The latest articles on DEV Community by Ioannis Gyftakis (@limitcracker).</description>
    <link>https://dev.to/limitcracker</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F204338%2F1ca9bda3-4ca2-47e2-ae89-417dea760ce7.jpeg</url>
      <title>DEV Community: Ioannis Gyftakis</title>
      <link>https://dev.to/limitcracker</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/limitcracker"/>
    <language>en</language>
    <item>
      <title>Make Rock, Paper, Scissor game with Ink "Game Engine"</title>
      <dc:creator>Ioannis Gyftakis</dc:creator>
      <pubDate>Sat, 01 Feb 2025 19:55:30 +0000</pubDate>
      <link>https://dev.to/limitcracker/make-rock-paper-scissor-game-with-ink-game-engine-2kje</link>
      <guid>https://dev.to/limitcracker/make-rock-paper-scissor-game-with-ink-game-engine-2kje</guid>
      <description>&lt;p&gt;Recently I discovered &lt;a href="https://www.inklestudios.com/ink/" rel="noopener noreferrer"&gt;Ink&lt;/a&gt; narrative language by INKLE that has the Inky editor and it is an alternative to &lt;a href="https://twinery.org/" rel="noopener noreferrer"&gt;Twine&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;You can make interactive text based games easily but you can also insert media like images etc. It could also be useful to teach concepts more interactively, especially on the early steps of programming concepts to beginners.&lt;/p&gt;

&lt;p&gt;So here is a simple Rock, Paper, Scissor game that uses basic building blocks of INK language like Choices, Knots, Conditionals, Variables, Lists.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Welcome to Rock, Paper, Scissor game

VAR choice = ""
LIST options = (Rock),(Paper),(Scissor)
VAR result = ""

-&amp;gt; main
=== main ===
Wanna play a round of «Rock, Paper, Scissor»?
    + [Yes]
        -&amp;gt; round
    + [No]
        -&amp;gt; DONE

=== round ===
What do you choose?
 + [Rock]
    ~ choice = "Rock"
 + [Paper]
    ~ choice = "Paper"
 + [Scissor]
    ~ choice = "Scissor"

- You chose {choice} 
~ result = LIST_RANDOM(options)
and I chose {result}.
{
    - choice == "Rock" &amp;amp;&amp;amp; result == Scissor:
        You won!
    - choice == "Rock" &amp;amp;&amp;amp; result == Paper:
        You lost!
    - choice == "Scissor" &amp;amp;&amp;amp; result == Rock:
        You lost!
    - choice == "Scissor" &amp;amp;&amp;amp; result == Paper:
        You won!
    - choice == "Paper" &amp;amp;&amp;amp; result == Rock:
        You won!
    - choice == "Paper" &amp;amp;&amp;amp; result == Scissor:
        You lost!
    - else:
        Draw!
}
-&amp;gt; main

-&amp;gt; END
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;for more try watching this &lt;a href="https://www.youtube.com/watch?v=KSRpcftVyKg" rel="noopener noreferrer"&gt;tutorial&lt;/a&gt; which is great.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Br, 
John&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>gamedev</category>
      <category>tutorial</category>
      <category>inkle</category>
      <category>ink</category>
    </item>
  </channel>
</rss>
