Terasology icon indicating copy to clipboard operation
Terasology copied to clipboard

Light&Shadow - Implement gameplay features

Open rzats opened this issue 8 years ago • 5 comments

Description

Light & Shadow (L&S) is one of Terasology's major gameplay modules - a CTF PvE gamemode that has red and black chess pieces waging war against each other in a quirky, Alice in Wonderland-inspired setting, with the player being an independent swashbuckling chesspiece that can choose to join one of the factions or operate independently.

world map

Bringing the L&S word to life requires implementing various gameplay features: custom world generators, quests, AI, class system and so on. While most of these features are already present in Terasology itself, we need contributors to integrate them with L&S-specific blocks and features!

Feature Checklist (pick one or more!)

World generation

  • [ ] Tree generator - https://github.com/Terasology/LightAndShadow/issues/10
  • [x] Flora generator - https://github.com/Terasology/LightAndShadow/issues/12
  • [ ] Chunk generator based on a static heightmap - https://github.com/Terasology/LightAndShadow/issues/25

RPG elements

  • [x] Victory condition quest - https://github.com/Terasology/LightAndShadow/issues/23
  • [x] Fetch quests - https://github.com/Terasology/LightAndShadow/issues/24
  • [ ] Custom combat system - https://github.com/Terasology/LightAndShadow/issues/49

Other stuff

  • [ ] "Magic dome" (player-blocking forcefield) improvements https://github.com/Terasology/LightAndShadow/issues/6 https://github.com/Terasology/LightAndShadow/issues/7
  • [ ] Command center - https://github.com/Terasology/LightAndShadow/issues/39
  • [ ] Mob pathfinding - https://github.com/Terasology/LightAndShadow/issues/40
  • [ ] Tower turrets - https://github.com/Terasology/LightAndShadow/issues/44 & https://github.com/Terasology/LightAndShadow/issues/45
  • [ ] Custom map support - https://github.com/Terasology/LightAndShadow/issues/46

Required skills

The issue involves working with the game's codebase and requires intermediate level Java skills, as well as familiarity with Terasology's entity system (though you can learn that on the fly by using the wiki tutorials).

Where to start?

  • The main repositories for the module are https://github.com/Terasology/LightAndShadow/ and https://github.com/Terasology/LightAndShadowResources/ - head there for source code and sample assets!
  • Many features can be 'cloned' from existing classes in the engine or Core module; check the relevant issues for information on these.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

rzats avatar Oct 26 '16 19:10 rzats

I'm adding the GSOC label to this item with some ideas on how a GSOC proposal could be done with a focus on preparing the world itself (a bit like DynamicCities), moreso than competitive gameplay since we are still lacking meaningful PVP/combat.

The "big" features I could see become part of a proposal would cover some amount of the below items, details up to application collaboration with mentors:

  • [ ] The base world setup - for now I think I would favor a simple finite world akin to the board game setup @oniatus has been playing with (chunk generation only makes a game board then stops - beyond that is nothingness). It could aim to replicate the map in-lined above, with fairly symmetrical but novel "regions" of sorts
  • [ ] A faction choosing and score tracking system. Like dusting off the magic platform @msteiger put together long ago in the L&S develop branch, then letting the player pick a side in the "lobby box" and being ported to the appropriate home base. If a player dies increase a score for the other team, visible in some UI overlay
  • [ ] World feature: Guard towers. We already have some Structure Templates for towers. We should prepare to put some sort of weaponry on them, like trebuchets or ballistas. One side quest system could be hooking up power cables to the tower to boost the effectiveness of the defense, or sabotaging the enemy lines (probably would have to first fashion some sort of explosive to damage the lines)
  • [ ] World feature: Mines with resource extraction. Hook up mine carts and create a supply of a resource sending out a mine cart train at set times, after a player has initiated the system. If the cart makes it back to HQ intact the defending team gets a bonus (research upgrades to armor/weaponry?). If the enemy team intercepts the (eventually guarded train) they steal some resources or alternatively they could try blowing up the tracks to cause a slowdown (safer)
  • [ ] ... need to add more. Pretty sure I have a bigger write-up somewhere, maybe in the forum? http://forum.terasology.org/threads/las-light-and-shadow-art-discussion.762 - also http://forum.terasology.org/threads/mapgeneration-for-l-s.804

One ultimate goal for L&S could be aiming for gameplay akin to the old Alterac Valley battleground from WoW, with central goals and a bunch of side quests. That's just one way it could be done, however.

Cervator avatar Feb 06 '17 05:02 Cervator

Wow, this is incredible!

Would a possible GSOC implementation be single-player and take a significant number of hours to complete fully, like an RPG, or involve a group of players each picking a side and playing out an entire campaign over a couple of hours?

Central goals and a bunch of side quests sounds like it leans a little towards the former, but the CTF part of the mode, as well as the comparison to the Alterac Valley battleground make it seem like a more battleground-type thing where a whole game can be played in an hour or two.

clennam avatar Mar 02 '17 05:03 clennam

Personally I'd lean toward the short multiplayer sessions, but incrementally approaching it first through single player features is fine :-)

When I think about the side quests they're distinctly there to further the primary cause of somehow beating the other side. Maybe there are some snippets of involved lore but that discovery isn't primary to the gameplay.

That's in my mind though - a large part of GSOC is coming up with an interesting proposal that might even open our minds as mentors to ideas we had never thought of before :-)

Cervator avatar Mar 03 '17 06:03 Cervator

hey guys, I am Kevin and I am a CS student at Clemson University. I was hoping to contribute to this repo and maybe help/learn from this.

kevinmody avatar Jan 27 '22 02:01 kevinmody

Hi @kevinmody - good to hear from you! Your best intro to the community and what needs doing will be the Discord server, not years-old issues that may or may not be accurate anymore. Join us over at https://discord.gg/terasology when ready :-)

Cervator avatar Jan 27 '22 03:01 Cervator