Mirror of space-wizards/OpenDream
Find a file
2021-07-05 15:24:13 -04:00
.github Update screenshots 2021-06-12 13:29:18 -04:00
DMCompiler Basic /savefile implementation 2021-07-05 13:50:16 -04:00
OpenDreamClient Add if(A to B) support in switch() statements 2021-07-03 21:27:04 -04:00
OpenDreamRuntime DreamValue json serialization for null 2021-07-05 15:24:13 -04:00
OpenDreamRuntime.Tests constant expressions support more types & are used for switch conditions (#124) 2021-05-27 23:04:44 -04:00
OpenDreamServer Add support for DMF menus 2021-06-10 12:54:25 -04:00
OpenDreamShared Basic /savefile implementation 2021-07-05 13:50:16 -04:00
TestGame Input controls can now run commands 2021-07-03 21:00:19 -04:00
.editorconfig trim_trailing_whitespace = true for editorconfig (#117) 2021-05-26 02:08:43 -04:00
.gitignore Added byond compiler output files to gitignore (#150) 2021-06-23 14:27:45 -04:00
LICENSE Initial commit 2020-08-31 22:20:20 -04:00
OpenDream.sln execution context for managing/scheduling proc call (#101) 2021-05-23 13:44:01 -04:00
README.md Update screenshots 2021-06-12 13:29:18 -04:00

OpenDream

OpenDream is a C# project that aims to compile games made in the DM language, and run them.

This project is currently in early stages, and is not feature-complete.

The compiler and server should work fine for Linux-based machines, but we currently rely on WPF and WebView2 for the client, so it's Windows-only.

For more information or if you'd like to contribute, join our Discord server.

Building

OpenDream requires .NET 5. To build, one can use a C# compiler (such as MSBuild) to compile the various projects described in the solution.

There's 3 main parts: Compiler, Server, and Client

Running

Compiler: Run DMCompiler.exe, and pass any number of .dm or .dme files to compile as arguments.

Server: Run OpenDreamServer.exe and pass the compiled JSON file you got as a result of running the compiler above as the first argument.

Client: Run OpenDreamClient.exe. You will be prompted to choose a server address, port, and username. The defaults should work for a locally hosted server.

Screenshots

The following screenshots are taken from a stripped-down version of /tg/station available here.