Monsters you are not allowed to melee


Although the central place for design discussion is ##crawl-dev on freenode, some may find it helpful to discuss requests and suggestions here first.

Ziggurat Zagger

Posts: 4055

Joined: Tuesday, 10th January 2012, 19:49

Post Wednesday, 19th March 2014, 22:36

Re: Monsters you are not allowed to melee

so back to octopode crushers specifically
the throwing they have seems to not act like I expected at all ... in some positions it is completely deterministic (you know exactly what space you will end up on after being thrown) but I have no idea what the conditions are for this to happen
this actually seems worse to me than having them throw the player completely randomly, since it's very obviously not random but the rules are not clear at all

(I still don't think having the crusher move the player actually leads to good gameplay but apparently that ship has sailed so...)

  Code:
                                          ######### 
                                          #....?..# 
                                          #.......# 
                  ###########             #.......# 
                  #.........#            ##..########
                  #.........#            #..........#
###################...>.....##############..........#
#>...................[..............................#
#....###################.#.#######..######.......)..#
#....#                 #.#.#     #..#    #..........#
#....#                 #.#.#     #..#    #..........#
#....#                 #.#.#     #..#    ##......####
###.##                 #<#.#     #..#######...)..#   
  #.#                 ##.#.#######..##...........#   
  #.###################..........................#   
  #.#..............[..?....#######...............#   
  #.#.#################....#.....................#   
  #.#.#            #.......#.(...................#   
  #.#.#    #########...........................#.#   
  #.#.#    #......##.......#................##.#.#   
  #.#.######......##.......#................##.#.###
  #........................#.......................#
  ###.######......###......#.......................#
    #.#    ####..## #.....(#......../...[..........#
    #.#   #####..####......#.......................##
    #.#   #...>....#####..<[................?.......#
    #.#   #........#   #............................#
    #.#   #........#   #..........<..../.........(..#
    #.#####........#   #............................#
    #.##...........#   #....##......................#
    #.##...........#####....##....).................#
    #.##............................................#
    #.##........########.#..##......................#
    #.######....########O#..##...............#.######
    #.#    #.........x@..#..##...............#.#     
    #.#    #....##########..##..............>#.#     
    #.#    #....##########..##...............#x#     
 ####.#    #.................................#@#     
 #....######....###########.##..............(#.#     
 #...........................................O<#     
 #....######................##...........#######     
 ######    #...###############...........#           
           #...#             ##.........)#           
           #...#              ############           
           #####                                     

The crusher is the x. If you are standing at the @, you will always be thrown to the O (works for both the spots I marked). The bottom-right corridor is especially weird since the way you'd normally fight the crusher there leads to you predictably cycling between exactly three spots.
User avatar

Dungeon Master

Posts: 762

Joined: Thursday, 25th April 2013, 02:43

Post Wednesday, 19th March 2014, 22:59

Re: Monsters you are not allowed to melee

crate wrote:so back to octopode crushers specifically
the throwing they have seems to not act like I expected at all ... in some positions it is completely deterministic (you know exactly what space you will end up on after being thrown) but I have no idea what the conditions are for this to happen
this actually seems worse to me than having them throw the player completely randomly, since it's very obviously not random but the rules are not clear at all
Octopode throwers always try to throw you at least 4 squares and next to walls (which gives them extra damage). It appears that this is what's causing the throwing to be deterministic in these situations.

Oh, and quick suggestions on Octopode throwers: Would they be better if they became "Octopode tacklers" which moved along with you when then threw you, so in your previous examples:

  Code:
                                          ######### 
                                          #....?..# 
                                          #.......# 
                  ###########             #.......# 
                  #.........#            ##..########
                  #.........#            #..........#
###################...>.....##############..........#
#>...................[..............................#
#....###################.#.#######..######.......)..#
#....#                 #.#.#     #..#    #..........#
#....#                 #.#.#     #..#    #..........#
#....#                 #.#.#     #..#    ##......####
###.##                 #<#.#     #..#######...)..#   
  #.#                 ##.#.#######..##...........#   
  #.###################..........................#   
  #.#..............[..?....#######...............#   
  #.#.#################....#.....................#   
  #.#.#            #.......#.(...................#   
  #.#.#    #########...........................#.#   
  #.#.#    #......##.......#................##.#.#   
  #.#.######......##.......#................##.#.###
  #........................#.......................#
  ###.######......###......#.......................#
    #.#    ####..## #.....(#......../...[..........#
    #.#   #####..####......#.......................##
    #.#   #...>....#####..<[................?.......#
    #.#   #........#   #............................#
    #.#   #........#   #..........<..../.........(..#
    #.#####........#   #............................#
    #.##...........#   #....##......................#
    #.##...........#####....##....).................#
    #.##............................................#
    #.##........########.#..##......................#
    #.######....########O#..##...............#.######
    #.#    #.........x@y.#..##...............#.#     
    #.#    #....##########..##..............>#.#     
    #.#    #....##########..##...............#x#     
 ####.#    #.................................#@#     
 #....######....###########.##..............(#y#     
 #...........................................O<#     
 #....######................##...........#######     
 ######    #...###############...........#           
           #...#             ##.........)#           
           #...#              ############           
           #####                                     

It would still move you from "@" to "O", but it would also move itself to "y". This would means you at least aren't being removed from melee range of the thrower, although you are still possibly being moved out of melee range of other monsters.
On IRC my nick is reaverb. I play online under the name reaver, though.

For this message the author reaver has received thanks:
gammafunk

Ziggurat Zagger

Posts: 4055

Joined: Tuesday, 10th January 2012, 19:49

Post Wednesday, 19th March 2014, 23:08

Re: Monsters you are not allowed to melee

Octopode throwers always try to throw you at least 4 squares and next to walls

well that's great but they can throw me 4 spaces and still have me end up next to a different wall just fine in those cases, but instead choose to throw me a shorter distance.

(I am pretty sure I know what you were trying to say, but what you were trying to say is not what you said)

the game doesn't tell you the way crusher throwing works, and figuring out the rules in-game is not really very effective imo (I knew it was something like the mechanics you mentioned but still could not figure out where I was going to end up after a few minutes in wizmode of just getting thrown by a crusher ... except when I could ... but I could not distinguish between the two situations. Like I said, clearly not random, but also not clear what the rules are.)

it should really either just be random or be something that is much easier to figure out imo

---

The crusher following the player doesn't change anything about player-repositioning being a not-good-design thing to do like I described on the previous page.

(and like I said, I don't personally have a problem with how hard crushers are to melee, I was merely presenting the argument for that side)
User avatar

Tartarus Sorceror

Posts: 1850

Joined: Monday, 20th December 2010, 04:22

Location: Surabaya, Indonesia

Post Thursday, 20th March 2014, 00:27

Re: Monsters you are not allowed to melee

Something I think hasn't been said around here (forgive me if it has been):

Melee is simple. Magic and ranged combat are more complex. Moving from a simple mechanic to a more complex one is tiresome. Moving from a complex mechanic to a simpler one is not.

Deliberately tiring the players of your game is not really good for your game.

Dungeon Master

Posts: 585

Joined: Sunday, 9th June 2013, 17:13

Post Thursday, 20th March 2014, 03:57

Re: Monsters you are not allowed to melee

crate wrote:
Octopode throwers always try to throw you at least 4 squares and next to walls

well that's great but they can throw me 4 spaces and still have me end up next to a different wall just fine in those cases, but instead choose to throw me a shorter distance.


Well, this is functioning as kind of a bug report. There are four issues I see (these are a bit technical):

  • I recently changed the throw to consider bolt range (see below) instead of grid distance, since using the former was my original intent but I unwittingly used a grid distance method at first. In retrospect, since the throw is about movement, grid distance is actually the most natural choice here. The bottom line is that currently it's not "at least 3 squares" but "at least a range of 3"
  • The throw considers ray paths (e.g. the path you see when you target with a wand), checking for ray endpoints over the available floor spaces and stepping forward one to see if there's a hard feature, when it should be checking over the hard features as endpoints and stepping backwards along the ray to see if there is a free floor space for the landing. It should then fall back to just checking the floor spaces if there aren't good solid features in that first pass. The current approach is unnecessarily excluding throw locations.
  • The minimum distance of the throw should be considered relative to the victim, not the thrower (i.e. the op crusher) as is currently.
  • The minimum distance should probably be lowered to two squares 2 from the victim.

These are all easily fixed, but I may change throwing to not consider hard features if a more interesting "landing choice function" can be found. The hard feature selection seems more a thematic "excuse" for extra damage than anything. I would like to go with something other than purely random here; my current thinking is to drop the additional damage for hard features, but just favor throwing the player next to hostiles. No, don't just suggest switching throw with the blink allies encircling spell, since that neither changes player's LOS nor does damage. However if anyone has a good suggestion as to how to choose the landing site, that's appreciated.

Reaver's idea to tackle the player is also an interesting: in addition to removing the need to move back in on the crusher, it even allows it continue constricting the player. It becomes a bit like some kind of "mega trample." It would be amusing, to say the least.

crate wrote:The crusher following the player doesn't change anything about player-repositioning being a not-good-design thing to do like I described on the previous page.

(and like I said, I don't personally have a problem with how hard crushers are to melee, I was merely presenting the argument for that side)


As you say that ship has sailed; we have fundamentally different views on whether these mechanics should be in the game. But that's ok, since the developers won't be forcing the player to experience said mechanics to an excessive degree.

Finally, some technical details and for those interested/not aware. In crawl there are "bolt" ranges, which are used for spell, projectiles, and ranged abilities in general. They work as follows:

  Code:
caster at pos c: c = (c.x, c.y), c.x,c.y are integers >= 0
target at pos t: t = (t.x, t.y)
bolt range of r, r an integer > 0.
t is in range of c iff:
(t.x - c.x)^2 + (t.y - c.y)^2 <= r^2 + 1 


This notion of of what's referred to as r^2 distance (sometimes r2 or range2 in variable names) creates the "circles" you see in crawl that define LOS, the circular regions in spell targeting, and the circular explosion regions, etc. It's different from grid distance, which translates to the number of movements it takes to reach the target from caster:
  Code:
 grid_distance(t,c) = max(abs(t.x - c.x), abs(t.y - c.y))


In DCSS, mechanics that involve movement should generally use grid distance, while those involving ranged attacks should use r^2 distance. Making the LOS be a square and using grid distance for both bolt ranges and movement is something I want to revisit in 0.15 (yes, the infamous SQUARELOS). I think circlelos is confusing for both players and developers, and I think squarelos will give better gameplay overall, but that's another topic and I need to do more research to understand all the issues involved (and make the patch).

For this message the author gammafunk has received thanks:
dpeg
Previous

Return to Game Design Discussion

Who is online

Users browsing this forum: No registered users and 173 guests

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.