@@ -74,6 +74,7 @@ readme.push(`- [Actions](#actions)`);
7474readme . push ( `- [Conditions](#conditions)` ) ;
7575readme . push ( `- [Expressions](#expressions)` ) ;
7676readme . push ( `- [Paths](#paths)` ) ;
77+ readme . push ( `- [Recommended Save Location](#recommended-save-location)` ) ;
7778
7879readme . push ( `---` ) ;
7980readme . push ( `## Usage` ) ;
@@ -269,134 +270,45 @@ Object.keys(config.Exps).forEach((/** @type {keyof typeof config.Exps} */ key) =
269270 }
270271} ) ;
271272readme . push ( `` ) ;
273+ readme . push ( `` ) ;
274+ readme . push ( `---` ) ;
272275readme . push ( `## Paths` ) ;
273276
274- readme . push ( '**ProjectFilesFolder**: Direct path to your games\'s content' )
275- readme . push ( '- Windows: `C:/Users/quent/AppData/Local/Temp/f0e3c24c1443adce014e5924d5f47e1b571c92e0f29d11d4/build/out/Pipelab-win32-x64/resources/app.asar/src/app`' )
276- readme . push ( '- Linux: ' )
277- readme . push ( '- MacOS: ' )
278- readme . push ( '' )
279-
280- readme . push ( 'UserFolder: ' )
281- readme . push ( '- Windows: ``' )
282- readme . push ( '- Linux: ' )
283- readme . push ( '- MacOS: ' )
284- readme . push ( '' )
285-
286- readme . push ( 'HomeFolder: ' )
287- readme . push ( '- Windows: C:/Users/quent' )
288- readme . push ( '- Linux: ' )
289- readme . push ( '- MacOS: ' )
290- readme . push ( '' )
291-
292- readme . push ( 'AppDataFolder: ' )
293- readme . push ( '- Windows: C:/Users/quent/AppData/Roaming' )
294- readme . push ( '- Linux: ' )
295- readme . push ( '- MacOS: ' )
296- readme . push ( '' )
297-
298- readme . push ( 'LocalAppDataFolder: ' )
299- readme . push ( '- Windows: ``' )
300- readme . push ( '- Linux: ' )
301- readme . push ( '- MacOS: ' )
302- readme . push ( '' )
303-
304- readme . push ( 'UserDataFolder: ' )
305- readme . push ( '- Windows: C:/Users/quent/AppData/Roaming/app' )
306- readme . push ( '- Linux: ' )
307- readme . push ( '- MacOS: ' )
308- readme . push ( '' )
309-
310- readme . push ( 'LocalUserDataFolder: ' )
311- readme . push ( '- Windows: ``' )
312- readme . push ( '- Linux: ' )
313- readme . push ( '- MacOS: ' )
314- readme . push ( '' )
315-
316- readme . push ( 'SessionDataFolder: ' )
317- readme . push ( '- Windows: ``' )
318- readme . push ( '- Linux: ' )
319- readme . push ( '- MacOS: ' )
320- readme . push ( '' )
321-
322- readme . push ( 'TempFolder: ' )
323- readme . push ( '- Windows: ``' )
324- readme . push ( '- Linux: ' )
325- readme . push ( '- MacOS: ' )
326- readme . push ( '' )
327-
328- readme . push ( 'ExeFolder: ' )
329- readme . push ( '- Windows: ``' )
330- readme . push ( '- Linux: ' )
331- readme . push ( '- MacOS: ' )
332- readme . push ( '' )
333-
334- readme . push ( 'ModuleFolder: ' )
335- readme . push ( '- Windows: ``' )
336- readme . push ( '- Linux: ' )
337- readme . push ( '- MacOS: ' )
338- readme . push ( '' )
339-
340- readme . push ( 'DesktopFolder: ' )
341- readme . push ( '- Windows: ``' )
342- readme . push ( '- Linux: ' )
343- readme . push ( '- MacOS: ' )
344- readme . push ( '' )
345-
346- readme . push ( 'DocumentsFolder: ' )
347- readme . push ( '- Windows: ``' )
348- readme . push ( '- Linux: ' )
349- readme . push ( '- MacOS: ' )
350- readme . push ( '' )
351-
352- readme . push ( 'DownloadsFolder: ' )
353- readme . push ( '- Windows: ``' )
354- readme . push ( '- Linux: ' )
355- readme . push ( '- MacOS: ' )
356- readme . push ( '' )
357-
358- readme . push ( 'MusicFolder: ' )
359- readme . push ( '- Windows: ``' )
360- readme . push ( '- Linux: ' )
361- readme . push ( '- MacOS: ' )
362- readme . push ( '' )
363-
364- readme . push ( 'PicturesFolder: ' )
365- readme . push ( '- Windows: ``' )
366- readme . push ( '- Linux: ' )
367- readme . push ( '- MacOS: ' )
368- readme . push ( '' )
369-
370- readme . push ( 'VideosFolder: ' )
371- readme . push ( '- Windows: ``' )
372- readme . push ( '- Linux: ' )
373- readme . push ( '- MacOS: ' )
374- readme . push ( '' )
375-
376- readme . push ( 'RecentFolder: ' )
377- readme . push ( '- Windows: ``' )
378- readme . push ( '- Linux: ' )
379- readme . push ( '- MacOS: ' )
380- readme . push ( '' )
381-
382- readme . push ( 'LogsFolder: ' )
383- readme . push ( '- Windows: ``' )
384- readme . push ( '- Linux: ' )
385- readme . push ( '- MacOS: ' )
386- readme . push ( '' )
387-
388- readme . push ( 'CrashDumpsFolder: ' )
389- readme . push ( '- Windows: C:/Users/quent/AppData/Roaming/app/Crashpad' )
390- readme . push ( '- Linux: ' )
391- readme . push ( '- MacOS: ' )
392- readme . push ( '' )
393-
394- readme . push ( 'AppFolder: ' )
395- readme . push ( '- Windows: ' )
396- readme . push ( '- Linux: ' )
397- readme . push ( '- MacOS: ' )
398- readme . push ( '' )
277+ const pathMappings = [
278+ { name : "HomeFolder" , desc : "User home directory" , win : "C:/Users/user" , linux : "/home/user" , mac : "/Users/user" } ,
279+ { name : "AppDataFolder" , desc : "Application configuration data" , win : "C:/Users/user/AppData/Roaming" , linux : "/home/user/.config" , mac : "/Users/user/Library/Application Support" } ,
280+ { name : "LocalAppDataFolder" , desc : "Local application data" , win : "C:/Users/user/AppData/Local" , linux : "/home/user/.local/share" , mac : "/Users/user/Library/Application Support" } ,
281+ { name : "UserDataFolder" , desc : "App-specific data (Roaming)" , win : "C:/Users/user/AppData/Roaming/com.pipelab.app" , linux : "/home/user/.config/com.pipelab.app" , mac : "/Users/user/Library/Application Support/com.pipelab.app" } ,
282+ { name : "LocalUserDataFolder" , desc : "App-specific data (Local)" , win : "C:/Users/user/AppData/Local/com.pipelab.app" , linux : "/home/user/.local/share/com.pipelab.app" , mac : "/Users/user/Library/Application Support/com.pipelab.app" } ,
283+ { name : "AppFolder" , desc : "Application installation directory" , win : "C:/Program Files/Pipelab/resources/app" , linux : "/tmp/pipelab/.../Pipelab-linux-x64/resources/app" , mac : "/Applications/Pipelab.app/Contents/Resources/app" } ,
284+ { name : "ProjectFilesFolder" , desc : "Direct path to your game's content" , win : ".../resources/app.asar/src/app" , linux : "/tmp/pipelab/.../resources/app/src/app" , mac : "/Applications/Pipelab.app/Contents/Resources/app/src/app" } ,
285+ { name : "CrashDumpsFolder" , desc : "Crash reports storage" , win : "C:/Users/user/AppData/Roaming/com.pipelab.app/Crashpad" , linux : "/home/user/.config/cache_com.pipelab.app/Crashpad" , mac : "/Users/user/Library/Application Support/com.pipelab.app/Crashpad" } ,
286+ { name : "DesktopFolder" , desc : "User desktop" , win : "C:/Users/user/Desktop" , linux : "/home/user/Desktop" , mac : "/Users/user/Desktop" } ,
287+ { name : "DocumentsFolder" , desc : "User documents" , win : "C:/Users/user/Documents" , linux : "/home/user/Documents" , mac : "/Users/user/Documents" } ,
288+ { name : "DownloadsFolder" , desc : "User downloads" , win : "C:/Users/user/Downloads" , linux : "/home/user/Downloads" , mac : "/Users/user/Downloads" } ,
289+ { name : "LogsFolder" , desc : "Application logs" , win : "C:/Users/user/AppData/Roaming/com.pipelab.app/logs" , linux : "/home/user/.config/com.pipelab.app/logs" , mac : "/Users/user/Library/Logs/com.pipelab.app" }
290+ ] ;
291+
292+ pathMappings . forEach ( p => {
293+ readme . push ( `### ${ p . name } ` ) ;
294+ readme . push ( `${ p . desc } ` ) ;
295+ readme . push ( `- **Windows**: \`${ p . win } \`` ) ;
296+ readme . push ( `- **Linux**: \`${ p . linux } \`` ) ;
297+ readme . push ( `- **macOS**: \`${ p . mac } \`` ) ;
298+ readme . push ( `` ) ;
299+ } ) ;
300+
301+ readme . push ( `` ) ;
399302
303+ readme . push ( `## Recommended Save Location` ) ;
304+ readme . push ( `For game saves and persistent data, especially when considering **Steam Cloud Sync**, it is highly recommended to use the **LocalUserDataFolder**.` ) ;
305+ readme . push ( `` ) ;
306+ readme . push ( `### Why?` ) ;
307+ readme . push ( `- **Standardization**: It follows the industry standard for each platform:` ) ;
308+ readme . push ( ` - **Windows**: Uses \`AppData/Local\`, the correct place for large or frequent writes like game saves (unlike \`Roaming\`, which can slow down network logins).` ) ;
309+ readme . push ( ` - **Linux**: Uses \`~/.local/share\`, adhering to the XDG Base Directory Specification for persistent data.` ) ;
310+ readme . push ( ` - **macOS**: Uses \`~/Library/Application Support\`, the standard location for app-specific data.` ) ;
311+ readme . push ( `- **Cloud Sync Compatibility**: Steam Cloud and other services are easily configured to watch these standard directories.` ) ;
400312readme . push ( `` ) ;
401313
402314// Object.keys(config.Exps).forEach((key) => {
0 commit comments