{"id":22894802,"url":"https://github.com/mathusanm6/c-network-bomberman","last_synced_at":"2025-08-11T21:35:39.297Z","repository":{"id":240971622,"uuid":"803919266","full_name":"mathusanm6/C-Network-Bomberman","owner":"mathusanm6","description":"C-Network-Bomberman is a multiplayer Bomberman game written in C, with a network mode. Place bombs strategically and face your opponents in dynamic arenas. Chat functions are also included. You can even whisper messages in team mode with your teammates.","archived":false,"fork":false,"pushed_at":"2024-05-22T17:38:39.000Z","size":4631,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-05-22T18:46:52.965Z","etag":null,"topics":["bomberman","c","chat","client","game","ncurses","network","network-programming","protocol","server"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mathusanm6.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"authors.md","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-21T15:56:18.000Z","updated_at":"2024-05-22T17:38:42.000Z","dependencies_parsed_at":"2024-12-13T23:20:57.756Z","dependency_job_id":"fd4a4e5e-732d-4349-b4ab-f3ac0c751eb6","html_url":"https://github.com/mathusanm6/C-Network-Bomberman","commit_stats":null,"previous_names":["mathusanm6/c-network-bomberman"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mathusanm6/C-Network-Bomberman","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathusanm6%2FC-Network-Bomberman","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathusanm6%2FC-Network-Bomberman/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathusanm6%2FC-Network-Bomberman/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathusanm6%2FC-Network-Bomberman/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mathusanm6","download_url":"https://codeload.github.com/mathusanm6/C-Network-Bomberman/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mathusanm6%2FC-Network-Bomberman/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269962061,"owners_count":24504263,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-11T02:00:10.019Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bomberman","c","chat","client","game","ncurses","network","network-programming","protocol","server"],"created_at":"2024-12-13T23:19:51.974Z","updated_at":"2025-08-11T21:35:39.275Z","avatar_url":"https://github.com/mathusanm6.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# C Network Bomberman\n\n[![Build](https://github.com/mathusanm6/C-Network-Bomberman/actions/workflows/build.yml/badge.svg?branch=main)](https://github.com/mathusanm6/C-Network-Bomberman/actions/workflows/build.yml) [![Tests and memory checks](https://github.com/mathusanm6/C-Network-Bomberman/actions/workflows/test.yml/badge.svg?branch=main)](https://github.com/mathusanm6/C-Network-Bomberman/actions/workflows/test.yml) [![Format](https://github.com/mathusanm6/C-Network-Bomberman/actions/workflows/format.yml/badge.svg?branch=main)](https://github.com/mathusanm6/C-Network-Bomberman/actions/workflows/format.yml)\n\n## Description\n\nAs part of the **L3S6 course \"Programmation Réseaux\" (Network Programming)**, we were tasked with developing a network game in C. The aim of this project is to implement a server and a client for a network game of **Bomberman**. The server will be able to handle multiple clients, and the clients will be able to play the game in real-time. The user interface will be implemented using `ncurses`.\n\nThe project requirements are stated in the pdf file [sujet](sujet.pdf) (in French).\n\nThe project was developed within 8 weeks.\n\n## Own contributions\n\n- [x] Implemented the view for the game using `ncurses`.\n\n- [x] Chat feature\n\n  - [x] Implemented chat model\n  - [x] Implemented chat communications through tcp sockets\n\n- [x] End game feature\n\n  - [x] Implemented end game communications through tcp sockets\n  - [x] Implemented end game view\n\n- [x] A lot of bug fixes :)\n\n## Visuals\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/server.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      Setting up the server for the game.\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/ready.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      Players are ready to start.\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/game.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      In-game action taking place.\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/chat.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      General in-game chat.\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/chat2.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      Players discussing strategy.\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/chat_whispering.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      Players whispering in-game.\n    \u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/lost.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      Player has lost the game.\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"resources/won.jpeg\" width=\"300px\"\u003e\u003cbr\u003e\n      Player has won the game.\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n## Demo\n\n[Demo Video on Youtube](https://youtu.be/4hkg7EBgfLI)\n\n## Installation\n\nYou will need the following dependencies:\n\n- `gcc` compiler\n- `make` build system\n- `ncurses` library (for the user interface)\n\nTo install the project, run the following commands:\n\n```bash\ngit clone git@github.com:mathusanm6/C-Network-Bomberman.git\ncd bomberman-gyt\nmake\n```\n\nTo compile just the server, run the following command:\n\n```bash\nmake server\n```\n\nTo compile just the client, run the following command:\n\n```bash\nmake client\n```\n\n## Usage\n\nTo run the server, run the following command:\n\n```bash\n./server\n```\n\nTo run the client, run the following command:\n\n```bash\n./client\n```\n\nThe client program has some flags :\n\n- `-p PORT` to connect the client to the server with the port `PORT`.\n- `-m MODE` to choose the mode between `0` for `SOLO` and `1` for `TEAM`.\n\n## Authors and acknowledgment\n\nThis project was developed by a group of students from Université Paris Cité, as part of the L3S6 course \"Programmation Réseaux\" (Network Programming). The group members are Gabin Dudillieu, Yago Iglesias Vázquez, and Mathusan Selvakumar.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathusanm6%2Fc-network-bomberman","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmathusanm6%2Fc-network-bomberman","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmathusanm6%2Fc-network-bomberman/lists"}