Jump to content
The Dark Mod Forums

Newbie DarkRadiant Questions


demagogue

Recommended Posts

What's up with certain decal textures that they cause z-fighting when they are flush to a brush surface, but when lifted off 0.125 units they disappear entirely? I'm trying to use a snow edge texture on a street where part of it doesn't have any snow, and blending into a snow patch in the middle of the street...

My Fan Missions:

   Series:                                                                           Standalone:

Chronicles of Skulduggery 0: To Catch a Thief                     The Night of Reluctant Benefaction

Chronicles of Skulduggery 1: Pearls and Swine                    Langhorne Lodge

Chronicles of Skulduggery 2: A Precarious Position              

Chronicles of Skulduggery 3: Sacricide

 

 

 

Link to comment
Share on other sites

Hi,

Scripting problem, most likely - Unsure how to do this, not sure if I ever knew.



I've forgotten - if I have a script that animates [an] object, and I do not want the player to be in the way of such object's pathway - creating a temporary playerclip brush while it plays the script to, eg, open that secret door, because it's in a place where, even though the player could mantle over it when it's open... to time it to trap a guard seems a bit lame (a way to remove the AI from patrol, but have it still able to detect, trying to fulfil its path, random interest stuff, etc... seems to be the way to go.

I'd like to offer the player the choice to open the door and, rather than simply trap a guard, crush the guard to death, if they're so inclined.
Doors stop on player/guard, but movers complete their operation regardless of what's in the way - even if it means clipping through another brush, sometimes.

I am loathe to change level design so this (player or AI getting killed) doesn't happen, because I like this kind of stuff and it's a fun thing to do - find creative ways to murder people in a stealth game, through patient observation or happy accident...
I'll carry furniture through an entire level to wedge a door or be able to climb onto that roof so I don't need to play hunt the key or play "everyone in a room with a door that opens outwards" (the way a door opens can have a massive impact on how to deal with AI or to create "safe spaces" for the player to basically lock out patrolling guards, if they've bothered carrying that box and chair for the past 30 minutes.

We've all trapped guards using objects, (even if it's just chucking a straw bale in a doorway, luring and blocking every guard on the map in a small cupboard), and it's a bit... gamey and lame.

Like a bambi a broken leg.



I'm unsure of the script commands I might include to either call a spawn on an existing player clip (or activate it) and then destroy it when the movement script (only a rotation on axis - it's a brush door with a hurt stim, to crush an AI if the player chooses)..?

I know "entity (idk the name of the playerclip entity atm) = sys.spawn" and to perhaps set the spawnarg to the x,y,z co-ordinates, then "remove (clipbrush)" when the door is open...

 

Or:

Would it be best to make the playerclip brush, hide it outside of bounds - on "stonedoor.script being triggered" - "clipbrush.MoveToPosition (x, y, z)" then "RestorePosition (clipbrush) [to put back to hidden room] after "WaitFor(doormover)".

Or:

I'm totally wrong and ought to do it another way, or simply forget it and let the player figure it out themselves (either by dying, using the shadow by the door as cover while it opens - or that it's a lethal thing by purposefully or not trapping (in this instance, killing, because trapping an AI would be problematic) and AI by accident or through observation and on purpose.


Either way, a knowledge reward, except one is annoying and the other is ... kinda cool.

Would this happen every time the script to open the door is called, by the player using teh trigger switch that calls the script that opens the door that (potentially) crushes the patrolling guard.?


I'm not sure if either work nor which is the most elegant solution... Something says that it might be pointless, and to let the player learn themselves.


I can't find a way to do it.

(but I've only been trying a few hours - it's taken this long to build a room with an AI, texture it, it and start to remember how to use DR - I have no idea what I was doing with my maps, there are no objectives yet and the xd files aren't complete... but they still work, so that's good, so at least the architecture is still there, if not what I was doing with it... Can't remember the story properly now... I just know one has a massive section missing from when movers no longer caused damage and haven't remade all the movers to have damage stims, because didn't learn that was the "new way" until after deleting them all in a hissy fit and going into the corner to cry and moan about it).


Perhaps it's simply best to not try to save the player from this thing, and allow them to learn to not hide behind the massive stone door while it opens because they'll be crushed to death (although I kinda wanted to put scratch decals to the wall and also leave a note about how the cat was crushed by the hidden door, when the player finds out about it - so the player knows it is possible to get into such a sitution.

The area door is not critical to the mission - it's simply something to reward exploration and provide some extra loot and (early access to) kit and a bit more story that fleshes out the characters a little.
It's a "nice thing" only.

Unlike what happened to bambi's mother.

It would also be useful to do the same with monsterclip brushes, for if, eg, an alarm is called, so that previously "safe" areas are no longer safe if they player has not taken precautions (such as barricading the chokepoint door on extraction).


Thanks in advance.


// added spoilers - leaning towards no script, player learning, but it would still be useful to know for future (eg, spawn playerclips on, eg, burning building escape, funnel all AI down one path, etc...)

Edited by teh_saccade
Link to comment
Share on other sites

Dude, you are really maxing out the possibilities on how a text can be formatted. :mellow:

  • Like 2

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

I have question about handling movables in front of the player, particularly lanterns. I want lantern to be not in the middle of FOV, but rather near one of the edges. Is movable's position (in the middle, mouse wheel zooms in/out) hardcoded, or can I edit these properties for lantern or for all movables and replace used action script in said lantern?

S2wtMNl.gif

Link to comment
Share on other sites

you can kill things with a trigger_hurt entity

 

if you can detect guard in door then

$<named guard>.kill();

will kill the guard, they will do their death animation, if you have a no kill objective then guard must not be included in the no kill list. I think the kill() command is the same as player killing guard, not too sure though.

Edited by stumpy
Link to comment
Share on other sites

When I start the mission via "Start Mission" button, I receive the swirling background showing nothing:

 

post-37993-0-09798000-1543005107_thumb.jpg

 

After pressing the left mouse button, the button-animated briefing (from Sotha) starts.

 

So far, so good, but how can I integrate the DM intro before my briefing?

 

post-37993-0-19329600-1543005166_thumb.jpg

 

 

Link to comment
Share on other sites

Dude, you are really maxing out the possibilities on how a text can be formatted. :mellow:

I do my best.

 

It'd be nice to figure out how to script that stuff and use it in the mission from triggers (or obj./stim/resp.) - it would be useful for other things too when working on the mission changing depending on player actions.

 

Seems having the object in a hidden room then triggering it to be put there and back again (switch calls script and triggers mover), trigger multiple in the doorway calls to place brush back in the hidden room, is the way to do it.

 

Same as 'porting in an AI or a bunch of brushes after a rockfall or something.

 

// $<named guard>.kill(); - that might be a good way to ensure it's only the guards that get trigger hurted... Didn't think of that. Thanks.

 

(ps, "no kill objective..?" what's that? :P Worth noting, though - raises another question of how to stop the player being hurt if they touch the back-face of the door when it's finished opening... Will have to look into that - probably best to have it open so it's impossible for the player to touch the back face, but that means a section of wall will cause hurt... unless it has something in front, like a bookshelf, that slides the opposite way, so the wall is hidden... this is getting complicated...).

 

Edited by teh_saccade
Link to comment
Share on other sites

Jack - doesn't the TDM intro video play automatically when you start the mission briefing anyway, once you've added some content..?

If not - take a look at the standard briefing gui and then copy-pasta the relevant stuff into the button mainmenu_briefing.gui.

NB - "by default":

http://wiki.thedarkmod.com/index.php?title=Briefing#Editing_mainmenu_briefing.gui_for_the_Button_Controlled_Briefing

also mainmenu_custom_defs.gui, for the video:

http://wiki.thedarkmod.com/index.php?title=Setting_up_Campaigns#Briefing_Videos

Link to comment
Share on other sites

I have question about handling movables in front of the player, particularly lanterns. I want lantern to be not in the middle of FOV, but rather near one of the edges. Is movable's position (in the middle, mouse wheel zooms in/out) hardcoded, or can I edit these properties for lantern or for all movables and replace used action script in said lantern?

I think the grabber is SDK coded.

 

Idk if you can offsetRelation an entity that calls a script when frobbed.

 

No idea how the grabber works - never had a need to look at it.

 

Maybe a named item can have its position changed through spawnargs and frob action script...

 

Seems possible to offset position using Def Attach: http://wiki.thedarkmod.com/index.php?title=Def_attach

 

Perhaps the lantern can be altered so it's Def Attach includes an offset to appear in the position you'd like..? Same as attaching stuff to AI, but player1 instead of the AI. IDK if that works - never tried it.

Edited by teh_saccade
  • Like 1
Link to comment
Share on other sites

Jack - doesn't the TDM intro video play automatically when you start the mission briefing anyway, once you've added some content..?

 

If not - take a look at the standard briefing gui and then copy-pasta the relevant stuff into the button mainmenu_briefing.gui.

 

NB - "by default":

 

http://wiki.thedarkmod.com/index.php?title=Briefing#Editing_mainmenu_briefing.gui_for_the_Button_Controlled_Briefing

 

also mainmenu_custom_defs.gui, for the video:

 

http://wiki.thedarkmod.com/index.php?title=Setting_up_Campaigns#Briefing_Videos

 

 

 

1. If I replace my briefing.gui with the unchanged briefing.gui from Sotha I downloaded a few weeks back - same result.

2. If I replaced my briefing gui with the customized briefing.gui from Full Moon Fewer ( the mission uses also Sotha's button-animated briefing) - same result

 

That brings me to the conclusion I must have changed something outside this particular gui file but I cannot figure out where.

 

There is a gui in which I changed the sound files to play (mainmenu_custom_defs_gui), but this file only includes the following not relevant for visuals:

 

#undef MM_MENU_SOUND_CMD

#define MM_MENU_SOUND_CMD "music maintitle;"

#undef MM_BRIEFING_SOUND_CMD

#define MM_BRIEFING_SOUND_CMD "music hiddenhands;"

 

 

hm...

Link to comment
Share on other sites

That's kinda weird - you might be right. Probably over my head.

Have you considered ripping the intro video and simply including it as part of your own intro video, leading to your button briefing (if you can figure that), and resetting your other defs (after backing them up)..?
It'd be easier to force the intro video played if it was part of your briefing.


Also, it's worth making another user-account / boot on your machine that's independant (totally autistic), so you can use this for testing purposes on a clean install of the game.
It means you can test your own builds without having to purge a bunch of stuff or lose track of changes.

It's one reason I changed to a blog rather than use the mapping thread I created in forums to use as my scratch-pad (that and because it was annoying people with me editing spoilers to be blanks and fill the forums with my progress and self-ramblings.

I've TDM game installed on my main windows profile on one disc, but TDM and DR installed in another windows profile on another disc.
This way, I can test my missions and experiment "chunks to copy into the mission" on a copy of TDM that hasn't had me messing with files that I didn't fully understand at the time and can't remember what I did.

Using a process of elimination - you can isolate which file might be causing the problem by copying only the map, scripts and xd and briefing stuff, then the other files you've changed, to see which one is the offending file.

The other option is - is it it really that important to have it there, if the mission works fine..?
As with all art, if it doesn't add to the piece - don't add it.

My solution is to back up, wipe the files and rebuild it from the text code I keep on my FM reference blog.

As an example;


I'm having trouble with the objectives and random player spawn points and different AI behaviour and random interest on their paths for different difficulties, for the consequence mechanics I'm trying to implement. "Ghost" difficulty (the first I designed) works fine, but "Trickster" and "Worming Death", for some reason - even though the map's fine and the triggers and scripts work - the hidden objectives that call scripts to change the level pathways and AI behaviour for each difficulty (or on certain player actions or gameworld states) mean that some things don't work - I think it's a case of the number of objectives available being too few, so it means having to drop some things or think of other ways to solve the issue.

The main thing is, the level architecture is there, it works and maybe I'll just have to forego the different "difficulties" (which are all the same difficulty, but have different objectives and paths throughout the level based upon player actions.

Perhaps this will be enough, and I can forego the hidden objectives in and find a level-design mechanic.
Rather than specific optional hidden objectives for each difficulty, use overarching optional objectives on all difficulties - eg, instead of having each difficulty using named characters states (eg, KO / dead / alarm) to trigger the objective to call a script to change the player's path by rotating a symmetry room so they don't take the ghost path with less guards and traps, but take the trickster or worming death routes instead - it will mean that trickster and assassins can finish the level as a ghost - but assassins are going to have to kill some people, which means I can at least ensure their route is the one I want them to take.

Tricksters, they can choose, but also so can ghosts - they'll end up on the trickster route if they cause alerts and on the assassin route if they, somehow kill someone, by pickpocketing an archer for an arrow or dropping a crate on someone or something, which the briefing stipulates to avoid doing - they won't fail if they are caught or kill someone, but it deny them access to the ghost route, and all the traps and puzzles that playstyle might enjoy).

For me, the briefing is less important than the gameplay. The rest of the briefing and mission objectives unfold through notes that are left in the symmetry rooms, on doors that leads to the ghost/trickster/death pathways later on in the mission, once the player has committed to a particular route or playstyle.

A player who chooses the assassination jobs and killed their way through the level won't be stealing a precious item as an objective - they can take it as loot, but their objective is to assassinate the lord of the manor in the same, guarded room (that on this route doesn't need lockpicks, as the character might not have found or bought them to start).

A player who choose the ghost route will be stealing that item, but they will never have to kill anyone, but it's possible for them to do so and end up on the assassin's route where the door doesn't require a pick.

It's proving to be a nightmare in figuring out the different logic gates, so I made a flowchart that maps all possible routes from these "consequence rooms" so that the player is never stuck and - so - every playthrough, unless it's absolute ghost every time - will be different in many ways.

It's also proving to be a nightmare if they player wants to backtrack through a gate and finds that - this once unguarded area now has guards, because they were caught after backtracking (they're starting to move to the trickers/assassin route). So I'm having to figure out how to ensure the rooms can be reset by tiggers that rotate them to the correct angle, so the player can return and explore other pathways (which might be dead ends if they haven't killed anyone, cos they never received that objective, or get caught on the assassin's path - which I can't even ghost - and return to their ghost path to find the same looking way now has a patrol, because they're on the trickster's path.

Maybe an assassin player will ghost their way through and face the traps, instead of alerting or distracting guards and getting into swordfights or shooting people in the face with an arrow, blowing them up, or whatever...

(reminds me to check there's enough loot).

Do I care about the briefing so much, when I want to implement a whole bunch of things I've not seen in an FM before..?
I wrap my presents in newspaper at Christmas, because it makes it look crap - but inside is more than they expected. It's not an Xbox One, like the box says - inside it's a brick and a gift token for a shop that sells games and consoles, so they can choose what they want - they can sell it for cash and buy drugs for all I care.

So I just have a basic page with a shop - if a ghost would rather buy broadheads to distract a guard than an unreliable noisemaker, that's their choice... If they want to take a blackjack and sword and some mines, it's up to them.

Gotta ask - is it worth the hassle..?
For me, I don't give a toss about the briefing - I've seen that video a thousand times already and I dislike timed video briefings, because I'd rather read something and find out the story through exploration than have a voice actor explain everything to some oil-filtered screenshots that transition like my "girls what I made porn with" collection slideshow on my laptop.

But that's just me. Some people like not being able to skip a cutscene they've already watched 10 times.

 

.

Link to comment
Share on other sites

You're trying to change the music for the briefing (the drone on the difficulty select screen), and not the video (the "waaaaannng"), right..?
'Cos the defs you're changing are for the intro video and not the briefing.


I'm not so familiar with briefings defs, but I do know that the briefing video is in tdm_gui01.pk4\video, and it's sound is in the same folder\sound\video\briefing_video.ogg ready to be ripped...

Using the http://wiki.thedarkmod.com/index.php?title=Mission_Filestructure#guis wiki page that I made so people can find all the files and look at them ( that no-one but me ever looks at...) I can see that:

The mainmenu_briefing_video.gui (which is parent to the defs you are over-riding with your sound) is well commented and states:
DO NOT EDIT, INCLUDE OR OVERRIDE THIS FILE IN YOUR MISSION PK4 (use custom gui blahblah), which you're doing - but you don't want to change the video - you want to change the briefing, if I understand right, so that's the music...

Ok, mainmenu_music.gui, contains the defs you have changed

Hmmm...

Looks as if you've broken dependency by changing the intro video sound instead of the briefing music, causing the SDK to not play it.
(You done broke it, JackFarmer...).

I'm not sure, and I'm not going to test to verify cos I'm a bit peeved about manga-cat-ears hand-holding, but if no-one else pipes up with anything - I'd say:

Take a look in mainmenu_music.gui for the defs to go through.

At a glance, bearing in mind I've not done this and don't know, cos I don't see the point - there's some comments by Greebo around lines 140 onwards of that file that might help you figure it out.

(open the pk4 in 7-zip, select the file you want to read, press f4 and copy and paste that mess into Notepad++ for it to be readable - you'll find line 140 after line 139 and the other numbers that precede that).


Might try MM_MUSIC_BRIEFING or one of the other MM_MUSIC's until you hit the one you want - change the music that is before or after the briefing video, rather than mess with the video's SOUND_CMD defs.

If that don't work - someone else will have to take a look, or perhaps find a mission that has a button briefing and the intro video and see how that's done.

But - I think MM_MUSIC_STUFF is worth a try.

; not zip - 7-zip, the app.



Edited by teh_saccade
Link to comment
Share on other sites

no kill objective, is on objectives screen for, if you kill ai on team 2 then you fail map and its game over.

(I forgot to include the :> sarcasm smilie to indicate that, "no kill objectives? Mines, broadheads and shiny new swords for everyone!" - forcing player moral decision is preferable, to me at least, than enforcing a restriction on player freedom)

Link to comment
Share on other sites

JackFarmer - did you manage to figure an anwer to the problem you were facing..?

It would be good to update the wiki section on this, so others might more easily be able to find answers to these (slightly more advanced) questions.


Internet search:

"Hey guys I gota problem"
"I's ok I fx it"

replie every 6 months for 10 years

"Me too - how did you fix it..?"

^how many times we all seen that?^

 

Edited by teh_saccade
Link to comment
Share on other sites

I'm having intermittent problems with a target_set_frobable clip box I have around some loot in a drawer. If the clip box is touching the drawer model the whole drawer becomes unfrobable. I had it working by making the clip box smaller and not touching the model, but when I tried to set the next drawer up the same, they both became unfrobable.

Link to comment
Share on other sites

I'm having intermittent problems with a target_set_frobable clip box I have around some loot in a drawer. If the clip box is touching the drawer model the whole drawer becomes unfrobable. I had it working by making the clip box smaller and not touching the model, but when I tried to set the next drawer up the same, they both became unfrobable.

 

 

Please insert the prefab with the name "dresser_darkS.pfb" (that's just an example; there are several of them where S/N/W/E refers to the opening rotation).

 

This prefab comes with all additional settings you need and the drawers include the frobblockers. I hope this helps you.

Link to comment
Share on other sites

JackFarmer - did you manage to figure an anwer to the problem you were facing..?

 

It would be good to update the wiki section on this, so others might more easily be able to find answers to these (slightly more advanced) questions.

 

 

 

 

After consulting with Grayman and Duzenko I can confirm your assumption: as soon as a gui file originally found in the core file structure has been created in the mission map, the code disregards the original settings from the core file. Thus it is required to copy the core file to the map and create the changes there.

 

With respect to both music to be played on the main menu and during the briefings, the following has to be done:

 

1. Take a copy of the file "mainmenu_custom_defs.gui" and store in under "fms/missionname/guis".

2. Replace the ".gui" ending with an ".txt" ending

3. For changing the music in the main menu add at the end:

 

#undef MM_MENU_SOUND_CMD

#define MM_MENU_SOUND_CMD "music mysong1;"

 

 

4. For changing the music during the briefing add at the end:

 

#undef MM_BRIEFING_SOUND_CMD

#define MM_BRIEFING_SOUND_CMD "music mysong2;"

 

The word "music" and the ";" must be included by any means, otherwise it will not work.

 

 

5. A text file has to be added containing the following:

 

mysong1

 

{

editor_displayFolder ambient

 

minDistance 20

maxDistance 24

volume 4

no_efx

 

sound/ambient/mysong1.ogg

}

 

mysong2

{

editor_displayFolder ambient

looping

omnidirectional

volume 15

sound/ambient/mysong2.ogg

 

}

 

 

6. After adding the lines quoted above, the ending of the file has to be changed into "sndshd".

 

 

7. The sound files (format: ogg) belong in the folder mymission/sound/ambient

 

 

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

 

I hope I did not forget anything important and you can turn this into understandable English language.

 

JF

Edited by JackFarmer
  • Like 1
Link to comment
Share on other sites

Corrections to these instructions:

 

2 - Don't change the file extension. Just leave it as ".gui".

 

3 - No need to add lines at the end. Just edit lines 426/427.

 

4 - No need to add lines at the end. Just edit lines 434/435.

 

6 - The missionname.sndshd file goes into missionname/sound.

  • Like 1
Link to comment
Share on other sites

 

 

Please insert the prefab with the name "dresser_darkS.pfb" (that's just an example; there are several of them where S/N/W/E refers to the opening rotation).

 

This prefab comes with all additional settings you need and the drawers include the frobblockers. I hope this helps you.

I am trying to use models/darkmod/furniture/cabinets/cabinet1_openable.ase, can't find this in prefabs. It's only a minor detail, I'll come back to it later. Thanks

Link to comment
Share on other sites

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

    • Petike the Taffer

      I've finally managed to log in to The Dark Mod Wiki. I'm back in the saddle and before the holidays start in full, I'll be adding a few new FM articles and doing other updates. Written in Stone is already done.
      · 4 replies
    • nbohr1more

      TDM 15th Anniversary Contest is now active! Please declare your participation: https://forums.thedarkmod.com/index.php?/topic/22413-the-dark-mod-15th-anniversary-contest-entry-thread/
       
      · 0 replies
    • JackFarmer

      @TheUnbeholden
      You cannot receive PMs. Could you please be so kind and check your mailbox if it is full (or maybe you switched off the function)?
      · 1 reply
    • OrbWeaver

      I like the new frob highlight but it would nice if it was less "flickery" while moving over objects (especially barred metal doors).
      · 4 replies
    • nbohr1more

      Please vote in the 15th Anniversary Contest Theme Poll
       
      · 0 replies
×
×
  • Create New...