This is the first computer game I ever played. My mom was a secretary at a local university, and there was a computer lab across the hall from her office. I'd go there after school to wait for a ride home, and someone logged me in and set me on my way. This was all on paper-feed terminals and I'd take the stack of printout homes and read through each game over and over. This is when I fell in love with computers.
In the early nineties I decided to learn about unix, and this was the first game I played after setting my first BSD box up. This is when I fell in love with unix.
Thanks for the game, to the original programmer(s) to all the people who have kept it alive. This program is special to me.
This was also the first computer game I ever played! It was on an HP 2000 computer running timeshared BASIC from a clunky teletype, in the early 1970s. The best part was that you could just type "LIST" and it would print out all the BASIC code - all the games on that machine were open source!
If the Klingons beat you, you'd get this disheartening message, which I remember to this day: "The Enterprise has been destroyed. The Federation will be conquered. You are dead."
I also remember playing a car racing game on the same machine, and also a game about landing a spaceship on the moon (which, a few years later, I created a real-time version of on a 6800 microprocessor in machine language). But the Star Trek game was definitely the best one.
I remember all three, my father used to leave me at the console when he would take me to work on the weekends at IBM. Not sure that was system 3 or not.
Between that and reams of green bar to use at home for "artwork" I found my fascination with computers. Didn't hurt we had first generation IBM PCs and before then my father had about everything heath kit put out.
Wow, I also have fond memories of playing games on an HP 2000 running timeshared BASIC, except it was the mid 80s for me. A bit of Star Trek, but a lot of Angband, Advent, an ASCII first person rendered Dungeon crawl, and a ton of time spent on NOTES; a great message board ported from the Plato system.
I would skip school and hang out in the Terminal Room at the local college, playing games and writing programs. I never did finish High School, but I learned what I wanted to do when I grew up. Man I loved that machine.
Same here -- I played it in 1974 on an HP 2000F minicomputer via a teletype located in a converted janitor's closet at my high school.
The author mentions the lack of ability to renumber the lines in a BASIC program, but I'm quite sure there was a RENUM command that would do that.
In 1976 we got ADS (CRT) terminals in the computer lab, and once I figured out ESC-sequences, I had a shoot-em-up space ship game going. God I wish I still had the source code for that. :(
I have a similar relationship to this game. As kids, my brother and I would stop by the computer lab at Peru State College and, when lucky, someone would dial the line printer terminal into Omaha. The few printouts we accumulated were treasured artifacts.
Looking at this source code brings back memories. Star Trek was ported everywhere there was a BASIC.
When I was 16, in 1981, our school got it's first computer, a Commodore Pet. 4K of RAM! Basic! Hi-tech graphics on the keys!
We only had one, it was in the library, and you had to 1) sign up for it, and 2) get a pass to leave study hall to come to the library.
My math teacher was an easy touch, so I scored a pass every day to go to the library. Unfortunately, other students also wanted to use the computer, and there was quite a bit of hijinks involved with actually making it happen (Hint: never sign up in pencil).
I learned how to code going through the Star Trek game and figuring out how it worked.
As a side note, my nemesis at the time was Roland. So I spent the formative years of my programming life creating a game called "Kill Roland" in Pet Basic. It was mostly Space Invaders, with a little bit of Star Trek thrown in. Little Rolands ("R"s) would come down from the top of the screen, you would use the arrow keys to move your guy around at the bottom, and the space bar launched missiles. There were smart missiles, that you could control after firing, heat seekers, and so on. Of course, the Rolands just kept coming, more and more of them (at times splitting in 2)
All the other kids at the library loved that game. Roland, not so much.
Fun times. I'd love to play Star Trek in BASIC again. (Zork would be a close second)
I like this kind of thing and I have both books. A family friend CP/M system was by first gaming experience and I played all of them. The Star Trek here exists in a sort of copyright limbo, CBS obviously didn't license it but it was too popular to squash. I remember seeing ports of this to Amiga, Palm Pilot and Windows CE over the years.
Colossal Cave is a contemporary - it wasn't distributed as source (to my recollection... compiled OBASIC.COM IIRC?) so it isn't in the books but it was my favourite.
I've actually been re-reading some of the "best of creative computing" books published by ahl. It is really sad instinct to see how the future was largely predicted.
As far as colloidal caves, you should check out The "get lamp" documentary.
My favorite: Begin, a Tactical Star Trek Simulation. Its like this game but on steroids. Vast galaxy, a whole fleet in combat on each side, Klingons and Romulans and Orions, many vessel classes! Google it, its everywhere, even Wikipedia.
And I know the guy who wrote it, in fact I still work with him. Tom Nelson, who can craft code like a work of art.
If you like playing these games, I definitely suggest giving Begin a try.
(Why 'Begin'? Because in the progenitor to this game, in BASIC, on an HP2000 there was a maximum code size. Large programs had to be written in pieces and 'chained' together in modules. The modules were numbered but the first was called 'Begin'.)
I remember a rather similar DOS game with an ASCII display (and probably a decade younger in coding) that was a turn-based fleet battle between whichever two sides (of Federation, Klingon, Romulan, or Orion) and relative ship numbers per side you liked. For some reason, the executable was called "begin.exe".
> This is an artifact of BASIC. It doesn’t really have an effect in C#. In BASIC, just as in C#, the randomizer could have been initialized based off the system time. If that was not an option, they should have taken advantage of the instructions prompt.
User inputted seeds were in a lot of classic text based, randomly generated games - by sharing the seed with friends, you could play through exactly the same game and see who did it better. Multiplayer!
I like how he blindly assumes that there was a "system time", or that there was a way to asynchronously poll for keyboard input. At least on the Apple II I grew up with, timekeeping required third-party hardware, and the only way to get user-input without writing assembly was INPUT, which paused the program until the user typed something and hit Return.
Good ol' trek was the very first video game I played on the family computer! This was a IMS 5000SX running TurboDOS 1.2, some time in 1983 I think. (Why my father saw fit to buy this thing instead of an Apple II is a question for another day. The best the IMS could do was drive a text-only WYSE-50 terminal at maybe 19200 baud.) Later on, my cousin would dial me into his 3B2 (using Tymnet or Telenet!) so I could play a full-screen variant called "vtrek". I found the vtrek sources on an FTP archive several years ago, but it requires BSD 4.3-style termios, and I just don't have it in me to port it to curses or something more modern.
I learned to program typing this into the mainframe at the college where my dad worked and then fiddling with the code to see what happen. I still learn that way.
What is the modern day equivalent to this? So many have commented that this was their first (and mine too!) exposure to computers. Something in php? Rails?
In the early nineties I decided to learn about unix, and this was the first game I played after setting my first BSD box up. This is when I fell in love with unix.
Thanks for the game, to the original programmer(s) to all the people who have kept it alive. This program is special to me.