The Fastest RPG by DaylonWilkins

[raw]
made by DaylonWilkins for Ludum Dare 50 (JAM)

The faster you play, the longer you last! The Fastest RPG is a novel take on the RPG roguelite, combining aspects of a loot-based economy with speedrunning. Enemies get progressively stronger as time goes on, and it's a frantic race to outpace their power by defeating monsters to level up and collect powerful new runes. The monsters are never-ending, and therefore you want to survive for as long as possible before you're inevitably overrun. No frills and no wasted time, you set the pace!

How To Play

Upon starting the game, you'll be immediately thrown into combat.

TheFastestRPG.png

Time

The time at the top left shows your Progress Time, which is set by the last enemy you defeated. When an enemy (or group of enemies) spawn, they record their spawn time as the time shown at the top right, the Current Time. Upon defeating those enemies, your Progress Time is updated to their spawn time (NOT their defeat time). This means that your Progress Time does not update until you defeat your 2nd enemy, as the first enemy spawns at minute zero.

Mentioned earlier, the Current Time continues to count up, no matter what is happening on the screen. If you were to start a game and then immediately leave for 30 minutes, upon returning your current enemy would still be the same. However the next enemy you encounter will have their strength scaled to their spawn time, which will be dozens of levels higher than your current. For these reasons, the best way to keep pace is to defeat monsters as fast as possible, to try and keep your power advantage relative to your enemies.

Enemies

Enemies will appear in the middle of the screen. Their stats are randomized, but constrained to their spawn time, so a higher level enemy will always be stronger than a lower level enemy. Above the enemy portrait is their name, level, and current health. The stats to the right of the portrait are, from top left to bottom right: * Physical Attack p.png * Special Attack s.png * Physical Armor pa.png * Special Armor sa.png

Enemies will always use their highest attack stat relative to your defenses. Under the portrait you'll find the enemy's resistances, which are, from left to right: * Fire fireresistance.png * Water waterresistance.png * Electric electricresistance.png * Wind windresistance.png

A negative resistance will boost your attack, while a positive resistance will weaken it. If a resistance is over 100%, then a corresponding attack will heal them. Enemy attacks also have an element infused in them, which corresponds to their highest elemental resistance. Their color palette also reflects their highest elemental resistance. Enemy attacks do not take into account your elemental resistances.

On average, every 20 enemy encounters will result in a boss enemy. Such enemies will have "Boss" preceding their name, making the distinction very clear. These enemies are a fair bit stronger than normal enemies, so pay special attention that they don't take you out sooner than expected!

In the space under the elemental resistances, you'll find any status effects (buffs or debuffs) that the enemy is currently affected by.

Status Effects

To the right of the enemies, you'll find any status effects that you're currently affected by. Status effects may positively affect you, which are known as buffs, or negative affect you, which are known as debuffs. When applying a status effect, you have a 70% chance of success when applying to a normal enemy, and 40% chance if the enemy is a boss, and a 100% chance when applying them to yourself.

Status effects have a number of turns that they last, and will expire once their time runs out. Do note that the turn they're applied on also counts as a turn.

All status effects are: * Lifesteal lifesteal.png * Heals the user by some amount of damage dealt to the enemy. * Lucky lucky.png * Increases the rate at which criticals will hit. A 100% total critical rate will guarantee a critical hit on every turn. * Adrenaline adrenaline.png * Increases the user's attack. * Elemental Shield shield.png * Increases the user's elemental resistance by some percentage. Available for the four major elements. * Poison poison.png * Causes damage to the target every turn. * Bleed bleed.png * Causes damage to the target every turn, scaled as a percentage of their maximum health. * Sleep sleep.png * Causes the target to become unable to deal damage by setting their damage to zero. * Sick sick.png * Reflects a portion of the target's damage back to themselves.

Runes

Under the enemies, you'll find 6 runes slots, each populated with a starter rune. On each rune, the top row consists of the rune's element, name, rarity (color of the name), attack type, and target pattern. The elements are:

  • None none.png
    • No element, meaning damage is mitigated only by armor.
  • Fire fire.png
    • Damage is affected by fire resistance and armor.
  • Electric electric.png
    • Damage is affected by electric resistance and armor.
  • Water water.png
    • Damage is affected by water resistance and armor.
  • Wind wind.png
    • Damage is affected by wind resistance and armor.
  • Omni omni.png
    • Very rare. Damage is affected by the combination of all resistances. Has the highest (and lowest) damage potential.
  • Pure pure.png
    • Extremely rare. Damage cuts through all armor and resistances. Usually has far lower damage and critical potential.

Besides determining their attack element, a rune's element also grants you elemental resistances associated with that element. Higher rarities give a larger resistance, such that having enough legendary runes of the same element will nullify all damage from that element (potentially healing you in the process).

A rune's target pattern determines who is targeted when using a rune. * Single Enemy singleenemy.png * Targets the left-most enemy still alive. * All Enemies allenemies.png * Targets all enemies. Has slightly lower stats. * Self and All Enemies selfandallenemies.png * Targets everyone. Has slightly higher stats due to self targeting. * Self and Single Enemy selfandsingleenemy.png * Targets yourself and the left-most enemy. Has decently higher stats. * Self self.png * Targets yourself only. Has vastly higher stats.

If a rune has any buffs or debuffs attached, their effects will be detailed in the description. Buffs are always applied to yourself, while debuffs are applied to enemies.

Leveling Up

Every 10 enemies defeated will grant you 5 points to level up with. You may upgrade your basic stats or your runes, which increases their base power (changes are not displayed). Be careful with upgrading your runes, as replacing them will cause all additional levels to be lost!

Finding New Runes

TheFastestRPGRune.png

On average, every 4 enemies defeated will prompt a screen showing a new random rune (scaled to the current time). To get the new rune you must replace an existing rune. Select the rune to replace, and then press "Confirm" when done, or "Cancel" to not get the new rune.

KNOWN ISSUES: * No sound * Needs balancing * Graphical glitches when gaining/losing buffs * Evasion does not work

Ratings

Given 0🗳️ 0🗨️

Feedback

Skyward4d
05. Apr 2022 · 08:26 UTC
From the thumbnail and source code, this looks exactly like my type of game! But I'm not sure how to build it.
Can you provide install instructions. Looking forward to playing/rating it!
LDJam user 261838
05. Apr 2022 · 11:25 UTC
@skyward4d I also had problems with that, but i done this, first of all you have to have cmake, then 'run cmake .', you will have for sure some problems with that, but thats good, it will show you what you don't have, install this, and try again, when you're 'cmake .' didn't throw any problem, run 'cmake --build .' , you could have problems with object StatusEffect, if thats case go to code and change name of every object StatusEffect to statusEffect in include/statuseffect.h, src/enemy.cpp, src/menu/combat.menu, then when build it correctly move 'LudumDare50' to some directory, it works for me
LDJam user 258516
05. Apr 2022 · 12:51 UTC
Damn, I wanted to be an RPG (I also create one for COMPO), but I couldn't, even with the instructions passed by execute @vektrus

Can you explain how to assemble it?
LDJam user 266940
10. Apr 2022 · 03:56 UTC
I've got a Web and Windows build available now! No need to compile it yourself :)
WasteOfAmmo
10. Apr 2022 · 04:27 UTC
Played the web version.
Interesting idea. I want to like this game but I couldn't pick up on the meaning of all of the icons on the enemies and how they related to which attacks I should use. I also had difficulty figuring out what to do when the second screenshot above (new attack) would show up. Finally figured it out after a few games that you select which slot you want to trade out.
My difficulties were nothing that could not be solved by more detailed instructions that explain the UI in more detail.
I lost a lot of games of course. :-)
I also really was not clear on how playing quickly improved my outcome in the game... perhaps some visual clues of what delaying or playing slow causes would help.

I do like the game and the genre and I think this one has a lot of potential to be addictive.
LDJam user 266940
10. Apr 2022 · 10:45 UTC
Great feedback! I'll add a "How to Play" section that should go over the basics. We were so focused on features that we forgot to explain how they all work.

At least for the playing quicker part, the enemies get stronger as time goes on. 10 minutes in, the enemies will always be at a certain strength, so you're essentially trying to outpace their power level with your own. If you fall too far behind, you'll be too weak and they'll get you. Besides that, the game will continue forever (or at least until you hit the integer limits and it overflows lol), so it's _inevitable_ that you'll see that game over screen at some point :)