MiniLD 16: Combo Trader
Here’s my game. Late on my goal of about two hours ago, but a lot of that time was spent finalizing stuff (embedding fonts, testing on other computers, uploading the right version…) and it’s ready now, I think, to share.
Here’s a link to the webpage to play it.
The goal of the game is to speedily progress through a stage, without dying on the way. Additionally, after each stage you can buy commodities to make money when you finish the next stage. (You are a freelance trader.)
Controls and combinations:
Basically, to finish a stage you have to use combinations of ingredients accelerate your ship and destroy enemies so they don’t destroy you.
That said, note that the boxes that hold your ingredients are arranged so that they can be easily used with the number keys (1-4, 7-0). You have to combine three ingredients to perform an action in Combo Trader, and the order doesn’t matter. When you combine three ingredients, it does something depending on the combination it matches, and the boxes that you took the ingredients from are refilled with random ones.
Here are all the combinations so far:
- Two fuel, one oxygen: Gives your ship a speed boost.
- One fuel, one oxygen, one bullet: Fire four lasers at enemy ships.
- Two bullets, one oxygen: Destroy a bunch of ships, as long as they’re behind you. (Reasoning to this: you are firing bullets without the power of the fuel, so you can only hit things behind you. Not physically accurate, but it works well enough for the game.) This combination is overpowered.
- Any three of a single type: Has no effect on your ship. This is useful if you have too many of a certain ingredient.
- Any combination not listed: Slows down your ship. The ingredients are still thrown away (so you can get better ones) but your ship is slowed about the same amount that three boosts (fuel+fuel+oxygen) would accelerate it.
On to the interface.
- In the lower-right corner, there’s a speedometer, which displays your current speed, with arbitrary units. Your ship goes at speed “5″ if you don’t boost, and will gradually return to this speed over time, so you need to keep boosting to stay fast.
- The big bar along the bottom is a progress bar. Once it is filled, you progress to the next stage. (More on stages later.)
- On the top is the bar of ingredients. The three boxes in a row below it are the combo bar, which will hold the ingredients as you press their corresponding keys. When this fills up with three ingredients, the ingredients are combined and the bar empties.
- In between these two bars are two solid bars: the top shielding and the bottom armor. If armor runs out, you’re dead, but your shield slowly recharges. It is best to destroy enemies using the combat combinations before they can damage your armor, as your armor only regenerates after a full stage.
The stage system I put in for now is a bit weird. When you complete a stage, there’s a Trade screen, where you see how much you earned from selling boxes and buy them for the next round.
How the system works:
- You start out with no packages, and do a dry run. When you press ’1′ on the main menu and see the interface described earlier, you are in the dry run.
- After completing your first stage, you see the trade screen. Press the number keys to indicate which slots you want to use to carry boxes to the next trade screen. Slots that are carrying boxes are covered with red symbols that look like an X and a + combined. In the next stage, you can still use the ingredient you see under the symbol, but in doing so you drop the cargo, and cannot sell it to make money at the next trade screen. (1 unit of money buys a box, and they sell for 5.)
- After ten seconds (indicated by the countdown in the upper-right), the next stage begins. After completing this stage, you see another trade screen. The stage, trade screen, stage, trade screen sequence repeats until you’re bored or flash player succumbs to a memory leak I didn’t plug.
So there it is, my game of quick reflexes, tactical thought, and lame pixel-art graphics! Maybe I’ll clean up the source code and continue it later.
Comment with any question and I’ll clarify, this post was kind of rushed and I might have missed some things.
This is a pretty cool idea so far. I played for about 5 stages and maybe ten minutes. Took me a bit to understand the implications of loading up on trade goods. If I get it right I see that you are trading earnings from trade for less bullets/oxy/fuel right? Like you can risk having less available travel resources if you want to fill your hold with trade goods.
Some feedback: I feel that it is frustrating and over-penalizing to the player when your ship totally stops when you get a fuel recipe wrong (especially compounded by the fact that you are at the mercy of the random number generator for what available commodities line the top.
Why not do something like have your ship retain greater sustained inertia so that botching one recipe isn’t such a progress killer? Since it was an aspect of the game’s fun for me to get the little ship trucking fast–it was disappointing then when the random commodities I was given would kill my momentum outright. That made me want to stop more than anything. I agree that there should be some sort of penalty if you botch many recipes in a row but a 1-miss lose all mechanic seems too great.
I think I’d need to try a version like that before providing further feedback because I think a lot of my other suggestions are in response to this over penalty version.
I enjoy the control aspect and the idea about building recipes on the fly for speed and combat. Only having two recipes feels under exploited though. Perhaps in later versions there could be a penalty (or even part of a stage where you need to slow down if you are going too fast?)–maybe to navigate a mine field or asteroid field so that you would have to use a recipe that is either less efficient or just botch it on purpose (though that is weird from a narrative perspective.) If the player had a few more options for combat and movement recipes it could be pretty fun indeed. Maybe if there was 1 more ingredient it would let you shoot forward as well?
2)
Ah.. I see there were 2 other recipes I didn’t understand the first time through. I had read your post and then played but a lot of the instructions didn’t make sense out of context. I’m going to try again here now that I see how one can throw away without speed penalty (if i’m reading the recipe right.)
Alright upon playing again after I understand the game a little further I believe I’m starting to get it. I probably got to about stage 6 or 7 this time and had a lot more fun with the two new recipes. I hardly ever slowed down too much and was able to start developing a strategy. I currently keep the left 1-4 slots filled with trade goods for sale and just focus on using the right 7-0 four slots for my recipe area. Having those four slots provides enough options (especially given the “3 of any type” discard recipe) that it seems to be a fairly optimal strat. Plus I can concentrate better by limiting my keyboard options. Now this game just needs some cool sounds and space music…
Heh, actually in the last post those recipes didn’t exist. Probably should have mentioned that when I posted this.
The sort of “random encounter” thing you’re describing is cool, and it would be much better than facing endless waves of monotonous enemies as it is now. This is definitely going in with the stage system; thanks for the suggestion. More ingredients and recipes will be going in too.
When I was testing my game I did the same strategy, but with slots 5-8 filled. Now that I realize I’m right-handed, I can see that your method’s much better.
As the gameplay gets more refined I’m going to try to make these simple strategies less effective, maybe with fluctuating prices or something.
As for music and sound, I’m not much good at music and didn’t have time to play with sound. (Was saving sound for last, but “last” came after my deadline.
) Definitely in my plans though.
EDIT:
I edited the post and I think it might make more sense now.
Regarding your first comment (which admittedly I didn’t entirely read at first, focusing on your last two for some psychological reason unknown to me), does knowing the other combinations make it easier to speed up? I just played it a little bit, and I see what you mean on the inertial stuff. I didn’t think it was as extreme as you said (in the code I think it adds 5 speed for a good boost, and subtracts 15 for a bad combination) and I’m just wondering how I can improve this.
Maybe this: the current idea has a cool arcade-y feel to it (in my opinion) but I could go for something more realistic-feeling. There could be a “engine” meter showing the levels of fuel and oxygen in the engine, and to regulate the levels you could either do two fuels and one oxygen, or two oxygen and one fuel. The engine levels of fuel and oxygen would gradually, randomly deviate and lower, and you’d have to glance at that every once in a while to get an idea what you should add. Maybe then your ship could overheat, and you’d have to let it cool down in order to put anything in it. Speed would be dependent on how high both fuel and oxygen levels are, inversely dependent on how far away the levels are from each other. This might work better, but it’s also a lot more complicated.
this has turned out really well; the basic mechanic is simple but fun, and the enemies add the sense of urgency that was missing from the last version.
If you’re extending the game, I have two suggestions: one, in addition to trade goods, allow buying boxes of a given resource between runs. These would have a limited number of uses (but more than one), after which they would become normal random slots. Choices might include “super” versions of basic items, providing a boost to combos they’re used in. If the player is given a distance and danger rating between runs, then they can select what resources to purchase as well to help them out; you could even add perishable resources, which are worth more must be delivered within some time limit.
Of course, you probably have plenty of ideas of your own on where you’ll go with this, so feel free to ignore everything except the first paragraph of this post. Fun little game!
Those are great ideas. Surprisingly enough I hadn’t even thought of buying semi-temporary super-items, and I’ll probably use it.
For the distance and danger, I had huge plans that incorporated them. Even as I thought about it though I could tell it was too large-scale to program in two days.
Ideally, this game was to be played in a solar system, and the paths that you take are between the planets. These paths vary in distance and difficulty (asteroid belts, pirates, etc) and you stock up on varying supplies (also, per your suggestion, super ingredients and perishables) and upgrade your ship. All these prices depend on which planet you are on. You then look at the planets, see where you can sell your stuff, and pick a route.
This would take place in a different solar system than ours to allow for possibly more than one asteroid belt and more planets. Nine planets and a mini-planet (Sol) could work, but might limit the difficulty curve of the game.
Definitely not ignoring your middle paragraph
. Thanks for the comment!
Ok, I added some sound effects–they were made with a microphone and processing, and you’ll see why I have to say this now when you hear the sound. Nothing much, but better than nothing. (And if you’d rather have nothing, just turn off your speakers. Really, I don’t mind
)
Still no music. Tried to compose something spacey in both musagi and garage band, but nothing came of it.
I also tweaked the planet at the end of the stage to make it actually end up below your ship mathematically, and made the death screen show your final money balance. Also, on the progress bar I added little triangular enemy markers, so you can see when you have to face waves of the evil red things. If you noticed, earlier the shield regeneration was acting a bit weird, but the problem was just that the bar wasn’t being updated (the player shield variable was being regenerated, just not the bar) and it’s fixed now.