0 Favourites

# How do I make power-ups for a match 3 game?

• 8 posts
• Hello all,

I'm still quite new to Construct 2 and I've been following a tutorial on how to make a match 3 game. This is the link if anyone is interested in taking a look.

I would like to make the game more interesting by throwing in random speciality blocks. I've created a pink block, but I need help with how to make them rare and how to make it explode to destroy many neighboring blocks. Any help is appreciated! thanks!

• A quick note about rare blocks.

I've scanned over the CAPX and you're are using random to select which blocks are spawned which is the way to go. I personally cheat to use "weighted" random's by using the choose() expression.

You could use something like choose(1,1,1,2,2,2,3,3,3,4,4,4,5,5,5,10) Construct will then randomly choose a value from the comma separated list.

All normal blocks would have the same chance of being picked while the special block (10 in the list) would have a rarer chance of being picked. You'd have to tweak the values to get the correct rarity but I think it's a pretty easy way to get this sort effect.

• I will be playing around with it. Thanks so much for the tip!

• Minor I've tried what you said about angeltekno project, but still appear the same colors for the blocks.

There are 18 different frames, and the 19th is for the "special" block. I used choose (1, 1, 2, 2, 3, 3, .......) and nothing happened. I even used (1,1,1,1,1,1,1,1,1,1, 2, 3....) but all the blocks appeared with the same frequency. I think the problem is the formula for setting the animation frame which is: (Block.Color-1)*3+1, but if I change it, the game doesn´t work properly.

Moreover, right now the special block doesn´t match with any other special block.

Any idea of what the problem is?

Thank you!

• Not sure what the problem is. Are you changing the right part for the spawning of blocks. Also don't forget that there are only 6 types of normal block plus the special, the other blocks are for "different states" for example for dragging block 1 it shows frame 2.

[attachment=0:3aj0a0ct][/attachment:3aj0a0ct]

That seems to work when I test it. You might have to play around with the numbers to get the right frequency of special blocks to normal.

Another feature of the original events is that it removes matches when spawning the new blocks, which may give the impression that the frequency of blocks is unchanging. If you want to play with that it is event 39 in the event sheet.

As for the special block I think it does nothing because angeltekno hadn't got spawning working as planned yet. I'm also guessing that the special block may have been a wild card for example if you match 2 purple then a special it would count as 3 purple. But like I said I'm not sure what the original idea was for the special block.

• Thank you Minor for your quick answer. I tried again but I end the choose function with one 7 instead of 19, because of the formula to set up the frame animation, and it works.

Now I´ll try to make an event to turn the block into a bomb.

Thank you again

Develop games in your browser. Powerful, performant & highly capable.

Construct 3 users don't see these ads
• Might be a little late but...

I use a subevent to

check for floor(random(50)) = 1 then spawn my special block.

Else if floor(random(100)) = 1 then spawn my really special block.

Else spawn a random normal block.

The random number is the 1 in x odds of picking it.

My first two colors are the specials so when assigning a random normal block color i use set Color to floor(random(3,numTiles+1))

• It's been awhile since I've messed with my game. TheBougeRat could you tell me a little more how to spawn the special block? Thanks!

• 8 posts