MovingBlocks / TerasologyLauncher

Terasology Launcher is the official launcher for the open source game Terasology.
http://terasology.org/
Apache License 2.0
154 stars 76 forks source link

More Game Options #294

Open skaldarnar opened 10 years ago

skaldarnar commented 10 years ago

Allow the user to pass arguments to the launched game. This can be either done by using a plain text box and passing the complete string on execution or by providing matching settings for each command line parameter the game can take.

This is especially a request to allow for the -loadlastgame option.

Related #291

IndianBoy42 commented 10 years ago

This is fixed in the PR, which is being merged soon so i think this can be closed

skaldarnar commented 10 years ago

Updated the PR description, will see into into it with settings menu overhaul.

IndianBoy42 commented 10 years ago

How do you want the specific setting for -loadlastgame? a checkbox? or are there other game arguments that we may want to offer as specific settings so we can put it into a dropdown box?

IndianBoy42 commented 10 years ago

So, i have started working on a system with a dropdown box that has a list of 'Quick Game Settings' such as -loadlastgame

If you could tell me where i can find a list of important game arguements to use in the list

Cervator commented 10 years ago

They're available in Terasology.java under the PC Facade :-)

Terasology/facades/PC/src/main/java/org/terasology/engine/Terasology.java

    private static final String LOAD_LAST_GAME_ARG = "-loadlastgame";
    private static final String HOME_ARG = "-homedir=";
    private static final String LOCAL_ARG = "-homedir";
    private static final String HEADLESS_ARG = "-headless";
    private static final String NO_CRASH_REPORT_ARG = "-noCrashReport";

Not a whole lot of them yet! We need to add a few more like automatically launching in a new world bypassing the menu, or launching without audio enabled (low priority).

There is a little more magic when you run from Gradle, like enabling certain modules for a headless server. That's not supported from the main game launch yet. Some of those are visible in the build.gradle under PC, but some parts actually modify a config.cfg on the fly, not necessarily the best way to do it for the game itself.

Other than loadlastgame headless would be an idea. Although maybe that should be a whole other launch button. There will be other additions to the list later I'm sure.

IndianBoy42 commented 10 years ago

That gives me an idea, Do you think we could somehow have these QuickGameSettings show up when u right click the start button in the launcher,

so you right click and a dropdown menu shows up where you can launch in -loadlastgame or -headless mode.

i think that would make more sense than in the settings

On Fri Oct 31 2014 at 8:30:40 AM Rasmus Praestholm notifications@github.com wrote:

They're available in Terasology.java under the PC Facade :-)

Terasology/facades/PC/src/main/java/org/terasology/engine/Terasology.java

private static final String LOAD_LAST_GAME_ARG = "-loadlastgame";
private static final String HOME_ARG = "-homedir=";
private static final String LOCAL_ARG = "-homedir";
private static final String HEADLESS_ARG = "-headless";
private static final String NO_CRASH_REPORT_ARG = "-noCrashReport";

Not a whole lot of them yet! We need to add a few more like automatically launching in a new world bypassing the menu, or launching without audio enabled (low priority).

There is a little more magic when you run from Gradle, like enabling certain modules for a headless server. That's not supported from the main game launch yet. Some of those are visible in the build.gradle under PC, but some parts actually modify a config.cfg on the fly, not necessarily the best way to do it for the game itself.

Other than loadlastgame headless would be an idea. Although maybe that should be a whole other launch button. There will be other additions to the list later I'm sure.

— Reply to this email directly or view it on GitHub https://github.com/MovingBlocks/TerasologyLauncher/issues/294#issuecomment-61209116 .

skaldarnar commented 10 years ago

My first thought was that you may want to launch the game with -homedir, -loadlastgame, and -headless at the same time. Thus I'd prefer the checkboxes in the settings.

However, what might be of interest for the future are launch configurations which can be stored and selected via right click on the launch menu (or replace the two comboboxes for the game modes). Thus, you can store several configurations, e.g. "latest develop with homedir ~/terasology" or "stable 42 in headless mode with homedir ~/terasologyserver", and quickly select them in the launcher...

What do you think?

IndianBoy42 commented 10 years ago

Yeah, thats a good idea. So basically different 'profiles' with different settings for each, sounds good. I can start on that soon, for now ill try and redo it with checkboxes

On Fri Oct 31 2014 at 3:14:59 PM Tobias Nett notifications@github.com wrote:

My first thought was that you may want to launch the game with -homedir, -loadlastgame, and -headless at the same time. Thus I'd prefer the checkboxes in the settings.

However, what might be of interest for the future are launch configurations which can be stored and selected via right click on the launch menu (or replace the two comboboxes for the game modes). Thus, you can store several configurations, e.g. "latest develop with homedir ~/terasology" or "stable 42 in headless mode with homedir ~/terasologyserver", and quickly select them in the launcher...

What do you think?

— Reply to this email directly or view it on GitHub https://github.com/MovingBlocks/TerasologyLauncher/issues/294#issuecomment-61238156 .

skaldarnar commented 10 years ago

:+1:

Cervator commented 10 years ago

:+1: :+1: