259 lines
11KB

  1. <!DOCTYPE html>
  2. <html>
  3. <meta charset="utf-8">
  4. <head>
  5. <link rel="stylesheet" href="../../style.css">
  6. </head>
  7. <body>
  8. <script data-goatcounter="https://services.opengamestudio.org:443/count" async src="//services.opengamestudio.org:443/count.js"></script>
  9. <div id="header">
  10. <div class="header2">
  11. <div class="menu">
  12. <a href="../../en/news/index.html">News</a>
  13. <a href="../../en/game/index.html">Games</a>
  14. <a href="../../en/tool/index.html">Tools</a>
  15. <a href="../../en/page/about.html">About</a>
  16. </div>
  17. <div id="lang">
  18. <a href="../../en/news/index.html">EN</a>
  19. <a href="../../ru/news/index.html">RU</a>
  20. </div>
  21. <div class="clear"></div>
  22. </div>
  23. </div>
  24. <center>
  25. <h1>News</h1>
  26. <div class="news_item">
  27. <h2 class="news_item_title">
  28. <a href="iso-git2.html">PSKOV 2 without LHA?</a>
  29. </h2>
  30. <p class="news_item_date">
  31. 2025-04-10 00:00
  32. </p>
  33. <div class="news_item_contents">
  34. <p><img src="../../images/2025-04_vercel.jpg" alt="splash" /></p>
  35. <h1 id="assessingthefeasibilityofpskov2withoutlocalhostaccess">Assessing the feasibility of PSKOV 2 without Local Host Access</h1>
  36. <p>PSKOV 2 and original PSKOV assume there is Local Host Access running
  37. in order to access PC's local filesystem to read Markdown files and
  38. write HTML ones.</p>
  39. <p>In March I assessed if Isomorphic-Git is able to read and write to Git
  40. repositories from a web browser. The assessment succeeded. Actually,
  41. this was the second assessment of Isomorphic-Git. The first one happened in
  42. 2021, however, it ended as a failure because Isomorphic-Git cannot work without CORS. . .</p>
  43. </div>
  44. <div class="news_item_more">
  45. <a href="iso-git2.html">Continue reading</a>
  46. </div>
  47. </div><div class="news_item">
  48. <h2 class="news_item_title">
  49. <a href="cld_ctx-gen.html">CLD: Context generation</a>
  50. </h2>
  51. <p class="news_item_date">
  52. 2025-03-11 00:00
  53. </p>
  54. <div class="news_item_contents">
  55. <p><img src="../../images/2025-03_redux-data-flow.jpg" alt="splash" /></p>
  56. <h1 id="contextgeneration">Context generation</h1>
  57. <p>In February I've updated the <strong>C</strong>ross-<strong>l</strong>anguage <strong>d</strong>ialect (CLD) translator to
  58. generate Context out of YML. The generated Contexts have already been
  59. used for the following projects:</p>
  60. <ul>
  61. <li>CLD (the CLD translator generated its own Context)</li>
  62. <li>LHA</li>
  63. <li>PSKOV</li>
  64. </ul>
  65. <p>I never really took time to explain what Context is, so here's
  66. a very short explanation: Context is very close to
  67. <a href="https://redux.js.org/introduction/getting-started#basic-example">Store in Redux</a>. I'm afraid this is not yet the time
  68. to explain Context in detail because I don't yet have a good. . .</p>
  69. </div>
  70. <div class="news_item_more">
  71. <a href="cld_ctx-gen.html">Continue reading</a>
  72. </div>
  73. </div><div class="news_item">
  74. <h2 class="news_item_title">
  75. <a href="psk-jvm-item.html">PSKOV 2 for JVM</a>
  76. </h2>
  77. <p class="news_item_date">
  78. 2025-02-11 00:00
  79. </p>
  80. <div class="news_item_contents">
  81. <p><img src="../../images/2025_psk-jvm-item.png" alt="splash" /></p>
  82. <h1 id="seperatepagesgeneration">Seperate pages' generation</h1>
  83. <p>In January I implemented half of the functionality of original
  84. PSKOV: generation of separate HTML pages from Markdown.</p>
  85. <p>Both PSKOV 1 and PSKOV 2 produce HTML files that look the same in web browsers.
  86. However, the contents of the generated HTML files differ because PSKOV 1 uses
  87. <a href="https://github.com/showdownjs/showdown">Showdown</a> to convert Markdown to HTML, whereas PSKOV 2 uses
  88. <a href="https://github.com/JetBrains/markdown">intellij-markdown</a>.</p>
  89. <p>Let's see how the generated HTML files compare. Suppose we have the following. . .</p>
  90. </div>
  91. <div class="news_item_more">
  92. <a href="psk-jvm-item.html">Continue reading</a>
  93. </div>
  94. </div><div class="news_item">
  95. <h2 class="news_item_title">
  96. <a href="year24.html">Results of the year 2024</a>
  97. </h2>
  98. <p class="news_item_date">
  99. 2025-01-15 00:00
  100. </p>
  101. <div class="news_item_contents">
  102. <p><img src="../../images/2025_year24-en.jpg" alt="year24" /></p>
  103. <h1 id="results">Results</h1>
  104. <p>Let's see the results of the year 2024 quarter by quarter:</p>
  105. <ul>
  106. <li><strong>The first quarter</strong> (January - March):<ul>
  107. <li>(Swift) Implemented data bus for iOS to create common space of communication for fragmented code</li>
  108. <li>Introduced "Limited language model" term to describe portable code rules</li>
  109. <li>Python was selected as the anchor programming language from which to generate functional copies in other languages</li></ul></li>
  110. <li><strong>The second quarter</strong> (April - June):<ul>
  111. <li>(Python) Created the first version of Python -&gt; C++ translator. . .</li></ul></li>
  112. </ul>
  113. </div>
  114. <div class="news_item_more">
  115. <a href="year24.html">Continue reading</a>
  116. </div>
  117. </div><div class="news_item">
  118. <h2 class="news_item_title">
  119. <a href="lha-jvm-macos.html">The first Local Host Access working version</a>
  120. </h2>
  121. <p class="news_item_date">
  122. 2024-12-09 00:00
  123. </p>
  124. <div class="news_item_contents">
  125. <p><img src="../../images/2024_web-test.jpg" alt="web-test" /></p>
  126. <h1 id="localhostaccess">Local Host Access</h1>
  127. <p>Tiny web server called Local Host Access (<strong>LHA</strong>) is ready to replace
  128. Local File System Access (<strong>LFSA</strong>) on JVM and macOS: I've generated this
  129. very article with LHA on macOS. Thus, Kotlin prooved to be a good choice for
  130. cross-platform development with a minor limitation.</p>
  131. <p>The minor limitation is the fact that 99% of Kotlin is used on JVM. The
  132. remaining 1% is so-called Kotlin Native for iOS, Linux, macOS, and Windows.
  133. Thus, when one needs something as simple as to find out if a symlink. . .</p>
  134. </div>
  135. <div class="news_item_more">
  136. <a href="lha-jvm-macos.html">Continue reading</a>
  137. </div>
  138. </div><div class="news_item">
  139. <h2 class="news_item_title">
  140. <a href="pskov-again.html">Back to the development of "PSKOV"</a>
  141. </h2>
  142. <p class="news_item_date">
  143. 2024-11-14 00:00
  144. </p>
  145. <div class="news_item_contents">
  146. <p><img src="../../images/2024_lha-path.gif" alt="lha" /></p>
  147. <h1 id="pskovtoday">"PSKOV" today</h1>
  148. <p>Now, we have an old "PSKOV" version and we need an improved one.</p>
  149. <p>First, we should recall what "PSKOV" consists of:</p>
  150. <ol>
  151. <li>The <a href="https://opengamestudio.org/pskov/en/pskov_1.0.0.html">generator</a> itself in the form of HTML page with JavaScript</li>
  152. <li>Helper <a href="https://opengamestudio.org/lfsa/en/index.html">Python script</a> to save generated files to disk</li>
  153. </ol>
  154. <p>Helper script is used to bypass web page restriction to access
  155. local file system.</p>
  156. <p>The script itself is a tiny web server with the following commands:</p>
  157. <table>
  158. <thead>
  159. <tr>
  160. <th></th>
  161. <th>Command</th>
  162. <th>Details</th>
  163. </tr>
  164. </thead>
  165. <tbody>
  166. <tr>
  167. <td>1</td>
  168. <td><code>GET /path</code></td>
  169. <td>Get current working directory path</td>
  170. </tr>
  171. </tbody>
  172. </table>
  173. </div>
  174. <div class="news_item_more">
  175. <a href="pskov-again.html">Continue reading</a>
  176. </div>
  177. </div><div class="news_item">
  178. <h2 class="news_item_title">
  179. <a href="ht-sound.html">Sound support and the search for a new direction</a>
  180. </h2>
  181. <p class="news_item_date">
  182. 2024-10-11 00:00
  183. </p>
  184. <div class="news_item_contents">
  185. <h1 id="soundsupport">Sound support</h1>
  186. <video controls width="700">
  187. <source src="../../images/2024_sound.mp4" type="video/mp4"/>
  188. </video>
  189. <p>In September I implemented sound support. However, this was the last
  190. work for "Tail and Shadow" project, because the project's story writer -
  191. Eugene - left.</p>
  192. <h1 id="thesearchforanewdirection">The search for a new direction</h1>
  193. <p>In September I also noticed the loss of interest in the project by the
  194. audience. I linked this to the fact that the project's functional and
  195. graphical results did not match that of the audience.. . .</p>
  196. </div>
  197. <div class="news_item_more">
  198. <a href="ht-sound.html">Continue reading</a>
  199. </div>
  200. </div><div class="news_item">
  201. <h2 class="news_item_title">
  202. <a href="ht-scenes.html">Switching scenes</a>
  203. </h2>
  204. <p class="news_item_date">
  205. 2024-09-06 00:00
  206. </p>
  207. <div class="news_item_contents">
  208. <h1 id="august">August</h1>
  209. <video controls width="700">
  210. <source src="../../images/2024_scenes.mp4" type="video/mp4"/>
  211. </video>
  212. <p>In August I implemented scene switching, which allowed me to do the following:</p>
  213. <ul>
  214. <li>pressing "Start the game" button in the splash screen takes the player to a level with three floors</li>
  215. <li>selecting a door takes the player to another floor</li>
  216. <li>selecting a TV set focuses the player on the TV set with a remote control</li>
  217. <li>switching TV channels results in different images being shown</li>
  218. </ul>
  219. <p>Thus, scenes are good both for focusing on items and moving the player around.. . .</p>
  220. </div>
  221. <div class="news_item_more">
  222. <a href="ht-scenes.html">Continue reading</a>
  223. </div>
  224. </div><div class="news_item">
  225. <h2 class="news_item_title">
  226. <a href="rethinking.html">Rethinking</a>
  227. </h2>
  228. <p class="news_item_date">
  229. 2024-08-12 00:00
  230. </p>
  231. <div class="news_item_contents">
  232. <p><img src="../../images/2024_rethinking.jpg" alt="Game" /></p>
  233. <p>When July started my initial plan was to make the instrument support Python to
  234. JavaScript code translation. However, this did not happen because tasks with
  235. higher priority emerged.</p>
  236. <p>Which task is more important than develpment of the instrument?
  237. Development of a game, of course! Now, let's go back to the beginning of
  238. July 2024…</p>
  239. <h1 id="gamejam">Gamejam</h1>
  240. <p><a href="https://dtf.ru/games/2783053-nachni-igru-ocenka-videorolikov">"Start the game"</a> 3-day gamejam finished in the beginning of July 2024.
  241. I participated in the jam to validate the instrument under development and. . .</p>
  242. </div>
  243. <div class="news_item_more">
  244. <a href="rethinking.html">Continue reading</a>
  245. </div>
  246. </div>
  247. <p class="pagination_title">Page 1 of 9</p>
  248. <p>
  249. <a href="index2.html">Older »</a>
  250. </p>
  251. <div id="footer">
  252. The site has been generated by <a href="http://opengamestudio.org/pskov">PSKOV</a>
  253. from <a href="http://github.com/ogstudio/site-opengamestudio">this source code</a>.
  254. </div>
  255. </center>
  256. </body>
  257. </html>