The Dink Network

Reply to Re: End of an Era?

If you don't have an account, just leave the password field blank.
Antispam: Enter Dink Smallwood's last name (surname) below.
Formatting: :) :( ;( :P ;) :D >( : :s :O evil cat blood
Bold font Italic font hyperlink Code tags
June 4th, 01:19 AM
Jester Male Australia
You feed the madness, and it feeds on you. 
Ok, I'm replying using my smartphone since I'm not at home, so there may be spelling errors.

Your numbered questions are answered below.

When scripting version checker, I did it from a Windows standpoint, since that's what I use, but please keep in mind, I made version checker easy to edit, the way it's set up is just the default example.. Obviously if an author wants to change it they can. They can open vcheck.c, scroll down and there's custom procedures for each version and you can change what happens after the splash screen (can make all versions allowed to continue if you want). You can also allow the freedink 108.# version, which I believe is the version you referred to for Ubuntu.

I didn't think too much into how ppl would want it set up, or OS's and versions for the release since I believe it's up to the author to change that stuff to suit whichever versions they want to allow with their dmod.
You can even change it to your warning message example if you want

The v1.91 of Dink HD that you reference being able to run is indeed the current version, if not it would have shown the message and not allowed you to continue. For the release I basically enabled all the latest versions of the different engines just as an example, as I said, this is configurable in vcheck.c, and well commented.

1) yes 1.91 is the current version of DinkHD as referred to in the version checker readme.

2) see above. The &vcheck == 110 is 1.91. This is saved to the &vcheck global directly from the get_version vanilla command, which Seth altered to return the value of "110" for the current (v1. 91) version of Dink HD.

3) 1.91 is current.

4) I don't have experience with Wine, however, maybe others can help? But as stated above the v1.91 is the most current of DinkHD and should work.

5) I don't think a list like that exists. However, I did recently post in the dmodding section
of the Dink Discord asking if anyone would be willing to collab with me to create an up to date, universal version of the DinkC reference which would include how the commands behave in different versions and their incompatibility issues/workarounds. I don't think anyone was interested. It'd be a big task, one that I don't feel like doing on my own.

As for the idea for the compatibility modules using external, you may have read my mind. I've been working on something like this for a while, not only to be able to be used by authors to call procedures for certain commands to make them universally compatible with different Dink Engines, but indeed to fix some vanilla commands that were never fixed across all version that have bugs. However there is a certain aspect of it that won't work with freedink 109.6, if an author chooses to make use of custom keys on Dink(1), Beuc made this work in freedink 109.6, in all other versions it crashes the game, while a very useful addition, there's no simple fix for that in other dink engines using an external module if it's used, that's why version checker helps, and it would be up to the author to either disallow all other versions OR to use the &vcheck global variable to check versions and script in an alternative means instead of using this feature, if a version other than 109.6 is used. The reason this is more complex to fix with external modules(impossible really) - it can't really be predicted how an author would be making use of these custom keys, so as I said, it's up to them.

If you think people would be more inclined to install my version checker and leave everything default, effectively excluding some other OS's from working, and dis-encouraging growth I can easily update version checker again to not disallow freedink 108.4 by default, but I did assume authors would use my settings as an example and change it to suit their dmod.

Anymore questions feel free.

EDIT: in light of your comments, I think it would be beneficial if I update the default script and just push warning messages as you suggested, I will also exclude freedink version 108.4 from showing a warning, since this version is the one used in the situations you pointed out above(ubuntu, Linux) , and pretty much mirrors vanilla 1.08's compatibility. This way no particular OS user is excluded. Also, I will update the documentation so it is stated that where it SAYS "current version of DinkHD" it is referring to v1.91 (which is the latest release anyway I believe).
I'll upload it tonight.

[if anyone could confirm if this sounds like a good idea/anything else I should change feel free, keeping in mind, it IS a configurable development file that should be configured by the author. Same as push and pull, well actually more so with that - it works as is when installed into a dmod, but has many customisation options]