CRISPR Crunch

2022

Project overview - table of contents

game presentation – brief presentation of crispr crunch and my internship context.
tasks showcase – a few gameplay implementations accompanied by visuals and code snippets.
 • pulse effect – visual effect indicating which nucleotideS can be selected next
 • jokerS randomization – Added a system that makes JOKERS (i.e. nucleotides that can replace any color) appear randomly.
 • bonus: shield – new in-game bonus that creates a barrier for a few seconds, that can prevent one sequence from infecting our cell.
 • Bonus: joker factory – new in-game bonus that randomly adds joker nucleotides (i.e. nucleotides that can replace any color).
 • Bonus: multiplier factory – new in-game bonus that randomly adds multiple currency multipliers in the grid.
GAME PRESENTATION
Project Info
Role: gameplay developer
Team Size: ~5
internship duration: 6 months
language: TYPESCRIPT
game ENGINE: booyah
render engine: Pixi.js
ABOUT
CRISPR CRUNCH IS a puzzle game taking place in the bacteria world. it was Developed by play curious and released in 2023.
each level presents you with a cell (grid) filled with colored nucleotides, and has multiple viruses injecting their sequence in it. your role, just as the crispr system in real life, is to destroy the virus. to do that, you have to find its matching sequence in the grid before it has a chance to infect the cell, so you must be fast !
crispr crunch is available for free on the play store.
TASKS SHOWCASE
pulse effect
The goal was to create a simple visual highlight for the next possible moves in the current path.
First, using tweens and easing functions, I recreated a pulse effect designed by the team’s graphic designer (animation.ts).
Then, I added a boolean to determine whether the effect should be played or not, with its value updated for each nucleotide whenever the current path changes (path.ts).
Finally, the nucleotide itself triggers the pulse animation if all conditions are met (nucleotide.ts).
Jokers randomization
Jokers are nucleotides that can replace any color in a sequence.
They have their own type and were initially added only by specifying this type in the grid’s array, which caused jokers to appear constantly in the same grid cell — making levels a little too easy. We wanted to keep that option available, so the type was preserved.
I then added a 5% chance for any normal nucleotide to be converted into a joker, and inversely, any used joker will turn back into a normal nucleotide (which in turn has a 5% chance to become a joker again, following the same condition order, in which case there won't be any visual switch).
Bonus: Shield
the shield bonus prevents one sequence from dealing damage when it hits the cell.
All it required was adding a condition to the method that handles a sequence hitting the cell: if there’s no shield, execute the normal fall behavior; if there is a shield, deactivate it and execute the normal behavior without triggering the damage method.
BONUS: joker factory
The Joker Factory bonus spawns multiple jokers randomly in the grid, replacing normal nucleotides.
the more nucleotides the grid contains, the more jokers can appear — we settled on a ratio of 1 joker per 5 nucleotides.
There’s a condition to check if the grid is already full of jokers, in which case the bonus is unusable.
Once the nucleotides are randomly selected, a switch-type animation is played for each one sequentially, which also updates their type internally.

BONUS: multiplier factory
The Multiplier Factory bonus spawns multiple multipliers randomly in the grid, but only on normal nucleotides.
As with the Joker Factory bonus, the more normal nucleotides there are on the grid, the more multipliers can appear — using the same 1/5 ratio.
There’s a condition to check if there is at least one normal nucleotide without a multiplier; if not, the bonus is unusable.
Once the nucleotides are randomly selected, a multiplier appearance animation is played for each one sequentially, which also updates their multiplier internally.
Back to Top