Difference between revisions of "SCI Tetris"
From SCI Wiki
Jump to navigationJump to search(10 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 /> | ||
+ | ''InsertTitleHere''<br /> --> | ||
+ | | 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 | ||
− | |||
| Developer = [[Rainer De Temple]] | | Developer = [[Rainer De Temple]] | ||
| Publisher = [[Rainer De Temple]] | | Publisher = [[Rainer De Temple]] | ||
| Designer = {{RainerDeTemple}} | | Designer = {{RainerDeTemple}} | ||
− | | Source = {{Source}}[[# | + | | Source = {{Source}}[[#Downloads|Yes]] |
| Category = {{FanSCIGame}} | | Category = {{FanSCIGame}} | ||
| Type = {{FanSCIFullGame}} | | Type = {{FanSCIFullGame}} | ||
Line 44: | Line 46: | ||
<blockquote> | <blockquote> | ||
− | |||
<!-- Place synopsis here --> | <!-- Place synopsis here --> | ||
</blockquote> | </blockquote> | ||
Line 57: | Line 58: | ||
==<br /> About == | ==<br /> About == | ||
− | < | + | <div class="Quote"> |
− | < | + | {{Quote|Attrib = Rainer De Temple (cosmicr)<ref>https://sciprogramming.com/community/index.php?topic=1917.msg13670#msg13670</ref> |
− | + | }} | |
− | </ | + | 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:SCITetris11(wSRC).zip|SCI Tetris with Source]]<span class="DLInfo"> (ZIP file) [181 KB]</span> | |
− | + | <blockquote> | |
− | |||
− | |||
− | |||
− | |||
− | |||
=== <span class="Inactive">Demos</span> === | === <span class="Inactive">Demos</span> === | ||
Latest revision as of 21:17, 14 June 2024
SCI Tetris
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.
This article is a Release Page release stub page.
You can help the Sierra Wiki by expanding it.
Screenshots
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
- File:SCITetris11(wSRC).zip (ZIP file) [181 KB]
Demos
- N/A
Misc Downloads
Walkthroughs/Hints
- N/A
References
Related Links