GSOC 2019 - Light And Shadow Remastered


New Member
This thread is for the GSoC '19 Project: Light and Shadow Remastered.

Summary: The aim of this project would be to complete the basic gameplay mode which would be a fast-paced Capture The Flag set up in the Dark Fantasy world of Light and Shadow where you have to choose between the game’s two major factions and try to capture opposition's flag. The gameplay will also include features like in-game shop and magic wands.
Student: @darshan3
Mentors: @Skaldarnar, @SuperSnark, @Lucas Lima Vieira, @Iaron da Costa Araújo, @Nihal Singh, Cervator
Github: Project #17
Slack: #light-and-shadow


New Member
Minutes of the Meet 0 (26/05/19):

Github Board

The GitHub board was finalized. It was decided that cards with multiple subtasks will be broken down into smaller cards with individual subtasks as I work on them. A detailed plan for each week will be discussed in the weekly meetings.

Discussion of work done
The Light and Shadow repository contains two folders because of varying gameplay styles and old code. It was decided to merge both the codes and if needed, delete the files/code not being used. PRs #79 and #80 were reviewed.

Work to be done
It was decided to start working on this card. Weapons will be dropped when a player dies and destroyed after some time. Flag, if held, will be dropped and teleported to base after some time.

Game restarts
When the game gets over, there will a 60 seconds countdown before the start of next game. The host will have an override button to restart it manually.

There was also some doubt clearance on how to make the client-authority system to work.


New Member
GSoC Week 1 (27/05/19 - 02/06/19):

Blog post:

What have you achieved in the last week?

Player respawns at its base on dying. Inventory items and flag (except magic staff) are dropped at the dying spot.

What are you currently working on?
Handling Game Restart and Stats System

What problems are you currently facing?


List of PRs and opened/closed Issues:
Player falls in play area before selecting teams #81
Respawn and heal player on death #82
Handle inventory on death #83


New Member
Minutes of the Meet 0 (02/06/19):

How to handle Multiplayer:

Read code for JoshariasSurvival and its dependencies. Read this wiki.

Statistics and Restart System:
There was a lot of discussion for this. There are two possible options, implement a component and update it for all clients or implement a single entity which gets replicated for all clients. I have to look into the systems in place currently (the F2 one specifically) and see how replicate works internally. Make a list of possible design choices and share it with everyone before I start working on it.

Work to be done:
Work on this card.