Author Topic: The Red Prison - roguelike based on 5th edition D&D  (Read 2239 times)

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #45 on: July 18, 2019, 06:24:37 AM »


After a few weeks delay, a new version is finally up for download. The delay was because I embarked on a bit of a complicated arc of development and the build was too unstable in various ways to release because of these big additions to the codebase.

I've been spending the last couple of weeks playtesting and ironing out bugs and hopefully (!!!) the version that I've released is as bug-free as I can hope for an playable!

Here is a rundown of the big changes:

* Druids - new character class has been added. The big feature of this class is the level 2 ability to use wildshape! There is also a powerful selection of spells available from both the cleric and wizard lists and there'll be more custom spells coming over the next few months.

* Dynamic quests - I've begun the work on making dynamic quests which appear randomly in the dungeon and assign you different and often competing goals. The first step of this rollout is on some dungeon levels, there is a chance that two rival NPC groups will spawn. They are often very, very tough although their makeup is random. Both will task you with killing the other. It is planned that you'll get a big reward for doing so, but that hasn't been implemented yet. It's a bit experimental still although it seems to be working well apart from a hard-to-reproduce weird behaviour where the quest dialogue doesn't work randomly. I'm looking into it though.

* Map generation - with the addition of quests came the need to rework the map generator to set out special areas where these quests would spawn. I also took the opportunity to add special entry and exit vaults for levels so that stairs would spawn in more logical places rather than just randomly in some narrow corridor. So the dungeon generation should seem a fair bit different and more complex with a lot more variety hopefully.

Full change list:

* Fixed bug where casting bless caused a crash due to an error in the stats display code.

* Changed the way that druids get spells so they are now like clerics and instantly know all spells at a level they can cast.

* Updated stats display to properly display the damage type being used when in wild shape.

* Started work on dynamic quest system. Implemented quest object and start of work on generating quest givers and target throughout maps.

* Changed AI to not attack neutrals automatically.

* Made it so that neutrals don't provoke opportunity attacks.

* Built upon dynamic quest system. Added new long message function so that there are popup dialogue boxes to convey the quest instructions. Added quests object into saving and loading games. Ensured that quest objects are removed from general pool of actors when loading and saving and tracked through the quest system instead. Ironed out bugs with finishing kill quests.

* Made it so that quests and their goals spawn on the same floor to prevent what would be an excessive amount of backtracking. Dummy quest currently has two NPCs asking for the death of the other.

* Enlarged map size to accomodate quests on the same map but with targets at opposite ends.

* Added proper_noun flag to deal with oddities arising from wild shape and the name display.

* Added check for player to have blindsight to deal with scenario where player wild shapes into a bat.

* Added checks to make sure that wild shaped creatures can't pick up or drop items as well as not being able to cast, fire or open and close doors.

* Changed autoexplore algorithm to deal with wild shapes being unable to open doors.

* Fixed bug where followers weren't switching loyalty to new wild shape object (and back again) after transformation.

* Implemented preserving intelligence, wisdom and charisma and XP gains across form changes.

* Fixed display issues with wild shape, now it hides the player's true name, race and role and just displays the monster shape with no gaps in spacing.

* Changed map generation to make the complete map 4x3 vaults which is probably a better size and helps with generating times.

* Added new UI option to confirm whether player is sure they want to do an action. Linked this to attacking neutrals.

* Added make_hostile function which recursively works through monster list to check to see what other allied monsters need to be made hostile when player attacks.

* Created basic MagicMonster and RangedMonster AI's to use for non-companion creatures because that hadn't been implemented yet.

* Created new vault type for quests designed so that a tough NPC and followers can spawn there.

* Tidied up quests by removing references to different levels so that all quests occur within a single level.

* Changed sidebar display colours so that allies are green, quests are purple, neutrals are white and hostile are red.

* Added mobs of allies for quest NPC's. Made it so that allies of NPC's can't be convinced to follow player.

* Reworked dungeon generation algorithm so the game distinguishes between normal, stair and quest vaults and implemented all three with basic options.

* Reduced number of quest NPC allies to 1-3 rather than 2-5. It was too cluttered.

* Added a bunch of new stair and quest vaults.

* Added two new dialogue options for each stage of each quest.

* Added more complexity to the way in which names are printed to take into account whether there are proper nouns as names or not and whether a 'the' should be used or not.

* Reworked all messages to take advantage of new naming system.

* Reworked spell messages so that they aren't shown when a caster is out of sight of the player.

* Simplified AI when it comes to healing and reviving because it seems a bit buggy.

* Reduced ally chat by about half because it was happening too much.

* Hopefully fixed a bug causing hangs to do with quest NPC's AI.

* Fixed bug where crash would occur when more than 26 items picked up.

* Hopefully fixed bug where sometimes quest NPC's wouldn't talk.

* Made sure that arrow keys worked as input across the board rather than just some of the time.

* Updated display to show max HP for enemies and neutrals but not current HP.
« Last Edit: July 18, 2019, 10:10:14 AM by pat »

getter77

  • Protector of the Temple
  • Global Moderator
  • Chancellor
  • *****
  • Posts: 4877
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #46 on: July 18, 2019, 12:31:24 PM »
Sounds like another fine leap forward~  8)
Brian Emre Jeffears
Aspiring Designer/Programmer/Composer
In Training

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #47 on: August 09, 2019, 01:44:47 AM »
After a bit of a break from development, I've been back into the swing of things and have just released a new version.

The main features of this version are picking up a bunch of small big fixes and changes that I've been making slowly over the last few weeks (while notionally not working on the game) and a big development push into expanding the categories and variety of magic items available in the game.

These now include:

* wands of web, fireballs, lightning bolt and magic missiles;
* dwarven plate armour;
* dragon scale armour of all kinds;
* elven chain mail;
* mithral armour of all kinds
* oil of sharpness;
* rings of poison resistance, invisibility and protection;
* potion of giant strength (with different strengths for hill, frost, stone, fire, cloud and storm giants);
* potion of heroism;
* scimitar of speed.

There are two categories of magic items with common and rare having different chances of being placed in the dungeon. I still haven't finalised how items get distributed because there is new stuff being added all the time so you might find that magic items might prove too powerful and common in the current build and that'll be addressed in due course. Until then, it's probably a good chance to try things out!

One thing that I'm actively monitoring is the strength of wands - the rules say that you get 7 charges and they can recharge after a long rest. In game, this means that you might get, for instance, 7 fireballs each and every rest and this seems a bit too powerful to me. I'm thinking that I'll potentially turn off item recharging, maybe on a case by case basis because it's a poor fit for the game but I'm still undecided.

Next things on my list are to add more druid spells, add more magic items, expand on map generation, and maybe look at implementing barbarians and monks...

All feedback, bug reports or suggestions are more than welcome.

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #48 on: August 09, 2019, 04:51:03 AM »
Here's a gif demonstrating the new magic items with the spawn rate turned up to 100% so I have a whole bunch of toys to try out. An unfortunate NPC party found themselves the test subjects:


pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #49 on: August 12, 2019, 12:10:36 AM »
New version with minimap:


pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #50 on: August 20, 2019, 11:13:53 PM »


One of the things that RPG's and especially roguelikes seem to do badly is traps. It seems pretty boring to just inflict a certain amount of damage by way of dart trap, arrow trap, spear trap, etc. There's a few deviations from the boring path with rolling boulder traps in nethack, gas traps in brogue and things like that, but I wanted to go in a completely different direction.

So I implemented more of an environmental trap system where when the player steps on a pressure plate, certain doors shut and other doors open changing the shape of the dungeon. The hope is that this will create some tactically interesting situations where the player needs to reassess the path they need to take in an unfamiliar situation and perhaps with allies being unexpectedly stranded outside of the room. I don't want to make these things automatically lethal so they're all fairly benign at this stage but I'm going to add in some dangerous ones next I think. The plan is that they'll be clearly signposted though, ie. the player will see an artifact on a pedestal in a really obvious vault with warning runes on the door. In that scenario the player shouldn't be surprised that when they pick the artifact up, walls open to reveal a group of skeleton warriors or something like that.

Anyway, by doing all this, I created a heap of edge cases where the player might end up trapped forever in a part of the dungeon and I'm trying to avoid this by reworking the situations where these traps can take effect. And the way I'm testing it is by turning off monster generation and running my autoplay feature for as long as possible to hopefully identify any weird situations like that. So the above gif is what my work screensaver for the day looks like.

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #51 on: August 23, 2019, 11:01:02 AM »


New version has been released with the biggest changes being the introduction of all-new vaults with interactive features. Currently they are limited to pressure plates which open and shut secret doors, but it has the capacity to be expanded to all sorts of effects.

This is the way that I've decided to implement traps - rather than just a simple trap which causes damage without much other interaction, these traps cause the dungeon to shift around the player. Sometimes this will expose the player to unexpected danger, sometimes the player will find themselves having to survive without their allies for a while, or sometimes it'll just make exploration a bit more interesting.

The next biggest change was the implementation of a form of the cunning action trait for rogues. Thanks to some clever user feedback, the idea is to allow rogues to always withdraw from combat with provoking opportunity attacks through the use of this trait. What this means is that rogues don't have to be as careful when it comes to getting into melee range and it synergises really well with sneak attack. Now rogues can explore and scout without fear because they know that they'll be able to drop back without incurring too much damage to their allies where they can really dish out some damage!

Another important change for ease of use is the implementation of another premade character type - the tiefling druid. This will allow for quick starts for druids and will speed up play for those who just want to dive straight into the game.

Apart from that, here's the full change list:

* Changed the way that the game checked to see if player could see monsters doing certain actions resulting in messages. Hopefully will tidy up some issues to do with this.

* Added fog cloud as a level 1 druid spell.

* Began reworking field of vision calculations to take into account the necessity for some Effects to block sight.

* Added new pre-made character to help with testing - Tiefling Druid.

* Finished updating field of view calculations to take into account effects which block sight.

* Added new tiles for various magic effects.

* Added a non-diggable trait to tiles in special vaults so that set pieces can't be interrupted during mag gen.

* Fixed bug with using oil of sharpness on blunt weapon causing crash.

* Finished implementing special vaults with trigger squares causing walls to appear and disappear.

* Implemented possibility for multiple special vaults per floor.

* Put in a whole bunch of new special vaults including ones that mirror normal vaults to cause some surprises.

* Fixed a bug with healer pathfinding AI which caused a rare crash.

* Fixed aasimar racial charisma bonus to +2.

* Fixed potential bug with dying while in wild shape.

* Fixed potential bug with messy monster deaths.

* Implemented an always-on cunning action trait for rogues which allows them the unique class ability to withdraw from combat without drawing opportunity attacks.

* Reduced spawn rate of rare magic items.
« Last Edit: August 23, 2019, 11:11:37 AM by pat »

Joonas

  • Acolyte
  • *
  • Posts: 40
    • View Profile
    • Email
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #52 on: August 26, 2019, 12:55:22 PM »
Any plans for the endgame yet? Will there be a win-condition?

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #53 on: August 26, 2019, 01:14:34 PM »
I actually do have some basic plans sketched out although I'm still thinking it through before implementing it.

At this stage I'm thinking that a final confrontation on dungeon level 20 with an adult red dragon would be a suitable challenge to work towards. I'm turning that idea over in my mind as to exactly how it's going to work and what other things I could include to make that challenge interesting whilst still achievable for a level 7 - 9 character with a few henchmen in tow.

I want to be a bit careful before implementing that because I don't want it to be too easy initially so that players feel like they've completed the game and move on while it's still evolving. And even once I'm done with that, I'm also open to the idea of creating an overworld with more dungeons and a longer term goal.

I know that this is something that you've put a lot of thought into with Zorbus and that's been interesting for me to watch develop.

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #54 on: August 27, 2019, 05:43:29 AM »


New version has just been released which allows for the player's allies to be controlled in terms of what weapons and armour they use.

This should let character builds who can't use heavy weapons and armour, for instance, to kit out their followers with these things so that they don't go to waste.

You can use this feature by 't'alking to your follower and choosing the inventory management option. This will give you the choice to give the follower items to equip or carry along with making them give them back or drop them on the ground. Hopefully it's fairly self-explanatory.

The 'l'ook command has also been expanded on so that you can use that to see creatures (which practically at this time is limited to player followers only) and what items they are carrying and have equipped. I might expand this system to giving a visual cue to the player as to when a monster has a special item equipped so that it's more obvious, but this will become more relevant once I introduce monsters using items, not just the player's allies.

Along with this, there's quite a few bug fixes in this release as well.

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #55 on: September 08, 2019, 09:05:08 AM »


I've just released a new version and there's some really quite significant changes:

* Warlocks - a fair few players have requested this class be added to the game and the current build has them in there as an experimental option. You can quick-start as an aasimar warlock to try it out quickly. It required quite a bit of work behind the scenes to deal with the different way that warlock's spell slots worked - rather than having spell slots per level like wizards and clerics, they only have a single pool of spell slots to cast all spells from.

There's still quite a bit of work to do - there aren't any eldritch invocations in the game yet but there'll be a few options being implemented very shortly and there's plenty of room for more spells. I also need to properly implement low level spells being used with higher spell slots. It wasn't a big priority previously but it's an important aspect of the way which warlocks use magic so I'll be taking a look at that as well.

One of the big decisions to make was how to handle the warlock's pact boon. The Pact of Chains and the familiar that it grants felt like a bad fit for a game where fighting is most of the actions that you'll take. I'm still not sure how or if that'll work. Pact of the Blade is a possibility but I haven't implemented it yet, so all warlocks at this stage take the Pact of the Tome.

Any feedback or bug reports for the new warlock class would be greatly appreciated - there was a fair bit of work done on them which changed some long standing features of the game so there may very well be something unstable created as a result.

* A proper endgame along with balancing dungeon generation - previously the dungeon was of an infinite depth with ever-increasing difficulty the further you went down. That was always just a placeholder though and the intention was always to make a final level with a final encounter. So I decided to cap the dungeon generation at level 20 and implement that final boss, although that encounter will develop more as time goes on. The final boss on level 20 is an adult red dragon with a CR of 17. Considering that the level cap for players is 10, even with a few henchmen, you'll need a lot of luck to stand a chance.

Because I picked an end to the dungeon's depth, it made sense to rejig the way that monster generation worked so that players saw a lot more variety as they went deeper. That's been done, but the side effect of that is that the dungeon is now a hell of a lot more dangerous. You'll start seeing tougher monsters immediately and level 1 is no longer a risk-free zone. Hopefully it makes for a much more tense and challenging experience right from the get go.

Full change list:

* Implemented arcane recovery for wizards. Created a custom menu to deal with this and allocating spell levels up to half character level divided by two but rounded up.

* Added dungeon depth cap. Fixed issues with autoexplore and a lack of a downstairs when at max dungeon depth.

* Added end game encounter with an adult red dragon.

* Increased the possible CR of spawning monsters to make the dungeon a whole lot more dangerous.

* Fixed bug where druids were not using wisdom as their casting stat.

* Added different displays for warlocks and wizard spell slots. Removed spell slot displays for non-casters.

* Added in a whole bunch of special cases to deal with the unique way that warlock spell slots work.

* Implemented hellish rebuke as a level 1 warlock spell. It works as a reaction in the rules as written but that's a bit hard to translate so I made it a condition which lasts until the player rests and triggers automatically on taking damage against whoever that attacker is.

* Implemented eldritch blast. Cantrip which can target multiple enemies as levels go up.

* Implemented pact of the tome for level 3 warlocks. Reworked spell menu so that spells were always in ascending order of level due to the quirks that this new process created.

* Added chill touch as a wizard and warlock cantrip.

* Implemented infernal legacy abilities for tieflings - can cast hellish rebuke as an ability at level 3 and darkness as an ability at level 5.


Joonas

  • Acolyte
  • *
  • Posts: 40
    • View Profile
    • Email
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #56 on: September 08, 2019, 10:40:27 AM »
Nice to see the endgame forming up.

You should probably announce new releases also at Roguebasin. I seem to get most of the traffic through that site.

Have you thought of some kind of morgue files? Might be good for balancing and bug hunting. I don't know anything about Steam API but I've read that is has some stuff for creating leaderboards and probably something to get other player metrics as well.

pat

  • Bishop
  • ***
  • Posts: 178
    • View Profile
Re: The Red Prison - roguelike based on 5th edition D&D
« Reply #57 on: September 08, 2019, 11:41:00 AM »
You're right that roguebasin generates the most traffic but I generally try and save that for the milestone releases. I'm releasing every week or two and I think it'll clog up the news feed if I do it for every single time.

Yep, that's in my plans. It's been on the backburner while the game is still finding its feet in terms of the overall gameplay loop and what a run looks like, but with an endgame now implemented it's probably a logical time to take a look at it. I haven't delved into the capabilities of Steam like that but I'll definitely be taking a look. It'll be a completely new area for me to explore which is a bit daunting but necessary.