Skip to content
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

bink 1 #1

Open
YouKnow-sys opened this issue Jun 18, 2020 · 3 comments
Open

bink 1 #1

YouKnow-sys opened this issue Jun 18, 2020 · 3 comments

Comments

@YouKnow-sys
Copy link

hi thanks for your perefect work
its possible to use this on bink 1 games?

@mirh
Copy link

mirh commented Jan 4, 2022

@dev-zetta had something like this a decade ago, but the never released sources.

@drdaxxy
Copy link
Owner

drdaxxy commented Jan 15, 2022

Sorry for the late reply. If anyone's still interested:

bink2-libass has at least one bug which makes subtitles too bright. That aside, the included libass version is 6 years old. We fixed that bug in the mod I wrote this code for (and replaced libass with xy-VSFilter). Anyone thinking about using this ought to look through that file's history and port over the changes they need. (Mind the branch - that repository's master is itself outdated)

Anyway, back on topic: This code will not work with Bink 1 as-is.

The way bink2-libass sits in between the game and Bink, its replacement bink2w32.dll file has a list of all Bink 2 functions, and if a single one a game expects to be there is missing, the game will not start. Once the game program starts, bink2-libass tries to load all of those functions so it can redirect the game there if the game needs them, and it chooses to give up if any are missing (since the game would then crash if it tried to use those).

It's trivial to adapt this to some game's Bink 1, you can probably safely take out that check too (I doubt any game's gonna check if binkw32.dll claims to have a function, then use it if it's there, that's not even in the version the game comes with)... if you know some C/C++. (If you do have basic C/C++ skills but don't know how this works, keywords to look up are "proxy DLL", "DLL hijacking", "hooking"... some of the files here might look confusing out of context but it's not a big deal really.)

I don't think anything actually changed between Bink 1 and 2 that would require bigger changes to this library but I couldn't say for sure.

If you're not a programmer, I'm sorry to say you're out of luck because I don't have the time to work on this.

@drdaxxy drdaxxy closed this as completed Jan 15, 2022
@drdaxxy
Copy link
Owner

drdaxxy commented Jan 15, 2022

Oops, fat-fingered the close-with-comment button...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants