Expansion Games

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Expansion Games

Desenvolvimentos, notícias, artigos, tutoriais, programas, designer, opiniões e recursos online, tudo em um só lugar


    [Tutorial]Guia para Adicionar um NPC e Configura que funcione como uma loja By XxRossxX

    avatar
    maluku102


    Mensagens : 37
    Data de inscrição : 10/07/2010

    [Tutorial]Guia para Adicionar um NPC e Configura que funcione como uma loja By XxRossxX Empty [Tutorial]Guia para Adicionar um NPC e Configura que funcione como uma loja By XxRossxX

    Mensagem  maluku102 Sáb Jul 10, 2010 7:38 pm


    Neste tutorial, eu vou lhe mostrar como adicionar "Rune agente Flashâ" em Bloody Ice e deixá-lo vender Upgrade Core (alta) em 1 Alz.
    *********** ***********

    1, O que eu preciso saber antes de ler este tutorial?
    • Onde está o cliente e servidor de arquivos?
    • Como criptografar / descriptografar os arquivos ENC?
    • Como editar arquivos do servidor do SCP?
    E o mais Importante Saber oque são Arquivos ENC e ter o conheçimentos e mecher neles...

    Por que eu tenho de saber essas coisas?
    • Porque eu não te mostrar como fazer (procurar resposta).
    2, Adicionar NPC em um mapa:
    Ao modificar ''estra_obj.enc'' e ''extra_obj_msg.enc'' no cliente, vc pode adicionar um NPC Smile
    AquAqui está a caminho.
    a, ''Editar extra_obj.enc''
    Em primeiro lugar, com ''extra_obj.enc'', adicionando as linhas que vc adicionar um objeto no mapa especificado.
    Código:
      <cabal>
        <version index="1" />
        world_id="1"> <extra_object
            filename="Character\w1rune.ebm" <extra_stuff id="2" min="-17 0,87 3,-2 5,31 12,-2 44,7 27" max="2 15,37 9,65 0,17 2,7 75 "/>
            <Extra_entity tipo = "1" pos = "1 49 6, 0434 5" rodar = "0, 0,0, 0 escala" = "1, 1, 1" disable_cell_radius = "1" stuff_id = "2" name = " extra_npc_003 "npc_id =" 35 npc_tag = "0 npc_type" = "1" />
        </> Extra_object
     </> Cabala
     
    extra_object
    • world_id: ID do Mundo - Mapa (para a lista completa, veja isso: npc_and_map_list_ep3.txt)
    extra_stuff
    • id: identificação do objeto no mapa atual
    • Nome: Modelo 3D para o objeto
    • min:?
    • Max:?
    extra_entity
    • Tipo: Object
    o 0: Objeto Normal
    o 1: NPC
    • Nome: Modelo 3D para o objeto
    • pos: NPC (Posição Todos os pos é multiplicado por 100 para mais precisão)
    o 1: X
    o 2: Z
    o 3: Y
    • girar: NPC Rotação
    o 1: Sempre = 0
    o 2: Licenciatura para o eixo X
    o 3: Grau para o eixo Z
    o 4: Grau para o eixo Y
    • escala: relação de escala (1,1,1 para ver em tamanho normal)
    o 1: X
    o 2: Z
    o 3: Y
    • disable_cell_radius: Raio da área que o objeto colocado no (jogador não pode atravessar essa área)
    • stuff_id: id do extra_stuff que este extra_entity descrever sobre
    • nome: Nome do material
    • npc_id: ID do NPC
    • npc_tag:?
    • npc_type:
    o 1: NPC Normal
    o 7: NPC Shop
    o outro valor: Não sei
    b, Edit "extra_obj_msg.enc"
    Arquivo extra_obj_msg.enc "deve ter alguns dados para realizar NPC nome que armazenado em" extra_obj.enc ".

    Aqui está um exemplo.
    Código:
      <cabal_msg>                   
        index="1"/> <version               
        code="EU"/> <nation               
        <extra_obj_msg>               
            id="extra_npc_003" <msg cont="Rune agente Flasha" />
        </> Extra_obj_msg               
     </> Cabal_msg
    Então, a coisa que você tem que fazer aqui é adicionar um novo /> <msg com valor corrigido.

    msg
    • id: o mesmo valor com o nome> extra_entity
    • cont: Nome do NPC
    OK, agora tente executar seu cliente. Consegue ver "Flashâ agente Rune" no Gelo Bloody? Se não, tente outra vez!

    3 º, Modificado do NPC NPC Normal Shop NPC

    Agora você tem que decidir, qual o item que você quer vender nesse NPC. Por exemplo UCH na 1Alz, OK?
    um, com "cabal.enc"
    Pesquisar:
    Código:
      <cabal_world>
    Agora encontrar: (média de Bloody Ice)
    Código:
      mundo <id = "1" name = "mundo1 type =" 0 "map_file =" world_01.mcl "
    Adicione esta nova linha para descrever sobre o seu novo NPC.
    Código:
      id="35" <world_npc npc_name="npc 01-003 5" x="14" y="43" is_obj="0" />
    world_npc
    • id: id mesmo em "extra_obj.enc"
    • npc_name: seguem esse padrão "npcXX-AAAA", onde
    o XX: Mapa ID
    o YYYY: ID NPC
    • x: posição X
    • y: Posição Y
    • is_obj:
    o 0: não é objeto (é um NPC)
    o 1: é um objeto normal (não clicáveis)
    Agora adicione essas linhas para descrever o que os itens de NPC vende:
    Código:
      <shop id="35">
                    slot_id="0" <item item_id="1" option="0" reputation_class="-19" duration_id="0" price="1" />
                </> Loja
    loja
    • id: Id NPC

    item
    • Slot: slot_id na loja tela
    • item_id: ID do item
    • Opção: Opção do item
    • reputation_class: Honor classe obrigados a comprar (-19 = não requerido)
    • duration_id Duração: Item
    • Preço: Preço de item
    b, com "cabal_msg.enc"

    Adicionar nova linha para descrever sobre o nome NPC que gosta:
    Código:
      id="npc01-0035" <msg cont="Rune agente Flasha" />
    c, servidor de arquivos com.

    Pesquisar dados corretos NPC arquivo para o seu mapa (Ex: para Bloody Ice: etc/cabal/data/data_world/world1-npc.scp /)
    Abra-o e adicione uma linha para deixar servidor de saber sobre o NPC que id é de 35 (nossa Rune agente)
    Adicionar em NpcPos] Bandeiras [Índice PosX Posy seção Tipo IsRangeCheck
    Código:
      28 0 35 15 43 1 1
    Agora adicione nova linha neste arquivo para 1Alz UCH:)

    Adicionar em [NpcsIdx ShopLst] NSetIdx ItemKind ItemOpt ReputationClass DurationIdx seção de preço
    Código:
      147 35 0 1 0 1 0 1
    E isso é tudo, reinicie o servidor e iniciar o seu cliente. Agora você verá NPC "Rune agente Flashâ" Bloody Ice, em que vende UCH por 1 Alz:)
    Eis alguns dados XML NPC que você pode usar para colocar em "extra_obj.enc".

    Árvore de X'mas no Gelo Bloody

    Código:
      extra_stuff <id = "0 nome" = "objeto object_fx \ \ x \ mas x-min" mastree05.efx = "-17 0,87 3 5,31 12 -2, -2 44,72 7 max =" 2 15,37 9,6 50,17 2.7 7 5 "/>
            <Extra_entity tipo = "0" pos = "22 52 -3 1, 306 8" rodar = "0, 0,0, 0 escala" = "1, 1, 1" disable_cell_radius = "2" stuff_id = "0" />
    Chaos sinal de entrada Arena
    Código:
      extra_stuff <id = "1" filename = "objeto \ neve \ f_snow_guidace.ebm min =" -1 70,87 3, -2 5,311 2, 7 -24 4,72 max = "2 15,37 9,6 50,17 2,7 7 5 "/>
            <Extra_entity tipo = "1" pos = "11, 15 0,3 02 2" rotate = "0, 0,70 07,0 71, 0 ,70710 grau 7" = "1, 1,1" disable_cell_radius = "1" stuff_id = "1" name = "extra_npc_000" npc_id = "31 npc_tag =" 0 npc_type = "7" />

    Rune Flashâ agente
    Código:
      extra_stuff <id = "2 filename =" Character w1rune.ebm \ min = "-17 0,87 3 5,31 12 -2, -2 44,72 7 max =" 2 15,3 7 9,65 0,17 2,77 5 "/ >
            <Extra_entity tipo = "1" pos = "1 49 6, 0434 5" rodar = "0, 0,0, 0 escala" = "1, 1, 1" disable_cell_radius = "1" stuff_id = "2" name = " extra_npc_003 "npc_id =" 35 npc_tag = "0 npc_type" = "1" /
    Lady Yekaterina
    Código:
      extra_stuff <id = "3 filename =" Character w1agent.ebm \ min = "-17 0,87 3 5,31 12 -2, -2 44,72 7 max =" 2 15,3 7 9,65 0,17 2,77 5 "/ >
            <Extra_entity tipo = "1" pos = "2 338,12 7,1 63 3" rotate = "0,1,0,0" escala = "1, 1, 1" disable_cell_radius = "1" stuff_id = "3" name = "extra_npc_001" npc_id = "32 npc_tag =" 0 npc_type = "7" />
    Árvore de X'mas em Desert Scream
    Código:
      extra_stuff <id = "0 nome" = "objeto object_fx \ \ x \ mas x-min" mastree05.efx = "-1 70,87 3 5,31 12 -2, -2 44,7 27 max =" 21 5,37 9,6 50,1 72 ,77 5 "/>       
            <Extra_entity tipo = "0" pos = "8 52 4 31 40 -1,2" rotate = "0, 0,0, 0 escala =" 1,1,1 "disable_cell_radius =" 2 "stuff_id =" 0 "/>
    Árvore de X'mas em desespero Verde
    Código:
      extra_stuff <id = "0 nome" = "objeto object_fx \ \ x \ mas x-min" mastree05.efx = "-1 70,873 - 25,31 1 2 - 2 44,7 27 max =" 2 15,37 9,6 50 , 17 7 5 2,7 "/>       
            <Extra_entity tipo = "0" pos = "2 08 24,0, 424 0" rodar = "0, 0,0, 0 escala =" 1,1, 1 "disable_cell_radius =" 2 "stuff_id =" 0 "/ >
    Event Girl – Yul
    Código:
      extra_stuff <id = "1" filename = "Caractere \ w29etc17.EBM" min = "-17 0,87 3 5,31 12 -2, -24 4,72 7 max =" 2 15,3 7 9,65 0,1 72,77 5 "/ >
            <Extra_entity tipo = "1" pos = "1 950 5,0 56 61" rotate = "0, 0,0, 0 escala" = "1, 1,1" disable_cell_radius = "1" stuff_id = "1" nome = "extra_npc_002" npc_id = "49 npc_tag =" 0 npc_type = "7" />
    Isso é tudo:)


    Para o ppl que tem problema com sincronização de arquivos cliente / servidor. Eu fiz uma ferramenta (temporário) chamado de "Cabal Enc Tool": D
    Ela irá ajudá-lo a converter os dados do ENC para SCP e vice-versa.
    Aqui está a sua imagem e um pouco de guia para utilizá-lo.
    [Tutorial]Guia para Adicionar um NPC e Configura que funcione como uma loja By XxRossxX Cabal_enc_tool
    1, os dados ENC aqui
    2, clique para converter ENC (texto em # 1) SCP (preencher # 3 e # 4 antes de clicar isso)
    3 Id NPC (tem de ser inteiro, ex 4,5,7,35 ,...)
    4 º, Item Índice Start (valor de 1 ª linha da 1 ª coluna no SCP, que será gerado)
    5, clique para converter de SCP (texto em # 7) ENC (não precisa preencher # 3, # 4)
    6, SCP nome da coluna de dados
    7, os dados aqui SCP

    Pegue aqui:CabalEncTool.exe
    Nota:
    Você deve ter. Net Framework 2.0, a fim de utilizá-lo.

    Se você tiver problema com a determinação SlotIdx (posição do item no NPC Shop), você pode verificar isso:
    [Tutorial]Guia para Adicionar um NPC e Configura que funcione como uma loja By XxRossxX Cb_shop_slot

    [size=14]TUTORIAL CREAD BY XxRossxX
    CREDITO POR ALGUMAS INSTRUÇÕES: trungnt88

    Atenção se esse Tutorial ajudou vc não se esqueça de agradeçer...


    OBS: Os Codigos estão fucionando comigo perfeitamente, caso ocontario com Vc mim mande PM que irei ajeitar o mais rapido possivel.
    By XxRosxxX


      Data/hora atual: Seg Abr 29, 2024 3:55 pm