Page 5 of 5

Re: LASEReyes

Posted: Thu Nov 03, 2022 11:24 pm
by Jedi QuestMaster
Not a big update, but I finally implemented the current player sprites and blocks into GMStudio (everything before was either GM5.0 or mockups).


Here's a little interactive test demo I set up: ... share_link

The LASER hasn't been implemented yet (on purpose). I wanted to make sure the bricks and pillars looked right first, no matter where they are positioned on screen and what surrounds them. I also wanted to make sure the player moved fluidly. Only the keyboard/mouse is set up for this demo:

• use SPACE, ENTER, LEFT, or RIGHT to change options
left mouse click to place or delete a brick
right mouse click to place or delete a pillar
• you can't place or delete pushable pillars, but you can push them! (they look slightly different from non-pushable pillars
• press ESCAPE to go back to the options screen

I don't intend to have diagonal movement in the final game, though diagonal movement is in this demo (and graphically glitches the player).

Also, see here how I'd like to implement a 4-button mode.

Re: LASEReyes

Posted: Fri Nov 04, 2022 1:55 am
by pubby
I didn't pay much attention to the graphics when I first saw this thread, but in your demo they look nice. The perspective effect is cool, and the animations are smooth, so good job!

Re: LASEReyes

Posted: Thu Nov 24, 2022 10:54 pm
by Jedi QuestMaster
Next step is to reintroduce the laser for my new setup:

Using background tiles for the laser poses a small issue when the laser collides with blocks:
lasereyes_laser0.png (567 Bytes) Viewed 242 times
The laser can't overlap, so it has to just stop where it meets a wall. So what I've decided to do was add an animated 'spark' or 'smoke' sprite that also doubles as an indicator whether the laser is doing damage or not:
lasereyes_laser1.gif (660 Bytes) Viewed 242 times
The spark is a single sprite (8x8), the smoke is two sprites (8x16).

Now in order to make the laser destroying the bricks convincing, I need to add damage to the brick walls. The brick walls are already taking up 22 tiles. So recreating cracked bricks would take another 22 tiles (and that's assuming I don't intend to make two sets of minor cracked and very badly cracked bricks). Fortunately I had the idea ahead of time to not only draw one set of cracked bricks, but also to draw less cracked bricks compared to their non-cracked counterparts. It's hard to explain what I did, but here's a visual:
lasereyes_cracked_bricks0.png (1.05 KiB) Viewed 242 times
The left two columns are for bricks with the left perspective, the two center are for the center, and the right two are for the right perspective. When a brick wall takes enough damage, the top left and bottom right tiles of the 2x2 background appear cracked (the top row). When a brick takes significant damage, all tiles appear cracked (bottom row). Notice the missing space in column two? It's redundant--it's the same as the tiles to the left of it. Also, this entire set is only comprised of 6 unique tiles! :o For once, being lazy has its benefits.

Lastly, what happens when the bricks are finally completely destroyed? I opted for the SMB style of brick sprites flying around instead of the Bomberman-esque method of the bricks just obliterating (it seemed more promising). This would add one sprite tile flipped and multiplied four times: Image

Here it is in action: Image

As you can see, the sprites had to be a different color, but I think the burnt brown bricks work here.

Here's the test demo: ... share_link

Re: LASEReyes

Posted: Fri Nov 25, 2022 6:31 pm
by dink
Really dig the laser effect in your animated gif, nice work!! :)

Re: LASEReyes

Posted: Sat Dec 03, 2022 12:13 am
by Jedi QuestMaster
I didn't like how the bomb explosion looked, so I redid it:

Old - 48 tiles:

New - 23 tiles (including bomb):
bomb.gif (4.31 KiB) Viewed 62 times
This is supposed to use bg tiles, it switches from the first subpalette (gray) to the second (red), then back to the first: Image It never uses more than one at the same time.

Re: LASEReyes

Posted: Sat Dec 03, 2022 10:08 am
by tokumaru
That's definitely an improvement! Are you sure this can be done using background tiles? Won't this effect ever have to overlap walls, lasers an other things also using the background?

Re: LASEReyes

Posted: Sat Dec 03, 2022 11:05 am
by Drag
I like everything I've seen so far. :D
tokumaru wrote: Sat Dec 03, 2022 10:08 am Won't this effect ever have to overlap walls, lasers an other things also using the background?
I imagine it working like Bomberman, where the explosion is raycasted and just simply stops when it encounters something it can't eliminate. I think it might also be reasonable to assume that lasers wouldn't penetrate the explosion cloud until it's cleared.
Quick sheets - page 14.png