Giter Club home page Giter Club logo

fencing-magician's Introduction

Fencing Magician (Summer 2016)

Overview

Fencing Magician is a prototype game developed in LibGDX. It's a top down action game where the main character is a fencing magician, skilled in both sword attacks and magic. The idea was to interweave the two so that hitting an enemy with a sword attack would empower the magic attacks. When an enemy is hit by the sword they are "tagged", making them glow red. Using the magic projectile attack, for example, will automatically home in on nearby tagged enemies, making it beneficial to hit enemies with a sword attack before using magic. The player also has a dash move which immediately moves them forward. The dash is extremely useful for getting closer to or avoiding enemies.

While this was the original premise for the game, I later began experimenting with other gameplay mechanics. For example, I added an orb the player can control with the mouse that can be used to hit enemies. Currently the project is on hold as I am attempting to expand the dialogue mechanic into a full project, as can be seen here.

The game uses LibGDX, Box2D for collision detection, Box2DLights for lighting effects, and Tiled for level editing.

Demonstrations

Note: Gifs may take some time to load and appear slow while first loading. Graphics are not mine. They are placeholder and for testing purposes only.

Using dashes to quickly move around. gif

Hitting an enemy with a sword and with the orb. attack

Using a magic projectile that homes in on tagged enemies. magic

Programming

  • Wrote custom extension of LibGDX map loader to load different shapes for collision detection.
  • Uses shaders for enemy outlines when they're tagged.
  • Uses Box2D raycasting for dash move.
  • Wrote code for sliding along rectangular collision shapes.

The code for the project can be seen here.

fencing-magician's People

Contributors

wizered67 avatar

Watchers

James Cloos avatar  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.