Projects

Project ‘Uncertainty’: A video game & Software Engineering Lab project

  • In my spare time, I am currently porting the game to the Godot engine.
  • Uncertainty is an action-adventure space-shooter game, and currently, It’s under development.
  • We have utilized the beta version of this game as our ”Software Engineering Lab” course project.
  • Our game is an open-source game hosted on GitHub.
  • It’s made with Unity3D
  • Currently, our team isn’t at its peak since all its members are busy at university. Still, we’re looking forward to continuing the Uncertainty and eventually finishing it when we’re free.
  • This project consists of:
    • Carefully used design patterns
    • Followed the SOLID principles in codes
    • Project Requirements
    • Project Needs assessment
    • Project Scenario
    • Usecase Diagram
    • Activity Diagram
    • Class Diagram
    • Sequence Diagram
    • Eye-catching art and 3D models
    • Scalable and reusable codebase
Gameplay Screenshot
Gameplay Screenshot

Project Uncertainty Multiplayer(Demo)

About This Project:
For my network engineering course i tried to learn about different ascpects of a fast paced multiplayer game like server and client autoritative movements, lag compensation, server reconsilication, etc.

  • FishNet is our networking solution
  • The game is at a very early stage.
Gameplay
Movement Sync

Symmetry Game

Designing and implementation of:
A game to test our short-term memory for visual information
In the beginning, I designed this project to teach elementary students about symmetry, but then I added some more challenging levels

Symmetry
Symmetry

OpenGL Project

Designing and implementation of:
This is a game that I made for my graphics course using OpenGL

OpenGL
OpenGL

Maze & Mouse

Designing and implementation of:
DFS algorithm for my data structure course
I adjusted the algorithm to find all possible paths

Maze
Maze

Multiple projects regarding to Design and Analysis of Algorithms course

Designing and implementation of:

  • The Closest Pair of Points Problem (Divide & Conquer)
  • Convex Hull (Divide & Conquer)
  • Sudoku Solver (Backtracking)
  • Tournament Scheduler (Divide & Conquer)
  • Huffman Coding (Greedy)
  • Bellman–Ford (Dynamic Programming)
  • Matrix Chain Multiplication (Dynamic Programming)
  • N-Queens Solver (Backtracking)
  • Travelling Salesman Problem (Dynamic Programming)
Convex Hull
Convex Hull 2D

Multiple projects regarding to Artificial Intelligence course

Designing and implementation or Use of:

  • BFS, DFS, IDS, UCS (Uninformed Search Strategies)
  • 8 Puzzle solver using A* & IDA (Informed Heuristic Search Strategies)
  • genetic algorithms, simulated annealing (Local Search)
  • Min-Max, Alpha–Beta (Adversarial Search)
  • classification of a dataset (Basic Machine Learning)
  • knowledge representation using prolog (knowledge-based system)

Blender addons

Designing and implementation of:
Addons (plugins) for learning blender API

Multiple projects regarding to Data Structures course

Designing and implementation of:

  • the Red-Black Tree (self-balancing binary search tree)
  • the AVL Tree (self-balancing binary search tree)
  • the Trie Dictionary (k-ary search tree)
  • the Sparse Matrix via Linked List (Linked List)
sparce
Sparce Matrix Using LikedLists