Pocket Plane Group

Friends and Neighbors => Weimer Republic (WeiDU.org) => WeiDU => Topic started by: Wisp on May 13, 2018, 08:57:31 AM

Title: Version 245 released
Post by: Wisp on May 13, 2018, 08:57:31 AM
Version 245 "Medieval Steel" has been released.

No beta period this time, partly on account of me wanting to get this version out now and partly because it has felt a bit like a waste of time. Few to no bugs have been reported during the beta periods and most bugs, including the serious ones, have been discovered in "stable" versions. Might as well have faster turn-around in that case.

Download for Windows (http://www.weidu.org/%7Ethebigg/WeiDU-Windows-245.zip)
Download for GNU/Linux (http://www.weidu.org/%7Ethebigg/WeiDU-Linux-245.zip)
Download for mac OS (http://www.weidu.org/%7Ethebigg/WeiDU-Mac-245.zip) (pending compiler)
Download the source code (http://www.weidu.org/%7Ethebigg/WeiDU-Src-245.zip)
Change log (http://weidu.org/~thebigg/README-WeiDU-Changes.txt)
Readme (http://weidu.org/~thebigg/README-WeiDU.html)
Title: Re: Version 245 released
Post by: Wisp on May 13, 2018, 05:04:47 PM
Thanks to Argent77 there are now, for a first time, 64-bit binaries for Windows. Bear in mind that autoupdate will still overwrite your WeiDU with a more recent one, so it is unwise to assume things about which WeiDU is installing your mod. You can check the bitness with the variable WEIDU_ARCH. If it evaluates to "x86", you're on 32-bit and if it evaluates to "amd64" you are on 64-bit. And, of course, 64-bit binaries will not work on 32-bit systems. WeiDU responsibly.
Title: Re: Version 245 released
Post by: AL|EN on May 14, 2018, 12:22:53 PM
@wisp
Web page is missing direct link to 64-bit version: http://www.weidu.org/~thebigg/weidu64.exe doesn't work. BWS needs it in order to fix problematic SCS installations.

Thanks for --change-log, Autoupdate and mainfest !

@Argent77 Again fantastic work!
Title: Re: Version 245 released
Post by: Wisp on May 15, 2018, 02:33:40 PM
There you are.
Title: Re: Version 245 released
Post by: Wisp on May 16, 2018, 11:32:32 AM
Version 245 has been affected by a serious performance regression as an artefact of the build environments in which the binaries were produced. 32-bit Linux and 32-bit Mac were unaffected. The Mac and Windows packages have been updated with "fixed" binaries. 64-bit Linux will be updated as soon as I can. And done. All WeiDU builds should now be unaffected.
Title: Re: Version 245 released
Post by: subtledoctor on May 16, 2018, 01:48:10 PM
Has the packaging changed?  I don't see an actual executable.  (I'd upload a pic but that doesn't seem to be possible here.)

Or is it in the AMD/x86 subfolders?  Are there different executable depending on the user's processor architecture?  (I guess the MacOS version only needs to really support Intel, since Apple only makes Intel Macs...)
Title: Re: Version 245 released
Post by: Wisp on May 16, 2018, 03:34:43 PM
Yes, the directory layout in the packages has changed with the introduction of 64-bit binaries for Mac and Windows. bin/x86 has the 32-bit binaries and bin/amd64 has the 64-bit ones.
Title: Re: Version 245 released
Post by: jastey on May 20, 2018, 02:37:12 AM
Quote
WeiDU on Windows should no longer prompt you for your password
    when you run it. (This depends on who, how and when the binary is
    built.)
Thank you very much for this one! Works fine for me.


Quote
* The .tra file extension for files to HANDLE_CHARSETS is optional.
Is this with regard to my f#relaod question, meaning adding a ".tra" no longer confuses it?
Title: Re: Version 245 released
Post by: khelban12 on May 20, 2018, 09:55:28 AM
Greetings.

Is it possible that there is a bug with v245 ?

I tried to do a new installation and i get "illegal 2-byte read from offset 3682620 of 2692-byte file nalia8.cre" during bg2-fixpack installation. I get the error with 32/64bit linux version and with 32bit windows version through wine. I verified that weidu 244 works fine with the same installation.

The bg2-fixpack version is v11 beta4 and i think that the error occurs in "nalia short one prof star at all levels" code (Line 7895 in setup-bg2fixpack.tp2). I may be wrong though.

The difference in debug files is the following:

Code: [Select]
--- debug-244 2018-05-20 16:51:38.718054599 +0300
+++ debug-245 2018-05-20 16:54:15.675855684 +0300
@@ -1,4 +1,4 @@
-WeiDU v 24400 Log
+WeiDU v 24500 Log
 
  weidu --log setup-bg2fixpack.debug bg2fixpack/setup-bg2fixpack.tp2
 [./chitin.key] loaded, 590551 bytes
@@ -9114,6985 +9114,444 @@
 Copied [minsc12.cre] to [override/minsc12.cre]
 Copying and patching 6 files ...
 [./override/nalia8.cre] loaded, 2692 bytes
-Copied [nalia8.cre] to [override/nalia8.cre]
-[./override/nalia10.cre] loaded, 2692 bytes
-Copied [nalia10.cre] to [override/nalia10.cre]
....
+ERROR: illegal 2-byte read from offset 3682620 of 2692-byte file nalia8.cre
+ERROR: [nalia8.cre] -> [override] Patching Failed (COPY) (Failure("nalia8.cre: read out of bounds"))
+Stopping installation because of error.

I tried to run weinstall through strace and got the following differences in output:

Code: [Select]
--- 244 2018-05-20 17:03:53.471755488 +0300
+++ 245 2018-05-20 17:04:10.907510926 +0300
@@ -81278,462 +81110,15093 @@
 stat("./override/nalia11.cre", {st_mode=S_IFREG|0777, st_size=2752, ...}) = 0
 stat("./override/nalia13.cre", {st_mode=S_IFREG|0777, st_size=3112, ...}) = 0
 stat("./override/nalia15.cre", {st_mode=S_IFREG|0777, st_size=3100, ...}) = 0
-stat("./override/nalia18.cre", 0x7ffd2464f450) = -1 ENOENT (Δεν υπάρχει τέτοιο αρχείο ή κατάλογος)
+stat("./override/nalia18.cre", 0x7ffdfb137390) = -1 ENOENT (Δεν υπάρχει τέτοιο αρχείο ή κατάλογος)
 write(1, "Copying and patching 6 files ..."..., 33) = 33
 write(3, "Copying and patching 6 files ..."..., 33) = 33
-stat("nalia8.cre", 0x7ffd2464f5f0) = -1 ENOENT (Δεν υπάρχει τέτοιο αρχείο ή κατάλογος)
+stat("nalia8.cre", 0x7ffdfb137520) = -1 ENOENT (Δεν υπάρχει τέτοιο αρχείο ή κατάλογος)
 stat("./override/nalia8.cre", {st_mode=S_IFREG|0777, st_size=2692, ...}) = 0
 stat("./override/nalia8.cre", {st_mode=S_IFREG|0777, st_size=2692, ...}) = 0
 openat(AT_FDCWD, "./override/nalia8.cre", O_RDONLY) = 23
 read(23, "CRE V1.0\216#\0\0\217#\0\0@\0\0\0\0\0\0\0\350t\2\0-\0\0\0"..., 2692) = 2692
 close(23)                         = 0
 write(3, "[./override/nalia8.cre] loaded, "..., 43) = 43
-stat("override", {st_mode=S_IFDIR|0755, st_size=82568, ...}) = 0
-stat("override", {st_mode=S_IFDIR|0755, st_size=82568, ...}) = 0
-stat("override/nalia8.cre", {st_mode=S_IFREG|0777, st_size=2692, ...}) = 0
-chmod("override/nalia8.cre", 0777) = 0
-openat(AT_FDCWD, "override/nalia8.cre", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 23
-fcntl(23, F_SETFD, FD_CLOEXEC)    = 0
-lseek(23, 0, SEEK_CUR)            = 0
-write(23, "CRE V1.0\216#\0\0\217#\0\0@\0\0\0\0\0\0\0\350t\2\0-\0\0\0"..., 2956) = 2956
-close(23)                         = 0
-chmod("override/nalia8.cre", 0777) = 0
-write(3, "Copied [nalia8.cre] to [override"..., 45) = 45
+write(1, "ERROR: illegal 2-byte read from "..., 76) = 76
+write(3, "ERROR: illegal 2-byte read from "..., 76) = 76
+write(1, "ERROR: [nalia8.cre] -> [override"..., 101) = 101
+write(3, "ERROR: [nalia8.cre] -> [override"..., 101) = 101
+write(1, "Stopping installation because of"..., 40) = 40
+write(3, "Stopping installation because of"..., 40) = 40
+write(1, "\nERROR Installing [BG2 Fixpack -"..., 77) = 77
+write(3, "\nERROR Installing [BG2 Fixpack -"..., 77) = 77
+openat(AT_FDCWD, "bg2fixpack/backup/0/unsetstr.0", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 23
 fcntl(23, F_SETFD, FD_CLOEXEC)    = 0
 lseek(23, 0, SEEK_CUR)            = 0
-write(23, "CRE V1.0\216#\0\0\217#\0\0@\0\0\0\0\0\0\0\0005\f\0-\0\0\0"..., 3304) = 3304
+write(23, "\204\225\246\276\0\0\\\304\0\0\0\345\0\0\31i\0\0\0161\240\260\2\0\1\34?\320C @@"..., 23768) = 23768
 close(23)                         = 0

Does this help at all ?

Thank you for your time.
Title: Re: Version 245 released
Post by: Wisp on May 20, 2018, 12:05:56 PM
Yeah, it's a regression in ALTER_EFFECT.
Title: Re: Version 245 released
Post by: Almateria on May 20, 2018, 04:11:32 PM
hell yeah, twice the bits
Title: Re: Version 245 released
Post by: Sam. on May 20, 2018, 05:14:54 PM
Does 64-bit mean we get double precision on the float maths?
Title: Re: Version 245 released
Post by: Wisp on May 21, 2018, 03:03:03 AM
Does 64-bit mean we get double precision on the float maths?
If you by "float maths" mean the one patch expression that uses floats (exponentiation (http://weidu.org/~thebigg/README-WeiDU.html#**)), I suppose [1]. But the result is truncated when it's converted back to an integer. WeiDU largely deals in explicit 32-bit integers. There are some native integers [2] behind the scenes.

1. Reading the manual, OCaml floats are apparently always 64-bit, specifically they follow the IEEE 754 standard.
2. Native OCaml integers for 32-bit are smaller than 32-bits, and for 64-bit are smaller than 64-bits, which is why there are classes for "true" 32- and 64-bit integers.
Title: Re: Version 245 released
Post by: Wisp on May 21, 2018, 03:31:25 PM
Sorry, Jastey, this got overlooked.

Quote
* The .tra file extension for files to HANDLE_CHARSETS is optional.
Is this with regard to my f#relaod question, meaning adding a ".tra" no longer confuses it?
Yes, it will work either way now.
Title: Re: Version 245 released
Post by: jastey on May 24, 2018, 07:19:39 AM
Sorry, Jastey, this got overlooked.

Quote
* The .tra file extension for files to HANDLE_CHARSETS is optional.
Is this with regard to my f#relaod question, meaning adding a ".tra" no longer confuses it?
Yes, it will work either way now.
Great, thank you!