Game Designer & Unity Developer

RJ, Brazil | UTC-03:00

📫rogeregito@outlook.com


Creating games with heart and soul

Portfolio

Close the game?

Vivenciando o Passado

The Valongo bay in 1830 rebuilt in 3D, with sailboats on the water in front of a row of colonial houses
Date
2025
Team
18+
Client
UFF
Platforms
In Development · Private
Built with
FMOD · Unity · XR Interaction Toolkit
DesignInteraction Design · Level Design
ProgrammingGameplay Programming · Tools Programming · UI Programming
ArtTechnical Art
ProductionProject Management
GenresEducational · VR

Vivenciando o Passado (Experiencing the Past) is an educational virtual reality experience for Meta Quest 3 about the Atlantic slave trade, set in Rio de Janeiro's Valongo complex in 1830. The player lives it in first person, from a child's point of view.

I lead its development at UFF's Media Lab, between the historians who research it and the programmers who build it.

The project

Vivenciando o Passado is a research project at Universidade Federal Fluminense, under its UNESCO Chair on Global and Social Inequalities. Historians and computing students are building an immersive VR experience for Meta Quest 3 about the Atlantic slave trade and Rio de Janeiro’s Valongo complex, where enslaved Africans were landed and sold, as it stood in 1830.

The project poster at SBPC 2026

It isn’t a game, a film or a tour. The player takes part in scenes from a child’s point of view, interacting with characters whose words and surroundings come from historical documentation.

My role

I’m the project lead and one of its developers. My job is to turn the historians’ research into an experience that runs on the headset, and to coordinate the programmers building it.

What I did

At the Instituto de História booth. I'm third from the left.

Stepping up to lead. I didn’t join as project lead. We’re all busy people, and keeping the team organized and motivated, the project afloat and the clients satisfied was hard, so I stepped up and started organizing everything. I led four programmers working on Git feature branches, and turned the research team’s documentation into 12 scheduled technical milestones.

Making the history work in VR. The historians are very particular about the experience they want, and I negotiate with them a lot to keep it viable in VR. In one scene the player walks in a line of enslaved people and can only move forward, but it’s the player who moves the whole line forward, and their hands are left untied, because in VR the player needs their hands free.

The hardest part is dialogue. Every line has to be true to the period and teach something, so it goes through many people before it reaches us, and very few lines have arrived so far.

The shop scene: a girl asks the player to take the coal from her hand

The first version, 2025. I set up the basic VR controls, added the characters and idle animations to the slave shop scene, and built the dialogue system. It had trigger zones, speech bubbles that follow the actors, animations during dialogue, and an importer that pulled the historians’ lines from Google Sheets. I also added the scene timer.

The second version, 2026. I rigged most of the characters and set up their animators. In the shop scene I added walking, teleporting, the player’s hands, collision with NPCs and the final cutscene. I also built the Valongo scene and scene 3, and added lost objects to find.

Rebuilding the codebase. We weren’t following a shared structure, and the code was getting hard to change. The first code had one script per scene, with that scene’s script written into it, so changing a line of dialogue meant editing C#. In September 2026 I rewrote every script in the project, 81 files and 5,742 lines, around three ideas:

  • Characters, places, gestures, signals and chapters are ScriptableObject assets that scene components point to, so a scene’s script never references scene objects directly. The project has 17 characters, 37 gestures and 16 places.
  • Scene scripts are data. A sequence is a list of steps edited in the Inspector, built from 12 step types such as Say, MoveTo, PlayGesture, TeleportPlayer and WaitForSignal, with a custom editor for authoring them.
  • Session systems start themselves before any scene loads, so pressing Play in any scene runs the same systems as a real build.

I backed the rewrite with 13 automated tests, and wrote a README in Portuguese that walks the team through everyday tasks without writing new code. Non-programmers now have a much easier time writing sequences and dialogue, which make up the flow of every scene.

Outcome

A congress participant trying it

The experience was exhibited to the public at SBPC 2026, Brazil’s national science congress, hosted at UFF in July 2026. Kids, teenagers and adults tried it and enjoyed it.

A team member trying it at the booth

I had told the team to keep everything as simple as possible, and it paid off. Sessions lasted about a minute, nobody felt any discomfort, and we didn’t need to teach teleporting at all.

Me explaining the controls

Watching people play showed us one problem: with the headset on, people couldn’t find the trigger, and I had to guide their fingers to it. We’re changing how the experience shows its controls because of that.

Screenshots from the project’s partial report. SBPC 2026 photos from the Instituto de História’s official Instagram, @iht_uff, in a post with @escrithashistoriauff and @nereidauff.

Cursed Blight

Cursed Blight key art
Date
2026
Team
4
Client
Ludomancer Studio
Platform
itch.io
Built with
Unity
DesignEconomy Design · Encounter Design · Level Design · Narrative Design · Progression Design · Systems Design · UI/UX Design · Writing
ProgrammingGameplay Programming · UI Programming
ArtArt Direction
AudioAudio Editing · Audio Implementation
ProductionTrailer Production
GenreDungeon Crawler

Cursed Blight is a grim-dark dungeon crawler where every encounter can kill you, so the best fight is the one you avoid.

I turned Ludomancer Studio's one-page brief into the full game in about a month, as its sole designer and programmer, and directed the art with our artist.

The project

Cursed Blight is a short grim-dark dungeon crawler made at Ludomancer Studio by a team of four, with a producer and an artist alongside me. The studio handed me a one-page brief built on Mörk Borg’s tabletop rules.

My role

I was the game’s sole designer and programmer. My job was to design the full game from that brief, build it, and ship it in about a month.

What I did

I wrote the full GDD from the one-page brief.

Cultists guarding a gate

From stealth to one tile of sight. To set the game apart from other dungeon crawlers and push it toward horror, my first idea was torchlight stealth. The client and I agreed it couldn’t be built in the time we had, so it never reached a prototype. I simplified it instead: the game is on a grid, enemies roam and only move when the player moves, and they see just one tile ahead. Waiting in place and letting them pass is always an option. The best fight is often the one you avoid.

I designed the level and the enemy routes around that short sight and those roaming enemies.

A chest, and the next upgrade inside it

Simple enough for people who don’t play RPGs. I wanted someone who never plays RPGs to be able to pick this one up. So instead of loot and an inventory, the chests hold upgrades in the style of Metroid or Mega Man. They alternate between weapon and armor, from a femur up to a cleaver, so every chest makes you stronger and there’s nothing to manage.

Only the stats survived from the tabletop. From Mörk Borg’s rules we kept the four stats and little else. Combat is one roll to hit, a d20 plus a stat, then the weapon’s damage die minus the armor’s die. I adapted Presence to the game’s own economy: a higher Presence means the true ending asks for less Flesh and each piece heals more, but you can carry less of it.

Flesh, the game's only resource

A heal with a price. Combat hurts, so the game needed healing, but I wanted healing to carry pressure and risk. Flesh heals 2d4. Two dice make the middle results likely, which is a little friendlier, but a piece can still heal as little as 2. You also never know where the next one is.

Enemies drop Flesh, so every kill pays out right away. The fight can also cost more health than the Flesh gives back.

Flesh is also the price of the true ending. The moment you realize that, the game gets harder: now you ration your heals, and a lucky strike can kill you.

Character creation

Words and art. I wrote the story and every line of in-game text, specced every screen, and directed the art with our artist.

The HUD: minimap, log, stats and possessions

Programming. I programmed the entire game in Unity, 44 C# scripts and about 3,200 lines. That covers grid step movement, enemy navigation that switches from roaming waypoints to combat, raycast enemy vision that walls block, and weapons, armor, enemies, upgrades and player stats as ScriptableObject data.

It also covers the Flesh system, character creation, the chat log, minimap floor triggers, the HUD with damage flashes and a blood overlay, billboarded sprites driven by a sprite state machine, WebGL-specific handling, and every screen from the splash and title to the credits, game over and ending.

  • Integrated a dithering palette asset to get the game’s limited-color look.
  • Edited and implemented all of the audio, including a separate music controller for the catacombs, and cut the trailer.

What I cut. To ship in a month, we cut more enemy variety, more levels and deeper mechanics. Another month would have brought those back, along with a richer story.

Outcome

Cursed Blight went from design to release in about a month. It’s playable in the browser and on Windows on itch.io, where it has more than 590 browser plays.

The atmosphere was my biggest focus, and it’s what players responded to most. They quoted the game back, like “my flesh got harvested”, after the line that appears when you die.

Looking back, I’d optimize the level better, and make it smaller with more variety packed into it.

Screenshots from the game’s itch.io page.

COVID 35

COVID 35 key art
Date
2025
Team
5
Client
Ludomancer Studio
Platform
itch.io
Built with
Netcode for GameObjects · Unity · Unity Relay
DesignUI/UX Design
ProgrammingGameplay Programming · Network Programming · UI Programming
GenresMultiplayer · Strategy

COVID 35 is an online multiplayer serious game where teams govern six nations through a fictional pandemic, and cooperation between them, rather than competition, leads to the best outcome.

I was the project's largest contributor, building its networked multiplayer, core rules and interface in Unity.

The project

COVID 35 is an online multiplayer serious game made for Simon Fraser University’s Faculty of Health Sciences. It is based on the university’s Pandemics and Borders project, an international research group studying how travel measures are used to control pandemics. Wero Creative developed it with my client, Ludomancer Studio, and our team had five people.

Each team picks one of six nations

The game simulates a fictional coronavirus outbreak on a continent divided between six nations. Teams of students and stakeholders each act as a nation’s government and try to contain and eliminate the pandemic over a number of turns, while keeping their country socially, economically and politically stable.

They can aid their neighbors or harm them, and donate to a Global Health Organization.

My role

My job was to turn the design into a working networked game in Unity, using Netcode for GameObjects and Unity Relay, that a room full of players could join, play through and debrief together.

What I did

From January to August 2025 I was the project’s largest contributor, with 122 of its 293 commits.

The main game screen

Prototype and architecture. I built the first playable pieces: the game screen prototype, the turn timer, a new UI mockup, and the chat prototype that grew into the inter-team chat. I then structured the game around models, views and controllers for the clients, the server and each country, separating what the server owns from what each client displays.

The server runs the game flow and owns the turn clock, and it only ends a turn once every player has confirmed. Until a player confirms, everything on their screen is theirs to change. Confirming sends their choices to everyone.

Core rules. I implemented the turn and spending system with the correct order of operations, policies, emergency loans, vaccination, aid between countries, popularity, and donations to the Global Health Organization with a progressive global cost and a reset. My client and I replaced the original calculations with simpler, more direct ones that were easier to follow and test, starting with the disease stats in the pandemic model those rules feed into.

Hosting a room, or joining one with a code

Multiplayer that holds up in a real classroom. I fixed the server’s player count per country, and a bug that stopped a third player from joining: the Relay allocation was still sized by a prototype constant of two players instead of the room’s real player count. I also gave clients the right write permissions, and added safe disconnection and client reconnection that restores each player’s local policies. Clients now disconnect cleanly when the host leaves, the packet queue limit is higher, and the create and join buttons lock while a session loads.

Reconnection for players on unstable Wi-Fi is one of the features the client highlights.

The host's initial game settings

Game setup. I built the initial game settings screen and wired every field to the game’s variables. Before a session starts, the host can tune each nation’s infection rate, population, ICU capacity and popularity, along with the vaccination rate, when vaccines arrive, and how long each turn lasts.

The news popup

News and the rest of the interface. I built the news popup that reports on the outbreak as the game goes on, along with the main menu, the policy screens and a policy details popup, the pause, reset and emergency buttons, and the onboarding screens.

Results graphs, filterable by nation

Results for the debrief. I built the end-of-game results: graphs of infections, deaths, ICU usage, vaccination and popularity, with filters to show one nation or all of them. The client uses them for post-round debriefing.

The report: policies, GHO donations and international donations

I also built the report screen, which breaks down every policy each nation took, what it donated to the Global Health Organization, and what it gave to other nations, so the group can talk through who cooperated and who didn’t.

I fixed bugs through to the end of the project, including aid timing, the Global Health Organization aid report, and typos and dates in the news.

Outcome

COVID 35 is publicly released on itch.io by Pandemics and Borders, playable in the browser and on Windows. Wero Creative also features it in its portfolio.

We got feedback from the client throughout and kept improving the game with it. One lesson was almost funny: every screen they played on was 16:10, and we had only ever tested at 16:9.

Screenshots from Wero Creative’s project page.

Survival Sandbox Prototype

A procedurally generated neighborhood of three furnished houses in a wasteland of dead trees, seen from above, with enemies outside
Date
2026
Client
Personal Client
Platforms
In Development · Private
Built with
Unity
DesignSystems Design
ProgrammingAI Programming · Gameplay Programming · Tools Programming · UI Programming
ProductionTesting
GenresSandbox · Survival

An unannounced top-down 2D survival sandbox in Unity 6, where every tool and weapon is the sum of the parts it's built from.

I'm the sole programmer on the prototype, for a private client. I turned the client's documents into one design document, then built the game's systems: procedural world generation, crafting, enemy AI, and the editor tools behind them.

The project

This is a top-down 2D survival sandbox in Unity 6, set on an abandoned Earth after an environmental collapse. The player manages health, hunger and thirst in a procedurally generated world, and builds tools and weapons out of the parts they find. It’s unannounced, so the client and the game’s name stay private.

This page shows the prototype. The art is placeholder, taken from third-party asset packs.

My role

I’m the sole programmer. My job was to turn the client’s design into a playable prototype, and to build the systems the full game will grow on.

What I did

One design document. The design lived in many places: the client’s GDD, slide decks, diagrams, and recordings of our specification sessions. I consolidated all of it into a single design document where every section names its sources, and I listed the questions the documents left open, so decisions were made before the code depended on them.

A blade, a knife, a pole and rope make a Sword

Tools that are the sum of their parts. The core idea is that a tool’s stats come from what it’s made of. I built an item instance layer so each crafted tool can carry its own parts, durability and effects, and a seven-cell grid where the pattern of parts decides which tool comes out. Parts fold into stats in a fixed order, so the order they were placed in never changes the result.

One seed's world. Every seed builds a different one

A world from a seed. The world is generated from a seed, so the same seed always builds the same world. It has a round boundary, terrain autotiled a quarter tile at a time, and houses placed as neighborhoods: a core house far from any other core, with more houses grown beside it by the design’s rules. A world 90 tiles in radius generates in about a second and a half in the editor.

A bandit's swing, telegraphed in red

Enemies you learn to read. The design describes enemies as distinct stages the player learns to exploit, so each enemy is a state machine you can read: wander, chase, attack, strafe, guard, flee, scavenge. Before every swing an enemy stands still and shows in red exactly where the hit will land, and a “!” goes up when it spots you. Enemies find their way with A* pathfinding, and they live in camps that call them home at night.

Content as data. Items, recipes, tool parts, enemies and loot are authored in 15 tables that an importer turns into assets, so a new enemy is a row in a table rather than a new prefab. Editor tools rebuild the prototype’s content in one step, and running them twice changes nothing.

One kit for everyone. The player and every enemy share the same actor kit, so a bandit’s sword swing is the player’s sword swing. Chopping a tree, breaking a wall and hitting a bandit all go through the same damage path.

Night falls over a generated house

Testing as I go. The codebase has 196 automated tests. Before handing the prototype over, I tested every task against its acceptance criteria and wrote up what passed, what didn’t, and the problems I found outside the tasks.

Outcome

The prototype is playable from the title screen to nightfall, with a generated world, crafting, combat and survival. It’s still in development, and the full game is being built on these systems.

Screenshots and footage captured from the prototype.

All Stars Merge

All Stars Merge key art
Date
2025
Team
20+
Client
Ludomancer Studio
Platform
Google Play
Built with
Unity
DesignEconomy Design
ProgrammingGameplay Programming · UI Programming
AudioAudio Implementation
ProductionEnglish Localization
GenreMerge

After Liz is suddenly fired, she starts over merging and selling sports equipment and rebuilding the stadiums around town, unaware that her good deeds may draw the wrong kind of attention.

I built the meta layer around the merge board: stadium upgrades, quests, story cutscenes, the sticker album, the store and the onboarding.

The project

The merge board

All Stars Merge is a free-to-play merge game published on Google Play by Hermit Crab Game Studio. I worked on it for my client, Ludomancer Studio, which was developing the game for Hermit Crab.

I joined in June 2025, on a codebase that had been in development since 2023, alongside a team of more than 20 people.

My role

My job was to build out the game’s meta layer around the merge board: the stadiums players rebuild, the quests that drive them, the story cutscenes, the sticker collection, the store, and the onboarding that ties it all together.

What I did

Between June and October 2025 I made 147 commits across 109 C# files.

Learning the codebase first. I was the only programmer on the team at the time, on a tight schedule. Before building anything I took time to understand the architecture. Many developers had worked on the game over two years, and each system followed its own conventions.

Upgrading a stadium part

Stadiums. I built the stadium layer from its first scene: field evolution, upgradeable field parts with costs, the upgrade choice screen and its animation, stage swapping, the basketball and volleyball stadiums, and the transition animation between them. I also fixed the upgrade save so progress held between sessions.

Daily missions and their rewards

Quests. I implemented missions with task costs and rewards, a questline flow driven by ScriptableObjects, and the level 3 questlines, which I authored in PlayFab title data. I added quest completion notifications in both the merge and stadium scenes, consumed the right board items when a quest completed, marked quest items on the board, and added the quest drawer.

I also rebuilt the daily tasks screen and its rewards.

A story cutscene with character portraits

Story. I implemented the story cutscenes and the prologue, then restyled them and added character portraits with expressions, a skip button, and a new HQ introduction.

A sticker album page and its completion reward

Sticker album. I brought the album back online and extended it: more albums, stickers and packages, sticker page progression with page rewards, a three-pack opening animation, and collection notifications.

Store, economy and onboarding.

  • Built the gem store with its info screen, energy refills in the store, the daily offer, selling chests, and the level-up screen with XP rewards, and gated the store behind level 3.
  • Made small adjustments to economy values: starting energy, request rewards, chest cooldowns, sticker package frequency and ratios, and the daily offer’s character pool.
  • Built the onboarding tutorials for quests, the store, the album and the full board, including tutorial GIFs. Quests and the other new mechanics each got a tutorial of their own, placed after the ones the game already had, so new systems are taught once the basics are in place. It’s also why quests and the store only open at level 3: the onboarding teaches the merge board first.

Audio and localization.

  • Implemented audio across the game: new sound effects, music fade in and fade out, separate music and effects volume sliders and toggles, and saved player settings.
  • Helped with the English localization.

Outcome

All Stars Merge is live on Google Play with more than 10,000 downloads, and it was updated as recently as May 2026.

It taught me how much code architecture and shared practices matter on a big team. When many people build a game over years, a common structure is what lets the next person add to it safely.

Screenshots from the game’s Google Play page.

Hotel 77

Hotel 77 key art
Date
2024
Team
~10
Client
Ludomancer Studio
Platform
Steam
Built with
Unity
DesignContent Design · Dialogue Writing · Level Design · Narrative Design · Writing
ProgrammingGameplay Programming
ProductionTrailer Production
GenresHorror · Narrative

Hotel 77 is a first-person narrative horror game set in a haunted hotel trapped in a time loop. Players walk its shifting corridors, spot the anomalies, and make the right choice to move time forward.

I designed the hotel's bedrooms and several of its rooms, created 17 of its anomaly variants, wrote its lore, and cut its trailers.

The project

The hotel at the start of the loop

Hotel 77 is a first-person narrative horror game from Ludomancer Studio, set in a haunted hotel caught in a time loop. Players walk its shifting corridors, spot what is wrong, and have to make the right choice to move time forward.

The team had about ten people, and the game is localized into ten languages with full English audio.

My role

I worked on it in two stretches. In December 2024 I worked on the hotel’s level design, and in December 2025 I came back to build the bedrooms and a new set of anomalies.

What I did

One of the hotel's corridors

Level design. In the first pass I built and polished several of the hotel’s rooms, including the Outlast room, the skull room and the dark room, added locked doors, and placed the carpets and the letter. My level design branch was merged in January 2025.

The bedroom I designed, the same behind all 8 doors

In the second pass I designed and built all of the hotel’s bedrooms, starting from the basic bedroom. The bedroom is the same behind all 8 doors, so players don’t have to memorize much. Only one door in the hallway is unlocked, so they don’t have to check all 8 either. The unlocked door is random, except when the anomaly is in a bedroom: then that bedroom always spawns behind the same door.

GET OUT, one of my hallway anomalies

Anomalies. I created 17 anomaly variants and 4 themed room variants across both passes. In the hallways, mine include blood handprints around the fire alarm, luggage turned into coffins, a dead ghost sitting at the start of the hallway, GET OUT written across the wall, statues that turn to watch you, a skull inside a diver helmet, and Nevermore, where the same helmet hides a bloody raven. In the bedrooms, they include a bloody bathtub, an evil TV, a hole in the wardrobe, a lamp that is simply wrong, and a crying zombie.

The evil TV, one of my bedroom anomalies

To me, a good anomaly rewards paying attention. It doesn’t try to jumpscare you hard. You get a little scared when you realize what’s wrong with the room. Some of mine are obvious and scary on purpose, and some are really hard to spot. I always added a black substance near the anomaly, to make it a tiny bit easier to see and to give all of them a shared motif. When an anomaly is a jumpscare, it should feel unique. In my Outlast room, the power goes out partway through and your night vision switches on by itself.

The shadow man, from the trailer

My favorite is the shadow man, in my dark room. The lights are off and a huge shadow stands at the far end, looking at you. It gives an immediate “oh no” feeling without being a jumpscare. Walk toward it, and the lights come back on and it’s gone.

Not every anomaly made it. Each one went through review, and two of mine were cut. A shadow hiding behind the luggage, given away only by its breathing, was too hard to spot. A door left ajar with a baby crying behind it overlapped with another developer’s crying baby.

Every loop can change the hotel

Anomaly behaviors. I wrote eight scripts to bring the anomalies to life: objects and heads that turn to face the player, triggers that fire when the player gets close, props that vanish on approach or after a timer, a random door unlocker, a rotation reset trigger, and a manager for the lamp anomaly.

Writing and trailers.

  • Created the hotel’s lore, wrote the letter and the audio logs that tell its backstory, and added 18 new entries for my dialogue to the game’s localization tables.
  • Cut trailers for the game and helped fix bugs.

Outcome

The game is finished and with the publisher, and its Steam page is live while it waits for release.

Screenshots from the game’s Steam page.

Memories of War

Memories of War key art
Date
2026
Team
6
Client
YouGo Games
Platform
itch.io
Built with
Unity
DesignCombat Design · Encounter Design · Level Design · Systems Design
ProgrammingGameplay Programming
GenresStrategy · Tactics

Memories of War is a squad-based grid tactics game built around a shared action economy, chess-inspired movement and positioning that matters.

I designed its levels and combat numbers, reworking the stats into small, simple values. As its sole programmer, I refactored the code I inherited and built the rest of the game.

The project

Memories of War is a squad-based grid tactics game made with YouGo Games by a team of six. YouGo designed its core: a shared action economy, chess-inspired movement and positioning that matters. A previous programmer had already started the code when I joined.

My role

I was a game designer and the sole programmer. My job was to design the game’s levels and combat numbers, and take over its development.

What I did

Choosing where a unit moves

Development. The code I inherited was tightly coupled, threw frequent exceptions, and made little use of polymorphism. Some data came from ScriptableObjects and the rest didn’t. I refactored the entire codebase, then developed the rest of the game in Unity myself.

I reworked the classes so allies and enemies work the same way, built a better turn system, and rebuilt the whole attack and movement preview. I tried to reuse the existing attack and movement patterns, but ended up rewriting those too. Data is now a mix of ScriptableObjects and JSON, and the JSON doubles as the save data.

A battlefield mid-fight

Levels that build on each other. I designed the levels and the obstacles that shape them, each one building on the last. The first level is a single enemy and teaches the basics. The second splits the map in two, adds more enemies, and shows how walls two tiles thick get in the way of both moving and attacking. The third arranges the walls so that movement itself gets hard. Each level asks you to use what the one before it taught.

The tutorial explaining turns, stats and skills

Balance. I set the stats for every ally and enemy. They live in JSON, and I tuned them by playtesting the game a lot, making sure each character has its own specialty. Since I designed both the levels and the stats, playtesting let me balance them together. When a character was too strong or a level too hard, I could adjust either side.

A hero's stats: 5 health, 2 attack, 0 defense

Small numbers. Stats used to run to values like 25 and 105, which felt bloated to me. I reworked them into small, simple numbers, so the player can do the math in their head and work out a fight at a glance, the way Hearthstone and Magic: The Gathering do.

Outcome

It’s playable in the browser and on Windows on itch.io.

It changed how I think about code. I now pay more attention to how a codebase is structured as a whole. When a game needs many characters, I want the pieces that make up a character to be modular, so adding one means putting existing parts together.

Screenshots from the game’s itch.io page.

Prison Break
Escape Big Sister

Prison Break Escape Big Sister key art
Date
2024
Team
2
Client
Personal Project
Platform
itch.io
Built with
Pygame · Python
DesignLevel Design · Systems Design
ProgrammingAI Programming · Gameplay Programming · Graphics & Rendering · Physics Programming
AudioAudio Implementation
GenresPlatformer · Stealth

Use stealth and parkour to break out of a prison of cold, unfeeling machines. Can you Escape Big Sister's watchful eye?

I designed it and built it in Python on Pygame, with no engine, so every system was written by hand. Cauã Bassin contributed maps, sprite work and bug fixes.

The project

Prison Break: Escape Big Sister is a 2D stealth platformer I made in 2024 with Cauã Bassin for a university course. The course asked for PPlay, but I chose Pygame to have more features at my disposal, and for the chance to build something closer to from scratch. There’s no game engine, so every system had to be written by hand.

My role

My job was to design the game and build its core: the player, the enemies, the stealth rules, the look and the sound.

What I did

I made 18 of the project’s 33 commits between May and July 2024. The finished game is about 4,300 lines of Python across 28 modules.

Hanging out of a soldier's sight

Player controller. I built the player controller with 19 states, including walking, running, crouch walking and crouch running, hanging, rolling, a backflip, and slide jumps.

The hardest part was chaining them: a standing jump that turns into a backflip, lands in a slide, and lets you slide jump out of it, possibly into a wall. It took a lot of messing around, and sliding in general was the most troublesome. The idle animations that play after 10 seconds of standing still took me a whole day on their own, since some stop on their last frame and only go back to the default idle once you move.

Looking back, the states lived in a long chain of if and else checks, which is a big part of why chaining them was so hard. Today I’d build the controller as a proper state machine from the start.

I also wrote the collision system and integrated the Tiled maps.

Spotted

Soldier AI. Soldiers see through a vision area and two line-of-sight checks, one to the player’s head and one to their feet, that tiles can block, and they give chase once they spot the player. Two checks because the player can cling to ceilings, where sometimes only their feet are in view.

Soldiers drawn toward a sound

Hearing. I added parkour and speed, and wanted something to balance them and make the stealth more interesting. So the faster you go, the more noise you make, which turns speed into a risk and reward choice. I designed and built the hearing system. Whistling sends out an expanding sound sphere that draws soldiers toward where it came from, and a soldier who is already chasing sends out spheres of its own that alert the others.

A prison level

Look and sound. I added atmospheric lighting and an animated noise overlay generated with Pillow. I wrote the audio module, with music fades, sound effect channels and stingers, and added the music and sound effects.

Levels. I designed and built stages, reworked the first one, and added the title screen and the ending.

Painless deaths. When you die, you respawn almost instantly. Dying and trying again should feel like part of the game, not a failure state, the way it does in fast platformers like Super Meat Boy and Celeste.

Cauã built the first maps, the stage transition system and its memory cleanup, the crouch walking sprite, and several bug fixes.

Outcome

The game is playable as a prototype in the browser on itch.io, with a downloadable version that runs on Python.

The biggest lesson was code architecture. Build it to scale, keep it simple, and make it out of basic components.

Screenshots from the game’s trailer.

Red Death Party

Red Death Party key art
Date
2025
Team
5
Client
Ludomancer Studio
Platform
itch.io
Built with
Unity
ProductionEnglish Localization · Testing
GenreNarrative

After a year locked in his house, Edgar accepts an unusual invitation: to wait out a pandemic in a millionaire's underground mansion.

I translated the whole script into English and tested the game before release.

The project

Narration in English

Red Death Party is a short psychological horror visual novel that Ludomancer Studio made for Spooktober 2025, with a team of five. To fit the jam, the team chose simple backgrounds and character designs and a story that doesn’t branch. I couldn’t take part in the whole jam, so I handled the work that came last.

After a year locked in his house, Edgar accepts an invitation to wait out a pandemic in a millionaire’s underground mansion.

My role

I was the English localizer and the QA tester. My job was to bring the story to English and test the game before release.

What I did

Dialogue with Chezz

Translation. I translated the entire script from Portuguese to English: the introduction, three chapters and the final chapter, about 460 lines and 6,700 words of narration and dialogue in Naninovel.

My favorite part was Vamp. In the original she roleplays as a vampire. In English, with approval, I made her roleplay as a Shakespearean vampire, and talk normally whenever she steps out of character. She didn’t talk like that in Portuguese, but it made for stronger characterization.

I delivered the translation on September 29, 2025, one day before the project’s last commit.

A keypad puzzle

Quality assurance. It’s a simple game, so I tested it by hand. I went through every feature, left it running, closed it at different moments, saved, loaded and deleted saves, and changed the settings and the resolution.

Outcome

Red Death Party is released on itch.io and playable in the browser and on Windows.

Screenshots from the game’s itch.io page.

DESTRUA

DESTRUA key art
Date
2015
Team
1
Client
Personal Project
Platform
Private
Built with
RPG Maker VX Ace
DesignLevel Design · Narrative Design · Puzzle Design · Systems Design · Writing
ProgrammingGameplay Programming

DESTRUA (DESTROY) is the last command remembered by a lonely, self-aware robot trapped in a decaying factory. Every minute, a malfunctioning four-dimensional loop device resets reality and undoes most of what the robot has done. Only what it carries survives, along with everything you've learned.

I made it alone for a game jam in 2015, my first attempt at a conventional game.

The project

The robot boots up, with one minute until the reset

DESTRUA is a game I made alone in 2015 for a game jam, and my first attempt at a conventional game.

A lonely, self-aware robot trapped in a decaying factory remembers a single command, destroy, and a malfunctioning four-dimensional loop device resets reality every minute. Each reset undoes most of what the robot has done, but the items it carries survive, and so does everything the player has learned.

My role

I was the solo developer. The goal was a complete puzzle and story game in RPG Maker, finished within the jam.

What I did

Everything except the art and audio assets is mine: every level, every puzzle and every line of dialogue. The game’s logic is built entirely with RPG Maker’s event scripting rather than written code: 4 maps, 953 event pages and about 3,900 event commands.

The loop. I scripted the one-minute loop with dedicated timer and reset switches, resetting the factory each cycle while the robot’s inventory carries over.

A puzzle doesn’t fit in a minute, but reaching the end of a corridor and solving its puzzle correctly takes about that long. The puzzles are there to make you spend time figuring them out, and that’s the challenge. One of the computers tells the player that items carry over. Attentive players can work it out without the tip: go back to where an item used to be, and a different message says the spot is empty. Pressing Esc also opens the inventory and shows it outright.

A door that needs an access card

Logic. I built the game’s logic from RPG Maker’s switches, variables and conditional branches, including key and keycard doors, and position tracking for a wheelchair and colored objects.

The three-lever combination puzzle

Puzzles. I designed all of the factory’s levels and the puzzles in them, including a three-lever combination puzzle.

Dynamic lighting in the dark

Plugins. I configured plugins for dynamic lighting, picking up and throwing objects, an in-game hint system, audio, events that play before the title screen, and a menu without combat options.

One of the robot's system messages (the game is in Portuguese)

Writing. I wrote the story and all of the text, 588 messages and 34 choices, with custom colors, pauses and font sizes for the robot’s system messages.

Outcome

I finished the game for the jam. It isn’t publicly playable because it uses copyrighted content.

Looking back, puzzles and a timer don’t mesh well. The biggest lesson I took from it: if something can be frustrating, make it as frictionless as possible. Players loop constantly, and the loop is the main mechanic, but each reset takes too long. Today I’d make it almost instant, not far from how Prison Break respawns you.

Screenshots from the game’s trailer.

The Art of Videogames

The Art of Videogames key art
Date
2015
Team
1
Client
Personal Project
Platform
Private
Built with
RPG Maker VX Ace
DesignLevel Design · Narrative Design · Puzzle Design · Writing
ProgrammingGameplay Programming
GenreNarrative

At the end of my English course I could present on any topic, so I chose games. Instead of slides, I thought, “What if I used a game to present the idea of games as art?” The result is a narrative walking simulator that makes the argument by being one, ending in a puzzle challenge.

I made it alone in RPG Maker, writing every line and designing all 32 levels.

The project

Making the argument inside the game

At the end of my English course I could give a presentation on any subject, and I chose video games as art. Instead of slides, I made a game in English that makes the argument itself: a narrative walking simulator where the player learns about games to save Towney from an evil vampire, ending in a puzzle challenge.

It was my way of letting the medium speak for itself. The game makes the argument by being what it argues for. It shows every aspect of games, uses music from many different games, and tries to be beautiful. It tells a story, with interesting characters, funny and sad moments, and backstories, and it proves games can teach by teaching.

It also had to work for the person playing it in class: my teacher, who wasn’t a gamer. That’s why it’s a walking simulator. Anyone could walk through it, and no challenge could stop the presentation halfway.

My role

I was the solo developer. The goal was a complete narrative experience, built alone in RPG Maker, that I could present to the class.

What I did

Everything except the art and audio assets is mine: all 32 levels, the puzzles and every line of dialogue. The game’s logic is built almost entirely with RPG Maker’s event scripting, apart from a few short JavaScript calls: 32 maps, 1,782 event pages and about 8,700 event commands.

Julia sends the player to Towney

Story structure. A storyline variable tracks the player’s progress through the main story, with separate threads for side characters such as Julia and the Captain.

The villain, Selene, is a vampire because she drains the happiness from the villages. She’s an immortal being who has corrupted the meaning of games. Her powers turn out to be a curse as well: at the end of the game, Roger becomes the vampire.

Night falls on Towney

Staging. I staged scenes with move routes, map transfers and pictures, and set the mood with weather, dynamic lighting and timed events.

The color puzzle before the final fight

Levels and puzzles. I designed all 32 levels and built the puzzles, including position tracking for red, blue and yellow objects, backed by an in-game hint system.

Captain Story, one of the side characters

Writing. I wrote all of the dialogue, 1,145 messages and 48 choices.

Outcome

I presented it as my final presentation for the course. My class found it very creative, though they only saw a small part of the game. The longplay video shows the rest. It isn’t publicly playable because it uses copyrighted content.

If I made it for a presentation again, I’d cut about 95% of it. It would be a linear experience instead of a town full of different choices, and any walking would be close to a straight line.

Screenshots from the game’s longplay video.

About

I'm Roger Egito, a game designer and Unity developer from Brazil. I design games and the systems inside them, write the words players read, and build it all myself in Unity.

I designed and programmed Cursed Blight, from a one-page brief to release in about a month. I was the largest contributor to COVID 35, built the meta layer of All Stars Merge on Google Play, and designed rooms and anomalies for Hotel 77 on Steam.

At Universidade Federal Fluminense, where I study Information Systems, I lead the development of Vivenciando o Passado, a VR experience about the Atlantic slave trade that we showed to the public at SBPC 2026.

Working with the historians behind it taught me to keep a design true to its source and still make it play well, and that the best feedback comes from watching people play.

Away from work I run tabletop RPGs, I'm designing my own 2d10 system, and I'm playing through video game history in order, starting from 1947. I also spent five years teaching English, and I'm C1 certified.

If you're hiring a game designer, a Unity developer or a narrative writer, I'd love to talk. Write to me at rogeregito@outlook.com.