Giter VIP home page Giter VIP logo

gastanksvszombies's Introduction

Tanks Vs Zombies

Tanks vs Zombies using Paper2D and GameplayAbilites

Video showing some features in action: https://youtu.be/65oHJNchafo

Based on the TanksVsZombies stream by Epic Games

This project sample is made for single player and might not implement the best practices but it contains:

  • Different types of projectile abilities that use GameplayEvents to detect Hits:

    • Normal projectile that damages one enemy
    • AoE projectiles that damage more than one enemy on hit or on explode
    • A fire projectile that does fire damage over time
    • An ice projectile that slows target hit
  • Different types of abilities called from diffrent places in the code using different cooldowns

    • An abiltiy on the tank that kills zombies on overlap
    • The zombies basic attack abiltiy
  • An example of damage modification:

    • Using defense power to reduce damage taken
    • Targets taking extra damage from FireDamage type
  • GameplayCues that shows the effects of abilities

    • Targets on fire are tainted red
    • Frozen targets are tainted blue
    • All effects and cues would work on both tanks and zombies so it's possible to make AI tanks or make zombies use fire and ice abilities/ projectiles
  • Using DataTables and CurveTables for Data Driven gameplay

    • Curve table to init the stats of diffrent types of pawns
    • Data tables to manages Gameplay Tags and Cue Tags
  • An example of using different types of AttributeSets in the same class

  • An example of making a custom TargetActor to get the target data wanted for your ability

  • An example of using Paprer2D with C++

  • Possible additions to this project that you can work on by adding extra abilties and effects:

    • A heal or regen ability/effect
    • Any passive effect that presists through the game
    • Making different types of zombies that can shoot projectiles just by changing the ZombieAttack abiltiy
    • Can also have different types of Tanks and Zombies by playing with the StartingStats Curve table ex: zombies with a lot of health that walks slowly

Known bugs: sometimes the projectile explodes prematurely

Special thanks to Wopping from the Unreal Slackers discord channel for his constant help

gastanksvszombies's People

Contributors

aa1000 avatar marwahaha avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.