Jump to content
The Dark Mod Forums

Dragofer

Development Role
  • Posts

    2634
  • Joined

  • Last visited

  • Days Won

    157

Posts posted by Dragofer

  1. 21 hours ago, daleytayler said:

    Amazing, I made a new folder C:\darkmod2 and dumped the files from C:\darkmod in there, just to see what would happen, now it works again, I don't understand why this was unless somehow some permission got changed somewhere or something, with the original folder, however i know i wont try and play the painters wife again

     thankyou 

    Regarding The Painter's Wife not loading, it's possible you might've been running the 32-bit version of TDM, thedarkmod.exe, which in most cases isn't capable of loading a mission of that size. It's highly recommended to run the 64-bit version, thedarkmodx64.exe, which is located in the same place as thedarkmod.exe. (From 2.09 onwards TDM will hopefully only ship the 64-bit version.)

    That said, a new version of The Painter's Wife is soon going to be released, so I'd suggest waiting for that one to benefit from all the improvements and fixes.

  2. 13 minutes ago, Grazza64 said:

    Hi, I think I've completed most of this fantastic mission. I have a Mysterious Stone and have no idea what to do with it! Also what is this hidden cathedral people mention? Thanks

    Glad to hear that - for using the Mysterious Stone, look around

    Spoiler

    King's Street

    and for the "cathedral" and any other things you might have missed, you might want to look at Lzocast's walkthrough/compilation of points of interest.

    • Like 1
  3. Here's a .pk4 containing @Sotha's great automaton guards from Ulysses: Genesis as well as an alternative design for the charging station that I had already made on another occasion, as requested by @JackFarmer. The reason I'm posting this in my scripting thread is that I've made a straightforward scriptobject for the charging station, allowing an automaton to switch it on and off as part of its patrol, thereby saving a lot of money on the lord's electricity bill and preventing the station from getting out of sync. It also switches off after a specified time (time_max), in case the automaton is destroyed while it was charging.

    Mapping wise, it works by having path_anim nodes activating callobjectfunctions, calling either station_on or station_off on the station. The station toggles its targets, unless it's already in the desired state. Prefabs can be found under prefabs/mechanical/automaton_station.

    Here's the simple scriptobject:

    Spoiler
    
    
    object automaton_station
    {
    	void	init();
    	void	station_on();
    	void	station_off();
    
    	//INTERNAL
    	float	m_station_state;
    
    	//SPAWNARGS
    	float	m_time_max;		//station automatically switches off after this time if bot fails to switch it off (i.e. because it's been killed at the station). 0 = infinite.
    };
    
    
    void automaton_station::init()
    {
    	m_time_max		= getFloatKey("time_max");
    }
    
    void automaton_station::station_on()
    {
    	if(!m_station_state)
    	{
    		activateTargets(self);
    		m_station_state = 1;
    	}
    
    	if(m_time_max)
    	{
    		sys.wait(m_time_max);
    		thread station_off();	
    	}
    }
    
    void automaton_station::station_off()
    {
    	if (m_station_state)
    	{
    		activateTargets(self);
    		m_station_state = 0;
    	}
    }

     

    Under the hood, I've taken the opportunity to clean up the assets a fair amount, trimming unused components and ensuring it follows TDM's conventions, which is a necessary step towards an inclusion in the core assets.

    The download can be found in section D of the original post.

    • Like 1
    • Thanks 2
  4. Stgatilov has added diagnostics for this kind of crash in 2.09, showing the 5 last events and 5 randomly chosen events out of the maximum of 10,000 per frame (IIRC).

    Personally I've seen this happen in a custom elevator script that sometimes repeated itself an infinite number of times without any waits inbetween. This was in a script that started if IsOpen() is true, but would only continue if getFractionalPosition() was also true, otherwise it'd restart itself by checking IsOpen(). Sometimes those 2 tests don't agree with each other, so IsOpen would be true while getFractionalPosition is considered false. The solution was to use the same method, IsOpen(), for both tests.

    JackFarmer has seen this when he had 2 or more elementals in his map near a door. They'd both place a reminder to check back in x seconds whether the door is still open, but for some reason those reminders accumulated so much that each elemental would post 6000 events per frame to check the door's state. This was fixed in 2.08.

    • Like 2
  5. 3 hours ago, Geep said:

    What would be most helpful here is a way to generate a pointfile that would run between entities info_location_x and info_location_y. Absent that, is there some other way to discover where the leak is?

    It's good practice to build maps leaving only the big sealing brushes as worldspawn and everything else func_static, so that you can enable the filter for "All entities" and more easily find gaps in the clean, blocky brushwork.

    Apart from that, there's still the old method of intentionally creating a leak to the void -> running pointfile to see which entity is used as the starting point for the red line -> move that entity into either room & turn the rooms' visportals into i.e. wood.

    Or export the 2 rooms into a separate map and see what the pointfile does.

    • Like 1
  6. I think the clear consensus from prior discussions was that TDM's pagans should be nothing like the exaggerated pagans found in Thief 3. Some notable voices called for going quite far in the opposite direction to the point they'd basically be like commoners blending into the city, but occasionally betraying their pagan roots with their more superstitious beliefs like in Thief 1/2. I don't think something that subtle would be a good fit for pagans like the ones pictured above, so there'd still be room for a 2nd, more overtly "pagan" set directly mentioning all these deities.

    Maybe the problem until now was that script writers tried to make a vocal set that could represent both visions, when they're really somewhat incompatible.

    Here's the most recent pagan vocals thread, by the way, which IIRC is going more the subtle route at the moment.

    • Like 1
  7. A decade ago I made a draft of Pagan vocals referencing these entities:

    Fenrir the Norse giant wolf

    Mani the Norse moon personification 

    Herne the Anglo antlered hunter

    The Dark Lady

    A troll

    Shade spawn

    Here's a .txt file containing that set of vocals pagan.txt(need to be logged in to download it)

    Most of those entities were dropped in later drafts because my impression is that TDM aims for a more subtle set of beliefs in its pagans.

     

  8. 9 hours ago, Sneaker said:

    It's when you're in a mission, then press ESC to goto the menu to, say, save a game that the music plays regardless of the main menu music setting.  It will say "off" in the settings but music will be playing.  I just verified that toggling that setting while a mission is going doesn't help either; although there is kind of like a blip/reset of the music track when toggling.

    I'm not the only one then. I've opened an entry on the bugtracker.

  9. 51 minutes ago, blaa said:

    The first final mission screen with the ship in the ice looks so nice I tried making an animated WP out of it (didn´t work out cause of the screen shake though). And I wonder if one could make a city mission with that horse drawn carriage driving around the streets?

    Which painter did the pieces you use for the mission screens?

    Thanks very much! For making the animated WP, there's an easy fix: create a folder called "maps" in darkmod/fms/river and put this modified script file inside it. This will take you straight to that scene after map start, this time lasting 30s and without triggering the speaker that shakes the screen.

    Having a carriage driving around the city with people inside is possible, it'd just have to be 100% shielded from interference by the player, and it can only drive in a straight line. Getting AIs to get in and out is also possible, but no more than 2 and it's fiddly to setup.

    For painters, I used:
    John Atkinson Grimshaw for English countryside & manor settings
    Ivan Aivazovsky for ship & coastal paintings
    William Bradford for arctic artwork

  10. That lantern appears normally on my end after I applied a fix for v2.0, but the bottles are a new issue because of an incorrect skin setting that I now fixed. To be sure, I've deleted the FM's own copy of the skin definitions for the lamps to make sure there's not some conflict going on, and reuploaded a new pk4 to the mirrors except Tels' mirror, for which I dont see login credentials currently.

  11. Thanks both for leaving your thoughts - the real dowry is quite essential, so I've uploaded v2.1 which makes the secret compartment's scripting implementation more robust (custom scripting was needed to prevent the 2 "doors" from clipping into each other and to avoid awkward situations where the player accidentally blocks the lid from fully opening and takes the loot without seeing it).

    Took the opportunity to make a few more changes as well, most prominently dropping the visual alertness of outdoor AIs to 80% (a tactic that was useful in other missions like Behind Closed Doors to avoid the feeling that AIs are hyperacute).

  12. Glad you liked the new form of the dilapidated house! And you got most of the background right:

    Spoiler

    The readables on the first upper floor indicate that the strange new landlord has drawn plenty of suspicion from the townsfolk: the caretaker writes that he gets jeered at when going past the inn, and the girl writes she's seen men outside sizing up the house. This ultimately leads to the landlord getting walled up in the basement, and the caretaker didn't make it out either. In the basement you see the thief who tried to make a living in the abandoned house, on the first upper floor you see the caretaker and on the top floor is the landlord (if you went back down to the basement you'd see the alcove is now empty). The knives were dropped by the thief when he came to face what happens in the house, and they get flung towards the player simply to add some extra malevolence when the player goes for the safer-looking route through the attic.

     

    • Like 1
  13. The black lamps are unfortunately a bug, not an install/asset problem. 2.08 seems to read skin files differently so now it matters when there are non-standard characters in file paths, most prominently the hyphen in /non-extinguishable/ for lamps.

  14. As it stands, it seems the majority of the FMs with custom .gui files listed in the OP only made very minor changes of a technical nature, i.e. self-help with avoiding a blank briefing screen after skipping a video. It should be realistic to reduce the list of FMs that *must* have custom GUI files to a much smaller number.

    After that's done, if the devs make a GUI change it should be fairly reasonable to test whether the GUIs of those missions still seem to work as intended, i.e. contact the authors or else ask betatesters to work through a list of FMs with custom GUIs. If one of those FMs has problems that can't be resolved, then I'd see a 5th solution: add all the GUI files from the previous TDM version to the FM, so that it'll forever live with that GUI state while all other missions continue to benefit from updates.

    • Like 2
  15. @Obsttorte good to see how you'd shorten it and what alternative methods exist to achieve this.

    Regarding how it affects all lights of that type, Destined could add a custom spawnarg to all lamps that he wants to be affected i.e. "power_source" "generator_basement1" and then let the script search for that instead:

    lamp = sys.getNextEntity("power_source","generator_basement1",lamp);

    He'll probably want only the generator to control their lit state, because otherwise the script will need to make the switches become ineffective for as long as the generator is off.

  16. A motion lamp should be quite feasible if I can get trigger_multiple brushes to inform the script who activated it. Trigger_touch has such a function (pass_activator and pass_self spawnargs) but I don't see that for trigger_multiple. Surely that possibility exists?

    For making stim-triggered presence lamps, a problem will be that the radius of the stim is defined on the humanoid and not on the lamp, and any existing stims might be too short-ranged for general use. Would likely need to put custom stims with a large radius on all AIs and the player and only let the lamp react if the humanoid is within a certain spawnarg-specified radius. Alternatively each lamp lamp could check every second whether it can see someone, though then it'd frequently switch on/off when the player or AI moves around objects that provide cover.

    Another potential problem is that the AI might be very close but on a different floor/in an adjacent room. Visibility checks can't be used to identify this because the humanoid might be hidden behind cover, so it'll have to be location-based: each room should be its own location. Looks like this is a more involved route than the trigger brush method.

×
×
  • Create New...