Jump to content
The Dark Mod Forums

Frob Helper discussion


snatcher

Recommended Posts

EDIT: This topic was initially named "Frob Helper madness".

-----------------------------------------------------------------------------

While working on something I analyzed the Frob Helper.

The Frob Helper was enabled by default in 2.11. The options were:

Show Frob Helper:

  • Yes [Default]
  • No

[Tip] Makes interacting with small objects easier by temporarily displaying a white dot.

------------------------------------------------------------------

In 2.12 the Frob Helper remains enabled by default but things changed:

Show Frob Helper:

  • Always
  • Hover
  • Fade In [Default]
  • Fade In Fast
  • No

[Tip] Makes interacting with small objects easier:
Always = Show crosshair dot at all times
Hover = Instantly show dot on highlight
Fade In = Gradually show dot on highlight
Fade In Fast = Same as Fade In but faster

------------------------------------------------------------------

If I was new to TDM I would expect a "Frob Helper" to help me identify frobs: you can interact with this, here is the helper so that you know it and you know where the center of the screen is in case you need it. The Frob Helper however was designed to compensate for the shortcomings of other mechanics of the game, and as such, the Frob Helper is flawed by design: it only shows up if the size of the object is smaller than the arbitrary value of 40. I will say at this point that I am well aware of the tdm_frobhelper_ignore_size cvar but this isn't the point.

This game isn't a shooter and "Always on" is not required unless we are talking motion sickness, in which case it belongs in a hidden cvar, for the few that may need it.

The starting point of the Frob Helper should have been:

  • On (the helper shows up whenever you can interact with something)
  • Off

From this point we can expand with more options, of course:

  • Always on (not recommended based on the nature of the game)
  • On for all items - Hover
  • On for all items - Fade In
  • On for all items - Fade In Fast [Default]
  • On for small items - Hover
  • On for small items - Fade In
  • On for small items - Fade In Fast
  • Always off
Edited by snatcher

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

I always tweak the tdm_frobhelper_ignore_size such that it is enabled for all object sizes as well because I prefer it that way. However, back when I implemented this feature, it was common feedback that it shouldn't be enabled for big objects like doors etc. because it was intended to help frobbing small objects, i.e., it was not supposed to be an interaction indicator, which we already had in the frob-highlight. The reasoning for this feature still stands today, so I don't see how this qualifies as madness. 😄 

The "Always On" feature has indeed been added as an accessibility feature as it supposedly helps some people with motion sickness, and since there were now already multiple options, I also added the "fade-in fast"-option because I felt the delay of the usual fade-in was so long that the frob helper wasn't really that helpfull in more hectic situations.

Accessibility features should by definition never be hidden, so I would not remove the "Always On"-option. In fact, I would actually like to see an extra options page only listing accessibility options. On that page, we could then of course also add a checkmark-option to enable frob helper only for small objects.

  • Like 2
Link to comment
Share on other sites

14 hours ago, snatcher said:

I would attribute that to excusable map-building little blunders. Nothing / nobody is perfect.

I actually would like to know what could be a reason that it shows a frobhelper where there's nothing to frob. This is a mystery to me.

Link to comment
Share on other sites

40 minutes ago, STiFU said:

I always tweak the tdm_frobhelper_ignore_size such that it is enabled for all object sizes as well because I prefer it that way. However, back when I implemented this feature, it was common feedback that it shouldn't be enabled for big objects like doors etc. because it was intended to help frobbing small objects, i.e., it was not supposed to be an interaction indicator, which we already had in the frob-highlight. The reasoning for this feature still stands today, so I don't see how this qualifies as madness. 😄

It goes without saying that I appreciate your comments and I respect your work, eh. We all want the best for TDM.

The frob highlight doesn't work well in some situations: difficult to detect in small objects or in large objects in some conditions, frob fighting in bodies and containers... The frob outline initiative failed to provide an alternative and the Frob Helper was supposed to complement the frob highlight but it did it partially, and we ended up with blinking mods, container-disabling mods, auto search bodies... and a questionable Frob Helper.

Perhaps madness is the better word.

I know people don't like the idea of corsshairs in TDM but a Frob Helper with tdm_frobhelper_ignore_size = 0 would have settled many things for good from day one. I think we agree.

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

1 hour ago, datiswous said:

I actually would like to know what could be a reason that it shows a frobhelper where there's nothing to frob. This is a mystery to me.

Isn't that just if you have a moveable or something behind a wall and its frob_distance is greater than the thickness of the wall? Walls don't block frobbing unfortunately, which is why you get those mapping bugs where you can frob paintings through the wall.

  • Like 2

TDM Community Github: https://github.com/thedarkmodcommunity

My fan missions: The Hare in the Snare, Part 1

The Lieutenant Series: In Plain Sight  High Expectations Foreign Affairs

Link to comment
Share on other sites

17 hours ago, snatcher said:

From this point we can expand with more options, of course:

  • Always on (not recommended based on the nature of the game)
  • On for all items - Hover
  • On for all items - Fade In
  • On for all items - Fade In Fast [Default]
  • On for small items - Hover
  • On for small items - Fade In
  • On for all items - Fade In Fast
  • Always off

I don't recommend this sort of UI layout.

If there are two independent settings (item size and fade duration), they should be two separate controls, not a single list containing a separate item for every possible combination of options. Otherwise you end up with a confusing and unwieldy list which explodes in size whenever a new option is added.

  • Like 1
Link to comment
Share on other sites

5 hours ago, STiFU said:

In fact, I would actually like to see an extra options page only listing accessibility options. On that page, we could then of course also add a checkmark-option to enable frob helper only for small objects.

I moved the frob helper and the frob outline options onto the gameplay difficulty page in the Unofficial Patch, because the other options page is indeed very crowded.

  • Like 1
Link to comment
Share on other sites

I'd hardly call it a mod, if the functionality is already there and it's merely about presenting the settings in a different way. Anyway, I already said that I basically concur and that I would ideally like to see an extra accessibility settings GUI for all related features: frob helper, head bob, more subtle mantle animations, you name it...

Still, your reasoning is kind of wrong because the intention of the frob helper was not to detect frobably objects, but to help the player aim on small frobable objects. The "Always On" feature unconditionally helps the player aim, so this does not conflict with the intention of the frob helper at all.

Link to comment
Share on other sites

  • snatcher changed the title to Frob Helper discussion

I have changed the subject to "Frob Helper discussion".

Here are some situations where the frob highlight falls short:

- Pick up items inside containers (frob fighting)
- Pick items from KO/dead bodies (frob fighting)
- Manipulate KO/dead bodies (am I aiming at the arm?)
- Detect frobs (large and small) in some conditions, specially when it is bright:

  • Frobable vent door or window
  • Frobable painting
  • Frobable book in a bookshelf
  • ...

Questions for everyone:

Should an optional frob helper help in all the above situation or in some only?
Do you detect any areas of improvement for the current Frob Helper?

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

Nobody?

While working on the mod I noticed that while "Fade In Fast" parameters apply it does not stick in the menu from session to session and it reverts back to "Fade In". The preset is missing in game/game_local.cpp:

int frobHelperPreset = 0; // Off
if (cvarSystem->GetCVarBool("tdm_frobhelper_active"))
{
	if (cvarSystem->GetCVarBool("tdm_frobhelper_alwaysVisible"))
	{
		frobHelperPreset = 1; // Always
	}
	else if (cvarSystem->GetCVarInteger("tdm_frobhelper_fadein_delay") == 0 &&
	         cvarSystem->GetCVarInteger("tdm_frobhelper_fadein_duration") == 0)
	{
		frobHelperPreset = 2; // Hover
	}
	else
	{
		frobHelperPreset = 3; // Fade In
	}
}
  • Like 1

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

Posted (edited)

Regarding "Fade In" and "Fade In Fast" I think I know what these two visions were going for.

"Fade In" wants to delay the help as much as possible (not to spoil the fun, I guess) by making use of an initial delay - where nothing happens - and a slow fade in.

"Fade In Fast" takes a more direct approach (in disagreement with "Fade In", I guess) and goes for a shorter initial delay - where nothing happens - and a faster fade in.

In my opinion the fade in speed (tdm_frobhelper_fadein_duration) must be discarded. Players should not be waiting to see if they can detect the helper but should wait because they know the helper is about to popup in its full glory.

Edited by snatcher

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

3 hours ago, snatcher said:

In my opinion the fade in speed (tdm_frobhelper_fadein_duration) must be discarded. Players should not be waiting to see if they can detect the helper but should wait because they know the helper is about to popup in its full glory.

Not sure if you confused tdm_frobhelper_fadein_duration with tdm_frobhelper_fadein_delay here, but if anything, I would discard the delay. The fadein_duration is supposed to smoothen the appearance of the frobhelper, thereby making it a bit more subtle. Why would you want to delay displaying the frob helper and then have it pop in instantly? If a player wants it to be intrusive, the hover option is the way to go. Subtlety was a key requirement in the design of this feature.

 

9 hours ago, snatcher said:

Nobody?

While working on the mod I noticed that while "Fade In Fast" parameters apply it does not stick in the menu from session to session and it reverts back to "Fade In". The preset is missing in game/game_local.cpp:

int frobHelperPreset = 0; // Off
if (cvarSystem->GetCVarBool("tdm_frobhelper_active"))
{
	if (cvarSystem->GetCVarBool("tdm_frobhelper_alwaysVisible"))
	{
		frobHelperPreset = 1; // Always
	}
	else if (cvarSystem->GetCVarInteger("tdm_frobhelper_fadein_delay") == 0 &&
	         cvarSystem->GetCVarInteger("tdm_frobhelper_fadein_duration") == 0)
	{
		frobHelperPreset = 2; // Hover
	}
	else
	{
		frobHelperPreset = 3; // Fade In
	}
}

Thats probably something we should fix.

Link to comment
Share on other sites

My apologies, @STiFU.

I am working on a prototype (mod) that will soon see the light. It isn't about one parameter but about all elements working together, as you well know. You can't see what I see and it is unfair that you base your responses on my comments alone. We will soon be able to compare models and carry on with the discussion in fair conditions.

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

The solution is 100% genuine, independent from the source code. I read cvars as reference to make the Helper work with the options but I don't mess around with user settings: I never alter cvars.

  • Correct aspect ratio across different resolutions
  • Available for frobables of any size (consistency)
  • Pointers designed to blend in with the user interface
  • Extra dynamic brightness based on lightgem values
  • Ring removed when peeking or using the spyglass
  • Pointers remain in the background when using readables / menus
  • Little trick to make things flow when operating doors
  • Always On mode switches between the dot and the ring

The Frob Helper was created for a specific purpose but, who is to tell when players need it or not? The Ring Helper is a shameless Frob Highlight companion.

  • Like 3

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

That changeset reads quite decent, actually. Not sure about your naming, 'though. "Ring helper"? Which bell is it going to help me ring? ;-D Jokes aside, here are some comments:

4 hours ago, snatcher said:

Correct aspect ratio across different resolutions

4 hours ago, snatcher said:

Ring removed when peeking or using the spyglass

4 hours ago, snatcher said:

Pointers remain in the background when using readables / menus

Do these bugfixes also apply to the core mod, or are they exclusive to your mod-pack?

4 hours ago, snatcher said:

Always On mode switches between the dot and the ring

That's a great idea and very consistent with your design approach. I can see the value of this feature.

4 hours ago, snatcher said:

Extra dynamic brightness based on lightgem values

Something like this was frequently discussed when developing various features for the core mod. However, we always dropped that idea because the light-gem does not reflect how bright the object you are looking at is. It only shows how bright the player is. So, utilizing the light-gem here will lead to incorrect brightness of the helper GUI. I would suggest to better leave it at a constant value.

4 hours ago, snatcher said:

Pointers designed to blend in with the user interface

4 hours ago, snatcher said:

Little trick to make things flow when operating doors

Would you mind elaborating what you mean by these?

Link to comment
Share on other sites

4 hours ago, STiFU said:

[...] Not sure about your naming, 'though. "Ring helper"? Which bell is it going to help me ring? ;-D

LOL, blame it on my English, I didn't think it could sound that way 😆

4 hours ago, STiFU said:

Do these bugfixes also apply to the core mod, or are they exclusive to your mod-pack?

Everything I do is unofficial. Thanks to the great scripting system this engine has and thanks to past and present Developers that kept opening the engine with each new release to more and more scripting events we can create complex plug and play mods (or add-ons) that sit on top of everything without the need of touching the source code.

Going to some places is tough for the developers - even when they truly want to go there - and mods can fill some gaps. The Modpack can be easily installed (download and move) and can be easily removed, leaving no traces behind. Give it a try, if you like, and experience it first hand.

(Regarding "Extra dynamic brightness based on lightgem values")

4 hours ago, STiFU said:

Something like this was frequently discussed when developing various features for the core mod. However, we always dropped that idea because the light-gem does not reflect how bright the object you are looking at is. It only shows how bright the player is.

Yes, I agree.

4 hours ago, STiFU said:

So, utilizing the light-gem here will lead to incorrect brightness of the helper GUI. I would suggest to better leave it at a constant value.

It should not be constant otherwise we end up with pointer that is most of the time too bright simply because its static brightness must account for all potential situations.

I ran tests in many different scenarios going from the darkest missions (ie: High Expectations) to the brightest (Reap As You Sow) and while using the lightgem as reference isn't perfect it helps immensely in keeping the brightness down when sneaking in the shadows.

4 hours ago, STiFU said:

Would you mind elaborating what you mean by these?

  • Pointers designed to blend in with the user interface

A HUD element that can be perceived as part of the game, because of the style and/or functionality.

  • Little trick to make things flow when operating doors

The ring fades out when frobbing a door inviting you to carry on with your business. Technically, the ring fades out when a door rotates.

TDM_Modpack_Thumb.png

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent Status Updates

    • jaxa

      Looks like the certificate expired or something.
      · 2 replies
    • duzenko

      Guess what the sustained CPU clock is for i7-12700H under stress test?
       
      · 4 replies
    • taffernicus

      funny thing i just discovered : you can give away your location & alert nearby guard by igniting a flint by pressing u(use button) again and again. It's like playing with sparklers 
      · 0 replies
    • datiswous

      Beta test(er) tip:
      Test your mission at least once with all lights on. This can be done using notarget in console. Maybe just quickly fly around with noclip.
      Also test all lights which are off by default (enable all lights via script?). Mission testers will miss a lot of light bugs, because they take out lights with water arrows etc. and don't turn on lights so they don't spot light leaks etc. I've seen this now in some recent new missions after they're released.
      · 0 replies
×
×
  • Create New...