Player
Player copied to clipboard
Allow to set more command line parameters in RPG_RT.ini's [EasyRPG] section
This way allows to set useful persistent parameters by default when not set from the command line. If set again from the command line interface, they would override them.
encoding
is already implemented. Other useful features would be new-game
e.g. for games with BetterAEP, window
and other.
Available commands (for discussion):
[EasyRPG]
Encoding=1252
disable-audio=0
disable-rtp=0
hide-title=1
new-game=0
About fullscreen/window: It might be better to not use boolean for this, but instead:
displaymode=window
displaymode=fullscreen
I would like to have also yes
and no
as alternate valid values for 0
and 1
for a better experience (maybe INIReader supports this somehow, not checked).
For the window and fullscreen they could also be replaceable as alternate options.
In case of parameter conflict, the last line might be the proper to use (drop warnings when happening?). About duplicates I'm not sure how INIReader handles this.
And case insensitive support for all of them, if not done already (is INIReader case insensitive already?).
About disable-rtp
: which is the difference with [RPG_RT]
's FullPackageFlag=1
?
Actually you are right about disable-rtp
. I thought it would be useful
as an option exclusive for player use, i.e. you do not want to load rtp assets albeit existing.
However, current way it is handled in player would be the same.
Only real change it could do is disable the nasty warning :grinning:.
A while ago we had in IRC a discussion concerning which arguments are useful in ini and which are useless and how to behave when the Game Browser is used. I can't remember the full discussion so, from scratch.
Global: Applies for all games started from game browser. This shall be only for things that don't alter the game behaviour. As a long term solution the game browser should get game settings (#666) that can be edited. Game: Applies to the game ONLY when started directly (no browser) Ini: Argument is useful in the INI (applies to the game also when started from browser obvisouly)
Arguments have preference over INI
Argument | Global | Game | Ini |
---|---|---|---|
battle-test | X | X | |
disable-audio | X | X | |
disable-rtp | X | X | |
encoding | X | X | |
engine | X | X | |
fullscreen | X | X | |
show-fps | X | X | |
hide-title | X | X | |
load-game-id | X | X | |
new-game | X | X | |
project-path | X | X | |
save-path | X | X | |
seed | X | X | |
start-map-id | X | X | |
start-position X Y | X | X | |
start-party A B… | X | X | |
test-play | X | X | |
window | X | X | |
version | X | X | |
help | X | X | |
steam-compat | X | X |
Steam compat remaps F12 to Shift-F12 to allow screenshots.
To sum up: When it is used to alter global behaviour (needs a way to be configured someday) it is not available as a INI setting.
Corner case are project-path and save-path. I vote for ignoring save-path frmo game browser because it generates chaos (everything in the same directory, bad). As an ini setting this needs to be sanitized to prevent writes in folders above.
I think test-play
is a corner case too. I often start multiple games while bugfixing and would like to pass the flag from the gamebrowser too.
Maybe add an extra argument (--expert ???) that enables game only parameters in the game browser... And then log that this causes problems.
A minor detail: to keep consistency with the existing parameters, could the new parameters ignore the hyphen so that HideTitle=1
is equivalent to hide-title=1
?
Does not really matter really, the ini reader does not even care for uppercase or lowercase currently, so imo we could easily support with-hyphen and without-hyphen commands in one go. Or decide for one :V.
I would say we can postbone this one because the initial motivation (.flow) is solved.
Will postbone this to 0.6 or 0.5.1, too much work.
It would be greate to have more options.
For example this game skips the start screen if I start the game with the default RPG Maker 2003 Player (Presumably there is a patch for this?). It would be nice if I could set the new-game
option in the RPG_RT.ini
so that the game can behave the same way with EasyRPG Player
Hi, just found this thread, is the "window/fullscreen" parameters is supported? And I also saw there is a "seed" argument in the above discussion, what's that used for? I also use this "parameters" in my local version to generate maze in runtime.
And I also saw there is a "seed" argument in the above discussion, what's that used for?
The seed argument allows to replay randomness in a deterministic form. Some behavior and replay is only reproducible using the same seed in order to make the random behave as in was saved in logs. It is also tightly related to the record and replay feature (useful for demo recording without wasting too much space compared to video recording. It is also useful for unit tests where randomness-dependent events need to be compared. The random seed seems to be useful to make your random maze generator reproducible, too. See also https://github.com/EasyRPG/Player/issues/2748#issuecomment-1077333131 for the original 2003 dungeon generator research to be implemented.