Jump to content
The Dark Mod Forums

Search the Community

Searched results for '/tags/forums/idea/' or tags 'forums/idea/q=/tags/forums/idea/&'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General Discussion
    • News & Announcements
    • The Dark Mod
    • Fan Missions
    • Off-Topic
  • Feedback and Support
    • TDM Tech Support
    • DarkRadiant Feedback and Development
    • I want to Help
  • Editing and Design
    • TDM Editors Guild
    • Art Assets
    • Music & SFX

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

  1. The Dark Mod 15th Anniversary Contest! To celebrate our 15th year, we are holding a fan mission contest! The Dark Mod project trundles onward for it’s 15th year in a row. In that time we have improved our game engine in countless ways and have grown to over 170 missions! To celebrate our perseverance and the years of improvements to come, we are hosting a contest to mark 15 years since the 1.0 release! Now is your time to demonstrate the mission design that best exemplifies your personal style and capabilities! Please consider entering this event! Unlike most recent contests, there is no defined theme and we are simply going to score based on our standard metrics of Story, Gameplay, and Visuals with our standard weighted scoring: Max Possible = Total Votes * 5 (Outstanding) TotalMaxPointsPoss (TMP) = AllCategoryVotecount(ACV) * 30 Full Weighted Score (FWS) = (Gameplay score*3 + Visual score*2 + Story score) / TMP Contest Submissions should be provided before October 16th so that players can start playing and celebrating on the 17th! The players have been keen to relay that they would like really creative missions so it may be worthwhile to examine our “Community Unusual Contest” to get an idea about the wild range of possibilities we offer to designers. Also, since the contest submission is in October, there will probably be an increased desire for Horror themes. The Dark Mod 2.12 was just released so including new 2.12 features is strongly encouraged. Finally, it might be nice if authors name their protagonist Corbin to match the included missions. ( None of the above suggestions are requirements for the submissions. ) Please post your intention to enter in this thread. Thank you! The Poll on this is to demonstrate the intended design used in the mission release threads.
  2. @Wellingtoncrab would you mind editing the main post by either removing those parts about you being lost or at least put an "april fools" disclaimer on it. I might be over sensitive, but given the actual losses of some beloved community members, I kind of feel like this is something not to joke about. And honestly, I completely fell for it at first and was really sad and shocked for a minute or two, and frequently checked your profile if you finally came back online. By the way: Did you steal the idea from myhouse.wad?
  3. I hope I'm not proposing some unfeasible idea that was already imagined before, this stuff is fun to discuss so no loss still. Riding the wave of recent optimizations, I keep thinking what more could be done to reach a round 144 FPS compatible with today's monitors. An intriguing optimization came to mind which I felt I have to share: Could we gain something if we had distance-based LOD for entity updates, encompassing everything visual from models to lights? How it would work: New settings allow you to set a start distance, end distance, and minimum rate. The further an entity gets the lower its individual update rate, slowly decreasing from updating each frame (start distance and closer) to updating at the minimum rate (end distance and further). This means any visual change is preformed with frame skips on any entity: For models such as characters animations are updated at the lower rate, for lights it means shadows are recalculated less often... even changes in the position and rotation of an entity may follow it for consistency, this would especially benefit lights with a moving origin like fireplaces or torches held by guards which recalculate per-frame. Reasoning: Light recalculation even animated models or individual particles can be significant contributors to performance drain. We know the further something is from the camera the less detail it requires, this is why we have a level-of-detail system with lower-polygon LOD models for characters and even mapmodels. Thus we can go even further and extend the concept to visual updates; Similar to how you don't care if a far away guard has a low-poly helmet you won't notice, you won't care if that guard is being animated at 30 FPS out of your maximum of 60, nor if the shadow of a small distant light is being updated at 15 FPS when an AI passes in front of it. This is especially useful if you own a 144 Hz monitor and expect 144 FPS: I want to see a character in front of me move at 144 FPS, but may not even notice if a guard far away is animating at 60 FPS... I want the shadows of the light from the nearby torch to animate smoothly, but can care less if a lamp meters away updates its shadows at 30 FPS instead. The question is if this is easy to implement in a way that offers the full benefit. If we use GPU skinning for instance, the graphics card should be told to animate the model at a lower FPS in order to actually preserve cycles... does OpenGL (and in the future Vulkan) let us do this per individual model? I know the engine has control over light recalculations which would probably yield the biggest benefit. Might add more points later as to not make the post too big, for now what are your thoughts?
  4. 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 ?

    1. Show previous comments  6 more
    2. chakkman
    3. Petike the Taffer

      Petike the Taffer

      @chakkmanPardon ? I thought your Doom 3 discussion was elsewhere.

    4. chakkman

      chakkman

      Sorry, my bad. No idea how that happened.

  5. Ah, pity I wasn't reading the forums back in February. I'm fond of that game, along with Bugbear's other early title, Rally Trophy. I was never too good at FlatOut, but it was always a hoot to play.
  6. In principle I like the idea of community campaign building. But the official campaign itself never really captured my imagination, not to mention it'd be hard for people to have an idea of where it's going, much less making it cohere. I scripted a Dark Mod campaign meant to introduce the districts, factions, and lore that does capture my imagination. But I'm not in any real position to ask people to build for it, and also there's still the problem that people may have different visions for it that may not cohere well. As for the "connecting mission", that might be interesting... But I'd reframe it a little, not that it has to be connecting per se, but you know, a hero or even another character from some FM in an adjacent setting alongside (or before or after) an existing FM, kind of like what Rozencranz and Guildenstern did for Hamlet, if you know about that. I think it's better to have it more open ended how an author wants to build off an existing FM than only connecting two FMs per se. That might be a really interesting theme to see play out.
  7. Announcing the next installment of 'The Lieutenant' series: High Expectations! Never heard of this series before? That's because I just made it up. Actually, it continues on from my previous FM, In Plain Sight. You don't need to have played In Plain Sight before, but there are some references to it in the readables that might not make sense if you haven't (some of which will be spoiler-ish). "Follow the Lieutenant on his next mission to the City of Highborough" Mission Type: City Missions Beta Testers (thank you all!!! @wesp5 @Acolytesix @Shadow @Cambridge Spy @AluminumHaste @jaxa @thebigh @joebarnin @Mezla @snatcher @datiswous Extra credit goes to @Mezla for providing the idea behind one of the objectives! Notes: TDM 2.11 required You can explore most of the map from the start of the mission, but if you find yourself getting a bit lost or unfocused, just concentrate on the main objective Your objectives will become visible after you read your briefing in your inventory The map does not contain any secrets The only difference in the difficulties is the (optional) loot goal This mission has some replay potential built-in. Explanation below, but I suggest you read this only after your first playthrough: Spoiler warning!: Download links (v1.4): Proton Drive: https://drive.proton.me/urls/ZDTKN6DDM4#8Re0CpARxcbc Github: https://github.com/FrostSalamander/fsx/releases/download/1.4/highex.pk4 Screenshots: https://flic.kr/s/aHBqjAB8qt Known Issues it appears that to some players keys bound to AI are unfrobable. I don't have a solution as I've never been able to reproduce it. As a mitigation, for these doors you can either lockpick them or an alternate key will be available. Other hints Atkinson/Burns objective This objective is more about rewarding the 'explorer' types. It's optional and requires you to find a lot of stuff to piece together the whole story of what happened. Most of these are not really 'hidden', but rather require a visit to most of the accessible areas of the map. If you have given up searching, then: Hotel Safe Combination hint: spoiler: What's going on with Brother Gregory? If this isn't clear, then read on: There's a wooden door in the prison that I can't open... hint: spoiler:
  8. After some amount of work I'm happy to be able to share my Christmas gift for TDM! Or at least half of it, considering the other half is still only in design phase. I created an addon that implements detailed player functionality, inspired by the first DeusEx game (The Conspiracy). It's NOT a mission script but an addon, meaning you place the pk4 in your TDM directory to enable the system and it will automatically work in each and every FM. Note that due to using tdm_user_addons.script / user_addon_init() it may disable or get disabled by other addons you have installed... this is a design limitation which can hopefully be lifted at some point in the future. This plugin will be included in my cyberpunk total conversion The Dark Module and automatically active with it, but first I shall design it and make it available as a small independent addon for vanilla TDM. In the current initial release it implements just per-limb damage; The upcoming plan is to add a skill / augmentation system, allowing the player to use loot as skill points to enhance various body parts and gain new or improved abilities. Due to the scripting system being very limited in what it lets me modify, I'm still gathering documentation on how to implement those skills and which I can have. So until then detailed body damage with penalties remains the only part that's theoretically finished so far (further improvements are required here too)... including a HUD component above the lightgem showing the status of each body part: Green = full health, yellow = half health, red = (close to) no health, black = no health left. The individual limbs available: Head, Torso, Left Arm, Right Arm, Left Leg, Right Leg... arms and legs work in unity however. They each take damage with the player as well as healing together with them. The more damaged a group is, the more a respective penalty is applied to the player. Groups and penalties include: Head: When the head is damaged, the player begins to get dizzy and has their vision impaired. Currently the only effect replicates the flashbomb, causing white dots to appear around the player and disrupt their view until the head is healed. As the player can't live without a head, reaching 0 will cause instant death. More effects are possible and pending. Torso: Damage to the torso translates to damage to the cloak, increasing the player's lightgem and rendering them more visible even in dark spots. As the player can't live without a torso, reaching 0 will cause instant death. Given script limitations I'm unable to simulate lung damage and decrease / limit the amount of air the player has. Arms: Arm damage makes it difficult for the player to hold items: In-world objects being held will probabilistically get dropped, more often the worse your arms are hurt. When both arms reach 0 health, the player can no longer pick up anything in the world without instantly dropping it... you also become unable to use any weapons. Due to limitations in the scripting system, I'm unable to decrease the speed or accuracy of the blackjack / sword / bow as was desired. Legs: As expected leg damage will make the player walk more slowly. It was desired that when one leg is lost the player can no longer jump, whereas when both legs are gone you remain stuck in crouch mode until healed... due to limitations in the scripting system this part is also not possible at the moment. A crude limitation is the fact that limb damage is primarily based on the direction the player is walking toward... for example, increased likelihood of suffering damage to your right arm and leg if strafing right the moment you take the damage. The script system doesn't let you extract the vector direction of the last damage event, thus I can't use the real direction the hit came from when calculating which body part should absorb the most health loss. This means that even if an arrow comes from above and hits the player's head area, the player will only take damage to the legs if they're falling downward the moment they got hit... for the time being this provides a bare minimum amount of realism but is a very bitter implementation. For this reason it would be greatly appreciated if any of the code developers could join this discussion and verify if they can help with adding the necessary hooks to external scripts: With 2.09 getting periodic beta releases at this point in time, it would be a great opportunity to make changes to the builtin player script that allow an external function to modify more player variables. This includes the efficiency of weapons, if the player is allowed to jump or forced to always crouch, and I'd also really appreciate a hook to manipulate the breath so air can be lowered as if the player is underwater. I understand other priorities exist or if the work may be considered too much, however this would help in being able to finish this mod with the proper functionality and planned skill set. In the meantime let me know what you think of this idea and how I went about it! So far no new assets are included except the GUI graphics: Everything is done with less than 250 lines of script which I'd say is a good achievement I've attached the pk4 and since it's so lightweight I'll also add the main script straight in this post. player_damage_1.0.pk4 #define DAMAGE_WAIT 0.0166667 #define EXPOSURE_ARM_LEFT 2 #define EXPOSURE_ARM_RIGHT 2 #define EXPOSURE_LEG_LEFT 2 #define EXPOSURE_LEG_RIGHT 2 #define EXPOSURE_HEAD 3 #define EXPOSURE_TORSO 1 #define PENALTY_TORSO_LIGHTGEM 4 player self; float damage_gui; boolean dizzy; entity dizzy_particles; float bound(float val, float min, float max) { if(val < min) return min; if(val > max) return max; return val; } // Range based probability: Calculates a probability per frame independent of wait time (0 - 1 range at 1 chance per second) boolean prob(float x) { return sys.random(1) > x && sys.random(1) < DAMAGE_WAIT; } // Directional exposure calculator float dex(vector dir, float ex_front, float ex_back, float ex_right, float ex_left, float ex_up, float ex_down) { float maxvel = 100; float dir_front = bound(dir_x / maxvel, 0, 1) * ex_front; float dir_back = bound(-dir_x / maxvel, 0, 1) * ex_back; float dir_right = bound(dir_y / maxvel, 0, 1) * ex_right; float dir_left = bound(-dir_y / maxvel, 0, 1) * ex_left; float dir_up = bound(dir_z / maxvel, 0, 1) * ex_up; float dir_down = bound(-dir_z / maxvel, 0, 1) * ex_down; return dir_front + dir_back + dir_right + dir_left + dir_up + dir_down; } void player_damage_update_arm(float dmg_l, float dmg_r) { float hl_l = self.getFloatKey("health_arm_left"); float hl_r = self.getFloatKey("health_arm_right"); float hl = (hl_l + hl_r) / 2; if(dmg_l != 0 || dmg_r != 0) { hl_l = bound(hl_l - dmg_l, 0, 1); hl_r = bound(hl_r - dmg_r, 0, 1); hl = (hl_l + hl_r) / 2; self.setKey("health_arm_left", hl_l); self.setKey("health_arm_right", hl_r); self.setGuiFloat(damage_gui, "PlayerDamage_ItemArmLeft", hl_l); self.setGuiFloat(damage_gui, "PlayerDamage_ItemArmRight", hl_r); // Penalty #1: Disable the weapon once the arm are damaged to minimum health if(hl == 0) { self.selectWeapon(WEAPON_UNARMED); self.disableWeapon(); } else { self.enableWeapon(); } } // Penalty #2: Probabilistically drop held items based on arm damage if(hl == 0 || prob(hl)) if(self.heldEntity() != $null_entity) self.holdEntity($null_entity); } void player_damage_update_leg(float dmg_l, float dmg_r) { float hl_l = self.getFloatKey("health_leg_left"); float hl_r = self.getFloatKey("health_leg_right"); float hl = (hl_l + hl_r) / 2; if(dmg_l != 0 || dmg_r != 0) { hl_l = bound(hl_l - dmg_l, 0, 1); hl_r = bound(hl_r - dmg_r, 0, 1); hl = (hl_l + hl_r) / 2; self.setKey("health_leg_left", hl_l); self.setKey("health_leg_right", hl_r); self.setGuiFloat(damage_gui, "PlayerDamage_ItemLegLeft", hl_l); self.setGuiFloat(damage_gui, "PlayerDamage_ItemLegRight", hl_r); // #Penalty #1: Make movement slower self.setHinderance("health", 0.25 + hl * 0.75, 1); } } void player_damage_update_head(float dmg) { float hl = self.getFloatKey("health_head"); float time_current = sys.getTime(); if(dmg != 0) { hl = bound(hl - dmg, 0, 1); self.setKey("health_head", hl); self.setGuiFloat(damage_gui, "PlayerDamage_ItemHead", hl); // Penalty #1: Without a head the player dies if(hl == 0) self.damage(self, self, self.getOrigin(), "damage_suicide", 1); // Penalty #2: Simulate dizzyness starting at half health if(hl <= 0.5) { if(!dizzy) { dizzy_particles = sys.spawn("func_emitter"); dizzy_particles.setModel("flashbomb.prt"); dizzy_particles.setOrigin(self.getEyePos()); dizzy_particles.bind(self); dizzy = true; } } else { if(dizzy) { dizzy_particles.remove(); dizzy = false; } } } } void player_damage_update_torso(float dmg) { float hl = self.getFloatKey("health_torso"); if(dmg != 0) { hl = bound(hl - dmg, 0, 1); self.setKey("health_torso", hl); self.setGuiFloat(damage_gui, "PlayerDamage_ItemTorso", hl); // Penalty #1: Without a torso the player dies if(hl == 0) self.damage(self, self, self.getOrigin(), "damage_suicide", 1); // Penalty #2: Torso damage negatively affects the lightgem self.setLightgemModifier("damage", (1 - hl) * PENALTY_TORSO_LIGHTGEM); } } void player_damage() { sys.waitFrame(); self = $player1; damage_gui = self.createOverlay("guis/player_damage.gui", 1); float health_old = 100; // Init by sending a heal event filling the limbs to full health player_damage_update_arm(-1, -1); player_damage_update_leg(-1, -1); player_damage_update_head(-1); player_damage_update_torso(-1); while(1) { // sys.waitFrame(); sys.wait(DAMAGE_WAIT); float health_current = self.getHealth(); float dmg = (health_old - health_current) / 100; float dmg_arm_left = dmg * EXPOSURE_ARM_LEFT; float dmg_arm_right = dmg * EXPOSURE_ARM_RIGHT; float dmg_leg_left = dmg * EXPOSURE_LEG_LEFT; float dmg_leg_right = dmg * EXPOSURE_LEG_RIGHT; float dmg_head = dmg * EXPOSURE_HEAD; float dmg_torso = dmg * EXPOSURE_TORSO; // If this is damage and not healing, apply directional damage to each limb if(dmg > 0) { // Currently we estimate damage direction based on the player's velocity, we should fetch the real direction of a damage event when this becomes possible vector dir = self.getMove(); vector ang = self.getViewAngles(); // Protections based on the player's position and relation to the environment // protection_look: 1 when looking up, 0 when looking down // protection_low: Higher as the lower part of the body is exposed float protection_look = 1 - (90 + ang_x) / 180; float protection_low = 1; if(self.AI_CROUCH) protection_low = 0; else if(self.AI_ONGROUND) protection_low = 0.75; // Use the dex function to calculate directional exposure patterns, direction order: Front, back, right, left, up, down // Arms: Somewhat likely to be hit, no added protection // Legs: Somewhat likely to be hit, added protection when the player is crouching // Head: Unlikely to be hit, added protection when the player is looking down // Torso: Likely to be hit, no added protection float exposure_arm_left = bound(sys.random(0.375) + dex(dir, 0.5, 0.25, 0.0, 1.0, 0.0, 0.25), 0, 1); float exposure_arm_right = bound(sys.random(0.375) + dex(dir, 0.5, 0.25, 1.0, 0.0, 0.0, 0.25), 0, 1); float exposure_leg_left = bound(sys.random(0.375) + dex(dir, 0.75, 0.5, 0.0, 0.5, 0.0, 1.0) * protection_low, 0, 1); float exposure_leg_right = bound(sys.random(0.375) + dex(dir, 0.75, 0.5, 0.5, 0.0, 0.0, 1.0) * protection_low, 0, 1); float exposure_head = bound(sys.random(0.25) + dex(dir, 0.25, 0.75, 0.5, 0.5, 1.0, 0.0) * protection_look, 0, 1); float exposure_torso = bound(sys.random(0.5) + dex(dir, 0.75, 1.0, 0.0, 0.0, 0.0, 0.0), 0, 1); // Apply the exposure to damage, multiplied to simulate the sensitivity / resistance of each limb dmg_arm_left = exposure_arm_left * dmg * EXPOSURE_ARM_LEFT; dmg_arm_right = exposure_arm_right * dmg * EXPOSURE_ARM_RIGHT; dmg_leg_left = exposure_leg_left * dmg * EXPOSURE_LEG_LEFT; dmg_leg_right = exposure_leg_right * dmg * EXPOSURE_LEG_RIGHT; dmg_head = exposure_head * dmg * EXPOSURE_HEAD; dmg_torso = exposure_torso * dmg * EXPOSURE_TORSO; } player_damage_update_arm(dmg_arm_left, dmg_arm_right); player_damage_update_leg(dmg_leg_left, dmg_leg_right); player_damage_update_head(dmg_head); player_damage_update_torso(dmg_torso); health_old = health_current; } }
  9. It is possible. You can drag outside a selected speaker and resize it exactly like a brush. Note that you have to drag outside the entire bounding box of the speaker (as if it were a rectangle), rather than just outside the circular boundary, which isn't particular intuitive. If you enable View -> Show -> Show Size Info you will see sizing axes which give a better idea of where the bounding box is.
  10. Hello, all. I've decided to post some lists of royalty-free music from Kevin MacLeod's well-known site Incompetech.com, lists that include tracks and themes chosen as potentially useful for The Dark Mod mission creators. Mr. MacLeod's made plenty of really good royalty-free music over the years, including various ambient themes and other music that could work pretty well in The Dark Mod. From what I know and remember, there's already been a fair few released FMs that used a few tracks from MacLeod's archive, so he is not unknown to the TDM community. The older (and fully usable) version of MacLeod's site is here and another archive of his royalty-free music can be found here (on Wikimedia Commons). I've added the links as well. As of April 2024, I have also added links to the official YouTube uploads of the individual tracks, all part of MacLeod's official YouTube channel. For the sake of easier reading and finding a song in the lists below, I've arranged them all in alphabetical order. Religious / churchly ambients Types of settings: Builder churches, chapels, cathedrals, monasteries, abbeys, etc. Various solemn and calm religious ambients. - Agnus Dei X (YT link. Somber but livelier in places, male and female choir vocals in muffled Latin.) - Bathed in Light (YT link. A rather soothing ambient, I suppose it could work inside a pleasant-seeming Builder church, including as a place of relief in a scary mission.) - Gregorian Chant (YT link) - Lasting Hope (YT link) - Midnight Meeting (YT link) - Organic Meditations 1 (YT link) and Organic Meditations 2 (YT link) - Rites (YT link) - Private reflection (YT link) - Supernatural (YT link. Good for an abandoned church, spooky candle-lit catacombs, etc.) - Virtutes Vocis (YT link) Potentially: - Tiny Fugue (YT link) - Toccata and Fugue in D Minor (YT link. Famous organ composition by Bach, IMHO might sound too Barocque for a late-medieval style setting, but good for a hint of eerieness.) Spooky / horror / ominous ambients Types of settings: Crypts, catacombs, haunted caves, eerie ruins, lairs and places where undead and other monsters roam, etc. Some of the more industrial-sounding ones could also be useful for missions set at factories or warehouses occupied by criminal gangs, and so on (i.e. also for non-supernatural threats and non-supernatural creepiness). - Aftermath (YT link), WiCo link) - Ancient Rite (YT link, WiCo link) - Anxiety (YT link, WiCo link) - Apprehension (YT link, WiCo link) - Blue Sizzle (YT link, WiCo link) - Bump in the Night (YT link, WiCo link) - Chase Pulse (YT link, WiCo link) and Chase Pulse Faster (YT link, WiCo link. Both could work in some ghost-haunted location, with ghosts pursuing the player.) - Classic Horror 3 (YT link, WiCo link. Good for a haunted house, manor house or other private household interior.) - Crypto (YT link) - Dark Pad (YT link) - Dark Standoff (YT link) - Darkness Speaks (YT link. Shorter sting, good for a scripted creepy event.) - Decay (YT link, WiCo link) - Deep Noise (YT link, WiCo link) - Digital Bark (YT link, WiCo link) - Distant Tension (YT link, WiCo link) - Dopplerette (YT link, WiCo link) - Echoes of Time 1 (YT link, WiCo link) - Echoes of Time 2 (YT link, WiCo link) - Fire Prelude (YT link) - Gathering Darkness (YT link, WiCo link) - Ghostpocalypse 1 - The Departure (YT link) - Ghost Processional (YT link) - Ghost Story (YT link, WiCo link) - Grave Matters (YT link) - Heart of the Beast (YT link, WiCo link) - Himalayan Atmosphere (YT link. Eerie theme, could work in some ancient ruins.) - Ice Demon (YT link, WiCo link) - Irregular (YT link) - Land of Phantoms (YT link) - Lithium (YT link) - Long Note 1, Long Note 2 and Long Note 3 - Medusa (YT link) - Mind Scrape (YT link) - Mirage (YT link) - Nervous (YT link, WiCo link) - Night Break (YT link, WiCo link) - Ominous (YT link. Shorter ambient, but pretty spooky.) - One of Them (YT link, WiCo link) - Ossuary 1 (YT link) - Ossuary 5 (YT link) - Ossuary 6 (YT link) - Penumbra (YT link, WiCo link) - Political Action Ad (YT link. Yes, a song for this concept has such an ominous atmosphere. ) - Redletter (YT link, WiCo link) - Right Behind You (YT link, WiCo link) - Satiate - strings version (YT link) - Spacial Harvest (YT link) - Spacial Winds (YT link, WiCo link. Might be good for Middle Eastern themed scares.) - Spider Eyes (YT link. This could work well inside a household, or inside some public building.) - Supernatural (YT link. Calmer melody, good for a haunted religious buldings and its grounds.) - Sunset at Glengorm (YT link and YT remastered link) - Steel and Seething (YT link) - Tenebrous Brothers Carnival - Mermaid (YT link. Sounds serene, but is rather creepy and tense, maybe underground/underwater ruins.) - The Dread (YT link, WiCo link) - The Hive (YT link, WiCo link) - The Voices (YT link, WiCo link 1, WiCo link 2. Very otherworldly, good for some haunted area or other dimension.) - Unnatural Situation (YT link) - Unease (YT link, WiCo link. Would sound best in a manor house, museum, or other fancy interiors.) - Unseen Horrors (YT link, WiCo link) - Very Low Note (YT link, WiCo link) Tension-building / mysterious / general ambients Type of setting/situation: General ambients, especially in parts of FMs where the plot thickens and some coded development is triggered that makes for a new "act" in the overall story of the mission. (Imagine the likes of moonbo's missions and how they're structured and you get a bit of an idea.) - Air Prelude (YT link) - Awkward Meeting (YT link, WiCo link. Our thief hero or heroine meets an ally or informant for a bit of chit-chat.) - Blue Sizzle (YT link, WiCo link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Calmant (YT link. A calm, quiet piano theme, but it has an air of mystery and isolation. An emotionally neutral, uncertain theme.) - Crypto (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Dama-May (YT link. A bit of a peculiar tense theme, but some might find some uses for it.) - Dark Times (YT link) - Disappointment (YT link) - Disconcerned (YT link) - Dopplerette (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Dragon and Toast (YT link) - Enter the Maze (YT link) - Fantastic Dim Bar (YT link) - Fire Prelude (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Frozen Star (YT link. Exploring some long-lost ruins, mysterious compound or complex, it's soothing but creepy.) - Ghost Processional (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Gloom Horizon (YT link) - Grave Matters (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Greta Sting (YT link. A short sting, under twenty seconds, useful for revelatory scripted scenes and building suspense.) - Grim League (YT link) - Heavy Heart (YT link) - Industrial Music Box (YT link. Somber and personal, reminds me of the music box theme we already have in the game.) - Interloper (YT link) - Invariance (YT link) - Irregular (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness/mysteriousness.) - Isolated (YT link. A calm, somber ambient, for thoughtful situations. A bit more modern and guitarry-sounding, but could work in TDM.) - It Is Lost (YT link, WiCo link. Maybe a theme for exploring some mysterious underground ruins ?) - Lamentation (YT link. Maybe a castle or manor house household where bad events transpired.) - Lasting Hope (YT link) - Lithium (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Long Note 1, Long Note 2 and Long Note 3 (YT link 1, YT link 2, YT link 3. These are IMHO versatile enough both for tension-building and mild creepiness.) - Lord of the Land (YT link. Maybe usable as a quiet background theme while sneaking through a busier castle or manor house.) - Lost Frontier (YT link. Exploring some city or castle ruins in The Empire that seem majestic at first glance but could hide a darker secret.) - Mourning Song (YT link) - New Direction (YT link. Very interesting ambient, could work well for a slow-burning urban noir atmosphere and doesn't sound modern.) - Night of Chaos (YT link) - Night on the Docks - piano version (YT link. Part of a trio of slow noir themes, the others use a sax and trumpet. This is the only one of the three that sounds pre-1900 compatible.) - On The Passing of Time (YT link, WiCo link) - Oppressive Gloom (YT link) - Overheat (YT link) - Quiet Panic (YT link. Short and quiet, good for tension-building, including for scripted events.) - Relent (YT link. The clarinet in this one might be slightly anachronistic, but it's an interesting contemplative melody.) - Road to Hell (YT link) - Satiate - strings version (YT link. This one's IMHO versatile enough both for tension-building and mild horror.) - Satiate - percussion version (YT link. This one's IMHO better purely as a tension-building theme.) - Scissors (YT link. This would be an excellent theme for a mission set at a factory, inventor's workshop or a warehouse.) - Shores of Avalon (YT link. Quieter tension-builder.) - Simplex (YT link. A pretty good one, though some of the quieter beats are a bit more electronic.) - Spacial Harvest (YT link. This one's IMHO versatile enough both for tension-building and mild horror.) - Spring Thaw (YT link) - Stay the Course (YT link) - Sunset at Glengorm (YT link and YT remastered link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Temple of the Manes (YT link. I'd imagine this could work in an atmospheric mission set inside a castle or fortified manor house.) - Tempting Secrets (YT link) - Tenebrous Brothers Carnival - Intermission (YT link. Tense but melodic theme, with some heavy background percussions.) - The North (YT link) - Thunder Dreams (YT link) - Tranquility (YT link. A longer and very calm ambient theme, but has an air of mystery and strangeness.) - Unanswered Questions (YT link) - Unnatural Situation (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness.) - Unpromised (YT link. Can work both in an urban and a rural/wilderness environment.) - Very Low Note (YT link. This one's IMHO versatile enough both for tension-building and mild creepiness, would be ideal for a cave or basement.) - Winter Reflections (YT link. Good for a mission set during a snowed-in winter night.) Period instrument background music (stylistically European) Types of settings: Taverns, village scenes, town life, feasts, scenes among commoners or nobles. Mostly stuff with a calm and cosy atmosphere. - Achaidh Cheide (YT link) - Angevin B (YT link. This one sounds a bit more aristocratic or courtly, good for a feast or public event.) - Danse Macabre - harp version - Errigal (YT link. This one sounds a bit more aristocratic or courtly, but it's a good secular piece of music.) - Evening Fall - harp (YT link) - Folk Round (YT link) - Heavy Interlude (YT link. Short but really cool, IMHO could also work for a background scene of two AI characters sparring for fun.) - Master of the Feast (YT link. Good for a scene with at least two or three musicians and multiple noble/patrician characters attending a feast.) - Minstrel Guild (YT link) - Midnight Tale (YT link) - Old Road (YT link) - Pale Rider (YT link) - Pippin the Hunchback (YT link) - Suonatore di Liuto (YT link) - Teller of the Tales (YT link) North African, Middle Eastern and other "exotic" background music Types of settings: The TDM universe's analogues of the Mediterranean, North African, Middle Eastern regions, and other "exotic" locations. - Asian Drums (YT link. Could work for a Middle Eastern or North African style mission, good slow, tension-building ambient theme.) - Cambodian Odyssey (YT link. This is better suited to a south Asian or southeast Asian setting, but could work in a Middle Eastern locale as well. Tense theme, quiet percussions.) - Desert City (YT link. Could work for a Middle Eastern or North African style mission, good all-around urban ambient theme.) - Drums of the Deep (YT link (shorter) and YT link (longer). Could work for a Middle Eastern or North African style mission, good tension-building ambient theme.) - East of Tunesia (YT link. Could work in a mission with either a Mediterranean or North African style environment, e.g. a port city.) - Ibn Al-Noor (YT link. Good for a Middle Eastern or North African style mission, especially for a palace or public event environment.) - Lotus (YT link. Good as a general ambient theme for a Middle Eastern or North African style mission, or some other exotic locale.) - Mystery Bazaar (YT link. Another good one for a Middle Eastern or North African style mission, ideally some marketplace or square.) - Perigrine Grandeur (YT link. Middle Eastern style percussions interspersed with a grunge-like tune reminescent of those from Thief.) - Tabuk (YT link. Slow, but slightly more dramatic theme for a Middle Eastern or North African style environment.) - Tenebrous Brothers Carnival - Snake Lady (YT link. Has a Middle Eastern feel to it, very good for building suspense and tension.) Wilderness / nature ambients Types of settings: Outdoor areas with groves, forests, rivers, small lakes, mountain valleys, caves. Potentially also some Pagan villages and camps. - Black Bird (YT link. Tribal type stuff.) - Dewdrop Fantasy (YT link and YT link) - Kalimba Relaxation Music (YT link. Maybe could work in a cave or similar environment ?) - Evening Fall - harp (YT link) - Firesong (YT link. Tribal type stuff.) - Intuit (YT link. Tribal type stuff.) - Healing (YT link. I think this one could also work in an urban environment.) - Heavy Heart (YT link. Also works as a general ambient theme.) - Magic Forest (YT link) - River Flute (YT link) - Moorland (YT link. Could work for an isolated Pagan tribe village.) - Shamanistic (YT link) - Spirit of the Girl (YT link) - Thunderbird (YT link) - The North (YT link. A very short but looping theme, IMHO also works as a general ambient theme.) - The Pyre (YT link) - The Sky of Our Ancestors (YT link) - Unpromised (YT link) - Very Low Note (YT link. IMHO very good for a cave or cave system.) - Virtutes Instrumenti (YT link) - Willow and the Light (YT link) - Winter Reflections (YT link. Good for a mission set in winter or in some cavern strewn with magic crystals.) Non-serious bonus suggestion - Crunk Knight (YT link. When the Bridgeport City Watch throw an annual office party :-))) ) Giving MacLeod proper attribution if you chose to use this music in your mission Each song comes with an attribution quote that you need to include if you're going to use any of this music in your fan mission. If there is a final credits sequence in your mission, or you can include this quote at least as part of the mission's release notes, please do so. Though you can buy a license from Kevin and don't need to use attribution, all of this music is for free, as long as you give him credit. The credit-giving (attribution) is as follows: Name of Song Kevin MacLeod (incompetech.com) Licensed under Creative Commons: By Attribution 3.0 License http://creativecommons.org/licenses/by/3.0/ Replace "Name of Song" with the actual name of the song, keep the rest of the quote in this format and include it in your "free music used" credits for your mission, and you're golden. Final note from me If you've found some other good tracks in Kevin's musical archives that could fit the tone of The Dark Mod and its setting and would like to include them in this list, please let me know and I'll update this post. Don't send me a personal message, just post your suggestion in this thread. Thank you ! I sincerely hope these lists will be of at least some use to mission builders. Good luck ! If you want to seek out non-MacLeod royalty-free music and public domain music, I've started a thread for that as well. Not too many download links yet, but it's meant to give you inspiration what sort of ambients or period music you could search for.
  11. If you can do this, I don't know how. But it's something I want as well and was actually going to raise it as a feature request. I think speakers are spherical so they model real sound which radiates from a source outwards. I find this doesn't work so well with some scenarios though: water. For example you want to hear the sound of waves lapping a shoreline or a running water sound for a stream, river or canal. If the shoreline or stream is on the longer side, you have to have a speaker with a huge radius to cover it and the sounds extends too far along perpendicular to the body of water. Or alternatively multiple speakers but then you have to manage overlap and it becomes a pain. wind. Same idea but vertical - if you have a long edge or balcony then you need a large radius speaker to cover it and it might extend too low so you hear wind noises on the ground. @Petike the Taffer If all you want is for a sound to fill a room, just use the location system ambients instead. But you can only have one sound I think, so you couldn't have say your ambient music and also a weather sound at the same time without using a speaker for one of them.
  12. Enjoyed it. Got lost a few times, but only because I couldn't remember where the last locked door was. (even though it's the only door that has a consistent guard next to it) The only real complaint - the music is way too loud. It's fitting, but too loud. I couldn't hear my own footsteps! Also, I have no idea how I'm supposed to yoink that other key (not that I needed it) off the guard sitting outside. He doesn't move at all, and he's got that brown eye pointed directly at me. Also, from lore perspective, how the hell did we climbed up the cliffs? No rope, no nothing. Maybe add some sort of grappling hook laying on the snow?
  13. I love the idea of a 15th Anniversay contest, but I think there should be fewer restrictions on what type of mission can be made so that more mappers would be encouraged to join. Fewer restrictions on what kind of mission can be made for the contest would hopefully open up more room for creativity, and maybe we'll even get some weird, unconventional missions that break the status quo. I, for one, don't really have a desire to do the "connections" theme again. It was fun doing it last time, but if I were to participate in a new contest I'd like to do something different. And holding a contest for the third "Official" campaign mission is an interesting idea, but if a contest like that is to be done, I think that should be its own dedicated contest not tied to an anniversary contest.
  14. Hey its been some time, I just wanted to make you guys aware, that i have been secretly at work, on the side, on a total remake of the systems from delightfyl. I post a few videos below, the new systems are really really powerful and stable! No idea what i will do with this yet... The effort to make a full game is really expensive and i am distracted and creatively bankrupt. Without outside help i will never make a game like this evermore.
  15. Fm idea (braindump)

    "Experience the life of a mission builder"

    Esentially there are finnished elements placed somewhere in storage in the game and you have to place them in the correct places, build some walls here and there, add guard routes, give them their correct speech lines, etc. Decorate the places.. all in-game. lots of fun.. 😉

    If you do it right in the end you can play the mission.

    (would be even cooler if a thief-ai could play the mission, making it some kind of tower-defence game)

     

    This first started as an idea for an aquarium builder mission where-in you have to fill an empty aquarium with sand, waterplants, castles water and swimming fish. But above idea is more fun.

     

    1. Show previous comments  1 more
    2. datiswous

      datiswous

      Excellent idea!

    3. jaxa

      jaxa

      It'd take some kind of genius scripting to make this, right?

    4. datiswous

      datiswous

      I thought about using:

      Quote
      • location Object in location brush (using info_tdm_objective_location brush)
      A particular item must be in a particular location, defined by an info_tdm_objective_location brush. For optimization reasons, the entity or entities to be checked must also have this spawnarg: "objective_ent" set to "1". NOTE: Multiple objects in a single location are not counted up for this component, this is a single-shot objective. If you want the player to put more than one object in a location, you must currently create several of these components, specifying by name, and AND them together in the objective logic.

      https://wiki.thedarkmod.com/index.php?title=Objectives#Non-AI_Components

      It's probably not literally creating the whole mission, but more finishing it by adding doors, furniture, lights, ai, build (some) walls by stacking stones. You could have fake leaks that you have to repair.

      This might just interest a whole new group of gamers. 😉

  16. @snatcher I understand that when you feel your work doesn't live up to your goals that you don't want it out in the wild advertising your own perceived shortcomings but that leads to a troubling dilemma of authors who are never satisfied with their work offering fleeting access to their in-progress designs then rescinding them or allowing them to be lost. When I was a member of Doom3world forums, I would often see members do interesting experiments and sometimes that work would languish until someone new would examine it and pickup the torch. This seemed like a perfectly viable system until Doom3world was killed by spambots and countless projects and conceptual works were lost. I guess what I am trying to say is that mods don't need to be perfect to be valuable. If they contain some grain of a useable feature they might be adapted by mission authors in custom scenarios. They might offer instructive details that others trying to achieve the same results can examine. It would be great if known compelling works were kept somewhere safe other than via forum attachments and temporary file sharing sites. I suppose we used to collect such things in our internal SVN for safe keeping but even that isn't always viable. If folks would rather not post beta or incomplete mods to TDM's Moddb page, perhaps they would consider creating their own Moddb page or allow them to be added to my page for safe keeping. Please don't look at this as some sort of pressure campaign or anything. I fully understand anyone not willing to put their name next to something they aren't fully happy with. As a general proviso, ( if possible \ permitted ) I just want to prevent the loss of some valuable investigations and formative works. The end of Doom3world was a digital apocalypse similar to the death of photobucket. It is one of my greatest fears that TDM will become a digital memory with only the skeletons of old forum threads at the wayback archive site.
  17. Congrats on the release! Remember to check ThiefGuild as well as the DarkFate forums (via Google Translate) for additional feedback.
  18. Complaint From Players The player must pick up candles before extinguishing them, and then the player must remember to drop the candle. The player must drag a body before shouldering it (picking it up), and the player must remember to frob again to stop dragging the body. The player finds this annoying or easy to make mistakes. For players who ghost, some of them have the goal of returning objects back to their original positions. With the current "pick up, use item, and drop" system, the item might not return easily or at all to its original position. For example, a candlestick might bounce off its holder. (See player quotes at the bottom.) Bug Tracker https://bugs.thedarkmod.com/view.php?id=6316 Problems to Solve How can the "pick up" step be eliminated so that the player can directly use or interact with the item where it is in the game world? How can so much key pressing and mouse clicking be eliminated when the player wants to directly use an item? How can candles be extinguished and lanterns toggled off/on without first picking them up? How can bodies be shouldered without first dragging them? Solution Design Goals Make TDM easier for new players while also improving it for longtime players. Reduce tedious steps for common frob interactions. Make it intuitive so that menu settings are unnecessary. Do not introduce bugs or break the game. Terms frob -- the frob button action happens instantly. hold frob -- the frob button is held for 200ms before the action happens. (This can be changed via cvar: 200ms by default.) Proposed Solution Note: Some issues have been struckthrough to show changes since the patch has been updated. Change how frobbing works for bodies, candles, and lanterns. For bodies: Frob to shoulder (pick up) a body. Second frob to drop shouldered body, while allowing frob on doors, switches, etc. Hold frob (key down) to start drag, continue to hold frob (key down) to drag body, and then release frob (key up) to stop dragging body. Also, a body can be dragged immediately by holding frob and moving the mouse. For candles/lanterns: Frob to extinguish candles and toggle off/on lanterns. Hold frob to pick it up, and then frob again to drop. Frob to pick it up, and then frob again to drop. Hold frob to extinguish candles and toggle off/on lanterns. For food: Frob to pick it up, and then frob again to drop. Hold frob to eat food. For other items: No change. New cvar "tdm_frobhold_delay", default:"200" The frob hold delay (in ms) before drag or extinguish. Set to 0 for TDM v2.11 (and prior) behavior. Solution Benefits Bodies: New players will have less to learn to get started moving knocked out guards. With TDM v2.11 and earlier, some players have played several missions before realizing that they could shoulder a body instead of dragging it long distances. Frob to shoulder body matches Thief, so longtime Thief players will find it familiar. Second frob drops a shouldered body. Players still have the ability to both shoulder and drag bodies. Compatible with the new auto-search bodies feature. Dragging feels more natural -- just grab, hold, and drop with a single button press. There is no longer the need to press the button twice. Also, it's no longer possible to walk away from a body while unintentionally dragging it. Set "tdm_frobhold_delay" cvar to delay of 0 to restore TDM v2.11 (and prior) behavior. Candles: New players will have less to learn to get started extinguishing candles. With TDM v2.11 and earlier, some players didn't know they could extinguish candles by picking them up and using them. Instead, they resorted to throwing them to extinguish them or hiding them. Hold frob to extinguish a candle feels like "pinching" it out. Once a candle is picked up, players still have the ability to manipulate and use them the same way they are used to in TDM v2.11 and earlier. For players who ghost and have the goal of putting objects back to their original positions, they'll have an easier time and not have to deal with candles popping off their holders when trying to place them back carefully. Set "tdm_frobhold_delay" cvar to delay of 0 to restore TDM v2.11 (and prior) behavior. Solution Issues Bodies: Frob does not drop a shouldered body, so that might be unexpected for new players. This is also different than Thief where a second frob will drop a body. "Use Inv. Item" or "Drop Inv. Item" drops the body. This is the same as TDM v2.11 and earlier. This is the price to pay for being able to frob (open/close) doors while shouldering a body. Patch was updated to drop body on second frob, while allowing frob on doors, switches, etc. Candles: Picking up a candle or lantern requires a slight delay, because the player must hold the frob button. The player might unintentionally extinguish a candle while moving it if they hold down frob. The player will need to learn that holding frob will extinguish the candle. The player can change the delay period via the "tdm_frobhold_delay" cvar. Also, when the cvar is set to a delay of 0, the behavior matches TDM v2.11 and earlier, meaning the player would have to first "Frob/Interact" to pick up the candle and then press "Use Inv. Item" to extinguish it. Some players might unintentionally extinguish a candle when they are trying to move it or pick it up. They need to make sure to hold frob to initiate moving the candle. When a candle is unlit, it will highlight but do nothing on frob. That might confuse players. However, the player will likely learn after extinguishing several candles that an unlit candle still highlights. It makes sense that an already-extinguished candle cannot be extinguished on frob. The official "Training Mission" might need to have its instructions updated to correctly guide the player through candle manipulation training. Updating the training mission to include the hold frob to extinguish would probably be helpful. Similar Solutions In Fallout 4, frob uses an item and long-press frob picks it up. Goldwell's mission, "Accountant 2: New In Town", has candles that extinguish on frob without the need of picking them up first. Snatcher's TDM Modpack includes a "Blow / Ignite" item that allows the player to blow out candles Wesp5's Unofficial Patch provides a way to directly extinguish movable candles by frobbing. Demonstration Videos Note: The last two videos don't quite demonstrate the latest patch anymore. But the gist is the same. This feature proposal is best experienced in game, but some demonstration videos are better than nothing. The following videos show either a clear improvement or that the player is not slowed down with the change in controls. For example, "long-press" sounds long, but it really isn't. Video: Body Shouldering and Dragging The purpose of this video is to show that frob to shoulder a body is fast and long-press frob to drag a body is fast enough and accurate. Video: Long-Press Frob to Pick Up Candle The purpose of this video is to show how the long-press frob to pick up a candle isn't really much slower than regular frob. Video: Frob to Extinguish The purpose of this video -- if a bit contrived -- is to show the efficiency and precision of this proposed feature. The task in the video was for the player to as quickly and accurately as possible extinguish candles and put them back in their original positions. On the left, TDM v2.11 is shown. The player has to highlight each candle, press "Frob/Interact" to pick up, press "Use Inv. Item" to extinguish, make sure the candle is back in place, and finally press "Frob/Interact" to drop the candle. The result shows mistakes and candles getting misplaced. On the right, the proposed feature is shown. The player frobs to extinguish the candles. The result shows no mistakes and candles are kept in their original positions. Special Thanks @Wellingtoncrab was instrumental in improving this feature during its early stages. We had many discussions covering varying scenarios, pros, and cons, and how it would affect the gameplay and player experience. Originally, I had a completely different solution that added a special "use modifier" keybinding. He suggested the frob to use and long-press frob to pick up mechanics. I coded it up, gave it a try, and found it to be too good. Without his feedback and patience, this feature wouldn't be as good as it is. Thank you, @Wellingtoncrab! And, of note, @Wellingtoncrab hasn't been able to try it in game yet, because I'm using Linux and can't compile a Windows build for him. So, if this feature isn't good, that's my fault. Code Patch I'll post the code patch in another post below this one so that folks who compile TDM themselves can give this proposal a try in game. And, if you do, I look forward to your feedback! Player Complaints TTLG (2023-01-10) Player 1: TDM Forums (2021-03-13) Player 2: Player 3: TDM Forums (2023-06-17) Player 4: TDM Discord (2021-05-18) Player 5: TDM Discord (2023-02-14) Player 6: Player 7: Player 8:
  19. Just curious, based on this discussion: http://forums.thedarkmod.com/topic/19239-soft-r-gamma/?p=427350
  20. Last night we chatted on Discord about Vulkan support and PBR, bringing up a system for adding proper reflections once more. I suggested screenspace reflections but it was argued reflection probes would still be better than SSR in our case, a ticket for that is already open but I'm uncertain whether it's the best way: A manual approach would need new entities to be placed by the mapper... this requires extra effort and would exclude old FM's that are no longer updated, while the result will also be inaccurate and static meaning you won't see an AI reflected as they walk on a shiny metal plate for instance. If PBR with realistic graphics can be a hope for 2.12 or later, we'll definitely want to do it right rather than using a limited / limiting system. A technique came to mind that might just work for our engine and setup. I wanted to share it here before I forget the specifics; This might already be a common practice and even have a definition, for the purpose of this thread I'll just describe it as I originally imagined it and feel this would work for our engine. The idea is we'd use reflection probes but in an automated fashion: A probe is automatically spawned in every valid area (within bounds) in the player's view, at a given grid unit size. For example: If the grid scale is 16, a probe may exist at position '0 -48 16' another at ''0 -48 32' and so on. Every point projects its result on all surfaces in its radius which contain a specular channel masking it, the best alternative presently available till we were to convert all textures for PBR support. The cool thing is the same cubemap can also be projected as a light source, allow for global illumination in addition to just reflections! This would be similar to how the Irradiance Volume works in Blender / Eevee except each dot renders a little cubemap from its perspective. I already know what everyone is rightfully thinking: This is going to kill performance! After all each probe needs to produce a render from its perspective, and being a 360* panorama it will open portals in all directions. Normally that would be insane, but I thought of various ways in which the impact could be greatly minimized to very bearable amounts. The frame buffer of each probe will be at a very small resolution by default since much detail shouldn't be needed. Even 64x64 per cube face might do. Each probe only needs a draw distance double its grid size, given it only has to see as much as is necessary to fill the gaps between it and its neighbors. So if the grid size is set to 64, each probe would only have a draw distance of 128 to cover the space in between its neighbors, nothing beyond that would exist to it. Only probes the player can see would ever be spawned and calculated; If the view frustum doesn't overlap the virtual cube who's corners touch that probe's neighbors, the probe is dropped from memory. Probes are also only spawned in a valid visible space, never out of bounds including rooms culled by portals. A draw distance after which probes are removed or not spawned can also be included. This would further help by making any probe further than X distance be ignored, slowly fading away as to not noticeably pop in and out of existence. Reflections / GI are a discrete effect you'll only see up close. Similar to lights and shadows, the result of a probe should be cached and not calculated unless necessary. This means that unless something moves within radius of that probe its cubemap won't be rendered again. Probes would only be updated either when they first come into the player's view, or if something touching their cube has moved. Note that particles and lights with animated textures would have to count as you may see them in a detailed reflection, candles and torches would force constant updates per-frame for probes they intersect. If with all that performance is still affected, frame skipping is also a solution: Reflection probes can update at a lower frame rate to further decrease their impact. If you have a 60 Hz monitor and are running TDM at 60 FPS max, reflections could run at 30 / 20 / 10 FPS without looking out of place. They could in fact be defined as a fraction of your average framerate, so for the FPS you get you can decide whether it's going to be 1/2 or 1/4 or so on of that... this would have the added advantage of exponentially gaining back FPS the lower your FPS goes. There are several reasons why I believe this would be better than mappers manually placing new probe entities: Extra work is required for the mapper, who needs to figure out how to cover each area in probe lights. Every piece of the map would need to be encompassed in a reflection / GI probe otherwise you won't get shiny surfaces or bounce lighting which will look out of place. Most existing FM's will never be updated to use this: Only maps created or updated after the feature is introduced would benefit, anyone playing old missions will get boring visuals without reflections / GI which will be inconsistent to new ones. I strongly believe this should be done as an universal effect like SSAO. Single large probes will produce inaccurate results; The larger a cubemap is, the more drift and a fake results you get with distance from its center. This can be mitigated by using parallax corrected cubemaps which should be used for automated cubemaps too... none the less you get a single point of vision for a large room which makes the result inaccurate the further you go... with an automated approach you could have many probes in a dense grid (if your hardware allows it) for a much more accurate result at any position and angle. What are your thoughts on this solution, do you think it's realistic and can work out? I do believe it should be either this or screenspace reflections the way they're done in Godot or Blender / Eevee. If SSR isn't the right choice for our engine, reflections and global illumination alike could be captured using a global grid of capture points shining within their respective areas.
  21. Ever since I worked on "Chalice of Kings" with Bikerdude, I have wanted to get flame particles with new particle glares into the core mod. My reasoning was that the candles have glares and the un-glared torches look mismatched. This proposal was met with mixed reactions, so (knowing the history of TDM feature proposals...) I have created a technical demo. You may download it here: zzz_flameglare.pk4.txt (fixed) Just rename without the .txt extension at the end and place it in your Darkmod directory. Here are some screens. Using particles for this is probably the wrong way to go now that Duzenko has an emissive light feature in his branch: http://forums.thedarkmod.com/topic/19659-feature-request-emissive-materialsvolumetric-lights/
  22. I think it's a good idea if done that way - a new light asset that mappers can use. Seems to lend itself especially well to streetlamps. Could be fun to use. I might try to make one using stims, just for schitzengiggles.
  23. "...to a robber whose soul is in his profession, there is a lure about a very old and feeble man who pays for his few necessities with Spanish gold." Good day, TDM community! I'm Ansome, a long-time forums lurker, and I'm here to recruit beta testers for my first FM: "The Terrible Old Man", based on H.P. Lovecraft's short story of the same name. This is a short (30-45 minute), story-driven FM with plenty of readables and a gloomy atmosphere. Do keep in mind that this is a more linear FM than you may be used to as it was deemed necessary for the purposes of the story's pacing. Regardless, the player does still have a degree of freedom in tackling challenges in the latter half of the FM. If this sounds interesting to you, please head over to the beta testing thread I will be posting shortly. Thank you!
  24. That's why last night I went with the idea of making new lamps with this mechanic: They should have transparent clear glass casing and show the light bulb inside, making it obvious they're different and can be shot. Something like this should make them easy to distinguish: Indeed I run into the painting problem myself: I always check every painting to see if it highlights and can be looted. Then again it's the same with doors in some FM's, which don't use a special door handle to make it clear that's a decorative door and not one you can go through.
×
×
  • Create New...