ID:2901565
 
Resolved
Windows was incorrectly applying case-sensitive behavior to detecting relative file paths, which was exacerbated when mixing slashes and backslashes in the DME path.
BYOND Version:515.1615&515.1620
Operating System:server2012r2
Web Browser:Chrome 109.0.0.0
Applies to:Dream Maker
Status: Resolved (515.1621)

This issue has been resolved.
Descriptive Problem Summary:
On Windows, if dm.exe is passed a path to the dme that includes a mismatched casing (the folder is c:\byond-projects\test\test.dme but is passed as c:\BYOND-projects\test\test.dme) AND includes a linux path separator (the folder is passed as c:\byond-projects/Test\test.dme), includes to non-code files like skins and maps will fail.

Numbered Steps to Reproduce Problem:
1. Setup a empty test project in any folder,
2. Add a empty skin file and include/tick it.
3. Open a command line cd'ed to that same folder.
4. run dm.exe passing it the full path to the dme, but replace one of the lowercase letters with a capital letter, or vice versa, and replace one of the `\` path separators with a `/`. Example:
"C:\515.1620_byond\byond\bin\dm.exe" -clean "c:\tgs\testcompilebug\Game/test\test.dme"



Expected Results:
DM compiler version 515.1620
loading test.dme
loading interface/skin.dmf
saving test.dmb (DEBUG mode)
test.dmb - 0 errors, 0 warnings (11/27/23 12:20 pm)
Total time: 0:00

Actual Results:
DM compiler version 515.1620
loading test.dme
saving test.dmb (DEBUG mode)
test.dmb - 0 errors, 0 warnings (11/27/23 12:20 pm)
Total time: 0:00


The problem occurs:
Every time
In other games.
In other user accounts
On other computers

When does the problem NOT occur?
When either every path separator is `\` OR the casing the folders is correct.

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)
Starts on 1615, reproduction steps only tested on 1620.


Workarounds:
if using the tgstation-server hosting framework on windows, the path to the instance folder must be all caps on disk.
Lummox JR resolved issue with message:
Windows was incorrectly applying case-sensitive behavior to detecting relative file paths, which was exacerbated when mixing slashes and backslashes in the DME path.