GameMaker (all)

File Manager

Samuel Venable

You must be logged in to obtain assets


Add me on Discord to get faster support than email: Samuel Venable#5465

The macOS dylib file is not code signed; please code sign it before testing and distributing for macOS.

[Made for GameMaker Studio 2.3.1+]

This extension is for Windows, macOS, and Ubuntu.

Manage files/folders without a sandbox; overrides GameMaker Studio 2's built-in functions.

Each function that does not return a string, will return true on success, and false on failure.

All functions support passing environment variables within string arguments, like: ${TEMP}.

Functions included:

  • real file_copy(string fname, string newname)

  • real file_rename(string oldname, string newname)

  • real file_exists(string fname)

  • real file_delete(string fname)

  • real file_size(string fname)

  • real directory_create(string dname)

  • real directory_copy(string dname, string newname)

  • real directory_rename(string oldname, string newname)

  • real directory_exists(string dname)

  • real directory_destroy(string dname)

  • real directory_size(string dname)

  • string directory_contents(string dname)

  • string directory_contents_ext(string dname, string pattern, real includedirs)

  • string filename_absolute(string fname)

  • string filename_canonical(string fname)

  • string environment_get_variable(string name)

  • real environment_set_variable(string name, string value)

  • real environment_unset_variable(string name)

  • string environment_expand_variables(string str) // ${VARIABLE}

  • string get_working_directory()

  • real set_working_directory(string dname)

  • string get_program_directory()

  • string get_temp_directory()

  • string get_program_filename()

  • string get_program_pathname()

  • real file_get_date_accessed_year(string fname)

  • real file_get_date_accessed_month(string fname)

  • real file_get_date_accessed_day(string fname)

  • real file_get_date_accessed_hour(string fname)

  • real file_get_date_accessed_minute(string fname)

  • real file_get_date_accessed_second(string fname)

  • real file_get_date_modified_year(string fname)

  • real file_get_date_modified_month(string fname)

  • real file_get_date_modified_day(string fname)

  • real file_get_date_modified_hour(string fname)

  • real file_get_date_modified_minute(string fname)

  • real file_get_date_modified_second(string fname)

  • string directory_contents_first(string dname, string pattern, real includedirs, real recursive)

  • string directory_contents_next()

  • real directory_contents_close()

  • real file_bin_open(string fname, real mode)

  • real file_bin_rewrite(real fd)

  • real file_bin_close(real fd)

  • real file_bin_size(real fd)

  • real file_bin_position(real fd)

  • real file_bin_seek(real fd, real pos)

  • real file_bin_read_byte(real fd)

  • real file_bin_write_byte(real fd, real byte)

  • real file_text_open_read(string fname)

  • real file_text_open_write(string fname)

  • real file_text_open_append(string fname)

  • real file_text_write_real(real fd, real val)

  • real file_text_write_string(real fd, string str)

  • real file_text_writeln(real fd)

  • real file_text_eoln(real fd)

  • real file_text_eof(real fd)

  • real file_text_read_real(real fd)

  • string file_text_read_string(real fd)

  • string file_text_readln(real fd)

  • string file_text_read_all(real fd)

  • real file_text_open_from_string(string str)

  • real file_text_close(real fd)

The DLL's full source code included.

Very big thanks to Josh Ventura, for writing the widen() and shorten() scripts, enabling UTF-8 support on Windows.

End User Licence Agreement (EULA).

Age Rating: 4+


GMS1 - Version 2.4.0. Published March 2, 2019

Please replace all Scripts and Included Files in your existing projects to apply this update!!!

  • [macOS] [Ubuntu] Fixed a safety issue with the use of the POSIX functions dirname() and basename().

GMS2 - Version 10.20.85. Published July 10, 2020

GMS2.3 - Version 30.9.0. Published November 4, 2021

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait