shaunlebron / blinky

Exploring peripheral vision in games (using Quake)
MIT License
687 stars 26 forks source link

Don't interfere with other Quake engines, use specific "mod" directory #79

Open SpiritQuaddicted opened 9 years ago

SpiritQuaddicted commented 9 years ago

Please stuff your config.cfg and maybe also the lua-scripts directory into their own blinky-specific subdirectory (next to id1). Otherwise the config would interfere with other engines. If a user would copy blinky into their pre-existing Quake installation, it would overwrite their config.

I am not sure if tyr-quake already has anything like this. You could check joequake, qrack or requiem how they do it, probably the same way as joequake is their parent. Also telejano and tomaz seem to use their own directory.

I would suggest:

id1/ blinky/ blinky/config.cfg blinky/lua-scripts/

Alternatively maybe just rename the config.cfg to blinky.cfg and keep it in id1?

shaunlebron commented 9 years ago

Thanks for bringing this up. I hope people aren't losing their configs...

I actually had a lot of trouble trying to create a default config for blinky. A game directory's quake.rc seems to be the only thing that load configs: default, config, then autoexec. I didn't see a way to sneak in extra defaults.

I like the idea of having a global blinky config file. I don't how to load it in tyr-quake, I even tried loading the config after anytime a "default.cfg" is loaded, and it didn't work for some reason. I'll look at the other engines, thanks.

SpiritQuaddicted commented 9 years ago

I asked in #qc on Anynet some days ago but forgot to comment here. Another easy and safe solution would be to hardcode your defaults right into the engine similar to eg cl_forwardspeed.

shaunlebron commented 9 years ago

This was actually the first idea that came to mind when creating config for blinky. Default settings for variables like cl_forwardspeed are straightforward. But there are no default key-bindings in engine that I know of, and they all happen at runtime. In fact, something like unbind all is at the beginning of default.cfg in id1.

We essentially have to inject blinky config between default.cfg and config.cfg to create defaults. I tried doing this in the engine to no avail.