PDA

Ver la versión completa : Programacion l2



Enkapzulada
12/08/2008, 12:54
Yo veo las paginas de l2Calc , etc etc. Me gustaria saber si alguno conoce algun pack de las formulas que hacen para realizar los calculos.
Estoy desarrollando en php js y java una web para L2 con este tipo de servicios y quiero evitar el tema de realizar los metodos manuales acorde a los % y parametros de las tablas. -.-

=)

Saludines !!!


Gaby.

vofijatee
13/08/2008, 10:25
mmm, lo dificil es encontrar la base de datos donde este que tira cada mob.. las bases de los items, y los mobs estan por todos lados, si las queres te las paso...

Osea podrias hacer algo asi:

tabla "items"

id_item ( integer, autoincrement, fk)
item_name (varchar(50), esto es lo que busca el buscador...)

tabla "bichos"

id_bicho (integer, autoincrement,fk)
lvl_bicho (integer)
drop_list( varchar(255))

En drop list podria ser ID_ITEM(FK tabla items), CANTIDAD, PORCENTAJE, ej: (1,2,3%), separado de comas asi le tiras split desde php, o stringtokenizer desde java...

Y eso con 2 querys adentro de 1 bucle ya tenes la lista de items de cada bicho...

Si queres las bases de datos avisame o si no se entendio esto te mando un excel >_<

Saludos

Enkapzulada
13/08/2008, 11:11
Vofi, gracias por responderme, por ahi no es tanto el tema de las bases de datos, tengo la de c4, interlude y kamael , pero ! por ejemplo yo queria armar el tema de cristalizacion de armas que esten enchantadas , cuantos cristales quedan. o por ejemplo cuantos puntos mas de p atk de da cada enchant y que % hay para que se realice. :P

Lo de los mobs entendi como hacerlo es basicamente querys bien completitas para cada mob, creo que en eso no voy a tener problema, bueno mas que nada queria saber lo de los enchants, que no super buscarlo en la base, realmente empece por lo mas facil que son armors y weapons.

=)

vofijatee
13/08/2008, 11:36
CREEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEeeeeeeeeeeeeeeeee eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee eeeeo que las chances de los enchants son:

+4 = 66%
+5 = 43.56%
+6 = 28.7496%
+7 = 18.974736
+8 = 12.5233258%
+9 = 8.265395%
+10 = 5.4551607%
+11 = 3.6004061%
+12 = 2.376268%
+13 = 1.5683369%
+14 = 1.0351023%
+15 = 0.6831675%
+16 = 0.4508906%
+17 = 0.2975878%
+18 = 0.1964079%
+19 = 0.1296292%
+20 = 0.0855553%

El damage que sube por cada enchant ni idea, pero es el mismo para todas las armas, y los cristales, si tenes los files de un server off, fijate que donde estan los .txt tenes el de los items(no estoy en casa ahora asique ni idea el nombre, esta en la misma carpeta que npcdata.txt), que te dice cuantos cristales te da esa arma, solo faltaria calcular cuanto suma cada enchant (tambien es siempre = ) ;p

Enkapzulada
13/08/2008, 12:30
Aw!!! arigatou por los % !!
Me voy a fijar en el offi de c4 a ver que onda, despues tengo la base de los l2j T_T! el tema es que mas alla que tenga los % queria saber si habia algo armado en java para hacer los calculos, ahi me baje el l2 para compilarlo, me voy a fijar bien para ver si encuentro algun metodo bonito para que me haga el calculo ..... eso es lo que queria evitar ! :$

MIL GRACIAS !! ahi averiguo bien y me fijo si tengo en el l2j compilable algo cool para " inspirarme " :P

vofijatee
13/08/2008, 12:36
Lo mas dificil es el tema de las bases de datos porque todas las páginas tipo l2calc estan basadas en una open source que se llama "L2 INSIDE", l2inside.org creo que era la página, teoricamente esta el codigo para bajartelo.

Cuando llege a casa te paso un par de scripts en php que sacan %% ,drops, y todas esas cosas...

Enkapzulada
13/08/2008, 12:42
:kissing:Grachieeeeeeeeeeeeeeeeee!!!!! =)!!!

Voy a pispear la web de l2 inside!!! =)

vofijatee
13/08/2008, 19:59
bueno...

Te paso un script en php, va te paso la página y si te sirve te paso el source..

Lo que hace esta página es:

En un archivo de texto estan todos los items de interlude, nombre, tipo,grado,patack,matack,cristales.

En otro archivo de texto, estan los datos de los grados, osea cuanto sube cada arma por cada enchant, segun el tipo...

Entonces lo que hace es buscar el item que le decis, calcular las chances de enchantearlo, y decirte lo que pegaria, y si se rompe cuantos cristales te daria...


http://www.devfdxx.com.ar/test/prueba.php

Los .txt son:

http://www.devfdxx.com.ar/test/grados.txt
http://www.devfdxx.com.ar/test/items.txt


Lo unico que te faltaria es ver el tema de los cristales por arma, que no tube tiempo/ganas de hacerlo :$

PD: Tambien faltaria afinar un poco el buscador, porque busca por texto excto, y es case sensitive.
Y como dice tusam, PUEDE FALLAR.

Saludos

Enkapzulada
13/08/2008, 20:11
Uhhh!! epselente! si me gustaria ver el source :P O sea, me gustaria afinarlo con un query a la base de datos, tirarle con un like un lowercase del input y que traiga los posibles resultados. mas que manejarlo con un txt, seria lo ideal :P


=)

este source lo armaste vos?!
iba a chusmear en rage a ver si encontraba algo tonight!


:kiss1:

vofijatee
13/08/2008, 20:14
Se, lo arme yo.




<?

// Función principal
function calcular_chances($nombre,$tipo,$grado,$patack,$mat ack,$cristales,$enchant)
{
// Las variables que tienen los % de enchanteo.
$chance[4] = "66";
$chance[5] = "43.56";
$chance[6] = "28.7496";
$chance[7] = "18.974736";
$chance[8] = "12.5233258";
$chance[9] = "8.265395";
$chance[10] = "5.4551607";
$chance[11] = "3.6004061";
$chance[12] = "2.376268";
$chance[13] = "1.5683369";
$chance[14] = "1.0351023";
$chance[15] = "0.6831675";
$chance[16] = "0.4508906";
$chance[17] = "0.2975878";
$chance[18] = "0.1964079";
$chance[19] = "0.1296292";
$chance[20] = "0.0855553";


// Calculo el aumento de ptack/matack segun el grado y tipo de arma, usando el archivo "grados.txt"
$archivo = getcwd() . "\\". 'grados.txt';
$n = fopen($archivo,"r");
while (!feof($n))
{
$linea = fgets($n);
$lineasalto = nl2br($linea);
$array = explode(",",$lineasalto);
if ($array[0] == $tipo and $array[1] == $grado)
{
$patack_temp = $array[2] * $enchant;
$matack_temp = $array[3] * $enchant;
}
}

$patack = $patack + $patack_temp;
$matack = $matack + $matack_temp;

print "Hay un $chance[$enchant]% de chances que el $nombre se haga +$enchant.<br>";
print "El m.atack seria: $matack.<br>";
print "El p.atack seria: $patack.<br>";
print "Si se rompe daria $cristales cristales";

}

if (isset($_POST['txtItem']))
{
// suponiendo que los items estan guardados en "items.txt"
$archivo = getcwd() . "\\" . 'items.txt';
$n = fopen($archivo,"r");
// recorro hasta el final
while(!feof($n))
{
// leo el archivo linea por linea
$linea = fgets($n);
$lineasalto = nl2br($linea);
// armo un array para separar los datos del item
$array = explode(",",$lineasalto);

// me fijo si es el item que estoy buscando
if ($array[0] == $_REQUEST['txtItem'])
{
//si, es el item que busque, ahora calculo las chances de enchantarlo
calcular_chances($array[0],$array[1],$array[2],$array[3],$array[4],$array[5],$_REQUEST['lstEnchant']);

// nombre, tipo ,grado, patack, matack, cristales , enchant
}
}
}
?>

Lo hice con txts porque el unico mysql server que tengo le estan pegando muy duro todo el dia y no daba ponerme a boludear, aparte para poder modificar mas facil el tema de los pts por cada enchants, etc.. saludos

pinkfloyd
13/08/2008, 21:29
http://www.devfdxx.com.ar/test/prueba.php

Watafak is dat!!!

No existe forma de saber el enchant rate exacto de ningún ítem dentro del game, ya que nunca nadie vió el código entonces imposible, el enchant rate está compilado dentro del l2server.exe


PD: si quieren les paso una base de datos exacta de C4 con todos los chiches.

vofijatee
13/08/2008, 21:51
CUalquier persona que tenga conocimientos medios de ASM puede ver el codigo de CUALQUIER programa, igualmente no pasa por ahi, porque los %% dependen del server y no de juego.

Si tenes los files de un server OFF fijate en la carpeta Scripts los archivos AI.OBJ, npcdata.txt, itemdata.txt etc...

Enkapzulada
13/08/2008, 22:48
Peren pero estan los files en java del l2j, no deberia utilizar los mismos rates? mas alla que no pueda verlos por l2off? yo lo necesito en java principalmente.

pinkfloyd
14/08/2008, 01:17
CUalquier persona que tenga conocimientos medios de ASM puede ver el codigo de CUALQUIER programa, igualmente no pasa por ahi, porque los %% dependen del server y no de juego.

Si tenes los files de un server OFF fijate en la carpeta Scripts los archivos AI.OBJ, npcdata.txt, itemdata.txt etc...

Estás muy equivocado, el AI.obj (que en realidad es un pseudo ASM) se encarga de todo lo que sea inteligencia artificial de los mobs (el propio nombre te lo dice AI=artificial inteligence) y de varias otras funciones del juego, pero no tiene ninguna conf sobre enchants.

En el script itemdata.txt está la configuración de los ítems por ejemplo tomando la conf del draconic bow


item_begin weapon 7575 [draconic_bow] item_type=weapon slot_bit_type={lrhand} armor_type=none etcitem_type=none recipe_id=0 blessed=0 weight=1650 default_action=action_equip consume_type=consume_type_normal initial_count=1 maximum_count=1 soulshot_count=1 spiritshot_count=1 reduced_soulshot={} reduced_spiritshot={} reduced_mp_consume={} immediate_effect=1 price=0 default_price=48800000 item_skill=[none] critical_attack_skill=[none] attack_skill=[none] magic_skill=[none] item_skill_enchanted_four=[none] material_type=adamantaite crystal_type=s crystal_count=2440 is_trade=1 is_drop=1 is_destruct=1 physical_damage=581 random_damage=5 weapon_type=bow can_penetrate=0 critical=12 hit_modify=-3.75 avoid_modify=0 dual_fhit_rate=0 shield_defense=0 shield_defense_rate=0 attack_range=500 damage_range={0;0;10;0} attack_speed=293 reuse_delay=1500 mp_consume=11 magical_damage=132 durability=95 damaged=0 physical_defense=0 magical_defense=0 mp_bonus=0 category={} enchanted=0 html=[item_default.htm] equip_pet={0} magic_weapon=0 enchant_enable=1 can_equip_sex=-1 can_equip_race={} can_equip_change_class=-1 can_equip_class={} can_equip_agit=-1 can_equip_castle=-1 can_equip_castle_num={} can_equip_clan_leader=-1 can_equip_clan_level=-1 can_equip_hero=-1 can_equip_nobless=-1 can_equip_chaotic=-1 item_end

en ningún lado se especifica el enchant rate del ítem

Lo mismo pasa con el npcdata.txt donde está la configuración de los npc.

Aparte no tiene nada que ver saber o no ASM porque sin tener el código fuente del programa es imposible saber exactamente como funciona.
Tengo bastante experiencia en servers l2off y te aseguro que la única manera de modificar un ejecutable es editándolo hexadecimalmente o añadiendo funciones con librerías .dll y ahí si se lo hace con lenguaje ASM pero te aseguro que nadie en el mundo más que lo desarrolladores de NCSOFT sabe exactamente como está programado el l2server. Modificar el server y el funcionamiento del juego sí lo podés hacer perfectamente sabiendo algo de ASM y C++ o modificando los scripts (itemdata, npcdata, skilldata, item_pch, npc_pch, etc etc etc) que son "plain text" pero de todas formas si no hay código fuente no se puede saber nada con respecto a los ejecutables.
Lo que sí se puede hacer y (me consta que hay un par de desarrolladores que están laburando en eso) es desarrollar un sistema de enchants diferente al oficial, esto ya existe en varios extenders de C5 e Interlude, donde se puede modificar el enchant rate porque está desarrollado aparte.

Lo que sí te puedo decir (aunque es una teoría) es que hay algunas pruebas como para creer que los enchant rate de las armas de mago y warrior son diferentes.

Cualquier cosa ACÁ (http://www.postpacific.com/showthread.php?t=10422&highlight=enchant+rate) hay algo de info, hay muchas teorías pero nada seguro.




Peren pero estan los files en java del l2j, no deberia utilizar los mismos rates? mas alla que no pueda verlos por l2off? yo lo necesito en java principalmente.

No, no es exactamente el mismo rate porque como dije antes no se puede saber a ciencia cierta como funciona el enchant rate del oficial, entonces las del l2j son aproximaciones basadas en experiencias nada mas que eso. Obviamente al disponer del código fuente del L2j podés saber exactamente cómo funciona el enchant rate del mismo.

vofijatee
14/08/2008, 10:29
Ok, esta bien, me convenciste.

No pongo las manos en el fuego por esos %% simplemente porque no se quien los hizo, ni cuanto sabe el que lo hizo. Pero como vos decis, esos %% estan basados en estadisticas, creer o reventar, si tenes alugnos %% mas exactos, o probados pasamelos, y modifico el php .

pd: El unico lenguaje que es "imposible" decompilar/traducir con exactidud es PERL.

saludos

Enkapzulada
14/08/2008, 14:30
Wenu, me parece que voy a sacar eso de mi web =/ como que si no son exactos los % , no quiero tampoco otorgar algo que no sabemos si es cierto.

De todos modos voy a revisar un poco en los files de java.

:kissing: gracias x el aporte a ambos!! Luego ire subiendo lo que voy armando !

Besos!

vofijatee
14/08/2008, 15:41
Es que de echo creo que en ninguna página esta eso de los %. Lo que si esta es para calcular los stats que tendrias con x armas, con x level, con x dyes, etc.

Lo que si esta (si el señor 'pinkfloyd' no me pincha el globo :P), y creo que es "oficial" son los stats que sube cada enchant que le pones al arma.

btw: Ahora estoy al dope en el laburo si queres te armo el script de como quedaria en vez de usando txt con 1 base de datos mysql server, y con boludeces tipo el buscador con mejores criterios (lower/upper cases y likes "%" )

Saludos y pone la pagina cuando allas echo algo a ver como va quedando xD

n3k_lp
16/08/2008, 17:23
Creo que los porcentajes son iguales siempre, lo único que modifica el server es hasta dónde pueden ser safe.

Enkapzulada
18/08/2008, 04:45
Gracias chicos!! me retiro del foro, luego cuando salga con la web, les paso a contar.

besos! =)

Gabu.

AxeTouch
18/08/2008, 04:55
Gracias chicos!! me retiro del foro, luego cuando salga con la web, les paso a contar.

besos! =)

Gabu.

:(
Te retiras ?
Si es asi te digo lo que pensaba sobre vos, sinceramente una chica con mucho conocimiento eres. Suerte.

_____________

O___O
Respecto a lo de tu firma, espero no estar yo entre esos mods T.T

Saludos.

Acrisio
27/08/2008, 15:14
Vuelve mi hermano del colegio y le pido la pagina que no recuerdo como era,es exactamente lo que estas buscando.

mauricio
27/08/2008, 15:20
la verdad que no entiendo una mierda esto ... pero nunk me puse a fijarme estas cosas ... sobre las funciones para calcular los enchanes . etc...
no entendi bien pero bue... despues que alguno me me desrciba bien como es la onda va si pueden .. Gracias ... nos vemos suerte a todos

Mauricio_ElUnico

autochk
10/11/2008, 20:16
CREEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEeeeeeeeeeeeeeeeee eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee eeeeo que las chances de los enchants son:

+4 = 66%
+5 = 43.56%
+6 = 28.7496%
+7 = 18.974736
+8 = 12.5233258%
+9 = 8.265395%
+10 = 5.4551607%
+11 = 3.6004061%
+12 = 2.376268%
+13 = 1.5683369%
+14 = 1.0351023%
+15 = 0.6831675%
+16 = 0.4508906%
+17 = 0.2975878%
+18 = 0.1964079%
+19 = 0.1296292%
+20 = 0.0855553%

El damage que sube por cada enchant ni idea, pero es el mismo para todas las armas, y los cristales, si tenes los files de un server off, fijate que donde estan los .txt tenes el de los items(no estoy en casa ahora asique ni idea el nombre, esta en la misma carpeta que npcdata.txt), que te dice cuantos cristales te da esa arma, solo faltaria calcular cuanto suma cada enchant (tambien es siempre = ) ;p

Si se dieron cuenta cada porcentaje es el anterior dividido 1.5

Ejemplo :+4= 66% +5 = +4 / 1.5 = 66% /1.5 = 43.56%

Enkapzulada
11/11/2008, 10:42
Que lindos que siguieron respondiendo! no habia leido! Mil gracias!

Estoy por lanzar el site, me estan por pasar las functions que se usan en l2j de un servidor ruso oO! vamos a probar con eso.

Dps les dejo en link asi chusmean !

GRACIAS a los que respondieron!

Kresta
30/01/2009, 13:30
Perdon por revivir un th de hace tiempito, pero si seguis con la web, el tema del incremento de p attack/m attack del arma, te lo dice el enchant de cada grado. Por ejemplo, el que me acuerdo es que del ews sube 10 de p attack en el bow, y 20 a partir de +4. Es cuestion de ir fijandose lo que dice cada enchant. Si queres reviso los enchants y te posteo el aumento en cada item ( arma o parte de set/joyas ).

Salu2ss > > >

PD: Tengo entendido que el incremento no cambia en ningun tipo de server.

Enkapzulada
06/02/2009, 10:47
Perdon por revivir un th de hace tiempito, pero si seguis con la web, el tema del incremento de p attack/m attack del arma, te lo dice el enchant de cada grado. Por ejemplo, el que me acuerdo es que del ews sube 10 de p attack en el bow, y 20 a partir de +4. Es cuestion de ir fijandose lo que dice cada enchant. Si queres reviso los enchants y te posteo el aumento en cada item ( arma o parte de set/joyas ).

Salu2ss > > >

PD: Tengo entendido que el incremento no cambia en ningun tipo de server.

Si podes mostrarmelos mejor asi comparo con lo que estoy armando. :)
Gracias!

ChaoticSword
06/02/2009, 12:50
peero a vos no te habian banneado? O.o

Enkapzulada
06/02/2009, 12:58
Fué un efecto cósmico, soy asi! (?)
:matrix_2_h4h:

ChaoticSword
06/02/2009, 13:49
pues claro me lo suponia

Kresta
06/02/2009, 13:50
Ahora lo busco y te los paso ( justo se cayo el server, los busco por inet -.- ).

Salu2ss > > >

Enkapzulada
06/02/2009, 14:00
Ahora lo busco y te los paso ( justo se cayo el server, los busco por inet -.- ).

Salu2ss > > >

Genio! :) :gunsmilie:

Kresta
06/02/2009, 15:07
Genio! :) :gunsmilie:

Bueno, yo me referia a esto, no se si vos entendiste lo mismo. No se les ocurra poner en google "enchants lineage 2" porque va a salir una cantidad interminable de webs que dicen como "hackear" el safe enchant.

Copiado a mano, no se si estara bien la info o no, porque en weapon C y B incrementa lo mismo y las joyas y armaduras incrementan todas igual, pero esta sacado del dm de Zeus.


Weapon D

When enchanted the P. Atk. of all D grade weapons will increase by 2 with the exception of bows, which will increase by 4. The M. Atk. of all weapons increases by 2. From +4, P. Atk. and M. Atk. bonus will double for all weapon types.

Weapon C

When enchanted, the P. Atk. of C grade weapons such as one-handed swords and blunt weapons, daggers and spears increases by 3. The P. Atk. of two-handed swords and blunt weapons, dualswords, and two-handed fist-fighting weapons increases by 4. The P. Atk. of bow weapons increases by 6. The M. Atk.of all weapons increases by 3. From +4, P. Atk. and M. Atk bonus will double for all weapon types.

Weapon B

When enchanted, the P. Atk. of C grade weapons such as one-handed swords and blunt weapons, daggers and spears increases by 3. The P. Atk. of two-handed swords and blunt weapons, dualswords, and two-handed fist-fighting weapons increases by 4. The P. Atk. of bow weapons increases by 6. The M. Atk.of all weapons increases by 3. From +4, P. Atk. and M. Atk bonus will double for all weapon types.

Weapon A

When enchanted, the P. Atk. of A grade weapons such as sword/one-handed, blunt weapon/one-handed, dagger and spear etc. will increase by 4. The P. Atk. of sword/two-handed, blunt weapon/two-handed, dualsword, and fist-fighting weapon/two-handed will increase by 5. The P. Atk. of bow weapons will increase by 8. The M. Atk. of all weapons will increase by 3. From +4, the P. Atk. and M. Atk. bonus will double for all weapon types.

Weapon S

When enchanted, the P Atk. of S grade weapons, such as one-handed swords and blunt weapons, daggers and spears increases by 3. The P. Atk. of two-handed swords and blunt weapons, dualswords and two-handed fist-fighting weapons increases by 6. The P. Atk. of bow weapons increases by 10. The M. Atk of all weapons increases by 4. From +4, P. Atk. and M. Atk. bonus will double for all weapon types.




Armor D

Increases P. Def. of a D grade armor or accessory by 1, and from +4 the P. Def will increase by 3. One-piece type armor can be safely enchanted up to +4.

Armor C

Increases P. Def of a C grade armor or accessory by 1, and from +4 the P. Def will increase by 3. One-piece type armor can be safely enchanted up to +4.

Armor B

Increases P. Def of a B grade armro or accessory by 1, and from +4, the P. Def will increase by 3. One-piece type armor can be safely enchanted up to +4.

Armor A

Increases the P. Def of an A grade armor or accessory by 1, and from +4, the P. Def will increase by 3. One-piece type armor can be safely enchanted up to +4.

Armor S

When enchanted, increases P. Def. of S grade armor or accessory by 1, and from +4 the P. Def increases by 3. One-piece type armor can be safely enchanted up to +4.

Obvie que el safe enchant era hasta +3, pero aclare que las partes "dobles" de set entran hasta +4 en safe.

Salu2ss > > >

PD: Si necesitas ejemplos de armas despues posteo una web que da la info, que si bien no es c4, concuerda con esto creo.

EDIT: No revise si ta bien escrito todo, quiero agitar :P

vofijatee
18/03/2009, 09:42
Por si alguien le sigue interesando esto:

http://devfdxx.com.ar/l2test/html/

Es básicamente como lo que puse en la primera pagina, pero mejor armado(divs), un sugestor de items(ajax), mejor diseño(css), datos reales(off db), e imágenes(me las robe de algún lado).

Si necesitan los fuentes mándenme un PM con algún dato de contacto (msn or mail) y se los mando. Use PHP y MySQL.

También tengo semi-desarrollada la parte de los bichos, si les interesa les mando hasta lo que hice.


Saludos.

Pd: Me fui al laburo y deje subiendo las imágenes, aparentemente faltan 20 min (son casi 10.000), asique puede ser que no vean alguna que otra.