Author Topic: I added a new monster, any ideas or feedback? (post your new stuff too)  (Read 54311 times)

reaver

  • Rogueliker
  • ***
  • Posts: 207
  • Karma: +0/-0
    • View Profile
The resolution is holdover from earlier way of storing level data. I recently switched to system, where I don't have to worry about size of the levels while generating the levels. They can just freely grow to all directions as needed.

Why would you want to grow the levels arbitrarily during generation? Even if you have a good reason, why not creating a big dungeon canvas, generate your level, and then 'crop' it to the used size? Dictionary accesses sound terribly slow compared to contiguous memory, but then again not sure about anything performance-wise in hy.

tuturto

  • Rogueliker
  • ***
  • Posts: 259
  • Karma: +0/-0
    • View Profile
    • pyherc
The resolution is holdover from earlier way of storing level data. I recently switched to system, where I don't have to worry about size of the levels while generating the levels. They can just freely grow to all directions as needed.

Why would you want to grow the levels arbitrarily during generation? Even if you have a good reason, why not creating a big dungeon canvas, generate your level, and then 'crop' it to the used size? Dictionary accesses sound terribly slow compared to contiguous memory, but then again not sure about anything performance-wise in hy.

Dictionaries are slower than continuous blocks of memory, but since I don't have 2D-arrays at my disposal anyway, but have to use list of lists instead, the difference isn't big. And I'm writing a roguelike, performance isn't usually the problem (unless I'm doing something totally stupid).

Being able to grow to any direction is just a nice feature. One could just plop down a room and add rooms around it and connect them together with corridors. And then just repeat that over and over until level is ready, without worrying about running into a boundary. Cropping definitely would be another option doing that though.

Bonus is that I could add more rooms or tunnels during gameplay, again without worrying about boundaries. Not sure yet, why I would want to do this though.
Everyone you will ever meet knows something you don't.
 - Bill Nye

reaver

  • Rogueliker
  • ***
  • Posts: 207
  • Karma: +0/-0
    • View Profile
Fair enough, lists suck for mass storage :)

And I'm writing a roguelike, performance isn't usually the problem (unless I'm doing something totally stupid).

Well, I'd be kinda cautious with that one, as some bad design decisions might limit you later on unless you do a massive overhaul, e.g. monster handling being overly slow -> not many monsters possible otherwise performance will suck

tuturto

  • Rogueliker
  • ***
  • Posts: 259
  • Karma: +0/-0
    • View Profile
    • pyherc
And I'm writing a roguelike, performance isn't usually the problem (unless I'm doing something totally stupid).

Well, I'd be kinda cautious with that one, as some bad design decisions might limit you later on unless you do a massive overhaul, e.g. monster handling being overly slow -> not many monsters possible otherwise performance will suck

That is very true. And time spent on rewriting is time not spent on writing new features.
Everyone you will ever meet knows something you don't.
 - Bill Nye

AdamStrange

  • Newcomer
  • Posts: 35
  • Karma: +0/-0
    • View Profile
Quote
Looks nifty. When they pop, they'll do damage to player? Are there any secondary effects.
Yep, they do a lot of damage, so keep away - this can all be tweaked of course

hmm, secondary effect - I hadn't thought of that :)

Pickledtezcat

  • Rogueliker
  • ***
  • Posts: 62
  • Karma: +0/-0
    • View Profile
    • Pickledtezcat Game Development Blog
I've got some plant men in my project. They are not that tough but they give out a cloud of spores when hit.



I'm trying to include a lot of different types of monsters which have different behavior and attack types rather than just a bunch of progressively tougher enemies.
These plant creatures for example won't usually attack unless you get too close, but the 'diseased' variety (the brown ones) start out crazed and will attack anyone they see, even other monsters if they are the closest threat.

Some roguelikes have a set of effects that can be set on the player, like dazed, diseased, poisoned etc... I hope to make good use of that to include a bunch of secondary effects.

I think using dictionaries for map data is a great idea for roguelikes. Most computers now can handle the extra drain and it makes things much more flexible. A tile can contain almost anything, and you can set traits of a tile on the fly, allowing spells or effects which can change the layout of the level. Imagine being able to place lava on a tile by hand, or "zap!" a wand of pit traps!

Unless your level is like 500x500 tiles in size I don't think you're going to get performance issues. Even then you could crop the areas which is active, not performing checks on creatures or items which are outside the active radius.
A blog about my 3d Roguelike: http://pickleddevblog.blogspot.kr/

AdamStrange

  • Newcomer
  • Posts: 35
  • Karma: +0/-0
    • View Profile
Mr Pickledtezcat, your blog seems broken with allowing comments by the way ;)

tuturto

  • Rogueliker
  • ***
  • Posts: 259
  • Karma: +0/-0
    • View Profile
    • pyherc
Those plantmen look pretty cool. Is it possible for them to hide in high grass or some other vegetation? Since they certainly look like they would blend in very well.

I haven't been working on new (or old) creatures in a while now sadly. I figured out a better way to build my levels, so I have been reworking the code for that. The good thing is that after I'm done, I can combine new parts more freely and hopefully create more interesting rooms.

But hopefully after that I can create some more content again. I have been given really good ideas for that stuff already anyway.
Everyone you will ever meet knows something you don't.
 - Bill Nye

Pickledtezcat

  • Rogueliker
  • ***
  • Posts: 62
  • Karma: +0/-0
    • View Profile
    • Pickledtezcat Game Development Blog
Mr Pickledtezcat, your blog seems broken with allowing comments by the way ;)

Hi, thanks for the heads up.
I think I fixed it. There was a problem but it should now allow anyone to post without having to do a verification or anything.

Quote
Those plantmen look pretty cool. Is it possible for them to hide in high grass or some other vegetation? Since they certainly look like they would blend in very well.

Yeah, I want to add some code so that certain monsters might spawn out of a certain tile or furniture item under certain conditions, like a giant spider may crawl out of a barrel if you check it for treasure, or zombies might come out of a grave. The plant men might climb up from out of the ground leaving a mound of dirt behind. I've got flying monsters such as bats which can fly down from the ceiling to land next to the player and ambush them (they will play a special animation as they are placed).

Such monsters should be quite weak, because players will be annoyed at a powerful monster suddenly appearing right next to them and killing their character before they get a chance to do anything. But having the ability to spawn in an unexpected place could be a fun game mechanic for certain monsters. The key is to make it interesting but not annoying, perhaps only allowing it to happen rarely, or limiting the number of times it could happen in a single level...


A blog about my 3d Roguelike: http://pickleddevblog.blogspot.kr/

tuturto

  • Rogueliker
  • ***
  • Posts: 259
  • Karma: +0/-0
    • View Profile
    • pyherc
Such monsters should be quite weak, because players will be annoyed at a powerful monster suddenly appearing right next to them and killing their character before they get a chance to do anything. But having the ability to spawn in an unexpected place could be a fun game mechanic for certain monsters. The key is to make it interesting but not annoying, perhaps only allowing it to happen rarely, or limiting the number of times it could happen in a single level...

What if the monsters wouldn't normally spawn by themselves, but the player would have to do something to make it happen? I have graves that might contain items and player can dig them up. But while doing so, he might end up disturbing a skeleton that will then climb out of the grave and attack the player. Later on I'm planning to have tombs of rich and powerful people to have better items and stronger monsters. That way it's not nasty surprise that the player can't control in any way, but a calculated risk.
Everyone you will ever meet knows something you don't.
 - Bill Nye

Pickledtezcat

  • Rogueliker
  • ***
  • Posts: 62
  • Karma: +0/-0
    • View Profile
    • Pickledtezcat Game Development Blog

What if the monsters wouldn't normally spawn by themselves, but the player would have to do something to make it happen? I have graves that might contain items and player can dig them up. But while doing so, he might end up disturbing a skeleton that will then climb out of the grave and attack the player. Later on I'm planning to have tombs of rich and powerful people to have better items and stronger monsters. That way it's not nasty surprise that the player can't control in any way, but a calculated risk.

That would work. The key is not to create a situation where the player will be unfairly penalized for something they have no control over. People hate that.
But if they chose to dig up the grave... :)

Other situations:
Throwing a stone down a well might disturb something.
Taking a treasure from an altar could rouse some guardians.
Picking wild mushrooms might have bad consequences.
Feeding gremlins after midnight should be avoided.
Examining an alien egg too closely is not recommended.

Maybe there should be a sign nearby to warn them of the potential consequences, or maybe make sure they get a taste of a weaker encounter before they can trigger the more deadly type of event.
A blog about my 3d Roguelike: http://pickleddevblog.blogspot.kr/

AgingMinotaur

  • Rogueliker
  • ***
  • Posts: 805
  • Karma: +2/-0
  • Original Discriminating Buffalo Man
    • View Profile
    • Land of Strangers
What if the monsters wouldn't normally spawn by themselves, but the player would have to do something to make it happen? I have graves that might contain items and player can dig them up. But while doing so, he might end up disturbing a skeleton that will then climb out of the grave and attack the player. Later on I'm planning to have tombs of rich and powerful people to have better items and stronger monsters. That way it's not nasty surprise that the player can't control in any way, but a calculated risk.
ADOM has this. The dwarven graveyard is a pretty good source of loot in diggable graves, but guarded by potentially extremely nasty undead.

Other situations:
Throwing a stone down a well might disturb something.
Taking a treasure from an altar could rouse some guardians.
Picking wild mushrooms might have bad consequences.
Feeding gremlins after midnight should be avoided.
Examining an alien egg too closely is not recommended.

Sounding a magical bell, lighting a brazier, rubbing an oil lamp. There's also the possibility of places where a certain taboo must be upheld to not anger the monsters standing guard. "You are free to roam this place, but don't eat from the trees/pick up any treasure/cast any spells/[...]" Needn't be a problem for players who can exercise restraint (breaking the taboo and getting away with it should entail some advantage, eg. a stat raise or precious stuffz), but then along comes some bastard who assigns a quest to steal an apple from the garden of the gods.

As always,
Minotauros
This matir, as laborintus, Dedalus hous, hath many halkes and hurnes ... wyndynges and wrynkelynges.

WindGodGau

  • Newcomer
  • Posts: 5
  • Karma: +0/-0
    • View Profile
That would work. The key is not to create a situation where the player will be unfairly penalized for something they have no control over. People hate that.
But if they chose to dig up the grave... :)

...

Taking a treasure from an altar could rouse some guardians.

I was looking at implementing something similar in my game. Many of the artifact-level items are generally generated in some sort of arena-structure guarded by a difficult enemy boss encounter. These items are immensely useful, but in order to obtain them the player either needs to eliminate the difficult enemy. If the player wins, they are more powerful than before, thanks to the treasure.

The idea is to allow the player to set their comfort level to their choosing. A low-risk-low-reward game is entirely possible (although the end-game will be more difficult for it), but all that tempting treasure can create a high-risk-high-reward game for the player as well.

Rickton

  • Rogueliker
  • ***
  • Posts: 215
  • Karma: +0/-0
    • View Profile
    • Weirdfellows
I like these sorts of ideas. Usually the risk with artifacts is the chance they might be cursed. This idea is much more interesting, and "realistic," I guess you can say (though obviously I use the term loosely), it makes a lot more sense for a powerful artifact to be guarded by a powerful monster in a tomb or vault rather than it just lying around on the dungeon floor.
Creator of the 7DRL Possession: Escape from the Nether Regions
And its sequel, simply titled Possession