Jump to content
The Dark Mod Forums

TDM should steal this idea from Dishonored....


Springheel

Recommended Posts

The running sway maybe.

 

When you run in Dishonored it's more of a side-to-side sway with shorter and more frequent steps, in The Dark Mod it's more of an up-and-down with longer and less frequent steps.

 

The side-to-side motion and shorter steps in Dishonored feels like it implies more of a "ready" or "tactical" running posture where you're slightly hunched over and your knees are slightly more bent. The up-and-down motion and longer steps in The Dark Mod feels like it implies a more upright running posture, the sort that you would do if you're running a marathon or jogging.

Edited by Professor Paul1290
Link to comment
Share on other sites

Those sound good. Extreme crouching should be implemented very carefully: the AI should not be dumbfounded if the player goes under a table.

 

Combat: our AI could have a few special moves to keep the player on their toes. The lunge attack (AI quickly advances few meters and attacks during the advance), and a combo attack (AI attacks quickly in succession like a left swing + right swing.) Even having these two would break the monotoneusness of our current combat.

 

Other combat stuff would be physical dodges. When the player attacks, the AI doesn't parry, but quickly sidesteps the attack, possibly doing a counter attack.

 

Mantling has only the player grunt, so there certainly could be more audio, but it needs to be varied and should be fitting the activity. WRT our mantling, the first thing to do should be to try and attempt to fix the "skybox-winks-out-when-mantling" -issue.

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

Uh, yeah, I thought the natural way it did contextual extra-crouch was nice ... under tables & through crawlspaces. And the extra sounds for the mantle, although I don't think we need to change the speed or animation (like some people asked for after they saw DH's mantle).

 

Which reminds me I'd think about being easy with the bursts; making it immersive is ok, but generally DH had a quicker "jerky" flow to the gameplay, like with the mantling, and I remember thinking it's ok for DH because it's a more frenetic pace, but I'm happy that TDM is more deliberately paced, at least the mantle and something else. I don't recall the swimming just now.

 

I can't think of other things offhand that I'd want in TDM. IIRC there was a button to look in the direction of your next objective that was nice for DH (it's in Mirror's Edge too), but FMs are usually contained enough it wouldn't be great for TDM.

What do you see when you turn out the light? I can't tell you but I know that it's mine.

Link to comment
Share on other sites

Adding new particles to TDM would be great. It is one of the things I am missing from Dromed, which had a huge library of eerie and strange effects.

 

Not sure about extreme crouching, but the rest would be neat.

Come the time of peril, did the ground gape, and did the dead rest unquiet 'gainst us. Our bands of iron and hammers of stone prevailed not, and some did doubt the Builder's plan. But the seals held strong, and the few did triumph, and the doubters were lain into the foundations of the new sanctum. -- Collected letters of the Smith-in-Exile, Civitas Approved

Link to comment
Share on other sites

Instead of having an extreme crouching we may consider adding the possibility for the player to lay on the ground, what would serve a similar purpose.

 

What would be more important and was used in the Splinter Cell games (I don't layed Dishonored), was that the ambient noise had an effect of how well you can be heard. Currently mappers can use a spawnarg on the info_location entities to determine how loud is in there. If the player makes a sound in that area, its loudness is reduced by that value. This is a start, but not very satisfying. When the sound propagates from the player to the ai, the method should gather all those volume reduction values, and reduce the loudness by the highest value.

 

 

I try to script something like that for my next FM. This way noise should play a more important role.

 

 

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Very nice ideas, would love to have those in TDM. :)

 

Not from Dishonored, but it would be nice to have the "back against the wall" leaning thing from TDS in TDM. I always felt kind of weird when kneeling, and a guard passes close before me, when i could back off further by just standing up and having my back against the wall. Would be more realistic too.

  • Like 1
Link to comment
Share on other sites

I think we could rig keyhole peeping with a frobbable keyhole & a script. I bet it might not even need sourcecode support... so any mapper could experiment with it and try to implement a version that we could all use.

What do you see when you turn out the light? I can't tell you but I know that it's mine.

Link to comment
Share on other sites

I thought of the player kneeling in front of the door and leaning forwards into it to look through the keyhole, what would be consistent with leaning sidewards into it to hear better what's behind the door.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

The side-to-side motion and shorter steps in Dishonored feels like it implies more of a "ready" or "tactical" running posture

 

Hmm, I actually noticed and disliked that. The running footsteps felt way too quick to be believable, like you're a football player stepping through tires in practice.

 

Combat: our AI could have a few special moves to keep the player on their toes.

 

Yes, that one is an absolute must. It just requires someone with the skill to do it. Combat animations are a bit beyond me, and I don't understand how the bounding box issue works with them. We'd also have to factor in blocking.

 

 

Instead of having an extreme crouching we may consider adding the possibility for the player to lay on the ground, what would serve a similar purpose.

 

That idea came up early in development. It's much more important for line of sight stealth than shadow-based, however. The problem with it was that you then open up the ability to get through _really_ small spaces...like under beds, which could cause problems for the AI (they can't hit you or throw things at you so what do they do?), and it also makes it more difficult to figure out if you'll be seen (what if your body is in shadow but your feet are sticking out? How do you know if you can't see them?). Ultimately we decided it would create more problems then it was worth.

 

the ambient noise had an effect of how well you can be heard

 

This was on the books right from the very start. It's something we've always wanted to do, but simply haven't gotten to. I'm not sure how easy or hard it is to do, but the basic idea was that you calculate the volume of sounds AI can hear (one problem is that AI don't "hear" many environmental sounds), and the volume of those sounds (or some fraction) is added to a guard's Audio Threshold. Theoretically, this could mean that a player could mask his footsteps by waiting for a guard to cough.

 

BTW: peeping through keyholes was a great feature, and very thiefy!

 

Yeah, it's a bit unrealistic (I've tried looking through keyholes and you only have a very tiny field of vision) but I'm enjoying it. Adding it to TDM now would almost certainly break maps though.

Link to comment
Share on other sites

Regarding the noise problem: Currently there are two spawnargs on info_location entities which serves the purpose to control the soundprop through the location associated to it. One is sound_vol_offset, which reduces the loudness of propagated sounds comng from that location. The other one is sound_loss_mult which increase the value the loudness of propagated sounds reduces with distance.

 

The first one does work, but is pretty useless. I didn't checked the second one, but assuming it works it would be possible to use this to achieve parts of the desired effect. The only problem is that the sound dimishing is distance dependent. And both spawnargs are location dependent, which means a lot of testing and possibilities to mess things up.

 

 

 

Personally I thought of letting only loud sounds affect the ai's hearing. For example a loud machine. This way the mapper chooses at which parts of the map the player is heard worse or the ai hears worse. The effect on ai's hearing would be distance dependent.

 

Let's see how it works out.

 

 

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

The only problem is that the sound dimishing is distance dependent. And both spawnargs are location dependent, which means a lot of testing and possibilities to mess things up.

 

The problem with using the location system is that the feature becomes completely map-dependent, which is bad. Something as basic as when you're going to be heard should be consistent from map to map, unless there's a really good, obvious reason why it should be different.

Link to comment
Share on other sites

I guess the best way in terms of consistency would to let al objects that makes a noise hearable to the player also propagate a sound to the ai. The current code let ai ignore soundprops coming from neutral entities (except barks maybe), so if this would be changed the loudness of the environment could be used to decrease the hearing of ai. But this approach may be very performance-hungry.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Oy, we don't want to propagate more sounds than we do now, if we can help it. Every sound propagation has to go find which AI are w/in hearing distance, then track a path through portals to reach these candidates, then decide how much noise is reaching the AI. Doing that for everything that can make a sound is going to clobber performance.

 

This code segment talks about environmental noises:

 

// TODO: Add env. sound masking check here
// GetEnvNoise should check all the env. noises on the list we made, plus global ones

// noiseVol = GetEnvNoise( &propParms, origin, AI->GetEyePosition() );
float noise = 0;

// the AI hears the sound
ai->HearSound( propParms, noise, origin );

 

As you can see, 'noise' is zero.

 

GetEnvNoise() doesn't exist, so this call to it is only a reference.

 

What is "the list we made"?

 

Is there some documentation that captured the noise discussions that were had back in the day?

Link to comment
Share on other sites

Peeping through keyholes feature would only work if design direction of doors was taken away from map makers. Keyholes would have to always be at the same spot, same height etc, so all the prefabs and models and player made doors would have to be redone.

Unless of course it's a spawarg set on doors themselves.

I always assumed I'd taste like boot leather.

 

Link to comment
Share on other sites

Oy, we don't want to propagate more sounds than we do now, if we can help it. Every sound propagation has to go find which AI are w/in hearing distance, then track a path through portals to reach these candidates, then decide how much noise is reaching the AI. Doing that for everything that can make a sound is going to clobber performance.

 

This code segment talks about environmental noises:

 

// TODO: Add env. sound masking check here
// GetEnvNoise should check all the env. noises on the list we made, plus global ones

// noiseVol = GetEnvNoise( &propParms, origin, AI->GetEyePosition() );
float noise = 0;

// the AI hears the sound
ai->HearSound( propParms, noise, origin );

 

As you can see, 'noise' is zero.

 

GetEnvNoise() doesn't exist, so this call to it is only a reference.

 

What is "the list we made"?

 

Is there some documentation that captured the noise discussions that were had back in the day?

 

Would it be quicker to check to see if the bounds of the sound emitter are within a certain range, then group them together in a single entity to propagate to the AI? This would have to be done at DMAP as doing it real time is ugh.

Similar to the SEED idea, if you have say a large machine sound, and several small things that make sounds like clocks. If the clock sounds' bounds are within the bounds of the machine sound, then they are grouped with the machine.

Then those sounds are mixed together in one sound and sent looking for AI in range every tick, instead of each one.

Is this making any sense? I just woke up and my head feels like it's full of cotton.

I always assumed I'd taste like boot leather.

 

Link to comment
Share on other sites

Bundling sounds is a good idea, but the bundle would have to be constructed both at dmap time and in real time. If there's a loud machine the player can turn off, deciding its sound is in a bundle at dmap time won't accommodate its eventual silence. Or vice versa. You'd have to split the sounds into static and dynamic, creating the static set at dmap time and the dynamic set each tick.

Link to comment
Share on other sites

Another way to think about environmental sounds is to have each AI carry around with him the sum of the noises he can hear. As AI get killed or KO'ed, the processing requirements drop. Why spend cycles calculating environmental noise propagation when every AI in the mission has been dealt with and no one's left to "hear"?

 

Only calculate the "noise baggage" when a suspicious sound reaches an AI, rather than every tick, because the AI aren't going to be hearing things every tick, and noise is only important when a suspicious sound arrives.

 

Lots of things to consider.

Link to comment
Share on other sites

Every sound propagation has to go find which AI are w/in hearing distance, then track a path through portals to reach these candidates, then decide how much noise is reaching the AI.

The main problem here is that all of this is done during runtime. The biggest part of this could be calculated beforehand.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

What is "the list we made"?

 

Is there some documentation that captured the noise discussions that were had back in the day?

 

As far as I know it never got beyond the idea stage, though Ishtvan may have built some stuff into the sound code anticipating getting back to it in the future.

 

edit: Found this: http://forums.thedar...__fromsearch__1

 

This seems more generic, but maybe useful: http://forums.thedarkmod.com/topic/2172-the-mother-lode/page__p__33533__fromsearch__1#entry33533

Link to comment
Share on other sites

I would really like to be able to hold onto ledges. Mantling could be about the same, but instead of automatically pulling yourself up; the player could just grab the edge. You could then press forward to pull yourself up. (I can see a stamina bar playing a role in this, but that's another matter that could enhance the game, but might add too many complications.)

 

I too really liked the extreme crouching under tables and desks.

 

Currently TDM's combat is fun, but it could benefit from more variety from the AI, like dodging/sidestep and combos.

 

Even if keyhole peeking isn't realistic, I think that it will be almost necessary to have if the AI is going to start noticing open doors.

 

I think It would be great if ambient sound could muffle the players sound. In many stealth games I always found it odd that guards would pay attention to the sound of my walking, but pay no attention to fellow guards or other civilians. It seems that this is a complicated matter though.

Edited by SirGen
Link to comment
Share on other sites

I would really like to be able to hold onto ledges. Mantling could be about the same, but instead of automatically pulling yourself up; the player could just grab the edge. You could then press forward to pull yourself up. (I can see a stamina bar playing a role in this, but that's another matter that could enhance the game, but might add too many complications.)

 

I too really liked the extreme crouching under tables and desks.

 

Currently TDM's combat is fun, but it could benefit from more variety from the AI, like dodging/sidestep and combos.

 

Even if keyhole peeking isn't realistic, I think that it will be almost necessary to have if the AI is going to start noticing open doors.

 

I think It would be great if ambient sound could muffle the players sound. In many stealth games I always found it odd that guards would pay attention to the sound of my walking, but pay no attention to fellow guards or other civilians. It seems that this is a complicated matter though.

 

When people start talking about adding stamina bars...I start thinking feature creep. I don't think we should be adding anything that will drastically change the gameplay at this point, but smaller additions or already planned features are fine.

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

    • taffernicus

      i am so euphoric to see new FMs keep coming out and I am keen to try it out in my leisure time, then suddenly my PC is spouting a couple of S.M.A.R.T errors...
      tbf i cannot afford myself to miss my network emulator image file&progress, important ebooks, hyper-v checkpoint & hyper-v export and the precious thief & TDM gamesaves. Don't fall yourself into & lay your hands on crappy SSD
       
      · 1 reply
    • OrbWeaver

      Does anyone actually use the Normalise button in the Surface inspector? Even after looking at the code I'm not quite sure what it's for.
      · 7 replies
    • Ansome

      Turns out my 15th anniversary mission idea has already been done once or twice before! I've been beaten to the punch once again, but I suppose that's to be expected when there's over 170 FMs out there, eh? I'm not complaining though, I love learning new tricks and taking inspiration from past FMs. Best of luck on your own fan missions!
      · 4 replies
    • The Black Arrow

      I wanna play Doom 3, but fhDoom has much better features than dhewm3, yet fhDoom is old, outdated and probably not supported. Damn!
      Makes me think that TDM engine for Doom 3 itself would actually be perfect.
      · 6 replies
    • Petike the Taffer

      Maybe a bit of advice ? In the FM series I'm preparing, the two main characters have the given names Toby and Agnes (it's the protagonist and deuteragonist, respectively), I've been toying with the idea of giving them family names as well, since many of the FM series have named protagonists who have surnames. Toby's from a family who were usually farriers, though he eventually wound up working as a cobbler (this serves as a daylight "front" for his night time thieving). Would it make sense if the man's popularly accepted family name was Farrier ? It's an existing, though less common English surname, and it directly refers to the profession practiced by his relatives. Your suggestions ?
      · 9 replies
×
×
  • Create New...