4x4x4 Challege - June 2021 - Head-to-Head Fruit Popper
Posted: Sun Jun 06, 2021 5:53 pm
This was the set of emojis I got after the fifth or sixth try (there was one before this with an Octopus and Car which I liked, but it had some sort of zodiac sign emoji that I had no clue what to do with, so I bailed on it).
Code: Select all
******** GDR 4x4x4 Design Challenge - June 2021 *****************************
Emojis Selected: Tomato / Thumbtack / Two Users / Grapes
-------- CONCEPT ------------------------------------------------------------
"Head-to-Head Fruit Popper"
Play against a friend (or the computer), squaring-off in a garden with fruit
magically growing quickly and at random. Be the fastest to pop the most fruit
with your magical thumb-tack within the time limit! Your thumb-tack has been
magically attuned to only one of two different types of fruit, while your
opponent will be seeking out the opposite type of fruit.
-------- PRESENTATION -------------------------------------------------------
2D, top-down, single-screen arena. Kind of like Bomberman without the bombs?
Players represented by character sprites that they control directly to move
around the arena. The arena will have different (non-hazardous?) obstacles
(walls), and fruit will be randomly spawning / dropping-in / etc as the game
timer counts down.
16x16 sprites/tiles.
MS-DOS VGA Mode 13h.
-------- CONTROLS -----------------------------------------------------------
Keyboard.
Single-player:
- Arrow keys for movement, 4 directional, N/S/E/W.
- Spacebar to use thumb-tack.
Two-player:
- Player 1:
- Arrow keys / Num-pad for movement.
- Num-pad 0 / Num-pad Enter to use thumb-tack.
- Player 2:
- ASDW for movement
- Spacebar to use thumb-tack.
Nice extra: Allow use of game controller (e.g. Gravis Gamepad).
-------- GAMEPLAY -----------------------------------------------------------
Players select their preferred fruit. Cannot be the same selection, so once
one player selects a fruit, the other player is automatically assigned the
other. Tomato or Grape.
Once the match begins, the main objective is to pop the most fruit matching
the player's fruit of choice.
Popping the right fruit does not cause any penalty or other sort of effect
to the other player, it simply increments the players score and the fruit
vanishes.
Popping the wrong fruit does not cause a penalty for the player that popped
it, but the player receives no score for it.
However, popping the wrong fruit causes your magically attuned thumbtack to
trigger the fruit to explode, which does not harm you, but will "splash"
toxic fruit juice over a 3x3 (TBD) tile area which will debuff the other
player if they are within that area, causing them to move at 50% speed until
the debuff wears off (2-3 seconds? TBD). Additionally, any other fruit of the
same type within a 5x5 (TBD) tile area will magically vanish. So players may
want to strategically pop the other players fruit to deny them score and slow
them down.
Players can "prick" each other with their thumbtacks. Players cannot be killed
but they can use their thumbtacks to push the other player out of the way
slightly, possibly also throwing them off a bit in the process. Pricking
another player causes them to get pushed ahead by 1-2 tiles, but causes no
other harm.
Matches are timed. Once the match is over, the score is displayed, and the
winner is the player who popped the most fruit.
-------- EXTRAS -------------------------------------------------------------
If time allows ...
- Sound effects. Use of Qbasic "SoundLab" utility to generate sound effects?
- Gravis Gamepad support
- Network play? Use of mTCP? Almost certainly won't have time for this ...
- Random "enemies" that spawn and snatch fruit before the players can get
them? Mutant-oversized fruit flys perhaps ... ? Or some kind of Locust
swarm maybe?
I will be using my 486 DOS PC for this and will be restricting myself to "period-appropriate" tooling because it is fun to do so. My battlestation is ready.
- 80486 DX2 @ 66MHz, 16MB RAM, S3 VLB Graphics, SB16 (and also a GUS card, and Roland SC, but will almost certainly not utilize either of those .. maybe next time)
- MS-DOS 6.22
- Borland Turbo Pascal v7.0
- Deluxe Paint II Enhanced v2.3
I will however be periodically testing builds on a modern PC against DOSBox, since this is obviously what the majority of people would need to use to play (except if they are weirdos like me who keep retro computer stuff around at home). DOSBox compatibility is a must-have of course.
While I do not consider myself an artist, I will be challenging myself to draw all the artwork I need myself. So no free assets from OpenGameArt or wherever else. I did used to draw a bunch way back in elementary school, so I guess I do have some artistic ability, but it has not been exercised in decades. So I am expecting "programmer art" will result here. I'll be using Deluxe Paint II for all my artwork.
I am going to declare up front that I will be utilizing my own "GDlib" library that I've been very slowly developing over the past two-ish years here and there. It is not complete yet at all (totally missing sound support, still missing gamepad support, some more graphics stuff I wanted to get done, no EMS/XMS support yet ...) but the majority of the basics that I will need are present. And lets be honest ... what better way to learn what your library is missing than to try it out yourself by building something with it?
GDlib sources available here (because I am apparently too lazy to put it on Github or something).
I know it's not really required, but because it's fun (to me), as I make progress during the month and post updates here, each time I will be sharing a complete copy of all my working files (code, assets, etc) here. This is what my source tree is comprised of currently.