Jump to content

[WIP] Manatee Madness!


Recommended Posts

GAME: Manatee Madness!


BACKGROUND: When I started working on Bag Boy! I didn't know much about programming beyond what I knew from when I was younger (which was not that much).  As I started to program more, I had made several test programs to see if ideas would work or to just practice programming so that I can utilize something in Bag Boy!  For example, I had done this when I switched from the standard kernel to DPC+.  I tried a few of the other kernels to see what would work best, making several basic games to test some gameplay elements out.  As Bag Boy! got more complex, sometimes I would change the code around multiple times to get something to work only to scrap the entire idea and go in a completely different direction.  This is where my test programs would come into play.  One such test program - Manatee Madness! - seemed to take a life of its own.  

I have decided to share this program, as it has started to resemble a game versus some basic code examples.  This game is by far not complete but many of the elements I was working on in this will eventually show up in Bag Boy!, primarily the movement of the sprites and changing of the stages.


GAMEPLAY: In Manatee Madness!, you play as a manatee getting through its day in a typical Florida waterway.  You must watch your health and your oxygen levels.  While you spend your day trying relax, eating sea grass and surfacing for oxygen, you must avoid pesky tourists and aggressive alligators, speedboats and swimmers, fishermen, jellyfish and poisonous red tide.


Each obstacle will provide a challenge for your manatee during different parts of the day.  Swimmers in inflatable tubes and speedboats can prevent you from surfacing or injure you with their propellers; alligators can hurt you and tourists grab you; red tide can make you sick; you can get stuck in the fisherman's fishing line; and you can get stung by jellyfish on your way to the surface.


I was putting in as an easy play option that grabbing the bubbles that float up to the top can help provide oxygen, as I had found my kids loved swimming around grabbing the bubbles and had no desire to surface for air.


TO DO/FIX:  Currently the interactions with the various sprites have no impact except with the sea grass and the fishing line.  There is an intermittent over cycle issue I believe with the red tide sprites. Once those issues are worked out then it is figuring out appropriate timing for each part of the day and difficulty progression. I was also trying to work on sound effects in this program.  


Once I figure things out in this game, I will use the code in Bag Boy! While I haven't updated Bag Boy! in months, I have been working on it quietly in the background.  Just thought I'd share this as I was having fun with this for some time!








  • Like 10
Link to comment
Share on other sites



A lot of times I will think of gameplay elements from my favorite games and if they may apply in a certain setting. For instance, I was playing around with the manatee swimming and was also testing using repetition restrainers. When I first started it I was thinking of Joust.


As for the movement for the other sprites, I have been experimenting with how things move in relation to each other, like the swimmer and the alligator - if you get the swimmer and the alligator in close proximity the alligator will attack the swimmer and go into a death roll freeing up the screen so you can surface.


Link to comment
Share on other sites

Some things I want to learn with this program or plan to utilize in some form in Bag Boy (BB):


•With BB I relied more soon defining variables. With Manatee Madness (MM) I started using bits to turn on or off with movement. I did this with the red tide. If it hits one side of the screen it changes direction. Also practicing with repetition restrainers (something I would use in BB when hit by a car so that when you respawn you do not immediately run back into traffic). 


•The stage select I had been working on in MM is the main code I was working on. In BB, I had it just switch after a certain amount of carts are collected. The big problem I had was that the car code was some of my earliest code so each stage essentially had the same interactions. This caused a problem when I wanted to make the Black Friday stage. In MM I clear everything up so that I can make each stage different. 


•I had also practiced using missiles and balls. In BB I think I initially screwed up my code when I first tried and I never revisited it. In MM I figured some things out, using the ball and missiles for bubbles and the fishing line. I may use these in BB for things like rain or obstacles.


•I had tried using temp variable checks in MM, where it is used to prevent the manatee from just surfing the bottom of the screen to eat bubbles for air. In MM air is only awarded if a bubble is grabbed in a certain range and in a certain time. I plan on trying to use this for the energy drink power up in BB somehow. 


•I am also working to try and use pfpixels in MM, particularly with the inflatable tube people (dropping trash to avoid) or the good diver (dropping medicine) so that I don't have a bunch of flicker. Still haven't worked out the details and may scrap this idea altogether but I still want to learn it since this was something I toyed with in the first incarnation of BB.





Link to comment
Share on other sites

I got all the pieces in play. I just gotta figure out how they work but I have an idea:


In the morning you have the gator and the swimmer. They both move in your direction but I'm thinking the gator may "bite" you while the swimmer will try to "grab" you causing you to break free.


In the early afternoon you have the tubes drifting back and forth obstructing the top while red tide bounces back and forth below. If you touch it in thinking it would reduce oxygen levels. 


In the late afternoon you would still have red tide but now a speedboat.  While it obstructs the surface in a different movement, the propeller can injure the manatee.


In the evening I have the fisherman. He will move around and drop his line. Currently, if you touch his fishing line you get stuck and have to drop down to get free. 


At night you have jellyfish that will have more erratic swimming patterns to dodge.


All this occurs while you go back and forth from eating and surfacing. I am trying to figure out how the good diver works. Im thinking he comes by at random and drops benefits, like bonuses or health benefits.


Once a day is complete it starts back over. Then I may increase difficulty by increasing speed or increase the copies of the sprites like the tubes or the jellyfish or red tide. I haven't gotten that far...



Link to comment
Share on other sites

11 hours ago, CartoonDan said:

This is a really fun game. I like all the small details you added like the plants growing, the manatees' head popping out of the water, and the alligator taking out the diver. 

Some of the details were a result of playing around to see what worked and how I can use the code elsewhere.


The grass came from me working on collisions with copies of sprites. I wanted to use this with the car collisions in BB but in this game, I found you could just sweep the bottom for points. I eliminated the copies and instead made it grow in random locations to give time in between scoring.


The alligator attack resulted from them closing in on the manatee. I felt that it got to the point where the manatee would kind of get cornered. I also wanted to limit flicker so I try to keep the two sprites separated as long as possible but I figured if the alligator quickly took out the diver and reset their positions it would help balance gameplay and flicker.


The head popping out of the water is one of my favorites. I needed a way to clearly defined how the manatee gets oxygen. I didn't want someone to just go above the y coordinates and quickly replenish their health, especially if they must dodge boats and swimmers. I have it where you have to keep hitting the fire button to swim above that point so you have to plan your surfacing. I also liked going behind the playfield to add dimension with the playfield grass at the bottom. But because I use the playfield, this is why the manatees movement is limited to the center of the screen. 


One other small detail I added were fireflies at night. I was trying to play around with sprites having gradual color changes when I thought to use fireflies at the top but when considering the size of the Sprite being a single pixel and the duration it is on the screen I thought having it fade in and out wasn't necessary.

  • Like 1
Link to comment
Share on other sites

Thanks! I was hoping on working on it last week on vacation but my kid was sick. Hoping to make some progress real soon on both BB and MM. Glad to see the positive responses. I tend to have a bit of self doubt due to my lack of experience.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...