Jump to content

Custom Bloody branch


Zutcer

Recommended Posts


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  114
  • Reputation:   5
  • Joined:  07/19/15
  • Last Seen:  

Alguien tiene alguna guia de como implementar esos?. encontre una aqui pero la fuente del emulador no es igual a la mia :/

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  6
  • Topics Per Day:  0.00
  • Content Count:  65
  • Reputation:   7
  • Joined:  06/06/12
  • Last Seen:  

¿Podrías ser más especifico?

¿Te refieres a hacer una lista de monstruos que salga de una bloody branch custom?

 

Si es eso... ¿Has probado con lo que dice este post?

https://rathena.org/board/topic/76455-custom-branch/

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  31
  • Topics Per Day:  0.01
  • Content Count:  114
  • Reputation:   5
  • Joined:  07/19/15
  • Last Seen:  

Saludos, si ese fue el post que revise pero no concuerdan las fuentes de mi src :/

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  6
  • Topics Per Day:  0.00
  • Content Count:  65
  • Reputation:   7
  • Joined:  06/06/12
  • Last Seen:  

Saludos, si ese fue el post que revise pero no concuerdan las fuentes de mi src :/

¿Lo que no concordará es lo del mob.c verdad?

Es porque lo han cambiado.

	sv_readdb(dbsubpath1, "mob_avail.txt", ',', 2, 12, -1, &mob_readdb_mobavail, i);
	sv_readdb(dbsubpath2, "mob_race2_db.txt", ',', 2, MAX_RACE2_MOBS, -1, &mob_readdb_race2, i);
	sv_readdb(dbsubpath1, "mob_item_ratio.txt", ',', 2, 2+MAX_ITEMRATIO_MOBS, -1, &mob_readdb_itemratio, i);
	sv_readdb(dbsubpath1, "mob_chat_db.txt", '#', 3, 3, MAX_MOB_CHAT, &mob_parse_row_chatdb, i);
	sv_readdb(dbsubpath2, "mob_random_db.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath2, "mob_branch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath2, "mob_poring.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath2, "mob_boss.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath1, "mob_pouch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath1, "mob_classchange.txt", ',', 4, 4, -1, &mob_readdb_group, i );

Tal vez si lo remplazas por esto añadiendo tu txt :

    sv_readdb(dbsubpath1, "mob_avail.txt", ',', 2, 12, -1, &mob_readdb_mobavail, i);
    sv_readdb(dbsubpath2, "mob_race2_db.txt", ',', 2, MAX_RACE2_MOBS, -1, &mob_readdb_race2, i);
    sv_readdb(dbsubpath1, "mob_item_ratio.txt", ',', 2, 2+MAX_ITEMRATIO_MOBS, -1, &mob_readdb_itemratio, i);
    sv_readdb(dbsubpath1, "mob_chat_db.txt", '#', 3, 3, MAX_MOB_CHAT, &mob_parse_row_chatdb, i);
    sv_readdb(dbsubpath2, "mob_random_db.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_branch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_poring.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_boss.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_superboss.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath1, "mob_pouch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath1, "mob_classchange.txt", ',', 4, 4, -1, &mob_readdb_group, i );

Y luego aumentando el MAX_RANDOMMONSTER en mob.h a no ser que lo hayan cambiado.

Edited by zwaken
Link to comment
Share on other sites

  • 5 years later...

  • Group:  Members
  • Topic Count:  10
  • Topics Per Day:  0.01
  • Content Count:  29
  • Reputation:   1
  • Joined:  03/28/21
  • Last Seen:  

On 6/3/2016 at 6:06 PM, Waken said:

¿Lo que no concordará es lo del mob.c verdad?

Es porque lo han cambiado.


	sv_readdb(dbsubpath1, "mob_avail.txt", ',', 2, 12, -1, &mob_readdb_mobavail, i);
	sv_readdb(dbsubpath2, "mob_race2_db.txt", ',', 2, MAX_RACE2_MOBS, -1, &mob_readdb_race2, i);
	sv_readdb(dbsubpath1, "mob_item_ratio.txt", ',', 2, 2+MAX_ITEMRATIO_MOBS, -1, &mob_readdb_itemratio, i);
	sv_readdb(dbsubpath1, "mob_chat_db.txt", '#', 3, 3, MAX_MOB_CHAT, &mob_parse_row_chatdb, i);
	sv_readdb(dbsubpath2, "mob_random_db.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath2, "mob_branch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath2, "mob_poring.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath2, "mob_boss.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath1, "mob_pouch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
	sv_readdb(dbsubpath1, "mob_classchange.txt", ',', 4, 4, -1, &mob_readdb_group, i );

Tal vez si lo remplazas por esto añadiendo tu txt :


    sv_readdb(dbsubpath1, "mob_avail.txt", ',', 2, 12, -1, &mob_readdb_mobavail, i);
    sv_readdb(dbsubpath2, "mob_race2_db.txt", ',', 2, MAX_RACE2_MOBS, -1, &mob_readdb_race2, i);
    sv_readdb(dbsubpath1, "mob_item_ratio.txt", ',', 2, 2+MAX_ITEMRATIO_MOBS, -1, &mob_readdb_itemratio, i);
    sv_readdb(dbsubpath1, "mob_chat_db.txt", '#', 3, 3, MAX_MOB_CHAT, &mob_parse_row_chatdb, i);
    sv_readdb(dbsubpath2, "mob_random_db.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_branch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_poring.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_boss.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath2, "mob_superboss.txt", ',', 4, 4, -1, &mob_readdb_group,);
    sv_readdb(dbsubpath1, "mob_pouch.txt", ',', 4, 4, -1, &mob_readdb_group, i );
    sv_readdb(dbsubpath1, "mob_classchange.txt", ',', 4, 4, -1, &mob_readdb_group, i );

Y luego aumentando el MAX_RANDOMMONSTER en mob.h a no ser que lo hayan cambiado.

en las nuevas versiones no existe al parecer el MAX_RANDOMMONSTER  en el mob.h, si no que tiene que agregar uno custom en este enum.
en mob.h
enum e_random_monster : uint16 {
    MOBG_Branch_Of_Dead_Tree = 0,
    MOBG_Poring_Box,
    MOBG_Bloody_Dead_Branch,
    MOBG_Red_Pouch_Of_Surprise,
    MOBG_ClassChange,
    MOBG_Taekwon_Mission,
    MOBG_SupperBoss,
};

y luego agregarlo en mob_summon.yml
Body:
  - Group: SupperBoss,
    Default: MAYA
    Summon:
      - Mob: MAYA
        Rate: 100000
      - Mob: DEVILING
        Rate: 700000

 

y hacer el mob_supperbox.txt
y agregar los mvps con la siguente extructura

MobID,DummyName,Rate

y al final hacer esto.

 

Declararlo en script_constants.hpp

/* mob random groups */
	export_constant(MOBG_Branch_Of_Dead_Tree);
	export_constant(MOBG_Poring_Box);
	export_constant(MOBG_Bloody_Dead_Branch);
	export_constant(MOBG_Red_Pouch_Of_Surprise);
	export_constant(MOBG_YOUR_Branch);
	export_constant(MOBG_ClassChange);

el problema que estoy teniendo es que si no agregas un MVP al inicio cuando hace la Build despues de esos cambios, como que el proyecto ya no vuelve a recibir en ese grupo, los nuevos mvps.
y no he podido solucionar eso, solo me recibe cambios de rates en los MVPs que estaban originalmente en el grupo.

Edited by f_fman
Link to comment
Share on other sites


  • Group:  Forum Moderator
  • Topic Count:  25
  • Topics Per Day:  0.01
  • Content Count:  832
  • Reputation:   317
  • Joined:  02/11/19
  • Last Seen:  

On 7/9/2021 at 6:04 AM, f_fman said:

en las nuevas versiones no existe al parecer el MAX_RANDOMMONSTER  en el mob.h, si no que tiene que agregar uno custom en este enum.
en mob.h
enum e_random_monster : uint16 {
    MOBG_Branch_Of_Dead_Tree = 0,
    MOBG_Poring_Box,
    MOBG_Bloody_Dead_Branch,
    MOBG_Red_Pouch_Of_Surprise,
    MOBG_ClassChange,
    MOBG_Taekwon_Mission,
    MOBG_SupperBoss,
};

y luego agregarlo en mob_summon.yml
Body:
  - Group: SupperBoss,
    Default: MAYA
    Summon:
      - Mob: MAYA
        Rate: 100000
      - Mob: DEVILING
        Rate: 700000

 

y hacer el mob_supperbox.txt
y agregar los mvps con la siguente extructura


MobID,DummyName,Rate

y al final hacer esto.

 

Declararlo en script_constants.hpp


/* mob random groups */
	export_constant(MOBG_Branch_Of_Dead_Tree);
	export_constant(MOBG_Poring_Box);
	export_constant(MOBG_Bloody_Dead_Branch);
	export_constant(MOBG_Red_Pouch_Of_Surprise);
	export_constant(MOBG_YOUR_Branch);
	export_constant(MOBG_ClassChange);

el problema que estoy teniendo es que si no agregas un MVP al inicio cuando hace la Build despues de esos cambios, como que el proyecto ya no vuelve a recibir en ese grupo, los nuevos mvps.
y no he podido solucionar eso, solo me recibe cambios de rates en los MVPs que estaban originalmente en el grupo.

Aquí te la resumieron: https://rathena.org/board/topic/128953-custom-branch-group-new-rathena/#comment-399104

 

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  17
  • Reputation:   3
  • Joined:  11/17/14
  • Last Seen:  

Hola buenas noches;

Para este caso tengo una idea simple para los que no tengan conocimiento metiendo mano al src (No se preocupen todos aprenden en su momento^^)

Para este caso tome un item usable(Para este ejemplo Aloe Vera De la carpeta db/pre-re/item_db.txt)y lo modifique de la siguiente manera

606,Aloebera,Aloevera,11,1500,,100,,,,,0xFFFFFFFF,7,2,,,,,,{ if(strcharinfo(3)=="prontera") { message strcharinfo(0),"No Puedes abrir este objeto en este mapa";end; }else{ callfunc "invocador_custom"; }},{},{}

Para este caso borre el efecto de la aloe vera(el original) y le inserte mi script. Explicarlo es simple si estas en prontera no te dejara abrir el item y si no estas en mapa que en este caso es prontera haces el llamado a la funcion "invocador_custom".

Ahora vamos a crear un archivo en la carpeta custom y le pondremos funciones_customizadas.txt(Le pueden poner el nombre que sea xD)

Y dentro de ese archivo le agregan el siguiente codigo:

function	script	invocador_custom	{
setarray .MVP_List[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373,1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688,1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131,2156,2165;
set .Monster,rand(57);
atcommand "@monster "+ .MVP_List[.Monster];
end;
}

Posteriormente vas a el archivo script_custom.conf (carpeta npc) y agregas la siguiente linea:

npc: npc/cutom/funciones_customizadas.txt

NOTA: Si quieren agregarle delay al item vayan a la carpeta db/pre-re  y luego al archivo item_delay.txt y ingresan al final esto.

606,5000 //<-- 5 Seg delay

La diferencia de usar este sistema a que menciona los demas que aca no generas la chance de que uno salga mas y otro menos  esto es random, se puede modificar para que uno tenga mas chance pero seria mas largo el codigo.

Espero que a cualquiera le sirva esta idea un saludo a todos y cuidense.

 

Edited by AlvaroNiel
  • Upvote 1
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  10
  • Topics Per Day:  0.01
  • Content Count:  29
  • Reputation:   1
  • Joined:  03/28/21
  • Last Seen:  

gracias, yo creo que ya con esas opciones, puedo hacerlo por el momento
gracias

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...