Author Topic: Rogue Fable II (Browser Based Rogue-Like)  (Read 366 times)

Justin_Wang123

  • Acolyte
  • *
  • Posts: 15
    • View Profile
Rogue Fable II (Browser Based Rogue-Like)
« on: February 28, 2017, 02:26:31 AM »
Hi Everyone!

This is my third iteration on a browser based rogue-like. Its getting pretty close to completion and I'm looking for some feedback.

https://justin-wang123.itch.io/rogue-fable-ii

The main objective for this project was to create a game that is playable in a single hour while containing enough content and variety to make repeated playthroughs novel and enjoyable. I'm pretty heavily inspired by Dungeon Crawl Stone Soup and I consider this an attempt to capture the spirit of that game for times when I don't have 8+ hours to do a full DCSS run.

Features, design decisions and some rambling:

Themed Zones:
The game contains a total of 7 different themed zones each with its own unique monsters, traps, environmental hazards and level generators. For each playthrough the first few dungeon levels are always the same basic zone but then in later levels 3 of these themed zones are chosen randomly. The idea here is to give the player different combinations of themed zones with each playthrough. I think that just random placement of rooms, corridors and monsters is not enough to really make each run feel different so this is my attempted solution to that problem.

Character Classes:
There are 6 classes which I've tried to differentiate as much as possible. With rogue-likes, classes are kind of a tricky problem in my opinion. With random loot, its possible that many of the items that you find may be useless if your abilities are really solidly defined by your class. So to try to overcome this I've borrowed some ideas from DCSS and given each class a starting book from which they learn their class specific abilities. Later in the dungeon you will find the books of other classes allowing you to multiclass to some extent if you choose. There are some inherent statistical differences between the classes but most of it is defined by their starting equipment and their starting book. In this way I'm trying to have the classes be most differentiated at the start of the game but then the way in which you develop your character is dependent on what you find later in the dungeon.

Damage Model:
I've continued with a fairly deterministic damage model though with the addition of random critical hits and misses thrown in a very small percent of the time. I find that random damage is just sort of noise when I play games and just makes it difficult to judge tactics while not really adding that much unpredictability. I cant really call the difference between 5,6 and 7 damage 'random'. So my solution to this was some small percent of the time there's a critical hit (x2 damage) and some small percent of the time there's a miss (0 damage). My thinking here is that this reduces noise, increases the players ability to play tactically and when the dice do fall a certain way a big effect is produced.

I've thought a lot during this project about this sort of 'meaningful randomness'. The themed zones could be seen as a form of tackling this issue. I've also generally moved away from say generating 3-6 gold per level and instead just made it a constant 4 but with a 10% chance to spawn a treasure room on a level full of piles of gold. I feel like players are unlikely to notice these small fluctuations in gold per level but a room full of treasure is sure to get their attention. This sort of design is carried through a lot of the project and is something I'll likely continue thinking about in the future.

Feedback:
All feedback is greatly appreciated. The game is pretty close to what I'd consider 'complete' there's just some graphics missing in a few places and maybe a few balance issues here and there. I haven't really gotten to adding a lot of help text yet so one thing I'm particularly interested in is any confusion that crops up during play, anything that doesn't make sense. Obviously balance and challenge is a pretty big deal as well. I'd like at least with the easier classes for players not to just get slaughtered in the first few minutes, so I'd appreciated your experience in this. Last but not least, crashes, bugs, weird behavior, all that stuff that I'm sure keeps us all up at night. A copy paste of the browser console after a crash would be extremely helpful.

KhaoTom

  • 7DRL Reviewer
  • Priest
  • *
  • Posts: 56
    • View Profile
    • My Projects
Re: Rogue Fable II (Browser Based Rogue-Like)
« Reply #1 on: March 03, 2017, 02:49:53 PM »
I've only scratched the surface of this, but it's lovely so far! The engine is very nice and controls quite well. Thanks for sharing!

I'm getting an occasional crash when going UP stairs, here's the log of the latest occurrence:
Code: [Select]
phaser.min.js:12    Phaser v2.6.2 | Pixi.js | Canvas | WebAudio     http://phaser.io ♥♥♥
main.js:14807 Object
main.js:18825 Expanding Particle Pool to: 101
main.js:18825 Expanding Particle Pool to: 102
main.js:18825 Expanding Particle Pool to: 103
main.js:18825 Expanding Particle Pool to: 104
main.js:18825 Expanding Particle Pool to: 105
main.js:18825 Expanding Particle Pool to: 106
main.js:18825 Expanding Particle Pool to: 107
main.js:18825 Expanding Particle Pool to: 108
main.js:18825 Expanding Particle Pool to: 109
main.js:18825 Expanding Particle Pool to: 110
main.js:18825 Expanding Particle Pool to: 111
main.js:18825 Expanding Particle Pool to: 112
main.js:18825 Expanding Particle Pool to: 113
main.js:18825 Expanding Particle Pool to: 114
main.js:18825 Expanding Particle Pool to: 115
main.js:18825 Expanding Particle Pool to: 116
main.js:18825 Expanding Particle Pool to: 117
main.js:18825 Expanding Particle Pool to: 118
main.js:18825 Expanding Particle Pool to: 119
main.js:18825 Expanding Particle Pool to: 120
main.js:18825 Expanding Particle Pool to: 121
main.js:18825 Expanding Particle Pool to: 122
main.js:18825 Expanding Particle Pool to: 123
main.js:18825 Expanding Particle Pool to: 124
main.js:18825 Expanding Particle Pool to: 125
main.js:18825 Expanding Particle Pool to: 126
main.js:18825 Expanding Particle Pool to: 127
main.js:18825 Expanding Particle Pool to: 128
main.js:18825 Expanding Particle Pool to: 129
main.js:18825 Expanding Particle Pool to: 130
main.js:18825 Expanding Particle Pool to: 131
main.js:18825 Expanding Particle Pool to: 132
main.js:18825 Expanding Particle Pool to: 133
main.js:18825 Expanding Particle Pool to: 134
main.js:18825 Expanding Particle Pool to: 135
main.js:18825 Expanding Particle Pool to: 136
main.js:18825 Expanding Particle Pool to: 137
main.js:18825 Expanding Particle Pool to: 138
main.js:18825 Expanding Particle Pool to: 139
main.js:18825 Expanding Particle Pool to: 140
main.js:18825 Expanding Particle Pool to: 141
main.js:18825 Expanding Particle Pool to: 142
main.js:18825 Expanding Particle Pool to: 143
main.js:18825 Expanding Particle Pool to: 144
main.js:18825 Expanding Particle Pool to: 145
main.js:18825 Expanding Particle Pool to: 146
main.js:18825 Expanding Particle Pool to: 147
main.js:18825 Expanding Particle Pool to: 148
main.js:18825 Expanding Particle Pool to: 149
main.js:18825 Expanding Particle Pool to: 150
main.js:18825 Expanding Particle Pool to: 151
main.js:18825 Expanding Particle Pool to: 152
main.js:18825 Expanding Particle Pool to: 153
main.js:18825 Expanding Particle Pool to: 154
main.js:18825 Expanding Particle Pool to: 155
main.js:18825 Expanding Particle Pool to: 156
main.js:18825 Expanding Particle Pool to: 157
main.js:18825 Expanding Particle Pool to: 158
main.js:18825 Expanding Particle Pool to: 159
main.js:18825 Expanding Particle Pool to: 160
main.js:13087 Uncaught trying to place Maggot tileIndex is occupied by: Maggot
« Last Edit: March 03, 2017, 03:48:16 PM by KhaoTom »

Justin_Wang123

  • Acolyte
  • *
  • Posts: 15
    • View Profile
Re: Rogue Fable II (Browser Based Rogue-Like)
« Reply #2 on: March 03, 2017, 05:42:35 PM »
Are you using firefox by any chance?

This bug is driving me crazy, I can't seem to replicate it on either my desktop or laptop either with chrome or firefox. I have 4 friends who never get the bug and they've won the game several times each but then one friend (who uses firefox) seems to get this crash constantly. So I'm trying to narrow down whats going on here. The fact that its happening on upstairs is helpful at least.

Thanks for playing!

KhaoTom

  • 7DRL Reviewer
  • Priest
  • *
  • Posts: 56
    • View Profile
    • My Projects
Re: Rogue Fable II (Browser Based Rogue-Like)
« Reply #3 on: March 03, 2017, 05:48:58 PM »
I'm on Chrome, Windows 10 64 bit. I also found that if I reload the save after the crash, I'll be up the stairs from where i crashed. Then if I use the down stairs it crashes again. When I get home tonight I'll see if I can repro and maybe send you the save file, if that's possible.

Justin_Wang123

  • Acolyte
  • *
  • Posts: 15
    • View Profile
Re: Rogue Fable II (Browser Based Rogue-Like)
« Reply #4 on: March 04, 2017, 12:42:46 AM »
Thanks for the info, I may have fixed it, so let me know if your still experiencing crashes with the new version.

KhaoTom

  • 7DRL Reviewer
  • Priest
  • *
  • Posts: 56
    • View Profile
    • My Projects
Re: Rogue Fable II (Browser Based Rogue-Like)
« Reply #5 on: March 04, 2017, 06:21:21 AM »
I played for two hours without crashes. Best run was an ice mage, but those ballista hit really hard and there was one at the bottom of the stairs.

Justin_Wang123

  • Acolyte
  • *
  • Posts: 15
    • View Profile
Re: Rogue Fable II (Browser Based Rogue-Like)
« Reply #6 on: March 07, 2017, 05:16:59 PM »
Great, thanks for your help! Looks like its fixed up (for now). One good trick for those ballistas is to rush them and then dodge around them as they take a turn trying to face you. You can actually dance around and kill a ballista without taking any damage. Of course this assumes you have some way of quickly closing distance. Thanks again for giving it a run through.