SphereCommunity
Some issues (horse poop, vendor distance, makeitem) - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: General Help (/Forum-General-Help)
+--- Thread: Some issues (horse poop, vendor distance, makeitem) (/Thread-Some-issues-horse-poop-vendor-distance-makeitem)



Some issues (horse poop, vendor distance, makeitem) - Crusader - 04-13-2012 02:38 AM

Hi all, i already posted this questions in the old forum, but without luck...
so i'm gonna try again here, maybe i'll be more lucky.

I'm using sphere 56b last release of 2009, but i saw there are new nightly with other fix (which is good Big Grin)

the first question is about horse poop: can i adjust the rate of pooping of the animals (they use to poop A LOT) instead of re-doing the whole event?

second: i have an issue with vendors; when i try to buy or sell something, after clicking "ok" on the 'contract' for selling/buying i MUST stay within 1-2 tiles from the vendor and without objs between us or i have the message "You can't reach the vendor". Ofc with the GM ON i don't have such problems...but is a pain in the ass for the players, how can i avoid this?

third and last: This is about the crafting... i'd like to use the old crafting menu style but i'm unable to use the old functions...let me explain better..
In Sphere51a if an item requires 50.0 tinkering, u can show it in the menu at 40.0 but only at 50.0 u will be able to make without a lot of mistakes. Plus if u wanted to put something very difficult to craft while the highest skill cannot reach values > 100.0 u most likely use to put 105 as test... how can i do something like that in sphere 56b since there is no way (afaik) to show something in the skillmenu some points before the "skillmake" value?

thx everybody in advace for the help Smile


RE: Some issues (horse poop, vendor distance, makeitem) - ShiryuX - 04-13-2012 01:29 PM

1. Is just a RAND(130) after calling @NPCAction
NPCs that can poop: Horses, Brown Bull, Pig, Llama
Sounds used: 0xe3, 0x23f
Item IDs: 3899, 3900


RE: Some issues (horse poop, vendor distance, makeitem) - Crusader - 04-13-2012 07:46 PM

ok, so i have to redo it, but thx to ur infos i'll do it in less then 5 mins!

what about the other 2 issues? Smile


RE: Some issues (horse poop, vendor distance, makeitem) - darksun84 - 04-13-2012 11:14 PM

For the third part , if i understand well , instead of using makeitem you can use skillusequick with arguments : crafting skill and the skillreq of the item you want to craft . Without makeitem all the objects should be visibile , i even think that the TEST and TESTIF function can be used !


RE: Some issues (horse poop, vendor distance, makeitem) - Crusader - 04-14-2012 12:51 AM

well..i actually tried also using test and testif...but it didn't work, it seems that unless i delete the "skillmake" line on the item, this value is the only one that make the item to be shown.

I didn't tried using skillusequick coz i thought that maybe there is a faster way...plus i'm not sure that skillusequick would work fine...

let me try to explain better....

in 51a i can do something like this:
on the skillmenu script i put:
ONOPTION=01c06
RESOURCE=48 Hides, 10 DRAGON_BLOOD_ITEM, 10 Worm_hart
TEST TAILORING=105.0
TEST ALCHEMY=75.0
MAKEITEM=6280

and then when i have 65 alchemy and 95 tailoring the item is shown on the menu and i can craft it...even if it's very difficult.


RE: Some issues (horse poop, vendor distance, makeitem) - Crusader - 01-10-2013 05:44 PM

Today i returned here after a long while of time spent in other stuff....
i have returned to my scripts and re-start my server.
Badly i have the same issues of the past april, so sorry for the old-bump-necroposting, but maybe there are news about Smile

Not for the poop, but for the vendor distance and for skilltest issues... Smile
Any news about?


RE: Some issues (horse poop, vendor distance, makeitem) - Mordaunt - 01-11-2013 01:18 PM

Spoken to Ben about the skill menu deal.

It does work as listed here: http://wiki.sphere.torfo.org/index.php/SKILLMENU

and to quote Ben "if any of the MAKEITEM, TEST, or TESTIF fails, the items is not shown"

However, posting your script would help in troubleshooting it.


RE: Some issues (horse poop, vendor distance, makeitem) - Crusader - 01-11-2013 06:01 PM

i hardly doubt so, but i'm gonna test it asap.


RE: Some issues (horse poop, vendor distance, makeitem) - Crusader - 01-12-2013 05:33 PM

Ok i found how to do it! Any improvements will be appreciated!

Code:
[FUNCTION NEW_CRAFT]
//argn1 id_item
//argn2 skilltest
// Changed SKILLMAKE to allow getting an individual resource in the list. SKILLMAKE.1 gets the first,
// SKILLMAKE.1.VAL gets the value and SKILLMAKE.1.KEY gets the associated resource key.
LOCAL.IDITEM = <ARGV[0]>
LOCAL.DIFFICULTY = <FVAL <ARGV[1]>>+10.0
LOCAL.SKILLREQVAL = <FVAL <SERV.ITEMDEF.<LOCAL.IDITEM>.SKILLMAKE.1.VAL> + <LOCAL.DIFFICULTY>>
LOCAL.MYSKILL = <SRC.<STREAT <SERV.ITEMDEF.<LOCAL.IDITEM>.SKILLMAKE.1.NAME>>>
LOCAL.CHANCETOSUCCESS = <FVAL (<LOCAL.SKILLREQVAL> - <LOCAL.MYSKILL>)*9>
LOCAL.CHANCETOSUCCESS = <FVAL (100.0 - <FVAL <LOCAL.CHANCETOSUCCESS>>)>
IF (0<ARGV[2]>)
LOCAL.DIFFICULTY2 = <FVAL <ARGV[2]>>+10.0
LOCAL.SKILLREQVAL2 = <FVAL <SERV.ITEMDEF.<LOCAL.IDITEM>.SKILLMAKE.2.VAL> + <LOCAL.DIFFICULTY2>>
LOCAL.MYSKILL2 = <SRC.<STREAT <SERV.ITEMDEF.<LOCAL.IDITEM>.SKILLMAKE.2.NAME>>>
LOCAL.CHANCETOSUCCESS2 = <FVAL (<LOCAL.SKILLREQVAL2> - <LOCAL.MYSKILL2>)*9>
LOCAL.CHANCETOSUCCESS2 = <FVAL (100.0 - <FVAL <LOCAL.CHANCETOSUCCESS2>>)>
ENDIF
SRC.CTAG.CRAFTCHANCE = <LOCAL.CHANCETOSUCCESS>
SRC.CTAG.CRAFTCHANCE2 = <LOCAL.CHANCETOSUCCESS2>
//SERV.LOG <SERV.ITEMDEF.<LOCAL.IDITEM>.SKILLMAKE.1.VAL>, <SERV.ITEMDEF.<LOCAL.IDITEM>.SKILLMAKE.1>  
//SERV.LOG My Skill: <LOCAL.MYSKILL> Item Skillmake: <LOCAL.SKILLREQVAL> Chance to Success: <LOCAL.CHANCETOSUCCESS>
MAKEITEM <LOCAL.IDITEM>
RETURN 1

under crafting skills u put actdiff=0, example:

Code:
[SKILL 7]
DEFNAME=SKILL_Blacksmith
KEY=Blacksmithing
TITLE=Blacksmith
PROMPT_MSG=
DELAY=1.0
STAT_STR=95
STAT_INT=15
STAT_DEX=25
BONUS_STR=75
BONUS_DEX=20
BONUS_INT=5
BONUS_STATS=10
ADV_RATE=2.5,50.0,200.0
VALUES=1,20,100

ON=@Start
actdiff = 0
return 0

then, under char events u put:

Code:
ON=@SKILLMAKEITEM
//ACT     The item that was crafted.
//ARGO     The item that the item was crafted from.
//I     The character who crafted the item.
//SRC     The character who crafted the item.
//ARGN1     The amount of skill used to craft the item.
//ARGN2     The quality of the crafted item.
LOCAL.RANDCRAFTDICE = <FVAL (RAND(100.0))>
Serv.log <LOCAL.RANDCRAFTDICE>
IF !(<SRC.CTAG0.CRAFTCHANCE2>)
    IF (<LOCAL.RANDCRAFTDICE> <= <SRC.CTAG0.CRAFTCHANCE>) && (<EVAL RAND(100)> != 1)
        ARGN2 = <SRC.CTAG0.CRAFTCHANCE>
        RETURN
    ELSE
        RETURN 1
    ENDIF
ELSE
    LOCAL.RANDCRAFTDICE2 = <FVAL (RAND(100.0))>
    IF (<LOCAL.RANDCRAFTDICE> <= <SRC.CTAG0.CRAFTCHANCE>) && (<LOCAL.RANDCRAFTDICE2> <= <SRC.CTAG0.CRAFTCHANCE2>) && (<EVAL RAND(100)> != 1)
        ARGN2 = <SRC.CTAG0.CRAFTCHANCE>
        RETURN
    ELSE
        RETURN 1
    ENDIF
ENDIF
SRC.CTAG0.CRAFTCHANCE =
SRC.CTAG0.CRAFTCHANCE2 =

and finally u have to replace ur crafting menus like this:

Code:
[SKILLMENU sm_shields]
Shields

ON=i_shield_buckler <name> (<resmake>)
NEW_CRAFT=i_shield_buckler

ON=i_shield_round_bronze <name> (<resmake>)
NEW_CRAFT=i_shield_round_bronze

ON=i_shield_round_metal <name> (<resmake>)
NEW_CRAFT=i_shield_round_metal

[...]

So that's it! comment pls!



The stuff below was my old edited post asking for infos when i was making all my tries...it's quite useless now, but still some questions remains opened.

Quote:After a couple of tries:

if i put

Code:
ON=i_shield_buckler <name> (<resmake>)
TEST=BLACKSMITHING 50.0
MAKEITEM=i_shield_buckler


and i put skillmake of the item: blacksmith 60.0

The item is NOT shown on the menu.

______________


If i comment the skillmake line then the item is visible at 'test' value.

______________

What i want to do is:

i have a skillmake which is the 'difficulty' to make the item.
but all the items are showed 10.0 points BEFORE of the skillmake req.
The difficulty to make the item is very hard when a char tries to make the item and there are this 10.0 points of 'gap'.

So, example is:
my blacksmith has 50.0 blacksmith
he can see in his menu the buckler which has skillmake 60.0
he tries at least 10 times before craft the buckler with success.


HOW could i do this?


edit: in the meantime i'm scripting a version of the script that do what i want, i found this:
22-11-2003, Kell
- Attempted to fix the bug where setting ACT in a @Hit trigger stops
the swing, by restoring it after the trigger.
- Added SKIPDIFFICULTY (0 by default, or 1) to SKILL sections. Setting it to 1
skips the hardcoded difficulty check and allows one to do their own skill difficulty
checks in @Success, and "return 1" in there for a failure.

but putting skipdifficulty under 'skill' section like this:
Code:
[SKILL 7]
DEFNAME=SKILL_Blacksmith
KEY=Blacksmithing
TITLE=Blacksmith
PROMPT_MSG=
DELAY=1.0
STAT_STR=95
STAT_INT=15
STAT_DEX=25
BONUS_STR=75
BONUS_DEX=20
BONUS_INT=5
BONUS_STATS=10
ADV_RATE=2.5,50.0,200.0
VALUES=1,20,100
SKIPDIFFICULTY=1

doesn't work, any clues?



RE: Some issues (horse poop, vendor distance, makeitem) - Ben - 01-13-2013 03:58 AM

Ok, just need to clarify a few things...
SKIPDIFFICULTY has been removed cuz it's nowhere in the source. It was probably removed cus the same(or better) things can be achived using triggers and actdiff.

And regarding this peice of code:
ON=i_shield_buckler <name> (<resmake>)
TEST=BLACKSMITHING 50.0
MAKEITEM=i_shield_buckler
Like I told Mordaunt, it is normal behaviour that it would not show if the MAKEITEM fails it's tests, even though the TEST passed.