Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

After last ubdate, @eval($::questList->{62816}->{missions}->{1063}->{count}) failed #605

Closed
Glikadin opened this issue Jun 2, 2017 · 12 comments

Comments

@Glikadin
Copy link

@Glikadin Glikadin commented Jun 2, 2017

[macro] QuestRun error: error in 25: @eval($::questList->{62816}->{missions}->{1063}->{count}) failed
Help me, pls.

@Glikadin Glikadin changed the title After lust ubdate, @eval($::questList->{62816}->{missions}->{1063}->{count}) failed After last ubdate, @eval($::questList->{62816}->{missions}->{1063}->{count}) failed Jun 2, 2017
@Glikadin

This comment has been minimized.

Copy link
Author

@Glikadin Glikadin commented Jun 2, 2017

if (@eval(($::questList->{62816}->{active})?1:0) == 0) goto StartOneQuest
$Lunatic = @eval($::questList->{62816}->{missions}->{1063}->{count})
if ($Lunatic == 150) goto FinishOneQuest

@Henrybk

This comment has been minimized.

Copy link
Contributor

@Henrybk Henrybk commented Jun 2, 2017

server?

@Glikadin

This comment has been minimized.

Copy link
Author

@Glikadin Glikadin commented Jun 2, 2017

iRO
I cant take "count" . Something has changed in src/Network/Receive.pm

@Mingro

This comment has been minimized.

Copy link

@Mingro Mingro commented Jun 3, 2017

Yea. i'm noob about scripting but when i delete "eval" line it can detect the macro.
But the macro is not complete and showing error in console such " munch munch ignore line".

@Henrybk

This comment has been minimized.

Copy link
Contributor

@Henrybk Henrybk commented Jun 4, 2017

hmn, I have taken a look at the updates made by @allanon and I couldn't find anything that would make the quest system not work properly. You could try to use the plugin killcountfix (https://github.com/OpenKore/openkore/tree/master/plugins/killcountFix), it may not be a solution but it can probably fix the problem for now.

@premier91

This comment has been minimized.

Copy link

@premier91 premier91 commented Jun 4, 2017

Hello, yes I already checked they should be no prob, but I think the MobID is the problem.
Originally MobID is not that quite long according to RMS and in monster.txt.
When i change the mobID as below the macro work properly.
image

Thx again @Henrybk for ur time.

@allanon

This comment has been minimized.

Copy link
Member

@allanon allanon commented Jun 5, 2017

TL;DR Using the mob id to look up the current quest kill count doesn't work anymore. See the end of this comment for replacement code.

The problem is the episode 16.1 achievement system. The new quest packets no longer provide the mob id for every quest-related packet. Instead, they provide a quest condition id, which is only related to the mob id for the quest_add and quest_all_list packets. Meaning, the mob id is not provided for quest_update packets. To support quest_update packets, I changed the key to the condition ID, which breaks the code you're trying to run.

Note that it's not impossible to keep it the way it was (using the mobID) but I'm assuming that there's a reason for the abstraction, and that not all quests with missions will be killcount missions in the future. If/when that happens, we won't be able to use mobID anymore.

The mob ID is still part of the quest data structure, but now you will have to search for it. Here's some equivalent code which should still work:

((grep { $::_->{mobID} == 1063 } values %{$::questList->{62816}->{missions} || {}})[0] || {})->{count}
@Forkind

This comment has been minimized.

Copy link

@Forkind Forkind commented Jun 5, 2017

Note that it's not impossible to keep it the way it was (using the mobID) but I'm assuming that there's a reason for the abstraction, and that not all quests with missions will be killcount missions in the future. If/when that happens, we won't be able to use mobID anymore.

For info after the achievement update some quests use the mob race and level as target.

@premier91

This comment has been minimized.

Copy link

@premier91 premier91 commented Jun 6, 2017

thx @allanon for clarification.

@koynro

This comment has been minimized.

Copy link
Contributor

@koynro koynro commented Jul 20, 2017

Trying to use @allanon suggestion but the output I am getting isn't just a raw count. I am attempting to use it in the novice training grounds on the first quest.

When I do this

    $mon_count =  @eval(((grep { $::_->{mobID} == 1002 } values %{$::questList->{7122}->{missions} || {}})[0] || {})->{count})

It returns
[macro] check_novice_quest_1.call error: error in 0: unrecognized assignment

When I attempt to print out the eval with

    log  @eval(((grep { $::_->{mobID} == 1002 } values %{$::questList->{7122}->{missions} || {}})[0] || {})->{count})

The output is
11|1|111|1|111

Any suggestions for making this functional? Working on a macro to get through the entire training grounds (unless of course this is already something someone has done in iRO (Re:Start) but I haven't been able to find any after a lot of digging)

@rptaheri

This comment has been minimized.

Copy link

@rptaheri rptaheri commented Aug 1, 2017

Hey guys, just curious if there's any progress on this one? Without the evaluation method, there's no way to check quest progress. I'm not seeing any console output for achievement update, so it leads me to believe there's a packet that isn't being parsed/analyzed? I'm willing to test/modify code if someone can point me in the direction on what would need to be modified to fix this for iRO.

I'm seeing no indication that the killcountfix is even working -- I pasted the .txt file into the tables folder and I still don't see anything in the console after monsters die.

@Henrybk Henrybk closed this Aug 14, 2017
@lututui

This comment has been minimized.

Copy link
Member

@lututui lututui commented Aug 14, 2017

See #914

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
9 participants
You can’t perform that action at this time.