CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.07k stars 4.09k forks source link

Affinity tab, Phobia expansion, and sanity meter #59074

Closed ghost closed 2 years ago

ghost commented 2 years ago

Is your feature request related to a problem? Please describe.

59061 gave me an idea about phobias. Started this as a comment there but i am moving it here to open up discussion and elaborate.

Fears present a great opportunity to add new challenges while adding dynamics to gameplay. I would like to see this idea expanded on.

Solution you would like.

Objectives:

Phobia expansion Add various phobias and a sanity mechanic. Phobias can be chosen at character creation but can possibly develop through gameplay. They can also be overcome or lessened through gameplay. Sanity will fall during confrontation with phobias. The character will be negatively effected the further sanity falls and keeping sane will be very important.

Fears could include arachnids, cockroaches, the dark, water, heights, wild animals, zombies, driving, etc. Fear levels could range as well, from "slightly scare of x", "scared of x", "terrified of x", "deathly afraid of x". The sanity meter would drop with exposure to fears, falling faster if more afraid of them. If a character is afraid of spiders and gets attacked by one, this can cause their fear to worsen while killing spiders could have a small chance of lowering this fear. We could have traits for "afraid" and "fearless" - these would affect how quickly a player loses sanity and to some extent lessons or worsens effects of fears.

Certain enemies in game would be able to lower your sanity and some ethereal monsters could even induce phobias in the character that would wear off over time (could last 5 min or hours).

Sanity meter A new sidebar section, displaying sanity as a bar (with values 0-100).

** 100% would be great - no effects. **** 80-99% would be good - no effects. possibly occasional auditory illusions (slight paranoia). mild panic possible. * 60-80% would be okay sanity - some auditory and visual hallucinations. panic starts ** 40-60% would be bad sanity - frequent hallucinations, panic attacks, loss of focus. panic, * 20-40% terror - things are getting worse. ** 0-20% pure insanity - loss of touch with reality. Nothing can be trusted, not your map, most of your HUD would be questionable. It is crazy as we have it now turned up to 11. Possibility of hurting yourself in actions (movement, attacking, etc).

Example for the fear of dark: the character CAN enter the dark (unless sanity is already low perhaps). The sanity meter will drop in darkness (slowly with regular dark and faster with extreme dark). Being in lit areas will raise their sanity meter slowly but faster in bright light. (even better would be that sanity raises faster when the character cannot see the dark, if they are in a basement with just a phone light, the dark tiles around them keeps sanity from rising much).

Sleeping should restore sanity, in general. Nightmares should be able to lower sanity, especially if the character has a frail mind. Certain places should nearly always drain some amount of sanity, such as pocket dimensions, perhaps being outside during a portal storm, etc.

Affinity tab While this feature would not be vital to the phobias expansion, it would help in showing the player the options as well as establishing an element for the character - preferences. This would have things they prefer or dislike. This can include "hobbies", allergies, and phobias.

I suggest a separate tab on character creation for "likes" and dislikes" or "favorites" and "fears". This could include things like the current reading background where a character enjoys reading. This can be expanded to other activities that a character receives a bonus or morale boost from. This tab could also include allergies. And of course it would list all the phobias you can choose.

In addition to this we can add a tab to the character screen (@) to view fears and preferences. This could be accessed with "a" from the character screen similarly to the new proficiencies tab. This would show all phobias and their severity.

Describe alternatives you have considered.

This could be implemented in base CDDA or perhaps is better suited for a mod, at least for now.

Sanity loss only inflicts hallucinations at low levels, maybe 40% and below, Before that (and including) it induces a state of panic - increasing with sanity loss - making the character is prone to miss attacks, fail at activities, and maybe stumble and fall.

Sanity meter can possibly be added to the stats or weariness section instead of a stand-alone.

Characters can develop fears for enemy types if injured by them too many times or too frequently without dealing damage or killing them. Fear of creature types lowers sanity slightly when seeing said enemy, more when in close proximity, and greatly when attacked by the creature type (This would take time, not just a few enemies. The actual specifics could be more elegant, but something to this effect)

Characters can develop affinities for certain weapons over time, resulting mostly in a morale boost when used primarily and possibly a slight accuracy/damage/ or crit boost for hits.

"Affinities" tab and other terms could probably be worded better.

Additional context

I will try to clarify and clean up this suggestion soon.

I used the tasks to try to clearly state all the steps mentioned here. Let me know if i should not have done that.

PatrikLundell commented 2 years ago

I am definitely against turning the game further into a Lovecraftian one. Adding phobias as character selection challenges is fine, as that's a player choice.

ghost commented 2 years ago

There is already some eldrich, lovecraftian elements in this game, but which aspect of this proposal are worst to you? i personally think the addition of panic as a status effect could work very well. I dont think a sanity meter is too weird either. It could remain a hidden variable if it seems to gamified being on the sidebar. In my thinking, this whole fears and sanity thing wouldn't be something you deal with most of the time in game. But it does add to the more creepy, dark side of the game and allow much more.

And then as i mentioned also, i could see this becoming just a mod. Especially if it gets rather substantial but a part of the community wouldn't want it in base game or it would take away from the direction the game is going.

PatrikLundell commented 2 years ago

I'm strongly against the portal storm mess, and it seems to be getting worse, to provide a starting point (disabling it in my game).

I'm fine with phobias as character creation picks, and only mildly against temporary fear attacks. I don't like enemies cursing you with phobias at all, an I'm completely against the (in)sanity meter, regardless of how it's packaged. I'm aware of (some of?) the core team members pushing in this direction, and I'm not a fan of it: when they nail things down there is no way to convince them otherwise. There is, of course, a risk that those who are not fans of horror, but just want the survival part will eventually give up and leave, but I have no idea if that's a small or large portion of the player base (and I don't think the core team values popularity over the desire to pursue their visions anyway).

I don't care about things in mods I don't play, as it's none of my business.

Zireael07 commented 2 years ago

Yep, I'm not a fan of horror either, and excessive focus on sanity/phobias will likely make me drop the game entirely (I already play very little due to lack of time)

E: Would be great for a mod however

ghost commented 2 years ago

Understandable. I think CDDA has a very solid in-game mod manager for worlds. The game is continually growing and is perhaps even more apparent that there are many different directions the game could go in. The fact that even in base game so many playstyles are supported and people love the game for various aspects speaks to the achievement this game is.

I think one solution would be to (even more strongly) support multiple directions of the game. I would hate to see contributors and fans of this game leave, although i realize to some extent it is inevitable, and i know there is a certain direction that higher devs wish for. I would prob fall closest in an i-am-erk camp (but lean even more into evolving the gameplay).

We already have the magiclysm, dinomod, and now the growing innawoods support along with others. My idea is to revamp the world creation/mod loader. Allow players to easily choose from a list of the major "versions" or "styles" of CDDA and add and remove mods from there. This wouldn't be too different from current other than making it quicker as well as simpler to choose for new players.

This would look something like:

  1. create a new world
  2. Choose version
    • Default
    • Magiclysm
    • Innawoods
    • Dinomod
    • etc
  3. Add mods
  4. etc
ghost commented 2 years ago

Wow, i actually just now saw the new world creationI could see adding the playstyle/version selection to the top of that fancy new menu. It could include a nice description of what the game offers or what it changes.

Basically we would still have default CDDA with it's direction and everything. Secondarily have half a dozen other playstyles with their preconfigurations. Then users can go to mod manager and add other special mods or take things away if they want. The nice thing about this is that maybe the ideal gameplay of Dinomod or Innawoods would include other smaller mods and those could be added to the default option for that version by the community and easily loaded by selecting the option on world gen.

In that case, if something like this phobia system was added, but not to default cataclysm, it could be a part of a larger CDDA version or style focused more on horror.

I really could see this as a win for everyone. Curious what thoughts are on this idea.

AtomicFox556 commented 2 years ago

I'd be against it being possible to acquire phobias in-game. There's just no good way to implement it that I can think of. The one way mentioned (gaining phobia if hurt by a monster without hurting them back) would either be extremely unlikely to apply, or extremely annoying, with no real "inbetween" point.

It's one thing if it's only chosen at game start; players who would find the concept annoying would just not pick such a trait, so it's easy enough to avoid by those who wouldn't enjoy it.

Regarding affinities: I believe that the weapon part of this is better handled via proficiencies (except the fun bonus; I don't think it makes much sense). It would primarily affect reload speed and, to a lesser degree, accuracy. Character preferences would be fine, but I don't know how to prevent min-maxing here, considering that most such preferences wouldn't be worth even a single point on their own at character creation.

ghost commented 2 years ago

I do think the phobias in game would be difficult to implement, but could possibly work if there were stages of it. Silly example, but say your character falls from a high place and gets hurt. 4 times in a playthrough. Perhaps they develop a mild fear of heights. But im not sure how fears would be diminish over time. Yeah you are probably right.

My only concern with proficiencies is how large the library is growing. But having a category for weapon proficiencies is prob just fine. My thoughts on the preferences thing is, lets take a silly example again, your character uses the toilet plunger and you have killed dozens of enemies with it. They begin to develop an attachment to the weapon and want to use it, perhaps even declaring they would like to "name the weapon" and they get a small morale boost from using it in the future. But yeah, probably not worth implementing, just an idea.

My reason for the preference thing is listing together things the character enjoys and hates. Loves and fears. Where you can view the effects of each (the morale boost/penalty and other buffs or otherwise). But i understand your points pretty well and agree for the most part.

chrispikula commented 2 years ago

Hallucinations would need to be done very carefully. Just randomly having a visual hallucination replace a monster sprite with another is a way ~Angband did it, and that was awful. It'd end up with you just dying, unpredictably.

Hallucinatory things more like random noises and flashes of light, those I could get behind, and we can already use existing mechanics to implement their effects. A flash of light that you know isn't real drops your focus, an irritating intermittent noise interrupts you and makes the player paranoid at seeing the 'sound was here sprite'. Things you know aren't real, and would get a log message saying so.

Now, if you are on the very low end of the sanity meter, bottom 15% or so, yeah, then all bets are off. But before that? Hallucinations should be generally be easily identifiable, but no more of an issue than seeing specks and wobbling with your from drinking way too much caffeine.

ghost commented 2 years ago

I agree with you. So we'd have character sanity (mental fortitude) and panic being a status effect received from lowered sanity. Ideally panic will have a few stages as well, maybe 3 tiers - mild panic, panicking, panic attack. Panic on its own only causes "figments" - small auditory and maybe slight visual blips, but extreme sanity loss can result in bad hallucinations,

Phobia/fear effects should be distinct from other mental issues. Currently, too many have the same effects and can be expanded. Any "hallucinations" from panic should amount to hearing noises and seeing things in the corner of your eye. Mostly auditory with slight visual aberrations, less severe than current hallucinations.

Panic is hard to display to the player directly. We can have blips in the log about your heart racing, having trouble focusing, thought you saw something, etc. We could have vague shadows and blobs appear on the screen for a turn or two but disappear quickly, representing your paranoia and distraction. Mainly panic should drain focus, lower accuracy, possibly even have a chance to be stricken by fear for a turn and unable to attack (or even move?).

In my vision all characters would have a sanity bar but if they have no specific fear, there is little reason this should ever go down save for special monsters or areas that are terrifying in nature and wear down any humans mental state. Panic is the standard effect of sanity loss, with more severe elements if sanity goes too far down. I have an idea, however.

Phobias should be able to add unique effects. Not only would phobias add to when and how sanity can drop, they are able to add special conditions on the character. Fears could cause specific apparitions, or other effects. Maybe arachnophobia can cause the player to see spiders. or fear of water would increase risk of drowning when sanity is low, etc.

(Actual details on how quickly sanity loss and panic happen, how long they last, which wears out first, etc would all have to be figured out in time. I am not sure the details of that matter now)