Unvanquished / Unvanquished

An FPS/RTS hybrid game powered by the Daemon engine (a combination of ioq3 and XreaL)
https://unvanquished.net
Other
959 stars 153 forks source link

ignore evolution/buy restrictions in /devmode #2591

Open ghost opened 1 year ago

ghost commented 1 year ago

Aliens should not be prevented to evolve in /devmode. Also, players should be allowed to buy stuff without credits or momentum, to reduce the number of keystrokes required to test something.

slipher commented 1 year ago

That's what cheats are for. Code for buying and evolving is something developers may need to test, so it should work normally unless the user requests otherwise. If you want to reduce keystrokes you can make a bind or alias that does some give commands.

ghost commented 1 year ago

Then we could have a command to just change some player's class and equipment. Some player, such a bot, for example.

illwieckz commented 1 year ago

We may just make a cheat cvar to unlock restrictions, maybe a single one for all would be enough. I agree that a developer in dev mode should be able to test all non-dev mode features so we need a way to lock/unlock restrictions in an optional way.

ghost commented 1 year ago

Or maybe have a cheat UI, because commands/cvars for everything is just very annoying and not really discoverable, and one can't really know all commands, especially when starting with the project.

Viech commented 1 year ago

bind F5 "give all;give momentum;give bp" is what I use.

I agree with @slipher that devmode should reproduce normal gameplay, including its limitations, by default. With too many distinctions between map and devmap, developers might miss bugs affecting the normal game.

ghost commented 1 year ago

I agree on that point.

I still think relying on many commands make things very cumbersome. As for binds, there is no really practical way to manage them.

With too many distinctions between map and devmap, developers might miss bugs affecting the normal game

And with too many bindings in devmap, they won't be able to use those keys for normal game without having messages like "this is only doable in cheat mode" or something like that.

About no practical way to manage them: no GUI, and no way to be sure there is no conflict. I'm pretty sure there is also no way to bind for /devmap only. Bindings in my text editor (a tool, so it's ok), in my WM (same) or in blender for example are complicated and numerous enough, I would rather not have those problems with a game.

You may be used to that complexity, with setup you tweaked to death 10 years ago and are using since then, but this does not makes the situation acceptable. Also, there is no real way to discover which commands and cvar the game exposes. I, notably, use the changes I did to the "server setup" to configure bots (only locally, sadly, it would be precious to have it in remote, too) very useful. We could really use such a GUI for devmapping, at least for most common things. The simple fact we seem to all use frequently the combination "give all; give momentum; give bp" shows that there is a common need, and instead of everyone doing their own NiH thing because no choice, it would be useful to have an official shortcut for that.

I should probably edit the issue to express this better though.