risinglegends.git
14 months agofeat!: vigor mortensen
xangelo [Fri, 25 Aug 2023 20:13:04 +0000 (16:13 -0400)]
feat!: vigor mortensen

This introduces the new vigor system which replaces the previous armour
point system.

The new Vigor system introduces a new stat based on constitution that
comprises your "vigor". At 100% vigor your defence + damage are at their
highest possible base values. As you fight your vigor drops (until you
visit a healer). As it drops it starts affecting your defence + damage
negatively.

Armour Points still exist, but have been converted into a "durability"
system which goes down much slower per fight and a bit more drastically
if you die. However, nowhere near the same rate as before.

As such, mitigation no longer has any effect.

14 months agochore(release): 0.2.17 v0.2.17
xangelo [Fri, 25 Aug 2023 16:05:16 +0000 (12:05 -0400)]
chore(release): 0.2.17

14 months agofix: xss username on signup
xangelo [Fri, 25 Aug 2023 16:05:04 +0000 (12:05 -0400)]
fix: xss username on signup

14 months agochore(release): 0.2.16 v0.2.16
xangelo [Fri, 25 Aug 2023 15:57:15 +0000 (11:57 -0400)]
chore(release): 0.2.16

14 months agofix: properly increment skill level
xangelo [Fri, 25 Aug 2023 15:57:09 +0000 (11:57 -0400)]
fix: properly increment skill level

14 months agochore(release): 0.2.15 v0.2.15
xangelo [Fri, 25 Aug 2023 15:37:18 +0000 (11:37 -0400)]
chore(release): 0.2.15

14 months agofeat: expoential exp drop-off/gain
xangelo [Fri, 25 Aug 2023 15:04:25 +0000 (11:04 -0400)]
feat: expoential exp drop-off/gain

When you are over 3 levels of the monster you are fighting you start
gaining less exp.

When you are under 3 levels of the monster you are fighting, you start
gaining more exp.

14 months agofix: rate limit fights!
xangelo [Fri, 25 Aug 2023 14:39:45 +0000 (10:39 -0400)]
fix: rate limit fights!

You can only start 1 fight every 2 seconds.

14 months agochore: separate fight round into its own file
xangelo [Thu, 24 Aug 2023 17:53:54 +0000 (13:53 -0400)]
chore: separate fight round into its own file

14 months agofix: add block timer for casting and clear after fight
xangelo [Thu, 24 Aug 2023 17:53:27 +0000 (13:53 -0400)]
fix: add block timer for casting and clear after fight

14 months agofix: standardize blocking timeouts for buttons
xangelo [Thu, 24 Aug 2023 16:35:11 +0000 (12:35 -0400)]
fix: standardize blocking timeouts for buttons

All buttons that block have been extracted into a single Button
component and the values for blocking have been extracted into a
"constants" file.

This file also includes constants for things like how long an alert
notification is displayed for.

14 months agofix: make signup collapsible
xangelo [Wed, 23 Aug 2023 19:23:12 +0000 (15:23 -0400)]
fix: make signup collapsible

If you are using a session account, we make the actual form portion
collapsible so that you can hide it and play.

14 months agofix: time displays at 0 for midnight
xangelo [Wed, 23 Aug 2023 19:14:06 +0000 (15:14 -0400)]
fix: time displays at 0 for midnight

15 months agochore(release): 0.2.14 v0.2.14
xangelo [Mon, 21 Aug 2023 20:39:17 +0000 (16:39 -0400)]
chore(release): 0.2.14

15 months agofeat: display travel progress
xangelo [Mon, 21 Aug 2023 20:34:03 +0000 (16:34 -0400)]
feat: display travel progress

When you're travelling it shows you your:
- Starting city
- Destination
- How long it will take you to get there

15 months agochore(release): 0.2.13 v0.2.13
xangelo [Mon, 21 Aug 2023 20:04:39 +0000 (16:04 -0400)]
chore(release): 0.2.13

15 months agofix: strip all tags in chat
xangelo [Mon, 21 Aug 2023 20:04:33 +0000 (16:04 -0400)]
fix: strip all tags in chat

15 months agochore(release): 0.2.12 v0.2.12
xangelo [Mon, 21 Aug 2023 19:52:39 +0000 (15:52 -0400)]
chore(release): 0.2.12

15 months agofix: xss chat input
xangelo [Mon, 21 Aug 2023 19:52:32 +0000 (15:52 -0400)]
fix: xss chat input

15 months agofeat: return to town button while travelling
xangelo [Mon, 21 Aug 2023 19:06:54 +0000 (15:06 -0400)]
feat: return to town button while travelling

When you're travelling between towns, there's always an option to return
to the starting town.

15 months agochore(release): 0.2.11 v0.2.11
xangelo [Mon, 21 Aug 2023 17:28:30 +0000 (13:28 -0400)]
chore(release): 0.2.11

15 months agofix: chat history clearning existing chat on load
xangelo [Mon, 21 Aug 2023 17:27:14 +0000 (13:27 -0400)]
fix: chat history clearning existing chat on load

Since we delay chat history loading for 1s, when it does load there is
the possibility that the history messages wipe out any existing
messages. This ensures that they get prepended to the chat and appear
before any new messages.

15 months agofix: green button colors
xangelo [Mon, 21 Aug 2023 17:24:46 +0000 (13:24 -0400)]
fix: green button colors

15 months agofix: migrate recruiter to htmx
xangelo [Mon, 21 Aug 2023 17:24:23 +0000 (13:24 -0400)]
fix: migrate recruiter to htmx

15 months agochore(release): 0.2.10 v0.2.10
xangelo [Fri, 18 Aug 2023 18:40:05 +0000 (14:40 -0400)]
chore(release): 0.2.10

15 months agofix: missing % from player bar
xangelo [Fri, 18 Aug 2023 18:38:28 +0000 (14:38 -0400)]
fix: missing % from player bar

15 months agofeat: add icons for beginner equipment
xangelo [Fri, 18 Aug 2023 18:38:16 +0000 (14:38 -0400)]
feat: add icons for beginner equipment

15 months agofix: move purchase button under icon in stores
xangelo [Fri, 18 Aug 2023 18:18:28 +0000 (14:18 -0400)]
fix: move purchase button under icon in stores

15 months agofeat: increase hp gain rate
xangelo [Thu, 17 Aug 2023 19:28:06 +0000 (15:28 -0400)]
feat: increase hp gain rate

15 months agofix: background not appearing if reload during fight
xangelo [Thu, 17 Aug 2023 17:55:14 +0000 (13:55 -0400)]
fix: background not appearing if reload during fight

If you reload during a fight the city background was not properly
appearing. You would need to complete the fight, then revisit the
Explore tab for the city background to load.

15 months agofix: chat timeline to messages show up chronologically
xangelo [Thu, 17 Aug 2023 17:54:29 +0000 (13:54 -0400)]
fix: chat timeline to messages show up chronologically

The orginal setup was appending history to the wrong element causing
chat to appear out of order.

15 months agofix: only disable equipping/unequipping in a fight
xangelo [Thu, 17 Aug 2023 15:11:32 +0000 (11:11 -0400)]
fix: only disable equipping/unequipping in a fight

15 months agofix: cant perform other actions in a fight
xangelo [Wed, 16 Aug 2023 20:00:17 +0000 (16:00 -0400)]
fix: cant perform other actions in a fight

15 months agofix: dont display death text after fleeing
xangelo [Wed, 16 Aug 2023 18:30:59 +0000 (14:30 -0400)]
fix: dont display death text after fleeing

The check now validates that the player has ACTUALLY died before
displaying that they died on the front end.

15 months agochore(release): 0.2.9 v0.2.9
xangelo [Tue, 15 Aug 2023 18:33:04 +0000 (14:33 -0400)]
chore(release): 0.2.9

15 months agofeat: new UI
xangelo [Tue, 15 Aug 2023 18:31:53 +0000 (14:31 -0400)]
feat: new UI

This is a huge overhaul of the existing UI away from the temp white
boxes setup to something that embodies the game a bit more. No
functionality has changed, but there's been a ton of CSS updates to
ensure that we keep load times short but still provide a good looking
experience to players.

15 months agochore: update credits
xangelo [Tue, 15 Aug 2023 18:31:33 +0000 (14:31 -0400)]
chore: update credits

15 months agofix: avatar takes up too much space on mobile
xangelo [Thu, 10 Aug 2023 19:01:24 +0000 (15:01 -0400)]
fix: avatar takes up too much space on mobile

On mobile views the 128px square avatar is too large and doesn't convey
much information. We still want it to be present since it's a
representation of the player and fosters further connection. As a result
we've shrunken the size to 96px on desktop.. down to 32px on lower
resolutions

15 months agofeat: default player to the Explore tab
xangelo [Thu, 10 Aug 2023 18:11:18 +0000 (14:11 -0400)]
feat: default player to the Explore tab

15 months agochore(release): 0.2.8 v0.2.8
xangelo [Thu, 10 Aug 2023 15:22:07 +0000 (11:22 -0400)]
chore(release): 0.2.8

15 months agofix: migrate signup/login form to htmx
xangelo [Thu, 10 Aug 2023 15:21:51 +0000 (11:21 -0400)]
fix: migrate signup/login form to htmx

15 months agochore: copy changelog to website
xangelo [Thu, 10 Aug 2023 15:21:20 +0000 (11:21 -0400)]
chore: copy changelog to website

15 months agochore(release): 0.2.7 v0.2.7
xangelo [Wed, 9 Aug 2023 17:24:45 +0000 (13:24 -0400)]
chore(release): 0.2.7

15 months agofix: reduce spam requests on /status
xangelo [Wed, 9 Aug 2023 17:22:26 +0000 (13:22 -0400)]
fix: reduce spam requests on /status

Instead of pinging the `/status` endpoint we send a status ws event when
there's a new connect/disconnect to the server.

15 months agofix: time displays 0pm at noon instead of 12pm
xangelo [Wed, 9 Aug 2023 17:08:00 +0000 (13:08 -0400)]
fix: time displays 0pm at noon instead of 12pm

15 months agofix: seed equipment info
xangelo [Wed, 9 Aug 2023 15:02:19 +0000 (11:02 -0400)]
fix: seed equipment info

15 months agochore(release): 0.2.6 v0.2.6
xangelo [Wed, 9 Aug 2023 14:55:12 +0000 (10:55 -0400)]
chore(release): 0.2.6

15 months agofix: migrate stat increase to htmx
xangelo [Wed, 9 Aug 2023 14:55:02 +0000 (10:55 -0400)]
fix: migrate stat increase to htmx

15 months agofix: armour icon support
xangelo [Wed, 9 Aug 2023 14:37:46 +0000 (10:37 -0400)]
fix: armour icon support

15 months agochore: move unused js
xangelo [Tue, 8 Aug 2023 18:48:52 +0000 (14:48 -0400)]
chore: move unused js

15 months agofix: chat history calls clearing chat
xangelo [Tue, 8 Aug 2023 18:35:44 +0000 (14:35 -0400)]
fix: chat history calls clearing chat

15 months agofix: auto-load player object and place in request
xangelo [Tue, 8 Aug 2023 14:46:40 +0000 (10:46 -0400)]
fix: auto-load player object and place in request

15 months agochore(release): 0.2.5 v0.2.5
xangelo [Sat, 5 Aug 2023 12:59:04 +0000 (08:59 -0400)]
chore(release): 0.2.5

15 months agofix: migrate chat to htmx
xangelo [Sat, 5 Aug 2023 11:35:21 +0000 (07:35 -0400)]
fix: migrate chat to htmx

15 months agofix: remove unnecessary console.log
xangelo [Sat, 5 Aug 2023 11:25:36 +0000 (07:25 -0400)]
fix: remove unnecessary console.log

15 months agofix: migrate item usage to htmx
xangelo [Sat, 5 Aug 2023 09:08:36 +0000 (05:08 -0400)]
fix: migrate item usage to htmx

15 months agofix: migrate exploring to htmx
xangelo [Fri, 4 Aug 2023 19:39:35 +0000 (15:39 -0400)]
fix: migrate exploring to htmx

15 months agofix: migrate explore fight to htmx
xangelo [Fri, 4 Aug 2023 17:58:50 +0000 (13:58 -0400)]
fix: migrate explore fight to htmx

15 months agofix: migrate shops to htmx
xangelo [Fri, 4 Aug 2023 16:14:30 +0000 (12:14 -0400)]
fix: migrate shops to htmx

15 months agofix: migrate healer to htmx
xangelo [Thu, 3 Aug 2023 19:52:24 +0000 (15:52 -0400)]
fix: migrate healer to htmx

15 months agofix: migrate inventory to htmx
xangelo [Thu, 3 Aug 2023 18:43:51 +0000 (14:43 -0400)]
fix: migrate inventory to htmx

15 months agofix: support time display
xangelo [Thu, 3 Aug 2023 16:36:24 +0000 (12:36 -0400)]
fix: support time display

15 months agofix: migrate skills page to htmx
xangelo [Thu, 3 Aug 2023 16:31:51 +0000 (12:31 -0400)]
fix: migrate skills page to htmx

15 months agofix: profile page to html (wip)
xangelo [Thu, 3 Aug 2023 15:31:57 +0000 (11:31 -0400)]
fix: profile page to html (wip)

15 months agofeat: purchasable items from the store
xangelo [Thu, 3 Aug 2023 13:17:20 +0000 (09:17 -0400)]
feat: purchasable items from the store

Health potions are now available from the Magehop! This also introduces
a cool new feature where we're actually moving off socket-binding to
http so that we're tracking less state on the server.

15 months agofix: rename shop_items to shop_equipment
xangelo [Wed, 2 Aug 2023 17:47:49 +0000 (13:47 -0400)]
fix: rename shop_items to shop_equipment

shop_equipment is more explanatory as the items listed are only
equipment types (weapon/armour/spells).

15 months agofeat: add health-potion functionality
xangelo [Wed, 2 Aug 2023 16:13:33 +0000 (12:13 -0400)]
feat: add health-potion functionality

Once the user has health potions, they are displayed on the Inventory
page. In order to do that we had to split up inventory + profile. We
also introduced the new "Modal" system which utilizes the default
`<dialog>` HTML element to display more information about an item.

It also introduces the ability to filter equipment in shops based on
whatever it actually sells. The idea is that you can switch to a tab
that matches what you're trying to buy.

15 months agochore(release): 0.2.4 v0.2.4
xangelo [Sat, 29 Jul 2023 12:03:32 +0000 (08:03 -0400)]
chore(release): 0.2.4

15 months agofix: time gradients not scaled properly
xangelo [Sat, 29 Jul 2023 12:03:27 +0000 (08:03 -0400)]
fix: time gradients not scaled properly

15 months agofix: filtered shop views
xangelo [Sat, 29 Jul 2023 11:58:49 +0000 (07:58 -0400)]
fix: filtered shop views

Shop views now display the different tabs for the different item types
that the shop sells making it easier to buy stuff.

15 months agochore(release): 0.2.3 v0.2.3
xangelo [Fri, 28 Jul 2023 19:38:10 +0000 (15:38 -0400)]
chore(release): 0.2.3

15 months agofix: spacing of time on mobile
xangelo [Fri, 28 Jul 2023 19:38:04 +0000 (15:38 -0400)]
fix: spacing of time on mobile

15 months agochore(release): 0.2.2 v0.2.2
xangelo [Fri, 28 Jul 2023 19:35:16 +0000 (15:35 -0400)]
chore(release): 0.2.2

15 months agofeat: first profile picture
xangelo [Fri, 28 Jul 2023 19:35:10 +0000 (15:35 -0400)]
feat: first profile picture

15 months agofix: display right background based on travelled distance
xangelo [Fri, 28 Jul 2023 18:49:31 +0000 (14:49 -0400)]
fix: display right background based on travelled distance

15 months agofix: 3s delay when clicking the button to keep walking
xangelo [Fri, 28 Jul 2023 18:35:22 +0000 (14:35 -0400)]
fix: 3s delay when clicking the button to keep walking

You have to wait 3s before you're able to take the next step.

Fixes: #11

15 months agofix: extend in-game day to 2 IRL hours
xangelo [Fri, 28 Jul 2023 16:28:01 +0000 (12:28 -0400)]
fix: extend in-game day to 2 IRL hours

15 months agochore(release): 0.2.1 v0.2.1
xangelo [Thu, 27 Jul 2023 16:54:48 +0000 (12:54 -0400)]
chore(release): 0.2.1

15 months agofix: only run into monsters 20% of the time
xangelo [Thu, 27 Jul 2023 16:53:11 +0000 (12:53 -0400)]
fix: only run into monsters 20% of the time

15 months agochore(release): 0.2.0 v0.2.0
xangelo [Thu, 27 Jul 2023 16:48:31 +0000 (12:48 -0400)]
chore(release): 0.2.0

15 months agochore: remove unused dependencies
xangelo [Thu, 27 Jul 2023 16:48:21 +0000 (12:48 -0400)]
chore: remove unused dependencies

15 months agofix: display stat vals without sign or coloring
xangelo [Thu, 27 Jul 2023 16:29:52 +0000 (12:29 -0400)]
fix: display stat vals without sign or coloring

15 months agofix: disable switching tabs in a fight
xangelo [Thu, 27 Jul 2023 16:25:16 +0000 (12:25 -0400)]
fix: disable switching tabs in a fight

15 months agofix: replace city background if you die while travelling
xangelo [Thu, 27 Jul 2023 15:04:00 +0000 (11:04 -0400)]
fix: replace city background if you die while travelling

15 months agofix: back to town button after healing
xangelo [Thu, 27 Jul 2023 14:50:29 +0000 (10:50 -0400)]
fix: back to town button after healing

15 months agofeat: return to town button if killed while travelling
xangelo [Thu, 27 Jul 2023 14:47:11 +0000 (10:47 -0400)]
feat: return to town button if killed while travelling

15 months agofeat: when you die your travel plan is discarded
xangelo [Thu, 27 Jul 2023 14:42:34 +0000 (10:42 -0400)]
feat: when you die your travel plan is discarded

When you die your travel plan is deleted and you are moved back to the
town you started at.

You are unable to start a new travel session if you don't have any HP.

15 months agofeat: paths now define a distance between them
xangelo [Tue, 25 Jul 2023 19:43:53 +0000 (15:43 -0400)]
feat: paths now define a distance between them

When you travel from town to town, the distance is defined the in asset
spreadsheet. The actual distance you travel is between 3-10% of the
total distance applied as min/max bounds.

At 50% of the distance between two towns the background image will
change to denote that you are approaching that town. At this point the
monsters you start to encounter will be ones tied to the destination town.

15 months agofix: display the image from the destination city at 50% progress
xangelo [Tue, 25 Jul 2023 19:43:42 +0000 (15:43 -0400)]
fix: display the image from the destination city at 50% progress

15 months agofix: travel now takes X steps
xangelo [Tue, 25 Jul 2023 17:47:04 +0000 (13:47 -0400)]
fix: travel now takes X steps

X is some random number between 150-200, but this will eventually be set
based on the "paths" between towns and then randomized a bit.

15 months agofeat!: travelling between towns!
xangelo [Tue, 25 Jul 2023 17:45:42 +0000 (13:45 -0400)]
feat!: travelling between towns!

For now travelling does nothing except introduce a "mid" screen that you
have to click through to move to the next town.

Eventually this will turn into multiple "steps" that the player has to
take with the chance for random encounters or finding things.

16 months agorefactor: simplify player damage to monster workflow
xangelo [Thu, 13 Jul 2023 18:26:36 +0000 (14:26 -0400)]
refactor: simplify player damage to monster workflow

This majorly simplifies the player damage to monster damage workflow. It
also identified a couple bugs with how we were calculating damage.

16 months agochore(release): 0.1.1 v0.1.1
xangelo [Thu, 13 Jul 2023 17:28:56 +0000 (13:28 -0400)]
chore(release): 0.1.1

16 months agofeat: display current deployed version in UI
xangelo [Thu, 13 Jul 2023 17:28:09 +0000 (13:28 -0400)]
feat: display current deployed version in UI

16 months agofix: casting now uses INT instead of CON
xangelo [Thu, 13 Jul 2023 17:20:19 +0000 (13:20 -0400)]
fix: casting now uses INT instead of CON

Fighting was defaulting to constitution instead of intelligence for
calculating magical damage.

16 months agofeat: allow users to log out
xangelo [Thu, 13 Jul 2023 11:32:51 +0000 (07:32 -0400)]
feat: allow users to log out

There's a settings page that lets users log out. It displays additional
warnings/prompts if they haven't signed in to this user with a
username/email address yet.

16 months agofix: move jquery to a webpack external to reduce bundle size
xangelo [Thu, 13 Jul 2023 10:55:11 +0000 (06:55 -0400)]
fix: move jquery to a webpack external to reduce bundle size

The bundle is growing and this is the first step -> make jquery an
external dependency loaded by the browser instead of packaged.

16 months agofix: check players hp before allowing them to start a battle
xangelo [Thu, 13 Jul 2023 10:21:42 +0000 (06:21 -0400)]
fix: check players hp before allowing them to start a battle

We display an error on the client side to stop them from starting a
battle.

We return a 400 on the server if the player doesn't have enough HP

fixes: #2

16 months agofix: prod build process + migration
xangelo [Thu, 13 Jul 2023 10:15:51 +0000 (06:15 -0400)]
fix: prod build process + migration

Since we pre-build webpack, we're just running the typescript migration
and copying `public/` into `dist/`.

We also tweak the migration script so that it runs ALL migrations since
releases are more spread out now.

16 months agochore(release): 0.1.0 v0.1.0
xangelo [Wed, 12 Jul 2023 18:46:13 +0000 (14:46 -0400)]
chore(release): 0.1.0