Log In  


Cart #startrek1978-1 | 2021-04-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
13

Star Trek txt game ported to PICO-8

I'm finally happy to post the final release of my adaptation to PICO-8 of the 1978 game "Super Star Trek". The original game was written by Bob Leedom and David Ahl and published in the book BASIC COMPUTER GAMES - Microcomputer Edition. It was an early example of a space turn-based strategy game, and it was entirely text-based.

The original game was based on a CLI and text parser. This version is entirely based on a graphic user interface and can be controlled with the PICO-8 buttons, so it's a big change. But I'm very happy because I kept most of the original gameplay and mechanics intact. At the same time, I added music and animations. Besides, it's my first PICO-8 game!

How to play

  • use ⬅️➡️ to select a command, and 🅾️ to confirm. Normally ❎ cancels a command.
  • your goal is to destroy all Klingons before time is over. Time passes when you warp to a new sector;
  • you start in a random sector. There are 64 of them divided into an 8x8 grid;
  • first of all, use the long-range sensor scans (LRS) to see if there are Klingons in the surrounding sectors - unless you start the game in a sector with Klingons, in this case, you can attack directly (see later);
  • with LRS, you will see a number for each sector. The first digit is the number of Klingon ships, the second the number of starbases, and the third the number of stars. Eg "205" means there are 2 enemy ships;
  • if you have identified a sector with Klingons, use WRP to see the map and select the sector you want to jump, then press Z to go there;
  • before attacking, you need to raise your shields. Use SHE to divert energy to shields; a value such as 500 should be fine;
  • if there is only one ship, it's a good idea to use photon torpedoes because they don't consume energy. You will have to select the torpedo course;
  • if there are multiple targets, select the phasers. Select the energy you want to use for the phasers and fire. Phasers attack all enemy targets automatically; if you are attacking multiple enemies, the energy will be split, so use more energy when attacking more than one ship;
  • after you have attacked, the remaining Klingons will attack you;
  • you will notice that energy will be consumed quite soon. You need to find a starbase to replenish your energy. Once you have found a sector with a base, use the impulse engines to go close to a starbase and then dock (DCK);
  • ship devices can be damaged during fights, this will affect the behavior of weapons, shields, sensors, etc. Docking at a starbase will automatically repair your systems
  • The game generates a random captain name at the beginning of the game, and stores it on the cartdata together with your hi-score. If you win, the game will show both your score and the hi-score. If you want to reset the hi-score, open options, and select "new captain". This will reset the hi-score and generate a new name.
  • There are 4 difficulty levels from 1 to 4. By default, the game is set to 3. If you find it too difficult or too easy, open the options and select "more difficult"/"less difficult".

I hope you like it, and let me know your comments.

UPDATE 1.01:

  • Now you can use UP and DOWN to raise/drop shields faster
  • You can now press 🅾️ during the title screen to show all the text, then press again to continue.

More info about the original game:

13


1

This is super neat! Very straight to the point game once you get acquainted with the controls. Great port too! The animations are simple enough to not distract from the game but also get you the information you need.
Thanks for sharing this with us :D

EDIT: oooh baby I got killed twice for the same reason: everytime I dock to replenish my ship, my shield drops to 0 and I don't realize it. That's rough. But I'll get through it!


LOL, yes, it happens! I thought about automatically restoring the shields after docking, but I decided to stay faithful to the original game in the end.


WOW, well done
Love it how you revamped this forgotten classic :)


1

Completed it with just a day to spare! Really great, love the idea of reviving text-based games with just enough sound and graphics to make clear what's going on. I've never seen star trek but based on your cart I assume it's about a spaceship doing genocide.


1

Ahaha yes, this is a thing that always troubled me. The plot says you have to kill them before they reach the HQ (Earth) but as a matter of fact, they don't move and don't attack unless you disturb them. Picard would never do this.
Besides, the fact that the Enterprise alone can defeat 20-30 Klingon ships is really unrealistic.
Anyway, that was the original idea, who am I to discuss it :)


2

Quite possible the greatest turn-based game of all time, @emabolo. Thank you David H Ahl for your years of dedication in the very first videogames ever written for computers.

Suggest you have up and down arrow keys active in selecting a field area such as shields.

LEFT and RIGHT, same speed as is.
UP and DOWN, 10x that speed.


Ah, that's a very good idea. I'll do it soon. Thanks!


1

Hi! This game is really addicting hahahahaha

I had a mission going pretty well, but whe I went to a starbase to dock, my docking port was too damaged for it. Does that mean I have no more way of docking, or is there any way to heal a specific device like the docking port so that I can use the starbase again?

EDIT: My question still stands, but I just started a new mission and finally beat it! Took me 4 tries to do it, but Captain Tosz was successful! Thank you for introducing me to this game, emabolo :D


1

I'm glad you like it, FlyingSmog!
Every day there is a chance that one of the damaged systems is repaired, so the only possible strategy is to warp to other sectors until the docking port is repaired. But considering that you don't have many days to waste (at least at difficult level 3), if your energy is almost depleted and the docking port is damaged, you don't have much hope.

Damage to the systems plays a vital role in this game. In my version, I tried to change the math a bit so that it's less random and more related to the hits received by enemy ships. But sometimes, I miss the totally random events of the original game. Like, you reach a new sector filled with Klingons, and for no reason, the screen stops working, and you are blind. I wanted to work more on this aspect, but I used almost all the 8192 tokens, so I think the game mechanics are going to stay like this :)


1

Great edition. I first played a version of this on a TRS-80 Model I. If anyone is interested in a deep dive on this game this is a great podcast and this episode is all about Star Trek.

https://podcasts.apple.com/us/podcast/star-trek-the-unofficial-game/id1459202600?i=1000551828597


Good information indeed, @z80jim ! Here is what I found which goes into detail regarding how to port this classic game to consoles other than BASIC and explains each game command in question:

https://www.codeproject.com/Articles/28228/Star-Trek-1971-Text-Game


Hi @dw817
Yes, I found this article at the time, and it's great. But in my case, I was a fan of the 1978 version (Super Star Trek) so I restarted from the BASIC code. If anyone wants to tinker with the LUA port of the text-only version (not the PICO-8) you can find it here:

https://github.com/emabolo/superstartrek


At some point, @emabolo, when I slow down (never :) ), I wanted to write an all text version that dealt more with the actual 1960 TV series rather than the 1978 game.

For instance, Kirk would say, "Raise shields." but never give them an energy amount.

He might say, "Transfer all power to shields." at which point every non-critical and possibly a few critical items would sacrifice their use for shields.

So I was thinking more of a Star Trek which would call them by cast and crew, Kirk, Spock, McCoy, Chekov, Sulu, Uhura, Scotty.

And possibly Yeoman Rand for a future love interest with Kirk - provided he made the right choices in the game when brought up with multiple choice.

Challenges would be more than just defeating Klingons, perhaps rescuing people from planets, fighting off Romulans, having a Neutral Zone, a Doomsday Machine, and, if done well, take a little bit of something memorable from every 80+ televised episodes.

. . .

Until such time we have your very well-done Star Trek game for Pico-8.

I also wanted to ASK, which version of Star Trek you wrote is the latest ? You have this one and another one with an earlier date ?


Well, I think I developed the beginning of your idea.
Have a look here:
https://github.com/emabolo/superstartrek/blob/master/tos-version.md

Feel free to go ahead from there ;)


1

Well now, @emabolo. Many years ago I started this but never finished.

-----------------------------------------------------------
Dilithium Crystals : 4.00
Ship's Energy Level: 9999
Alert Condition    : BLUE
Shield Energy      : 100
Shield Status      : DOWN
Phasor Power       : 100
Photon Torpedoes   : 10
Weapon Status      : DOWN
Galaxy Location    : EARTH
-----------------------------------------------------------

Kirk:
  (Personal Log: I am docked at Earth's Starbase on the bridge
   of the Starship Enterprise with my crew and we are ready
   For our first mission).

Uhura:
  "I'm receiving a subspace message, sir."

[S]pock, [M]cCoy, [U]hura, S[c]otty, Ch[e]kov, Su[l]u, [C]omputer: s

Spock:
  "Condition: BLUE.
   We are docked at Earth's starbase, sir."

Orders: [C]ondition, [S]can c

Spock:
  "We are currently at condition blue."

Change to: [B]lue, [G]reen, [Y]ellow, [R]ed r

Spock:
  "Affirmative. Condition is now red."

Change to: [B]lue, [G]reen, [Y]ellow, [R]ed 

Orders: [C]ondition, [S]can 

-----------------------------------------------------------
*** ALERT !! *** CONDITION: RED
-----------------------------------------------------------

Chekov:
  "Raise shields and weapons, sir ?"

Uhura:
  "I'm receiving an urgent message, sir. Priority one."

[S]pock, [M]cCoy, [U]hura, S[c]otty, Ch[e]kov, Su[l]u, [C]omputer: u

Uhura:
  "Receiving transmission from starfleet, sir."

> 

Kirk:
  "Patch it on through, Uhura."

> 

Uhura:
  "Yessir. Putting it on the main viewer now."

> 

(It is Admiral Johansson, decorated starfleet officer)

Admiral:
  "Jim ? Have you lost your mind !?

> 

   You know better than to change your alert status
    while docked !

> 

   You have everyone here at the starbase confused
    and frightened with these careless actions of yours !

> 

   Power down your ship and report immediately to my office
    for disciplinary action !

>

Admiral Johannson, out !

> 

LOL @dw817, you have a future as a game writer!


Yeeph, I already thought I was one, @emabolo. Grin Thanks for the compliment. I wouldn't mind being the designer of this game though if someone else wanted to code it, do the gfx, music, SFX, the works.

The original object of the game I had in mind is for Kirk to get tired of waiting for his first mission and instead mutiny, hijack the Enterprise, fighting off all defending ships and then fly off into yonder space, a fugitive of the Federation.

This is actually done in many complicated steps which include making changes to the enterprise's circuit boards, using the transporter to steal necessary parts, and to fire off a few well-placed salvo of shots while docked before attempting to fly free.

Your crew will dutifully do everything you tell them, which could be very bad and completely ruin both theirs and your career. Yet they'll do it without question as you are, after all, the captain.

Yet if you mess up on something that can be easily traced, like changing condition to RED, Johansson is there to give you a talking to shutting down your attempt to steal the Enterprise - and you have to start over. :)

. . .

Anyways, I'm probably derailing the thread here from your excellent and completed game. And that's the thing with us programmers, actually managing to finish something.


Ahah yes, I guess we should move this into a different place. We should have a thread about game design (or maybe on discord?).
Anyway thanks again. Yes, completing a game is always the most difficult part. As other users commented, many other features could be added, but I think I prefer to focus on new ideas at the moment.



[Please log in to post a comment]