loathers / TourGuide

Relay script for KoLmafia, for the web game Kingdom of Loathing. Gives advice on how to play.
The Unlicense
14 stars 17 forks source link

updated 8-bit realm tileset #128

Closed docrostov closed 1 year ago

docrostov commented 1 year ago

this is not done yet but it's done enough to at least start sharing it as i finish the design!

here are a few current sample states: image image

the way i've structured this tile is by moving 8-bit from "sets" to "quests"; i think the new 8-bit realm is complicated enough to 100% warrant inclusion as a quest, and i thought it would be good to make a "new" quest tile with tons of comments so that it is hopefully easier for me and current non-ezan non-fred devs to understand/unpack everything going on with quest tiles and all of ezan's little structural quirks around them.

right now, the starter tile is pretty simple. currently it operates as follows:

things i am on the fence about and would love thoughts on:

one other very small note -- i've deleted most of the now-useless 8bit stuff, but there's a resource generator function that might be good for low-shiny folks as it includes red pixel potions (which are still good for low-shiny shadow!) and there's a nag tile re: grabbing white pixels that actually still is useful in one specific path (kingdom of exploathing). i'm on the fence on whether i make a sets/8bit-realm.ash file and just plop that stuff in there, or whether i keep it in quests/8bit-realm.ash to keep the stuff in one file, even though quests very rarely generate ResourceGeneration blocks. thoughts?

docrostov commented 1 year ago

oh here's one shitty thing -- this PR is using turnsSpent for turns-left-of-bonus. unfortunately, turnsSpent naturally advances on freeruns. so if the bonus doesn't advance on freeruns, that calc will be off in an annoying way for turns remaining if a user accidentally freeruns in a zone. and i don't think it does. but i really don't think there's any way for us to fix this without a mafia pref specifically for 8bit zone killcount.

ajcoppa commented 1 year ago

Tile and code look great, it'll be awesome to have this in soon.

I saw some of the comments in Discord about some things to do to slim down some of the vertical space and would echo those (combine current score with the top line, combine how many turns left in that zone into the BONUS ZONE line).

Re: your other questions:

"optional tasks" tile that gives advice on maximizing the active bonus in the current 8bit zone

I personally tend to just use the mafia maximizer. Are there any subtle things we'd be able to cover that wouldn't get noticed there?

If the user is not capping the bonus in their zone, add a subsection for the zone they'd be generating the most points in

Hmm. This might be confusing for people who don't realize that they may want to wait and tackle it later when they could cap the bonus in their zone. But if we use the right language it's probably fine.

out-of-run and after getting digital key, still generate this guy as an "optional" task so long as the user has < 30000 points; this way, users in aftercore wanting to get a pixel rock would be able to do so.

🤷 Up to you, I don't feel like that adds much value but that's my bias toward standard. It certainly won't hurt anything to add!

IMO any of those 3 would be okay to add but I would lean toward moving forward with this and adding them as enhancements later rather than holding up getting in the main tile for them.

there's a resource generator function that might be good for low-shiny folks as it includes red pixel potions (which are still good for low-shiny shadow!)

Yeah I used these for a long time, especially since funk-slinging isn't something you tend to perm super early. It'd be good to keep this. I don't have any strong opinions on exactly how we should organize it, up to your judgement.

docrostov commented 1 year ago

re: your one main question...

I personally tend to just use the mafia maximizer. Are there any subtle things we'd be able to cover that wouldn't get noticed there?

a few. things like generating a vintner wine come to mind; no way maximizer tells you that. other things like using a mayday package for +init, crafting a lynyrd shirt, etc could come into play. but i generally agree that it's more a nice to have than anything strictly needed, and it would add a lot of cruft to this (as well as be a somewhat annoying thing to have to update all the time). totally fine ignoring that idea.

otherwise, i think the "persist the tile in aftercore for optional tasks" thing is fun but would require too much work on the tile for me to want to do it right now. certainly something i might do later but not a priority right now.

i'll refactor the resource stuff and then plop it in as one of our few quest-generating-resource-tiles lol