Bug - Fixed Modifier text function zone() isn't always accurate

zarqon

Well-known member
> ash my_location()

Returned: Anemone Mine
nocombats => false
zone => The Sea
parent => The Sea
parentdesc => The Sea
environment => underwater
bounty => none
combat_queue => Killer Clownfish; Killer Clownfish; Anemone Combatant; Killer Clownfish; Anemone Combatant
noncombat_queue =>

Looks like I'm in the Sea. Wait, what was that zone again?

> ash my_location().zone

Returned: The Sea

Right, The Sea.

So all the formulas that are checking "zone(sea)" ought to work then, right?

> ash modifier_eval("zone(sea)")

Returned: 0.0

> ash modifier_eval("zone(the sea)")

Returned: 0.0

> ash modifier_eval("zone(c)")

Returned: 0.0

> ash modifier_eval("zone(hmmm)")

Returned: 0.0

Nope. It seems to work in certain locations but not in others. I can investigate which locations more in-depth if needed. Possibly this has to do with the changing location names, or possibly it's just something no one noticed until now.

More information: I noticed this while playing in the relay browser and occasionally whistling for dolphins. Possibly the dolphins threw it off?

More more information: Yes. It is dolphins. When I change locations mafia realizes I'm in the Sea until I whistle for a dolphin. After that, if I continue to adventure in the same location, zone(sea) returns 0.

This led me to question something else:

> ash set_location($location[anemone mine])

Returned: void

> ash modifier_eval("zone(sea)")

Returned: 0.0

It would be nice if that worked.
 
Last edited:

Winterbay

Active member
I think this's been reported before, basically using a dolphin whistle sets your location to $location[none] and then it fails to set it back afterwards for some reason.
 

zarqon

Well-known member
But my_location() is set correctly. Only the zone() modifier text function doesn't work after dolphining -- which is problematic for all the Net/Blade/Ball skills I just added to batfactors.
 

lostcalpolydude

Developer
Staff member
my_location() just returns lastAdventure (as a location instead of a string), which doesn't actually match the value somewhere... my first thought was the selected value in AdventureSelectPanel.locationSelect, but I don't think that's right. set_location() does nothing when lastAdventure equals what you're trying to set it to. There is another thread around talking about the mess of those values being tied to the GUI in an unintuitive way.
 

Fluxxdog

Active member
Let's find out. One! Two-hoo!
Code:
> ash set_location($location[Anemone Mine])

Returned: void

> ash my_location().zone

Returned: The Sea

> ash modifier_eval("zone(sea)")

Returned: 1.0

> ash modifier_eval("zone(the sea)")

Returned: 1.0

> ash modifier_eval("zone(c)")

Returned: 0.0

> ash modifier_eval("zone(hmmm)")

Returned: 0.0

> ash modifier_eval("zone(The Sea)")

Returned: 1.0
Thrrree.
 

Bale

Minion
Did you check that after whistling for a dolphin encounter? It was the dolphin that threw it off in zarqon's very entertaining, but poorly described bug report. At least I think it was dolphins... let's see...

More more information: Yes. It is dolphins. When I change locations mafia realizes I'm in the Sea until I whistle for a dolphin. After that, if I continue to adventure in the same location, zone(sea) returns 0.

Yup! Dolphins!
 

Veracity

Developer
Staff member
> ash modifier_eval("zone(sea)")

Returned: 1.0

[133671] Dolphin Whistle
Encounter: rotten dolphin thief
Round 0: Tebryn wins initiative!

> ash modifier_eval("zone(sea)")

Returned: 0.0
Round 1: Tebryn attacks!
Round 2: rotten dolphin thief takes 944 damage.
Round 2: Tebryn wins the fight!
After Battle: Gronald shakes her dorsal fin, and her pectoral fins, to music only she can hear. If you were a fish, it'd probably be a little titillating, so thank goodness you're not a fish.
You acquire an item: sea cowbell
You gain 24 Strongness
You gain 53 Wizardliness
You gain 29 Roguishness

> ash modifier_eval("zone(sea)")

Returned: 1.0
This is fixed.

I did notice a bug, though:

[133670] The Coral Corral
Encounter: sea cow
Round 0: Tebryn wins initiative!
Round 1: Tebryn attacks!
Round 2: sea cow takes 657 damage.
Round 2: Tebryn attacks!
Round 3: sea cow takes 610 damage.
Round 3: Tebryn wins the fight!
You gain 189 Meat, but the rest sinks into the murky depths.
After Battle: Gronald shakes her dorsal fin, and her pectoral fins, to music only she can hear. If you were a fish, it'd probably be a little titillating, so thank goodness you're not a fish.
You acquire an item: sea leather
You acquire an item: sea cowbell
You gain 37 Muscleboundness
You gain 86 Enchantedness
You gain 35 Smarm

That sea cowbell was stolen by a dolphin. I must have broken detecting dolphin thefts. Will fix.
 

Veracity

Developer
Staff member
This made me laugh.

[133699] The Coral Corral
Encounter: Possessed Can of Creepy Pasta
Round 0: Tebryn wins initiative!
Round 1: Tebryn attacks!
Round 2: possessed can of creepy pasta takes 1 damage.
Round 2: Tebryn casts SAUCEGEYSER!
Round 3: possessed can of creepy pasta takes 1432 damage.
You gain 28 hit points
You gain 9 Mana Points
Round 3: Tebryn wins the fight!
After Battle: Gronald wiggles her pectoral fins seductively. Good lord, that sounds like the opening line of the worst Free Willy fanfic ever.
A dolphin stole: tangled mass of creepy pasta
You acquire an item: sand dollar
You gain 27 Strongness
You gain 75 Wizardliness
You gain 30 Roguishness
 
Top