CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

A place to house devlogs of member’s projects.
Post Reply
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Image

This is the emoji I ended up going with from the randomizer. I'm going to abandon my SDL-based framework and give Raylib a try. This will be a quick n' dirty project, and I'm going to re=use some existing assets that I think may fit the bill. That was a secondary consideration, after I had decided on a theme and had no clue how to proceed :D

I'll be posting random screenshots as I go. Some of it will be experimental shite as I continue to figure out what the lib can do, and the best way to go about things.

Code: Select all

Concept: Curry God's favor by doing his work, smiting people if
         they appear to be involved with anything starting with
         the letter B, or anything RED.
         
Presentation: Top-down traditional 2D.
              Town is drawn, and sprites on top of that.
              Hover the mouse over target to see their attributes.
              Score and attack meter are shown at top of screen

Controls: Mouse aims
          Hold over target to see attributes
          Left click for lightning
          Right click for tornado
          Escape to exit game
          
Objective: Smite as many targets as possible in the time limit
           Smiting good target = score + 2
           Smiting innocent target = score - 1
           Game ends when time runs out
           
Title Screen: Shows random spot in town with random people walking
              Shows title block, with simple animation
              [ CLICK to START ]
              
Game over Screen: Shows score
                  Shows good hits
                  Shows bad hits
                  Shows misses
                  gives title based off stats
                  RETURNS TO TITLE SCREEN WHEN DONE
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Image

I got a ton of stuff up and going already. Gotta say thus far I'm super impressed with Raylib. It's like the author read my mind and put all the stuff I frequently use in a single lib, and made it dirt-simple to use. I'm sure a week from now I'll be all like "It's shit, mate. Moving on..." like I always do, but for now I'm actually enjoying game development. Imagine that.

So I've got a texture you can scroll across, with various text displays up top (for debugging, mostly), and a scrolling bulletin at the bottom of the screen. I can click on the screen, and it drops a runner that dashes to the right, before eventually running out of stamina, and fading out. I also took my 16x16 pixel font from the GDR Fauxtro, and got it loaded into the program.

Next, I'll be putting in a better placeholder texture with the map of the town, and creating spawn points for random citizens. There will also be bad guys to zap, and they will beat the fuck out of regular citizens if they come into contact with them. This is bad and costs you points. But you get more points for zapping regular citizens who are unworthy, because apparently this god is like sorta-Catholic or something, and punishing normal people seems totally legit. Hell if I know. Sadly, I have to resume working for The Man™ tomorrow, so expect progress to slow to a crawl until next weekend.
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Image

Worked up a simple placeholder texture to get a sense of scale for what I'll eventually be spriting. I've got three invisible spawners spewing out pedestrians, a rolling score meter in the upper-right, and a camera that controls pretty well with arrow keys (will add WASD later). I didn't get nearly as much done as I wanted to, but this was a tough evening (thanks, DST) and work ran late. Hopefully in a few days I'll work on getting thugs integrated into the game, and then the primary actions for the player (tornados and lightning).
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Image

Excellent progress today!

I started out by getting some emojis into a sprite sheet with alpha, then draw up a quick thought bubble that pops up when the mouse hovers over a character. This will contain what they are thinking about. For now all I have loaded are food emoji (with one exception) so they are apparently all quite hungry. I finished up the status bar at the top of the page, which has two attack meters (one for lightning, and another for tornadoes), the amount of time you have left in the game, and your total score. I fixed a minor bug in the rolling score that could cause it to get off my a single digit (hard to care about when there's 8 digits in your score, but...).

There's now a pair of keys you can press to drastically slow down time, allowing your to get your aiming just right. There's no limit to usage of this, although your game will creep along while its active. I suddenly realized I didn't have z-sorting of sprites (as I started from scratch) so I hacked that in, and faded out text to the bulletins at the bottom of the screen when they expire. These should pop up when thugs spawn, or other interesting events occur. We'll see how much time I get to polish this entry... right now I don't have any other events mapped out.

Thugs now spawn (the red guys), and they hunt an area around their spawn point, beating anyone they come across to death. This causes you to lose score each time, so you'll want to zap their asses as soon as you spot them. As you can see in the screenshot, the thug doesn't really have much on his mind other than beating people to death.
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Image

I haven't had much time to work lately, but I did get in some good progress tonight. I've got a working title screen with a tutorial panel, and some new animations for characters croaking from various conditions, and a basic-ass lightning strike going on. I should try and wrap this up over the weekend, although I suspect I'll still have a few details lacking going into next week.
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Image

Made great progress again yesterday (seems like I'm forming a habit lol). Got tornadoes into the game, which wander around and kill anything that gets close. Proper score tracking is in, along with a full game loop consisting of a title screen, leading into a tutorial screen, then gameplay until time runs out. If player score is high enough, after the game over summary screen they will be prompted to enter their initials for the high score, which is recorded. Then you go back to the title screen. The tutorial doesn't show up after the first time you see it during a play session.

I also threw in a bunch of sound effects, but I'm still working on that. Next up is expanding the play area and removing all of my placeholder art. I'm not sure if I'll bother putting any music in. So, almost done :D

I haven't run into any issues using Raylib. Development has been smooth and easy.
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Got the town textured properly, and will work in a little more polish before the end. I still need to do something useful with the bulletins at the bottom of the screen. I intended to use them to call out high-value targets, but I'm not so sure just yet.
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Image Image

I finished my entry last night, or early this morning, depending on how you wish to look at things. I added in high value targets, which have a fairly low spawn rate (>0.1% chance to spawn) but given that there's usually 600 or so doods on the map at any moment, you'll see about half a dozen during a single game. They give a 4x score bonus when you get a good kill. I also added in negative score streaks, so bad kills stack a negative bonus that keeps growing.

My issue with making the game was how to handle the tornadoes. The decision I finally came to is that the player should figure out it's best to use them to clean up groups of bad actors. To that end, I've introduced random riot spawns, where groups of 10 thugs appear all at once and begin terrorizing the locals. Since they hang out in a relatively small area, you can throw down a few tornadoes and mop 'em up quickly. You don't want to use them otherwise, because it's too easy to get bad kills with them -- and I increased the kill radius for both weapons.

I feel like the HVTs and riots, mostly the latter, were the missing elements for a decent mini-game. I didn't run into any major issues with Raylib, although I'm still exploring what type of control I have at the pixel level, and how much I'll have to adjust my development process to accommodate my needs.
User avatar
Sirocco
Site Admin
Posts: 806
Joined: Fri Feb 12, 2021 10:25 pm
Location: Outer Demoscenia
Contact:

Re: CC-001 - Tornado Red Bee Thumbs Up Lightning Strike

Post by Sirocco »

Now that I've put this one to bed, I'm continuing to mess about with Raylib, dipping my toes once more into the world of shaders.

I've largely avoided them, because it's bullshit and I don't wanna. Really the whole thing since GPUs became the norm is a gigantic kludge that just sucks the fun out of pushing pixels, because you're aggressively encouraged at every given turn to do anything but push pixels. Modern graphic programming is large about setting up prefabricated assets and executing glorified macros to overlay them on-screen in some sensible order. So it seems slightly less unreasonable, given all that, that in order to modify things you'd have to do something janky like.... I dunno.... write a tiny program (possibly in a different language) that would execute per-pixel and change how things turn out.

And truly, if you went back to 1990 and told me this would happen, I would have called you a smeg head, and perhaps cried myself to sleep. I still dream of the day when I can just draw pixels super fucking fast, but those days are just never going to come about, so it's off to the land of fucktardation (read: shaders) we go. It also occurs to me that I haven't ranted in quite a while.

That felt abnormally good. I should do this more often.
Post Reply