Author Topic: Modern Hitman/Spy RL  (Read 13580 times)

Draconis

  • Newcomer
  • Posts: 5
  • Karma: +0/-0
    • View Profile
    • Email
Modern Hitman/Spy RL
« on: April 27, 2011, 02:35:52 AM »
Hi,

I've been wanting to make a spy/hitman themed roguelike for a while now.

I'm thinking randomly generated missions and goals. Each mission would be similar to a traditional style dungeon with levels (up/down), but the mission objectives would change and provide some quite varied gameplay. I'd also like so quite smart AI for when guards etc are alerted to your presence. I'd like to draw on games such as hitman which allows many ways to win a level, and also splinter cell/thief in general.

I'm fairly new to roguelike development and I'm just looking to see what people think and for any suggestions.

Thanks,
Draconis

Vanguard

  • Rogueliker
  • ***
  • Posts: 1112
  • Karma: +0/-0
    • View Profile
Re: Modern Hitman/Spy RL
« Reply #1 on: April 27, 2011, 07:29:58 AM »
Welcome to the Temple, Draconis!

I think it's a potentially fun idea.  I believe there are a few roguelikes out there that use line of sight-based stealth.  It might be worth looking for a few to see what works and what doesn't.

Just FYI though, an intelligent AI is very difficult to write.  It might be best to have small ambitions in that department for your first project.

Good luck!

Rabiat

  • Rogueliker
  • ***
  • Posts: 88
  • Karma: +0/-0
    • View Profile
Re: Modern Hitman/Spy RL
« Reply #2 on: April 27, 2011, 03:05:42 PM »
Hi Draconis.

I once tried to make a stealth-based RL, but abandoned it because I came to the conclusion my design was fundamentally flawed. I still think a stealth-based RL is a great idea, but I think anyone trying to make one should consider the following problems.

- Sneakers like Thief or Hitman are realtime, while most roguelikes are traditionally turn-based. In turn-based gameplay, the suspense of time-critical decisions is lost.

- Line of sight or field of view in roguelikes is usually symmetric: if you can see something, it can see you. You'll almost certainly have to find ways around this (for instance, the option for the player character to hide in shadows). Also, restricted FOV ('cones') may seem a great idea in theory, but in practice, it can be very annoying.

- Related to this are light sources; if you want tactics to include visibility/light/darkness, there will have to be dynamic light sources.

- Sneakers use sound to convey information. The player can hear guards approach, or give away his location by firing a weapon, for example. Most roguelikes don't have sound support, so noise is ignored altogether, or it is represented visually.

- (Almost?) all roguelikes are grid-based. The grid's coarseness represents a challenge in itself. Something is either in view, or it isn't. It's very hard to represent something partially visible. Also, it's impossible to represent something being between two tiles.

- Related to this are directions. Although it's very well possible to have things point or move in precise angles (i.e. more than just cardinal/ordinal directions), I've never figured out how to represent them nicely. For example, how is the game going to inform the player that a guard moving or looking in a certain direction?

I found that covering or ruling out these problems was a far greater challenge than writing the engine/game itself.

Quote from: Vanguard
Just FYI though, an intelligent AI is very difficult to write.  It might be best to have small ambitions in that department for your first project.

(Most) games don't require 'intelligent' AI, they need an AI that makes the NPCs appear to behave intelligently. Except for pathfinding (graph search), you'll hardly ever come across non-deterministic problems, let alone anything requiring pattern recognition, uncertain reasoning or machine learning. Don't get me wrong, it is a lot of work to design/implement/balance a game AI, but it's not terribly difficult.
« Last Edit: April 27, 2011, 03:12:24 PM by Rabiat »

Z

  • Rogueliker
  • ***
  • Posts: 905
  • Karma: +0/-0
    • View Profile
    • Z's Roguelike Stuff
Re: Modern Hitman/Spy RL
« Reply #3 on: April 27, 2011, 06:32:53 PM »
- Line of sight or field of view in roguelikes is usually symmetric: if you can see something, it can see you. You'll almost certainly have to find ways around this (for instance, the option for the player character to hide in shadows). Also, restricted FOV ('cones') may seem a great idea in theory, but in practice, it can be very annoying.
I think they are not annoying if wide enough (e.g. 225 degrees - normal human FOV is about 180 degrees, but we can assume that we can get more by rotating only the head while exploring). Not sure if 225 degrees would be applicable for a stealth based game, though.

Quote
- Related to this are light sources; if you want tactics to include visibility/light/darkness, there will have to be dynamic light sources.

- Sneakers use sound to convey information. The player can hear guards approach, or give away his location by firing a weapon, for example. Most roguelikes don't have sound support, so noise is ignored altogether, or it is represented visually.
Dynamic light sources and high quality visual representation of sound seem underrepresented in roguelikes. It feels silly in ADOM when you cannot see a fire elemental because of darkness. Sound seems less relevant to non-stealth-based games (a message like "you hear a noise" is usually enough there), but I expect something like a character at the guessed location of the sound, whose color depends on the loudness, and color on type. IVAN has dynamic light sources, and objects which are hard to see (like traces of blood which you can use to track enemies that are fleeing from you), but I think IVAN's solution goes a bit against the tactical nature of roguelikes. (There is also apparently a TTY version of IVAN, but I don't know how it displays such details.)

Quote
- Sneakers like Thief or Hitman are realtime, while most roguelikes are traditionally turn-based. In turn-based gameplay, the suspense of time-critical decisions is lost.

- (Almost?) all roguelikes are grid-based. The grid's coarseness represents a challenge in itself. Something is either in view, or it isn't. It's very hard to represent something partially visible. Also, it's impossible to represent something being between two tiles.

Traditional roguelikes are tactical games, and they depend on the player's tactical thinking, not on their senses or reflexes. You lose the suspense of time-critical decisions, but this is a different genre now, so what's the problem? In a tactical game, partially visible things would probably either randomly be noticed (and then appear just like visible things) or not. Just like traps and secret doors in traditional roguelikes, or maybe a bit more sophisticated. Why would you want to represent something between two tiles?

Quote
- Related to this are directions. Although it's very well possible to have things point or move in precise angles (i.e. more than just cardinal/ordinal directions), I've never figured out how to represent them nicely. For example, how is the game going to inform the player that a guard moving or looking in a certain direction?
Do we really need things pointing in more than 8 directions? Some roguelikes work very well with only 8-directional targetting. It is not realistic, but tactically interesting and fun. I think 8-directional facing and all-directional targetting would be OK. You could represent 8 directions using characters, some people think it looks bad (since you would have to use something like LJ7F or 7913 to represent diagonals), but they will eventually get used to it, I think, as there is no choice (except tiles or UNICODE of course). Another option would be to have a game include a key which highlights the FOV of all entities on the screen (as estimated by the player character).

A potential big challenge could be to randomly create interesting stealth based puzzles.

Kaskad

  • Newcomer
  • Posts: 10
  • Karma: +0/-0
    • View Profile
    • Email
Re: Modern Hitman/Spy RL
« Reply #4 on: April 27, 2011, 06:38:18 PM »
Anyone wishing to make a stealth-based roguelike owes it to themselves to play Kusemono, it strikes at a really nice core mechanic for implementing that sort of genre into roguelikes. It's easy to see how things like disguises and shadows could be folded into it, as well.

Draconis

  • Newcomer
  • Posts: 5
  • Karma: +0/-0
    • View Profile
    • Email
Re: Modern Hitman/Spy RL
« Reply #5 on: April 27, 2011, 10:51:37 PM »
Thanks for the feedback  ;D

I've been considering directional FOV but probably only for NPCs. But maybe hiding in shadows could remove this. And you'll certainly have ranged weapons so this combination of shadow for close combat stealth and range could work.

I'm using OpenGL and so this should allow for extra visual data, eg colour and I'm trying a system like Dwarf Fortress for representing multiple characters per tile.

The sound idea is really good and I think I'll give that a go, games like splinter cell and MGS have guards investigate sounds, and this can be used as a distraction or for an ambush.

I don't necessarily want it to be an entirely sneaky game, just a viable option. And yes I would think that always having good random generated puzzles could be very difficult.

Draconis

Draconis

  • Newcomer
  • Posts: 5
  • Karma: +0/-0
    • View Profile
    • Email
Re: Modern Hitman/Spy RL
« Reply #6 on: May 04, 2011, 12:35:49 PM »
I've been thinking about how to have different interactions when bumping another mob.
As mobs might allies/neutral bump probably shouldn't attack them, but I don't exactly want to disallow this either. In nethack for example many command require some directionality, (off the top of my head) searching, kick door, find traps etc. I know there will be a number of abilities/commands like these that will require this kind of directionality. Such as being able to talk to mobs, attack, lockpicking.

Now, I don't think I've seen this in a roguelike yet (macros maybe similar?), is a hot key bar for weapon switching, items etc, these are common in many rpgs. Could I combine the ability to hotkey items into a hotkey bar (maybe 1,2,3,4,...0) with the directionality issue, such that selecting the lockpick in the hotkey bar would mean that a direction press toward an object would try an lockpick it.

I see issues arising already such as how do you talk to someone, select an empty item? but then what about unarmed attacks.

So yeah, thoughts and improvements required. Could something like this work?

Thanks
Draconis


Darren Grey

  • Rogueliker
  • ***
  • Posts: 2027
  • Karma: +0/-0
  • It is pitch black. You are likely to eat someone.
    • View Profile
    • Games of Grey
Re: Modern Hitman/Spy RL
« Reply #7 on: May 04, 2011, 01:36:12 PM »
ADOM has tactical stances which can be switched between with the F-keys.  If Berserk and naked one will attack friendlies without a prompt.  Perhaps something similar can be devised?  Have several key stances which determine your interaction with objects and NPCs, and possibly have other stat modifiers.  Something like the following:

Passive - Attack hostiles, chat with friendlies, no stat mods
Aggressive - Attack hostiles, swap places with friendlies or push them out of the way, +attack, -defence
Raging - Attack hostiles, attack friendlies, ++attack, --defence
Sneak - Backstab hostiles, steal from friendlies, -speed, +backstab damage, +stealth, +defence
Stealth - Distract hostiles (send them to another location), steal from friendlies, -speed, ++stealth, +trap detection

Certain abilities could then work better in certain stances.

For things like door opening / lockpicking, I'd suggest this be automatic when bumping into a doors.  "This door is locked.  Do you wish to attempt to unlock it?  (y/N)"

Draconis

  • Newcomer
  • Posts: 5
  • Karma: +0/-0
    • View Profile
    • Email
Re: Modern Hitman/Spy RL
« Reply #8 on: May 05, 2011, 02:32:03 AM »
The stances idea is great. They could be used for all sorts of cool things.

Just reiterating a previous comment about fast switching between weapons. In Hitman it is often necessary to "sheathe" weapons and pull them out at the right moment. Diablo 2 had a quick switch between two weapon sets.
I think it would be good to be able to quickly switch between weapons/tools without the need for going into an inventory or menu.

dephbokks

  • Newcomer
  • Posts: 37
  • Karma: +0/-0
    • View Profile
Re: Modern Hitman/Spy RL
« Reply #9 on: May 05, 2011, 03:48:07 AM »
Just reiterating a previous comment about fast switching between weapons. In Hitman it is often necessary to "sheathe" weapons and pull them out at the right moment. Diablo 2 had a quick switch between two weapon sets.
I think it would be good to be able to quickly switch between weapons/tools without the need for going into an inventory or menu.

It's funny that I saw this comment because in my current rl project I added this feature. But, I think it came out a different way. During testing, I was getting annoyed at having to switch back and forth from melee configuration to missile configuration. So I added fast switching between two user-defined sets.

And then I made the maneuver cost some time slices so there is a strategic element to it; but, for me, I love the non-annoying aspect of one-key fast weapon set switching.

7h30n

  • Newcomer
  • Posts: 33
  • Karma: +0/-0
    • View Profile
Re: Modern Hitman/Spy RL
« Reply #10 on: May 05, 2011, 07:24:34 AM »
That is an excellent idea for a roguelike. My friends also told me I should make a stealth based roguelike, but since I'm making my first (which you can try the alpha version) I didn't design it that way.

I wish you best of luck in making it and ofcourse tons of fun!

Regarding fast weapon switching, yes that is great. Maybe I'll add the feature in my own roguelike when I do the ranged weapons
Current project: Into the Dungeon++

MrMorley

  • Newcomer
  • Posts: 24
  • Karma: +0/-0
    • View Profile
    • Jason's Development Blog
    • Email
Re: Modern Hitman/Spy RL
« Reply #11 on: May 13, 2011, 02:23:46 PM »
I had an idea for something like this after playing Alpha Protocol but the idea was extended to multiple organisations and the politics that results.

Basically you start off working for one of the governments, and then you can either take missions like "assassinate x", "sneak into y and steal z" or whatever, or you can infiltrate another of the agencies or terrorist groups. You can even betray your agency and join the terrorists. You then have to do jobs for both, feed information back to your agency and the like whilst not letting either lose trust in you (ala Splinter Cell: Double Agent). If your agency loses trust they burn you, if the terrorists lose trust they just have you executed.

When burned you can stay with the terrorists, or just become a freelance, and have to do freelance jobs to keep yourself in the money. Of course piss off your government or sell the wrong info to the wrong people can quickly make you a wanted man...
Jason's Development Blog
Nerds who program party hard

Draconis

  • Newcomer
  • Posts: 5
  • Karma: +0/-0
    • View Profile
    • Email
Re: Modern Hitman/Spy RL
« Reply #12 on: May 18, 2011, 02:17:14 AM »
I had an idea for something like this after playing Alpha Protocol but the idea was extended to multiple organisations and the politics that results.

Basically you start off working for one of the governments, and then you can either take missions like "assassinate x", "sneak into y and steal z" or whatever, or you can infiltrate another of the agencies or terrorist groups. You can even betray your agency and join the terrorists. You then have to do jobs for both, feed information back to your agency and the like whilst not letting either lose trust in you (ala Splinter Cell: Double Agent). If your agency loses trust they burn you, if the terrorists lose trust they just have you executed.

When burned you can stay with the terrorists, or just become a freelance, and have to do freelance jobs to keep yourself in the money. Of course piss off your government or sell the wrong info to the wrong people can quickly make you a wanted man...

It's a great idea, similar to what I was planning in the (very) long run. Procedurally generated factions, influences, and missions, with the possibility for traitors, and ambushes etc. Would be very cool.