Interrupt / systemshock

Shockolate - A minimalist and cross platform System Shock source port.
GNU General Public License v3.0
803 stars 62 forks source link

Feature requirements for v1.0 #60

Open mrikola opened 6 years ago

mrikola commented 6 years ago

As the project progresses and garners more interest, I think there should be a clear set of requirements to aim for in a prospective v1.0 release. My preliminary shortlist would be something like this:

Any comments?

JPLeBreton commented 6 years ago

That's pretty much what my 1.0 wishlist looks like.

I'd say leave in the debug inputs but move them someplace where an unsuspecting user won't trigger them accidentally.

mrikola commented 6 years ago

I used '7' as my example as it's a digit in the armory keypad code on level 1, and I for one punch in the numbers on the keyboard instead of clicking on the MFD. So yeah, that's definitely something an unsuspecting player might stumble upon 🤦‍♂️ Maybe add the Ctrl flag to them or something?

JPLeBreton commented 6 years ago

DOSBox has its debug controls for things like take screenshot and capture audio as Ctrl-function keys, eg Ctrl-F5, Ctrl-Shift-F5, etc, and that rarely stomps anything you'd want to do in a game. It's simpler here because all the keys Shock can use are known. I don't have a strong preference on specific binds.

Interrupt commented 6 years ago

Even if we go down @JPLeBreton's route of binding them to Ctrl-function keys, should we move those debug inputs behind a command line var to turn them on?

JPLeBreton commented 6 years ago

Given that Shock doesn't rely on the control key or the function keys, I think it's very unlikely users would trigger a ctrl-f* accidentally. A broader question is, would you like Shockolate to, by default, behave identically to the DOS/Mac originals as far as the input it accepts, and only offer extended functionality like debug commands (or, down the road, maybe a dev console?) with a specific user config setting (like a command line switch), or is it not worth a conceptual fork in the game's input handling?

Interrupt commented 6 years ago

A dev console is way up high on my wishlist! I've been thinking of ways to shoehorn one into the game both for debug output and also as a way to get the debug commands off of the keyboard. SS has all of the canvas switching and text drawing functionality to make this work, so it should be very doable.

farmboy0 commented 6 years ago

Would it be possible to hide the keyboard shortcuts for 7,8 and u behind a command parameter like --debug? It doesnt make any sense to me to expose them for normal gameplay.

Interrupt commented 5 years ago

Progress Update:

Interrupt commented 5 years ago

Things are looking really close for a 1.0 release soon.