Git Product home page Git Product logo

dhewm3-sdk's People

Contributors

andre-d avatar coldtobi avatar danielgibson avatar devnexen avatar jayaddison avatar kalamatee avatar kevindqc avatar leffmann avatar scottwakeling avatar svdijk avatar turol avatar yamagi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dhewm3-sdk's Issues

Doom3[CC]: Current state and what still needs to be done

Ok, the current state compiles and kinda works..
You can find it in this repository in the doom3cc branch

Still TODO (likely incomplete): likely only d3cclib/* needs to be modified, and the integration into the rest of the gamecode code is complete - but of course it's no problem if we need to do additional changes to the gamecode after all:

  • Make language selection work, I think ccBst::initLanguages() in d3cclib/CCBst.cpp was supposed to do that, but it's not called from anywhere in the code I got from Víctor - likely it was still WIP or he didn't get the final code?
  • memory leak: ccBst::Tree is not deleted completely (only the root node, not the rest of the tree)
  • several memory leaks, see all the TODOs and FIXMEs I added to the code
  • Resurrection of Evil (d3xp) support - easy enough, we only need to replicate the changes done in game/ there and do like two small additions/modifications to the cmake file
  • English translations that are missing and for RoE
  • Document how to integrate D3CC into other mods; there is a PDF describing the process but there's at least one additional thing that I added (I can do this part, should not take me too long)
  • On/Off option (CVar, maybe setting in menu) for the radar in the HUD
  • proper sub appearances or proper sub line counting (see #12 (comment))
  • Separate GUI for subtitles (instead of in HUD), see same comment as before
  • Subtitles canceling: When playing audio logs or videodiscs from within the PDA, stopping the playback does not stop the subtitles playback.
  • Enhancing subtitle priority system somehow, let user choose what to see (e.g. no SFX descriptions), see #12 (comment) and following
  • Something's wrong with the timings, should be fixed if possible (see #12 (comment))
  • Animation speed for scrolling captions, depending on a mix of duration and text length (see #12 (comment))
  • Some way to find out (in mod DLL) how many lines a string will need when rendered (see #12 (comment))
  • Once it all works, port it back to the original Doom3 SDK so it also works with vanilla Doom3 1.3.1
    (I guess this is just diffing this branch against the dhewm3 SDK's master branch and then applying the resulting patch to the Doom3 SDK and fix the minor merge issues that might occur, shouldn't be too hard, we have no changes here that are dhewm3 specific)

ruiner runtime errors

We've come across 2 c++ runtime errors in Ruiner so far. Both crashes are rare and hard to replicate and there is nothing in the console when it happens. Game will crash and the runtime error pops up.

assertion failure
renderworld.cpp line 954
expression bound [0][0].... (i'll write the full details if you need it)

Seems to happen most when cacodemons or something that inherits from them is around. I can not confirm this the only thing to cause it.

The second is sound related. This one is rare too. Seems to happen if you hit escape just immediately after a level loads.

assertion failure
snd_decoder.cpp line 525
expression false

A side note: I have not tested the mod with the source hook removed version yet and this is from my fork. Both were in win 64bit versions on windows 10. Systems configurations for all 3 systems are completely different.

cdoom: "shutting down: Couldn't load default.cfg"

I tried starting the "Classic Doom 3" mod, but I'm getting the following error on the console: "shutting down: Couldn't load default.cfg".

I've used the link here to download it from ModDB. And unpacked the cdoom folder from the zip file to ~/.local/share/dhewm3/.

I'm on Debian Sid and am using the dhewm3 package Debian provides (1.5.2+dfsg-1). Downloading and unpacking the Doom3 demo to ~/.local/share/dhewm3/demo/ and then starting it worked without any issues.

The full console log output looks as follows:

$ dhewm3 +set fs_game cdoom
dhewm3 1.5.2.1305 linux-x86_64 Jun 13 2022 13:37:42 using SDL v2.28.0
SDL video driver: x11
Logging console output to /home/linus/.local/share/dhewm3/dhewm3log.txt
terminal support enabled ( use +set in_tty 0 to disable )
pid: 1941073
30848 MB System Memory
found interface lo - loopback
found interface br0 - 192.168.23.1/255.255.255.0
found interface wlp1s0 - 10.204.36.69/255.255.240.0
doom using MMX & SSE & SSE2 for SIMD processing
enabling Flush-To-Zero mode
enabling Denormals-Are-Zero mode
WARNING: base path '/usr/share/games/doom3' does not exist
----- Initializing File System -----
Loaded pk4 /home/linus/.local/share/dhewm3/cdoom/cdoom_main.pk4 with checksum 0x9ff6284b
Loaded pk4 /home/linus/.local/share/dhewm3/cdoom/cdoom_maps.pk4 with checksum 0xa7bb2433
Loaded pk4 /home/linus/.local/share/dhewm3/cdoom/cdoom_models.pk4 with checksum 0x22e8b18
Loaded pk4 /home/linus/.local/share/dhewm3/cdoom/cdoom_sounds.pk4 with checksum 0xae50243c
Loaded pk4 /home/linus/.local/share/dhewm3/cdoom/cdoom_textures.pk4 with checksum 0x1be0b07f
Current search path:
/home/linus/.config/dhewm3/cdoom
/home/linus/.local/share/dhewm3/cdoom
/home/linus/.local/share/dhewm3/cdoom/cdoom_textures.pk4 (163 files)
/home/linus/.local/share/dhewm3/cdoom/cdoom_sounds.pk4 (113 files)
/home/linus/.local/share/dhewm3/cdoom/cdoom_models.pk4 (449 files)
/home/linus/.local/share/dhewm3/cdoom/cdoom_maps.pk4 (66 files)
/home/linus/.local/share/dhewm3/cdoom/cdoom_main.pk4 (456 files)
/home/linus/.config/dhewm3/base
/home/linus/.local/share/dhewm3/base
Addon pk4s:
shutting down: Couldn't load default.cfg
idRenderSystem::Shutdown()
Shutting down OpenGL subsystem
Sys_Error: Couldn't load default.cfg
shutdown terminal support

cdoom doesn't work

I tried out the branch that uses the cdoom mod, and it doesn't work.

At first, I tried the path /user/lib/x86_64-linux-gnu/dhewm3/cdoom.so

Then, I tried /user/lib/x86_64-linux-gnu/dhewm3/cdoom/cdoom.so

Neither works, and when I boot up Dhewm3 and go to the mods menu, it never shows up.

Ruiner sdk Known Issues

Here is a list of known problems and their status for the Ruiner sdk. This is for the initial public testing.

Bug: Weapons make "Beeping" sounds during when fired or other animations.
info: Not sdk related so far. created when a sound is called to play and doesn't exist or sometimes a missing animation for either the weapon or player.
Status: problems were in def and script files, not sdk. Fixes have been done and will be next ruiner patch.

Bug: Frozen Ragdolls after headshots
info: Not sdk related. This is a problem caused by sys.waits in the enemy base script for when head shots happen. During hectic times the waits are skipped or not done properly. Sometimes this is also caused from a missing headshot key in the weapon's damage def.
Status: Fixed. Will be apart of the next game patch. SDK needs actor.cpp updated.

Not a Bug: Holding down the unused run key will also cause zooming. Zoom key does not work.
Status: This is intentional and apart of the new walk aiming system for the upcoming patch. System will not work without the updated defs, scripts and animation files.

Bug: Cross hair jumps around and sometimes sticks to objects and the world. Projectiles don't always fire exactly at it.
info: The crosshair is drawn at the end of a line. The end position of this line is converted to gui cordinates and used by the crosshair for it's placement. The info for it is found in player.cpp> idPlayer::Think. starting around line 7850. You can see this line by typing g_debugweapon 1 in the console. Whereever the line is stopped is where the crosshair goes. It's worth noting that is unused code from an old version of this system floating around the player.cpp.
The actual crosshairs are found in the cursor.gui file. Cross hair style and their offset are set per weapon in the cursor.gui. Some of these offsets are wrong btw.
Status: Still investigating the best fix for this. Getting a good thirdperson crosshair has been an issue since day 1 with this mod. In the mean time laser sites for all projectile weapons and launching projectiles from the barrel direction have been activated. This was an un-used mechanic added in the mod. Will be apart of the 2018 update.

[dentonmod] Library search seems to be hardcoded

I've compiled dentonmod.so for Linux.

I want to be able to run the mod without putting dentonmod.so (or a symlink) in /usr/lib64/dhewm3/. The reason for this is I don't want messing around with the root filesystem.

Is there a way to change the directory where the game/mod searches for .so files?

Suggestion: change CMakeLists.txt to build on MacOS 10.5

Building Lost Mission on a PowerPC Mac (MacOS 10.5) failed with the following errors:

cc1plus: error: unrecognized command line option "-ffp-contract=off"
cc1plus: error: unrecognized command line option "-Wno-strict-overflow"

The first one I fixed following advice on the same issue with Dhewm3 by changing "add_compile_options(-ffp-contract=off)" in CMakeLists.txt to:

CHECK_CXX_COMPILER_FLAG("-ffp-contract=off" cxx_has_fp-contract)
if(cxx_has_fp-contract)
add_compile_options(-ffp-contract=off)
endif()

I also replaced "add_compile_options(-Wno-strict-overflow)" with:

CHECK_CXX_COMPILER_FLAG("-Wno-strict-overflow" cxx_has_Wno-strict-overflow)
if(cxx_has_Wno-strict-overflow)
add_compile_options(-Wno-strict-overflow)
endif()

Now I'm able to build d3le.dylib and run the mod.

HQ Music after respawn bug

There is an issue with the current and future version of HardQore with the music system. I'm still wrapping my around a way to fix it....

While playing the demo, if you die and re spawn; it resets entity info related to the current music playing.

[d3le] Missing Sounds in The Lost Mission mod

In Version 1.3 there still seem to be lots of missing sounds.

Pinging @Arl90 as these are bugs in the game data, not in the code, so they should ideally be fixed in a future d3le update.

Just starting the first level (le_enpro1) will give lots of warnings, and occasionally you will hear that beep sound (with s_playDefaultSound 1 which is default):

WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/heavy_water_pipes_01/hwpipe_06.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/heavy_water_pipes_01/hwpipe_07.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/heavy_water_pipes_01/hwpipe_08.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/heavy_water_pipes_01/hwpipe_09.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_06.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_07.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_08.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_09.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_10.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_11.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_12.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_13.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_14.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_15.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_16.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_17.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_18.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_19.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_20.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_21.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_22.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_23.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_24.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_25.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_26.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_27.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_creaks_s1/reverberant_metal_creak_s1_28.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_stresses_s3/metal_stressverb_06.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_stresses_s3/metal_stressverb_07.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_stresses_s3/metal_stressverb_08.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/metallic_noises/reverberant_metal_stresses_s3/metal_stressverb_09.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_06.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_07.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_08.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_09.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_10.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_11.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_12.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_13.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_14.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_15.wav' using default
WARNING: Couldn't load sound 'sound/_reissue/ambient_events/pipe_moans/pipe_moans_s1/pipe_moans_s1_16.wav' using default

As an example, I looked at those warnings for hwpipe_06.wav more closely: Those files are referenced in sound/world_ambience.sndshd => ambient_events/metal/heavy_water_pipes {.
That shader also uses hwpipe_01.wav etc (up to ..._09); the first sound files do exist, but hwpipe_06.wav, hwpipe_07.wav (or .ogg) etc do not exist, so the warnings are legit.

We could collect more missing sounds in d3le in this issue, as a reference for the Lost Mission team.

Planning an SDK port for the mod "Perfected Doom 3"

I would like to contribute to the Dhewm3 source port by making my favorite mod playable on it. So I did the direct way of adding the source code to the sdk repository and compile the .so files (I'm on Linux)

However when I run the executable with './dhewm3 +set fs_game perfected' I'm getting an error message:

----- Game Map Shutdown -----


ERROR: Error: file script/doom_events.script, line 13: Unknown event 'isLowered'

I don't know how I can address this so any help would be appreciated.

EDIT: I tried to redo the .so file since I didn't take into account the added .cpp and .h files in both the game and d3xp folders.

However when I try to recompile the .so files I get this error message:

/home/username/dhewm3/dhewm3-sdk-perfected/game/../idlib/../renderer/qgl.h:45:10: fatal error: SDL_opengl.h: No such file or directory
45 | #include <SDL_opengl.h>
| ^~~~~~~~~~~~~~

I installed and compiled the latest release of SDL2 and is in fact located at /usr/include/SDL2

I don't know what is wrong now.

Doom3[CC]: Suggestion - Release Packages

I would like to make an suggestion regarding Doom3[CC] mod. I cannot build the package on my Steam Deck for some reason, so hopefully people here will help out, to make a lot of other people’s lives a lot easier.

Maybe built packages be released for others to download the .dll or .so files more easily instead of building from the source ourselves? This can apply to other branches as well.

Thank you so much.

Submitting Hard Corps to the list

Work has wrapped up on the updated version of hardqore2 for dhewm 3 hard corps.

I have git up with only the updated files. Rest of the files are the same as what is here.

https://github.com/revility/hardcorps

Outside of a few possible bug fixes in the future; i would consider this pretty stable. The documents folder has a full list of changes to the files & what for.

Hard corps is already uploaded & will go live 10.15.21.

CDOOM: setting the mod into fullscreen on MacOS

I'm having trouble setting the mod into fullscreen on MacOS when I load from base. I have:

seta r_customHeight "1200"
seta r_customWidth "1600"
seta r_fullscreen "1"
seta r_mode "-1"

1200 x 1600 is supported in window mode

But it resets r_mode to 3 and r_fullscreen to 0 and then kicks me out to windowed 640x480. Any ideas?

Would be good to have a GUI function to set fullscreen.

[d3le] Unknown stat 'adrenaline' added to player's inventory

Apologies if this should actually be posted to https://www.moddb.com/mods/the-lost-mission/downloads/d3-lost-mission/. I don't know how this feature is separated: game files vs code.

Versions: Doom3_The_Lost_Mission_1.3.rar with d3le (2e1dc5c) and dhewm3 (dhewm/dhewm3@a7e4eb8).

Adrenaline cannot be picked up. There is the following message in the console:

WARNING: Unknown stat 'adrenaline' added to player's inventory

To reproduce:

map game/le_exis1.map
setviewpos -2911 2573 4.25 70                                                                                                                                                     

Adrenaline should be right in front of the player on the floor to try to pick up.

This also happens on other maps.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.