Jump to content
The Dark Mod Forums

Bikerdude: - questions


Bikerdude

Recommended Posts

thanks for the input guys, what I am going to do first is go back to an earlier snapshot and then work forwards from there. As the VP's were fine till I modified that part of the map(in this case fleshed out a building facade...

 

I'll be back with the results..

Link to comment
Share on other sites

  • Replies 972
  • Created
  • Last Reply

Top Posters In This Topic

ok, Ive spent over 8 hrs on and this is REALLY beginning to fucking annoy...

 

I thought I had it all sorted by removing a bunch of the VPs, but oh no.. now I'm getting both mini freezes and full lockups...

 

Can someone have a look at my map, because if i cant fix it I will just delete the damn thing and be done with it.

Edited by Bikerdude
Link to comment
Share on other sites

Go ahead and PM me with a map link. I'll take a look-see and post any results. It'd be a shame to lose any good geometry.

 

If its the same map I helped ye on before, I think I remember a couple good ideas for VPing.

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

I discovered the reason for your crashes/freezes. It's these two intersecting visportals. It's okay for VPs to intersect like that, but they cannot meet in an open area like that; they have to make a "T" somewhere in the geometry.

 

------

 

I optimized parts of the map by making visportal 'boxes'. The only limiting factor about those boxes is that each box can have only 1 vp brush for the top surface. Any more and you'll freeze up. The example on the left is OK. The example on the right is not.

 

----------

 

Your map is particularly difficult because there's some geometry that juts out so I cannot visportal around it using only one top surface. I can still optimize away some areas, like this open porch. I closed it up with visportals on each opening (Also note how my intersecting visportals meet at the wall, and not in the open).

 

--------

 

There's little you can do about rooftop views being laggier. What I did on this one was construct another VP 'box' around it. Because that rooftop is now its own Visleaf, A lot of the street-level visleafs can close up if they're out of my line of sight.

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

You can stack and shuffle vertical VPs. It's only the top surface that's so dang picky (for mysterious unknown reasons). Here's an example box with two VP brushes stacked on top of each other (and no crashes!).

 

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

You can stack and shuffle vertical VPs. It's only the top surface that's so dang picky (for mysterious unknown reasons). Here's an example box with two VP brushes stacked on top of each other (and no crashes!).

 

 

Ah that's handy to know, can O also stack VPs of different sizes? by that I mean using Vps to split the map up into sections from street to sky level but as you noticed my roofs stick out so I would have multiple vertical VPs go around all my brushwork etc..? For example I would like to put a box over the top of the roofs in-front of and each side of the gatehouse(the one with the clocktower)..?

 

Also regarding the roof garden VP is there any reason it has to go all the way up to the skybox bursh, or can I just make a VP box to go over the top..? oh and what is a visual leaf..?

 

In the meantime I had a minor brainwave, there was one part of the map where the fps would drop by 10-20, and it only dawned on my to pus some small VPs in one of the rooms I suspected of causing the drop... I removed your 3x example VP box's, kept the ones on the arched area and the roof garden(I had meant to do those two but forgot, I was kinda loosing the plot emotionally etc) and at 1680*1050, 2AA, 8AF everything else on max I pretty much get 60fps everywhere. That said I have a HD5870 and a 3.4Ghz C2Q so I'm gonna run it on my little 2.6Ghz C2D/GeFore6400M and see how it fares..

 

and lastly what do you think of the map since the last time you saw it..?

Edited by Bikerdude
Link to comment
Share on other sites

I'm liking it more and more. It's layout is setting up for some great gameplay, and pretty painless AI pathfinding. All you need to squeeze more performance out is some judicious use of func_static on brushwork trim, and some noshadows on light fixtures and such.

yay seuss crease touss dome in ouss nose tair

Link to comment
Share on other sites

All you need to squeeze more performance out is some judicious use of func_static on brushwork trim, and some noshadows on light fixtures and such.

Any light source that i can get away with has no_shadows set. What do you mean when you say brishwork trim and why change it from a world brush to a func_static..? do you mean the bits that stick out into the players way..?

 

oh and my little rule I live by when trying to balance having a balance between feeling cramped and still work with the D3 engine is to make sure all gaps/holes/allyways/stairs at the tightest spot etc are 6(w)x12(h) for the player and 7x12 for the Ai @ grid 4. and thus far it seems to be working..

Edited by Bikerdude
Link to comment
Share on other sites

Brushwork trim are things like the trim just under the ceiling, or trims up the sides of walls, the trim around windows and doors, etc... small detail brushwork that isn't closing space into leafs (like walls, floors, ceilings do) nor touching/sealing the Void or a visPortal.

 

It helps performance to select a group of this brushwork and convert it to a func_static so it's rendered as a single unit and not a bunch of separate brushes, and something to do with how brushes and func_statics are rendered.

 

Edit: Note: sometimes it backfires and hurts performance or kills VPs (e.g., if the trim covers a tiny gap in brushwork, or some other inexplicable reason), so walk around and test that your FPSs are actually improving.

 

And don't convert too many brushes with a single func_static (e.g., parts you can't see) because it renders the *entire* thing when any one part renders. E.g., so keep it all in one room or close together. Also for editing reasons you may want to keep them together as a set (e.g., you move it as a whole).

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

Brushwork trim are things like the trim just under the ceiling, or trims up the sides of walls, the trim around windows and doors, etc... small detail brushwork that isn't closing space into leafs nor touching the Void nor a visPortal.

 

It helps performance to select a group of this brushwork and convert it to a func_static so it's rendered as a single unit and not a bunch of separate brushes, and something to do with how brushes and func_statics are rendered.

 

Ah sweet, I guess I should have read about this in the tutorial, my bad. May I ask what a leaf or a visual leaf is..?

 

And don't convert too much brushes with a single func_static (e.g., parts you can't see) because it renders the *entire* thing when any one part renders. E.g., so keep it all in one room or close together.

Ah yes, I didnt know this either, but it makes sense. And for me I don't think that will happen in my maps as I'm a bit anal and compulsive about making sure things line up as geometrically as possible, otherwise it annoys the living **** out of me LOL.That and io try to construct things as a balance to real life and how much work I can be arsed to do...

Edited by Bikerdude
Link to comment
Share on other sites

I edited a little in there in the meantime, so don't miss what I added.

 

A "leaf" is the enclosed area inside brushes & visPortals that renders as a whole.

 

It's sort of a similar principle to the "sealing the void" because you have to completely seal a leaf from the leafs around it (by brushes or visPortals) for it to be a single leaf. Otherwise you'll just make one big leaf that goes through the gap. E.g., if you have a window out into a Courtyard, you want to put a visPortal over the window so it's 2 leafs (courtyard and room) that can render separately, otherwise it's just one big leaf that includes the courtyard and room that renders as a whole (so is inefficient).

 

Edit: It's also a reason you want to cover up any inadvertent tiny gaps between the room and courtyard (e.g., through the ceiling or window-trim), because it will kill the visPortal over the window (because you've now un-sealed the leaf-barrier it was closing up and now it's just a useless visPortal inside one big leaf).

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 have to run so I can't look this up or check it, but I believe one of the types of triggers is an entity-trigger that will trigger when any entity breaches it (in this case, the elevator).

 

If I knew how S&R's worked better, another route would be for the elevator to send out a custom "elevator_proximity" stim, and you have some dummy entity with a "elevator_proximity" receptron, so when it receives the stim it acts (opening the door). [Probably too complicated though, when there's an easier way...]

 

You could play with a timer relay trigger, but because the elevator can stop mid-stream it's not a good idea.

If you want it to only work with the player on it, then it's very easy to do with a normal trigger_once for the player.

 

Edit: There's also using a script. When you push the button for the elevator, you can also have it run a custom script that you write. The trick then is for the script to getKey some value that tells the elevator's height.

 

Now that I think about it, I'm pretty sure the XYZ coordinates of entities are in the properties. So then it's easy. The script getKey's the Z-coordinate, and if Z-coord > some value, then trigger the trap_door. Else, keep running the script until the elevator stops (i.e., the z-coordinate is the same over two checks) ... Well, think about the logic when you want the script to stop running, but I think that's when. (Because if you push the button again a new script starts again.)

 

Edit2: One catch is, properties are normally spawn-properties, so it may be the XYZ coord's the entity spawns at, not necessarily where it moves to. But maybe it does change with position; need to test that. Or maybe another value covers it anyway; should look that up. Well...gotta run, lol. Good luck.

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

  • 4 weeks later...

Some more questions...

 

1. Internal leak testing, I found the tool and tried to decipher the tutorial, but could someone please explain to me in simple terms how I make use of the tool so I can test all my buildings etc.. I've done a load of new work over the Easter hols and I've noted a 5fps drop across the map which is why I want to do the above..

 

2. Partical effects: how much of an fps drop does each chimney smoke have? and what is the DR name of the steam and mist particle effects that Ive seen in other missions.

 

3. what the simplest way of forcing a VP to close when not in direct live of sight, as I have few of them that arent closing despite the player being around the corner etc.

 

4. and lastly does someone have 5 mins to have a look at my map to see where I can improve it fps wise, as On my laptop (8400M GS and C2D 2.6) and my average fps at 1024*768 is 20fps and I haven added any Ai yet... I am trying to get it running as well as possible on this machine so it will play more appealing to the majority of taffers etc.

Edited by Bikerdude
Link to comment
Share on other sites

1. Internal leak testing, I found the tool and tried to decipher the tutorial, but could someone please explain to me in simple terms how I make use of the tool so I can test all my buildings etc.. I've done a load of new work over the Easter hols and I've noted a 5fps drop across the map which is why I want to do the above..

 

Fidcal explained this to me not too long ago, but I can't find the thread. I think there's also a wiki article on it. Basically, you find out which entity your pointfile red line is drawn from (usually the player start). Then you:

 

1. Open a hole to the void somewhere in your map.

2. Move that player start into one of your visportalled areas.

3. Convert all the visportals in that area to solid textures.

4. Dmap your map. A leak will be found (obviously).

5. Check your pointfile. If there is an internal leak, the red line will start at your player start and go to the leak. You can follow it to find out how it gets out of your internal area. If there is no internal leak, the pointfile will start at a completely different entity.

6. Convert your visportals back to visportals

7. Repeat steps 2-6 as needed.

Link to comment
Share on other sites

BD,

I'd be happy to help out with performance and leak fixing etc for this map.

I think it would be best if you get your map to the point when you think you wont be working on the brushes etc for a day or two then I can just go through and work with a local copy - and you can continue finishing up the map after that.

 

So just keep me updated :)

Link to comment
Share on other sites

BD,

I'd be happy to help out with performance and leak fixing etc for this map.

I think it would be best if you get your map to the point when you think you wont be working on the brushes etc for a day or two then I can just go through and work with a local copy - and you can continue finishing up the map after that.

 

So just keep me updated :)

Smashing, thanks for that, I have done the 95 of the overground part so I can send you the map as it is as all that left to do is just some building facades around the edges to give the illusion of distance and city etc. I can then get cracking on the underground part, now that there are Zombies and spiders to play with.. I`ll drop you a pm

 

2. Partical effects: how much of an fps drop does each chimney smoke have? and what is the DR name of the steam and mist particle effects that Ive seen in other missions.

 

3. what the simplest way of forcing a VP to close when not in direct live of sight, as I have few of them that arent closing despite the player being around the corner etc.

And also, anyone got ideas on the above..?

Edited by Bikerdude
Link to comment
Share on other sites

Smashing, thanks for that, I have done the 95 of the overground part so I can send you the map as it is. All that left for that is just some building facades to give the illusion of distance and city etc. I can then get cracking on the underground part, now that there are Zombies and spiders to play with..

 

I'll be home with a decent PC on Friday night, so will have a look this weekend.

 

And also, anyone got ideas on the above..?

 

It's most likely easiest to have a look at using "func_portal"'s - I dont know if they explicitly allow LoS checks but at worst you can get some rough guess and use distance. Its a bit hard judging distance, but I often just rotate a known length rectangle in to check afterwards. (cough is there a ruler tool? I never remember to check) I think theres info about using func portals on the wiki. trigger_facing can also be used but it requires a lot more thought I find.

Link to comment
Share on other sites

got another problem now...

 

Just got back home, fired up the main PC and now DR or windows is being a cock.... Its coming up blank where the grid should be I've uninstalled, wiped the prefs folder, rebooted and reinstalled and its still doing the same thing. ive checked that I have VC++2008 sp1 installed so WTF...

 

[update]I went back to a previous ghost backup of windows, so i can only conclude I changed a system service that must have caused the above issue, would still like to know which one though...

 

[update]No I take it back, it looks like its a setting in the latest nVidia gfx driver(197.xx) thats causing this problem - "Threaded optimization" and this needs to be set to off. Leaving on default (Auto, or On) causes DR not to load correctly and you get whats called the "white screen of death" or WSOD...... Yet the same setting on default on previous driver versions has no effect, eg Vista Sp2 and Forceware 176.44 on my lap, no problems at all.......................

 

...........................

Edited by Bikerdude
Link to comment
Share on other sites

  • 2 weeks later...

1 & 2. If you mean a lockbox on a wall that highlights and can be lockpicked/opened with a key, and which then controls a door then I don't think we have a prefab. Be a good one to have actually. This is what I would do:

 

Make a brush the size of the lockbox.

 

Search for the lock texture. I can't remember if this is mixed in with the model textures or if there is one among the texture. I think I might have made one actually among the textures, probably under mechanical. If so, stick that on your brush and use 'fit' in Surface inspector. Probably need to scroll around the sides to just have metal edges.

 

Insert a chest prefab for reference

Basically:

 

Get the class and spawnargs from the chest body copied over to your lockbox.

Get the class and spawnargs from the lid to your door.

Get the tiny lockpin from the chest and put it with your lockbox. bind it to the lockbox. This pin is optional but recommended for lockicking because it shows progress.

 

I think that's about it. Probably have to fiddle around a bit with it to get it ideal. If you want the door to not highlight then give it frobable 0.

 

3. No, you can't cut a hole in a patch. What you can do is have 4 patches around a space. If you also create a temporary brush wall and align the texture on it then you can copy that texture to all the patches in one go.

 

Another way, bend a patch around a space by dragging vertices. This takes practice. Open up the trainer map and look in the stealth section and make sure you are NOT filtering decals but DO filter brushes and you will see all the grime decals I put in. Most are just single patches but some wrap around doors in a U shape; others loop around floors. I cannot remember if I ever made one go in a complete 'O' shape. Once you've dragged vertices and switched Off vertex made then you can use fit on Surface Inspector.

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
       
      · 3 replies
    • 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...