[D2X-Rebirth] Game crashes on certain levels of fanmade level pack "The Enemy Within"
#1
Sorry, I'm aware "The Enemy Within" does some strange stuff with mapping that would be a no-no with the DOS version of Descent, but it used to work on D2X-Rebirth as far as I know. The latest build 04-14-18 exhibits these issues (apparently in both single and multiplayer, Windows version):

• Start level 1, game crashes shortly after you make visual contact with the enemy. Crashes with an error message:
* "similar\main\robot.cpp:103: begin 4294967231 past 00e07980 end 1600 "robot_joints"". Crashes 100% of the time when you do this, and it was only a recently introduced issue as build 01-17-18 does NOT crash in this way.

• Start level 23, game displays black screen, hard crashes the game without error message, game simply closes. This apparently has been an issue since 0.58.1.

I realize this is a fan mission pack so it can't be guaranteed to work compared to the base game for D1 and D2... but if there's any way to get it working again that'd be great! I don't think it technically takes advantage of any of the wackier D2X-XL specific map stuff and I remember it working in an earlier version, but I could be mistaken for level 23.

Other various minor issues in the latest build of 04-14-18:

• Movies and robot previews do not work in Descent 2 for the standard missions (again, a recent issue, works in build 01-17-1Cool.
• Thief bot sometimes acts unusual in 2 player co-op, tends to not move the way it does in single player (it often seems to get "stuck" in one place making it easier to hit"), doesn't always do this on every level though.
• [feature request] Some player missions include their own ham/sng/txb files and to use them properly seems to require manually renaming them to override the ones for Descent/Descent 2 if modded weapons are part of the fanmade missions. DXX-Rebirth handles these modded weapons fine, but is it possible to check for filename .ham/.txb that match the same mission you're playing before using the Descent standard ones?
Reply
#2
(02-20-2019, 04:11 AM)bkroo Wrote: The latest build 04-14-18 exhibits these issues (apparently in both single and multiplayer, Windows version):
Please don't use this build for anything. It's old and has known issues.
(02-20-2019, 04:11 AM)bkroo Wrote: • Start level 1, game crashes shortly after you make visual contact with the enemy. Crashes with an error message:
* "similar\main\robot.cpp:103: begin 4294967231 past 00e07980 end 1600 "robot_joints"". Crashes 100% of the time when you do this, and it was only a recently introduced issue as build 01-17-18 does NOT crash in this way.
Confirmed. This was an unreported bug in the 01-17 build that was fixed in the 04-14 build by Use partial_range for robot_get_anim_state. Older builds exhibited undefined behavior when presented with invalid robot gun animation data.
(02-20-2019, 04:11 AM)bkroo Wrote: • Start level 23, game displays black screen, hard crashes the game without error message, game simply closes. This apparently has been an issue since 0.58.1.
This works fine for me in tip.
(02-20-2019, 04:11 AM)bkroo Wrote: I realize this is a fan mission pack so it can't be guaranteed to work compared to the base game for D1 and D2... but if there's any way to get it working again that'd be great!
Fix the robot gun animations not to access out of range data and it should work fine. Invalid animations have never been defined to be supported, so it's pure luck that older versions tolerated it well enough that the author never felt pressured to fix this.

I could patch the engine to detect invalid animations. I could easily enough make it refuse to use robots with invalid animations. Making it coerce the animations to something stable would be a bit more work. I can't guarantee that coerced animations would look right, though. It would be much better to fix the data in the mission itself.
(02-20-2019, 04:11 AM)bkroo Wrote: • Movies and robot previews do not work in Descent 2 for the standard missions (again, a recent issue, works in build 01-17-1Cool.
This was previously reported as (D2) Certain movies don't play on 21 April. It is a bug in PhysFS, which has since been fixed in their code and a workaround was added to the Rebirth code. Please update to a more recent build.
(02-20-2019, 04:11 AM)bkroo Wrote: • Thief bot sometimes acts unusual in 2 player co-op, tends to not move the way it does in single player (it often seems to get "stuck" in one place making it easier to hit"), doesn't always do this on every level though.
Zico played with the thief bot code some. I don't know if this was ever addressed.
(02-20-2019, 04:11 AM)bkroo Wrote: • [feature request] Some player missions include their own ham/sng/txb files and to use them properly seems to require manually renaming them to override the ones for Descent/Descent 2 if modded weapons are part of the fanmade missions. DXX-Rebirth handles these modded weapons fine, but is it possible to check for filename .ham/.txb that match the same mission you're playing before using the Descent standard ones?
This can probably be done. Please link to a specific mission that would benefit from this, and describe exactly what you must do currently due to the lack of this feature.
Reply
#3
Ah, sorry - I was going off what I thought was the most recent build on the https://www.dxx-rebirth.com/download-dxx-rebirth/ page for downloads, but I did see there were more recent commits to Github. Is there somewhere else I've missed that is posting more up to date builds? My apologies for sounding stupid, I didn't realize there were newer builds compiled. If you could direct me to where to grab the latest Windows binary that'd be greatly appreciated as now I feel a bit of an ass for reporting bugs on an apparently outdated version. ^^;


Quote: Please link to a specific mission that would benefit from this, and describe exactly what you must do currently due to the lack of this feature.

The only level pack I could think of that needed this was The Lost Levels ( https://www.enspiar.com/dmdb/viewMission.php?id=554 ) but I see there is an updated version that no longer requires this. Pop all the files in its own folder under missions and it loads up its custom weapons now without needing a batch file to overwrite the base files. Oops! Sorry.
Reply
#4
That is the latest Windows build that AFP has published. I'm not aware of anyone publishing more recent builds, so everybody who relies on prebuilt files gets very outdated builds. If you want to track tip (or even just the latest in the 0.60.x line), you will need to build it yourself.

Don't feel too bad. You're not the first person I've had to inform that the prebuilt Windows builds are badly out of date, and doubtless will not be the last. I'm responsible for practically all of the changes made to the source these days, but I've never been involved in posting news or publishing releases. Some quick git history review says there were 4 contributions from jpcima in October 2018, 6 from computers57 in August, one from Kreator in May, 5 from roncli and 2 from derhass in April. Overall, fewer than 25 commits from people not me since 01 January 2018 (~13.5 months ago).

Regarding the feature: no problem about the unnecessary request. I might be a bit annoyed if I'd put effort into writing the feature first Wink, but spending a few minutes asking for more information is practically free. Do you have any other feature requests I can dismiss as "already works in latest version"? Smile
Reply
#5
The only other thing I can think of which might be handy (and may or may not be implemented now) is saving the IP address and port information of the last network game you played. It currently does not save the IP address when you exit to the main menu, or quit the game, so you have to type it in every time you want to connect. Not a huge issue, but it's a convenience thing.

It's nice to see the project is being actively developed. I need to see if I can get it compiled myself (I found the instructions in the dev section) or see if someone has a pre-compiled binary that's more up to date available.
Reply
#6
As of Cache user's last chosen host/port for direct_join (May 2018), the game remembers those settings when you return to the main menu, then go back to multiplayer. It doesn't persist them to disk though, so they are forgotten on program restart. If you have a single preferred peer, you can use -udp_hostaddr and friends to set an initial default value. That's not quite what you requested, since you maintain those by hand in the ini file (or Windows shortcut, or whatever other launching wrapper you use), but it does spare you ever retyping the values.
Reply
#7
Ah, that's a clever way of doing it if you regularly play with someone who always hosts, thank you for the suggestion!

There is one thing I thought of as a "quality of life" improvement I wish the original game had. D2 actually did this for bombs - in D1 you have an insta drop bomb button, but no way of seeing remaining bombs. D2 addressed this with an always visible bomb meter that is colored to indicate the quantity and type of bomb. DXX-Rebirth takes this quality of life improvement and made it an option in D1 which was nice.

In D2, camera options were greatly expanded, and with Shift-F1/Shift-F2 you can adjust the display window for primaries and secondaries to be Rear Camera, Guide Bot (single player), other player ships (multi) and missile view (both your own and others fired). The problem was if you were using Vulcan/Gauss, or missiles, you lost your ability to see remaining ammo and either have to switch the window back occasionally, or just kind of mentally keep track.

I'm not asking for something unfaithful like D2X-XL where floating ammo meters for all weapons are just kind of stuck to the screen edges. The beauty of Descent in all its original low-poly glory was that the display elements were cleverly built into the cockpit. Is it possible to add a "Show Ammo Counts in Alternate Camera View Modes (Shift-F1/F2)" option? Where when the primary or secondary view is toggled to be a camera, it still shows a line at the bottom of that camera view with the name of the current weapon and remaining ammo (for non-energy weapons)? You could fit it in one line at the bottom of the camera view, depending on the current weapon abbreviated like:

Laser L# (Q)
Vul: #####
Spread
Plasma
Fusion
Super L L# (Q)
Gau: #####
Helix
Phoenix
Omega

Concuss: ##
Homing: ##
Proximity:
Sm. Missile:
Mega: ##
Flash: ##
Guided: ##
Sm. Mine: ##
Mercury: ##
Earth: ##

Or just the first three letters of each weapon depending on space or something. It'd "fit" with the current cockpit display where it shows "Rear" "Guide-Bot", etc depending on the camera view, except cover up a small portion of the screen at the bottom as a tradeoff for being able to use the camera views without having to lose track of ammo for what you are using currently.

Edit: I don't usually play with the "no cockpit" view you can get with F3, but I also note that you can get to see both camera views and your ammo in the no-cockpit fullscreen view, so this doesn't actually give you something you can't already get in gameplay, it would just be a convenience for folks who like the in-cockpit (or status bar at the bottom) views.
Reply
#8
(02-23-2019, 11:32 AM)bkroo Wrote: Ah, that's a clever way of doing it if you regularly play with someone who always hosts, thank you for the suggestion!
Although a bit less convenient, if you have a small number of always-hosting friends, you can extend this by making shortcuts to run the game with different parameters, one per-friend. You would need to pick the right shortcut when starting (or deal with overriding in-game if you picked the "wrong" shortcut), but that would let you indirectly memorize multiple people.
(02-23-2019, 11:32 AM)bkroo Wrote: In D2, camera options were greatly expanded, and ... missile view (both your own and others fired)
The "allies missiles" part is something I added. Older Rebirth didn't do that.
(02-23-2019, 11:32 AM)bkroo Wrote: The problem was if you were using Vulcan/Gauss, or missiles, you lost your ability to see remaining ammo and either have to switch the window back occasionally, or just kind of mentally keep track.
This is part of why I always use the immersion view, so that I can see both at once.
(02-23-2019, 11:32 AM)bkroo Wrote: I'm not asking for something unfaithful like D2X-XL where floating ammo meters for all weapons are just kind of stuck to the screen edges.
Rebirth already has that, but only if you choose immersion view. Cockpit/statusbar users cannot use this mode.
(02-23-2019, 11:32 AM)bkroo Wrote: The beauty of Descent in all its original low-poly glory was that the display elements were cleverly built into the cockpit. Is it possible to add a "Show Ammo Counts in Alternate Camera View Modes (Shift-F1/F2)" option?
Yes, it's possible. It's never been a priority because, as you note, there are already views that provide all that information and devote more screen to your surroundings, too.
Reply
#9
(02-23-2019, 11:32 AM)Kp Wrote: The "allies missiles" part is something I added.  Older Rebirth didn't do that.

Ah, cool! It's a neat option, I have been playing Rebirth so long I'm forgetting what was part of D2 apparently.

The cockpit isn't the optimal "gamer" view, but it's fun to use to get that claustrophobic feel when flying through the tunnels, so it's pretty fun to use in single player/co-op.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)