The-Frozen-North / tfn-module

A persistent world set around Neverwinter and the Wailing Death, with content from HotU and NWN2
https://github.com/b5635/the-frozen-north/wiki
GNU Affero General Public License v3.0
31 stars 24 forks source link

Treasure Map Changes #774

Open Logg-y opened 1 year ago

Logg-y commented 1 year ago

1) Build a distance map ("how many areas do I have to enter to get from X to Y", figure out a way to make lookups not suck completely (I think this turns into a build-sqlite-at-runtime or seeding problem or memory usage of recording distance between every area and every other area increases exponentially as you add more areas). Still need to think about the best way to record this, doing it as a seeding pass may make more sense as I think not recording it might get a bit slow 2) Make map difficulties (eg easy: current 6, medium: current ~10, hard: current ~13). There is no thematic reason why the people drawing maps obtained in higher level areas suddenly decide to start including less of their surroundings (and the inverse). These can be retroactively assigned to current maps based on their already assigned ACRs, and there's no reason why the solution spots have to move to do this either 3) Find a way to scale rewards appropriately across the levels 4) Make it so that maps are quite likely to be near where they generated, but not always (eg 10-15% to be full random like it is now, maybe someone else got stuck on the map and carried it around in the hopes they found it and never did). For this I'd say start with a distance of 3 maps, and then something like 70% chance to increase the distance by 1, continue until you stop increasing. If not enough eligible areas were found then keep increasing or just go full random 5) Maybe bring back current 15 maps as a fourth difficulty that doesn't drop and is only obtained occasionally from completing hard maps (or from eg ID if you wanted to). I guess I quite like having the super awful maps somewhere in the game 6) Build a serverside map of something so the puzzle id isn't stored on every map, to make cheating at them a bit harder than it is right now

Logg-y commented 1 year ago

Having some reservations about this now. Or maybe just about their value in general...

Ideally they'd be worth completing vs throwing in the trash, and certainly Andriel is not worth it at the moment, even if you're me and you have 5 max level characters buying regularly.

Once you have a decently organised map library you can probably solve one every ~3-4 minutes or so, depending on area. Notably needing kill all the enemies attacking you once you reach the dig spot is a big slowing point. Logging into Andriel to buy them, then transferring them all to one character, and then sorting them into boxes also takes a considerable amount of time. Right now my guess is that I'd be better off putting the time into farming the Isle of the Maker over and over again, even without the henchman dismiss cheese that shifts the loot from 50% to probably >80%.

Making the solution closeish to where they drop would help the random drop ones (you'd probably be more likely to make a detour...?), but Andriel should still probably full random every time Numbers (how much is a treasure map's loot worth?) would help, but also raw gold value isn't everything (because t5 items aren't something you'd want to sell at list price) and it all gets confusing really quickly

If I was going to split maps into having both a ACR (sets the ACR for loot generation and possible area list) and easy/medium/hard/master (zoom level only) so people get to see more zoom levels rather than tying it all to map ACR, exactly how to scale the loot becomes a massive problem!

At the moment people who are less familiar with stuff will find things hard. At the top end of the range, the current level 15 maps are really hard and don't reward any better than the easier level 12 zooming.

In practice, it's going to be really hard to make them all feel worth it because everyone's at different levels of area knowledge. Making the easiest maps that someone more experienced recognises immediately be worth a 3-4 minute detour is doable, but for someone who doesn't recognise the area it might take them longer, and that will start to make it feel worse for them.

Right now: 2d2 rolls, first is guaranteed to be boss quality and then 85% chance to downgrade to semiboss each roll afterwards. (Practically: 1.16 boss rolls, 1.83 semiboss rolls). Also hopefully goes without saying but this is loot that goes entirely into the looter's pocket (vs real boss kills being shared amongst party), and items without itemproperties turned straight into their pure gold value (which could also get adjusted).

Trying some numbers:

Easy: 95% downgrade: 1.05 boss, 1.94 semiboss Medium: 85% downgrade: 1.16 boss, 1.83 semiboss [same as current] Hard: 70% downgrade: 1.37 boss, 1.62 semiboss Master: 50% downgrade: 1.71 boss, 1.28 semiboss

This is a slight buff to "hard" maps (which is where most of my current Andriel maps would fall in difficulty) and a considerable buff to Master (which can be really very challenging to solve and currently give nothing better than the less zoomed in equivalents).

Existing maps can be funneled into the rarity tiers by their ACR, as that currently governs their zoom level (eg all preexisting level 15 maps become Master, all level 12-14 become Hard, all 9-11 maps become Medium, all <9 maps become Easy). I would also change inventory sprites by tier (I think there are enough map-like sprites to have a bit of variety).

For most sources of maps (not from Andriel, and not from treasure map rewards) I was thinking something like 31% easy, 31% medium, 31% hard, 7% master. For maps from treasure map rewards, I would force the map tier to be one higher than before (Easy map rewards would give medium maps, etc).

For Andriel, I think the thing to do is bias heavily towards the harder side. People who are more familiar with the world are probably more likely to want to have more maps to do, and this would reduce the amount of immediately recognisable maps made. Maybe something like 80% hard, then 5% easy/medium and 10% master. His maps' ACR range can also be reduced (probably to PC's level ±1 or something) as they don't have to reach 15 to get max difficulty any more. This makes Andriel into the goto for "I like maps, I'm probably good at or getting better at maps, give me more!" and considerably less useful for other people. Making his maps fully random across the whole world vs biased towards nearby areas also plays into that a bit.

Side note: treasure chests should cutscene ghost. While it's not very fitting, they can really cause pathfinding issues, especially if you have one dig produce more than one at once.

b5635 commented 1 year ago

This makes Andriel into the goto for "I like maps, I'm probably good at or getting better at maps, give me more!" and considerably less useful for other people.

That's how I imagine it too, agreed with that.

  1. Yes, that would be a great change. If we have that and 1 which is a requirement for this, I think this would be enough of a hint to the user for them to finish the map

  2. We can add it for very hard bosses or very high CR areas. There's not a lot of them right now, but it could the UD bosses and the mist dragon.

As an aside, is it possible to fill in areas where there is water to be completely blue? Same for places with walls (full gray instead of an outline) or places that are in an interior. That would probably make it easier for people.

To me what's not really apparent is that some places are intended to be interiors. The below are two Discord examples of the Neverwinter Sewers and Academy floor.

image This one I thought it was in a snowy place because the outline was white

image This one should have been obvious, but I was thinking it was from some sort of mountain map

Logg-y commented 1 year ago

Fair point on the interiors. I only made a few "non dungeon building" areas possible, and aimed to make them historic buildings. Offhand, this includes the Neverwinter Hall of Justice, Castle Never, the Academy, the Cloaktower (it's just a circle though lol), and Lith's Temple.

Snow could be made a little whiter, it is a bit whiter than stone but could be made a bit clearer.

Also as the zoom level stuff means redoing all the map data anyway this wouldn't be much trouble.

Logg-y commented 1 year ago

The 50% ACR boost on maps also really needs to go, because that's not the right way to shift towards the rarer end of loot with the new exponent stuff. This might be felt a bit in the loot, but mostly in the lower level maps (of which I'm not doing a lot).

Maybe I'll lower the downgrade rates a little to compensate.

Logg-y commented 1 year ago

Just realised I missed a few comments here.,.

As an aside, is it possible to fill in areas where there is water to be completely blue? Same for places with walls (full gray instead of an outline) or places that are in an interior. That would probably make it easier for people.

This was originally the plan, but the engine NUI bug that makes filling fall flat on its face stopped that. I posted some ugly ones very early on, but it starts causing fill to be drawn between the first point in the shape and every single point, which makes it go from a nice map to a horrible disfigured mess. And to my knoweldge, that's still in the game now.

Even then it would be hit and miss because I'd have to sorted the drawing order of all the shapes on the map correctly. I never got far enough to actually test that bit because the bug made them unworkably ugly, but my old code there still tries to do it anyway. I wouldn't be surprised that if the fill option on drawlists got fixed, turning it on turned up new issues, even though I think it would have made the maps ultimately look a lot better than they do now.