Jump to content
The Dark Mod Forums

Newbie DarkRadiant Questions


demagogue

Recommended Posts

I was just thinking about making a new one with the clockhand texture. It's all fancy victorian looking. And I'll try to set up some entities so you just drop in the gauge, no worries about alignment or anything.

 

We might need some kind of scripted base in the mod, maybe that's what the pendulum is. Something like lights.def that has a switchable light base that can just be added/adjusted in editor (ie: adjustable gauge tweaks). We need this stuff, much better than authors making scripts for basic animated props.

Dark is the sway that mows like a harvest

Link to comment
Share on other sites

Well, if the angles spawnarg worked, I'd settle for a def that displays it by default (not as a hidden default but a visible default - that is possible) plus a better comment that states how it is affected relative to N,S,E,W and whether that is absolute world values or model values or if it varies depending whether it is a brush/patch thing. These are the things I want at the point of use because I've had to use trial and error to see which way it goes (before realizing it's not changing at all.)

 

I can do that but it's not much use if angles is no longer working. The BIG question is that I'm sure it was working. I'll do more tests today and maybe look at the current def.

Link to comment
Share on other sites

Woohoo! 16000 posts.

 

OK, the answer is that the prompt says 'angles' but in fact it should be 'angle'. I did actually try 'angle' yesterday but perhaps by chance the test I did used the exact wrong value I was already seeing.

 

I'll change the def. In fact it's a doom def so what do we do? Do I just create a new def called func_pendulum and inherit the old? Does that work? Or create a new def tdm_pendulum? But all the funcs are without tdm or atdm and anyway it seems a bit overkill to create a new entity just for a comment.

Link to comment
Share on other sites

Well, I made a post about getting some of these script things included in the Mod instead of having to write new ones everytime. If you have any scripts you can post there...

 

I guess func_pendulum is in already, I didn't notice it last night though... (working on the laptop- oh yeah, I have tdm and dr installed, not Doom3) I did get gauge sized .ase's for both of the clock hands. So I'll upload those this weekend, and I'll try and make an entity for both the needle and a gauge with a spawning needle.

 

--------

If TDM ever goes standalone it would probably be good to have all the func's at atdm_ anyway. And if this one needs fixed.

Dark is the sway that mows like a harvest

Link to comment
Share on other sites

Ahah! Wherefore I was blind, now I see. The answer is that func_pendulum only works as a pendulum along the vertical Z axis of a model - the blue line. Although the blue line is the vertical on both the long chandelier model and on the needle, the needle of course does not want to swing vertically - we need it to oscillate on a horizontal axis.

 

So, we can't change the needle model because it will break maps we do need a new model with its blue axis along its rotation axis. I don't know however, if that might affect anything else. After all, a flickering needle might be done other ways and need not be a func_pendulum. I only chose that for quickness. haha!

Link to comment
Share on other sites

Easy enough to make a model with a different axis. I figured it would be the same as pendulum, except a pendulum hangs and a needle points up (typically).

 

More reason for a needle script, a gauge could really be put anywhere at any angle.

Dark is the sway that mows like a harvest

Link to comment
Share on other sites

Your posting assumes the team hadn't already thought of this feature years ago and had a discussion about it that went on for pages & pages, which it did. There was a LOT of discussion about location-type features like AI noticing things not being where they're "supposed" to be ... messes, moved things, things that don't belong (like dropped keys, etc), doors that shouldn't be open, torches that should be lit... One branch of this led to the absence_markers (and things like should_be_closed doors and should_be_lit torches), but there are good reasons why it didn't go further into the open-ended & general behavior you're thinking about (and not because it's not a good idea in prinicple; everyone agreed it'd be cool if AI notice things like that).

 

One major issue with it is that it's very fact specific... It depends on the kind of room it is, the kind of objects involved, the kind of AI watching (their job & status, whether they're "on duty" in "familiar" territory that "they're responsible for" that "they've seen recently" that "isn't allowed to get messy" with "certain objects", etc, so now you have to mark the territory and all the status variables and room variables and object variables ... kitches vs bathrooms vs bedrooms vs stables vs dining rooms... for owners vs butlers vs police vs neighbors vs beggers), so if you had a general mechanism for this sort of thing it'd have to factor in like 50 things and it'd still not work 100% as expected unless you could tailor every little detail. But the clincher I think was that, with all the work involved tailoring it to such specificity it would end up being a lot like customizing it anyway, the mapper may as well just script or customize the whole thing outright, because it'd be the same amount & type of work involved, but then he could at least tailor it to his specific situation so it works as expected. (Notice the part where it's probably actually *easier* to script it yourself and have it work right than use a pre-made feature which is very prone to failure.) Btw, you may not even have to use scripts; you might be able to do it all with triggers and S&R. The point is some things are better for a mapper to do themselves than make a general feature, even if they're very cool.

 

That's why the best answer to this kind of issue is, it's just better for the mapper to make a custom setup, because making a general feature doing this sort of thing led to all kinds of issues, and it's been discussed from a 1000 different viewpoints to come to that conclusion. It's not just a knee-jerk thing they decided to leave out. (Another issue probably involved is that there's just not enough manpower to do everything & making a gen'l mechanism may be very labor intensive for little added benefit over custom work... but sometimes little parts of that feature do get made, like the absence markers, and shouldbeclosed doors and shoudbelit torches, etc... We're actually fortunate to have as much as we do.)

 

BTW I'm not criticising your criticism. Everything you say is a natural thing to want and your intuitions are good about what we should ideally expect from AI. I'm just trying to put things in perspective why things are like they are. :)

 

Cross-post from TTLG:

 

 

I was thinking about the "clutter recognition" problem and thought that the Location System might be ideal for this.

 

1) Target a bunch of Entities to a location

2) If any of the entities move more than x distance from the Location Origin or if x number of entities move more than y distance from the Location Origin then set a "clutter stim"

3) If an AI with such and such alert level sees the "clutter stim" it will become suspicious

Please visit TDM's IndieDB site and help promote the mod:

 

http://www.indiedb.com/mods/the-dark-mod

 

(Yeah, shameless promotion... but traffic is traffic folks...)

Link to comment
Share on other sites

Did I post that on TTLG? Internet has become an undifferentiated mass of words to me anymore. :P

 

So anyway, somewhere ... out there ... there may have been work done and going to be done that makes use of locations to do all sorts of cool stuff in this neighborhood.

 

But not exactly what you're saying. Locations don't have origins. One location fills an entire leaf or multiple leafs indiscriminately. What you're talking about sounds like it's better handled with a clip brush & move-object-here objective or something in that neighborhood, which is what what's-his-name actually ended up using, or some variation on an absence marker (except on the moved thing instead of its former location)*, which really does work by distances from origins. The reason you might want locations still involved is because clutter matters when it's inside the house, but not when it's out in the streets... which in the medieval world was probably a cesspool of clutter anyway. So having a system that could discriminate by what location you're in would be useful for that much.

 

*Edit: It occurs to me that this whole mechanism is essentially the flip-side of the coin to absence markers anyway. People notice things missing, but they also notice things that weren't there before. So it might be worth extending the absence-marker system, or I guess a new-but-related system to add another spawnarg that creates a "unexpected-presence-marker" on a moved thing's location not within the origin radius, that otherwise works more or less in the same way as the absence marker, though of course you can have one system, or the other, or both, or neither turned on at the same time. But I think if it's created as the flip-side of absence markers, that'd make it very easy to design I think. Just take the absence marker system, copy it, and change a few things around, basically where & when it spawns -- except, again, a location check should be part of it as a spawnarg ("location1", "location2", etc), since it'd be noticed if it's in the house, but not in the streets or sewers.

 

Edit2: This raises the old idea of location-types (inside, streets, crypt) BTW. Maybe you'd just put "location_type" "inside", and it works with all the locations with the "location_type" "inside" spawnarg. But we'd have to think about that. I'm just mentioning it so the idea doesn't get lost.

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

Ok guys, I was planning on adding a small triggered conversation the player can overhear, I was getting ready to do a test map, but was wondering if there is an easier way of getting to know each monologue available other than creating a speaker and playing each sound one after the other. Is there a transcript of the lines available, so I could probably identify the suitable lines (if any) accurately (there is no mention of it in the wiki)?

Edited by RPGista
Link to comment
Share on other sites

was wondering if there is an easier way of getting to know each monologue available other than creating a speaker and playing each sound one after the other.

 

http://wiki.thedarkmod.com/index.php?title=Cutscenes_Part_3:_Lighting,_Placing_the_Player,_and_Conversations#Conversations

Link to comment
Share on other sites

I have read that article, the main issue being that it's pretty hard/time consuming to go through each line of dialogue trying to figure out which could be used for a small generic conversation between two AI (writting potential lines down). If the original scripts in text were available, it could be a lot easier to identify which/if there are suitable lines at all with which to build what you had in mind. Anyway, nevermind this, I will finish the geometry and AI placement/triggered events, if time allows, I'll look into this or not (it will probably be easier to ask for help in trying to record and insert a custom conversation).

Link to comment
Share on other sites

Oh, sorry, I think I misunderstood what you were asking for.

 

The scripts for the various characters exist but they won't always tell you what the right filename is.

 

Currently they're in the development forums....not quite sure where the best spot for them would be. One of them is on the wiki: http://wiki.thedarkmod.com/index.php?title=Vocal_Script:_Average_Jack

Link to comment
Share on other sites

  • 2 weeks later...

While testing my WIP I get occasionally errors in the console: AAS obstacle, no valid point found (or something like that). I know this comes from some AI that abandons a point because it cannot reach it.

 

Does anyone know some *handy* way how to test which AI it is and in what area? It is really shame that the error message does not contain the offending AI's name.

 

All the AI seem to move without issues, but someone, somewhere is generating that error and I'd like to fix it.

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

While testing my WIP I get occasionally errors in the console: AAS obstacle, no valid point found (or something like that). I know this comes from some AI that abandons a point because it cannot reach it.

 

Does anyone know some *handy* way how to test which AI it is and in what area? It is really shame that the error message does not contain the offending AI's name.

 

All the AI seem to move without issues, but someone, somewhere is generating that error and I'd like to fix it.

 

I don't know of a handy way to diagnose this. I assume you're talking about "GetPointOutsideObstacles: no valid point found".

 

For 1.08, I can add the AI name to the warning. It probably wasn't already included because the routine generating the warning doesn't care or know who the AI is.

 

In fact, there are several warnings that could probably could be tweaked in this manner.

 

Edit: Are you working with 1.07 or SVN? Windows or Linux?

Link to comment
Share on other sites

I don't know of a handy way to diagnose this. I assume you're talking about "GetPointOutsideObstacles: no valid point found".

 

Yep.

 

For 1.08, I can add the AI name to the warning. It probably wasn't already included because the routine generating the warning doesn't care or know who the AI is.

 

Great! That will be most helpful in the future. At present it is guesswork to pinpoint the culprit.

 

Edit: Are you working with 1.07 or SVN? Windows or Linux?

 

Windows, standard official v1.07.

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

Thanks! With your help, I was able to identify at least one guard who produces that error. I had to wait quite a while until any errors popped up so it is rather rare. Curiously, the AI in question has a rather simple path around some rather flat terrain: no patches. There are m_c clips and a rather narrow path he goes through, but all the path corners are more than 16 units away from all all walls and monster_clip. When I watch the AI do his full route, there is nothing visually amiss. And no warning messages.

 

Could this just be the AI interleaved thinking: when the player is far away, the AI walks too far away (misses a node or arrives to it inaccurately) when he thinks more seldom causing such an error? This means that any AI could produce occasionally such errors? Feasable? Nothing to worry about?

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

Could this just be the AI interleaved thinking: when the player is far away, the AI walks too far away (misses a node or arrives to it inaccurately) when he thinks more seldom causing such an error? This means that any AI could produce occasionally such errors? Feasable? Nothing to worry about?

 

Regardless of his thinking rate, it's sped up as he nears a goal, so he won't overshoot it.

 

Do the errors appear when he's patrolling far away from you?

 

You can follow him closely and watch how he behaves when using interleaved thinking by setting this in DoomConfig.cfg:

 

seta tdm_ai_opt_interleavethinkskipPVS "1"

 

The cvar is already defined; you just need to set it to '1'.

 

Then, if the error is coming from his normal patrol, you should be able to see what he's doing when it pops up.

 

Edit: Maybe the error occurs when he turns into the "narrow path". He's not near his goal (the next path_corner) so he'll be using his interleave framerate. He might be overshooting into monster_clip or a wall. If that's the case, I would try dropping the interleave framerate until the problem goes away.

Link to comment
Share on other sites

Is there any kind of skin or light setting that I could use to quickly fade a certain space to complete darkness? I've read somewhere that setting a fog light to black and make it thick could simulate this effect, is that correct? (I have a pit that I need to fade to complete darkness, so you cant see the botton (you can see it fairly well because of the ambient light, but limiting this area and giving it another ambient light would be very complicated, its inside a bigger area).

 

And oh, simple one, whats the water texture for black, reflective water (the one you cant see anything other than the surface)?

 

Any tutorials on using diffuse textures (that cast light), using light textures to simulate light going through windows, and light beam decals/effect?

Edited by RPGista
Link to comment
Share on other sites

Probably fog light is the best bet for that scenario.

 

You can use the locations settings system to fade ambient light to black or any other color/brightness in v-portal areas. However that requires the player to go into that area.

 

-----

I don't think textures can cast lit, though they can be illuminated, then you just add a light for actual lighting. The trainer map has some light beam patches. You can just copy them and modify to your needs (revert to worldspawn, edit, func_static...solid = 0)

Dark is the sway that mows like a harvest

Link to comment
Share on other sites

Another possibility to consider is to

  • create another big ambient light that will fill all the area the player can see and reach while in the area of the pit - but it should not reach the bottom of the pit. There are ambient light textures that fade to black at the edges.
  • This should be set at the same value as ambient world.
  • When the player enters the area then ambient world is switched off and this new ambient light is switched on.
  • This should not conflict with players who have texture lighting set because the new light is a real light. But if it does then instead of switching off ambient world then port it to another area temporarily and keep it lit. (this could be a blue room 10,000 units away)

Link to comment
Share on other sites

Thanks boys, will give it a try, though Im afraid Tels solution might be a bit too complicated for now...

 

By the way, is there a list of weapons suitable for being branded by AI? Ive tried def_attach the roman gladius and the battle axe on two separate occasions and got fatal errors both times. Would be really nice if we could get a menu to choose the AI weapon as we do for heads or skins.

 

My suggestion would be: handy menus for choosing AI's heads, skins, voice set (all already done), weapons, acuity levels (base values for distracted, normal, alert/sharp), speed (a mix of reaction and movement values) and melee skill level (as it is now, trained, skilled, etc.) - right now you need to tweak several different variables, guess the results of the changes, copy and paste weapons or skillset names after first finding AI that possesses the spawnargs you need, very unintuitive...).

Edited by RPGista
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...