New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HL:OF - Cannot complete the game [SPOILERS] #917

Open
nmirthes opened this Issue Apr 3, 2013 · 61 comments

Comments

Projects
None yet
@nmirthes
Copy link

nmirthes commented Apr 3, 2013

2013-04-03_00001
Upon defeating the end boss on map of6a5 (Worlds Collide), map of7a0 (Conclusion) fails to load.

@nmirthes

This comment has been minimized.

Copy link

nmirthes commented Apr 3, 2013

Processor Information:
Vendor: GenuineIntel
Speed: 2394 Mhz
4 logical processors
4 physical processors
HyperThreading: Unsupported
FCMOV: Supported
SSE2: Supported
SSE3: Supported
SSSE3: Supported
SSE4a: Unsupported
SSE41: Unsupported
SSE42: Unsupported

Network Information:
Network Speed:

Operating System Version:
Ubuntu 12.10 (64 bit)
Kernel Name: Linux
Kernel Version: 3.5.0-26-generic
X Server Vendor: The X.Org Foundation
X Server Release: 11300000
X Window Manager: Metacity
Steam Runtime Version: steam-runtime-release-i386_2013-03-25

Video Card:
Driver: NVIDIA Corporation GeForce GTS 250/PCIe/SSE2

Driver Version:  3.3.0 NVIDIA 313.26
Desktop Color Depth: 24 bits per pixel
Monitor Refresh Rate: 59 Hz
VendorID:  0x10de
DeviceID:  0x615
Number of Monitors:  1
Number of Logical Video Cards:  1
Primary Display Resolution:  1680 x 1050
Desktop Resolution: 1680 x 1050
Primary Display Size: 18.66" x 11.65"  (21.97" diag)
                                        47.4cm x 29.6cm  (55.8cm diag)
Primary Bus: PCI Express 16x
Primary VRAM: 1024 MB
Supported MSAA Modes:  2x 4x 8x 16x 

Sound card:
Audio device: AV200

Memory:
RAM: 3888 Mb

Miscellaneous:
UI Language: English
LANG: en_CA.UTF-8
Microphone: Not set
Total Hard Disk Space Available: 447278 Mb
Largest Free Hard Disk Block: 358546 Mb

Installed software:

Recent Failure Reports:
Tue Apr 2 06:18:50 2013 GMT: file ''/tmp/dumps/assert_20130402031849_1.dmp'', upload no: ''HTTP response code said error''

@ghost

This comment has been minimized.

Copy link

ghost commented Apr 3, 2013

I was going to submit this this evening :)

Confirmed on Arch x86_64. Tried shooting eyes in different orders, using different weapons on the underside portal and different speeds of completion, also waited for around 5 minutes after killing it.

Something else to mention, the boss seems to retract back into the big portal really quickly and doesn't fade out (it just disappears).

@ghost ghost assigned alfred-valve Apr 3, 2013

@alfred-valve

This comment has been minimized.

Copy link
Contributor

alfred-valve commented Apr 3, 2013

Can you run the game with "-dev" in the launch options and then post the console output during and after the fight please. I expect to see a line with "Failed to load" in it.

@nmirthes

This comment has been minimized.

Copy link

nmirthes commented Apr 3, 2013

Console initialized.
Base networking initialized.
"sv_cheats" changed to "1"
Initializing deltas
Protocol version 48
Exe version 1.1.2.2/Stdio (valve)
Exe build: 16:08:36 Apr  2 2013 (6004)
40.0 Mb heap
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce GTS 250/PCIe/SSE2
GL_VERSION: 3.3.0 NVIDIA 313.26
GL_SIZES:  r:8 g:8 b:8 a:0 depth:24
Sound Initialization
Loaded library demoplayer.so.
Loaded library core.so.
Creating fake network channel.
Loaded library core.so.
DemoPlayer module initialized.
Parsed 158 text messages
WARNING: failed to locate sequence file global
joystick not found -- driver not present

execing hw/geforce.cfg
execing valve.rc
execing language.cfg
execing autoexec.cfg
execing violence.cfg
execing hw/geforce.cfg
execing config.cfg
"sv_aim" changed to "0"
warning: MP3_InitStream(29, media/gamestartup.mp3) failed
execing userconfig.cfg

Adding:  gearbox/dlls/opfor.so
Dll loaded for mod Opposing Force
Can't register variable mapcyclefile, already defined
Can't register variable servercfgfile, already defined
Can't register variable lservercfgfile, already defined
execing skill.cfg
execing skillopfor.cfg
Loading game from SAVE/Half-Life-003.sav...
Spawn Server of6a5
Clearing memory
Using WAD File: xeno.wad
Using WAD File: decals.wad
Using WAD File: liquids.wad
Using WAD File: halflife.wad
Using WAD File: opfor.wad
Using WAD File: decals.wad
Texture load:   35.2ms
WARNING: failed to locate sequence file of6a5
Loading game from SAVE/of6a5.HL1...

GAME SKILL LEVEL:2

*Graph Loaded!
**Graph Pointers Set!
Game started
Local connection.
**Graph Pointers Set!
"Player<1><4294967295><1>" changed name to "Adrian Shephard"
Connection accepted.
Compressing split packet (7850 -> 4308 bytes)
�
BUILD 6004 SERVER (0 CRC)
Server # 1
Serverinfo packet received.
Remote host:  Half-Life
Spooling demo header.
Compressing split packet (18664 -> 6901 bytes)
Verifying and downloading resources...
Verifying and uploading resources...
Custom resources total 6.15K
  Decals:  6.15K
----------------------
Resources to request: 0 bytes
Error: server failed to transmit file 'sound/ambience/port_suckout1'
Setting up renderer...
SKY:  xen10rt, xen10bk, xen10lf, xen10ft, xen10up, xen10dn, done
Compressing split packet (5238 -> 4231 bytes)
Custom resource propagation complete.
**Graph Pointers Set!
"Player<1><4294967295><1>" changed name to "Adrian Shephard"
"Player<1><4294967295><1>" changed name to "Adrian Shephard"
Loading decals from of6a4b
Loading decals from of7a0
CL_SignonReply: 1
33.0 megabyte data cache
CL_SignonReply: 2
using TANK!
stopped using TANK
using TANK!
stopped using TANK
SV_StartSound: shocktrooper/shock_trooper_die3 not precached (0)
using TANK!
stopped using TANK
using TANK!
stopped using TANK
SV_StartSound: shocktrooper/shock_trooper_die1 not precached (0)
using TANK!
stopped using TANK
using TANK!
stopped using TANK
SV_StartSound: shocktrooper/shock_trooper_die3 not precached (0)
using TANK!
stopped using TANK
using TANK!
stopped using TANK
Got a velocity too low on gib
@ghost

This comment has been minimized.

Copy link

ghost commented Apr 3, 2013

Console initialized.
Base networking initialized.
"sv_cheats" changed to "1"
Initializing deltas
Protocol version 48
Exe version 1.1.2.2/Stdio (valve)
Exe build: 13:55:36 Mar 28 2013 (5999)
40.0 Mb heap
GL_VENDOR: NVIDIA Corporation
GL_RENDERER: GeForce GTX 660/PCIe/SSE2
GL_VERSION: 4.3.0 NVIDIA 313.26
GL_SIZES:  r:8 g:8 b:8 a:0 depth:24
Sound Initialization
Loaded library demoplayer.so.
Loaded library core.so.
Creating fake network channel.
Loaded library core.so.
DemoPlayer module initialized.
Parsed 158 text messages
WARNING: failed to locate sequence file global
joystick not found -- driver not present

execing hw/geforce.cfg
execing valve.rc
execing language.cfg
execing autoexec.cfg
execing violence.cfg
execing hw/geforce.cfg
execing config.cfg
"sv_aim" changed to "0"
warning: MP3_InitStream(29, media/gamestartup.mp3) failed

Adding:  gearbox/dlls/opfor.so
Dll loaded for mod Opposing Force
Can't register variable mapcyclefile, already defined
Can't register variable servercfgfile, already defined
Can't register variable lservercfgfile, already defined
execing skill.cfg
execing skillopfor.cfg
Loading game from SAVE/quick.sav...
Spawn Server of6a5
Clearing memory
Using WAD File: xeno.wad
Using WAD File: decals.wad
Using WAD File: liquids.wad
Using WAD File: halflife.wad
Using WAD File: opfor.wad
Using WAD File: decals.wad
Texture load:   43.3ms
WARNING: failed to locate sequence file of6a5
Loading game from SAVE/of6a5.HL1...

GAME SKILL LEVEL:2

*Graph Loaded!
**Graph Pointers Set!
Got a velocity too low on ammo_357
Got a velocity too low on ammo_9mmAR
Game started
Local connection.
Connection accepted.
Compressing split packet (7841 -> 4303 bytes)
�
BUILD 5999 SERVER (0 CRC)
Server # 1
Serverinfo packet received.
Remote host:  Half-Life
Spooling demo header.
Compressing split packet (16598 -> 6373 bytes)
Verifying and downloading resources...
Verifying and uploading resources...
Custom resources total 6.15K
  Decals:  6.15K
------------
Resources to request: 0 bytes
Error: server failed to transmit file 'sound/ambience/port_suckout1'
Setting up renderer...
SKY:  xen10rt, xen10bk, xen10lf, xen10ft, xen10up, xen10dn, done
Compressing split packet (4936 -> 4030 bytes)
Custom resource propagation complete.
Decals must hit mod_brush!
Decals must hit mod_brush!
Decals must hit mod_brush!
Loading decals from of6a4b
Loading decals from of7a0
CL_SignonReply: 1
33.1 megabyte data cache
CL_SignonReply: 2
Got a velocity too low on ammo_357
Got a velocity too low on ammo_9mmAR

The last two lines repeat a lot. This was from a save just after the death.

@alfred-valve

This comment has been minimized.

Copy link
Contributor

alfred-valve commented Apr 4, 2013

So the internet tells me that the game shipped with this issue, and suggests a patch fixes it, but we have the latest opfor patch so I am at a loss. When I try this locally I haven't reproduced the issue.

@aoalfs

This comment has been minimized.

Copy link

aoalfs commented Apr 4, 2013

Same issue here. No ending after to kill the final boss.

@dimgel

This comment has been minimized.

Copy link

dimgel commented Apr 5, 2013

Confirmed, Gentoo /amd64.

@unbridledExuberance

This comment has been minimized.

Copy link

unbridledExuberance commented Apr 5, 2013

Confirming this behaviour on 64-bit Linux. Boss dies and a big explosiony type thing appears and then... just sort of stays there. Jumping into it does nothing.

@kaishh

This comment has been minimized.

Copy link

kaishh commented Apr 6, 2013

Same here, Gentoo i686.

@roman-bronis

This comment has been minimized.

Copy link

roman-bronis commented Apr 7, 2013

Same here.
Ubuntu 12.04 64bit
ATI Radeon HD 6870
Fluxbox

@michanrai

This comment has been minimized.

Copy link

michanrai commented Apr 7, 2013

Confirmed at Debian testing.
Steam installed with the .deb that Valve created for *buntu.

@johndrinkwater

This comment has been minimized.

Copy link
Member

johndrinkwater commented Apr 7, 2013

Thanks all! We are aware of the issue, no more confirmations needed 👍
But, if you can help find a reproducible method to trigger the problem, it would help @alfred-valve solve it.

@UndeadScottsman

This comment has been minimized.

Copy link

UndeadScottsman commented Apr 7, 2013

This existed in an earlier version right? Have you tried getting in touch with Gearbox and seeing how they fixed it?

@unbridledExuberance

This comment has been minimized.

Copy link

unbridledExuberance commented Apr 7, 2013

As far as I can tell, the problem is consistent across all Linux distributions, and it always happens- there's not special trigger that makes it fail.

Running 'Validate Game Cache Integrity' on Opposing Force shows that 2 files- one in Half Life 1 and another in Half Life: Opposing Force aren't valid, and are redownloaded, but this happens every time. There's always 2 invalid files. I'm not sure if that's at all related to this problem or if Steam is just checking against the wrong checksum. Steam doesn't actually tell me which files didn't hash to the correct checksum though, only that two of them didn't.

EDIT: The files are 5.2 MiB and 5.3 MiB for Half-Life and Half-Life: Opposing Force respectively. Presumably, the file failing the checksum for Opposing Force is OPFOR.WAD (It's 5.3 MB)
Looking at the file with a Hex editor, I see the string "boss_b" right at the start of the file, so perhaps that is the problem? (Or is that file used for the entire game?) Could an outdated resource file be packaged instead of the patched version causing the glitch and checksum mismatch?

@fedesog

This comment has been minimized.

Copy link

fedesog commented Apr 8, 2013

Running "Validate Game Cache Integrity" on HLOF steam found 9 invalid files and after it finished downloading them Opposing Force wasn't starting anymore: couldn't find ...Half-Life/gearbox/cl_dlls/client.so. After reloading steam it downloaded again Half-Life files by itself (about 40Mb) and now it's back to normal, bug included. I didn't try again.

When launching Opposing Force from terminal (steam steam://run/50) I noticed also this error:

[0408/121209:ERROR:resource_bundle.cc(411)] Failed to load /home/fede/.local/share/Steam/SteamApps/common/Half-Life/cef_gtk.pak

full output is here:
https://docs.google.com/file/d/0B-0A5Xt141UwMldQUnNfM3daaWM/edit?usp=sharing

Md5 of installed files in ...Steam/SteamApps/common/Half-Life are:
("find ./Half-Life -type f -print0 | xargs -0 md5sum > checksums.md5")

https://docs.google.com/file/d/0B-0A5Xt141UwNmVxZjdoVk9KSjg/edit?usp=sharing

or only md5 of files in ...Half-Life/gearbox:

https://docs.google.com/file/d/0B-0A5Xt141UwdnlOaEx2TjVWb3c/edit?usp=sharing

@nmirthes

This comment has been minimized.

Copy link

nmirthes commented Apr 8, 2013

The game cache verification issue has been reported.

#937

@kaishh

This comment has been minimized.

Copy link

kaishh commented Apr 10, 2013

Cache validation always renders the game unplayable. After fresh download on first validation 1 file is incorrect, on subsequent — 2. Validation always fails, and game can't be completed, no matter how many times I reinstall.

@dscharrer

This comment has been minimized.

Copy link

dscharrer commented Apr 14, 2013

I have also hit this bug just now - here is a save file right before killing the end boss that allows me to reproduce the bug every time - not sure if this will help or if something else went wrong before.

Not sure if related, but I have a quicksave from a few minutes earlier that loads fine but then crashes the game when trying to save right away (saves fine after playing for a bit). The backtrace shows it crashes somewhere in COFGeneWormSpawn::Save.

I can also confirm that the gene worm doesn't retreat slowly like it's supposed to, but disappears almost instantly.

system information

@cefiar

This comment has been minimized.

Copy link

cefiar commented Apr 15, 2013

Q: at the start of the map, or any saved game load, I see this:

WARNING: failed to locate sequence file of6a5

Since the map is 0f6a5, I'm assuming the sequence covers how one map links to the next? Been a long time since I've delved into HL1 .bsp files.

Could this be the issue? It's also in the logs from nmirthes and edgleyUK, FWIW.

Edit: Ignore this. It happens on all the maps.

@stevethepocket

This comment has been minimized.

Copy link

stevethepocket commented Apr 24, 2013

FYI, if the update last night was meant to fix this, it looks like it didn't.

@alfred-valve

This comment has been minimized.

Copy link
Contributor

alfred-valve commented Apr 24, 2013

It wasn't, I don't have a handle on what the issue is right now, when I think I do have a fix I will close out the bug :)

@ghost

This comment has been minimized.

Copy link

ghost commented May 13, 2013

I can confirm also on Linux Mint 13 x86_64 bit.

@nmirthes

This comment has been minimized.

Copy link

nmirthes commented May 14, 2013

Is this confirmed on all platforms?

@ghost

This comment has been minimized.

Copy link

ghost commented May 14, 2013

I read in one of the duplicates that it was shipped like this.
On May 14, 2013 5:14 AM, "nmirthes" notifications@github.com wrote:

Is this confirmed on all platforms?


Reply to this email directly or view it on GitHubhttps://github.com//issues/917#issuecomment-17865103
.

@dimgel

This comment has been minimized.

Copy link

dimgel commented Aug 3, 2013

Loaded save before last rocket that killed the Boss - bug is still here. Restarted the game from beginning - it hanged immediately after G-man helped me to escape locked boiling room. Got bored to create bug reports long ago, the only question now is why OF is not marked "(Beta)" in Steam anymore. Someone believed removing beta status would make it work, perhaps?

@ghost

This comment has been minimized.

Copy link

ghost commented Aug 4, 2013

I see that Valve are aware of this already, but I noticed that all of the above reports came from Linux systems. So, here I am, indicating that this is a current bug on Mac, too. (Mid-2011 iMac, OSX 10.8.4, Steam.)

@Lord-Avallon

This comment has been minimized.

Copy link

Lord-Avallon commented Aug 29, 2013

I am playing the HL1 games and then I will go to HL2, played HL1 and finished it with minor problems (some blinking textures, getting stuck in place in some random parts, but nothing that made the game unplayable), then I started OF and experienced the same minor problems described above for HL1, then after defeating the last boss some minutes ago I found the same error as everyone here has described, the end sequence is not there.

My specs: https://gist.github.com/Lord-Avallon/4521727

@UndeadScottsman

This comment has been minimized.

Copy link

UndeadScottsman commented Sep 25, 2013

Okay, with the SteamOS announcement, I recently discovered I have the foresight to leave a 50 gig partition on my of my drives that I completely forgot about, so I tossed Ubuntu 12.04 on there to fool around with. After getting everything working, I figured I'd take a look at this bug, and so far I've gotten it to trigger every time.

As mentioned above, after striking the final blow, the Geneworm gets sucked down the portal super fast instead of slowly thrashing about and moving back like he does in the Windows version. Then the explosion happens and I don't teleport. I did find one further aspect of it; if you stand by the laser turret on the right, you'll get whacked over and over again, ostensibly by the geneworm who should be defeated and not attacking anybody. I haven't gotten him to attack me anywhere else though.

I'm wondering if perhaps the bug is linked to the rapid disappearance of the Geneworm? Perhaps he is removed too fast so the game doesn't proceed to the later tasks of removing his non-visual presence and proceeding to the next level? I'll keep looking into the bug, but I don't see much else I can try unless you have some suggestions. I even tried replacing the map with the one from the PC version, but that didn't help.

Whoops, forgot to list my system info; this is the same machine with the Windows install that works perfectly fine with the ending.

Processor Information:
Vendor: GenuineIntel
CPU Family: 0x6
CPU Model: 0x1e
CPU Stepping: 0x5
CPU Type: 0x0
Speed: 2934 Mhz
8 logical processors
4 physical processors
HyperThreading: Supported
FCMOV: Supported
SSE2: Supported
SSE3: Supported
SSSE3: Supported
SSE4a: Unsupported
SSE41: Supported
SSE42: Supported

Network Information:
Network Speed:

Operating System Version:
Ubuntu 12.04.3 LTS (32 bit)
Kernel Name: Linux
Kernel Version: 3.5.0-40-generic
X Server Vendor: The X.Org Foundation
X Server Release: 11300000
X Window Manager: Compiz
Steam Runtime Version: steam-runtime-release_2013-09-05

Video Card:
Driver: NVIDIA Corporation GeForce GTX 460/PCIe/SSE2

Driver Version:  4.2.0 NVIDIA 304.88
OpenGL Version: 4.2
Desktop Color Depth: 24 bits per pixel
Monitor Refresh Rate: 60 Hz
VendorID:  0x10de
DeviceID:  0xe22
Number of Monitors:  1
Number of Logical Video Cards:  1
Primary Display Resolution:  1920 x 1080
Desktop Resolution: 1920 x 1080
Primary Display Size: 20.04" x 11.26"  (22.95" diag)
                                        50.9cm x 28.6cm  (58.3cm diag)
Primary Bus: PCI Express 16x
Primary VRAM: 1023 MB
Supported MSAA Modes:  2x 4x 8x 16x 

Sound card:
Audio device: VIA VT1828S

Memory:
RAM: 8093 Mb

Miscellaneous:
UI Language: English
LANG: en_US.UTF-8
Microphone: Not set
Total Hard Disk Space Available: 44961 Mb
Largest Free Hard Disk Block: 36203 Mb

@AJenbo

This comment has been minimized.

Copy link

AJenbo commented Sep 25, 2013

Probably overkill but you could try and decompile the map and set up som visual ques for the progress for what gets triggered when and how.

@jkooker

This comment has been minimized.

Copy link

jkooker commented Oct 21, 2013

Also hitting this bug every time on a 2011 MacBook Air, 10.8.5. Bummed that this has been open for 7 months.

Someone in the forums suggested a workaround to get to the finale. Hit ~ to bring up a console, and then enter:

map of7a0

So at least we can reach some closure.

@dscharrer

This comment has been minimized.

Copy link

dscharrer commented Oct 23, 2013

As this bug is game breaking (even if there is not much "game" left after this point), it would be great to see it fixed...

@alfred-valve If you don't have time/motivation to look into this, would it be possible to add the opfor source code to the HL SDK so that we can try to debug it ourselves?

@nmirthes

This comment has been minimized.

Copy link

nmirthes commented Oct 23, 2013

Tested under the latest Wine (1.7.4) and the game finishes successfully. Comparing the Windows and Linux game caches appears to show no obvious differences between the non-binary files. Since the failure is occurring only on Mac/Linux, is it possible the original Gearbox bug fix for this issue is somehow Windows specific?

@norbert79

This comment has been minimized.

Copy link

norbert79 commented Jun 9, 2014

I wish to add, that this is still an issue. Linux OS, Intel E5200 (Dual Core), 2 GiB of RAM. After going through the regular progress of Steam Support I was ended up here. I am happy, that this issue was reported, but sad also, that it's still open even a year later.

Steam: Can you please take a look into this issue? This really needs a fixing already...

@alanjames1987

This comment has been minimized.

Copy link

alanjames1987 commented Aug 31, 2014

I just experienced this as well. I'm on Ubuntu 14.04 64bit. Very aggravated that I can't finish the game.

@VitaliyR

This comment has been minimized.

Copy link

VitaliyR commented Oct 29, 2014

"Finished" version for OS X (Macbook Pro Mid 2012 MD101) - same things here

@kforner

This comment has been minimized.

Copy link

kforner commented Nov 16, 2014

Same problem, one year and a half later. Frack.

@FabianFrank

This comment has been minimized.

Copy link

FabianFrank commented Nov 29, 2014

Same problem here, using latest version via Steam.

@schoening

This comment has been minimized.

Copy link

schoening commented Dec 23, 2014

And bump. Just ran into this issue. This game is a classic. Dont abandon us like this please.

@neagix

This comment has been minimized.

Copy link

neagix commented Jul 19, 2015

2+ years now, still there

@di57inct

This comment has been minimized.

Copy link

di57inct commented Aug 2, 2015

It's not his fault alone. Valve is generally like that(doesn't give a single fuck about its users).

@neagix

This comment has been minimized.

Copy link

neagix commented Aug 2, 2015

hey, that's a bit harsh, to create a github account just to offend @alfred-valve :) I think your comment should be moderated because of that.

@alfred-valve is (probably) an employee, so he has to do stuff second priorities etc. if his employer doesn't tell him "fix that bug", he probably can't.

But you want to know what is really funny about "community", "open source" and "social" these days? all it takes for you to make things move is make a blog post detailing the average quality of (in this case Valve's) projects on GH, issues open etc with some infogarbage and nice charts, and then make noise on twitter, facebook and the like and maybe in the end you get a response :) I am totally not going to spend my time like that, but if you want things to get done - either fix them yourself (when you can, of course), or alternatively make a "gentle" push for them ;)

Offending doesn't work and it's lame.

@JoelTroch

This comment has been minimized.

Copy link
Contributor

JoelTroch commented Aug 2, 2015

For the people who are complaining about this issue not fixed in 2 years. @alfred-valve said he COULDN'T reproduce the issue on his end. So tell me how he can fix that issue if he can't reproduce it?

This one is for the "toxic" people, I'm talking to the people who made the "fake HL3 commit", that weird GitHub account offending @alfred-valve and anyone mad at Valve not fixing stuff. If you think Valve is gonna change a single line of code after all that stuff, you are wrong.

Feel free to agree, disagree at my opinion. To stay "on-topic", I'm gonna investigate that issue on my end, see if it's still there and fix it IF i can.

@dscharrer Valve isn't allowed to publish the Opposing Force source code because Gearbox Software still have the rights to them, same goes for Blue-Shift.

PS: Sorry for grammar errors and stuff, writing on phone isn't easy.

UPDATE : I managed to complete the game on Windows 7 Pro x64 SP1. version output:

Protocol version 48
Exe version 1.1.2.2/Stdio (valve)
Exe build: 13:14:12 Aug 29 2013 (6153)
@alanjames1987

This comment has been minimized.

Copy link

alanjames1987 commented Aug 3, 2015

@neagix I agree that the comment from @alfredVALVEisAshitHEAD should be moderated. It is not constructive in tracking down the issue or even reporting the issue. It is also against the rules of conduct when submitting an issue.

Do not insult, harass, or demean anyone.

Because Opposing Force is closed source we can't do more than report the issue and attempt to provide all data to debug the issue. Complaining might help but being disrespectful won't.

@stevethepocket

This comment has been minimized.

Copy link

stevethepocket commented Aug 3, 2015

It's been constructive in demonstrating how devoid of Valve presence this whole site has gotten, at least. Like how gang graffiti in a run-down neighborhood shows that nobody cares about it anymore.

@malortie

This comment has been minimized.

Copy link

malortie commented Aug 7, 2015

The following suggests a fix, but is not limited to this issue.

As stated above, I will try to state everything here, to avoid multiple posting as this does not fit the current issue. I unfortunately had nowhere else to post. Despite this, I feel this needs to be put here to let as many people know as possible.


We are able to understand it is beyond Valve's possibilities to solve it since Gearbox is the main developer for both expansions, Opposing Force and Blue Shift.

At this time, and until Valve manages to contact Gearbox for inquiry about source code and issues, I am currently proposing an alternative, which is an attempt to recode from scratch (using the latest source code from Valve's repository) both games.

Here is a link to work in progress.

Note that Blue-Shift levels run on a modified format of vbsp, which makes them unable to launch in a typical Half-Life mod. I used the tools found in Blue-Shift: Unlocked, another mod, to port the game maps to the Half-Life level vbsp format, so they are able to run.

Here are links to both Opposing Force and Blue Shift branches, if anyone is interested in contributing.

I am aware that this might not be an easy task, and is a project I am willing to invest in, as far as possible and hope to make it successful. I do believe if we can get enough people to contribute, we could finish this project which should result in a legit port of both games, and at the same time, would run on the latest Half-Life version, which provides support for Steam workshop along with Steampipe.

Hope it helps.

@JoelTroch

This comment has been minimized.

Copy link
Contributor

JoelTroch commented Aug 7, 2015

@malortie I was already working on that kind of project weeks ago, glad to see I'm not the only one ^^

If you wish I can share some of my work with you (I can't right now due to real life priorities and ARRANGEMENT).

@malortie

This comment has been minimized.

Copy link

malortie commented Aug 7, 2015

@JoelTroch

Thanks for replying.

I sure am interested, as any help is welcomed.

I made you a contributor on my repository, so that you will be able to commit and make changes. I assume that you have more years of experience than me with commits and anything related to this, so I am pretty convinced that you will do fine.

Other people who wish to contribute should report to the repos specified in my latest post. See Pull Requests. Here are the links. Opposing Force and Blue Shift.

Update:
To ease the visualisation of progress, I created a playlist on my youtube (dev) channel.
People who are interested to contribute, help, or simply see how progress is going should refer to this playlist.

Here is the link malortie-dev.

@vfjpl

This comment has been minimized.

Copy link

vfjpl commented Jul 3, 2016

Still present.

@UndeadScottsman

This comment has been minimized.

Copy link

UndeadScottsman commented Jul 4, 2016

Just a head's up since I see people respond to this from time to time.

Opposing Force is no longer being worked on; any issues left in the game Valve has decided to not fix. This includes this level transition bug.

If you want a quick and dirty fix, open the console (hit the '~' key) and type "map of7a0" and that will load the next level.

@SamVanheer

This comment has been minimized.

Copy link

SamVanheer commented Aug 19, 2016

Based on the reports in this issue and what i've learned by reverse engineering the boss entity, i have come to the conclusion that this is probably caused by an uninitialized variable that triggers a race condition in COFGeneWorm::DyingThink.

This think is set when the Gene Worm dies, and is responsible for teleporting the player by calling touch on the trigger_teleport named "GeneWormTeleport".

However, prior to that chunk of code running, there is another check:

  if ( this->m_fSequenceFinished && pev->deadflag == DEAD_DYING )
  {
    UTIL_Remove( this );
    return;
  }

What you're seeing here is a check to remove the monster once its "death" sequence has completed.

The reports that players gave about the monster moving really fast is what confirms it. It plays the sequence too quickly, resulting in this check hitting before the player teleport check, which has these conditions:

if ( gpGlobals->time - m_flDeathStart >= 15.0 )

m_flDeathStart is set to gpGlobals->time the first time the think function runs. There is thus a 15 second time window between starting to die and dying.

The frame settings seem to be the cause of the problem.

This is the code that handles it, called in DyingThink the first time it runs:

    pev->frame = 0;
    int iEndingSequence= LookupSequence("death");
    int iDir;
    pev->sequence = FindTransition(pev->sequence, iEndingSequence, &iDir);
    if ( iDir <= 0 )
      pev->frame = 255.0;
    else
      pev->frame = 0;

The problem appears to be that iDir is not initialized. FindTransition uses the value to determine which node to use as the exit node. This can result in the wrong sequence being returned.

I've experienced stack values having default values on some platforms and garbage on others, which could explain why this only happens on Linux/Mac.

pev->frame is set to 255 if iDir is <= 0, so it's possible that this causes the sequence to play very fast. Since sequences normally play from 0 to 255, the m_fSequenceFinished variable will be set to true on the next frame.

I can't be absolutely sure due to compiler optimizations and disassembler inaccuracies, but this should be double checked.

Since i can't fix this, i'll instead offer a ripent fix to bypass this approach to changing the level: https://dl.dropboxusercontent.com/u/46048979/of6a5_fixed.rar

I've added a trigger_relay named GeneWormDead that triggers the exit sequence, which will change the level. You won't be teleported to a black room, but the rest of the ending will still work as it should.

Note that this includes the bsp as well. If that's a problem, i can exclude it and only upload the .ent file.

EDIT: i checked this again to be sure, assembly code of the above code:

lea     edx, [esp+4Ch+iDir] ;Copy address of iDir into edx
mov     [esp+4Ch+useType], edx ; piDir ;Set iDir address as piDir argument for FindTransition call
mov     [esp+4Ch+pCaller], eax ; iGoalSequence ;Sets iGoalSequence argument
mov     eax, [esi+128h] ;Value of pev->sequence (?)
mov     [esp+4Ch+var_4C], ebx ; this ;Sets this pointer
mov     [esp+4Ch+flInterval], eax ; iEndingSequence ;Sets iEndingSequence argument
call    _ZN14CBaseAnimating14FindTransitionEiiPi ; CBaseAnimating::FindTransition(int,int,int *)
mov     edx, [esp+4Ch+iDir] ;Copy value of iDir to edx
test    edx, edx ;Test value of iDir, sets flags for use with jump instructions
mov     [esi+128h], eax ;Set new sequence
mov     eax, [ebx+4] ;Copy this->pev address to eax
jle     loc_1F9FE0 ;Jump to label if iDir is less than or equal to zero
mov     dword ptr [eax+130h], 0 ;Set pev->frame to 0
loc_1F9FE0:
mov     dword ptr [eax+130h], 437F0000h ;Set pev->frame to 255
jmp     loc_1F9E79 ;Jump again to return to rest of code

These are the only instructions that i can find that affect iDir. No initialization of the variable seems to occur.

@jeisoncp

This comment has been minimized.

Copy link

jeisoncp commented Dec 2, 2018

Still present.

Until today...

@m-svo

This comment has been minimized.

Copy link

m-svo commented Jan 3, 2019

Just had this issue, the game is up to date. Debian 9 stable, Steam beta.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment