OpenTomb
OpenTomb copied to clipboard
Installer suggestions
As there is now major hype for our engine (provoked by that Reddit post), many people are attracted and want to try how it works. And there is no simple way to arrange everything and just play it, we still need to copy everything manually...
So I thought that at least for Windows users (I believe it's majority) we may need to create some kind of installer, which will automate configuration and copying process. Namely:
- Detect or request paths for original games
- Copy game resources into OpenTomb folder
- Convert or download existing ogg soundtracks for TR1/TR2
- Download loading screens for TR1/2/5
- Optionally download overrided HQ samples for TR1/TR2
I think it should be done in the same manner as old OpenTTD installers, which requested user to point it to original Transport Tycoon installation folder, so it may be copied.
Any suggestions on already existing installation script/installer generators, which can accomplish this task? Or we must write custom one?
Cmake is able to create installers using nsis on windows. But i think a custom nsis script would be better here as it allows much better customization. I can also provide a mirror for the soundtrack if needed.
NSIS? Is it still alive after Nullsoft got disbanded? :open_mouth: Seems like a good choice, I always liked Nullsoft installers. Mirror will be great, cause using file hostings isn't reliable, and that croftmanor account I was handed is already dying from traffic.
Nsis is open source:) i will create the mirror next week but creating a reliable installer will take some time.
I suppose, if we already stabilized audio code, we can safely ignore TR3-5 soundtracks and only go with TR1-2 soundtracks (which will be much smaller size). Or we can give user a choice - either to use ogg files or copy original music for TR3-5 from existing CD/installed folders.
Either way, I think each soundtrack package for each game version should be maintained seperately. My archive from readme was really dirty and quick way to let people hear music. Another thing to be mentioned is that there are remastered soundtracks for TR1-3, so we may also need to give user a choice to use original or remastered ones.
It will get even more complicated when we'll introduce FMV support. There is no working codec for Eidos RPL (Escape) format. All FMVs from TR1-3 should be also converted (and there are also remastered FMVs for TR1/2... you got the idea! :wink: ).
That depends on what you are trying to achieve. If you want to make it easy to install the working engine then you can't ignore TR3-5 ogg
tracks as the old engine can't cope with wav
audio files.
There is no working codec for Eidos RPL (Escape) format
Who said that? I'm watching FMVs from TR1 right now using ffmpeg.
Well, I don't know the news! :smile: Last time I desperately tried to find a codec for .rpl files requested by forum member who tried to translate TR3 FMVs into russian language. Seems things changed since then.
However, technically, there's still no codec, as you can't encode RPLs. But if we can decode them - well, less work for us!
I honestly believe that we'll get current engine to working state again before we make decent installer! :smile:
Interesting question for Mac users, too, where installers are rather unloved, so it would have to be something directly within the app (but only for OS X of course). But I think I'll open a new issue for that as the solution will absolutely be different.
I'd like to point out that the whole library thing also plays into this here. The installer should include all required DLLs (umless things are statically linked). Users will and should lynch us if the installer requires them to google for vorbisfile.dll or something.
On Windows, it's quite easy: Copy the .exe into some dir, run it again and again and copy over all DLLs it complains about.
I think it's better to provide all needed dlls at once, to avoid conflicts with other versions of DLLs. For example, I have old Creative OpenAL32.dll in my Windows\System32 directory. As result, if I have no OpenAL Soft's dll in OpenTomb folder, engine uses the one from System32 directory, which results in lack of reverb and lowpass effects (same issue as Cochrane's).
P.S.: But I still insist on static linking, where possible! :stuck_out_tongue_winking_eye:
Soundtrack mirror is nearly up, all data should be available in about an hour: http://opentomb.earvillage.net/
I can make such an installer in Inno (not NSIS, though, never used NSIS). The problem I see always getting the latest release from GitHub. Github doesn't have a way to download latest binary release, right?
Github is neither CI nor deployment platform. It supports integration with it though. The main problem is maintainer, who'd supply appropriate tests and scripts and will fix them promptly if something become broken. There used to be such maintainers in the past, but they all disappeared with time leaving nightly builds broken.