Digest:This is a 68k C/ASM project recreating the game known as StarCraft. If you want to join the project, skip ahead to
How Can I Join.
Brief:Some of you may have heard of the StarCraft 68k project at
http://calcgames.org/cgi-bin/files/files.cgi?ID=48. This project was meant to be the classic Real-Time Strategy game
http://en.wikipedia.org/wiki/Starcraft ported to the 68k calculators. The following is some background information about this magnificent game.
The original StarCraft was released by Blizzard Entertainment in 1998. It was, indeed, the best-selling computer game of the year for 1998, and it is still played today. StarCraft is ranked among IGN's top 10 best games of all time, and Gamespot
named StarCraft the greatest game of all time. It also won the prestigious Originis Award for 1998. It has spawned one sequel, named StarCraft: Brood War. StarCraft and StarCraft: Brood War have sold over nine million copies since their debuts, making them... very popular. 9 million copies over a period of 8.5 years is roughly equal to two copies being sold per minute, which is quite good.
StarCraft is a strong RTS, in that it provides three different races to its players: the Terran, the Protoss, and the Zerg. None of the races go as far as share one single unit, making them extraordinarily unique.
In a nutshell, these races break down as follows:
Terran: The Terrans are a race of futuristic humans, per se. One may expect that we humans would be like the Terrans after a few decades, centuries, or millenia. They colonize the StarCraft universe. They posess strong, yet sturdy technologies, making them balanced. Their units are efficient, but somewhat inexpensive. Here are some of their notable abilities:
Repair - SCVs (worker units, peons) can repair Terran buildings and robotic units for a fraction of the cost of constructing a new building or training a new unit.
Heal - In the Brood War expansion, a unit called the Medic can (automatically) use energy to heal surrounding units.
Cloaking - Some units can cloak on demand, uing up energy but making them hard to detect by enemies.
Nuclear strike - If a Nuclear Missile is built, a Ghost can deploy it to a location, doing great amounts of damage to buildings in the area, and killing most units. When an SCV works on a bulding or repairs a bulding, it can do nothing but work. Also, the main buldings of the Terran can lift off, rendering them unable to be damaged by ground attacks. Unfortunately, they cannot produce units this way. Buldings are upgraded via addons. A single bulding can have up to two types of addons for it, but only one addon may be attached at a time.
Protoss and Zerg: The Protoss and the Zerg were both created by the Xel'Naga. They are at war with each other.
Protoss: There are a race of technologically advanced aliens. The units and buldings of the Protoss are more expensive that those of the terran, but more powerful. They rely of psionic abilities and cybernetics in battle.
The Protoss have a unique thing calle dthe Plasma Shield, which are secondary hit points that regenerate in battle. Attacks against the Protoss must first deplete the plasma shields before attacking the main hit points. Plasma Shields regenerate at a slow-moderate pace, and can be healed in 0.5-1 seconds by a building called the Shield Battery, which uses its own energy to heal Plasma Shields.
Another characteristic of the Protoss is that they require Pylons to build. Pylons provide buildings with energy, called Psi. This powers the buldings. When the Pylons are destroyed, the building is useless.
The Protoss build their buldings by "warping them in" from the Protoss homeworld, Aiur. This means that Probes (Protoss peons) need not dote on the construction of a building.
Zerg: The Zerg resemble insects, and are controlled by the Overmind (not present in most gameplay scenarios). As opposed to the other races, the Zerg's units are produced from the Town Center (called the Hatchery, Lair, or Hive). These units are "mutated" or "spawned" from Larva. Three larvae can be at one Town Hall. Larva regenerate every 15 seconds on normal gameplay speed.
The Zerg possess the unique ability of morphing. Buildings are upgraded by morphing. Therefore, a Town Hall can morph from a Hatchery to a Lair, and to a Hive. This allows for more upgrades...
The power of the Zerg comes from swarming. Because three units can be produced at a time from a hatchery, the Zerg player can build multiple hatcheries (at cost), and be morphing many units at a time. For example, with 5 hatcheries spread across the map (not uncommon), a player can morph 15 units at a time. 15 seconds later, when a new Larva appears, they would morph 5 more units in total. That would be a base of 15 units, plus 20 units per minute. As a result, Zerg units work best as part of a large whole.
The Zerg buld buldings by sacrificing a Drone (peon). The Drone morphs from the Larva, and the Drone will then "mutate" into a building. All Zerg buildings secrete "Creep" around themselves. In addition, all Zerg buildings except for the Vespene Gas-gathering Extractors and town halls must be built on Creep. No other race can build on Creep, but an opponent that is also Zerg
can build on Creep.
Other Elements of StarCraft Gameplay:In StarCraft, there are two types of resources: Minerals, mined directly from mineral fields, and Vespene Gas, mined by building a race-specific processing bulding and tasking peons to it (one peon at a time). Minerals are used for all buldings and units (if I am not mistaken), and are availible in relative abundance. On the other hand, Vespene is used for only the more advanced units. As a rule, the more Vespene is required, the more specialized/advanced the unit is.
Also, there exists an element of keeping a population. All races can create more units by bulding town halls (Command Centers for Terrans, Nexuses for the Protoss, and Hatcheries, etc. for the Zerg). This is more expensive than building other types of buildings. Terrans can build more units by building Supply Depots, Protoss by bulding the aforementioned Pylons, and Zerg by spawning Overlords.
This is basically StarCraft in a nutshell, so let us go to the description of the project.
The Project: The aim of the project is to create as close a rendition of the original game as possible. That will be very difficult. Because of this, I cannot work on this project alone; it requires more people.
Our final goal will be to have all of the units from Brood War for the races of the Terran and the Protoss. We also hope to have a multiplayer mode and a versus-AI mode. Afterwards, if this is successful, we shall write the campaign and then an on-computer editor. Then will come the on-calc editor.
This project will use C and Assembly. It will run on every 68k calculator. It will take advantage of the Voyage 200's and TI-92+'s screen size.
Steps to Completion:
Baby Steps (First Steps):
* Create coding standards, which will be maintained in a private forum.
* Write the graphics engine, and import 25%+ of the availible sprites.
* Create a playable demo of map rendering (no units, no animations) that is scrollable, and features the minimap.
* Create a playable demo of the pathfinding, plus the graphics.
* Create a playable demo of the Terran base, featuring basic fog-of war, mining minerals, and creating SCVs from the Command Center
* Create a framework to test the AI code.
After this is done, we will do the following:
* Convert the Protoss graphics into sprites, import them, and release a playable demo of the Protoss base.
* Create data files with unit statistics, the technology tree, et cetera. Incorporate this into the game.
How This Project Will Run:* Hopefully, in the days following this post, we will get a team of 10 or so people (or more), which will easily be the biggest team to ever work on a project for TI calculators.
* I will provide a forum to discuss issues, and set weekly goals.
* I will assign goals, along with other people. Therefore, this project will be self-moderated.
* The project will be controlled via CVS version tracking technology and code auditing.
* There will be a bug tracker, etc. that will be implemented for ease of bug correction.
What We Are Looking For:We are looking for smart, hard-working people. Specifically, we are looking for the following:
* People who have moderate experience with programming graphics routines in C and prefferably assembly, using TIGCC as an envoironment.
* People who are skilled in programming C and assembly.
* People who are adept at leading programming teams.
* People who are skilled at optimizing TIGCC code and assembly.
* People who wish to create/help create the game engine, and extraordinary feat.
* People who are willing to create and convert graphics for this game. In other words, good artists.
*Later on, we will need people who are creative, familiar with StarCraft, and are willing to create a good storyline.
Most of all, we need people who are willing to make calculator history!
What We Have So Far:So far, we have the Terran graphics converted (I believe). Because I did not receive a compilation of the graphics, I cannot verify this.
This is obviously very little.
Who Can Apply to Join:Anyone can join, as long as they meet one or more of the above criteria. I said "apply" simply because you will have to be fairly experienced at what you do. Everyone who is accepted (in other words, most people) will be in the credits and hopefully the main screen. The main people responsible for the project, as determined by our team, will be included as the "File Authors" when this program is submitted to CalcGames, TiCalc, etc.
Remember, if you think that you are qualified to join, and if you want to make calculator history, join now!
How Can I Join:Simply email me (Vladik) at:
Vworldv [AT] Yahoo [DOT] Com
Put the following (or similar) in the subject of your email:
Starcraft 68k: Reborn
Also, when applying to the team, be sure to include your name ("Vladik"), your most common "User Name" ("Coolv"), the forums that you actively participate in ("TICALCS.NET, using the username Vladik"), what you are willing to do ("Project Coordinator, Game Engine, and AI"), and whether or not you have played StarCraft ("I've played StarCraft before.").
You can also include why you believe that you should be on the team, and some examples of your skill in that area. For example, if you are an artist, you can provide a link to some of your work. If you are good at ripping graphics, you can show me some graphics rips that you did. If you want to work on the story, send me a short story that you wrote.
Also, please be sure to have some free time each week (or day) to work on this project.
Some Last Words:Thank you for reading this massive post! This was posted on many different forums and programming groups, including
http://forum.ticalcs.net,
http://omnimaga.dyndns.org/,
http://www.revsoft.org/phpBB2/,
http://www.cemetech.net/forum/index.php,
http://www.calcgames.org/,
http://www.detachedsolutions.com/forum/?t=index, and
http://kvince83.tengun.net/maxboard/.
Please feel free to discuss this; I will check back to these threads periodically.