Difference between revisions of "SCI Tetris"

From SCI Wiki
Jump to navigationJump to search
 
(8 intermediate revisions by the same user not shown)
Line 6: Line 6:
 
| Image = [[Image:SCITetrisTitleSS.png|190px]]<br />
 
| Image = [[Image:SCITetrisTitleSS.png|190px]]<br />
 
''SCI Tetris'' Title Screen
 
''SCI Tetris'' Title Screen
 +
| MusicalTheme = <!-- [[File:.ogg]] -- ><!-- <br />&nbsp;
 +
''InsertTitleHere''<br />&nbsp; -->
 +
| ReleaseVersion = 1.1
 
| ReleaseDate = Sept. 19, {{2020}}<ref>https://sciprogramming.com/community/index.php?topic=1917.0</ref>
 
| ReleaseDate = Sept. 19, {{2020}}<ref>https://sciprogramming.com/community/index.php?topic=1917.0</ref>
 
| ProjectStatus = N/A
 
| ProjectStatus = N/A
| ReleaseVersion = 1.0
 
 
| Developer = [[Rainer De Temple]]
 
| Developer = [[Rainer De Temple]]
 
| Publisher = [[Rainer De Temple]]
 
| Publisher = [[Rainer De Temple]]
Line 44: Line 46:
  
 
<blockquote>
 
<blockquote>
<span class="Inactive">N/A</span>
 
 
<!-- Place synopsis here -->
 
<!-- Place synopsis here -->
 
</blockquote>
 
</blockquote>
Line 57: Line 58:
 
==<br /> About ==
 
==<br /> About ==
  
<blockquote>
+
<div class="Quote">
<!-- Place About info here -->
+
{{Quote|Attrib = Rainer De Temple (cosmicr)<ref>https://sciprogramming.com/community/index.php?topic=1917.msg13670#msg13670</ref>
<span class="Inactive">N/A</span>
+
}}
</blockquote>
+
It's all coded in one room. I've included the source for anyone who wants to take a look (warning it's quite messy). Anyone new to SCI programming might learn a few things.
 +
 
 +
'''How it works and my methodology:'''
 +
 
 +
* I keep an array of the board in a 20x10 array. SCI doesn't support 2d arrays, so it's basically a 200 element array. The blocks are programatically generated from one View (with 6 loops) and move down the board. A popular implementation of a Tetris game. When the blocks hit the bottom they become part of the board and I used the AddToPic function. One of the issues I had to overcome was the addToPic library function doesn't work the way I wanted it to so I used the Kernel function instead.
 +
* Once I had the main game working, I added boundary and lines cleared detection. I used the template gScore and gMaxScore for the scoring. I also used the death handler but modified it to display a random Russian "Superstition" just for fun (and to abuse the text resource feature). I copied all the quotes from Wikipedia into a text file, then using a hex editor I replaced all the CRLF's with 0's and imported the text patch into my game.
 +
* The game gets progressively faster as you level up. Rosella is there to give you a sense of urgency.
 +
* I had a bit of trouble with keys. I'm not sure if SCI0 allows a key-held event. So for that reason you can't hold a key down you have to "tap" the key controls.  I didn't spend a lot of time on controls so it might be possible to improve.
 +
* High scoring is saved to a local file in the game folder so that next time you play it's still there.  The big font is just a "Russian" style Cyrillic-looking font that I found online.
 +
* Save and restore sort of don't work, but it wouldn't take much to make it work. But why you'd want that is beyond me hahaha.
 +
* There's also some midi music in there too.
 +
* I should also add I used Kawa's version of SCI Companion, but I don't think it makes any difference.
 +
* If anyone's wondering this is the result of about 12 hours coding/design/learning (about 2 days).
 +
</div>
  
 
==<br /> Downloads ==
 
==<br /> Downloads ==
  
* [[Image:ZIP.png|ZIP File]] [[File:SCITetris10(wSRC).zip|SCI Tetris with Source]]<span class="DLInfo"> (ZIP file) [181 KB]</span>
+
* [[Image:ZIP.png|ZIP File]] [[File:SCITetris11(wSRC).zip|SCI Tetris with Source]]<span class="DLInfo"> (ZIP file) [181 KB]</span>
<blockquote
+
<blockquote>
 
=== <span class="Inactive">Demos</span> ===
 
=== <span class="Inactive">Demos</span> ===
  

Latest revision as of 21:17, 14 June 2024

SCI Tetris


SCI Tetris
SCITetrisTitleSS.png

SCI Tetris Title Screen

Release Date: Sept. 19, 2020[1]
Project Status: N/A
Latest Version: 1.1
Developer(s): Rainer De Temple
Publisher: Rainer De Temple
Designer(s): Rainer De Temple
Source Available:  Yes
Category: Game
Type: Full
Genre: Arcade
Theme(s): Platformer
Engine: SCI0
Platform: MS-DOS
Localization: English
Website:




Description

Rainer De Temple's SCI Tetris is a 2020 SCI0 arcade game.

Release.png   This article is a Release Page release stub page.
You can help the Sierra Wiki by expanding it.


Screenshots

SCITetrisSS1.png SCITetrisSS2.png


Synopsis


About

Rainer De Temple (cosmicr)[2] wrote:

It's all coded in one room. I've included the source for anyone who wants to take a look (warning it's quite messy). Anyone new to SCI programming might learn a few things.

How it works and my methodology:

  • I keep an array of the board in a 20x10 array. SCI doesn't support 2d arrays, so it's basically a 200 element array. The blocks are programatically generated from one View (with 6 loops) and move down the board. A popular implementation of a Tetris game. When the blocks hit the bottom they become part of the board and I used the AddToPic function. One of the issues I had to overcome was the addToPic library function doesn't work the way I wanted it to so I used the Kernel function instead.
  • Once I had the main game working, I added boundary and lines cleared detection. I used the template gScore and gMaxScore for the scoring. I also used the death handler but modified it to display a random Russian "Superstition" just for fun (and to abuse the text resource feature). I copied all the quotes from Wikipedia into a text file, then using a hex editor I replaced all the CRLF's with 0's and imported the text patch into my game.
  • The game gets progressively faster as you level up. Rosella is there to give you a sense of urgency.
  • I had a bit of trouble with keys. I'm not sure if SCI0 allows a key-held event. So for that reason you can't hold a key down you have to "tap" the key controls. I didn't spend a lot of time on controls so it might be possible to improve.
  • High scoring is saved to a local file in the game folder so that next time you play it's still there. The big font is just a "Russian" style Cyrillic-looking font that I found online.
  • Save and restore sort of don't work, but it wouldn't take much to make it work. But why you'd want that is beyond me hahaha.
  • There's also some midi music in there too.
  • I should also add I used Kawa's version of SCI Companion, but I don't think it makes any difference.
  • If anyone's wondering this is the result of about 12 hours coding/design/learning (about 2 days).


Downloads

Demos

  • N/A

Misc Downloads

  • ZIPInactive.png None Available


Walkthroughs/Hints

  • N/A


References


Related Links