Dec 22, 2011

Rings of Valor v1.0.0 Released

And so it is here -- Rings of Valor 1.0. This is mostly a more balanced and polished version of the previous release. Hopefully no one is too disappointed at the lack of new features.

There are quite a few balance tweaks and the whole list can be found again in the changelog below. One thing I'd like to mention is that the AI players now choose their targets bit differently. Due to the change I'm not so good at the game anymore (hah) and I like it. Defender passives no longer simply glue the target on you but the role should still be able to control the fight, to some degree at least.

I also learned how libtcod's subcell resolution works and why the credits animation was trying to use seemingly random characters on the sparkly things from my custom font file (before I erased them). And while I was at adding the seven required characters, I made the menu background animation use subcell resolution as well... which results it being quite processor heavy. In fact, my netbook now actually struggles to keep up with the noise generation. But, as always, you can turn the animation off from the settings menu. The background is slightly fancier now, though.

When I started this little project early summer, I thought it would be done by the Annual Roguelike Party. I was pretty well prepared; I had a list of all the features I wanted and I had planned the system and all the class abilities. But alas, I didn't "quite" make it. Early on, I also had a misconception that Rings of Valor was a roguelike but that fell off along the way. Still, I'd like to think it's at least like a roguelike and deserves its place at Roguebasin.

Also, I became even more familiar with libtcod, though it has still many cool features I haven't touched. My knowledge of C++ grew too and in my next (proper roguelike) project I'm going to avoid many things I totally did wrong with RoV. Mostly I will try to avoid the horrible repetition I tend to do when abstracting something seems too complicated. The source code of the game is about 17.8k lines (not commented) and ability.cpp takes 5.6k of that. It's just terrible.

There's a chance of new versions (a very large chance if there are game breaking bugs) but I'd like to move to designing the next project now. You will hear of it when there's something to show.

But enough of that, grab the new version here if you so desire (at BayFiles):

Changelog for v1.0.0 - 22.12.2011:

General balance tweaks:
* Improved AI target acquiring (almost a complete overhaul)
* Resilience now reduces the damage of critical hits by 5% per point
* Racial bonuses to resistances have been increased by 33 to 50%
* Ultimate abilities will now Hit more often
* Attack speed is now capped at 4 atks/s (down from 5)
* Casting speed is now capped at 2x increase from normal (down from 3x)
* Reduced the durations of all 3 seconds lasting buffs and debuffs to 2s

Ability tweaks:
* Ardent's Dimension Swap now activates the global cooldown and increases the target's Defense by +2/3/4 for 5s
* Avenger's Shield of Faith now lasts 10s (down from 20)
* Barbarian's Intercept attack now gains a +1/2/3 bonus to Hit
* Bard's Distracting Shot now lasts 2s (down from 5)
* Bard's Song of Defense now lasts 20s (up from 10)
* Cleric's Mass Dispel's cooldown is now reduced by 3/6/9s
* Deathknight's Antimagic Shell now reduces non-physical damage taken by 25/50/75% (up from 15/30/45)
* Druid's Mangle now lasts 2s (down from 5)
* Druid's Pounce trip now lasts 2/3/4s (up from 1/2/3)
* Druid's Roar now requires a successul attack roll but lasts 2/4/6s (up from 1/2/3) and its cooldown is reduced by 3/6/9s
* Invoker's Armor of Wrath now lasts 5s (down from 10)
* Monk's  Flurry of Blows now generates only one message (similar to Twin Strike and Armor Splinter)
* Psion's Telekinetic Anchor now does 16/23/29 damage to affected targets with each step (down from 32/46/58)
* Seeker's  Encaging Spirits's cooldown is now reduced by 1/2/3s, and no longer has an animation (since the ability does no damage)
* Shaman's Purge now requires casting and has a range of 10 (up from 5)
* Shaman's Elemental Mastery now increases the team's Fire, Frost, and Nature resistances by +10/15/20 (down from +10/20/30)
* Shaman's Heroism now increases the team's Attack speed and Energy regeneration by +15/30/45% (down from +20/40/60%)
* Swordmage's Fear No Elements now increases Fire, Frost, and Nature resistances by +20/30/40 (changed from 15/30/45) and lasts 10s (down from 20)
* Warlord's Shake It Off now has its cooldown reduced by 1/2/3s
* Wizard's Frost Nova now lasts 2/4/6s (up from 1/2/3)

Ladder mode changes:
* Gladiators now start at level 2
* Each team now gains 40 experience after each mach (down from 50)
* Cloaks now increase resistances by 10 per item level (up from 5)

Changes & fixes:
* Added a help screen to view controls during a match (toggled with '?')
* Added hotkeys to most menu items (F1 - F7, tab, escape, enter)
* AI gladiators should no longer get stuck when going for a power-up
* Save files are no longer deleted and games are saved after each mach
* Few class descriptions had incorrect values
* libtcod's credits animation now uses subcell resolution like it's s'posed to (the font file was missing the characters)
* The menu background animation now uses subcell resolution as well
* The error message line in matches should now fade to black completely


  1. Congrats on hitting v1.0---very much looking forward to your next Roguelike project!

  2. This game is cool. I've always been thinking about how someone should make a MOBA style RL. Well done!

  3. One thing that would be super helpful is the ability to adjust the game speed. Especially when starting out, the fast pace can make it difficult to learn the ropes.