Jump to content
The Dark Mod Forums

DarkRadiant 1.7.4 pre-release test


Recommended Posts

Here's a pre-release version of DR 1.7.4, which might need some sanity-testing. Any volunteers giving feedback about this build are welcome to download the appropriate package below.

 

x64 pre4: http://www.dramthethief.com/darkmod/files/darkradiant/darkradiant-1.7.4pre4-x64.exe

Edited by greebo
Link to comment
Share on other sites

The MD5 Animationviewer should be working now. Apart from that all the changes I made were rather refactoring behind the scenes (QE icon active now after startup, preventing crashes when loading corrupt ASE models).

 

See the commit log at https://github.com/orbweaver/DarkRadiant/commits/master

Link to comment
Share on other sites

I made several observations:

 

The following settings in the .game file are ignored:

 

<filesystem>

<shaders>

<basepath>materials_v1</basepath>

<extension>mtr</extension>

</shaders>

 

Regardless of what folder name I use for materials, DR always uses base/materials/ (the reason I use base/materials_v1/ is that idTech 4 uses it, and BFG engine uses base/materials/)

 

"Reload Shaders" in the File menu should probably be "Reload Materials" since shaders are in glprogs/ and are actually called OpenGL shaders, while mtr files are called materials.

 

Particles that use materials containing ARB shaders don't render in the Particle Editor. They show "Shader Not Found" on each particle. Are shaders supported in material stages? If not, maybe it's better to render "OpenGL shader used" instead of "Shader Not Found" on those particles?

 

Other than that old maps load fine, animation viewer works.

 

I haven't tested projected lights (supposedly rendering light material flipped) as I don't have any handy. Can someone please test it and confirm/disprove that issue?

 

EDIT: I can file those as bug reports, if you think I should.

Edited by motorsep
Link to comment
Share on other sites

I haven't used DR in quite some time, but with the coming release of 2.0...I'm a bit unsure how to get everything to load now that we don't have Doom3 as the engine path. Do I just use the dark mod folder as my engine path and leave the mod box blank? I've tried that but I'm unable to load anything from the game into a map. Is the problem perhaps that I have to unpack all the pk4's in my 2.0 install before DR can read them? I've only ever used DR with a copy of my SVN build.

Link to comment
Share on other sites

Well, I have:

  • Engine path: the folder that contains the darkmod folder
  • Mod: the darkmod folder
  • Mod_base: any fms folder (this is optional)

It works without any problems to me. You do not have to unpack anything.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Well, I have:

  • Engine path: the folder that contains the darkmod folder
  • Mod: the darkmod folder
  • Mod_base: any fms folder (this is optional)

It works without any problems to me. You do not have to unpack anything.

Is this with a 2.0 install? What do you have selected for 'game', I have doom 3. I thought Dark Mod might have been added to that list with standalone coming up. The way you have it setup is how I tried it at first but it doesn't work for me.

 

I had:

Engine path: f:/darkmod

Mod: darkmod

 

The problem is that the non-standalone setup required doom3 for the engine path and darkmod resided within doom 3. If I have darkmod for engine path and darkmod for mod, then I receive an error saying that darkmod/darkmod does not exist.

 

I suspect that Dark Radiant will require some slight modification to recognize 'darkmod' as the engine path now and load everything without the mod path.

Link to comment
Share on other sites

Yup, as I thought. With 2.0, the engine path is the same as the mod path. If you set the engine path to c:/darkmod and the mod path to 'darkmod', DR will look for darkmod/darkmod. With 2.0, we shouldn't need to enter the mod path any longer, the engine path should be enough. I've been trying to modify the .game file to accomplish this but haven't had any luck so far.

 

EDIT:

 

Got it working. I had to remove the 'base' path since we don't store TDM files in a base folder like d3. I'll upload the custom file tomorrow, have to sleep now.

 

This new little guy has been keeping us busy. :)

 

998943_10153128878040626_257399665_n.jpg

  • Like 3
Link to comment
Share on other sites

Engine path: f:

Mod: darkmod

 

should also work.

 

I use 2.0, the game is set to Doom3.

 

And congrats :smile:

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Engine path: f:

Mod: darkmod

 

should also work.

 

I use 2.0, the game is set to Doom3.

 

And congrats :smile:

 

Yes, I got it working with the Root drive and then darkmod mod path, but that's somewhat confusing, especially for non-technical folks out there. I'm going to name the .game file Darkmod 2.x so folks will know to use it only with that.

Link to comment
Share on other sites

Well, after updating to 2.0 I just removed everything except the darkmod folder from my doom3 directory. This way I never had to change anything. :)

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Here is my modified file for a fresh 2.0 install. Requires only the engine path.

 

The forum won't let me attach anything it seems, so I've dropped the file contents in spoiler tags. Just paste this into a text file and name it darkmod.game, then put it in the dark radiant games folder.

 

 

<?xml version="1.0"?>

<game

type="doom3"

index="99"

name="Darkmod2.x"

enginepath_win32="C:/games/darkmod/"

enginepath_linux="/usr/local/games/darkmod/"

enginepath_macos="/usr/local/games/darkmod/"

engine_win32="TheDarkMod.exe"

engine_linux="TheDarkMod"

engine_macos="TheDarkMod.app"

prefix=".doom3"

basegame=""

basegamename="Darkmod"

unknowngamename="TDM"

archivetypes="pk4"

modeltypes="lwo ase md5mesh"

maptypes="mapdoom3"

shaders="doom3"

entityclass="doom3"

entities="doom3"

brushtypes="doom3"

patchtypes="doom3 def2doom3"

registryKey="SOFTWARE\id\Doom 3"

registryValue="InstallPath"

>

<!-- Types of resource files which are used by this game -->

<filetypes>

<texture>

<extension>tga</extension>

<extension>jpg</extension>

<extension>dds</extension>

</texture>

</filetypes>

<!-- Filters to use for the filter system -->

<filtersystem>

<filter name="World geometry">

<filterCriterion

type="entityclass"

match="worldspawn"

action="hide" />

</filter>

<filter name="Caulk">

<filterCriterion

type="texture"

match="textures/common/caulk"

action="hide" />

</filter>

<filter name="Collision surfaces">

<filterCriterion

type="texture"

match="textures/common/collision"

action="hide" />

<filterCriterion

type="texture"

match="tdm_collision_.*"

action="hide" />

</filter>

<filter name="Lights">

<filterCriterion type="entityclass" match="light" action="hide" />

<filterCriterion type="entityclass" match="light_.*" action="hide" />

</filter>

<filter name="All entities">

<filterCriterion type="entityclass" match=".*" action="hide" />

<filterCriterion type="entityclass" match="worldspawn" action="show" />

</filter>

<filter name="Visportals">

<filterCriterion type="texture" match="textures/editor/visportal" action="hide" />

<filterCriterion type="texture" match="textures/common/nodraw" action="hide" />

</filter>

<filter name="Decals">

<filterCriterion type="texture" match="textures(.*)decals(.*)" action="hide" />

</filter>

<filter name="Clip Textures">

<filterCriterion

type="texture"

match="textures/common/(.*)_clip$"

action="hide" />

<filterCriterion type="texture" match="textures/common/clip(_plusmovables)*$" action="hide" />

<filterCriterion type="texture" match="textures/common/moveableclipmodel" action="hide" />

</filter>

<filter name="Trigger Textures">

<filterCriterion

type="texture"

match="textures/common/trig(.*)"

action="hide" />

</filter>

<filter name="Nodraw Textures">

<filterCriterion

type="texture"

match="textures/common/nodraw(.*)"

action="hide" />

<filterCriterion

type="texture"

match="textures/common/tdm_nodraw(.*)"

action="hide" />

</filter>

<filter name="Shadow Textures">

<filterCriterion

type="texture"

match="textures/common/shadow(.*)"

action="hide" />

</filter>

<filter name="Patches">

<filterCriterion type="object" match="patch" action="hide" />

</filter>

<filter name="Brushes">

<filterCriterion type="object" match="brush" action="hide" />

</filter>

<filter name="Weather Textures">

<filterCriterion type="texture" match="textures/darkmod/weather/.*" action="hide" />

</filter>

<filter name="Paths">

<filterCriterion type="entityclass" match="path_.*" action="hide" />

</filter>

</filtersystem>

<filesystem>

<shaders>

<basepath>materials</basepath>

<extension>mtr</extension>

</shaders>

<fonts>

<basepath>fonts</basepath>

<extension>dat</extension>

</fonts>

</filesystem>

<defaults>

<lightShader value="lights/defaultPointLight" />

<lightScale>2</lightScale>

<lightRadius value="320 320 320" />

<maxWorldCoord value="65536" />

<minWorldCoord value="-65536" />

<defaultTexture value="_default" />

<collisionTexture value="textures/common/collision" />

<monsterClipShader value="textures/common/monster_clip" />

<visportalShader value="textures/editor/visportal" />

<nodrawShader value="textures/common/nodraw" />

<collisionModelExt value="cm" />

<defaultCurveEntity value="func_splinemover" />

<curveNurbsKey value="curve_Nurbs" />

<curveCatmullRomKey value="curve_CatmullRomSpline" />

<bindKey value="bind" />

<playerHeight value="64" />

<nameKey value="name" />

<speakerMinRadius value="24" />

<speakerMaxRadius value="32" />

<guiSmallFontLimit value="0.15" />

<guiMediumFontLimit value="0.30" />

</defaults>

<entityChooser>

<displayFolderKey value="editor_displayFolder" />

</entityChooser>

<entityInspector>

<property match="origin" category="Basic" type="vector3">The origin of this object in 3D space</property>

<property match="classname" category="Basic" type="classname">The classname of this entity. This must be a recognised class defined in one of the DEF files, and governs the overall behaviour of the entity</property>

<property match="name" category="Basic" type="text">The displayed name of this entity. This can be arbitrary, but must be unique across the entire map</property>

<property match="rotation" category="Basic" type="text" />

<property match="_color" category="Basic" type="colour" />

<property match="angle"

category="Basic"

type="angle"

options="0,360">The direction this entity initially faces. Generally applied to AI or player_start entities.</property>

<property match="falloff" category="Light" type="text" />

<property match="light_radius" category="Light" type="vector3" />

<property match="light_rotation" category="Light" type="text" />

<property match="light_center" category="Light" type="vector3" />

<property match="light_target" category="Light" type="vector3" />

<property match="light_up" category="Light" type="vector3" />

<property match="light_right" category="Light" type="vector3" />

<property match="light_start" category="Light" type="vector3" />

<property match="light_end" category="Light" type="vector3" />

<property match="parallel" category="Light" type="bool" />

<property match="nodiffuse" category="Light" type="bool" />

<property match="noshadows" category="Light" type="bool" />

<property match="nospecular" category="Light" type="bool" />

<property

match="texture"

category="Light"

type="texture"

options="lights,fogs"

/>

<property match="extinguished" category="Light" type="bool" />

<property match="model" category="Model" type="model">The displayed model or particle system for this entity. For a func_static or other entity type which can have brushes as children, this key must be set to the same value as "name" if brushes are used</property>

<property match="model_lit" category="Model" type="model">The model or particle system to be used when this entity is lit (i.e. for torches).</property>

<property match="model_extinguished" category="Model" type="model">The model or particle system to be used when this torch entity is extinguished.</property>

<property match="skin" category="Model" type="skin" />

<property match="noshadows" category="Model" type="bool" />

<property match="solid" category="Model" type="bool" />

<property match="target" category="Links" type="entity" />

<property match="target0" category="Links" type="entity" />

<property match="target1" category="Links" type="entity" />

<property match="target2" category="Links" type="entity" />

<property match="target3" category="Links" type="entity" />

<property match="target4" category="Links" type="entity" />

<property match="target5" category="Links" type="entity" />

<property match="target6" category="Links" type="entity" />

<property match="target7" category="Links" type="entity" />

<property match="target8" category="Links" type="entity" />

<property match="target9" category="Links" type="entity" />

<property match="target10" category="Links" type="entity" />

<property match="bind" category="Links" type="entity" />

<property match="bindToJoint" category="Links" type="text" />

<property match="s_shader" category="Sound" type="sound" />

<property match="snd_.*" category="Sound" type="sound" hidden="1" />

<property match="s_mindistance" category="Sound" type="text" />

<property match="s_maxdistance" category="Sound" type="text" />

<property match="s_looping" category="Sound" type="bool" />

<property match="s_waitfortrigger" category="Sound" type="bool" />

<property match="s_occlusion" category="Sound" type="bool" />

<property match="s_omni" category="Sound" type="bool" />

<property match="s_volume" category="Sound" type="text" />

<property match="s_global" category="Sound" type="bool" />

</entityInspector>

<!-- Game-specific values for light entities -->

<light>

<!-- List of prefixes that may be used to represent light shaders -->

<texture>

<prefix>lights</prefix>

<prefix>fogs</prefix>

</texture>

</light>

<!-- Information about the map format, for loading and saving -->

<mapFormat>

<floatPrecision value="16" />

<fileExtension value="map" />

<mapFolder value="maps/" />

<prefabFolder value="prefabs/" />

<!-- Compatibility options -->

<compatibility>

<addDummyBrushes value="false" />

</compatibility>

<lastCameraPositionKey value="editor_drLastCameraPos" />

<lastCameraAngleKey value="editor_drLastCameraAngle" />

<!-- The root key names of the map positions (e.g. editor_drMapPos1) -->

<mapPositionPosKey value="editor_drMapPos" />

<mapPositionAngleKey value="editor_drMapAngle" />

<playerStartPoint value="info_player_start" />

<infoFileExtension value=".darkradiant" />

</mapFormat>

<stimResponseSystem>

<stims>

<stim id="0" name="STIM_FROB" caption="Frob" icon="sr_icon_frob.png" />

<stim id="1" name="STIM_FIRE" caption="Fire" icon="sr_icon_fire.png" />

<stim id="2" name="STIM_WATER" caption="Water" icon="sr_icon_water.png" />

<stim id="3" name="STIM_DAMAGE" caption="Damage" icon="sr_icon_damage.png" />

<stim id="4" name="STIM_SHIELD" caption="Shield" icon="sr_icon_shield.png" />

<stim id="5" name="STIM_HEALING" caption="Healing" icon="sr_icon_healing.png" />

<stim id="6" name="STIM_HOLY" caption="Holy" icon="sr_icon_holy.png" />

<stim id="7" name="STIM_MAGIC" caption="Magic" icon="sr_icon_magic.png" />

<stim id="8" name="STIM_TOUCH" caption="Touch" icon="sr_icon_touch.png" />

<stim id="9" name="STIM_KNOCKOUT" caption="Knockout" icon="sr_icon_knockout.png" />

<stim id="10" name="STIM_KILL" caption="Kill" icon="sr_icon_kill.png" />

<stim id="11" name="STIM_RESTORE" caption="Restore" icon="sr_icon_restore.png" />

<stim id="12" name="STIM_LIGHT" caption="Light" icon="sr_icon_light.png" />

<stim id="13" name="STIM_SOUND" caption="Sound" icon="sr_icon_sound.png" />

<stim id="14" name="STIM_VISUAL" caption="Visual" icon="sr_icon_visual.png" />

<stim id="15" name="STIM_INVITE" caption="Invitation" icon="sr_icon_invite.png" />

<stim id="16" name="STIM_READ" caption="Readable" icon="sr_icon_readable.png" />

<stim id="17" name="STIM_RANDOM" caption="Random" icon="sr_icon_random.png" />

<stim id="18" name="STIM_TIMER" caption="Timer" icon="sr_icon_timer.png" />

<stim id="19" name="STIM_COMMUNICATION" caption="Communication" icon="sr_icon_communication.png" />

<stim id="20" name="STIM_GAS" caption="Gas" icon="sr_icon_gas.png" />

<stim id="21" name="STIM_TRIGGER" caption="Trigger" icon="sr_icon_trigger.png" />

<stim id="22" name="STIM_TARGET_REACHED" caption="Target Reached" icon="sr_icon_target_reached.png" />

<stim id="23" name="STIM_PLAYER" caption="Player" icon="sr_icon_thief.png" />

<stim id="24" name="STIM_FLASH" caption="Flash" icon="sr_icon_flash.png" />

<stim id="25" name="STIM_BLIND" caption="Blind" icon="sr_icon_flash.png" />

</stims>

<properties>

<!-- The key root names "class" refers to "sr_class_N" -->

<property name="class" classes="SR" />

<property name="use_bounds" classes="S" />

<property name="magnitude" classes="S" />

<property name="falloffexponent" classes="S" />

<property name="time_interval" classes="S" />

<property name="type" classes="SR" />

<property name="state" classes="SR" />

<property name="radius" classes="S" />

<property name="radius_final" classes="S" />

<property name="duration" classes="S" />

<property name="timer_type" classes="S" />

<property name="timer_reload" classes="S" />

<property name="timer_time" classes="S" />

<property name="timer_waitforstart" classes="S" />

<property name="chance" classes="SR" />

<property name="random_effects" classes="R" />

<property name="max_fire_count" classes="S" />

<property name="bounds_mins" classes="S" />

<property name="bounds_maxs" classes="S" />

<property name="velocity" classes="S" />

</properties>

<customStimStorageEClass value="worldspawn" />

<customStimKeyPrefix value="editor_dr_stim_" />

<stimResponsePrefix value="sr_" />

<lowestCustomStimId value="1000" />

<responseEffectPrefix value="effect_" />

<selfEntity value="_SELF" />

</stimResponseSystem>

<objectivesEditor>

<objectivesEClass name="atdm:target_addobjectives" />

<objectivesEClass name="target_tdm_addobjectives" />

</objectivesEditor>

<conversationSystem>

<conversationCommandPrefix value="atdm:conversation_command_" />

</conversationSystem>

<difficulty>

<numLevels value="3" />

<defaultSettingsEclass value="atdm:difficulty_settings_default" />

<mapSettingsEclass value="atdm:difficulty_settings" />

<appTypeIgnore value="_IGNORE" />

<difficultyMenuEclass value="difficultyMenu" />

</difficulty>

</game>

 

 

Link to comment
Share on other sites

Put a .txt at the end.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Here's a new build (pre2), with a little more code refactoring, plus a new "Floor Selection" feature, which had been requested long ago:

 

Links obsolete, see first post.

x86: http://www.dramtheth...7.4pre2-x86.exe

x64: http://www.dramtheth...7.4pre2-x64.exe

 

That's probably it for the moment being, I'm unlikely to find any more time to work on DR, apart from publishing the actual 1.7.4/1.8.0 release. After 2.0 is out, I might look into incorporating a few changes to better support its new folder structure.

Edited by greebo
Link to comment
Share on other sites

@Greebo: As there is no "like"-button in your post, I just wanna say:

 

Obsttorte likes this.

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

This means that the entities you have currently selected gets floored to the ground. For example you create a stool or a bed, use this and the entity does stand on the ground nicely, without you having to do this manually.

 

As most models don't have their origin at the bottom and the distance between the origin's z-coordinate and those of the bottom plane doesn't neccessarily have to be a factor of an often used grid size, this is extremely useful and will safe the mappers a whole lot of time.

  • Like 2

FM's: Builder Roads, Old Habits, Old Habits Rebuild

Mapping and Scripting: Apples and Peaches

Sculptris Models and Tutorials: Obsttortes Models

My wiki articles: Obstipedia

Texture Blending in DR: DR ASE Blend Exporter

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recent Status Updates

    • OrbWeaver

      Does anyone actually use the Normalise button in the Surface inspector? Even after looking at the code I'm not quite sure what it's for.
      · 4 replies
    • Ansome

      Turns out my 15th anniversary mission idea has already been done once or twice before! I've been beaten to the punch once again, but I suppose that's to be expected when there's over 170 FMs out there, eh? I'm not complaining though, I love learning new tricks and taking inspiration from past FMs. Best of luck on your own fan missions!
      · 4 replies
    • The Black Arrow

      I wanna play Doom 3, but fhDoom has much better features than dhewm3, yet fhDoom is old, outdated and probably not supported. Damn!
      Makes me think that TDM engine for Doom 3 itself would actually be perfect.
      · 6 replies
    • Petike the Taffer

      Maybe a bit of advice ? In the FM series I'm preparing, the two main characters have the given names Toby and Agnes (it's the protagonist and deuteragonist, respectively), I've been toying with the idea of giving them family names as well, since many of the FM series have named protagonists who have surnames. Toby's from a family who were usually farriers, though he eventually wound up working as a cobbler (this serves as a daylight "front" for his night time thieving). Would it make sense if the man's popularly accepted family name was Farrier ? It's an existing, though less common English surname, and it directly refers to the profession practiced by his relatives. Your suggestions ?
      · 9 replies
    • nbohr1more

      Looks like the "Reverse April Fools" releases were too well hidden. Darkfate still hasn't acknowledge all the new releases. Did you play any of the new April Fools missions?
      · 5 replies
×
×
  • Create New...