Jump to content
The Dark Mod Forums

In A Time of Need: first time mapper needs help testing level


kyyrma

Recommended Posts

Hi everyone,

 

Long story short: I jumped into TDM upon 2.0 but got terribly distracted by Dark Radiant and ended up working tirelessly on a tiny fan mission instead. I call the mission In A Time Of Need (subject to change) and you could say It's like my Thieves' Den (massive thanks to Fidcal for the A-Z guide, I'd never gotten anywhere without it!).

 

The map is now a very rough beta, and I'm going to try and take a week or so break from mapping. In the meantime I'd like to have some people help me test my map.

 

If you would be willing to waste some of your time and braincells to help me fix my baby, I would be forever thankful. In addition to finding bugs, I'm looking for suggestions to level flow, objectives and most importantly the lighting. I've been mapping on an old flatscreen that has terrible gamma settings, and I'm afraid the level is either way too dark or way too bright.

 

Just drop a message in this thread and I'll PM you a link to the full mission. Thanks in advance and nice meeting you all!

 

In A Time Of Need

 

Mission briefing

 

Word is that a small-time merchant named Ferryham has hit big selling a load of smuggled spice. It seems the coin has made Ferryham fancy himself a part of the better folk, and recently he had his house renovated to suit his newfound wealth. I would usually not bother myself with this kind of small fry, but the slim pickings of late have left me more desperate for a decent score than I would like to admit. And throwing around money like that definitely puts Ferryham on my map.

 

I have scouted the house from the outside and found the perfect spot for entry. The old barn leaves an opening in the yard walls and the rotten wood will be easy work for a saw. Inside I should expect three guards on duty and possibly some servants staying the night. Ferryham himself is out of town. The house and yard are cramped so there will be few places to hide once within the walls. But as long as I keep my wits about casing the joint should be a breeze

 

 

Screenshots

 

 

 

Features

 

  • tons of badly written readables
  • different objectives for normal / hard + expert
  • electric lighting with switches
  • glitchy pathfinding
  • massive FPS drops
  • inefficient use of brushes
  • bad lighting and wonky gamma
  • z-fighting
  • unintuitive level design
  • too well hidden secrets
  • a rat in a closet
  • a spooky basement

 

 

Edited by kyyrma
  • Like 4
Link to comment
Share on other sites

Yay! Another finnish mapper.

 

Very promising-looking screenshots over there!

 

Thanks! The Finns online presence always catches me off guard. No matter where you go, we are everywhere. ;)

 

I've played and enjoyed quite a few of your maps, very impressive.

Edited by kyyrma
Link to comment
Share on other sites

Welcome! Those screenshots look rather good!

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

I've been around for some years now.

 

Sure, we can discuss more via PM, but it should be noted that my views do not necessarily reflect the Official Team Opinion, which is usually obtained after thorough discussion and consensus within the Team.

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

Welcome! Those screenshots look rather good!

 

Thanks. The biggest problem is the framerate outside. Visportaling an open outdoor area turns out to be a major pain - thus far I've just made sure that the interior areas are well portaled so that they aren't rendered when you are outside, but I haven't found a way to visportal even a portion of the outdoor area. At lowest my rig hits about 40FPS in the front yard, but I'm on a fairly high-end machine.

Link to comment
Share on other sites

Thanks. The biggest problem is the framerate outside. Visportaling an open outdoor area turns out to be a major pain - thus far I've just made sure that the interior areas are well portaled so that they aren't rendered when you are outside, but I haven't found a way to visportal even a portion of the outdoor area. At lowest my rig hits about 40FPS in the front yard, but I'm on a fairly high-end machine.

 

When you can't get visportals to close the natural way, you can instead use func_portals that can be triggered by distance checks, scripts, etc to

close them on your terms... Yes, Biker can also offer some advice.

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

When you can't get visportals to close the natural way, you can instead use func_portals that can be triggered by distance checks, scripts, etc to

close them on your terms... Yes, Biker can also offer some advice.

 

Been looking into this some. So far I've got some crude LOD going on with the city facade outside the mansion walls. I haven't yet started working with scripting and triggering scripts, but that would definitely be one way to optimize the outdoors area.

 

If using externally triggered func_portals, does normal visportal limitations apply? e.g. does it need to be surrounded by brush, or can it just float anywhere?

Link to comment
Share on other sites

Func_portals are just manually controllable visportals. They are set up exactly the same way.

 

An easy insta-way to optimize exteriors is to make a lot of stuff into func_statics and make them non-shadow casting (give the entity spawnarg "noshadows" "1".)

 

Typically only the sealing geometry should be worldspawn, and all the details would be separate func_statics.

 

Also you could analyze the scene by having "r_showprimitives 1" in the console. That gives you a readout what kind of tris the scene consists of. For example, if you have a terrible amount of shdw tris (shadows tris,) the noshadow optimization gains a lot of performance easily.

 

Another simple optimization is to make sure too many light volumes do not overlap. Maximum of three. For a large exterior area, it might be good to stick with completely non-overlapping lights.

Imagine an object consisting of 1000 tris. If it is hit by 1 light, it produces 1000 tris + 1000 shadow tris. If two lights, it is 1000 + 2000. If three it is 1000 + 3000. A crude example, but you get the idea, right?

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

Another simple optimization is to make sure too many light volumes do not overlap. Maximum of three. For a large exterior area, it might be good to stick with completely non-overlapping lights.

Imagine an object consisting of 1000 tris. If it is hit by 1 light, it produces 1000 tris + 1000 shadow tris. If two lights, it is 1000 + 2000. If three it is 1000 + 3000. A crude example, but you get the idea, right?

 

I moved the yard lights around a bit and tweaked with size with this in mind and found a considerable increase in performance. Very solid advice, thank you. Next I'll look into converting stuff into func_statics - I've done some in the past, but I've got pretty mixed results performance wise. Is is better to make multiple individual func_statics, or try to lump objects together into one big entity? I understand that if the entity becomes so big it crosses visportals, that will be unefficient, but what about outside where I currently have no portals in place?

 

Sorry about all the questions! I'm sure I could find this stuff out just by reading more into old threads / the wiki, but nothing beats the convenience of asking from those who know better ;)

 

Well, I've never tested before, but I am decently good at finding all sorts of shenanigans in videogames. So if you'll have me, I'll help you test.

I'd love to test it.

 

Fantastic! One of your jobs will be to try and break the level as bad as you can, so being adept at shenanigans is exactly what it takes. I'll do one more pass on the map and then pack it up for you guys, expect something in your PM boxes within... let's say 24 hours.

Edited by kyyrma
Link to comment
Share on other sites

Wow this looks really cool! Look forward to giving it a play through :)

Link to comment
Share on other sites

You are welcome, it is nice to help newbies out, especially because they are sustaining steady outflow of new FMs, which is the lifeblood of the mod.

 

Anyhow, don't make the objects into too large func_static clumps, but group them into rational sizes. One func_static per one object is a good rule of a thumb.

 

If you look out from your window and think about how the view should be func_staticified, a car would be one FS, a trashcan another, a window, a wall segment, a ladder, a chimney, the dripping wet stain on a wall, a shelter.

 

Now you may see that func_staticifying will help you build in a modular way: need more cars? You can clone the cars quickly and place them around. Same thing with the other detail pieces. You will save a lot of mapping trouble, if you build stuff with re-use in mind. Just make one object into a func_static, select and clone.Be careful, though, DR has a bug that sometimes objects get corrupted when you drag them around. You can identify this by looking at the object size indicator when it is selected. If an object of 4x4 units turn into 3.999998x3.9999, you need to ctrl&g to make it snap to grid again. It must be worldspawn for this to work.

Clipper

-The mapper's best friend.

Link to comment
Share on other sites

Bridge, Numbers! Check your inboxes, I've sent you the beta and some instructions on what kind of stuff I'd like to hear from you guys. Get back to me if you have any trouble setting up the mission :)

 

 

You are welcome, it is nice to help newbies out, especially because they are sustaining steady outflow of new FMs, which is the lifeblood of the mod.

 

Anyhow, don't make the objects into too large func_static clumps, but group them into rational sizes. One func_static per one object is a good rule of a thumb...

 

I've func_staticed most of the external architecture now. Let's see how well it does performance-wise with testers, my own performance seems much more stable now at least.

 

Another problem though: I can't get the icon for my map entity to show.

 

I've named the .tga files as follows.

 

guis/assets/game_maps/map_of_ferryham.tga

guis/assets/game_maps/map_of_ferryham_icon.tga

 

And set the paths similarly in the map entity. The map works just fine (shows the map image when used) but for some reason the inventory icon doesn't show up.

Link to comment
Share on other sites

Wow this looks really cool! Look forward to giving it a play through :)

 

Thanks!

 

Make sure that guis/assets/game_maps/map_of_icon.tga is present.

 

So the file should be kept named map_of_icon.tga instead of changing it to map_of_whatever_icon.tga?

 

Evening, drop me a PM if yoiu want a hand with the perfing..

 

Appreciate it! I'll get in touch once I've finished the first playtesting round with Bridge and Numbers.

Link to comment
Share on other sites

So the file should be kept named map_of_icon.tga instead of changing it to map_of_whatever_icon.tga?

 

"map_of_icon.tga" is the default icon image for maps. If you're not seeing an icon image, then you need to supply one.

 

If you want a fancier icon image, you can define this spawnarg on your map entity:

 

"inv_icon" "guis/assets/game_maps/map_of_whatever.tga"

 

Then you need to provide the file guis/assets/game_maps/map_of_whatever.tga".

Link to comment
Share on other sites

So, Numbers and Bridge came back with their first findings on the level.

 

Now I've got about 40 issues listed up that need to be looked into. Fun!

 

If you want a fancier icon image, you can define this spawnarg on your map entity:

 

"inv_icon" "guis/assets/game_maps/map_of_whatever.tga"

 

Then you need to provide the file guis/assets/game_maps/map_of_whatever.tga".

 

I've tried both supplying a new icon and using the one from starpack, but for whatever reason both still fail to load in-game. I'll try to check the console for errors if that could tip me off on what is going wrong.

 

I'm using the map entity from startpack, but I'll make one from scratch if all else fails.

Link to comment
Share on other sites

So, I've been getting into using patches lately. I completely rebuilt the balcony railing using patches for trimmings and other decorative detail, and also merged a big number of brushes.

 

I now get better FPS with full shadows on the railing than I used to get without shadows. Check it out.

 

I think the benefits of using patches should be emphasized even more to new users. Maybe the patch tutorial could be integrated into the A-Z one instead of just having a link to it?

  • Like 1
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
       
      · 2 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...