Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate Towers into Light & Shadow #247

Open
jdrueckert opened this issue Nov 13, 2021 · 0 comments
Open

Integrate Towers into Light & Shadow #247

jdrueckert opened this issue Nov 13, 2021 · 0 comments
Labels
Category: Gameplay Content Requests, Issues and Changes targeting gameplay mechanics and content Size: L Very big effort likely requiring a lot of research and work in many areas across the codebase Status: Needs Investigation Requires to be checked for feasibility, reproducability, etc. Topic: Architecture Requests, Issues and Changes related to software architecture, programming patterns, etc. Topic: UI/UX Requests, Issues and Changes related to screens, artwork, sound and overall user experience Type: Improvement Request for or addition/enhancement of a feature

Comments

@jdrueckert
Copy link
Member

jdrueckert commented Nov 13, 2021

Apart from actively attacking the opposing team themselves, the player should be provided with defensive mechanisms, such as structures that can be placed in the arena, for instance near the player's team base. One example for such a defensive structure are towers we know from other games such as LoL (League of Legends) or DotA (Defence of the Ancients) as well as from our very own GooeyDefence. These towers attack players of the opposing team and thus defend the player's own team.

In comparison to GooeyDefence, the focus in Light & Shadow (LaS) as a fast-paced capture-the-flag should still be on reaching and bringing home the flag. This is why, instead of putting focus on constructing towers with various effects, target behaviors, etc., LaS should provide pre-assembled tower types that only need to be placed. Still, these structures can leverage parts of the tower implementation in Towers and the effects they use from CombatSystem.

In their GSoC 2021 project, @ahv15 started work on this in Terasology/Towers#2 and Terasology/LightAndShadowResources#74.

To manage a tower - a static structure that is composed of multiple blocks - as a single entity, we can utilize our MultiBlock module. MultiBlock currently automatically detects the region taken up by a structure using a recipe and creates a MultiBlock entity corresponding to that. As the towers will be provided as prefabs based on the concepts of StructureTemplates the necessary region for the structure is already present. So by using the regions calculated by systems of StructureTemplates, we can create the corresponding multi-block entity and use this entity to damage and destroy all blocks within the structure when the tower is attacked.

@ahv15 started work on this in Terasology/StructureTemplates#68, Terasology/MultiBlock#28, and #231.

Finally, towers should be integrated properly as gameplay elements purchasable in the in-game store. On resetting the player inventory when restarting the game after a round has ended, unused towers should be removed from the player inventory. On destruction of a tower, the item for placing it should not be dropped.

Depends on Terasology/GooeyDefence#70
Depends on Terasology/Towers#4

@jdrueckert jdrueckert added Topic: UI/UX Requests, Issues and Changes related to screens, artwork, sound and overall user experience Category: Gameplay Content Requests, Issues and Changes targeting gameplay mechanics and content Topic: Architecture Requests, Issues and Changes related to software architecture, programming patterns, etc. Size: L Very big effort likely requiring a lot of research and work in many areas across the codebase Type: Improvement Request for or addition/enhancement of a feature Status: Needs Investigation Requires to be checked for feasibility, reproducability, etc. labels Nov 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Category: Gameplay Content Requests, Issues and Changes targeting gameplay mechanics and content Size: L Very big effort likely requiring a lot of research and work in many areas across the codebase Status: Needs Investigation Requires to be checked for feasibility, reproducability, etc. Topic: Architecture Requests, Issues and Changes related to software architecture, programming patterns, etc. Topic: UI/UX Requests, Issues and Changes related to screens, artwork, sound and overall user experience Type: Improvement Request for or addition/enhancement of a feature
Projects
None yet
Development

No branches or pull requests

1 participant