Jump to content

SoK/2025/StatusReport/Srisharan V S

From KDE Community Wiki

Games: Add a Mancala Game to Mankala Engine

Project Abstract

This project focused on extending the MankalaEngine to include Pallanguli, a culturally significant variant from South India. The integration required a deep understanding of Pallanguli's unique mechanics, such as sowing, capturing, and endgame detection.

To improve usability and accessibility, a Terminal User Interface (TUI) was developed, allowing users to interact with the game directly through the command line. The TUI delivers a visually structured and responsive experience, enabling both casual and experienced users to play Pallanguli in a text-based environment.

In an effort to distribute the engine more widely, a package request was submitted to Fedora's Bugzilla, initiating the process to include MankalaEngine in the official Fedora repositories. This step contributes to the project's sustainability and aligns with the broader goals of Free and Open Source Software (FOSS) advocacy.

Deliverables
  • Pallanguli Integration into MankalaEngine
  • Terminal User Interface (TUI)
  • Fedora Packaging and Distribution
Mentors
  • Benson Muite (benson_muite@emailplus.org)
  • João Gouveia (joao.talone.gouveia@gmail.com)
Weekly Progress
Week 1–2: Pallanguli Rule Research
  • Studied traditional Pallanguli game rules from various sources
  • Compared regional rule variations to finalize a digital implementation model
  • Designed rule flow for sowing, capturing, and game termination
  • Outlined structural plan for modular rule integration in MankalaEngine
Week 3–4: Core Logic Integration
  • Created pallangulirules.h and pallangulirules.cpp for Pallanguli variant
  • Implemented move logic, pit traversal, and capturing rules
  • Ensured compatibility with MankalaEngine’s turn-based game loop
Week 5–6: Fedora Packaging and Bug Fixes
  • Submitted a package request on Fedora Bugzilla for MankalaEngine
  • Created RPM spec files following Fedora guidelines
  • Fixed reported bugs by Shubham Shinde, including input validation and move edge cases
Week 7–8: Open Source Outreach
  • Conducted a college FOSS meetup showcasing KDE applications
  • Demonstrated Mankala, Krita, and AudioTube in action
  • Helped students port their laptops to Fedora, Linux Mint, and Nobara
  • Promoted Linux and KDE through live demos and install sessions
Week 9–10: Final Documentation and Polish
  • Wrote technical and user-facing documentation for Pallanguli integration
  • Final bug fixes and code cleanup
  • Wrapped up and prepared project for future maintenance and contributions

My Blog

I have documented my journey here at @SrisharanVS