Pixel.Pilgrim.mp4
Step into another world! Pixel Pilgrim is an open-source Hybrid RPG prototype developed in Unreal Engine 5.5.1. It uniquely blends animated 2D characters (powered by the PaperZD plugin) that rotate freely within immersive 3D environments using assets like the Stylized Eastern Village pack, enhanced with a subtle pixelation texture theme for visual cohesion.
The game features exploration, a Data Table-driven dialogue system with animated text reveals, basic NPC AI (roaming and interaction response), a follower mechanic, an object occlusion system for improved visibility, and an introductory cutscene created with Sequencer. The perspective is a fixed-angle, position-following top-down style camera.
This project served primarily as a learning exercise and portfolio piece, demonstrating proficiency in various Unreal Engine systems, particularly Blueprint scripting, PaperZD integration, UI implementation (UMG), Data Tables, Material Functions/MPCs, and Sequencer basics within an RPG context.
A regular software engineer, unwinding after work by playing an RPG set in ancient China, drifts off to sleep... only to awaken within the game world itself! Disoriented but intrigued, this Pixel Pilgrim must navigate the unfamiliar streets of the city of Baishan, interacting with its inhabitants, uncovering secrets, and perhaps even finding companions like the skilled martial artist Mei. Can they adapt to this new reality and find their purpose?
(Based on the developed story concept - Can be expanded)
- ๐ญ Hybrid 2D/3D Presentation: 2D pixel art characters seamlessly integrated into a 3D world with a cohesive pixelated texture theme.
- ๐ถโโ๏ธ Top-Down Exploration: Smooth player movement (WASD) with character rotation based on direction.
- ๐ PaperZD Animation: Idle and Run animations implemented for Player and key NPCs via PaperZD Animation Blueprints.
- ๐ Fixed-Angle Following Camera: Camera tracks the player's position while maintaining a fixed viewing angle.
- ๐๏ธ Object Occlusion System: Objects blocking the view of the player dynamically fade/become masked for clear visibility, using Material Functions and MPCs.
- ๐ฌ Data-Driven Dialogue System:
- Interaction prompts (animated text + glowing circle) appear on nearby NPCs.
- Dialogue displayed in speech bubbles above NPCs with a "typing" text reveal animation.
- Ability to skip text reveal.
- Conversations progress based on player input ('E'/'Enter').
- All dialogue content and sequencing managed via an Unreal Data Table.
- ๐ค Basic NPC Logic:
- NPCs turn to face the player when interaction is initiated.
- Implementation of simple random roaming AI using NavMesh.
- Distinction between interactable and ambient NPCs.
- ๐ค Follower Mechanic: System allows specific NPCs (e.g., Mei) to join the player's party and follow them after a conversation.
- ๐ฌ Sequencer Introduction: An introductory cutscene utilizing Sequencer for camera movement, animation triggering, and event calls.
- ะผะตะฝั Main Menu & Pause Menu: Functional main menu (Start/Quit) and in-game pause menu (Resume/Restart Main Menu/Quit).
- ๐ก 100% Blueprint Driven: Developed entirely using Unreal Engine's Blueprint visual scripting with added documentation within Blueprints.
- ๐ผ๏ธ Core Assets Integrated: Includes sprite sheets, sounds (ambient + contextual bird chirping), UI elements, and environment pack. (See Attributions).
- Engine: Unreal Engine 5.5.1 โ๏ธ
- Core Logic: Blueprints ๐
- Data Management: Unreal Engine Data Tables (from CSV/Spreadsheet) ๐
- 2D Animation/Character Logic: PaperZD Plugin ๐
- UI: Unreal Motion Graphics (UMG) ๐ฅ๏ธ
- Cinematics: Sequencer ๐ฌ
- Materials: Material Functions, Material Parameter Collections (MPCs), Masked Blend Mode โจ
- AI: Navigation Mesh (NavMesh), Basic AI Controller Logic ๐ค
- Primary Environment Assets: Stylized Eastern Village (Free Pack from Fab.com) ๐๏ธ
- Other Assets: Characters, UI, Sounds (See Attributions) ๐จ๐
- Version Control: Git / GitHub ๐พ
- โ Foundation & Core Systems: Project setup, plugin integration, basic movement, camera.
- โ Asset Integration & Styling: Characters, environment, sounds, UI added; Pixelated texture theme applied.
- โ Animation System: PaperZD setup and basic animations functional.
- โ Interaction & Dialogue: Full loop implemented - proximity detection, prompts, UI bubbles, typing effect, skip logic, data table integration, conversation flow.
- โ NPC Behaviors: Basic roaming AI, turning-to-face player implemented. Follower mechanic functional.
- โ Visibility/Occlusion: Dynamic object fading system implemented.
- โ Cinematics: Introductory cutscene functional via Sequencer.
- โ Menus: Main Menu (Start/Quit) and Pause Menu (Resume/Restart/Quit) implemented.
- ๐ฏ Learning Goals Met: The primary objective of learning these Unreal Engine systems through practical application was successfully achieved.
- Movement: WASD / Arrow Keys (Controls character movement and facing direction).
- Interact / Advance Dialogue / Skip Dialogue: 'E' / 'Enter' Key.
- Pause Menu: 'Esc' Key.
- Menu Navigation: Mouse Click ๐ฑ๏ธ.
Option 1: Play Packaged Build (Recommended for Players) ๐ฎ
- Go to the Releases section of this repository. (<-- Make sure this link is correct!)
- Download the latest
PixelPilgrim_vX.X.zip(or similarly named) file. - Extract the contents of the ZIP file.
- Run the game executable (e.g.,
PixelPilgrim.exe). No Unreal Engine installation needed!
Option 2: From Source (For Developers - Requires Unreal Engine 5.5.1 & PaperZD) ๐ง
- Clone the repository:
git clone https://github.com/FahimKamal/UE5_HybridRPG.git
- Navigate to the cloned project directory (
UE5_HybridRPG). - Ensure Unreal Engine 5.5.1 is installed via the Epic Games Launcher.
โ ๏ธ Important: PaperZD Plugin Requirement:- This project requires the free PaperZD Plugin.
- The plugin should be included in the project's
Pluginsfolder. Unreal Engine should detect it automatically. - If you encounter errors: Please ensure you have obtained and installed PaperZD for your UE 5.5.1 engine installation. Get it here: https://www.fab.com/listings/6664e3b5-e376-47aa-a0dd-f7bbbd5b93c0
- Open the
.uprojectfile (UE5_HybridRPG.uproject) by double-clicking it. - Press Play in the editor toolbar to run the current state of the project.
This project provided valuable hands-on experience with:
- Implementing a Hybrid 2D/3D workflow in UE5.
- Utilizing the PaperZD plugin for 2D character animation and logic.
- Designing Blueprint architecture for character inheritance and modular systems.
- Creating data-driven systems using Unreal Data Tables for dialogue management.
- Developing dynamic UI elements (UMG) positioned in world space (speech bubbles) and standard menus.
- Solving visibility challenges in fixed-camera perspectives using Material Functions and MPCs for object occlusion.
- Basic AI implementation (roaming, turning) using NavMesh.
- Implementing core RPG mechanics like interaction and follower systems.
- Using Sequencer for introductory cinematics and event triggering.
- Standard game features like Main Menus and Pause Menus.
While this phase of the project is complete, potential future directions could include:
- โจ Deeper RPG Systems: Inventory, stats, skills, combat, quests.
- ๐ฌ Advanced Dialogue: Implementing player choices and branching conversations.
- ๐๏ธ Expanded World: Customizing the environment further, adding interiors, creating new levels/areas.
- ๐ค More Complex AI: Implementing schedules, reactions, potentially Behavior Trees for advanced logic.
- ๐จ Art & Animation Polish: Adding more character animations (combat, expressions), improving VFX, refining UI design.
- ๐ Audio Expansion: Adding more sound effects (UI feedback, specific actions), ambient loops, possibly music.
- ๐พ Saving/Loading: Implementing persistence for player progress.
- ๐ Full Story Implementation: Expanding the narrative, adding quests, and fully developing the plot based on the initial premise.
This project uses freely available assets. Please see the ATTRIBUTIONS.md file for detailed license information and credits for Characters, UI, Sound, and Environment assets used.
This project is licensed under the MIT License. The full license text can be found in the LICENSE file in the repository root. ๐




