Jump to content
The Dark Mod Forums

Search the Community

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

  • 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. Hint: I checked the objectives. It is possible to not read the note and also not see the body, in which case you wouldn't know she needed reviving and then you would not be able to complete the mission. I will release an update to fix that. Since you did find her though, I don't know why you didn't get an objective to revive her. I'm not able to reproduce that bug. Finding the note is set as optional, so missing that alone wont cause a fail.
  2. Inn Business It's business, at an inn, over three nights. Development screenshots: Download: https://drive.google...dit?usp=sharing Update 1.48 uploaded March 8th, 2014, one change: patches key rarely not being frobable in one of its possible spots Big thanks to my beta testers: Airship Ballet, Kyyrma and AluminumHaste! Development supporters of note: Sotha, Springheel and Obsttorte. Also thanks Sotha, for urinating in my mission. ;-) And thanks Kyyrma for the title screen! My appreciation to all forum/wiki contributors, without whom, this wouldn't exist. Thanks to positive commenters on my previous mission too, extra motivation helps! :-) Note this uses campaign features, what you use the first night, impacts subsequent nights. And to quote a tester, "...the level is maybe best experienced in more than one sitting". If you do pause between nights, please be sure to save, you can't begin partway through effectively. (If you accidentally start a night you already completed, just fail the kill objective to switch to another night.) If your frame rates are too low facing the cemetery, please reduce your "Object Details LOD" setting. It was designed with "AI Vision" set to "Forgiving", to be able to sneak through with minimal reactions, if you want more/less, adjust your settings accordingly. There are several random, conditional aspects, and ways of going about things, so others might have slightly different experiences. Post here if you discover hidden objectives for extra points! My condolences to loot completionists, I made a bit on the third night hard, you've got your challenge cut out for you! Speaking of which, there's a TDM bug that mission complete totals too high, here are the real amounts per night: 2026/970/202. Oh, there is something that in the U.S. would be rated PG, in case you play with kids in earshot. I hope you enjoy playing it, feel free to let me know you did, and I'm glad to respond to inquiries (like how stuff was done, nothing was scripted). (Note which night you are referring to if it's something specific.) (Please remember spoiler tags to not expose things meant to be discovered by playing.) Like so: [spoiler]secrets[/spoiler] Developed for TDM 2.01. PS: Thiefette, good news, no spiders! Springheel, if you find an optional objective you can skip...you might find it immersion breaking. Others, no undead! There are a couple other interactive critters though. :-) Edit note: Some posts below were from users of an unreleased version of TDM 2.02 which broke several things, they do not reflect regular game-play.
  3. I'd like to announce the release of my 2nd fan mission: In Plain Sight. "You are an intelligence officer tasked with revealing the source of a political uprising in the city of Watchgate" Mission Type: City Missions Credits: @Frost_Salamander: Author @Airship Ballet: All custom content, including signs, loading/menu screens, in-game map, menu music and creative input. Also sets the standard for beta testing. W10 (my son) and @Frost_Salamander: Mission briefing Beta Testers: @AluminumHaste @nbohr1more @Obsttorte @Mawerick @madtaffer @wesp5 @Airship Ballet @Acolytesix @Cambridge Spy @jaxa @prjames Notes: TDM 2.10 required This FM rewards stealth play, although it can be done without KO'ing anyone Read the readables! They trigger some mandatory objectives that aren't initially visible. Follow this and you shouldn't have a problem figuring out what to do next. There are multiple ways to access some parts of the city. Some are riskier than others! If you are finding it too hard, maybe there is an easier way The only differences between the difficulty levels are the (optional) loot objective, the availability of some player tools and the difficulty of the bank objective. There is an in-game map. It's found in a location near the start. This FM contains 5 secrets (hints below for anyone who's given up ) Secret hints: Secret spoilers (did you mean to look the hints above instead?): Download link until the mission database gets updated: https://github.com/FrostSalamander/tdm-fm-inplainsight/releases/download/v1.4/inplainsight_v1.4.pk4 Screenshots: https://www.flickr.com/photos/196169449@N05/albums/72177720301116716 NOTE: Some of the initial versions have bugs. Ensure you have the latest version (currently 1.4)
  4. I though something similar and suggested adding objectives to the Training Mission. That would help introduce some linearity into the mission and also suggest tasks to players, where the objectives are listed in order of increasing level of difficulty.
  5. This post differentiates between "gratis" ("at no monetary cost") and "libre" ("with little or no restriction") per https://en.wikipedia.org/wiki/Gratis_versus_libre * A libre version of TDM could: ** Qualify TDM for an article on the LibreGameWiki *** TDM is currently listed as rejected https://libregamewiki.org/Libregamewiki:Rejected_games_list because "Media is non-commercial (under CC-BY-NC-SA 3.0). The engine is free though (modified Doom 3) (2013-10-19)" ** Qualify for software repositories like Debian *** TDM is currently listed as unsuitable https://wiki.debian.org/Games/Unsuitable#The_Dark_Mod because 1) "The gamedata is very large (2.3 GB)", and 2) "The license of the gamedata (otherwise it must go into non-free with the engine into contrib)" and links to https://svn.thedarkmod.com/publicsvn/darkmod_src/trunk/LICENSE.txt Questions: 1) tdm_installer.linux64 is 4.2 MB (unzipped), which is far from the 2.3 GB which is said to be too large. Yes, the user can use it to download data that is non-libre, but so can any web browser too. If the installer itself is completely libre, does anyone know the reason why it cannot be accepted into the Debian repository? 2) If adding the installer to the repository is not a viable solution, would it be possible to package the engine with a small and beginner friendly mission built only from libre media/gamedata into a "TDM-libre" release, and add user friendly functionality to download the 2.3 GB media/gamedata using "TDM-libre" (similar to mission downloading)? 3) Would such a "TDM-libre" release be acceptable for the Debian repository? 4) Would such a "TDM-libre" release be acceptable for LibreGameWiki? 5) Would the work be worth it? * Pros: Exposure in channels covering libre software (e.g. the LibreGameWiki). Distribution in channels allowing only libre software (e.g. the Debian repository). * Cons: The work required for the modifictions and release of "TDM-libre". Possible maintenance of "TDM-libre". I'm thinking that the wider reach may attract more volunteers to work on TDM, which may eventually make up for this work and hopefully be net positive. 6) Are there any TDM missions that are libre already today? If not, would anyone be willing to work on one to fulfill this? I'll contribute in any way I can. 7) I found the following related topics on the forum: * https://forums.thedarkmod.com/index.php?/topic/16226-graphical-installers-for-tdm/ (installing only the updater) * https://forums.thedarkmod.com/index.php?/topic/16640-problems-i-had-with-tdm-installation-on-linux-w-solutions/ (problems with installation on Linux) * https://forums.thedarkmod.com/index.php?/topic/17743-building-tdm-on-debian-8-steamos-tdm-203/ (Building TDM on Debian 8 / SteamOS) * https://forums.thedarkmod.com/index.php?/topic/18592-debian-packaging/ (Dark Radiant) ... but if there are other related previous discussions, I'd appreciate any links to them. Any thoughts or comments?
  6. I was thinking of trying something different for the loot objective in a mission I'm making. I don't really mind the traditional way, but sometimes it can get the player stuck, and I don't like having to think about a percentage of loot that seems fair (which, I think, depends highly on the mission's layout). But I'm not sure how to go about this. My first thought was that I could make it optional, and show up in the list of objectives as something like (Optional) Get any loot you can find. I tried having it that way for a while and, personally, I think it's fine (except the objective logic doesn't work as I want it to; but that aside). I'm not sure what makes loot fun. But I'm sure we all get some loot, even if it's entirely optional. I'd love to hear some thoughts on this, or even, if anyone has tried different things, I'd love to hear about it.
  7. Okay... so... I'll be honest. The verticality of the first mission blew my mind, made me really pay attention, explore. But the verticality of this mission made me frustrated. It didn't help that I kept stumbling upon things, without context. Moreover, some areas didn't have anything, but were traversable, while others had a plenty and required not a clear and direct path but some convoluted route that wasn't obvious to me. And the size of the level... It took me 4 and a half hours to search every nook and cranny, find and complete all objectives and discover the loot. But that time was split between two days, because I could only play before work, and I experienced CTD whenever I'd draw a bow inside the manor. So by the end I ran around like a headless chicken, trying to remember where I've left this NPC and where is that NPC and where the safe is... Now... some things really gave me a pause. For example, the direction of our poor LT's life XD Or the fact that we had such a horrible person working for our Target. But I really liked the story here. All the twists, the clues (that little thing in the cabinet damn), I liked using Thief's Highway... but man was I lost there. I would like to know... how was I supposed to find the Barrel? I had no real reason to actually head there aside from "I see a window open". But since I was thorough, I found the Barrel there before the readable mentioning it in the same place. Was there a hint pointing me there to begin with? (Did I miss it, like the combination to the safe the first time?) Also - the Safehouse dude was freaking me out.
  8. It's quite impressive for a first mission, especially the placement of the guards and their routes. The mission didn't end when I got back to the boat. I suppose because I didn't read the very first message that gives an objective, I only read it at the very end when coming back. All my visible objectives are finished. Version 2.12 A few notes: The stone gate is a silly concept. A bit more objects would have been better next to the forest path. The edges of the map wouldn't be visible that way. I mean in the background, a bit further from the path.
  9. I'm happy to present my first FM, The Spider and the Finch. There may be a spider, but no ghosts or undead. It should run a couple hours. It's now available on the Missions page or the in-game downloader. Many thanks to the beta testers Acolytesix, Cambridge Spy, datiswous, madtaffer, Shadow, and wesp5 for helping me improve and making the mission to the best of my abilities. This would not be have been possible without Fidcal's excellent DarkRadiant tutorial. Thanks also to the many people who answered my questions in the TDM forums. Cheers! 2023-12-13 Mission updated to version 3. Fixed a bug where the optional loot option objective was not actually optional. Updated the animations for Astrid Added a hallway door so the guards are less likely to be aggroed en masse.
  10. Merry's Magnificent Mapping Co. Delivers Again! Chase Mercantile Screenshots Title: Chase Mercantile Theme: Bank Release: 2015/02/04 Mapper: Airship Ballet Special thanks: Nobiax for the custom loot models and textures, Melan for his textures and Xarg, Kyyrma, Oldjim, Phi, Melan, Cookie and Bikerdude for beta testing the map for me! Vault and courtyard ambiences made by me using this and this respectively. Build Time: 1 month and 13 days. Well, here it is! We're about 2/5 through the campaign provided I don't decide to extend it. While going back to change things with La Banque I was really enthused to see how much better I am at mapping already, so hopefully you will be too! This is the same deal as La Banque but bigger and better. It's physically about twice the size and a fair bit more complex with regards to objectives and the like. As a result, you get a ton of notes if you buy a lot of things! Having the notes in your inventory is integral to the system itself working, so hopefully you won't mind reading then discarding a bunch of pieces of paper. I've got plans for a somewhat cooler way to introduce the notes to the player, but you're stuck without for now. This is, of course, bundled with La Banque so all that gold means something now! It'll be on the mission downloader as Chase Mercantile so delete La Banque from your FMs folder because it's obsolete. I tweaked the former mission somewhat, spawning some new guards on expert and implementing a 500G/1000G KO/Kill penalty to your loot total across all difficulties. I also wrote a new briefing that hopefully doesn't show how bad I am at English anymore. It was only ever intended as a tutorial, however, so don't expect crazy difficulty there. There's tons of loot to be had, but even more if you're sneakier about it! The same goes for Chase, albeit far moreso: expert difficulty has pretty much 100% guard coverage, so good luck with that. Erm, what else... oh! I recorded the building process, so if you're curious or just fancy zoning out to some timelapses, you can see the map's construction from start to almost-finished here, although hold off until you're done to avoid spoilers. Note - Noclipping around like a mook will skip triggers that change things based on what you bought. It will completely negate the system in some cases and often brick your playthrough. Don't do it unless you've no desire to be able to finish! - As the note you start with says, you can bag up the loose loot in the vault into bags. Dropping these out of the starting window in the basement or at the alternate loot drop (if you buy it) will net you 3000 per bag, which translates directly into 3 gold for the next mission's asset shop. - Knocking people out will cost you 500 gold on Expert, and killing them will dock you 1000 on Medium and Expert. - Optional objectives will pay you gold immediately on completion. - It is impossible to acquire all of the loot in the map: there are variants of some that get swapped around depending on what you buy. Don't sweat it: there's tons anyway! Cheats Come to the thread because you can't find something? Look no further you casual! Obviously don't expand spoilers if you don't want spoilers. Where are the vault keys? How do I get into Chase's vault? How do I turn off the steam? What about the electrified gate? ...and the gas? Where is the sword? Where is the necklace? Where are the client records? Where are the financial records? Where's Turk Malloy? Look, you made a system I despise. The least you can do is tell me what to buy. Download links The Campaign Available on the in-game mission downloader as "Quinn Co." The Single Mission chase.pk4
  11. Yes. Sure, I will change it, but I do mind. In addition to changing the forum title, I have also had the name of the pk4 changed in the mission downloader and the thiefguild.com site’s named changed. It's not just some "joke". The forum post and thread are intended to be a natural extension of the mission’s story, a concept that is already SUPER derivative of almost any haunted media story or most vaguely creepy things written on the internet in the past 10 or 15 years. Given your familiarity with myhouse.wad, you also can clearly engage with something like that on some conceptual level. Just not here on our forums? We can host several unhinged racist tirades in the off-topic section but can’t handle creepypasta without including an advisory the monsters aren’t actually under the bed? (Are they though?) I am also trying to keep an open mind, but I am not really feeling your implication that using a missing person as a framing of a work of fiction is somehow disrespectful to people who are actually gone. I have no idea as even a mediocre creative person what to say to that or why I need to be responsible for making sure nobody potentially believes some creative work I am involved in, or how that is even achievable in the first place. Anyway, apologies for the bummer. That part wasn’t intentional. I am still here. I will also clarify that while I love the game, I never got the biggest house in animal crossing either. In the end Tom Nook took even my last shiny coin.
  12. The Thief2 FM "Mission X" was structured like that. But from the perspective of someone making or using a multiplayer system, it should be as general as possible so mappers can make whatever set-up they want for their FM, like that, or leave it open to the players to play it however they want. I think one way for the system to work most basically is have a coop mode (shared objectives, loot, scripts, etc.) and a "thieves vs. guards" mode (separate objectives, tracking loot count & capture count; it should probably be set up like the old Thievery mod) and those are pre-made so a mapper can just turn one on and tweak some things. Those are the two most popular MP cases for this game. But then if they want to, mappers could micromanage the parameters if they want to make their own mode, and the system should facilitate that. That was my thinking. But I think coop is the big one for us, since all of the FMs will already be set up for that, and that's the way I imagine it'd be most used. So that should come first.
  13. Interesting. I didn't know about Doom 3 co-op (I don't know why). Instead of all being in the same place inside the mission, missions could be designed around locations (in the same map). So you play each your own part, but objectives are shared. So you play different mission objectives around the same global objective. It means also that a player could find a clue when reading a book but another player has to do that objective. So for example: Shared mission objectives: Find the ring of Thruth (Church section) - Player A Find information about hidden loot (Thief hideout) - Player B Search for a clue about the hidden passage in the Church (library section) - Player C So when Player C finds the info in the library section, Player A can find that hidden passage in the church section.
  14. I've seen fun workarounds like that in other game modding as well. Years ago, maybe even a decade, some fella who was making a mod for Mount & Blade over at the Taleworlds forums revealed that he put invisible human NPCs on the backs of regular horse NPCs, then put the horse NPCs inside a horse corral he built for one of his mod's locations/scenes and then did some minor scripting, so the horses with invisible riders would wander around the corral. The end result was that it looked they're doing this of their own will, rather than an NPC rider being scripted to ride around the corral slowly. Necessity is the mother of invention. I don't know about the newest Mount & Blade game, but the first generation ones (2008-2022) apparently had some sort of hardcoded issue back in the earlier years, where if you left a horse NPC without a rider in its saddle, the horses would just stand around and wait and you couldn't get them to move around. Placing an invisible rider in their saddles suddenly made it viable again, at least for background scenes, of riderless horses wandering around, for added atmosphere. First generation M&B presumed you'd mostly be seeing horses in movement with riders, and the only horses-wandering-loosely animations and scripting were done for situations when the rider was knocked off their horse or dismounted in the middle of a battle. Hence the really odd workarounds. So, an invisible NPC trick might not be out of the question in TDM, even though you could probably still bump into it, despite its invisibility.
  15. Here's my first FM. A small and easy mission, inspired by Thief's Den and The Bakery Job, where you must find and steal a cook's recipe book in order to save a friend from going out of business. Download: Mediafire (sk_cooks.pk4) TDM Website's Mission Page The in-game mission downloader Thanks to: The people who helped me get this far, both in the forums and on Discord. The beta testers: MirceaKitsune, Mat99, Baal, wesp5, Cambridge Spy, jaxa, grodenglaive, Acolytesix ( Per the author in the beta testing thread. ) Skaruts has given permission to the TDM Team to add Subtitles or Localization Strings to this mission. (No EFX Reverb.) If anyone from the Community or TDM team wishes to create these we will gladly test them and update the mission database.
  16. Yes please: I've wanted something like this for a long time! One thing that always makes me sad in TDM is when a mission just... abruptly ends: Obviously every FM has an ending, but I never liked just transitioning to a stats screen as if nothing you did in the world mattered. I'd absolutely love a debriefing GUI just like the briefing one, where you can either have text or an image slideshow with music and voice-over which would be even better! Maybe some old FM's can be updated to use this too, I'd totally replay them just for that. One additional idea: Since FM's with multiple endings are something I always wished for and would love to do myself, support for multiple debriefing GUI's would be ideal, so the kinds of objectives you completed can execute a different one or skip / add certain passages. Absolutely hope the team can consider this, should be just a GUI execution hook to implement it so why not
  17. Welcome to the Snatcher's Workshop. Come on in, we may have something for you today. Feel free to look around. We trade everything here. --------------------------------------------------------------------------- We realize new ideas and take existing ideas for a spin. For fun. Somewhere in this post you will find a download with mods. Good care was put to make all mods as little intrusive as possible to make them compatible with as many missions as possible. This set of mods will never break your game but some features won't be available in a handful of missions (the reasons are known). Feel free to report here what works and what doesn't. TDM Modpack vs. Unofficial Patch The TDM Modpack and wesp5's Unofficial Patch are incompatible since both the Pack and the Patch use a similar approach to mods. With the release of recent versions of the TDM Modpack I consider the most relevant features of the Unofficial Patch have been matched, superseded, improved, or simply implemented in different ways. More importantly, the TDM Modpack is not only tightly packed and it has a minimal impact in your install but it achieves more by altering less core files, meaning more compatibility and less maintenance. One can, of course, argue. TDM Modpack v4.0 Compatible with The Dark Mod 2.12 ONLY A lightweight, stable, non-intrusive, mission-friendly Modpack for The Dark Mod that includes many enhancements and a new set of tools and abilities for our protagonist: peek through doors, blow and ignite candles, whistle to distract enemies, mark your location, an invisibility-speed combo and more. Mods included in the pack do not alter your game or any of the missions in any relevant way. The pack includes enhancements to the core game and additions that can be used in missions but at the same time respects the vision of the mission creators. It is up to you to make use of any of the new tools and abilities or not. Please note that sometimes authors include in their missions their own versions of core files and as a result, some mods are not available in some missions. All missions will play fine regardless. Release posts: v4 series: v4.0 v3 series: v3.8 | v3.6 | v3.5 | v3.4 | v3.3 | v3.2 | v3.0 v2 series: v2.8 | v2.7 | v2.6 | v2.5 | v2.4 | v2.2 | v2.0 v1 series: v1.8 | v1.6 | v1.4 | v1.2 | v1.0 What's included in the pack? -:- APP: GENERIC MOD ENABLER -:- Credits: JoneSoft License: Free for unlimited time for Home users and non-profit organizations. Description: A portable, freely distributable Mod enabler/disabler. This application is required to run mods safely and it is included in the pack. At the heart of the Modpack resides JSGME (JoneSoft Generic Mod Enabler), an application that allows players to enable and disable mods with one click. JSGME has been around for more than a decade and it is to be fully trusted. Refer to the install instructions section at the bottom for full details. -:- MOD: AUTO COMMANDS -:- By activating Auto Commands some key bindings will be set automatically. F1, F2, F3 and F4 keys are not used by the game and we are reserving them for mods: - F1: Cycle through the Skills category - F2: Cycle through the Tools category - F3: Switch between Loot and Stealth stats - F4: Direct shortcut to "Penumbra" None of these categories or shortcuts can be set to any hotkey in-game currently, so we are using the built-in autocommands.cfg file to set up the keys. It may be the case you already make use of the autocommands.cfg file to configure other things to your needs or liking therefore consider yourself warned. Enable Auto Commands if you plan on using Core Essentials and/or the Skill Upgrade. -:- MOD: CORE ESSENTIALS -:- A pack that includes a variety of mods from the best modders of TDM: ~ FAST DOORS Credits: Idea and programming by Obsttorte. Treatment by snatcher. Availability: All missions except Noble Affairs, Seeking Lady Leicester, Shadows of Northdale ACT II, Snowed Inn and a handful of lesser missions. Description: Being chased? In a rush? No problem: doors open and close faster when running. Topic: Slam doors open while running ~ QUIET DOORS Credits: An idea by SeriousToni (Sneak & Destroy mission). Mod by snatcher. Availability: All missions except Noble Affairs, Seeking Lady Leicester, Shadows of Northdale ACT II, Snowed Inn and a handful of lesser missions. Description: A vast number of doors play more subtle, sneaky sounds for a quieter, stealthier experience. This applies to doors that come with default sounds but only when manipulated by the player. Topic: Decrease volume of open/close door sounds triggered by player ~ LOOT ANIMATIONS Credits: Original idea by Goldwell (Noble Affairs mission). Programming by Obsttorte. Treatment by snatcher and wesp5. Availability: All missions except Noble Affairs, Seeking Lady Leicester, Shadows of Northdale ACT II, Snowed Inn and a handful of lesser missions. Description: Moves the loot towards the player before putting it in the inventory, underlining the impression of actually taking it. This mod comes with a subtle new loot sound that goes along nicely with the animation. ~ DYNAMIC LOOT INVENTORY Credits: snatcher. Availability: All missions except Noble Affairs, Seeking Lady Leicester, Shadows of Northdale ACT II, Snowed Inn and a handful of lesser missions. Description: When picking up loot this mod displays the loot info in the inventory and shortly after reverts back to the last non-loot item selected. ~ SMART CONTAINERS Credits: Obsttorte (source code updates), Dragofer (similar attempts), snatcher. Availability: All missions. Description: To facilitate looting, the bottom of many containers (chests, jewellery boxes, etc...) gets automatically disabled at the beginning of the mission and only the lid remains frobable. ~ STEALTH MONITOR Credits: kcghost, Dragofer, snatcher. Availability: All missions. Description: Display some stats (Suspicions / Searches / Sightings) and the Stealth Score during a mission. Bring up the "Loot" inventory icon and press "Use" or just press F3 repeatedly if using Auto Commands. ~ STEALTH ALERT Credits: snatcher. Availability: All missions. Description: Completing a mission without being seen is something that can be done with some practice and patience. This mod will play an alerting chime whenever you are seen so that you don't have to monitor the Stealth stats all the time. ~ BLINKING ITEMS Credits: snatcher. Availability: All missions. Requisites: Console command r_newFrob must be 0, which is the game default. Description: Items within frob distance that go into the inventory (plus static readables) emit a subtle blink. This pulse can help you identify some valuable items that otherwise are difficult to detect. Topic: New Frob Shader ~ SMART OBJECTS Credits: snatcher, Dragofer. Availability: All missions. Description: Sometimes it is difficult to tell if an object is being held or not. Three dots will be displayed on screen whenever you grab an object, unless the object has name, in which case the name of the object will be displayed. In addition, objects (except AI entities) do not make or propagate sounds on impact while being manipulated. Topics: No impact sounds while holding an object / Nameless objects... a missed opportunity ~ SHADOWMARK TOOL Credits: snatcher, Obsttorte. Availability: All missions. Description: Our protagonist's lucky deck! When the item is selected the player can drop and throw playing cards to mark a location. Cards can be retrieved. AI will not normally mind a single card lying around but cards can sometimes be noticed. Topic: Find more details in this post ~ ALT FOOTSTEPS ON WATER Credits: SeriousToni. Availability: All missions except Hazard Pay, Noble Affairs, Shadows of Northdale ACT I and ACT II, Snowed Inn, Volta 2: Cauldron and a handful of lesser missions. Description: Alternative sounds of footsteps on water for our protagonist (walk / run / land). Topic: New Footstep sounds ~ OTHER ADDITIONS Re-worked Inventory menu (more compact). Semi-transparent backgrounds for the in-game Inventory Grid and Objectives screen. Alternative high mantle sound for our protagonist. Revamped and extended "Mission Complete" audio theme. -:- MOD: SKILL UPGRADE -:- A new "Skills" category is added to the inventory on mission load and the category includes the below abilities: Did you know? When using Auto Commands you can press F1 to access the "Skills" category and F4 to quickly access "Penumbra"... ~ SKILL: OBSERVATION Credits: Dragofer, snatcher, wesp5 Availability: All missions. Description: When the "Peek Door" item is selected the player can peek through any regular door. Select the item in the inventory and "Use" it on a door. Topic: Peek through (almost) every door ~ SKILL: MANIPULATION Credits: Dragofer, wesp5, Obsttorte, snatcher. Availability: All missions. Description: When the "Blow / Ignite" item is selected the player can blow out and light up candles and oil lamps. Select the item in the inventory and "Use" it on small flame sources. Topic: Extinguish small lights with a blow ~ SKILL: COMBINATION Credits: OrbWeaver, MirceaKitsune, datiswous, wesp5, snatcher. Availability: All missions. Description: When the "Alchemy" item is selected the player can alter the properties of broadhead arrows by applying different reagents. Select the item in the inventory and "Use" it repeatedly to cycle through the different arrow types. Topic: Alchemy to alter arrow properties? Arrow types: Shadow arrow compound or "Darkdust": Widely believed to be a myth, little to nothing is known about anti-light matter. Where did our protagonist get his formula from? When this substance is subject to strain the particles implode and the residual component absorbs light until it dissipates completely. Flare arrow compound or "Starlight": A recipe based on luminescent mushrooms and other exotic herbs. The resulting powder produces, for limited time, a dim but steady blue-ish glow when mixed with the right reactive. A high concentration of the active mixture can cause a burning sensation to the eyes. ~ SKILL: DISTRACTION Credits: snatcher. Availability: All missions. Description: When the "Whistle" item is selected the player can whistle and draw the attention of nearby AI. The more you whistle, the more attention it draws. Select the item in the inventory and just "Use" it. Keep a safe distance. ~ SKILL: ALTERATION Credits: VanishedOne (speed potion), kingsal (invisibility potion), snatcher (alchemy). Availability: All missions. Description: When the "Penumbra" item is selected the player can avoid light sources and run faster than usual for limited time. Health consumed will gradually be restored. Penumbra doesn't muffle the noise you make and it doesn't work when in contact with water. Press F4 to quickly access this ability if using Auto Commands. THE PATH TO UMBRA: How to become one with the shadows -:- MOD: CLASSIC BLACKJACK -:- Credits: Obsttorte, snatcher. Availability: All missions except A House of Locked Secrets and By Any Other Name. Description: A straightforward approach to blackjacking with new rules and mechanics inspired by the original Thief games. Never miss a KO again! - No indicator required. "Classic Blackjack" rules: Some AI are KO-immune and cannot be KOed: * Undead, creatures... * Guards wearing heavy helmets (to respect TDM vision) * Other: set by mission authors for the plot, in example The rest of AI can be KOed, just aim for the head: * Civilians: Can always be knocked out from any direction * Combatants: Can always be knocked out (including when fleeing) from any direction except when in high alert state (normally in combat mode) As reference, you can find in the Wiki the set of rules of the non-modded TDM: https://wiki.thedarkmod.com/index.php?title=The_Dark_Mod_Gameplay#Blackjacking -:- MOD: FLASH GRENADE -:- Credits: snatcher, kingsal. Availability: All missions except Hazard Pay and Moongate Ruckus. Description: Flashbombs are clumsy and loud but as effective as ever. Instead of throwing Flashbombs like a cannonball we now toss them. Instead of exploding on impact Flashbombs now have a fuse. The chances of blinding have been greatly increased. -:- MOD: HUNTER BOW -:- Credits: snatcher. Availability: Most missions (a few missions do things differently but you should never notice). Description: Nock and draw arrows at a faster rate. Extended radius of gas arrow effect. Chance to retrieve rope arrows when missing a shot. -:- MOD: SHOCK MINE -:- Credits: wesp5, snatcher. Availability: All missions. Description: This mod replaces the Flashmines with customized, "High Voltage" electric mines. Remember: mines can be disarmed with the lockpicks! -:- MOD: SIMPLE SUBTITLES -:- Credits: Geep, stgatilov, snatcher. Availability: All missions. Description: A minimalist, imperfect approach to subtitles (you can set the scope of the subs in the audio settings). Topics: Subtitles - Possibilities Beyond 2.11 / English Subtitles for AI Barks Go to the audio settings and set the scope you prefer: Story: Story only On: Story and general speech (Give it a try!) Off: Disable subtitles Features of the mod: Background replaced with a font outline. Audio source widget replaced with a text transparency based on distance (volume) to the source. Yellow font color for story subs for best contrast, light grey font color for anything else. Non-story subs limited to a single instance, so that players aren't bothered too much with non-relevant subs (barks). --------------------------------------------------------------------------- DOWNLOADS / INSTALL / UNINSTALL So, how do I install and play with all this? Quite easy, but pay attention. I don't want you to break your game so we will be using a "Mod Enabler". A Mod Enabler allows you to enable and disable mods at will, with a few clicks. Before moving forward you must know a couple of things: The moment you enable a mod, previous saves will not work. If you want to load previous saves then you will have to disable the mod. If you play a mission with mods, the saves will only work when that exact set of mods are enabled. This above is important in case you deem your current saves precious. Consider yourself informed. DOWNLOADS You can download the TDM Modpack from Mod DB: INSTALL INSTRUCTIONS Download the zip, unzip it, and move contents to your TDM root folder: Folder "MODS" File "JSGME.exe" Go to your TDM root folder and double click on JSGME.exe (yellow icon). The first time you launch JSGME, it will ask for the "Mods Folder Name". Leave "MODS" and click OK. Now to your left you will find a list of mods available. To your right you will find a list of mods currently enabled. To enable a mod, select a mod on the left, and click on the arrow pointing to the right. To disable a mod, select a mod on the right, and click on the arrow pointing to the left. Go and enable the mods you want: UNINSTALL INSTRUCTIONS Quit the game (to unblock files) Go to your TDM root folder and double click on JSGME.ese (yellow icon) Disable all mods found on the right Close JSGME Delete the following: Folder "MODS" File "JSGME.exe" File "JSGME.ini" --------------------------------------------------------------------------- I hope you enjoy the mods. No coin? then leave a like for pirate's sake!
  18. Just checked out from the Gitlab repo, can't compile source now. @OrbWeaver Severity Code Description Project File Line Suppression State Error C2504 'IUserControl': base class undefined (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h 11 Error C3668 'ui::GameConnectionControl::getControlName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h 16 Error C3668 'ui::GameConnectionControl::getDisplayName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h 21 Error C3668 'ui::GameConnectionControl::getIcon': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h 26 Error C3668 'ui::GameConnectionControl::createWidget': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h 31 Error C2664 'void ui::IUserInterfaceModule::registerControl(ui::IUserControlCreator::Ptr)': cannot convert argument 1 from 'std::shared_ptr<ui::GameConnectionControl>' to 'ui::IUserControlCreator::Ptr' dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnection.cpp 829 Message No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnection.cpp 829 Message see declaration of 'ui::IUserInterfaceModule::registerControl' (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\include\ui\iuserinterface.h 33 Message while trying to match the argument list '(std::shared_ptr<ui::GameConnectionControl>)' dm.gameconnection C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnection.cpp 829 Error C2504 'IUserControl': base class undefined (compiling source file ..\..\plugins\dm.editing\plugin.cpp) dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h 11 Error C3668 'ui::AIEditingControl::getControlName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h 16 Error C3668 'ui::AIEditingControl::getDisplayName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h 21 Error C3668 'ui::AIEditingControl::getIcon': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h 26 Error C3668 'ui::AIEditingControl::createWidget': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h 31 Error C2664 'void ui::IUserInterfaceModule::registerControl(ui::IUserControlCreator::Ptr)': cannot convert argument 1 from 'std::shared_ptr<ui::AIEditingControl>' to 'ui::IUserControlCreator::Ptr' dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\plugin.cpp 84 Message No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\plugin.cpp 84 Message see declaration of 'ui::IUserInterfaceModule::registerControl' (compiling source file ..\..\plugins\dm.editing\plugin.cpp) dm.editing C:\source_code\darkradiant_svn\DarkRadiant\include\ui\iuserinterface.h 33 Message while trying to match the argument list '(std::shared_ptr<ui::AIEditingControl>)' dm.editing C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\plugin.cpp 84 Error C2664 'void (GLenum,GLsizei,GLenum,void *,GLint)': cannot convert argument 4 from 'const unsigned int *const ' to 'void *' DarkRadiantCore C:\source_code\darkradiant_svn\DarkRadiant\radiantcore\rendersystem\backend\ObjectRenderer.cpp 50 Message Conversion loses qualifiers DarkRadiantCore C:\source_code\darkradiant_svn\DarkRadiant\radiantcore\rendersystem\backend\ObjectRenderer.cpp 50 Error C1083 Cannot open source file: '..\..\radiant\xyview\XYWnd.cpp': No such file or directory DarkRadiant C:\source_code\darkradiant_svn\DarkRadiant\tools\msvc\c1xx 1 VS2022 shows: Build started... 1>------ Build started: Project: DependencyCheck, Configuration: Debug x64 ------ 1>Ensure Windows Dependencies are downloaded and extracted 1>Checking latest windeps package... 1>Found package windeps.7z (32.9 MB) 1>Downloading dependencies package (32.9 MB) 1>Cleaning up old dependencies... 1>Extracting dependencies package... 1> 1>7-Zip (a) 19.00 (x86) : Copyright (c) 1999-2018 Igor Pavlov : 2019-02-21 1> 1>Scanning the drive for archives: 1>1 file, 34494860 bytes (33 MiB) 1> 1>Extracting archive: C:\source_code\darkradiant_svn\DarkRadiant\tools\DependencyCheck\..\..\windeps_85508622.7z 1>-- 1>Path = C:\source_code\darkradiant_svn\DarkRadiant\tools\DependencyCheck\..\..\windeps_85508622.7z 1>Type = 7z 1>Physical Size = 34494860 1>Headers Size = 29691 1>Method = LZMA2:26 LZMA:20 BCJ2 1>Solid = + 1>Blocks = 2 1> 1>Everything is Ok 1> 1>Folders: 177 1>Files: 2417 1>Size: 275169913 1>Compressed: 34494860 2>------ Build started: Project: modulelib, Configuration: Debug x64 ------ 3>------ Build started: Project: libs, Configuration: Debug x64 ------ 4>------ Build started: Project: include, Configuration: Debug x64 ------ 5>------ Build started: Project: scenelib, Configuration: Debug x64 ------ 6>------ Build started: Project: xmlutillib, Configuration: Debug x64 ------ 7>------ Build started: Project: mathlib, Configuration: Debug x64 ------ 2>ApplicationContextBase.cpp 2>CoreModule.cpp 2>DynamicLibrary.cpp 2>StaticModule.cpp 5>ChildPrimitives.cpp 5>InstanceWalkers.cpp 7>AABB.cpp 7>Frustum.cpp 7>Matrix4.cpp 7>Plane3.cpp 7>SHA256.cpp 5>LayerUsageBreakdown.cpp 5>ModelFinder.cpp 5>Node.cpp 5>SelectableNode.cpp 5>SelectionIndex.cpp 5>TraversableNodeSet.cpp 5>Traverse.cpp 6>Document.cpp 6>Node.cpp 6>XmlModule.cpp 6>xmlutillib.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\build\libs\x64\Debug\xmlutillib.lib 2>modulelib.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\build\libs\x64\Debug\modulelib.lib 7>mathlib.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\build\libs\x64\Debug\mathlib.lib 5>GraphComparer.cpp 5>MergeActionNode.cpp 5>MergeOperation.cpp 5>MergeOperationBase.cpp 5>ThreeWayMergeOperation.cpp 5>scenelib.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\build\libs\x64\Debug\scenelib.lib 8>------ Build started: Project: DarkRadiantCore, Configuration: Debug x64 ------ 9>------ Build started: Project: wxutillib, Configuration: Debug x64 ------ 9>ConsoleView.cpp 9>DirChooser.cpp 9>EntityClassChooser.cpp 9>FileChooser.cpp 9>FreezePointer.cpp 9>GLWidget.cpp 9>ModalProgressDialog.cpp 9>MouseToolHandler.cpp 9>PanedPosition.cpp 9>PathEntry.cpp 9>SerialisableWidgets.cpp 9>Splitter.cpp 9>WindowPosition.cpp 9>WindowState.cpp 8>precompiled.cpp 8>Brush.cpp 8>BrushModule.cpp 8>BrushNode.cpp 8>Face.cpp 8>FaceInstance.cpp 8>FacePlane.cpp 8>FixedWinding.cpp 8>RenderableBrushVertices.cpp 8>TextureMatrix.cpp 8>TextureProjection.cpp 8>Winding.cpp 9>DeclarationTreeView.cpp 9>KeyValueTable.cpp 9>ResourceTreeView.cpp 9>ResourceTreeViewToolbar.cpp 9>ThreadedResourceTreePopulator.cpp 9>TreeModel.cpp 9>TreeModelFilter.cpp 9>TreeView.cpp 9>VFSTreePopulator.cpp 8>CSG.cpp 8>CollisionModel.cpp 8>Camera.cpp 8>CameraManager.cpp 9>DeclarationSelector.cpp 9>DeclarationSelectorDialog.cpp 8>BrushByPlaneClipper.cpp 8>Clipper.cpp 8>ClipPoint.cpp 8>SplitAlgorithm.cpp 8>DeclarationFolderParser.cpp 8>DeclarationManager.cpp 8>FavouritesManager.cpp 9>Dialog.cpp 9>DialogBase.cpp 9>MessageBox.cpp 8>EClassColourManager.cpp 8>EClassManager.cpp 8>EntityClass.cpp 8>AngleKey.cpp 8>AttachmentData.cpp 8>EntityModule.cpp 8>EntityNode.cpp 8>EntitySettings.cpp 8>KeyValue.cpp 8>KeyValueObserver.cpp 8>ModelKey.cpp 8>NameKeyObserver.cpp 8>NamespaceManager.cpp 8>RenderableArrow.cpp 8>RenderableEntityBox.cpp 8>RenderableEntityName.cpp 8>RotationKey.cpp 8>RotationMatrix.cpp 8>ShaderParms.cpp 8>SpawnArgs.cpp 9>FileSystemView.cpp 9>Populator.cpp 8>Curve.cpp 8>CurveCatmullRom.cpp 8>CurveEditInstance.cpp 8>CurveNURBS.cpp 8>StaticGeometryNode.cpp 9>FilterPopupMenu.cpp 9>PopupMenu.cpp 8>EclassModelNode.cpp 8>GenericEntityNode.cpp 9>EntityPreview.cpp 9>GuiRenderer.cpp 9>GuiView.cpp 9>ModelPreview.cpp 9>ParticlePreview.cpp 9>RenderPreview.cpp 8>LightNode.cpp 8>Renderables.cpp 8>SpeakerNode.cpp 8>SpeakerRenderables.cpp 8>TargetableNode.cpp 8>TargetKey.cpp 8>TargetKeyCollection.cpp 8>TargetLineNode.cpp 8>TargetManager.cpp 8>FileTypeRegistry.cpp 8>BasicFilterSystem.cpp 8>XMLFilter.cpp 8>XmlFilterEventAdapter.cpp 8>FontLoader.cpp 8>FontManager.cpp 8>GlyphInfo.cpp 8>GlyphSet.cpp 8>FxAction.cpp 8>FxDeclaration.cpp 8>FxManager.cpp 8>GridManager.cpp 9>DeclarationSourceView.cpp 9>DefinitionView.cpp 9>SourceView.cpp 8>BMPLoader.cpp 8>dds.cpp 8>ddslib.cpp 8>ImageLoader.cpp 8>JPEGLoader.cpp 8>PNGLoader.cpp 8>TGALoader.cpp 8>LayerInfoFileModule.cpp 8>LayerManager.cpp 8>LayerModule.cpp 8>SegFaultHandler.cpp 8>COutRedirector.cpp 8>LogFile.cpp 8>LogStream.cpp 8>LogStreamBuf.cpp 8>LogWriter.cpp 8>StringLogDevice.cpp 8>AasFileManager.cpp 8>Doom3AasFile.cpp 8>Doom3AasFileLoader.cpp 8>Doom3AasFileSettings.cpp 8>Export.cpp 8>Import.cpp 8>MapExporter.cpp 8>MapImporter.cpp 8>Models.cpp 8>ArchivedMapResource.cpp 8>CounterManager.cpp 8>EditingStopwatch.cpp 8>EditingStopwatchInfoFileModule.cpp 8>Map.cpp 8>MapFileManager.cpp 8>MapModules.cpp 8>MapPosition.cpp 8>MapPositionManager.cpp 8>MapPropertyInfoFileModule.cpp 8>MapResource.cpp 8>MapResourceLoader.cpp 8>MapResourceManager.cpp 8>PointFile.cpp 8>RegionManager.cpp 8>RootNode.cpp 8>VcsMapResource.cpp 9>wxutillib.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\build\libs\x64\Debug\wxutillib.lib 10>------ Build started: Project: vcs, Configuration: Debug x64 ------ 11>------ Build started: Project: dm.gameconnection, Configuration: Debug x64 ------ 12>------ Build started: Project: dm.gui, Configuration: Debug x64 ------ 13>------ Build started: Project: dm.editing, Configuration: Debug x64 ------ 14>------ Build started: Project: script, Configuration: Debug x64 ------ 15>------ Build started: Project: dm.conversation, Configuration: Debug x64 ------ 16>------ Build started: Project: dm.difficulty, Configuration: Debug x64 ------ 17>------ Build started: Project: dm.objectives, Configuration: Debug x64 ------ 18>------ Build started: Project: dm.stimresponse, Configuration: Debug x64 ------ 19>------ Build started: Project: sound, Configuration: Debug x64 ------ 20>------ Build started: Project: DarkRadiant, Configuration: Debug x64 ------ 10>GitModule.cpp 10>Index.cpp 10>Repository.cpp 11>AutomationEngine.cpp 11>DiffDoom3MapWriter.cpp 11>GameConnection.cpp 11>GameConnectionPanel.cpp 11>MapObserver.cpp 11>MessageTcp.cpp 15>CommandArgumentItem.cpp 12>GuiSelector.cpp 12>plugin.cpp 16>ClassNameStore.cpp 13>AIEditingPanel.cpp 17>precompiled.cpp 15>CommandEditor.cpp 15>ConversationCommand.cpp 15>ConversationCommandInfo.cpp 15>ConversationCommandLibrary.cpp 15>ConversationDialog.cpp 12>ReadableEditorDialog.cpp 12>ReadableGuiView.cpp 12>XData.cpp 12>XDataLoader.cpp 16>DifficultyDialog.cpp 16>DifficultyEditor.cpp 16>DifficultyEntity.cpp 13>AIHeadChooserDialog.cpp 13>AIHeadPropertyEditor.cpp 13>AIVocalSetChooserDialog.cpp 13>AIVocalSetPreview.cpp 13>AIVocalSetPropertyEditor.cpp 13>DarkmodTxt.cpp 13>FixupMap.cpp 13>FixupMapDialog.cpp 13>MissionInfoEditDialog.cpp 15>ConversationEditor.cpp 15>ConversationKeyExtractor.cpp 15>ConversationEntity.cpp 15>plugin.cpp 12>XDataSelector.cpp 12>XdFileChooserDialog.cpp 16>DifficultySettings.cpp 16>DifficultySettingsManager.cpp 16>plugin.cpp 16>Setting.cpp 18>precompiled.cpp 8>AutoSaver.cpp 13>MissionInfoGuiView.cpp 13>MissionInfoTextFile.cpp 13>MissionReadmeDialog.cpp 13>plugin.cpp 13>ReadmeTxt.cpp 14>precompiled.cpp 19>sound.cpp 19>SoundManager.cpp 19>SoundPlayer.cpp 19>SoundShader.cpp 20>precompiled.cpp 8>Doom3MapFormat.cpp 8>Doom3MapReader.cpp 8>Doom3MapWriter.cpp 8>Doom3PrefabFormat.cpp 8>MapFormatManager.cpp 8>Quake3MapFormat.cpp 8>Quake3MapReader.cpp 8>Quake4MapFormat.cpp 8>Quake4MapReader.cpp 17>Component.cpp 17>ComponentsDialog.cpp 17>ComponentType.cpp 17>DifficultyPanel.cpp 17>LogicEditor.cpp 17>MissionLogicDialog.cpp 17>ObjectiveConditionsDialog.cpp 17>ObjectiveEntity.cpp 17>ObjectiveEntityFinder.cpp 17>ObjectiveKeyExtractor.cpp 17>objectives.cpp 17>ObjectivesEditor.cpp 17>Specifier.cpp 17>SpecifierType.cpp 8>PortableMapFormat.cpp 8>PortableMapReader.cpp 8>PortableMapWriter.cpp 18>ClassEditor.cpp 18>CustomStimEditor.cpp 18>EffectArgumentItem.cpp 18>EffectEditor.cpp 18>plugin.cpp 18>ResponseEditor.cpp 18>ResponseEffect.cpp 18>ResponseEffectTypes.cpp 18>SREntity.cpp 18>SRPropertyLoader.cpp 18>SRPropertyRemover.cpp 18>SRPropertySaver.cpp 18>StimEditor.cpp 18>StimResponse.cpp 18>StimResponseEditor.cpp 18>StimTypes.cpp 8>BrushDef.cpp 8>BrushDef3.cpp 8>Patch.cpp 8>PatchDef2.cpp 8>PatchDef3.cpp 14>CameraInterface.cpp 14>DeclarationManagerInterface.cpp 14>FxManagerInterface.cpp 14>LayerInterface.cpp 14>SceneGraphInterface.cpp 14>SelectionGroupInterface.cpp 14>BrushInterface.cpp 14>CommandSystemInterface.cpp 14>DialogInterface.cpp 14>EClassInterface.cpp 14>EntityInterface.cpp 14>FileSystemInterface.cpp 14>GameInterface.cpp 14>GridInterface.cpp 14>MapInterface.cpp 14>MathInterface.cpp 8>InfoFile.cpp 8>InfoFileExporter.cpp 8>InfoFileManager.cpp 20>CameraWndManager.cpp 20>CameraSettings.cpp 20>CamWnd.cpp 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h(11,12): error C2504: 'IUserControl': base class undefined (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h(16,17): error C3668: 'ui::GameConnectionControl::getControlName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h(21,17): error C3668: 'ui::GameConnectionControl::getDisplayName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h(26,17): error C3668: 'ui::GameConnectionControl::getIcon': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnectionControl.h(31,15): error C3668: 'ui::GameConnectionControl::createWidget': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnection.cpp(829,26): error C2664: 'void ui::IUserInterfaceModule::registerControl(ui::IUserControlCreator::Ptr)': cannot convert argument 1 from 'std::shared_ptr<ui::GameConnectionControl>' to 'ui::IUserControlCreator::Ptr' 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnection.cpp(829,86): message : No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called 11>C:\source_code\darkradiant_svn\DarkRadiant\include\ui\iuserinterface.h(33,18): message : see declaration of 'ui::IUserInterfaceModule::registerControl' (compiling source file ..\..\plugins\dm.gameconnection\GameConnection.cpp) 11>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gameconnection\GameConnection.cpp(829,26): message : while trying to match the argument list '(std::shared_ptr<ui::GameConnectionControl>)' 14>ModelInterface.cpp 14>PatchInterface.cpp 14>RadiantInterface.cpp 14>SelectionInterface.cpp 14>SelectionSetInterface.cpp 14>ShaderSystemInterface.cpp 14>SkinInterface.cpp 14>SoundInterface.cpp 8>MRU.cpp 19>libvorbis-d-vc143.lib(vorbisfile.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(vorbisfile.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(framing.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(framing.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(info.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(info.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(block.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(block.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(synthesis.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(synthesis.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(bitwise.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(bitwise.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(sharedbook.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(sharedbook.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(codebook.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(codebook.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(psy.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(psy.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(registry.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(registry.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(mdct.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(mdct.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(envelope.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(envelope.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(smallft.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(smallft.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(bitrate.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(bitrate.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(window.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(window.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(lpc.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(lpc.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(floor0.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(floor0.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(floor1.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(floor1.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(res0.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(res0.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(mapping0.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(mapping0.obj)' or at ''; linking object as if no debug info 19>libvorbis-d-vc143.lib(lsp.obj) : warning LNK4099: PDB '' was not found with 'libvorbis-d-vc143.lib(lsp.obj)' or at ''; linking object as if no debug info 19> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\modules\sound.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\modules\sound.exp 8>ComplexName.cpp 8>Namespace.cpp 8>NamespaceFactory.cpp 19>sound.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\modules\sound.dll 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h(11,12): error C2504: 'IUserControl': base class undefined (compiling source file ..\..\plugins\dm.editing\plugin.cpp) 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h(16,17): error C3668: 'ui::AIEditingControl::getControlName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h(21,17): error C3668: 'ui::AIEditingControl::getDisplayName': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h(26,17): error C3668: 'ui::AIEditingControl::getIcon': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\AIEditingControl.h(31,15): error C3668: 'ui::AIEditingControl::createWidget': method with override specifier 'override' did not override any base class methods (compiling source file ..\..\plugins\dm.editing\plugin.cpp) 8>AseExporter.cpp 8>Lwo2Chunk.cpp 20>ClipboardModule.cpp 8>Lwo2Exporter.cpp 8>ModelExporter.cpp 8>ModelScalePreserver.cpp 8>PatchSurface.cpp 8>ScaledModelExporter.cpp 8>WavefrontExporter.cpp 19>Done building project "sound.vcxproj". 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\plugin.cpp(84,30): error C2664: 'void ui::IUserInterfaceModule::registerControl(ui::IUserControlCreator::Ptr)': cannot convert argument 1 from 'std::shared_ptr<ui::AIEditingControl>' to 'ui::IUserControlCreator::Ptr' 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\plugin.cpp(84,85): message : No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called 13>C:\source_code\darkradiant_svn\DarkRadiant\include\ui\iuserinterface.h(33,18): message : see declaration of 'ui::IUserInterfaceModule::registerControl' (compiling source file ..\..\plugins\dm.editing\plugin.cpp) 13>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.editing\plugin.cpp(84,30): message : while trying to match the argument list '(std::shared_ptr<ui::AIEditingControl>)' 20>Accelerator.cpp 20>EventManager.cpp 20>GlobalKeyEventFilter.cpp 20>MouseToolGroup.cpp 11>Done building project "dm.gameconnection.vcxproj" -- FAILED. 20>MouseToolManager.cpp 20>Statement.cpp 20>Toggle.cpp 20>WidgetToggle.cpp 17>AIFindBodyComponentEditor.cpp 17>AIFindItemComponentEditor.cpp 17>AlertComponentEditor.cpp 17>ComponentEditorFactory.cpp 17>CustomClockedComponentEditor.cpp 17>CustomComponentEditor.cpp 17>DestroyComponentEditor.cpp 17>DistanceComponentEditor.cpp 17>InfoLocationComponentEditor.cpp 17>ItemComponentEditor.cpp 17>KillComponentEditor.cpp 17>KnockoutComponentEditor.cpp 17>LocationComponentEditor.cpp 17>PickpocketComponentEditor.cpp 17>ReadableClosedComponentEditor.cpp 17>ReadableOpenedComponentEditor.cpp 10>VcsStatus.cpp 17>ReadablePageReachedComponentEditor.cpp 18> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.stimresponse.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.stimresponse.exp 8>AseModel.cpp 8>AseModelLoader.cpp 8>FbxModelLoader.cpp 8>ModelImporterBase.cpp 14>PythonModule.cpp 14>SceneNodeBuffer.cpp 14>ScriptCommand.cpp 14>ScriptingSystem.cpp 14>ScriptModule.cpp 17>SpecifierEditCombo.cpp 20>main.cpp 20>RadiantApp.cpp 18>dm.stimresponse.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.stimresponse.dll 8>ofbx.cpp 20>AutoSaveTimer.cpp 20>StartupMapLoader.cpp 17>AIInnocenceSpecifierPanel.cpp 13>Done building project "dm.editing.vcxproj" -- FAILED. 17>AITeamSpecifierPanel.cpp 17>AITypeSpecifierPanel.cpp 17>ClassnameSpecifierPanel.cpp 17>EntityNameSpecifierPanel.cpp 17>GroupSpecifierPanel.cpp 17>SpawnClassSpecifierPanel.cpp 17>SpecifierPanelFactory.cpp 17>TextSpecifierPanel.cpp 8>MD5Anim.cpp 20>ManipulateMouseTool.cpp 8>MD5AnimationCache.cpp 8>MD5Model.cpp 8>MD5ModelLoader.cpp 8>MD5ModelNode.cpp 8>MD5Module.cpp 8>MD5Skeleton.cpp 8>MD5Surface.cpp 14> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\modules\script.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\modules\script.exp 20>SceneManipulateMouseTool.cpp 20>SelectionMouseTools.cpp 15> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.conversation.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.conversation.exp 14>script.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\modules\script.dll 15>dm.conversation.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.conversation.dll 12>GuiExpression.cpp 12>Gui.cpp 12>GuiManager.cpp 12>GuiScript.cpp 12>GuiWindowDef.cpp 12>RenderableCharacterBatch.cpp 12>RenderableText.cpp 12>Variable.cpp 20>LocalisationModule.cpp 20>LocalisationProvider.cpp 16> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.difficulty.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.difficulty.exp 20>Win32Registry.cpp 16>dm.difficulty.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.difficulty.dll 8>ModelCache.cpp 8>ModelFormatManager.cpp 8>ModelNodeBase.cpp 8>NullModel.cpp 8>NullModelNode.cpp 8>StaticModel.cpp 8>StaticModelNode.cpp 8>StaticModelSurface.cpp 20>TextureToolManipulateMouseTool.cpp 10>libgit2-d.lib(tree.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(tree.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(object_api.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(object_api.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(blob.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(blob.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(errors.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(errors.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(global.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(global.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(index.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(index.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(buffer.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(buffer.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(oid.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(oid.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(repository.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(repository.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(object.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(object.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(refs.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(refs.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff_generate.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff_generate.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(branch.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(branch.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(checkout.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(checkout.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(merge.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(merge.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(credential.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(credential.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(remote.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(remote.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(commit.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(commit.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(config.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(config.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(status.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(status.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(reset.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(reset.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(revwalk.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(revwalk.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(signature.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(signature.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(annotated_commit.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(annotated_commit.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(vector.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(vector.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(util.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(util.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(odb.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(odb.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(strmap.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(strmap.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pool.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pool.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(path.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(path.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(tree-cache.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(tree-cache.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(alloc.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(alloc.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(posix.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(posix.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(posix_w32.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(posix_w32.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(futils.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(futils.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(filter.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(filter.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(filebuf.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(filebuf.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(buf_text.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(buf_text.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(error.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(error.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(mwindow.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(mwindow.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(hash.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(hash.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(sysdir.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(sysdir.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(merge_driver.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(merge_driver.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(registry.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(registry.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(mbedtls.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(mbedtls.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(openssl.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(openssl.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(ssh.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(ssh.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(thread.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(thread.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(submodule.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(submodule.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(idxmap.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(idxmap.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(config_cache.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(config_cache.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(ignore.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(ignore.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(iterator.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(iterator.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pathspec.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pathspec.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(varint.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(varint.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(attrcache.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(attrcache.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(strarray.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(strarray.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(worktree.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(worktree.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(path_w32.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(path_w32.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(w32_util.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(w32_util.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(cache.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(cache.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(refdb.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(refdb.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff_driver.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff_driver.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(tag.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(tag.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff_print.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff_print.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff_stats.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff_stats.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(date.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(date.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(patch.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(patch.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff_tform.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff_tform.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(attr_file.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(attr_file.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(patch_generate.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(patch_generate.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(refspec.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(refspec.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(merge_file.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(merge_file.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(oidarray.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(oidarray.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(commit_list.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(commit_list.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(oidmap.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(oidmap.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pqueue.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pqueue.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(transport.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(transport.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(fetch.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(fetch.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(fetchhead.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(fetchhead.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(push.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(push.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(mailmap.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(mailmap.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(config_file.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(config_file.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(regexp.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(regexp.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(transaction.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(transaction.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(wildmatch.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(wildmatch.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(revparse.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(revparse.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(tsort.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(tsort.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(utf-conv.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(utf-conv.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(w32_buffer.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(w32_buffer.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(odb_pack.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(odb_pack.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(odb_loose.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(odb_loose.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(map.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(map.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(dir.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(dir.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(stdalloc.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(stdalloc.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(attr.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(attr.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(crlf.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(crlf.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(ident.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(ident.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pack.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pack.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(collisiondetect.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(collisiondetect.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(findfile.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(findfile.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(clone.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(clone.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(refdb_fs.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(refdb_fs.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(hashsig.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(hashsig.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff_file.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff_file.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(diff_xdiff.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(diff_xdiff.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(zstream.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(zstream.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(delta.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(delta.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(xmerge.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(xmerge.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(local.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(local.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(smart.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(smart.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(winhttp.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(winhttp.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(git.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(git.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(net.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(net.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pack-objects.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pack-objects.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(parse.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(parse.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(config_snapshot.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(config_snapshot.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(config_entries.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(config_entries.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(config_parse.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(config_parse.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pcre_compile.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pcre_compile.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pcre_exec.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pcre_exec.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pcre_globals.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pcre_globals.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(reflog.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(reflog.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(indexer.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(indexer.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(offmap.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(offmap.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(sha1.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(sha1.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(sortedcache.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(sortedcache.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(xdiffi.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(xdiffi.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(xutils.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(xutils.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(xprepare.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(xprepare.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(netops.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(netops.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(smart_protocol.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(smart_protocol.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(smart_pkt.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(smart_pkt.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(proxy.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(proxy.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(settings.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(settings.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(socket.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(socket.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(http_parser.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(http_parser.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(thread-utils.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(thread-utils.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pcre_newline.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pcre_newline.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pcre_tables.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pcre_tables.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(pcre_chartables.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(pcre_chartables.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(ubc_check.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(ubc_check.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(xemit.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(xemit.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(xpatience.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(xpatience.obj)' or at ''; linking object as if no debug info 10>libgit2-d.lib(xhistogram.obj) : warning LNK4099: PDB '' was not found with 'libgit2-d.lib(xhistogram.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(deflate.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(deflate.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(inflate.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(inflate.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(crc32.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(crc32.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(adler32.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(adler32.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(zutil.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(zutil.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(trees.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(trees.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(inftrees.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(inftrees.obj)' or at ''; linking object as if no debug info 10>libzlib-d-vc143.lib(inffast.obj) : warning LNK4099: PDB '' was not found with 'libzlib-d-vc143.lib(inffast.obj)' or at ''; linking object as if no debug info 10> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\vcs.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\vcs.exp 10>LINK : warning LNK4098: defaultlib 'LIBCMTD' conflicts with use of other libs; use /NODEFAULTLIB:library 20>AasFileControl.cpp 20>AasVisualisationPanel.cpp 20>RenderableAasFile.cpp 10>vcs.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\vcs.dll 10>Done building project "vcs.vcxproj". 12>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gui\gui\GuiScript.cpp(148,14): warning C4834: discarding return value of function with 'nodiscard' attribute 12>C:\source_code\darkradiant_svn\DarkRadiant\plugins\dm.gui\gui\GuiWindowDef.cpp(371,14): warning C4834: discarding return value of function with 'nodiscard' attribute 8>clip.c 8>envelope.c 8>list.c 8>lwio.c 8>lwo2.c 8>lwob.c 8>pntspols.c 8>surface.c 8>vecmath.c 8>vmap.c 8>picointernal.c 8>picomodel.c 8>picomodules.c 8>pm_3ds.c 8>pm_fm.c 8>pm_iqm.c 8>pm_lwo.c 8>pm_md2.c 8>pm_md3.c 8>pm_mdc.c 8>pm_ms3d.c 8>pm_obj.c 8>pm_terrain.c 20>AnimationPreview.cpp 20>MD5AnimationChooser.cpp 20>MD5AnimationViewer.cpp 8>PicoModelLoader.cpp 8>PicoModelModule.cpp 17> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.objectives.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.objectives.exp 8>ParticleDef.cpp 8>ParticleNode.cpp 8>ParticleParameter.cpp 8>ParticlesManager.cpp 8>RenderableParticle.cpp 8>RenderableParticleBunch.cpp 8>RenderableParticleStage.cpp 8>StageDef.cpp 17>dm.objectives.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.objectives.dll 20>FindBrush.cpp 20>QuerySidesDialog.cpp 8>General.cpp 8>Prefab.cpp 20>ColourSchemeEditor.cpp 12> Creating library C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.gui.lib and object C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.gui.exp 20>DialogManager.cpp 20>ImageFilePopulator.cpp 20>ImageFileSelector.cpp 20>SkinChooser.cpp 20>SoundChooser.cpp 20>SoundShaderPreview.cpp 20>EntityChooser.cpp 20>MapPreview.cpp 20>TexturePreviewCombo.cpp 12>dm.gui.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\plugins\dm.gui.dll 12>Done building project "dm.gui.vcxproj". 8>Patch.cpp 8>PatchModule.cpp 8>PatchNode.cpp 8>PatchRenderables.cpp 8>PatchTesselation.cpp 8>Radiant.cpp 20>CommandEntry.cpp 20>Console.cpp 8>CommandSystem.cpp 20>DispatchEvent.cpp 20>Documentation.cpp 20>LongRunningOperationHandler.cpp 20>MapCommands.cpp 20>MapFileProgressHandler.cpp 20>PointFileChooser.cpp 20>UserInterfaceModule.cpp 20>C:\source_code\darkradiant_svn\DarkRadiant\radiant\ui\Documentation.cpp(23,32): warning C4189: 'ctx': local variable is initialized but not referenced 8>ModuleLoader.cpp 8>ModuleRegistry.cpp 8>BlendLight.cpp 8>BuiltInShader.cpp 8>ColourShader.cpp 8>DepthFillPass.cpp 8>FullBrightRenderer.cpp 8>GLProgramFactory.cpp 8>InteractionPass.cpp 8>LightingModeRenderer.cpp 8>ObjectRenderer.cpp 8>OpenGLShader.cpp 8>OpenGLShaderPass.cpp 8>RegularLight.cpp 8>SceneRenderer.cpp 8>C:\source_code\darkradiant_svn\DarkRadiant\radiantcore\rendersystem\backend\ObjectRenderer.cpp(50,38): error C2664: 'void (GLenum,GLsizei,GLenum,void *,GLint)': cannot convert argument 4 from 'const unsigned int *const ' to 'void *' 8>C:\source_code\darkradiant_svn\DarkRadiant\radiantcore\rendersystem\backend\ObjectRenderer.cpp(50,38): message : Conversion loses qualifiers 20>EClassTree.cpp 20>EClassTreeBuilder.cpp 8>Done building project "DarkRadiantCore.vcxproj" -- FAILED. 21>------ Build started: Project: Tests, Configuration: Debug x64 ------ 21>Basic.cpp 21>Brush.cpp 21>Camera.cpp 21>Clipboard.cpp 21>CodeTokeniser.cpp 21>ColourSchemes.cpp 21>CommandSystem.cpp 21>ContinuousBuffer.cpp 21>CSG.cpp 21>Curves.cpp 21>DeclManager.cpp 21>DefBlockSyntaxParser.cpp 21>DefTokenisers.cpp 21>Entity.cpp 21>EntityClass.cpp 21>EntityInspector.cpp 20>EntityInspectorModule.cpp 20>FxPropertyEditor.cpp 20>AddPropertyDialog.cpp 20>AnglePropertyEditor.cpp 20>BooleanPropertyEditor.cpp 20>ClassnamePropertyEditor.cpp 20>ColourPropertyEditor.cpp 20>EntityInspector.cpp 20>EntityPropertyEditor.cpp 20>FloatPropertyEditor.cpp 20>ModelPropertyEditor.cpp 20>PropertyEditor.cpp 20>PropertyEditorFactory.cpp 20>SkinPropertyEditor.cpp 20>SoundPropertyEditor.cpp 20>TexturePropertyEditor.cpp 20>Vector3PropertyEditor.cpp 21>Favourites.cpp 21>FileTypes.cpp 21>Filters.cpp 20>EntityList.cpp 21>Fx.cpp 20>GraphTreeModel.cpp 21>Game.cpp 21>GeometryStore.cpp 21>Grid.cpp 21>HeadlessOpenGLContext.cpp 21>ImageLoading.cpp 20>FavouritesBrowser.cpp 20>FavouritesUserInterfaceModule.cpp 21>LayerManipulation.cpp 21>MapExport.cpp 21>MapMerging.cpp 20>FilterDialog.cpp 20>FilterEditor.cpp 21>MapSavingLoading.cpp 21>MaterialExport.cpp 21>Materials.cpp 21>MessageBus.cpp 21>ModelExport.cpp 21>Models.cpp 21>ModelScale.cpp 21>Particles.cpp 21>Patch.cpp 20>FilterContextMenu.cpp 20>FilterOrthoContextMenuItem.cpp 21>PatchIterators.cpp 20>FiltersMainMenu.cpp 20>FilterUserInterface.cpp 21>PatchWelding.cpp 20>FxChooser.cpp 21>PointTrace.cpp 20>WxGLWidgetManager.cpp 21>Prefabs.cpp 20>GridUserInterface.cpp 21>Renderer.cpp 21>SceneNode.cpp 21>SceneStatistics.cpp 20>CreateLayerDialog.cpp 20>LayerControlPanel.cpp 20>LayerContextMenu.cpp 20>LayerOrthoContextMenuItem.cpp 21>Selection.cpp 21>SelectionAlgorithm.cpp 21>Settings.cpp 21>Skin.cpp 20>AuiFloatingFrame.cpp 20>AuiLayout.cpp 20>AuiManager.cpp 21>SoundManager.cpp 20>PropertyNotebook.cpp 20>TopLevelFrame.cpp 20>ViewMenu.cpp 20>MainFrame.cpp 20>ScreenUpdateBlocker.cpp 21>TextureManipulation.cpp 21>TextureTool.cpp 21>Transformation.cpp 21>UndoRedo.cpp 21>VFS.cpp 21>WindingRendering.cpp 21>WorldspawnColour.cpp 20>LayerInfoTab.cpp 20>EntityInfoTab.cpp 20>MapInfoDialog.cpp 20>ModelInfoTab.cpp 20>ShaderInfoTab.cpp 21>XmlUtil.cpp 20>MapSelector.cpp 20>MaterialEditor.cpp 20>MaterialEditorModule.cpp 20>MaterialPreview.cpp 20>MaterialChooser.cpp 20>MaterialPopulator.cpp 20>MaterialSelector.cpp 20>MaterialTreeView.cpp 21>Matrix3.cpp 21>Matrix4.cpp 21>Plane3.cpp 21>Quaternion.cpp 21>Vector.cpp 20>MediaBrowserModule.cpp 20>MediaBrowserTreeView.cpp 20>MediaBrowser.cpp 20>MenuBar.cpp 20>MenuElement.cpp 20>MenuFolder.cpp 20>MenuItem.cpp 20>MenuManager.cpp 20>MenuSeparator.cpp 20>MapMergePanel.cpp 20>ConvertModelDialog.cpp 20>ExportAsModelDialog.cpp 20>ExportCollisionModelDialog.cpp 20>MaterialsList.cpp 20>ModelSelector.cpp 20>ModelTreeView.cpp 21>Tests.vcxproj -> C:\source_code\darkradiant_svn\DarkRadiant\install\Tests.exe 20>TexTool.cpp 20>AboutDialog.cpp 20>CommandList.cpp 20>ShortcutChooser.cpp 20>FindShader.cpp 20>LightInspector.cpp 20>BindToolDialog.cpp 20>ToolMappingDialog.cpp 20>OrthoContextMenu.cpp 20>OrthoBackgroundPanel.cpp 20>Overlay.cpp 20>ParticleChooserDialog.cpp 20>ParticleEditor.cpp 20>ParticleSelector.cpp 20>BulgePatchDialog.cpp 20>CapDialog.cpp 20>PatchCreateDialog.cpp 20>PatchInspector.cpp 20>PatchThickenDialog.cpp 20>PrefabSelector.cpp 20>GameSetupDialog.cpp 20>GameSetupPage.cpp 20>GameSetupPageIdTech.cpp 20>GameSetupPageTdm.cpp 20>PrefDialog.cpp 20>PreferenceItem.cpp 20>PrefPage.cpp 20>ScriptMenu.cpp 20>ScriptUserInterfaceModule.cpp 20>ScriptWindow.cpp 20>SelectionSetToolmenu.cpp 20>SkinEditor.cpp 20>SkinEditorTreeView.cpp 20>CommandStatus.cpp 20>EditingStopwatchStatus.cpp 20>MapStatistics.cpp 20>StatusBarManager.cpp 20>MapTextureBrowser.cpp 20>TextureBrowserManager.cpp 20>TextureBrowserPanel.cpp 20>TextureThumbnailBrowser.cpp 20>ToolbarManager.cpp 20>Splash.cpp 20>SurfaceInspector.cpp 20>TransformPanel.cpp 20>GlobalXYWnd.cpp 20>XYWnd.cpp 20>c1xx : fatal error C1083: Cannot open source file: '..\..\radiant\xyview\XYWnd.cpp': No such file or directory 20>Done building project "DarkRadiant.vcxproj" -- FAILED. ========== Build: 17 succeeded, 4 failed, 0 up-to-date, 0 skipped ========== ========== Build started at 13:16 and took 01:54.291 minutes ==========
  19. Story: Thanks: Thanks to my beta testers datiswous, Cambridge Spy, Aluminum Haste, Acolyte Six, madtaffer, wesp5, SuaveSteve and prjames. Additional thanks to Dragofer and Bikerdude who helped with scripting and assets. Download: Gallery: Thank you for playing! What did you think of the mission? I look forward to your honest feedback! Hints, Tips, Walkthroughs, Spoilers(!): - This mission will greatly reward those taffers who like to explore a mission thoroughly. It is possible to go directly for your objectives, but you will be missing a lot of content. - Many windows are openable, leading to new areas or private residences. - If an area seems hard to navigate due to patrols, chances are you can circumvent it. - Those who like a challenge and some extra replay value owe it to themselves to visit the apartment high above the tunnel entrance at Cobb St. (above the last pic in the gallery) FAQ: Disclaimers, Player Information.
  20. When talking about a possible libre version of TDM (https://forums.thedarkmod.com/index.php?/topic/22346-libre-version-of-tdm/) it seems we believe all media/gamedata included in TDM is licensed CC-BY-NC-SA. I am not familiar with how the process of adding new media/gamedata works today; I have seen files uploaded to the bugtracker which developers then commit to SVN, but I don't know if there are other ways. It may be a good idea to implement a process that when new components (media/gamedata included in TDM) are added, the contributor is asked to be explicit about the license (a choice which may defaults to their previous preference, for usability). It won't fix the past, but it may help in the future. This will make it easy for contributors to add future data under a more permissive license if they choose. Libre media can be added and its license can be tracked, rather than assumed to be CC-BY-NC-SA. I suggest looking at how Wikimedia Commons has implemented this: the contributor state the source and license at the time the data is uploaded. This can be done either by providing urls or by saying "It's my work and I choose this licsense". The first step could be to add a way to keep track of each filepath in SVN, author, license, sources. Start by setting the value for each file's license to "(default/legacy CC-BY-NC-SA)". Possible implementations for a user interface for new additions are: * Use our own wiki, which runs Mediawiki (same as Wikimedia Commons). I see several benefits of this, but we also need a way to accept uploads of batches, not just single files. * Look at how other open source projects have solved this. There may be more appropriate solutions available. ... but I'll leave the implementation open. Suggestions are very welcome! If the author of each file already in SVN can be tracked, then it may be possible that the author is willing to give a blanket permission for all their past files in one statement, and all their files in SVN can be updated in one commit. A productive contributor willing to release some of their work under a more permissive license could make a big change. If Dark Radiant would support letting mappers search media/gamedata by license (does it already?), it would make it easier for mappers to create a completely libre mission, which would help facilitate a TDM-libre release. If I understand things correctly. This post does not address all details and it may contain misunderstandings or assumptions, but it's a start. Also relevant: * Is there a compiled and maintained list of recommended or deprecated resources for mappers to use? * https://forums.thedarkmod.com/index.php?/topic/20311-external-art-assets-licensing/
  21. 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.
  22. Changelog of 2.13 development: dev17042-10732 * Restored ability to create cvars dynamically, fixing bow in missions (5600). * Fixed issue where .cfg files were saved every frame (5600). * Added sys.getcvarf script event for getting float value of cvar (6530). * Extracted most of constants from weapon scripts into cvars (6530). dev17035-10724 * Support passing information between game and briefing/debriefing GUI via persistent info. Also changed start map & location selection, added on_mission_complete script callback (6509 thread). * New bumpmapped environment mapping is now default (6354). * New behavior of zero sound spawnarg is not default (6346). * Added sound for "charge post" model (6527). * Major refactoring of cvars system to simplify future changes (5600). Known issues: * Bow does not shoot in some missions (only in this dev build): thread dev17026-10712 * Nested subviews (mirrors, remotes, sky, etc.) now work properly (6434). * Added GUI debriefing state on mission success (6509 thread). * Sound argument override with zero now works properly under cvar (6346 thread). * Environment mapping is same on bumpy and non-bumpy surfaces under cvar (6354 thread). * Default console font size reduced to 5, added lower bound depending on resolution. * Added high-quality versions of panel_carved_rectangles (6515). * Added proper normal map for stainglass_saint_03 (6521). * Fixed DestroyDelay warning when closing objectives. * Fixed the only remaining non-threadsafe cvar (5600). * Minor optimization of depth shader. * Added cm_allocator debug cvar (6505). * Fixed r_lockView when compass is enabled. dev17008-10685 * Enabled shadow features specific to maps implementation (poll). * Auto-detect number of parallel threads to use in jobs system (6503). * Improved parallel images loading, parallelized sounds loading, optimized EAS (6503). * Major improvements in mission loading progress bar (6503). * Core missions are now stored uncompressed in assets SVN (6498). * Deleted a lot of old rendering code under useNewRenderPasses + some cleanup (6271). dev16996-10665 * Environment mapping supports texcoord transforms on bumpmap (6500). * Fully disabled shadows on translucent objects (6490). * Fixed dmap making almost axis-aligned visportals buggy (6480). * com_maxFps no longer quantizes by milliseconds on Windows 8+. * Now Uncapped FPS and Vsync are ON by default. * Supported Vsync control on Linux. * Added set of prototype materials (thread). * Fixes to Stone font to remove stray pixels (post). * Loot candlestick no longer toggle the candle when taken. * Optimized volumetric lights and shadows in the new Training Mission (4352). * Fixed frob_light_holder_toggle_light on entities with both skin_lit and skin_unlit. * Now combination lock supports non-door entities by activating them. * Added low-poly version of hedge model (6481). * Added tiling version of distant_cityscape_01 texture (6487). * Added missing editor image for geometric02_red_end_HD (6492). * Added building_facades/city_district decal material. * Fixed rendering with "r_useScissor 0" (6349). * Added r_lockView debug rendering cvar (thread). * Fixed regression in polygon trace model (5887). * Added a set of lampion light entityDefs.
  23. 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:
  24. @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.
×
×
  • Create New...