The goal of DCollage is to facilitate the creation of multi-layered, interactive, collages similar to those I created back in the days of Flash. Surprise it works for simple games too!
Keep Ye Alive is a game began as a Ludum Dare compo submission. It was created alone, and from scratch (boilerplate aside) in 24 hours. The first commit and tag are the state in which the game was submitted. Future commits are my efforts to flesh it out into the game I conceptualized.
- My Ludum Dare Submission Page - Please take a moment to vote and leave feedback if you're a participant
- Play the Original Here - This is the product of 24 hours as it was submitted for the Compo
- Play the Most Recent Build - This is where I'm posting progress made outside of the bounds of the Compo
The concept is simple. It's your classic warrior versus the world side-scroller except that it isn't. The Hero fights on his own earning coin for enemies slain and taking his lumps if he doesn't land the critical hit precisely. Your role is to manage The Heroes purchasing habits in order to keep ye alive. By clicking items in Ye Shoppe, for example a health potion, you purchase it and The Hero will quaf it immediately; replenishing their hitpoints and expending coin.
The initial build only had a single red potion which cost one coin and a single enemy which was placeholder art.
Given the opportunity I'll keep working on this on and off until the next LD in October of 2020. These are some things I would like to add:
-
Additional shop items: other potions, weapons, armor, etc
- Potion ideas:
- Invisibility - enemies do not attack the hero
- Coin magnet - all couns are automatically gatherd for X seconds
- Potion ideas:
-
Real enemy artwork and enemy variety
- slime
- skeleton
- giant head (final boss 1)
-
End of level SHOP/CHEST: at the end of the level, before the boss there will be
-
a SHOP which allows The Hero to purchase ONE of TWO types of items
- give a permanent DODGE abilities ( dash, roll, jump, back-step )
- new WEAPON ( bow, pole axe, better swort)
-
a CHEST which spawns an item that permanently buffs The Hero
- rezilience - reduce damage taken by 1% - stacks
- strength - increase damage done by 1% - stacks
- health - increase max health by 1% - stacks
- metabolizm - increase potion duration by 1% - stacks
- luck - increase chance for gem drop (gem is worth 10 coins) - stacks
-
-
End of level BOSS
-
Refactor enemy manamgement system to make it more dynamic
-
Refactor Component Type definitions to use a base type and extend as needed
-
A time survived clock
-
Title and instructions
-
[ ]More music and sound
- main theme
- menu theme
- longer main theme w/ melody
- fanfare for wave complete
-
Post effects like glows and sparks
-
Additional animation frames for all the things
-
Ground block variety
- Fix up tiling
-
Background parallax layer variety
- updated backgrounds with perfect tiling
- first biome backgrounds
- second biome backgrounds
- third biome backgrounds
-
Finish a run (sorry the princes is in another castle), get bonus/buff, next level (?)
-
Custom bitmap fonts
- Small font (for menus and tool tips)
- Large font (big one for time and coins)
-
Finish the first iteration of the shop
- Fix up shop panel graphics
- Get haste potion working
- Tooltips for potions
-
Add a proper preloader
-
Options Panel
- Adjust Music Volume
- Adjust SFX Volume
- Pause button or keyboard command
- Other game options...
-
Balance Audio - some sounds effects are much louder than others
-
High scores
- Online leaderboard w/ database (later)
-
Tooltips for potions
- ** Get haste potion working -> switch this to be a coin magnet potion **
- Tint-friendly enemy sprites (can we use a single gray sprite set and tint it to make any color cubes?)
- add gem drop (rarely, 0 to 1 times per wave based on luck attribute)
- make gem sprite
- add drop mechanic and luck chance (gem is worth 10 coin)
-
Get all "oldschool" sprite sheets into main sprite sheet
- Hero
- Others?
-
Make PIXI stop updating when window is unfocused
-
REFACTOR: Use enums for particle keys (heroParticles)
-
TEMPFIX: Reset wave counter when on final wave
-
TEMPFIX: When on final wave, reduce spawn time by 250 each time you clear the final wave
-
High scores
- Store personal best
-
Tweak Hero attack animation
- Add a glint/shine to the sword to indicate "kill frame"
-
Dynamic coin drops
- Enemies drop different number of coins
- Coin drop functionality
- Coin drop animation
- Spinning coin animation
- Design and add SFX for coins
-
Fix up ground tiling (more subtle variation, perfect tiling)
-
Fix Background/Sky (perfect tiling)
-
Faded effect when hero is dead (now w/ godrays)
-
Potion effects on hero
- Hand animated effect layer / tintable swirl animation
- Particle effect layer
- Filters or post effects
- Bonus: Try something with PIXI particle container
- Bonus: Magic sound for potion
- Bonus 2X: Get particles working for potion effects
- A wave system and increasing difficulty over time
- Wave manager
- Wave display
- Data structure to define waves
- Allowing for variation in enemy speed
- Allowing for multiple enemy types within a single wave
- Wave enemies should be weighted
- Refactor existing enemy manager to work with wave system
- Get armor potion workin
- Have the heart be mask based rather than frames based to show 0-100 HP
- Tweak potions so they can't be purchased until they respawn
- Get spritesheets working
- Add cooldown to potions
- Add cooldown visual
- Further refactoring of shop inventory to make it more dynamic
- PIXIJS - WebGL renderer with Canvas fallback and so much more https://github.com/pixijs/pixi.js
- pixi-filters - Collection of community-authored custom display filters for PixiJS https://github.com/pixijs/pixi-filters Currently yarn linked to a local version of the repo in order to use the as of yet un-merged changes to the godray filter which add alpha functionality.
- GSAP - tween animation library https://greensock.com/docs/v2/Plugins/PixiPlugin
- Visual Studio Code
- Sublime Text
- Aesprite
- Audacity
- Reason
yarn start
to go into development mode with live reloadyarn clean
to clean the/dist
directoryyarn build
to create a distributable bundle in/dist
yarn docs
to generate markdown documentation in/docs
- Pixi.JS
- TypeScript
- Prettier
- Rollup
- TSDoc / TypeDoc