Jump to content
System downtime for updates - Sunday 13 July 2025 ×
The Dark Mod Forums

Search the Community

Showing results for '/tags/forums/obj/'.

  • 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. I remember one case where smoothing groups were a pain to transfer to TDM correctly: And I looked into TDM code which preprocesses LWO models. Of course it usually works fine, but it is not a reliable solution. If you encounter a model which is broken by this import code, you will have to workaround it on your side, either by tweaking the model, or by tweaking the exporter. Also, I believe I saw a large LWO model (terrain) which took a lot of time to load because of this preprocessing. OBJ format is very good because it supports multi-patch texture atlas and smooth groups topologically. There is zero preprocessing on TDM side: you'll get exactly what is written in the OBJ file. And loading large model is much faster despite OBJ being text format. Anyway, if someone wants to maintain a wiki article about the formats, then I think it would be very helpful to list all the working export tools. Names, versions, instructions and forum threads, known caveats, etc.
  2. For the people eager to play with the latest state of development, two things are provided: regular dev builds source code SVN repository Development builds are created once per a few weeks from the current trunk. They can be obtained via tdm_installer. Just run the installer, check "Get Custom Version" on the first page, then select proper version in "dev" folder on the second page. Name of any dev version looks like devXXXXX-YYYY, where XXXXX and YYYY are SVN revision numbers from which the build was created. The topmost version in the list is usually the most recent one. Note: unless otherwise specified, savegames are incompatible between any two versions of TDM! Programmers can obtain source code from SVN repository. Trunk can be checked out from here: https://svn.thedarkmod.com/publicsvn/darkmod_src/trunk/ SVN root is: https://svn.thedarkmod.com/publicsvn/darkmod_src Build instructions are provided inside repository. Note that while you can build executable from the SVN repository, TDM installation of compatible version is required to run it. Official TDM releases are compatible with source code archives provided on the website, and also with corresponding release tags in SVN. A dev build is compatible with SVN trunk of revision YYYY, where YYYY is the second number in its version (as described above). If you only want to experiment with the latest trunk, using the latest dev build gives you the maximum chance of success. P.S. Needless to say, all of this comes with no support. Although we would be glad if you catch and report bugs before the next beta phase starts
  3. Thought it would be a good idea to collate a useful list for new and old mappers alike and this post will update as we go. Abandoned works: Any WIP projects that were abandoned by the original author - http://forums.thedarkmod.com/topic/12713-abandoned-works/ Darkradiant & Darkmod shortcut settings: Some example settings for new mappers - http://forums.thedarkmod.com/topic/15152-darkradiant-and-darkmod-shortcut-folder-settings/ Darkradiant howto, must knows, tips and faqs - http://forums.thedarkmod.com/topic/12558-usefull-important-editing-links/?do=findComment&comment=272581 Info for Beginners: Newbie DarkRadiant Questions - http://forums.thedar...iant-questions/ Dark Radient Must Know Basic Intro - http://wiki.thedarkm...now_Basic_Intro Editing Tips for Beginners - http://wiki.thedarkm...s_for_Beginners Editing FAQ (Troubleshooting & How-To) - http://wiki.thedarkmod.com/index.php?title=Editing_FAQ_-_Troubleshooting_%26_How-To Sotha's excellent Mapping Tutorial series: http://forums.thedarkmod.com/topic/18680-lets-map-tdm-with-sotha-the-bakery-job/ Springheel's New Mapper's Workshop: http://forums.thedarkmod.com/topic/18945-tdm-new-mappers-workshop/ Inspiration: Collection of screenshots and images people have found online - http://forums.thedarkmod.com/topic/11610-darkmod-inspiration-thread/ Mapping Resources: List of Voice actors available for voice recording - http://modetwo.net/d...6-voice-actors/ Lengthy collection of city reference pictures - http://modetwo.net/d...rence-pictures/ Collection of texture resource sites - http://modetwo.net/d...ture-resources/ Free Ambient Tracks - http://skeksisnetlabel.wordpress.com/2009/12/30/10-songs-for-free-download-vol-10-full-moon-over-noricum/ Mapping Tools: 3 useful tools for texture creation - http://forums.thedarkmod.com/topic/18581-must-have-tools-for-the-descerning-mapper/ Modular Building: What is Modular building - http://forums.thedarkmod.com/topic/14832-modular-building-techniques/ Working example tutorial on modular building - http://forums.thedarkmod.com/topic/18680-lets-map-tdm-with-sotha-the-bakery-job/ Springheels new modular models - http://forums.thedarkmod.com/topic/18683-using-springheels-205-modules/ Some related mapper recipies - Easy Vaults - http://forums.thedarkmod.com/topic/14859-easy-vault-recipe/?hl=%2Beasy+%2Brecipe Easy Outdoors - http://forums.thedarkmod.com/topic/16159-easy-outdoors-recipe/?hl=%2Beasy+%2Brecipe Easy Caverns - http://forums.thedarkmod.com/topic/14469-quick-caverns-recipe/?hl=recipe Easy Alert Ai - http://forums.thedarkmod.com/topic/17157-easy-alert-ai-recipe/?hl=%2Beasy+%2Brecipe Easy Alert Ai Custom Behavour - http://forums.thedarkmod.com/topic/17160-easy-alert-ai-custom-behavior-recipe/?hl=recipe Tutorials: Collection of video tutorials for DR - http://modetwo.net/d...in-darkradiant/ Using Lighting and detail effectively: - http://forums.thedar...l-and-lighting/ Voice Actors list: List of available voice actors - http://forums.thedarkmod.com/topic/12556-list-of-available-voice-actors/ Usefull Console commands: A list of console commands for testing in-game - http://wiki.thedarkm...Useful_Controls
  4. Changelog of 2.14 development: dev17330-10984 * Tonemapping is now applied to game frame only, HUD and menu are not affected. Includes major & breaking changes in X-ray implementation (6606). * Now engine defines macros TDM_VERSION/TDM_REVISION/TDM_VERSION_FULL in game scripts and GUI. * Added all missing mipmaps in DDS textures (post). * Fixed crash from having many localization packs (6611). * Fixed comments parsing and automatic collision model for OBJ models (6610). * Ported some fixes from dhewm3 repo: save/load, snprintf, bad memset, some RenderSystem shutdown fixes. * Fixed number = 1 in inventory GUI on non-stackable items (thread). * More fixes in fonts (post). * Added cvar r_ssao_insubview which enables SSAO inside subviews. * Split oversized tdm_modelsXX.pk4 packages into more pieces. dev17332-10999 * Fixed Linux crash when material with custom shader is loaded during gameplay (6510). * Completely disabled old light estimate system (6546). * Now it is possible to use larger mesh models... at least static ones. * Ported some more fixes from dhewm3 repo: mostly warnings and uninitialized memory use.
  5. Story: "Sir Barrington, as he likes to be known, enjoys a prestigious reputation of having lavish yet intimate dinner parties. I've heard the tales about what goes on in the noble's dining room, but I believed none of them 'till now. Orbach, a local shop-keep who makes special deliveries to the people of 'high stature' heard Sir Henry Hughbellow raving about Sir Barrington's special 'Elixir', It cures your ails and gives you vigor... By the Hammer, it extends your very life! he exclaimed. Orbach begged Sir Henry for a small sample, and after one sip he was sure that the potion was nothing more than mineral water and spirit. He asked Sir Henry if other folks were as fond of the elixir as he was, and he found out that folks are paying handsomely for these small vials on a weekly basis. Some lords pay for exclusive treatments and bathe in the tonic. Lord Barrington even brings in an occult expert every month, where supposedly the power of the elixir is renewed by the full moon. Never one to pass up the opportunity for a good scam, Orbach has decided to take a cut of this 'elixir' business. He has made an elixir of his own, but needs to convince Sir Henry that it's really the same as the 'magical' tonic that Lord Barrington has been selling. And that's where I come in. Its rumered that Sir Barrington's prized possession is a painting of the revolutionary inventor 'Guillermo de Sohase' the day after he won the Battle of Billinsdune. If I can steal this painting, Orbach can use it to 'prove' that he also got the elixir from Sir Barrington. Once Sir Henry tells all his friends that Orbach's stolen elixir is healing his heart, soothing his pains, and igniting his libido, they'll be lining up at his shop. Its time to go." Build Time: Version 1.0 was speed build of sorts, to build upon Springheels video's with the new modules. Took roughly 20hrs to build but this ended up happening over the space of a few months.http://forums.thedarkmod.com/topic/18808-bikerdudes-speedish-build-using-the-new-modules/?hl=%2Bspeed+%2BbuildThanks: Co-auther: Obstortte for all his custom entities, scripting and showing me a thing or two about perfing.Resource: Springheel - new modulesReadables: nbhor1moreTesters: Bienie, Judith, Abusimplea, Cambridge Spy, Gerberox, MayheM, Amadeus, Goldwell, nbhor1more.Download: - mega Info: Repeat after me, "Read and explore, Read and explore"Known issues: This mission has been heavily tweaked and worked on to provide a playable experience for even low end machines.For very low end PC's please make use of the in-game LOD slider, as not only are details reduced, but the ambient_world fog is removed at the lowest setting.The medium difficulty is partially broken, the mission wont end when the player gets to the exit location. As this is the only issue with that difficulty level, I will fix this when I next update it to include the intro.
  6. Hi folks, and thanks so much to the devs & mappers for such a great game. After playing a bunch over Christmas week after many years gap, I got curious about how it all went together, and decided to learn by picking a challenge - specifically, when I looked at scripting, I wondered how hard it would be to add library calls, for functionality that would never be in core, in a not-completely-hacky-way. Attached is an example of a few rough scripts - one which runs a pluggable webserver, one which logs anything you pick up to a webpage, one which does text-to-speech and has a Phi2 LLM chatbot ("Borland, the angry archery instructor"). The last is gimmicky, and takes 20-90s to generate responses on my i7 CPU while TDM runs, but if you really wanted something like this, you could host it and just do API calls from the process. The Piper text-to-speech is much more potentially useful IMO. Thanks to snatcher whose Forward Lantern and Smart Objects mods helped me pull example scripts together. I had a few other ideas in mind, like custom AI path-finding algorithms that could not be fitted into scripts, math/data algorithms, statistical models, or video generation/processing, etc. but really interested if anyone has ideas for use-cases. TL;DR: the upshot was a proof-of-concept, where PK4s can load new DLLs at runtime, scripts can call them within and across PK4 using "header files", and TDM scripting was patched with some syntax to support discovery and making matching calls, with proper script-compile-time checking. Why? Mostly curiosity, but also because I wanted to see what would happen if scripts could use text-to-speech and dynamically-defined sound shaders. I also could see that simply hard-coding it into a fork would not be very constructive or enlightening, so tried to pick a paradigm that fits (mostly) with what is there. In short, I added a Library idClass (that definitely needs work) that will instantiate a child Library for each PK4-defined external lib, each holding an eventCallbacks function table of callbacks defined in the .so file. This almost follows the idClass::ProcessEventArgsPtr flow normally. As such, the so/DLL extensions mostly behave as sys event calls in scripting. Critically, while I have tried to limit function reference jumps and var copies to almost the same count as the comparable sys event calls, this is not intended for performance critical code - more things like text-to-speech that use third-party libraries and are slow enough to need their own (OS) thread. Why Rust? While I have coded for many years, I am not a gamedev or modder, so I am learning as I go on the subject in general - my assumption was that this is not already a supported approach due to stability and security. It seems clear that you could mod TDM in C++ by loading a DLL alongside and reaching into the vtable, and pulling strings, or do something like https://github.com/dhewm/dhewm3-sdk/ . However, while you can certainly kill a game with a script, it seems harder to compile something that will do bad things with pointers or accidentally shove a gigabyte of data into a string, corrupt disks, run bitcoin miners, etc. and if you want to do this in a modular way to load a bunch of such mods then that doesn't seem so great. So, I thought "what provides a lot of flexibility, but some protection against subtle memory bugs", and decided that a very basic Rust SDK would make it easy to define a library extension as something like: #[therustymod_lib(daemon=true)] mod mod_web_browser { use crate::http::launch; async fn __run() { print!("Launching rocket...\n"); launch().await } fn init_mod_web_browser() -> bool { log::add_to_log("init".to_string(), MODULE_NAME.to_string()).is_ok() } fn register_module(name: *const c_char, author: *const c_char, tags: *const c_char, link: *const c_char, description: *const c_char) -> c_int { ... and then Rust macros can handle mapping return types to ReturnFloat(...) calls, etc. at compile-time rather than having to add layers of function call indirection. Ironically, I did not take it as far as building in the unsafe wrapping/unwrapping of C/C++ types via the macro, so the addon-writer person then has to do write unsafe calls to take *const c_char to string and v.v.. However, once that's done, the events can then call out to methods on a singleton and do actual work in safe Rust. While these functions correspond to dynamically-generated TDM events, I do not let the idClass get explicitly leaked to Rust to avoid overexposing the C++ side, so they are class methods in the vtable only to fool the compiler and not break Callback.cpp. For the examples in Rust, I was moving fast to do a PoC, so they are not idiomatic Rust and there is little error handling, but like a script, when it fails, it fails explicitly, rather than (normally) in subtle user-defined C++ buffer overflow ways. Having an always-running async executor (tokio) lets actual computation get shipped off fast to a real system thread, and the TDM event calls return immediately, with the caller able to poll for results by calling a second Rust TDM event from an idThread. As an example of a (synchronous) Rust call in a script: extern mod_web_browser { void init_mod_web_browser(); boolean do_log_to_web_browser(int module_num, string log_line); int register_module(string name, string author, string tags, string link, string description); void register_page(int module_num, bytes page); void update_status(int module_num, string status_data); } void mod_grab_log_init() { boolean grabbed_check = false; entity grabbed_entity = $null_entity; float web_module_id = mod_web_browser::register_module( "mod_grab_log", "philtweir based on snatcher's work", "Event,Grab", "https://github.com/philtweir/therustymod/", "Logs to web every time the player grabs something." ); On the verifiability point, both as there are transpiled TDM headers and to mandate source code checkability, the SDK is AGPL. What state is it in? The code goes from early-stage but kinda (hopefully) logical - e.g. what's in my TDM fork - through to basic, what's in the SDK - through to rough - what's in the first couple examples - through to hacky - what's in the fun stretch-goal example, with an AI chatbot talking on a dynamically-loaded sound shader. (see below) The important bit is the first, the TDM approach, but I did not see much point in refining it too far without feedback or a proper demonstration of what this could enable. Note that the TDM approach does not assume Rust, I wanted that as a baseline neutral thing - it passes out a short set of allowed callbacks according to a .h file, so language than can produce dynamically-linkable objects should be able to hook in. What functionality would be essential but is missing? support for anything other than Linux x86 (but I use TDM's dlsym wrappers so should not be a huge issue, if the type sizes, etc. match up) ability to conditionally call an external library function (the dependencies can be loaded out of order and used from any script, but now every referenced callback needs to be in place with matching signatures by the time the main load sequence finishes or it will complain) packaging a .so+DLL into the PK4, with verification of source and checksum tidying up the Rust SDK to be less brittle and (optionally) transparently manage pre-Rustified input/output types some way of semantic-versioning the headers and (easily) maintaining backwards compatibility in the external libraries right now, a dedicated .script file has to be written to define the interface for each .so/DLL - this could be dynamic via an autogenerated SDK callback to avoid mistakes maintaining any non-disposable state in the library seems like an inherently bad idea, but perhaps Rust-side Save/Restore hooks any way to pass entities from a script, although I'm skeptical that this is desirable at all One of the most obvious architectural issues is that I added a bytes type (for uncopied char* pointers) in the scripting to be useful - not for the script to interact with directly but so, for instance, a lib can pass back a Decl definition (for example) that can be held in a variable until the script calls a subsequent (sys) event call to parse it straight from memory. That breaks a bunch of assumptions about event arguments, I think, and likely save/restore. Keen for suggestions - making indexed entries in a global event arg pointer lookup table, say, that the script can safely pass about? Adding CreateNewDeclFromMemory to the exposed ABI instead? While I know that there is no network play at the moment, I also saw somebody had experimented and did not want to make that harder, so also conscious that would need thought about. One maybe interesting idea for a two-player stealth mode could be a player-capturable companion to take across the map, like a capture-the-AI-flag, and pluggable libs might help with adding statistical models for logic and behaviour more easily than scripts, so I can see ways dynamic libraries and multiplayer would be complementary if the technical friction could be resolved. Why am I telling anybody? I know this would not remotely be mergeable, and everyone has bigger priorities, but I did wonder if the general direction was sensible. Then I thought, "hey, maybe I can get feedback from the core team if this concept is even desirable and, if so, see how long that journey would be". And here I am. [EDITED: for some reason I said "speech-to-text" instead of "text-to-speech" everywhere the first time, although tbh I thought both would be interesting]
  7. "the only format added specifically for TDM, so not very widespread" – this sounds weird. OBJ is one of the most popular formats in 3d modelling applications and game engines. If you mean that obj support has been added to TDM fairly recently, and there aren't many missions yet that use it – that makes more sense.
  8. hey stgatilov, I'm trying to compile TDM source, but it seems the source compilation guide here is out of date, it still recommends VS2017 when the source now requires VS 2022 and after installing the latest VS, I get a bunch of unresolved external symbol errors for OpenAL mostly, I assume I need to update OpenAL soft? I'm still a little green about this type of errors, when they happen, they are the ones that stump me the most. Severity Code Description Project File Line Suppression State Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(helpers.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(alfstream.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(ambdec.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(chorus.cpp.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(fshifter.cpp.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(modulator.cpp.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(vmorpher.cpp.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(threads.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(alconfig.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(cpu_caps.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(convolution.cpp.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(winmm.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(wave.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(hrtf.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(panning.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(event.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(null.cpp.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(wasapi.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(dsound.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(alc.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(logging.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(voice.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(auxeffectslot.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\pugixml.lib(pugixml.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(buffer.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(source.obj) 1 Error LNK2001 unresolved external symbol __GSHandlerCheck_EH4 DarkModTools L:\darkmod_src\OpenAL32.lib(state.obj) 1 Error LNK2019 unresolved external symbol __imp___std_init_once_begin_initialize referenced in function alcOpenDevice DarkModTools L:\darkmod_src\OpenAL32.lib(alc.obj) 1 Error LNK2019 unresolved external symbol __imp___std_init_once_complete referenced in function alcOpenDevice DarkModTools L:\darkmod_src\OpenAL32.lib(alc.obj) 1 Error LNK2001 unresolved external symbol __std_reverse_copy_trivially_copyable_1 DarkModTools L:\darkmod_src\OpenAL32.lib(hrtf.obj) 1 Error LNK2019 unresolved external symbol __std_reverse_copy_trivially_copyable_8 referenced in function "class std::unique_ptr<struct HrtfStore,struct std::default_delete<struct HrtfStore> > __cdecl `anonymous namespace'::LoadHrtf02(class std::basic_istream<char,struct std::char_traits<char> > &,char const *)" (?LoadHrtf02@?A0xe8b25d95@@YA?AV?$unique_ptr@UHrtfStore@@U?$default_delete@UHrtfStore@@@std@@@std@@AEAV?$basic_istream@DU?$char_traits@D@std@@@3@PEBD@Z) DarkModTools L:\darkmod_src\OpenAL32.lib(hrtf.obj) 1 Error LNK2019 unresolved external symbol __std_reverse_copy_trivially_copyable_4 referenced in function "void __cdecl MixDirectHrtfBase<&void __cdecl `anonymous namespace'::ApplyCoeffs(class std::array<float,2> * __restrict,unsigned __int64,class std::array<class std::array<float,2>,128> const &,float,float)>(class std::array<float,1024> &,class std::array<float,1024> &,class al::span<class std::array<float,1024> const ,-1>,class std::array<float,2> * __restrict,float *,struct HrtfChannelState *,unsigned __int64,unsigned __int64)" (??$MixDirectHrtfBase@$1?ApplyCoeffs@?A0xd07b7227@@YAXPEIAV?$array@M$01@std@@_KAEBV?$array@V?$array@M$01@std@@$0IA@@4@MM@Z@@YAXAEAV?$array@M$0EAA@@std@@0V?$span@$$CBV?$array@M$0EAA@@std@@$0?0@al@@PEIAV?$array@M$01@1@PEAMPEAUHrtfChannelState@@_K5@Z) DarkModTools L:\darkmod_src\OpenAL32.lib(mixer_c.obj) 1 Error LNK2001 unresolved external symbol __std_reverse_copy_trivially_copyable_4 DarkModTools L:\darkmod_src\OpenAL32.lib(mixer_sse.obj) 1 Error LNK1120 6 unresolved externals DarkModTools L:\darkmod\TheDarkModx64.exe 1
  9. Author note: It's hard to believe it's already been a year since Act 1 came out! Well during this mission the player will be following Corbin into the Grimwood district to followup on a lead from last night (Act 1) .. the mysterious tablet! This mission is my first time including full EFX support as well as a HD briefing video file, additionally a new script has been added crafted by the talented Obsttorte which has loot flying towards the player when you pick it up. On a level design front I have tried to change things up a bit by really catering towards a number of play styles, this mission can be completely ghosted or you can use the tools at your disposal to wreak havoc on the citizens of Northdale. For the first time I have tried to create more sandbox environments which don't offer clear answers handed directly to you, so if you're having trouble figuring something out try a different method. This mission takes between 1 - 2 hours to finish depending on the difficulty you play on and how thoroughly you explore. I hope you enjoy your night in Northdale! - Goldwell Voice actors Fen Phoenix Goldwell Random_taffer Yandros Beta testers Amadeus Boiler's Hiss Cambridge Spy Chakkman Crowind Epifire Kingsal SquadaFroinx Custom Assets Andreas Rocha DrK Epifire Grayman Kingsal MalachiAD Obsttorte Sotha Springheel SquadaFroinx Purgator With special thanks to Epifire for creating a large collection of custom models, Grayman for helping out with coding, Kingsal for drawing the ingame map and Moonbo for his script revision on the briefing video. Available via in-game downloader MIRROR File Size: 417 mb EDIT: If you are having performance issues please consult this post by Nbohr1more which may address your issue http://forums.thedarkmod.com/topic/19936-fan-mission-shadows-of-northdale-act-ii-by-goldwell-20190320/page-2?do=findComment&comment=436271
  10. Is there something wrong with the forums lately, or is it my browser? I've been having trouble formatting posts, and just now I couldn't format anything at all.

    I'm using Vivaldi.

    Usually I have to: select text, click bold, nothing happens, select again, click bold, then it works. 

    Same for other stuff, like creating spoilers, bullet points, links. Nothing works the first time. 

    1. datiswous

      datiswous

      I have no problem. I use Firefox. @Zerg Rush also uses Vivaldi. Have you tried without extensions, or in another browser?

      (btw. bold, italic and underline have shortcut keys: Ctrl B, Ctrl I and Ctrl U, you could try that)

       

  11. The Dark Mod 2.13 has been released! A new era in accurate AI Vision! When id Software released the Doom 3 modding SDK, The Dark Mod team saw the potential for something more than a multi-player cops vs robbers game like Thievery UT. The sheer amount of access to essential game-play systems meant that a true Thief style experience could potentially be created. One of the first things the team did was to investigate how a light-gem system could be implemented. Having a good way for both the player and AI to know when the player is visible to others is a crucial part of the Thief experience so if we couldn’t build it then the dream of a Thief style experience was over. Fortunately, there were enough parts of the AI visual logic and more than a few stub pieces of the Render code that gave us the ability to build a robust system. The downside of the light-gem system was performance. Even though we did our best to limit the viewport and resolution of the light-gem image captures, often the light-gem would cut FPS in half ( or less ). This was pretty painful, especially since most computers could just barely run vanilla Doom 3 at acceptable FPS. After this system was fully functional, other aspects of AI vision were investigated. Obviously, we could not afford to run the light-gem render for every object or body the AI might see so it was decided that the AI would do a more simplified light-gem calculation for things other than the player. This meant that ( to the AI visual scan ) all light volumes would be either cubes or pyramids with perfect exponential falloff. We would run a line-of-sight check to the objects then ( if it hit ) calculate the pixel brightness by the location of the spot in relation to the center of the light(s). This was far cheaper than rendering the whole scene but heavily impacted accuracy. Many solutions were proposed to improve things but a solution evaded us for years. 2.13 changes things! Now we have a "stochastic sampler" model that does regular measurements of the actual light volume pixels and builds a "running average" of how illuminated different entities are. The days of seeing knocked-out AI in the middle of a bright spotlight get ignored are over. Now all AI and loot entities (etc) essentially have their own light-gem and it performs excellently! Magnificent Mission Management! Daft Mugi has drastically improved the GUI menus for mission management. The Dark Mod mission list and in-game downloader now have a search filter window that follows modern conventions of reducing the listed items as each new letter eliminates a possible matching mission name. Both lists can be sorted by actual name ( The Rats Triumphant ) or Chicago Style ( Rats Triumphant, The ). Additional mission details ( readme data ) can now be scrolled so players can see more information about the mission without having to navigate to the darkmod/fms folders. The menus have also been tuned with smaller font sizes for more practical mission listing and have been hardened against buggy order of operations issues so that you will be far less likely to encounter strange issues or crashes when downloading and installing missions. Parallax Occlusion Mapping! Stgatilov has added the oft requested POM feature to the latest Dark Mod release! WellingtonCrab has coordinated with him to provide examples and check the functionality and quality. Now The Dark Mod is ready to offer a quantum leap in perceived geometric detail with all sorts of surfaces realistically showing 3D parallax rather than the flatter looking normal maps we usually offer. WellingtonCrab also created many texture variants that are tuned to look better with POM enabled. Other Graphics Goodies! Now cubemaps \ environment maps respect more stage keywords. This means that faked reflections on water shaders can now move in relation to the water texture movement offering a more convincing illusion! Subviews ( cameras, portals, mirrors, xray, etc ) can now be nested. You can now have a skybox render in a camera view, etc. Volumetric lights and particles now render in mirrors! Alpha-tested surfaces get alpha shadows in Shadow Maps mode. Tone-mapping now supports range compression to prevent unwanted overbright areas. Arcturus has introduced some new metal materials that use improved cubemaps as well as skyboxes with clouds that use POM! Stability and Performance! The console variable system ( CVAR ) has been improved to be thread safe. This should resolve some rare crashes that involve weapon scripts that rely on CVAR values. We now automatically detect the number of CPU cores and allocate Jobs based on the detected specifications. Level loading has been given more parallel execution optimizations including optimizations for loading audio samples in parallel. Uncapped FPS is enabled by default so Linux players will not have a poor first time experience and many audio and video playback timing bugs that occur only in classic capped mode are avoided. Finally, Linux vsync support has been greatly improved. Improved Training Mission! The Training Mission is supposed to help players understand the basics of Dark Mod game-play and controls. It was created to coincide with The Dark Mod v1.0 and was not significantly altered until TDM v1.08 ( when Bikerdude did some texture replacement for 2.0 standalone and improved the overall visuals ). As such, many new game-play features that were added since 1.0 were never included in the mission. Now the mission has been upgraded to include more game-play features such as the Vine Arrow as well as getting further visual upgrades and EFX Reverb! Drunken AI! Now that the AI have better visual accuracy, Amadeus decided to balance things out by fixing many of the broken behaviors of Drunken AI so that they are more reliable and consistent for use in missions by default ( no need to extensively customize the defs or use scripting to improve them ). Potions! Dragofer and Amadeus have completed the work on the Slowfall potion originally prototyped by VanishedOne. They also incorporated the invisibility potion by Kingsal ! These now have pre-defined slots in the gameplay menu as well as the default shop menu design. Assets Galore! Along with new POM textures, we now have: A new modular pipe set A new Lampion entity Some new Factory Machine entities Ornate wood and stone relief textures A new AI praying animation A new AI smoking animation And many fixes or improvements to existing assets EFX Reverb Location Preset! Frost_Salamander took some time away from his continued work on the excellent “The Lieutenant” series missions to make EFX reverb setup easier for himself and other mission authors. You can now add EFX preset spawnargs to location entities rather than having to use the EFX def file. Translation Packs! Between TDM 1.06 and 2.0 Tels and the translating community started translating many missions but these translations required that the original mission be altered in a way that made it harder for the mission authors to revise. That meant that translation packs were in limbo being hosted by 3rd party sites \ forums along with their orphaned old missions. The translators over at the Darkfate forums came up with an solution by including not only the translation strings in the translation pack but also the altered map files, GUI defs, etc that had translation work done to them. This would leave the original mission untouched but allow translation packs to override some parts. We have gone through the old archives of these translations and have reworked them to work with the latest version of TDM (and the associated missions). Most of the translations are Russian ( due to the continued work of the Darkfate people ) but many of the early TDM missions also have German, Italian, French, etc translations too. Also Nolok contributed a brand new Catalan menu translation! Subtitles! Datiswous has been creating story subtitles for many of the existing missions in the TDM mission database. Most authors have incorporated these into their official releases, otherwise players can still add them to the FM folder. A detailed list of changes can be seen here: https://wiki.thedarkmod.com/index.php?title=What's_new_in_TDM_2.13 To UPDATE, simply run the tdm_installer.exe file in your darkmod folder. Note that tdm_update.exe is no longer supported, but you can download the new installer from the Downloads page if you don’t have it yet. Please be aware that old saved games will not be compatible with 2.13, so finish any missions you might be in the middle of first! Also, some missions created prior to 2.13 may need to be updated so they will be playable in 2.13. Before upgrading, set TDM to use one of the built-in missions ( Training Mission, A New Job, Tears of St Lucia ) then use the in-game mission downloader to check for updates
      • 33
      • Like
      • Thanks
  12. Today I did a bit of an experiment! I wanted to see if I could get a dark radiant map into garry's mod, the quickest and dirtiest and not-workiest method is "OBJ2VMF" which converts .obj models into VMF files for hammer to then compile, the way its supposed to work is that you input a 6 sided cube and it turns it into a 6 brush room (not exactly ideal for this since that's not how TDM maps work, this honestly would have been a better idea with any thief game from 1 to the one from 2014 since they all work like that) so what ended up happening was that for every brush there was 6 brushes would be ontop of that almost inflating everything in the map like a balloon, map scale was also an issue that I couldn't fine-tune easily either so the scale is way off ontop of everything being inflated making the space inside the map very tiny! anyways heres the result of that and it looks almost nothing like footloose (plus I did add a bunch of random props in gmod for funsies and better visibility since the process involved replacing all the textures with dev ones that look very flat when in full-bright)

    https://streamable.com/ctmh58

    (streamable link will expire in 2 days but I'll have a spoken word version of this post along side the video and other fun images relating to the bsp inflation effect in the next "Goblin Secrets" video next month)

  13. Regarding .obj export in darkradiant, a 'quad export' and an 'export textures with model' option would be great, but I understand that is all complicated and time-consuming stuff since the export script is already tuned for triangles.
  14. I'm trying to get DR to work with my Godot projects, to replace TrenchBroom, but my first attempts haven't been fruitful. I need DR to see my project's textures, 3D models and entity definitions. I told DR where to find my game in the Game Setup window, but I'm having some issues. As far as entities go, I think I'm probably fine. I unpacked a few of TDM's .pk4 files and found the folder def with many .def files. I tried placing misc.def and tdm_base.def in there, to see if DR would load those entities after restarting, and it does but only if the game type is TDM. I'm probably fine with that, as it makes no difference, as far as I can tell. The Godot importer only cares about the contents of the .map file, which I know I can export in a few formats, so that should be fine (Q3 at least should work fine). However, DR is not seeing my project's textures. I don't know if DR can work with .png files, but I brought in some .tga files from TDM for testing and DR doesn't see them either. So something is missing, but I don't know what it is. I tried placing the textures in a textures folder at the project's root, but nothing happened. Although ideally I'd like to have the textures in root/assets/textures. I haven't tried to use 3D models at all yet, so I'm in complete darkness about that. I wonder what formats DR supports, though. I usually work with .obj, which bypasses Godot's import weirdness.
  15. I did a bit of digging through the forum settings and I could not find any configuration for this. Looking at the underlying code, the comment count per page is hardcoded to 3. I could update the code, but I'm reluctant to do so as this would need to be re-applied after each update. That being said, it looks like we should start to brace for status updates being removed as Invision Forums v5 no longer supports status updates (we're still on v4.x): https://invisioncommunity.com/deprecation-tracker/status-updates-r19/ https://invisioncommunity.com/forums/topic/480551-status-updates-have-been-removed-in-v5/
  16. And some info can be found on this forum topics and wiki. Wiki article: https://wiki.thedarkmod.com/index.php?title=Parallax_mapping Topic: https://forums.thedarkmod.com/index.php?/topic/22574-experimental-support-of-parallax-mapping-in-213/
  17. Here is what I know: static models: LWO: somewhat default small uncompressed size since it is binary loading code is horrible, can be slow and break your model (smoothing groups might be pain) ASE: larger uncompressed size since it is text (compressed size is probably OK?) loading code is as awful as for LWO OBJ: the only format added specifically for TDM, so not very widespread uncompressed size is large because it is text (compressed size is probably OK?) loading is very fast and does not "fix"/break your model, you'll get exactly the topology & smoothing you exported ragdolls: The only format is .af text format, which is handmade for Doom 3. No changes here since Doom 3. It is notoriously hard to create/edit. The only tool is the Windows-only builtin command editAFs, and this is the only in-game editor which has no outside alternatives. We wanted to port it to either DarkRadiant or at least better GUI framework, but it did not happen. animation: MD5: md5mesh --- Doom 3 custom text format which represents a mesh attached to skeleton (joints, weights, etc.) md5anim --- custom text format that represents an animation of a skeleton. I'm pretty sure Blender has some working exporter for these. MD3: This is Doom 3 custom text format which represents linear vertex morphing. It is rarely used, but it is a perfect fit in case animation is clearly not "skeletal" (e.g. animated grass or water). I suppose some converters can be found?... Ask @Arcturus, he used it. Also there are some hardcoded pieces of code which transform a mesh into something else, that are enabled via "deform" keyword in material. The most known example is particles. All of this is very specific and uses custom formats. There is also MA loader (Maya ascii format?), but it is not used an I have no idea how functional it is. Also there is FLT model, but no idea what it is. video: The mainstream idea is to use (mp4 + h264 + aac) for FMV. There is also legacy support for ROQ, but I guess you should not use it today. I think all the other formats are disabled in FFmpeg build that we use. There is no common understanding about in-game videos, I'm not even sure it is a useful case. One specific case is animated textures (e.g. water), and they are usually implemented as a pack of copy/pasted if-s in material file, which point to different frame images. Something like "Motion JPEG/TGA/PNG/DDS" Maybe one day we will make this approach easier to use... textures and images: TGA: The simplest uncompressed format, basically default in case compression is not used. PNG: Lossless compression, but pretty slow to load. Should be OK for some GUI images, but probably not a good idea to e.g. write all normal maps as PNGs: I imagine loading times will increase noticeably if we do so JPG: Lossy format, but pretty small and rather fast to load. I think it is usually used for screenshots and maybe GUI images, otherwise not popular. DDS: This is container which can in principle store both compressed and uncompressed data, but I think we use it only for precompressed textures. TDM supports DXT1, DXT3, DXT5, RGTC compressed formats (each of these formats has a bunch of pseudonymes). If you use compressed DDS, then you can be sure it will be displayed as is, as no further processing it applied to it. Sometimes it is good, sometimes it is bad. The engine has fast compressor/decompressed for all texture compression formats, so if you supply TGAs and they are compressed on load, you only lose in mission size. Images inside guis (briefing, readables) use the same material loading system, so they should support all the same image formats. sound files: OGG: Relatively widespread open format with lossy compression. I guess it is used for everything by default, which seems OK to me. OGG files are loaded on level start, but decompressed on the fly. WAV: Simple uncompressed sound file. Obviously larger than OGG, not sure why it is used sometimes (maybe less compression artifacts?) The only thing I know is that the "shakes" feature of materials specifically asks for WAV.
  18. Hello taffers, the people over at TTLG forums have started a speedbuild game jam. 1st Thief Speedbuild Jam It's not a contest, and you have a tentative submission date of Dec 1, to get a mission built for T1-3 or TDM. Looks fun, and I'm going to participate too.
  19. Oohhhh, the day has come! This old lurker releases another creation of his deranged mind...! What has he in store? Does it involve sunlight and pollen and hayfever? Will it involve strange towers and priests with bad breath? Naah, just some mediocre airship type of mission, aimed at the Anniversary mapping contest! I have a lengthy/humourly rant/lore for some of the building process for anyone interrested, in spoiler tags. According to DarkRadiant I have worked 570 hours on this, and that doesn't take into account all hours of coding and scripting. This feels like an insanely huge amount of mapping time for this small mission but I try not to judge myself. DarkRadiant says 570 so...I say thanks to all calm hours at the night shift at work where I could sit and script and write readables. And I also humbly bow myself to the scripting genuses that are on the forums. A special thanks to my girlfriend who (almost) always lets me talk about my projects. She has also written some of the readables and voiced some recordings in the mission. Thanks to Dragofer, Mirceakitsune and Melchior for much needed scripting help. Thanks to YouTube channels BGM President and Sound Effects where I've borrowed some music and sound effects. Thanks to my betatesters; nbohr1more, Bergante, datiswous, Wesp5, nightmare, Jaxa and Cambridge Spy. And a big thank you to the mod in general for still being alive and supportive! ########################################## MISSION RELATED STUFF ########################################## On an airship, heading for Flowerdale a lot of strange things can happen. As some people guzzle down liquor in the bar, some others skulk around in the shadows. Certain people cannot be trusted and there are even those that kill for a living. Somebody may or may not work for foreign powers. But everyone yearns for those shiny pennies. There are some strange things in the cargo, huge coffers that can hold bodies, alive and dead. This story may unfold in several different ways; Three characters can be chosen; Zacharias the thief, Oliver Mortimer, the assassin or Rupert Peabody, youngling of the Wizlas woodfolk. DOWNLOAD LINK https://drive.google.com/file/d/10w_SJSBAxxVFYTwPjJhIo48fEzvuTo1M/view?usp=sharing
  20. Okay this is just quick have to go to work: Build Log Build started: Project: DarkRadiant, Configuration: Release|Win32 Command Lines Creating temporary file "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000A725242376.rsp" with contents [ /Ob2 /Oi /Ot /GL /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../radiant" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../libs" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/boost/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libxml2/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/gtk-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/atk-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/glib-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/cairo" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/pango-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/glib-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/gtk-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/glew/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libiconv/include" /D "_CRT_SECURE_NO_DEPRECATE" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_VC80_UPGRADE=0x0710" /GF /FD /MD /GS- /Fo"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\\" /Fd"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\vc80.pdb" /W4 /c /Zi /TP /wd4610 /wd4510 /wd4512 /wd4505 /wd4100 /wd4127 /wd4996 /wd4244 /wd4355 /EHsc "..\..\radiant\log\StringLogDevice.cpp" "..\..\radiant\log\LogWriter.cpp" "..\..\radiant\log\LogStreamBuf.cpp" "..\..\radiant\log\LogStream.cpp" "..\..\radiant\log\LogFile.cpp" "..\..\radiant\log\COutRedirector.cpp" "..\..\radiant\layers\LayerSystem.cpp" "..\..\radiant\layers\LayerCommandTarget.cpp" "..\..\radiant\referencecache\NullModelNode.cpp" "..\..\radiant\referencecache\ModelCache.cpp" "..\..\radiant\xyview\XYWnd.cpp" "..\..\radiant\xyview\GlobalXYWnd.cpp" "..\..\radiant\ui\layers\LayerControlDialog.cpp" "..\..\radiant\ui\layers\LayerControl.cpp" "..\..\radiant\ui\layers\LayerContextMenu.cpp" "..\..\radiant\ui\surfaceinspector\SurfaceInspector.cpp" "..\..\radiant\ui\splash\Splash.cpp" "..\..\radiant\ui\texturebrowser\TextureBrowser.cpp" "..\..\radiant\ui\transform\TransformDialog.cpp" "..\..\radiant\ui\prefdialog\PrefPage.cpp" "..\..\radiant\ui\prefdialog\PrefDialog.cpp" "..\..\radiant\ui\patch\PatchThickenDialog.cpp" "..\..\radiant\ui\patch\PatchInspector.cpp" "..\..\radiant\ui\patch\PatchCreateDialog.cpp" "..\..\radiant\ui\patch\BulgePatchDialog.cpp" "..\..\radiant\ui\particles\ParticlesChooser.cpp" "..\..\radiant\ui\overlay\OverlayDialog.cpp" "..\..\radiant\ui\overlay\Overlay.cpp" "..\..\radiant\ui\ortho\OrthoContextMenu.cpp" "..\..\radiant\ui\mru\MRUMenuItem.cpp" "..\..\radiant\ui\mru\MRU.cpp" "..\..\radiant\ui\modelselector\ModelSelector.cpp" "..\..\radiant\ui\menu\FiltersMenu.cpp" "..\..\radiant\ui\mediabrowser\MediaBrowser.cpp" "..\..\radiant\ui\mapinfo\ShaderInfoTab.cpp" "..\..\radiant\ui\mapinfo\ModelInfoTab.cpp" "..\..\radiant\ui\mapinfo\MapInfoDialog.cpp" "..\..\radiant\ui\mapinfo\EntityInfoTab.cpp" "..\..\radiant\ui\lightinspector\LightInspector.cpp" "..\..\radiant\ui\findshader\FindShader.cpp" "..\..\radiant\ui\entitychooser\EntityClassTreePopulator.cpp" "..\..\radiant\ui\entitychooser\EntityClassChooser.cpp" "..\..\radiant\ui\einspector\Vector3PropertyEditor.cpp" "..\..\radiant\ui\einspector\TexturePropertyEditor.cpp" "..\..\radiant\ui\einspector\SoundPropertyEditor.cpp" "..\..\radiant\ui\einspector\SoundChooser.cpp" "..\..\radiant\ui\einspector\SkinPropertyEditor.cpp" "..\..\radiant\ui\einspector\SkinChooser.cpp" "..\..\radiant\ui\einspector\PropertyEditorFactory.cpp" "..\..\radiant\ui\einspector\PropertyEditor.cpp" "..\..\radiant\ui\einspector\ModelPropertyEditor.cpp" "..\..\radiant\ui\einspector\LightTextureChooser.cpp" "..\..\radiant\ui\einspector\FloatPropertyEditor.cpp" "..\..\radiant\ui\einspector\EntityPropertyEditor.cpp" "..\..\radiant\ui\einspector\EntityInspector.cpp" "..\..\radiant\ui\einspector\ComboBoxPropertyEditor.cpp" "..\..\radiant\ui\einspector\ColourPropertyEditor.cpp" "..\..\radiant\ui\einspector\ClassnamePropertyEditor.cpp" "..\..\radiant\ui\einspector\BooleanPropertyEditor.cpp" "..\..\radiant\ui\einspector\AddPropertyDialog.cpp" "..\..\radiant\ui\common\TexturePreviewCombo.cpp" "..\..\radiant\ui\common\SoundShaderPreview.cpp" "..\..\radiant\ui\common\ShaderSelector.cpp" "..\..\radiant\ui\common\ShaderChooser.cpp" "..\..\radiant\ui\common\RenderableAABB.cpp" "..\..\radiant\ui\common\ModelPreview.cpp" "..\..\radiant\ui\commandlist\ShortcutChooser.cpp" "..\..\radiant\ui\commandlist\CommandList.cpp" "..\..\radiant\ui\about\AboutDialog.cpp" "..\..\radiant\textool\item\PatchVertexItem.cpp" "..\..\radiant\textool\item\PatchItem.cpp" "..\..\radiant\textool\item\FaceItem.cpp" "..\..\radiant\textool\item\BrushItem.cpp" "..\..\radiant\textool\TexToolItem.cpp" "..\..\radiant\textool\TexTool.cpp" "..\..\radiant\settings\Win32Registry.cpp" "..\..\radiant\settings\PreferenceSystem.cpp" "..\..\radiant\settings\GameManager.cpp" "..\..\radiant\settings\GameFileLoader.cpp" "..\..\radiant\settings\Game.cpp" "..\..\radiant\selection\shaderclipboard\Texturable.cpp" "..\..\radiant\selection\shaderclipboard\ShaderClipboard.cpp" "..\..\radiant\selection\algorithm\Transformation.cpp" "..\..\radiant\selection\algorithm\Shader.cpp" "..\..\radiant\selection\algorithm\Primitives.cpp" "..\..\radiant\selection\algorithm\ModelFinder.cpp" "..\..\radiant\selection\algorithm\GroupCycle.cpp" "..\..\radiant\selection\algorithm\Group.cpp" "..\..\radiant\selection\algorithm\General.cpp" "..\..\radiant\selection\algorithm\Curves.cpp" "..\..\radiant\selection\TransformationVisitors.cpp" "..\..\radiant\selection\SelectObserver.cpp" "..\..\radiant\selection\SelectionTest.cpp" "..\..\radiant\selection\SelectedNodeList.cpp" "..\..\radiant\selection\RadiantWindowObserver.cpp" "..\..\radiant\selection\RadiantSelectionSystem.cpp" "..\..\radiant\selection\Planes.cpp" "..\..\radiant\selection\Manipulators.cpp" "..\..\radiant\selection\ManipulateObserver.cpp" "..\..\radiant\selection\Manipulatables.cpp" "..\..\radiant\selection\Intersection.cpp" "..\..\radiant\selection\BestPoint.cpp" "..\..\radiant\render\backend\OpenGLStateMap.cpp" "..\..\radiant\render\backend\OpenGLShaderPass.cpp" "..\..\radiant\render\backend\OpenGLShader.cpp" "..\..\radiant\render\backend\GLProgramFactory.cpp" "..\..\radiant\render\OpenGLShaderCache.cpp" "..\..\radiant\render\OpenGLModule.cpp" "..\..\radiant\patch\PatchNode.cpp" "..\..\radiant\patch\PatchModule.cpp" "..\..\radiant\patch\PatchBezier.cpp" "..\..\radiant\patch\Patch.cpp" "..\..\radiant\namespace\NamespaceFactory.cpp" "..\..\radiant\namespace\Namespace.cpp" "..\..\radiant\modulesystem\ModuleRegistry.cpp" "..\..\radiant\modulesystem\ModuleLoader.cpp" "..\..\radiant\modulesystem\DynamicLibraryLoader.cpp" "..\..\radiant\modulesystem\DynamicLibrary.cpp" "..\..\radiant\modulesystem\ApplicationContextImpl.cpp" "..\..\radiant\map\algorithm\Traverse.cpp" "..\..\radiant\map\RootNode.cpp" "..\..\radiant\map\RegionManager.cpp" "..\..\radiant\map\PointFile.cpp" "..\..\radiant\map\MapResourceManager.cpp" "..\..\radiant\map\MapResource.cpp" "..\..\radiant\map\MapPositionManager.cpp" "..\..\radiant\map\MapPosition.cpp" "..\..\radiant\map\MapFileManager.cpp" "..\..\radiant\map\Map.cpp" "..\..\radiant\map\FindMapElements.cpp" "..\..\radiant\map\AutoSaver.cpp" "..\..\radiant\clipper\ClipPoint.cpp" "..\..\radiant\clipper\Clipper.cpp" "..\..\radiant\camera\GlobalCamera.cpp" "..\..\radiant\camera\CamWnd.cpp" "..\..\radiant\camera\CameraSettings.cpp" "..\..\radiant\camera\Camera.cpp" "..\..\radiant\brushexport\BrushExportOBJ.cpp" "..\..\radiant\brush\csg\BrushByPlaneClipper.cpp" "..\..\radiant\brush\export\CollisionModel.cpp" "..\..\radiant\brush\Winding.cpp" "..\..\radiant\brush\TextureProjection.cpp" "..\..\radiant\brush\TexDef.cpp" "..\..\radiant\brush\FixedWinding.cpp" "..\..\radiant\brush\FaceTexDef.cpp" "..\..\radiant\brush\FaceShader.cpp" "..\..\radiant\brush\FacePlane.cpp" "..\..\radiant\brush\FaceInstance.cpp" "..\..\radiant\brush\Face.cpp" "..\..\radiant\brush\BrushTokenImporter.cpp" "..\..\radiant\brush\BrushTokenExporter.cpp" "..\..\radiant\brush\BrushPrimitTexDef.cpp" "..\..\radiant\brush\BrushNode.cpp" "..\..\radiant\brush\BrushModule.cpp" "..\..\radiant\brush\Brush.cpp" "..\..\radiant\windowobservers.cpp" "..\..\radiant\view.cpp" "..\..\radiant\timer.cpp" "..\..\radiant\select.cpp" "..\..\radiant\referencecache.cpp" "..\..\radiant\RadiantModule.cpp" "..\..\radiant\patchmanip.cpp" "..\..\radiant\mainframe.cpp" "..\..\radiant\main.cpp" "..\..\radiant\gtkmisc.cpp" "..\..\radiant\gtkdlgs.cpp" "..\..\radiant\entity.cpp" "..\..\radiant\brushmanip.cpp" ] Creating command line "cl.exe @"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000A725242376.rsp" /nologo /errorReport:prompt" Creating temporary file "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000A825242376.rsp" with contents [ /Ob2 /Oi /Ot /GL /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../radiant" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../libs" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/boost/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libxml2/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/gtk-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/atk-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/glib-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/cairo" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/pango-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/glib-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/gtk-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/glew/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libiconv/include" /D "_CRT_SECURE_NO_DEPRECATE" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_VC80_UPGRADE=0x0710" /GF /FD /MD /GS- /Fo"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\Console1.obj" /Fd"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\vc80.pdb" /W4 /c /Zi /TP /wd4610 /wd4510 /wd4512 /wd4505 /wd4100 /wd4127 /wd4996 /wd4244 /wd4355 /EHsc "..\..\radiant\log\Console.cpp" ] Creating command line "cl.exe @"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000A825242376.rsp" /nologo /errorReport:prompt" Creating temporary file "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000A925242376.rsp" with contents [ /Ob2 /Oi /Ot /GL /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../radiant" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../libs" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/boost/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libxml2/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/gtk-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/atk-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/glib-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/cairo" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/pango-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/glib-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/gtk-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/glew/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libiconv/include" /D "_CRT_SECURE_NO_DEPRECATE" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_VC80_UPGRADE=0x0710" /GF /FD /MD /GS- /Fo"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\NullModel1.obj" /Fd"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\vc80.pdb" /W4 /c /Zi /TP /wd4610 /wd4510 /wd4512 /wd4505 /wd4100 /wd4127 /wd4996 /wd4244 /wd4355 /EHsc "..\..\radiant\referencecache\NullModel.cpp" ] Creating command line "cl.exe @"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000A925242376.rsp" /nologo /errorReport:prompt" Creating temporary file "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000AA25242376.rsp" with contents [ /Ob2 /Oi /Ot /GL /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../radiant" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../libs" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/boost/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libxml2/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/gtk-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/atk-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/glib-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/cairo" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/pango-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/glib-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/gtk-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/glew/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libiconv/include" /D "_CRT_SECURE_NO_DEPRECATE" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_VC80_UPGRADE=0x0710" /GF /FD /MD /GS- /Fo"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\Entity1.obj" /Fd"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\vc80.pdb" /W4 /c /Zi /TP /wd4610 /wd4510 /wd4512 /wd4505 /wd4100 /wd4127 /wd4996 /wd4244 /wd4355 /EHsc "..\..\radiant\selection\algorithm\Entity.cpp" ] Creating command line "cl.exe @"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000AA25242376.rsp" /nologo /errorReport:prompt" Creating temporary file "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000AB25242376.rsp" with contents [ /Ob2 /Oi /Ot /GL /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../radiant" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../libs" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/boost/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libxml2/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/gtk-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/atk-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/glib-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/cairo" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/pango-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/glib-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/gtk-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/glew/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libiconv/include" /D "_CRT_SECURE_NO_DEPRECATE" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_VC80_UPGRADE=0x0710" /GF /FD /MD /GS- /Fo"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\CSG1.obj" /Fd"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\vc80.pdb" /W4 /c /Zi /TP /wd4610 /wd4510 /wd4512 /wd4505 /wd4100 /wd4127 /wd4996 /wd4244 /wd4355 /EHsc "..\..\radiant\brush\csg\CSG.cpp" ] Creating command line "cl.exe @"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000AB25242376.rsp" /nologo /errorReport:prompt" Creating temporary file "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000AC25242376.rsp" with contents [ /Ob2 /Oi /Ot /GL /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../radiant" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../libs" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/boost/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libxml2/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/gtk-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/atk-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/glib-2.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/cairo" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/include/pango-1.0" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/glib-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/gtk2/lib/gtk-2.0/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/glew/include" /I "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\/../../w32deps/libiconv/include" /D "_CRT_SECURE_NO_DEPRECATE" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_VC80_UPGRADE=0x0710" /GF /FD /MD /GS- /Fo"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\map1.obj" /Fd"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\vc80.pdb" /W4 /c /Zi /TP /wd4610 /wd4510 /wd4512 /wd4505 /wd4100 /wd4127 /wd4996 /wd4244 /wd4355 /EHsc "..\..\radiant\map.cpp" ] Creating command line "cl.exe @"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000AC25242376.rsp" /nologo /errorReport:prompt" Creating command line "rc.exe /d "_VC80_UPGRADE=0x0710" /l 0x409 /fo"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release/darkradiant.res" "..\..\radiant\darkradiant.rc"" Creating temporary file "D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000B025242376.rsp" with contents [ /OUT:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\install/DarkRadiant.exe" /INCREMENTAL:NO /LIBPATH:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\libs\Release" /LIBPATH:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\w32deps/gtk2\lib" /LIBPATH:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\w32deps/libxml2\lib" /LIBPATH:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\w32deps/boost\lib" /LIBPATH:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\w32deps/glew\lib" /MANIFEST /MANIFESTFILE:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\build\DarkRadiant\Release\DarkRadiant.exe.intermediate.manife st" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\install/DarkRadiant.pdb" /PDBSTRIPPED:"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\tools\vcprojects\\..\..\install/DarkRadiant_stripped.pdb" /SUBSYSTEM:WINDOWS /OPT:REF /OPT:ICF /LTCG /ENTRY:"mainCRTStartup" /DYNAMICBASE:NO /MACHINE:X86 /NODEFAULTLIB:LIBCMT advapi32.lib Dbghelp.lib glu32.lib glew32.lib mathlib.lib xmlutillib.lib gtkutillib.lib winmm.lib kernel32.lib user32.lib gdi32.lib wsock32.lib glib-2.0.lib gobject-2.0.lib gdk-win32-2.0.lib gdk_pixbuf-2.0.lib gtk-win32-2.0.lib pango-1.0.lib gtkglext-win32-1.0.lib gdkglext-win32-1.0.lib opengl32.lib libxml2.lib scenelib.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "..\..\build\libs\release\ddslib.lib" "..\..\build\libs\release\picomodellib.lib" "..\..\build\libs\release\libxml2.lib" "..\..\build\libs\release\scenelib.lib" "..\..\build\libs\release\jpeglib.lib" "..\..\build\DarkRadiant\Release\brushmanip.obj" "..\..\build\DarkRadiant\Release\entity.obj" "..\..\build\DarkRadiant\Release\gtkdlgs.obj" "..\..\build\DarkRadiant\Release\gtkmisc.obj" "..\..\build\DarkRadiant\Release\main.obj" "..\..\build\DarkRadiant\Release\mainframe.obj" "..\..\build\DarkRadiant\Release\map1.obj" "..\..\build\DarkRadiant\Release\patchmanip.obj" "..\..\build\DarkRadiant\Release\RadiantModule.obj" "..\..\build\DarkRadiant\Release\referencecache.obj" "..\..\build\DarkRadiant\Release\select.obj" "..\..\build\DarkRadiant\Release\timer.obj" "..\..\build\DarkRadiant\Release\view.obj" "..\..\build\DarkRadiant\Release\windowobservers.obj" "..\..\build\DarkRadiant\Release\Brush.obj" "..\..\build\DarkRadiant\Release\BrushModule.obj" "..\..\build\DarkRadiant\Release\BrushNode.obj" "..\..\build\DarkRadiant\Release\BrushPrimitTexDef.obj" "..\..\build\DarkRadiant\Release\BrushTokenExporter.obj" "..\..\build\DarkRadiant\Release\BrushTokenImporter.obj" "..\..\build\DarkRadiant\Release\Face.obj" "..\..\build\DarkRadiant\Release\FaceInstance.obj" "..\..\build\DarkRadiant\Release\FacePlane.obj" "..\..\build\DarkRadiant\Release\FaceShader.obj" "..\..\build\DarkRadiant\Release\FaceTexDef.obj" "..\..\build\DarkRadiant\Release\FixedWinding.obj" "..\..\build\DarkRadiant\Release\TexDef.obj" "..\..\build\DarkRadiant\Release\TextureProjection.obj" "..\..\build\DarkRadiant\Release\Winding.obj" "..\..\build\DarkRadiant\Release\CollisionModel.obj" "..\..\build\DarkRadiant\Release\BrushByPlaneClipper.obj" "..\..\build\DarkRadiant\Release\CSG1.obj" "..\..\build\DarkRadiant\Release\BrushExportOBJ.obj" "..\..\build\DarkRadiant\Release\Camera.obj" "..\..\build\DarkRadiant\Release\CameraSettings.obj" "..\..\build\DarkRadiant\Release\CamWnd.obj" "..\..\build\DarkRadiant\Release\GlobalCamera.obj" "..\..\build\DarkRadiant\Release\Clipper.obj" "..\..\build\DarkRadiant\Release\ClipPoint.obj" "..\..\build\DarkRadiant\Release\AutoSaver.obj" "..\..\build\DarkRadiant\Release\FindMapElements.obj" "..\..\build\DarkRadiant\Release\Map.obj" "..\..\build\DarkRadiant\Release\MapFileManager.obj" "..\..\build\DarkRadiant\Release\MapPosition.obj" "..\..\build\DarkRadiant\Release\MapPositionManager.obj" "..\..\build\DarkRadiant\Release\MapResource.obj" "..\..\build\DarkRadiant\Release\MapResourceManager.obj" "..\..\build\DarkRadiant\Release\PointFile.obj" "..\..\build\DarkRadiant\Release\RegionManager.obj" "..\..\build\DarkRadiant\Release\RootNode.obj" "..\..\build\DarkRadiant\Release\Traverse.obj" "..\..\build\DarkRadiant\Release\ApplicationContextImpl.obj" "..\..\build\DarkRadiant\Release\DynamicLibrary.obj" "..\..\build\DarkRadiant\Release\DynamicLibraryLoader.obj" "..\..\build\DarkRadiant\Release\ModuleLoader.obj" "..\..\build\DarkRadiant\Release\ModuleRegistry.obj" "..\..\build\DarkRadiant\Release\Namespace.obj" "..\..\build\DarkRadiant\Release\NamespaceFactory.obj" "..\..\build\DarkRadiant\Release\Patch.obj" "..\..\build\DarkRadiant\Release\PatchBezier.obj" "..\..\build\DarkRadiant\Release\PatchModule.obj" "..\..\build\DarkRadiant\Release\PatchNode.obj" "..\..\build\DarkRadiant\Release\OpenGLModule.obj" "..\..\build\DarkRadiant\Release\OpenGLShaderCache.obj" "..\..\build\DarkRadiant\Release\GLProgramFactory.obj" "..\..\build\DarkRadiant\Release\OpenGLShader.obj" "..\..\build\DarkRadiant\Release\OpenGLShaderPass.obj" "..\..\build\DarkRadiant\Release\OpenGLStateMap.obj" "..\..\build\DarkRadiant\Release\BestPoint.obj" "..\..\build\DarkRadiant\Release\Intersection.obj" "..\..\build\DarkRadiant\Release\Manipulatables.obj" "..\..\build\DarkRadiant\Release\ManipulateObserver.obj" "..\..\build\DarkRadiant\Release\Manipulators.obj" "..\..\build\DarkRadiant\Release\Planes.obj" "..\..\build\DarkRadiant\Release\RadiantSelectionSystem.obj" "..\..\build\DarkRadiant\Release\RadiantWindowObserver.obj" "..\..\build\DarkRadiant\Release\SelectedNodeList.obj" "..\..\build\DarkRadiant\Release\SelectionTest.obj" "..\..\build\DarkRadiant\Release\SelectObserver.obj" "..\..\build\DarkRadiant\Release\TransformationVisitors.obj" "..\..\build\DarkRadiant\Release\Curves.obj" "..\..\build\DarkRadiant\Release\Entity1.obj" "..\..\build\DarkRadiant\Release\General.obj" "..\..\build\DarkRadiant\Release\Group.obj" "..\..\build\DarkRadiant\Release\GroupCycle.obj" "..\..\build\DarkRadiant\Release\ModelFinder.obj" "..\..\build\DarkRadiant\Release\Primitives.obj" "..\..\build\DarkRadiant\Release\Shader.obj" "..\..\build\DarkRadiant\Release\Transformation.obj" "..\..\build\DarkRadiant\Release\ShaderClipboard.obj" "..\..\build\DarkRadiant\Release\Texturable.obj" "..\..\build\DarkRadiant\Release\Game.obj" "..\..\build\DarkRadiant\Release\GameFileLoader.obj" "..\..\build\DarkRadiant\Release\GameManager.obj" "..\..\build\DarkRadiant\Release\PreferenceSystem.obj" "..\..\build\DarkRadiant\Release\Win32Registry.obj" "..\..\build\DarkRadiant\Release\TexTool.obj" "..\..\build\DarkRadiant\Release\TexToolItem.obj" "..\..\build\DarkRadiant\Release\BrushItem.obj" "..\..\build\DarkRadiant\Release\FaceItem.obj" "..\..\build\DarkRadiant\Release\PatchItem.obj" "..\..\build\DarkRadiant\Release\PatchVertexItem.obj" "..\..\build\DarkRadiant\Release\AboutDialog.obj" "..\..\build\DarkRadiant\Release\CommandList.obj" "..\..\build\DarkRadiant\Release\ShortcutChooser.obj" "..\..\build\DarkRadiant\Release\ModelPreview.obj" "..\..\build\DarkRadiant\Release\RenderableAABB.obj" "..\..\build\DarkRadiant\Release\ShaderChooser.obj" "..\..\build\DarkRadiant\Release\ShaderSelector.obj" "..\..\build\DarkRadiant\Release\SoundShaderPreview.obj" "..\..\build\DarkRadiant\Release\TexturePreviewCombo.obj" "..\..\build\DarkRadiant\Release\AddPropertyDialog.obj" "..\..\build\DarkRadiant\Release\BooleanPropertyEditor.obj" "..\..\build\DarkRadiant\Release\ClassnamePropertyEditor.obj" "..\..\build\DarkRadiant\Release\ColourPropertyEditor.obj" "..\..\build\DarkRadiant\Release\ComboBoxPropertyEditor.obj" "..\..\build\DarkRadiant\Release\EntityInspector.obj" "..\..\build\DarkRadiant\Release\EntityPropertyEditor.obj" "..\..\build\DarkRadiant\Release\FloatPropertyEditor.obj" "..\..\build\DarkRadiant\Release\LightTextureChooser.obj" "..\..\build\DarkRadiant\Release\ModelPropertyEditor.obj" "..\..\build\DarkRadiant\Release\PropertyEditor.obj" "..\..\build\DarkRadiant\Release\PropertyEditorFactory.obj" "..\..\build\DarkRadiant\Release\SkinChooser.obj" "..\..\build\DarkRadiant\Release\SkinPropertyEditor.obj" "..\..\build\DarkRadiant\Release\SoundChooser.obj" "..\..\build\DarkRadiant\Release\SoundPropertyEditor.obj" "..\..\build\DarkRadiant\Release\TexturePropertyEditor.obj" "..\..\build\DarkRadiant\Release\Vector3PropertyEditor.obj" "..\..\build\DarkRadiant\Release\EntityClassChooser.obj" "..\..\build\DarkRadiant\Release\EntityClassTreePopulator.obj" "..\..\build\DarkRadiant\Release\FindShader.obj" "..\..\build\DarkRadiant\Release\LightInspector.obj" "..\..\build\DarkRadiant\Release\EntityInfoTab.obj" "..\..\build\DarkRadiant\Release\MapInfoDialog.obj" "..\..\build\DarkRadiant\Release\ModelInfoTab.obj" "..\..\build\DarkRadiant\Release\ShaderInfoTab.obj" "..\..\build\DarkRadiant\Release\MediaBrowser.obj" "..\..\build\DarkRadiant\Release\FiltersMenu.obj" "..\..\build\DarkRadiant\Release\ModelSelector.obj" "..\..\build\DarkRadiant\Release\MRU.obj" "..\..\build\DarkRadiant\Release\MRUMenuItem.obj" "..\..\build\DarkRadiant\Release\OrthoContextMenu.obj" "..\..\build\DarkRadiant\Release\Overlay.obj" "..\..\build\DarkRadiant\Release\OverlayDialog.obj" "..\..\build\DarkRadiant\Release\ParticlesChooser.obj" "..\..\build\DarkRadiant\Release\BulgePatchDialog.obj" "..\..\build\DarkRadiant\Release\PatchCreateDialog.obj" "..\..\build\DarkRadiant\Release\PatchInspector.obj" "..\..\build\DarkRadiant\Release\PatchThickenDialog.obj" "..\..\build\DarkRadiant\Release\PrefDialog.obj" "..\..\build\DarkRadiant\Release\PrefPage.obj" "..\..\build\DarkRadiant\Release\TransformDialog.obj" "..\..\build\DarkRadiant\Release\TextureBrowser.obj" "..\..\build\DarkRadiant\Release\Splash.obj" "..\..\build\DarkRadiant\Release\SurfaceInspector.obj" "..\..\build\DarkRadiant\Release\LayerContextMenu.obj" "..\..\build\DarkRadiant\Release\LayerControl.obj" "..\..\build\DarkRadiant\Release\LayerControlDialog.obj" "..\..\build\DarkRadiant\Release\GlobalXYWnd.obj" "..\..\build\DarkRadiant\Release\XYWnd.obj" "..\..\build\DarkRadiant\Release\ModelCache.obj" "..\..\build\DarkRadiant\Release\NullModel1.obj" "..\..\build\DarkRadiant\Release\NullModelNode.obj" "..\..\build\DarkRadiant\Release\LayerCommandTarget.obj" "..\..\build\DarkRadiant\Release\LayerSystem.obj" "..\..\build\DarkRadiant\Release\Console1.obj" "..\..\build\DarkRadiant\Release\COutRedirector.obj" "..\..\build\DarkRadiant\Release\LogFile.obj" "..\..\build\DarkRadiant\Release\LogStream.obj" "..\..\build\DarkRadiant\Release\LogStreamBuf.obj" "..\..\build\DarkRadiant\Release\LogWriter.obj" "..\..\build\DarkRadiant\Release\StringLogDevice.obj" "..\..\build\DarkRadiant\Release\darkradiant.res" ] Creating command line "link.exe @"D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\RSP0000B025242376.rsp" /NOLOGO /ERRORREPORT:PROMPT" Output Window Compiling... StringLogDevice.cpp LogWriter.cpp LogStreamBuf.cpp LogStream.cpp LogFile.cpp COutRedirector.cpp LayerSystem.cpp LayerCommandTarget.cpp NullModelNode.cpp ModelCache.cpp XYWnd.cpp GlobalXYWnd.cpp LayerControlDialog.cpp LayerControl.cpp LayerContextMenu.cpp SurfaceInspector.cpp Splash.cpp TextureBrowser.cpp TransformDialog.cpp PrefPage.cpp Compiling... PrefDialog.cpp PatchThickenDialog.cpp PatchInspector.cpp PatchCreateDialog.cpp BulgePatchDialog.cpp ParticlesChooser.cpp OverlayDialog.cpp Overlay.cpp OrthoContextMenu.cpp MRUMenuItem.cpp MRU.cpp ModelSelector.cpp FiltersMenu.cpp MediaBrowser.cpp ShaderInfoTab.cpp ModelInfoTab.cpp MapInfoDialog.cpp EntityInfoTab.cpp LightInspector.cpp FindShader.cpp Compiling... EntityClassTreePopulator.cpp EntityClassChooser.cpp Vector3PropertyEditor.cpp TexturePropertyEditor.cpp SoundPropertyEditor.cpp SoundChooser.cpp SkinPropertyEditor.cpp SkinChooser.cpp PropertyEditorFactory.cpp PropertyEditor.cpp ModelPropertyEditor.cpp LightTextureChooser.cpp FloatPropertyEditor.cpp EntityPropertyEditor.cpp EntityInspector.cpp ComboBoxPropertyEditor.cpp ColourPropertyEditor.cpp ClassnamePropertyEditor.cpp BooleanPropertyEditor.cpp AddPropertyDialog.cpp Compiling... TexturePreviewCombo.cpp SoundShaderPreview.cpp ShaderSelector.cpp ShaderChooser.cpp RenderableAABB.cpp ModelPreview.cpp ShortcutChooser.cpp CommandList.cpp AboutDialog.cpp PatchVertexItem.cpp PatchItem.cpp FaceItem.cpp BrushItem.cpp TexToolItem.cpp TexTool.cpp Win32Registry.cpp PreferenceSystem.cpp GameManager.cpp GameFileLoader.cpp Game.cpp Compiling... Texturable.cpp ShaderClipboard.cpp Transformation.cpp Shader.cpp Primitives.cpp ModelFinder.cpp GroupCycle.cpp Group.cpp General.cpp Curves.cpp TransformationVisitors.cpp SelectObserver.cpp SelectionTest.cpp SelectedNodeList.cpp RadiantWindowObserver.cpp RadiantSelectionSystem.cpp Planes.cpp Manipulators.cpp ManipulateObserver.cpp Manipulatables.cpp Compiling... Intersection.cpp BestPoint.cpp OpenGLStateMap.cpp OpenGLShaderPass.cpp OpenGLShader.cpp GLProgramFactory.cpp OpenGLShaderCache.cpp OpenGLModule.cpp PatchNode.cpp PatchModule.cpp PatchBezier.cpp Patch.cpp NamespaceFactory.cpp Namespace.cpp ModuleRegistry.cpp ModuleLoader.cpp DynamicLibraryLoader.cpp DynamicLibrary.cpp ApplicationContextImpl.cpp Traverse.cpp Compiling... RootNode.cpp RegionManager.cpp PointFile.cpp MapResourceManager.cpp MapResource.cpp MapPositionManager.cpp MapPosition.cpp MapFileManager.cpp Map.cpp FindMapElements.cpp AutoSaver.cpp ClipPoint.cpp Clipper.cpp GlobalCamera.cpp CamWnd.cpp CameraSettings.cpp Camera.cpp BrushExportOBJ.cpp BrushByPlaneClipper.cpp CollisionModel.cpp Compiling... Winding.cpp TextureProjection.cpp TexDef.cpp FixedWinding.cpp FaceTexDef.cpp FaceShader.cpp FacePlane.cpp FaceInstance.cpp Face.cpp BrushTokenImporter.cpp BrushTokenExporter.cpp BrushPrimitTexDef.cpp BrushNode.cpp BrushModule.cpp Brush.cpp windowobservers.cpp view.cpp timer.cpp select.cpp referencecache.cpp Compiling... RadiantModule.cpp patchmanip.cpp mainframe.cpp main.cpp gtkmisc.cpp gtkdlgs.cpp entity.cpp brushmanip.cpp Compiling... Console.cpp Compiling... NullModel.cpp Compiling... Entity.cpp Compiling... CSG.cpp Compiling... map.cpp Compiling resources... Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0 Copyright (C) Microsoft Corporation. All rights reserved. Linking... LINK : fatal error LNK1181: cannot open input file 'libxml2.lib' Results Build log was saved at "file://D:\Documents and Settings\Nathan\My Documents\DarkRadiant SVN\build\DarkRadiant\Release\BuildLog.htm" DarkRadiant - 1 error(s), 0 warning(s)
  21. 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.
  22. So I think for models there's ase, lwo and obj (?). For sound there's ogg and wav. Video there's mp4 and avi (ROQ) (?) Textures tga, dds and maybe png and/or jpg (at least one of those 2)
  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. @nbohr1more, I just recently noticed that back in Oct you reported in https://www.ttlg.com/forums/showthread.php?t=152771 I didn't see anything about this in the current "What's New in 2.13". Will this new functionality actually happen for 2.13, and if so what FMs can now be re-downloaded to get the enhanced translation packs? Particularly "early TDM missions [that] also have German, Italian, French, etc translations". Pointer to any new bugtracker/forum/wiki info about this appreciated.
  25. Author Note: This is a brand new mission and a new entry into the accountant series. There are some different than usual puzzles in this FM, so if you find yourself stuck try to think about your pathway forward in a logical manner. And if you're still having troubles then pop by this thread and ask (preferably with spoiler tags). This FM is brand new and serves as the first installment in The Accountant series, a few years back there was a small prologue style mission released however I felt that it did not represent The Accountant series so I decided to go back to the drawing board and do a whole new mission that's larger, has a better level design and has a story that lines up closer to what I plan to do with the accountant series. The mission is medium sized and you can expect between 30-90 minutes to complete it depending on your playstyle. Beta Testers Captain Cleveland Crowind Kingsal PukeyBee Skacky SquadaFroinx Voice Actors AndrosTheOxen Epifire Goldwell Stevenpfortune Yandros Custom assets Airship Ballet Bentraxx Bob Necro Dragofer DrKubiac Epifire Kingsal MalachiAD Sotha Springheel SquadaFroinx Available via in-game downloader File Size: 233 MB - Updated to v 1.1 (01.06.2018)
×
×
  • Create New...