Jump to content

Santy!.

Miembro
  • Contador contenido

    181
  • Ingreso

  • Última visita

  • Días ganados

    7

Mensajes publicados por Santy!.

  1. Hola aqui les dejo este system interesante:

     

    Funcion:

     

    Primero En cada registro el nombre del jugador en el chat premium de GM en la pantalla.

    Segundo Jugadores Premium pueden abrir la tienda no es un jugador normal puede abrir.

    Tercera Todos se inclinan a editar libremente y con naturalidad.

     

    premium_user:

     

    quest premium_user begin
        state start begin
    	    when login with pc.getqf("premium_user")==1 and not npc.is_pc() begin
    		    notice_all("".. pc.get_name() .." ist Online")
    	    end
    	    when ITEM VNUM.use with pc.getqf("premium_user")==1 and not npc.is_pc() begin
    		    say_reward("Du hast schon dein Premium Mitglied!")
    		    say("Willst du es Wirklich umsonst Verschwenden?!")
    		    say("Verkauf es lieber ;D")
    	    end
    	    when ITEM VNUM.use begin
    		    say_title("ExampleMT2-Team")
    		    say("")
    		    say("Mit diesem Item kannst du den Premium Status")
    		    say("aktivieren. Der Premium Status bleibt")
    		    say("Permanent! Du Kannst dieses Item nur einmal")
    		    say("benutzen. Also entscheide Weise")
    		    say("")
    		    say_title("Willst du den Premium Status Aktivieren?")
    			
    		    local s = select("Ja", "Nein")
    				
    		    if s == 1 then
    			    say("Herzlich Glückwunsch!")
    			    say("Du bist jetzt ein Premium Mitglied!")
    			    say("Nutze das Premium Shop beim Weißen Löwen!")
    			    say_reward("Bei jedem Login wird dein Online Status")
    			    say_reward("im GM-Chat angezeigt!")
    			    pc.remove_item(ITEM VNUM, 1)
    			    pc.setqf("premium_user", 1)
    		    else
    			    return
    		    end
    	    end
        end
    end 
    

    Premiumshop:

    quest premium_shop begin
        state start begin
    	    when login with pc.getqf("premium_user")==1 and not npc.is_pc() begin
    	    end
    	    when NPC VNUM.chat."Premium Shop" with pc.getqf("premium_user")==0 begin
    		    say_title("Mrs.Since")
    		    say("")
    		    say("Hallo, fremder ich bin Mrs.Since")
    		    say("Ich habe vom ExampleMT2 Team den Auftrag bekommen")
    		    say("die Auserwählten Spieler zu unterstützen.")
    		    say("Zur zeit bist du leider keiner der Auserwählten")
    		    say("dies kannst du jedoch ändern, in dem du dir einen")
    		    say("Premium Schein besorgst. Diesen bekommst du")
    		    say("unter anderem im Itemshop")
    		    say_reward("!!FALLS DU DOCH EIN PREMIUM MITGLIED BIST,")
    		    say_reward("DRüCK AUF OK UND VERSUCHE ES NOCHMAL!!")
    	    end
    	    when NPC VNUM.chat."Premium Shop" with pc.getqf("premium_user")==1 begin
    		    say_title("Mrs.Since")
    		    say("")
    		    say("Hallo, Auserwählter ich bin Mrs.Since")
    		    say("Ich habe bereits auf dich gewartet!")
    		    say("Das ExampleMT2 Team hat mir gesagt das du kommst")
    		    say("Ich habe die Aufgabe bekommen, dich zu unterstützen.")
    		    say("Bedien dich in meinem Shop. Hier findest du dinge,")
    		    say("für die du sonst hart arbeiten musst")
    		    say("")
    		    say_title("Willst du etwas kaufen?")
    			
    		    local s = select("Ja", "Nein")
    				
    		    if s == 1 then
    			    npc.open_shop(SHOP VNUM)
    		    else
    			    return
    		    end
    	    end
        end
    end 
    

    Espero que les guste!.

    Creditos:

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Imagen enviada

  2. Hola para esto antes que nada devemos tener el auto.sh que postie.

    Teniendo eso instlado procedemos a la instalacion del autoborrado.

    vamos a la carpeta home/game abrimos nuevo texto y le ponemos de nombre

    borrar.sh

    adentro de hay meteremos lo siguiente:

     

    #############################################################################
    #metin2calify.com#######################################################
    #############################################################################
    SERVER_NAME=./clear.sh
    while ( : ) do
      DATE=`date`
      echo "autogame starting game $DATE" >> syslog
      echo "running" $SERVER_NAME >> syslog
    #  cp -f $SERVER_NAME $SERVER_NAME.current
      $SERVER_NAME
      rm cores/core.1
      mv cores/cores.2 cores/cores.1
      mv cores/cores.3 cores/cores.2
      mv cores/cores.4 cores/cores.3
      mv cores/cores.5 cores/cores.4
      mv cores/cores.6 cores/cores.5
      mv $SERVER_NAME.cores cores/cores.6
      if [ ! -r .fastboot ]; then
    	    sleep 3
      else
    	    rm .fastboot
    	    sleep 3
      fi
      if [ -r .killscript ]; then
    	    DATE=`date`;
    	    echo "autoscript killed $DATE"  >> syslog
    	    rm .killscript
    	    exit
      fi
      while [ -r pause ]; do
    	    sleep 60
      done
    done
    

    hecho eso guardamos y salimos.

     

    ahora presisamos 1 archivo que borre los log que algunos files ya lo poceen pero por las dudas:

     

    abrimos texto y de nombre le pondremos:

    clear.sh

    y meteremos lo siguiente:

     

    #!/bin/sh
    cd ./g1/auth
    ./clear_logs.sh
    cd ../db
    ./clear_logs.sh
    cd ../../channel1
    ./clear_logs.sh
    cd ../channel2
    ./clear_logs.sh
    cd ../game99
    ./clear_logs.sh
    sleep 1
    cd ..
    

    los archivos son editable segun cuantos chanel etc.

     

    ahora crearemos en cd /home/game una carpeta llamada cores adentro de ella crearemos 6 mas llamadas:

    cores.1
    cores.2
    cores.3
    cores.4
    cores.5
    cores.6
    

    le damos permiso 777 a todo lo hecho y editaremos el auto .sh:

     

    2*)
    echo -e "\033[31m Starting Database ..\033[0m"
    cd ./g1/db/
    ./auto.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Auth ..\033[0m"
    cd ../auth
    ./auto.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 1 ..\033[0m"
    cd ../../channel1/
    ./auto.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 2 ..\033[0m"
    cd ../channel2/
    ./auto.sh &
    sleep 2
    clear
    cd ../game99/
    ./auto.sh &
    sleep 2
    clear
    cd /home/game
    ./borrar.sh &
    sleep 2
    clear
    echo -e "\033[32m \n Server wurde gestartet!\033[0m"
    ;;
    

    como pueden ver es solo lo de ch 2 le debemos meter esta fraccion:

     

    cd /home/game
    ./borrar.sh &
    sleep 2
    clear

    quedándonos algo asi:

    ej script completo:

     

    #!/bin/sh
    
    echo -e "\033[31m 
    Wie viele Channels möchtest du starten ? \n
    1 - (1) Channel\n
    2 - (2) Channels\033[0m"
    read chs
    case $chs in
    1*)
    echo -e "\033[31m Starting Database ..\033[0m"
    cd ./g1/db/
    ./db &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Auth ..\033[0m"
    cd ../auth
    ./auth &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 1 ..\033[0m"
    cd ../../channel1/
    ./game &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 99 ..\033[0m"
    cd ../game99/
    ./game &
    sleep 2
    clear
    echo -e "\033[32m \n CH1 wurde gestartet!\033[0m"
    ;;
    2*)
    echo -e "\033[31m Starting Database ..\033[0m"
    cd ./g1/db/
    ./auto.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Starting Auth ..\033[0m"
    cd ../auth
    ./auto.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 1 ..\033[0m"
    cd ../../channel1/
    ./auto.sh &
    sleep 2
    clear
    echo -e "\033[31m \n Starting CH 2 ..\033[0m"
    cd ../channel2/
    ./auto.sh &
    sleep 2
    clear
    cd ../game99/
    ./auto.sh &
    sleep 2
    clear
    cd /home/game
    ./auto.sh &
    sleep 2
    clear
    echo -e "\033[32m \n Server wurde gestartet!\033[0m"
    ;;
    esac
    

    Guardamos y iniciamos el sv recuerden que para esto tienen que tener el auto.sh ya puesto.

    ya que la función de esto viene una ves que se cae el sv los borrara.

    espero que les aya gustado.

    no cabe decir que mis guías son únicas de este foro no de ningún otro.

  3. prueva asi santos:

    la puse en 1 npc y que pida yang :D funciones segun mis files a declarar:

     

    item_revision
    mt2panamera_coins.item_revision
    os.execute
    pc.get_account_id
    

    ---------------------------------------------
    --Quest realizada por ElRaulxX
    --Exclusiva de Metin2 Panamera y Metin2 Zone
    ---------------------------------------------
    quest mt2panamera_coins begin
    state start begin
    when 20087.chat."Comprar coins" begin
    ---------------------------------------------
    local mysql_user = ""; --Usuario DB
    local mysql_pass = ""; --Contraseña DB
    ---------------------------------------------
    coins = {
    [id_item1] = { "Moneda de Oro", 100},
    [id_item2] = { "Moneda de Plata", 50},
    [id_item3] = { "Moneda de Bronce", 25}
    }
    say_title(""..coins[item.get_vnum()][1].."")
    say("Si utilizas esta moneda puedes obtener una")
    say("determinada cantidad de coins canjeables en la")
    say("ItemShop del servidor.")
    say("Con esta "..coins[item.get_vnum()][1].." obtendrás "..coins[item.get_vnum()][2].." coins.")
    say("")
    say("¿Quieres canjear la moneda por "..coins[item.get_vnum()][2].." coins?")
    local s = select("Si","No");
    if s == 1 then
    if pc.change_money() < 100000000 then
    say("no tienes fondos")
    return
    end
    if pc.change_money() > 99999999 then
    if mt2panamera_coins.item_revision(item.get_count()) == true then
    os.execute("mysql -u '"..mysql_user.."' --password='"..mysql_pass.."' --execute='UPDATE account.account SET coins = coins + "..coins[item.get_vnum()][2].." WHERE id = "..pc.get_account_id()..";'")
    say_title(""..coins[item.get_vnum()][1].."")
    say("¡Felicidades!")
    say("Has obtenido "..coins[item.get_vnum()][2].." coins.")
    say("Entra en la ItemShop de nuestro servidor para")
    say("canjearlas.")
    item.remove()
    elseif mt2panamera_coins.item_revision(item.get_count()) == false then
    chat("ERROR")
    else
    chat("ERROR")
    end
    else
    return
    end
    end
    function item_revision(count)
    if count >= 1 then
    if item.get_vnum() == 0 or item.get_vnum() == nil then
    return false
    else
    return true
    end
    elseif count < 1 then
    return false
    else
    return false
    end
    end
    end
    end
    end
    
  4. esta maso quedaria mejor en una npc:

    quest global begin
       state start begin
    when 9001.chat"anunciar" whth pc.get_level() >90 begin
    				 say_reward("Hola "..pc.get_name()..")
    				 say("Si quieres mandar un mensaje te costara 10kk")
    				 say("Quieres mandarlo?")
    				 local text = select("Si","No")
    				 if text = 1 then
    						if pc.get_gold() < 10000000 then
    						   say("No tienes suficiente dinero")
    						   return
    						   end
    						   say("Escribe el mensaje")
    						   local notice_text = input()
    						   notice_all(""..pc.get_name()..", level "..pc.get_level().." quiere decir lo siguiente:")
    						   notice_all("..notice_text)
    						   pc.changegold(-10000000)
    				   end
    	 if text = 2 then
    say("okas bye")
       end
       end
    end
    
  5. Buenas a todos anoche me puse a investigar el archivo comom_drop_item y le he sacado la ficha y me decidi a enseñarles para que no saven cual es aqui una foto:

     

     

    Imagen enviada

     

    Para los que no saven que funcion cumple este archivo aqui una mini explicacion:

    Alguna ves has intentado meter drop y no te a salido bueno eso es por que si no lo tienes en este archivo nunca os va salir jaja.

     

    Bueno aqui la explicasion:

     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    este nombre chino significa el nombre del grupo.

    Imagen enviada la cantidad de item que tirara.

    Imagen enviada este no se de que es.

    Imagen enviada el porcentaje.

    Imagen enviada el id del item.

    Imagen enviada nueva mente el numero del item.

     

    Pero ustedes miran esto y dicen y por donde mierda empieso la nueva linea jajaj bueno

    yo os recomiendo empesarla de arriva siempre aser 1 item y saltar al renglon de abajo ejemplo:

     

    Imagen enviada

     

    aca se los pego en codigo para que lo puedan copiar y pegar y modificar :P

     

    Àü¿î¼Â® 1 15 1.8 71084 71084
    1 15 1.32 28030 28030
    1 15 1.2 28037 28037
    1 15 1.104 28031 28031
    1 15 1.104 28033 28033
    1 15 1.06 11890 11890
    1 15 1.06 11890 11690
    1 15 1.06 11890 11490
    1 15 1.06 11890 11290
    1 15 1.06 11890 11880
    1 15 1.06 11890 11680
    1 15 1.06 11890 11480
    1 15 1.06 11890 11280
    

    Acuerdense que siempre es [tab] y no se preocupen si 1 le queda atras de otro les andara igual espero que les aya quedado en claro como hacer el drop y suerte!

×
×
  • Crear nuevo...