Jump to content
The Dark Mod Forums

Recommended Posts

Posted (edited)

Hello dear developers! I tested version 2.10 and noticed a performance improvement over version 2.09. This pleases us! But I also noticed a bug with the sound... The player, when walking to the left (button A), the volume of the sound of his steps goes down. In some missions even this sound is inaudible...
Please, if possible, make the volume of the step sounds the same for all four directions for realism.
 


I ask you, if possible, to make a fix to version 2.10, as it is a very long time to wait for the release of version 2.11

 

Edited by Gadavre
  • Like 3
Posted (edited)

I can confirm this, on Linux anyway. Walking left, you make the same footstep sounds as crouching and creeping forwards.

Edited by thebigh
  • Like 1

My missions:           Stand-alone                                                      Duncan Lynch series                              

                                      Down and Out on Newford Road              the Factory Heist

                                The Wizard's Treasure                             A House Call

                                                                                                  The House of deLisle                                                                                                  

                              

Posted

Confirmed in Windows. Only when sidestepping left. That's rather strange.

  • Like 2

A word of warning, Agent Denton. This was a simulated experience; real LAMs will not be so forgiving.

Posted

I could be wrong because it was a fast look at the code but based on my debug section of the Move code, the problem seems to be that, when the player steeps to the left the "moveType" string, is set to "creep" and when moving right, is set to "walk", that causes different sound volumes to be set for the final steep sound. 

Posted

I think I found the real problem

on the player cpp file on UpdateConditions() function

this code 

// DarkMod: Catch the creep modifier
...
	else {
		int creepLimit = cv_pm_creepmod.GetFloat() * 127;
		AI_CREEP = (usercmd.buttons & BUTTON_CREEP) ||
			(idMath::Abs(usercmd.forwardmove) <= creepLimit && idMath::Abs(usercmd.rightmove <= creepLimit));
	}

 

Needs to be like this

// DarkMod: Catch the creep modifier
...
	else {
		int creepLimit = cv_pm_creepmod.GetFloat() * 127;
		AI_CREEP = (usercmd.buttons & BUTTON_CREEP) |
			(idMath::Abs(usercmd.forwardmove) <= creepLimit && idMath::Abs(usercmd.rightmove) <= creepLimit);
	}

 

The close ) for the idMath::Abs was on the wrong place.

The change to bitwise OR |  instead of the logic OR || was a recommendation of visual studio 2022, not something I really know if necessary, changing that didn't solved the bug nor the behavior, a better programmer may explain why VS recommended that change.

  • Like 4
Posted (edited)
1 hour ago, HMart said:

on the player cpp file on UpdateConditions() function

I don't understand. Where can I find player cpp file ? Please give me the path to this file and I'll fix it myself.

Edited by Gadavre
Posted

I'm talking about the engine and game source code, the c++ source code. 

Unfortunately, unless you know how to code in c++ and how to compile the engine than you will have to wait for the TDM team to solve that bug.

The best way is to make a bug report and link this thread there.

Posted (edited)
8 minutes ago, HMart said:

The best way is to make a bug report and link this thread there.

Where do I write  a bug report? What topic?

 

Edited by Gadavre
Posted (edited)

HMart

I tested the old version 2.07, it doesn't have this bug...   For some reason, creating new versions of the game leads to new bugs.
I already thought about trying to transfer all the new textures, models, scripts and sounds from the new version 2.10 to the old version 2.07. But I'm not a programmer, it's very complicated.

Edited by Gadavre
  • Haha 2
Posted
7 minutes ago, Gadavre said:

HMart

... For some reason, creating new versions of the game leads to new bugs. ...

haha yes that is true, is a fact of game development, is because people are writing new code, copying or moving code around and sometimes simple mistakes are made, in code, even a simple comma in the wrong place, can break a entire game. And even code that worked fine before, after some new work can stop working for some obscure reason, is called regressions, 3 steeps forward, 1 steep backward. :)

Have patience and just wait, I'm sure that when someone in the team sees this, they will solve it and maybe, make a patch or solve it for the next TDM version but only them can decided that. 

Posted
58 minutes ago, HMart said:

3 steeps forward, 1 steep backward.

Some of which make a creep sound, other normal footstep sounds.

  • Haha 1

My missions:           Stand-alone                                                      Duncan Lynch series                              

                                      Down and Out on Newford Road              the Factory Heist

                                The Wizard's Treasure                             A House Call

                                                                                                  The House of deLisle                                                                                                  

                              

Posted
On 4/16/2022 at 2:36 PM, HMart said:

I think I found the real problem

on the player cpp file on UpdateConditions() function

this code 

// DarkMod: Catch the creep modifier
...
	else {
		int creepLimit = cv_pm_creepmod.GetFloat() * 127;
		AI_CREEP = (usercmd.buttons & BUTTON_CREEP) ||
			(idMath::Abs(usercmd.forwardmove) <= creepLimit && idMath::Abs(usercmd.rightmove <= creepLimit));
	}

 

Needs to be like this

// DarkMod: Catch the creep modifier
...
	else {
		int creepLimit = cv_pm_creepmod.GetFloat() * 127;
		AI_CREEP = (usercmd.buttons & BUTTON_CREEP) |
			(idMath::Abs(usercmd.forwardmove) <= creepLimit && idMath::Abs(usercmd.rightmove) <= creepLimit);
	}

 

The close ) for the idMath::Abs was on the wrong place.

The change to bitwise OR |  instead of the logic OR || was a recommendation of visual studio 2022, not something I really know if necessary, changing that didn't solved the bug nor the behavior, a better programmer may explain why VS recommended that change.

 

Confirmed this code change fixes the issue, and I can't find any bugs that it could possibly introduce, though my testing was limited to just playing the game and trying to break it.

  • Like 3

I always assumed I'd taste like boot leather.

 

Posted (edited)
On 4/23/2022 at 5:16 PM, AluminumHaste said:

I think I found the real problem

thank you.  Has this already been fixed in the latest dev16485-9903 build?

Edited by Gadavre
Posted
On 4/16/2022 at 8:36 PM, HMart said:

I think I found the real problem

on the player cpp file on UpdateConditions() function

this code 

// DarkMod: Catch the creep modifier
...
	else {
		int creepLimit = cv_pm_creepmod.GetFloat() * 127;
		AI_CREEP = (usercmd.buttons & BUTTON_CREEP) ||
			(idMath::Abs(usercmd.forwardmove) <= creepLimit && idMath::Abs(usercmd.rightmove <= creepLimit));
	}

 

Needs to be like this

// DarkMod: Catch the creep modifier
...
	else {
		int creepLimit = cv_pm_creepmod.GetFloat() * 127;
		AI_CREEP = (usercmd.buttons & BUTTON_CREEP) |
			(idMath::Abs(usercmd.forwardmove) <= creepLimit && idMath::Abs(usercmd.rightmove) <= creepLimit);
	}

 

The close ) for the idMath::Abs was on the wrong place.

The change to bitwise OR |  instead of the logic OR || was a recommendation of visual studio 2022, not something I really know if necessary, changing that didn't solved the bug nor the behavior, a better programmer may explain why VS recommended that change.

VS probably recommended to change to bitwise OR because a bitwise AND was used in the term before that and VS did not understand that what we actually want is a boolean. I bet if you changed it to 

AI_CREEP = (usercmd.buttons & BUTTON_CREEP) != 0 ||
   (idMath::Abs(usercmd.forwardmove) <= creepLimit && idMath::Abs(usercmd.rightmove) <= creepLimit);

, i.e., convert the bitwise AND result directly to bool, VS would not recommend to change the OR operator.

  • Thanks 1

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

    • datiswous

      I moved from Manjaro Linux (rolling release) to Linux Mint (LTS). One of the reasons was that I found the updates a bit too often and long. But now on Mint I get updates every day, although they're usually small updates.
      · 3 replies
    • JackFarmer

      "Hidden Hands: Vitalic Fever" - new update available including subtitles & compressed briefing video (thanks to @datiswous) and several fixes.
      · 0 replies
    • Wolfmond

      🇬🇧

      2025-04-20
      I'd like to track my level design progress a bit more often now, so I'm using the feed in my profile here.
      I've been working intensively on Springheel's YouTube course over the past few days. I'm currently up to lesson 8. There is so much information that needs to be processed and practiced. 
      I have started to create my own house. As I don't have the imagination to create a good floor plan, I grabbed a floor plan generator from Watabou and experimented with it. I chose a floor plan that I will modify slightly, but at least I now have an initial idea. 
      I used two guards as a measuring tape: The rooms are two guards high. It turned out that I can simply double the number of boxes in DarkRadiant in grid size 8 that are drawn in the floor plan. 
      I practiced the simplest things on the floor plan first. Drawing walls, cutting walls, inserting doors, cutting out frames, creating VisPortals, furnishing rooms.
      I have had my first success in creating a book. Creating a book was easier than I thought. I have a few ideas with books. The level I'm creating will be more or less a chill level, just for me, where I'll try out a few things. I don't have an idea for my own mission yet. I want to start small first.
      For the cellar, I wanted to have a second entrance, which should be on the outside. I'm fascinated by these basement doors from the USA, I think they're called Bilco basement doors. They are very unusual in Germany, but this type of access is sometimes used for deliveries to restaurants etc., where barrels can be rolled or lifted into the cellar. 
      I used two Hatch Doors, but they got completely disoriented after turning. I have since got them reasonably tamed. It's not perfect, but it's acceptable. 
      In the cellar today I experimented with a trap door that leads to a shaft system. The rooms aren't practically finished yet, but I want to continue working on the floor plan for now. I'll be starting on the upper floor very soon.

      __________________________________________________________________________________
      🇩🇪

      2025-04-20

      Ich möchte nun mal öfters ein bisschen meinen Werdegang beim Leveldesign tracken, dazu nutze ich hier den Feed in meinem Profil.
      Ich habe mich in den vergangenen Tagen intensiv mit dem Youtube-Kurs von Springheel beschäftigt. Aktuell bin ich bis zu Lektion 8 gekommen. Das sind so viele Informationen, die erstmal verarbeitet werden wollen und trainiert werden wollen. 

      Ich habe mich daran gemacht, ein eigenes Haus zu erstellen. Da mir die Fantasie fehlt, einen guten Raumplan zu erstellen, habe ich mir einen Grundrissgenerator von Watabou geschnappt und damit experimentiert. Ich habe mich für einen Grundriss entschieden, den ich noch leicht abwandeln werde, aber zumindest habe ich nun eine erste Idee. 

      Als Maßband habe ich zwei Wächter genommen: Die Räume sind zwei Wächter hoch. Es hat sich herausgestellt, dass ich in DarkRadiant in Gittergröße 8 einfach die doppelte Anzahl an Kästchen übernehmen kann, die im Grundriss eingezeichnet sind. 

      Ich habe bei dem Grundriss erstmal die einfachsten Sachen geübt. Wände ziehen, Wände zerschneiden, Türen einsetzen, Zargen herausschneiden, VisPortals erstellen, Räume einrichten.

      Ich habe erste Erfolge mit einem Buch gehabt. Das Erstellen eines Buchs ging leichter als gedacht. Ich habe ein paar Ideen mit Bücher. Das Level, das ich gerade erstelle, wird mehr oder weniger ein Chill-Level, einfach nur für mich, bei dem ich ein paar Sachen ausprobieren werde. Ich habe noch keine Idee für eine eigene Mission. Ich möchte erst einmal klein anfangen.

      Beim Keller wollte ich gerne einen zweiten Zugang haben, der sich außen befinden soll. Mich faszinieren diese Kellertüren aus den USA, Bilco basement doors heißen die, glaube ich. Diese sind in Deutschland sehr unüblich, diese Art von Zugängen gibt es aber manchmal zur Anlieferung bei Restaurants etc., wo Fässer dann in den Keller gerollt oder gehoben werden können. 
      Ich habe zwei Hatch Doors verwendet, die allerdings nach dem Drehen vollkommen aus dem Ruder liefen. Inzwischen habe ich sie einigermaßen gebändigt bekommen. Es ist nicht perfekt, aber annehmbar. 
      Im Keller habe ich heute mit einer Falltür experimentiert, die zu einem Schachtsystem führt. Die Räume sind noch quasi nicht eingerichtet, aber ich möchte erstmal am Grundriss weiterarbeiten. In Kürze fange ich das Obergeschoss an.



      · 2 replies
    • JackFarmer

      On a lighter note, thanks to my cat-like reflexes, my superior puzzle skills and my perfect memory, I was able to beat the remastered version of "Tomb Raider: The Last Revelation" in a new superhuman record time of 23 h : 35 m, worship me!
      · 3 replies
    • Goblin of Akenash

      My mapping discord if anyone is interested, its more of a general modding thing rather than just for TDM 
      https://discord.gg/T4Jt4DdmUb

       
      · 0 replies
×
×
  • Create New...