|
You last visited: Today at 20:42
Advertisement
Crafting - Problem/Anregung
Discussion on Crafting - Problem/Anregung within the Diablo 2 forum part of the Other Online Games category.
10/24/2010, 13:50
|
#1
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Crafting - Problem/Anregung
Ich habe folgendes Problem, hoffentlich kann mir jmd. helfen:
Ich crafte mit meinem Bot caster amus/rings, blood rings und blood gloves
Allerdings stört es mich, dass der Bot diese 4 sachen nicht parallel crafted, sondern immer hintereinander
Er sucht sich zwar die Grunditems (Ring, Amu, Gloves, ...) und die Runen parallel, aber Pgems und Juwelen nimmt er immer erst dann wieder neu auf, wenn ein Craftrezept fertiggestellt worden ist --> so werden Juwelen und Gems verschwendet
Gibt es irgendeine Möglichkeit, einzustellen, dass er die verschieden Craftrezepte gleichzeitig abarbeitet? Also an insgesamt 4 Rezepten gleichzeitig arbeitet sozusagen ...
edit ... achja, ich verwende sternenloopers version
|
|
|
10/24/2010, 14:08
|
#2
|
elite*gold: 0
Join Date: May 2009
Posts: 305
Received Thanks: 19
|
stell einfach die sachen in der pickit ein, dass er sie immer auf nehmen soll^^
|
|
|
10/24/2010, 14:16
|
#3
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Quote:
Originally Posted by Copy&Past
stell einfach die sachen in der pickit ein, dass er sie immer auf nehmen soll^^
|
Schlechte Lösung ^^
Damit wird erstens mein Inventar zugemüllt und zweitens verwende ich idevils Automulefunktion --> Der Bot behält alle Items, die nicht in der Pick-It stehen.
Er würde dann beim Mulen alles wieder wegwerfen, also sinnlos.
|
|
|
10/24/2010, 14:28
|
#4
|
elite*gold: 0
Join Date: May 2009
Posts: 305
Received Thanks: 19
|
Lösung: Du schreibst ne eigene Pickit für die random Jewels und Gems
Lösung2: Du schaust dir den Bot von Medix an oder Stairbuilder und übernimmst die MaxQuantity funktion^^
|
|
|
10/24/2010, 15:01
|
#5
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Das klingt schon besser ;-)
Mit Max Quantity würde ich mal ein Problem lösen
Allerdings klappt das mit der eigenen Pickit nicht, weil Automule ja meine Pickit überprüft --> wenn da alle Jools drinnenstehen, dann droppt er die beim Mulen auch
Und wie kann der Bot dann zwischen Jools zum craften und z.B. 40/15ern unterscheiden?
|
|
|
10/24/2010, 16:12
|
#6
|
elite*gold: 0
Join Date: Jul 2006
Posts: 469
Received Thanks: 235
|
Quote:
Originally Posted by fertoker1
Und wie kann der Bot dann zwischen Jools zum craften und z.B. 40/15ern unterscheiden?
|
Kann er eben nicht... daher klappt das nur für die Gems  AutoMule kann man aber ziemlich leicht anpassen.
|
|
|
10/24/2010, 20:10
|
#7
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Danke mal für die Hilfe euch beiden (hier und per pm)
Kurze Zusammenfassung: Automule lässt sich so einstellen, dass der Bot die Sachen nicht mehr dropt, allerdings ist es nicht möglich, gute von schlechten Jools zu unterscheiden, wenns ums craften geht und ich einfach alle aufhebe.
Also müsste man doch irgendetwas in der NTcubing.ntl verändern, damit das so läuft, wie ich mir das vorstelle
Vielleicht hat ja noch irgendjmd. eine Lösung parat :-)
|
|
|
11/05/2010, 17:03
|
#8
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Ich schieb das mal hoch, vielleicht treibt sich hier ja jmd. herum, der sich mit der NTcubing.ntl auskennt
|
|
|
11/30/2010, 08:52
|
#9
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Und nochmal hoch
Inzwischen weiß ich ja, dass sich die Funktion mit den Juwelen beim Craften in der NTCubing.ntl in diesem Teil befindet (else if(_classid == 643):
Code:
else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_CRAFT_SAFETY_WEAPON)
{
_index = NTConfig_CubingItem[i][0] - NTCU_CRAFT_HITPOWER_HELM;
if(_classid == NTConfig_CubingItem[i][1])
{
if(result == 0 && item.quality == 4 && item.GetStat(0x400000) == 0 && _calclevel >= _NTCU_CraftRecipe[_index][0])
{
if(NTConfig_ilvl80)
{
if(item.itemlevel >= 80)
{
if(NTConfig_CubingItem[i][2] == null)
{
NTConfig_CubingItem[i][2] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][2] == _gid)
_result = true;
}
}
else if(NTConfig_ilvl90)
{
if(item.itemlevel >= 90)
{
if(NTConfig_CubingItem[i][2] == null)
{
NTConfig_CubingItem[i][2] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][2] == _gid)
_result = true;
}
}
else
{
if(NTConfig_CubingItem[i][2] == null)
{
NTConfig_CubingItem[i][2] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][2] == _gid)
_result = true;
}
}
}
else if(_classid == 643)
{
if(result == 0 && NTConfig_CubingItem[i][2] != null)
{
if(NTConfig_CubingItem[i][3] == null)
{
NTConfig_CubingItem[i][3] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][3] == _gid)
_result = true;
}
}
else if(_classid == _NTCU_CraftRecipe[_index][1])
{
if(NTConfig_CubingItem[i][2] != null)
{
if(NTConfig_CubingItem[i][4] == null)
{
NTConfig_CubingItem[i][4] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][4] == _gid)
_result = true;
}
}
else if(_classid == _NTCU_CraftRecipe[_index][2])
{
if(NTConfig_CubingItem[i][2] != null)
{
if(NTConfig_CubingItem[i][5] == null)
{
NTConfig_CubingItem[i][5] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][5] == _gid)
_result = true;
}
}
else if(_classid == _NTCU_CraftRecipe[_index][2]-1)
{
if(NTConfig_CubingItem[i][2] != null && NTConfig_CubingItem[i][5] == null)
{
for(n = 0 ; n < 3 ; n++)
{
if(NTConfig_CubingItem[i][6+n] == null)
{
NTConfig_CubingItem[i][6+n] = _gid;
_result = true;
break;
}
else if(NTConfig_CubingItem[i][6+n] == _gid)
{
_result = true;
break;
}
}
}
}
}
allerdings habe ich noch immer keine Ahnung, was ich machen muss, damit er Rezepte gleichzeitig abarbeitet (der Teil mit den Edelsteinen ist ein bisschen oberhalb dieser Funktion zu finden)
Außerdem hätte ich gerne, dass er nur Amulette und Ringe ab einem Itemlevel von 90+ crafted, alles andere aber frei einstellbar ist
Das wäre dann hier einzustellen, aber wieder weiß ich nicht genau, wie:
(Irgendwie müsste man einfach eine Ausnahmebedingung bei der Itemlevel-Einstellung machen)
Code:
else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_CRAFT_SAFETY_WEAPON)
{
_index = NTConfig_CubingItem[i][0] - NTCU_CRAFT_HITPOWER_HELM;
if(_classid == NTConfig_CubingItem[i][1])
{
if(result == 0 && item.quality == 4 && item.GetStat(0x400000) == 0 && _calclevel >= _NTCU_CraftRecipe[_index][0])
{
if(NTConfig_ilvl80)
{
if(item.itemlevel >= 80)
{
if(NTConfig_CubingItem[i][2] == null)
{
NTConfig_CubingItem[i][2] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][2] == _gid)
_result = true;
}
}
else if(NTConfig_ilvl90)
{
if(item.itemlevel >= 90)
{
if(NTConfig_CubingItem[i][2] == null)
{
NTConfig_CubingItem[i][2] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][2] == _gid)
_result = true;
}
Bin zwar wirklich eine Null, was Java, etc. betrifft aber das kann meiner Meinung nach nicht so kompliziert sein, vielleicht hat ja doch noch irgendjmd. Zeit und Lust, sich das einmal kurz anzugucken.
|
|
|
11/30/2010, 08:55
|
#10
|
elite*gold: 20
Join Date: Mar 2009
Posts: 1,356
Received Thanks: 736
|
Quote:
|
Außerdem hätte ich gerne, dass er nur Amulette und Ringe ab einem Itemlevel von 90+ crafted
|
Beim Sternenlooper in der Charconfig einstellbar.
Ein ilvl90+ amu benötigt aber trotzdem en lvl 94 char um gut zu werden.
Stells auf 92 hoch fals du den lvl nochnicht hast.
|
|
|
11/30/2010, 10:31
|
#11
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Quote:
Originally Posted by njomnjomnjom
Beim Sternenlooper in der Charconfig einstellbar.
Ein ilvl90+ amu benötigt aber trotzdem en lvl 94 char um gut zu werden.
Stells auf 92 hoch fals du den lvl nochnicht hast.
|
Genauer lesen, bitte
Wenn man beim Sternenlooper ilvl 90+ einstellt, werden alle Craftgrunditems ab Level 90+ gesammelt -> Das ist bei Amus wichtig, um immer die Chance auf + 2 Skills zu haben, bei Gürteln z.B. aber nicht notwendig, weil alle guten Affixe auch schon bei geringeren Itemlevel auftauchen
Ich hätte also gerne, dass Amus und Ringe ab Level 90 gesammelt (oder gegambelt), alle anderen Sachen aber schon ab z.B Level 70 mitgenommen werden.
Übrigens ist das Charlevel, mit dem man crafted vollkommen egal -> man kann auch mit einem Level 1 Char +2 Amulette bekommmen, wichtig ist nur, dass das Itemlevel 90+ ist, deswegen gambelt man mit 95+ Chars Amulette, um immer entsprechende zu bekommen.
|
|
|
11/30/2010, 11:23
|
#12
|
elite*gold: 0
Join Date: Apr 2010
Posts: 459
Received Thanks: 40
|
sagen wir ma so ich hatte mal eine rechnung vom kollegen gehabt für craften da spielte das char lvl schon eine rolle aber ich weiß nicht mehr die rechnung aber ich frage den kollegen noch einma und dann poste ich die mal hier
edit: da haben wir das
Itemlevel = [Itemlevel_alt/2] + [Charakterlevel/2]
so das ist die rechung also spielt das char lvl eine rolle siehe oben
bsp
so
sagen wir das itemlvl vom amu ist 27 und das char lvl iost 95 dann sieht die rechung so aus
27/2=13,5+95/2=47,5
dann hat das craft item ein ilvl von 61
also char lcl + amu spielt eine rolle wenn man natürlich ein ring craftet muss man das itemlvl natürlich vom ring nehmen und nicht vom amu
|
|
|
11/30/2010, 11:36
|
#13
|
Administrator
elite*gold: 41364
Join Date: Jan 2010
Posts: 22,727
Received Thanks: 12,652
|
Quote:
Originally Posted by fertoker1
Genauer lesen, bitte
Wenn man beim Sternenlooper ilvl 90+ einstellt, werden alle Craftgrunditems ab Level 90+ gesammelt -> Das ist bei Amus wichtig, um immer die Chance auf + 2 Skills zu haben, bei Gürteln z.B. aber nicht notwendig, weil alle guten Affixe auch schon bei geringeren Itemlevel auftauchen
Ich hätte also gerne, dass Amus und Ringe ab Level 90 gesammelt (oder gegambelt), alle anderen Sachen aber schon ab z.B Level 70 mitgenommen werden.
Übrigens ist das Charlevel, mit dem man crafted vollkommen egal -> man kann auch mit einem Level 1 Char +2 Amulette bekommmen, wichtig ist nur, dass das Itemlevel 90+ ist, deswegen gambelt man mit 95+ Chars Amulette, um immer entsprechende zu bekommen.
|
Ohne dir zu nahe treten zu wollen: letzteres ist sachlich falsch. 
Aber das kann leicht passieren, so ganz leicht durchschaubar ist die ganze Thematik nämlich nicht. 
Ich denke du hast da was mit dem cuben von charms verwechselt, bei denen das Itemlevel konstant bleibt.
Alternativ hast du aber auch an Ausnahmefälle gedacht, bei denen ohnehin das Qualitylevel des Items bestimmend und das Itemlevel schlichweg egal ist.
Das Itemlevel beim craften ergibt sich zu:
Code:
Ilvl_nach = Clvl * 0.5 + Ilvl_vor * 0.5
Das Affixlevel des Items ergibt sich nun aus dem resultierenden Itemlevel (Ilvl_nach in der Gleichung oben) oder dem Qualitylevel des Items, je nachdem welches von beiden höher ist.
Da Amulette ein Qualitylevel von 1 haben, ist für diesen Fall immer das Itemlevel wichtig.
Und wie man oben in der Formel sehen kann, hängt dieses durchaus vom Charlevel ab.
Ich hoffe ich konnte dich überzeugen.
Achja, dein Quelltextbeispiel kannst du dir vereinfacht vorstellen, wie eine Art Schrank, in dem jedes aktive Rezept eine eine Schublade darstellt.
In diesen Schubladen sind - je nach Rezept - verschiedene Fächer.
Der Algorithmus macht nun im Grunde folgendes:
- Leeren aller Fächer
- Durchlaufen aller Items im Inventar, wobei passende Items in der richtigen Schublade im passenden Fach abgelegt werden
Wenn das nun geschehen ist, wird überprüft, ob in einer der Schublade alle Fächer voll sind.
Ist dies der Fall, heisst das, dass alle Items für ein Rezept vorhanden sind und somit das Cubing initialisiert werden kann.
Schau es dir nochmal in Ruhe an, der Algorithmus ist eigentlich sehr elegant, leider aber eben auch nicht ganz leicht nachzuvollziehen.
Lg
Muddy
|
|
|
11/30/2010, 13:49
|
#14
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Hmmm ... dann nehme ich alles zurück und entschuldige mich auch hochoffiziell bei njomnjomnjom für meine Falschaussage.
Ich war mir allerdings sicher, irgendwann genau diese Thematik so nachgelesen zu haben; Danke für die Aufklärung an Muddy und armine
Zum Thema Craften und Co.:
Die (ich vermute von Sternenlooper) nachträglich eingebaute Itemlevel-Funktion ist ja ziemlich simpel und in dieser Funktion enthalten:
Code:
else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_CRAFT_SAFETY_WEAPON)
(Damit werden alle Craft - Rezepte von NTCU_CRAFT_HITPOWER_HELM bis NTCU_CRAFT_SAFETY_WEAPON inkludiert)
hier die Itemlevel - Bedingung:
Code:
if(NTConfig_ilvl80)
{
if(item.itemlevel >= 80)
{
if(NTConfig_CubingItem[i][2] == null)
{
NTConfig_CubingItem[i][2] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][2] == _gid)
_result = true;
}
}
else if(NTConfig_ilvl90)
{
if(item.itemlevel >= 90)
{
if(NTConfig_CubingItem[i][2] == null)
{
NTConfig_CubingItem[i][2] = _gid;
_result = true;
}
else if(NTConfig_CubingItem[i][2] == _gid)
_result = true;
Da ich mich überhaupt nicht mit der Materie auskenne, habe ich das eben das Problem, selbst eine if - Funktion zu schreiben, die Amus und Ringe extra behandelt, obwohl ich wüßte, wie man anzusetzen hätte. (Einfach 2 Bedingungen für die NTConfig_ilvl90 festlegen; 1. Blood Ringe und Caster Amus ab Ilvl 90, die restlichen Rezepte ab Level 70)
Zum Algorithmus beim Craften:
Prinzipiell habe ich (glaube ich) schon verstanden, wie es funktioniert:
Es werden einfach die verschieden Bedingungen in einer Reihenfolge abgefragt, auch die Reihenfolge ist mir klar (Durch ingame Beobachtung und Code - Durchgucken)
1. Grunditem wird gesucht -> Amu, Ringe, Gürtel, ...
2. Wenn ein Grunditem vorhanden ist, werden die Runen, Juwelen und Edelsteine dazu gesucht
3. Alles vorhanden -> Craft
Aber jetzt zu meinem Problem: Die Grunditems werden noch parallel gesucht -> Man kann also durchaus 1 x Ring, 1 x Gürtel, 1 x Amu, ... im Inventar haben -> Wo bitte im Code ist das zu finden (das parallele meine ich)???
Auch die Runen werden noch parallel in den Stash gelegt.
Aber bei den Juwelen und Edelsteinen ist das eben nicht so -> Juwel wird immer nur eines gestasht, bis das Rezept fertiggestellt worden ist -> Da habe ich auch keine Ahnung, wo genau das im Code steht
Genauso bei den Edelsteinen: Ich crafte normale PR und PA hoch, damit das Ganze ein bisschen schneller geht -> Bei 2 parallel laufenden Bloodcraft-Rezepten werden dann aber immer die makellosen Rubeine weggeworfen, wenn schon ein PR vorhanden ist
Ich hätte nur gerne, dass jedes Rezept sein eigenes Juwel und seinen eigenen PR/PA bekommt, hab aber leider keine Ahnung, wo genau das definiert sein soll.
|
|
|
12/04/2010, 12:08
|
#15
|
elite*gold: 0
Join Date: Aug 2010
Posts: 141
Received Thanks: 30
|
Hab die Itemlevelbedingung jetzt mal auf eine sehr umständliche Weise zu lösen versucht, indem ich diesen Part:
Code:
else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_CRAFT_SAFETY_WEAPON)
so verändert habe
Code:
else if(NTConfig_CubingItem[i][0] >= NTCU_CRAFT_HITPOWER_HELM && NTConfig_CubingItem[i][0] <= NTCU_CRAFT_SAFETY_WEAPON && != NTCU_CRAFT_BLOOD_BELT)
und dann den ganzen Absatz kopiert und für den Blood Belt nochmal mit Itemlevelbedingung 70+ eingefügt habe -> kein Erfolg, spuckt mir nur eine Fehlermeldung aus
Sollte prinzipiell aber funktionieren, oder?
|
|
|
 |
|
Similar Threads
|
Anregung
07/30/2010 - Combat Arms - 13 Replies
Ich habehier mal eine anregung für ein neues programm
wenn man z.B. ingame seine K/D sehen will wie in den Mini missions "get a final K/D gedöns"
wäre sowas möglich ?
|
kleine Anregung
03/20/2010 - Metin2 Private Server - 16 Replies
hey, ich finde es toll, das seit neustem so viele, teilweise ziemlich geniale, p-server entstanden sind.
Ich persönlich habe einige Anregungen die ihr eventuell auf euren servern gebrauchen könnt.
Giftschwert - gift einfügen - ist ganz leicht in der db
dauerhaftes brennen - auch ohne führungs-buff ermöglichen. in der skill_proto steht bei den 2 Fertigkeiten die das ermöglichen können ein Leerzeichen siehe hier unter szDurationPoly2 Nur als kleine Anregung... tüftelt ein wenig rum...
|
Problem mit AionNinja (crafting)
01/27/2010 - Aion - 2 Replies
Hey leute, hoffe ihr könnt mir weiterhelfen. Habe mir kürzlich AionNinja geholt, und wollte die Crafting-Funktion ausprobieren. Jedoch geht das nicht wie erwünscht. Mein Char wählt den entsprechenden Quest-NPC an, wartet und macht dann einen Sprung. Das wiederholt sich immer und immer wieder.
Habe die Auflösung auf 1024x768, deutschen Client und Automatische Fenster Anordnung.
Wäre echt froh, wenn jemand Hilfe weiss.
MfG Pädi
|
ANREGUNG FÜR NEN BOT
01/03/2010 - Metin2 - 1 Replies
So leute wie siehtsn aus...
Wenn ihr wirklich was HILFREICHES machen wollt, dann schreibt nicht irgendwie nen FarmBot oder Angelbot... davon sind sowieso schon zu viele da...
Wenn ihr wirklich was nützliches schreiben wollt, dann geht doch einfach auf die wünsche der leute ein...
Wenn ich mir hier mal über nachts den Moblock anmache, und mir versichern möchte das ich nicht sterbe dann sollte es doch für mich nen freiprogrammierbaren bot geben...
das heißt ich soll einstellen können was er...
|
Mega Autopotter anregung
04/19/2009 - Metin2 - 9 Replies
Hallo scripter!
Ich hätt für euch mal ne Anregung/Herausforderung ihr könntet doch mal nen Autopotter basteln der die Lebensleiste erkennt und immer nur dann Pottet wenn sie relativ leer ist. Wie wäre das. ich würde es selebr auch versuchen abba ich kriege das mit der Farbe nicht hin auch schon beim Angelbot nicht.:(
Also ich denke der müsste dann so funkt. das man z.b den erkenner auf 1/4 des Lebenns setzt und sobald dieser fleck schwarz wird aktiviert sich der autopotter und pottet.
...
|
All times are GMT +1. The time now is 20:43.
|
|