According to the docs, sciter integers are always 32-bit; however, sciter.Value.Int() returns int, which may be either 32-bit or 64-bit, depending on the system architecture (see here). This causes inconsistencies in the way negative numbers are parsed on different architectures. That is, -1 gets interpreted as 4294967295 on a 64-bit system; while it gets interpreted correctly (as -1) on a 32 bit system.