Skip to content

centaurreader/rpg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rpg

RPG gameplay distilled to its purest essence. Play the game.

Dev Env

Build Production

  • Run npm run build
  • Rename ./dist/mdc.js to ./dist/mdc.[version number].js
  • Rename ./dist/css/style.css to ./dist/css/style.[version number].css
  • Update imports in ./dist/index.html with the new file names
  • Update displayed version in ./dist/index.html
  • Remove ./dist/cheat.js and remove script tag for cheat.js in ./dist/index.html

TODO

v1

  • Save
  • Load
  • Scale XP requirement per level
  • Randomly generate monster with stats (appropriate for level)
  • Make monsters take damage (and make player miss them sometimes)
  • Add stats to gear, equip gear, augment player stats (damage)
    • inventory UI
    • open inventory
    • close inventory
    • navigate to sub-menus in inventory
    • equip items
    • unequip items
    • deal weapon damage
  • (bug) Games without stored data crash on trying to filter the inventory
  • (bug) On mobile tapping attack causes the event to fire twice
  • Make it display correctly on phones
  • favicon
  • (bug) Sometimes enemies are level 0
  • (bug) Enemies are sometimes too high level for player level
  • show enemy hp drain to 0 before spawning new
  • Trash inventory items
  • Make gear affect HP, Receive damage from monster when attacking
    • calc damage savings from gear
    • display HP
    • roll enemy attack damage; miss chance
    • apply damage to HP; display damage taken
    • warn when close to dead
  • new game menu
  • die when hp is <= 0; you died menu
  • continue after reloading
  • Rename "HP" stat type to "Armor"
  • disable attack button when dead
  • Make leveling increase base HP; heal player when leveling up
  • Open the game menu from mid-game; add continue button if game is in progress
  • Equip items from slot menu (click "Head" -> see Head items -> equip one)

v1.1

  • Scale inventory items with progression
    • add level to loot and factor into power
    • roll high level loot less often
    • display loot level in inventory
  • Add new calculations for damage
  • item stats
    • Make miss chance an accuracy stat on damage items
    • Make enemy miss chance a dodge stat on armor items
    • show stats in inventory screens
  • adjust stat scaling to match new calculator
  • Character screen
    • gp
    • level
    • hp
    • xp + xp to next level
    • accuracy rating
    • damage rating
    • dodge rating
    • current location
  • show location when enemy damage rate changes
    • set location name
    • set location description
    • set location image
      • open field image
      • dark woods image
      • ruined harbor image
      • orc stronghold image
    • reset wounds on new area
  • indicate drops at inventory icon
  • Store Menu
    • merchant image
    • Sell inventory items for GP
    • Open from area menu
    • Buy items with GP
      • display items
      • display item
      • gen item for each slot; near level
      • add to inv and subtract gp
      • remove from store list
  • Zugare (Death Orc)
    • spawn @ level 60
    • boss approaching dialog
    • You Win UI after defeating w/ new game button
  • add a link to the root site to the game menu
  • (bug) equipment slot items are not links
  • scale bottom of drops up when in new areas
  • adjust damage formula
    • ruined harbor too strong
    • orc stronghold too strong

v1.2

  • trigger attack with spacebar
  • sell from unequipped list
  • show feedback when pressing buttons
  • go to inventory from shop (to allow selling)
  • always hit after 2 consecutive misses

v1.3

  • add width and height to all images
  • defer css loading for custom font
  • include meta description
  • make toolbar list items valid html
  • (bug) space bar triggers attack while in modals
  • (bug) you will die before being healed by level up causing you to have HP but still get game over
  • add permanent upgrades for purchase on death (roguelite ish)
    • Drain: 1% life steal on hit
      • check for drain in tick and apply based on damage done
    • Nimble: +20 dodge
      • add method for proc and always use to access
    • Marksman: +20 accuracy
      • add method for proc and always use to access
    • Scavenger: increase chance to drop loot
      • check in lootProc
    • Refined: chance to drop higher quality loot
      • check in lootProc
    • Overpower: critical hit chance
      • check in get damage
      • different hit indicator
    • Cleave: chance to strike twice
      • check for buff in rollDamage (this should apply hit twice, including drain, etc.)
      • different hit indicator
    • Alchemist: gain health pot when you go to an area
      • conditionally display heal pot
      • track and display number of heals available
      • disable heal pot when no heals available
      • heal modal
      • increment heal count on new area
      • heal icon asset for navbar
      • heal image asset for modal
  • upgrade UI
    • display upgrades in character screen
    • use game win modal as death modal
      • display stats
      • display equipment
      • display upgrades
    • buy upgrade on death
      • only allow to buy one upgrade
      • end and go back to title screen
    • multi-char handling
      • serialize character on save
      • move upgrade hydration refs to character list
      • start new character + set name
      • delete character
      • (bug) new game does not reset in-progress state
      • continue existing character
      • display name in character screen, main game screen
      • only persist upgrades and heals on death (reset xp, hp, inv, etc.)
      • add 'view character' from main menu
    • (bug) 1. die 2. do not buy an upgrade 3. continue as char observe: game state is as it was when you died
    • make the new update backwards compatible

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published