F.A.Q Parte IV

Bienvenidos a la 4ta entrega de los FAQs.
Para quienes son nuevos, esta sección se creeo con el objetivo de dar respuestas a preguntas frecuentes, en esta oportunidad los FAQs estan orientados a las configuraciones básicas de un servidor Versión Season 6.
Más adelante agregaremos FAQs para otro tipo de versiones.

Faqs para muonline

1)¿Dónde cambio la experiencia y drop?
Ingresa a la siguiente ruta: Muserver\data\commonserver.cfg
Dentro del archivo buscas las lineas:
AddExperience = 1500
ItemDropPer = 80
Y cambias la variable numérica por la deseada, tambien debes hacer lo mismo en el archivo que se encuentra en la siguiente ruta Muserver\data\commonserverCS.cfg
2)¿Donde modifico el mensaje de bienvenida que se muestra al ingresar al juego?
Ingresa a la siguiente ruta: Muserver\GameServer\SCF_Connect.ini
Dentro del archivo busca la linea:
SCFConnectNotice=Bienvenido a www.muonlinetutoriales.com
Y modifica el mensaje por el deseado
3)¿Cómo hago a mi personaje ADMIN/GM del servidor?
Ingresa a la siguiente ruta: Muserver\GameServer\SCF_GMSystem.txt , y en campo "Name" agregamos el nombre de nuestro personaje admin/gm entre comillas, por ejemplo asi:
"Byasd"
4)Cuándo muere un personaje, se le caen los items puestos ¿Cómo quito eso?
Ingresa a la siguiente ruta: Muserver\GameServer\SCF_PvPSystem.ini
Dentro del archivo busca la linea:
PKItemDrop = 1 y modificas ese 1 por un 0. Luego reinician el servidor para que los cambios sufran efecto
5)¿Donde puedo agregar noticias que se mostrarán en diferentes tiempos dentro del juego?
Ingresa a la siguiente ruta Muserver\GameServer\SCF_News.ini y agregas tus noticias por ejemplo asi:
[News]
// News 1
SCF_News_01 = Nuestra dirección web es www.muonlinetutoriales.com
SCF_News_02 = Nuestra fan page es www.facebook.com/MuTutoriales
SCF_News_03 = Nuestro facebook es www.facebook.com/MuOnlineTutoriales



6)¿Dónde modifico los niveles para destrabar la creación de los personajes MadicGladiator,DarkLord, Summoner, RageFighter?
Ingresa a la siguiente ruta Muserver\SCFData\SCF_Character.ini
Dentro del archivo, busca las siguientes lineas:
SCFMadicGladiatorLvlReq=220
SCFDarkLordLvlReq=250
SCFSummonerLevelReq=1
SCFRageFighterLevelReq=150
Y modifica la variable numérica por el valor deseado.
7)¿Dónde modifico los puntos por nivel?
Ingresa a la siguiente ruta Muserver\SCFData\SCF_Character.ini
Dentro del archivo, busca las siguientes lineas:
[Points]
SCFMasterTreeLevelUpPoint=1

SCFNormalDLUpPoint=7
SCFNormalMGUpPoint=7
SCFNormalRFUpPoint=7

SCFCWDLMGRFUpPoint=8
SCFBCDLMGRFUpPoint=8
SCFCCDLMGRFUpPoint=8

SCFNormalGeneralUpPoint=5
SCFCWGeneralUpPoint=6
SCFBCGeneralUpPoint=6
SCFCCGeneralUpPoint=6

SCFNormalLUP_2ndChgUp=1
SCFCWLUP_2ndChgUp=1
SCFBCLUP_2ndChgUp=1
SCFCCLUP_2ndChgUp=1

SCFNormalLUP_3ndChgUpExtraPoint=1
SCFBCLUP_3ndChgUpExtraPoint=1
SCFCCLUP_3ndChgUpExtraPoint=1
SCFCWLUP_3ndChgUpExtraPoint=1
Y modifica la variable numérica por el valor deseado.
8)¿Dónde modifico el nivel máximo para recibir auras de la ElfSoldier?
Ingresa a la siguiente ruta Muserver\SCFData\SCF_Common.ini
Dentro del archivo, busca la siguiente linea:
SCFElfSoldierMaxLevel=250
Modificas la variable numérica por el valor deseado
9)Me pide 5 resets para crear una guild ¿Donde modifico eso?
Ingresa a la siguiente ruta Muserver\SCFData\SCF_Common.ini
Dentro del archivo, busca la siguiente linea:
SCFGuildResetReq=5
Modificas la variable numérica por el valor deseado
10)Me pide 5 miembros para realizar una Guild War ¿Donde modifico eso?
Ingresa a la siguiente ruta Muserver\SCFData\SCF_Common.ini
Dentro del archivo, busca la siguiente linea:
SCFGuildWarMemberReq=5
Modificas la variable numérica por la deseada
11)¿Dónde configuro los BotsBuffer en mi servidor?
Ingresa a la siguiente ruta: Muserver\SCFData\SCFBots\SCF_BotBuffer.txt
Dentro del archivo tendremos cargados los variados Bots, alli podremos configurar su posición, skill, sets que traen, etc.

Modificar el delay de los Skills

Bienvenidos a un nuevo tutorial, hoy aprenderemos a modificar el delay de los Skills.
¿Qué es el delay de los skills y para qué sirve?



El delay es el "retraso" , "tiempo" que tiene un skill para ser usado de manera consecutiva.
Tomemos un ejemplo cualquiera:
Personaje test: Un Lord Emperador
Skill test: Electric Spike
Versión test: Season 6
1)Ingresaré al juego para verificar inicialmente la existencia del delay de dicho skill.

Ingresando al juego mu online

2)En la imagen anterior, podemos ver que al usar el skill [Electric Spike] debemos aguardar unos 5 segundos para volver a usarlo, a ese tiempo entre uso y uso es al que denominamos "Delay de un skill"
Para cambiar ese delay, lo que debemos hacer es ingresar a la siguiente ruta
Muserver/data/lang/kor
Y ahora abrimos el archivo llamado Skill(kor).txt
Dentro del archivo, debemos buscar el skill a modificar, en este caso "Electric Spike"
Luego nos deslizamos horizontalmente hasta la columna "Delay" y modificamos el valor por el tiempo deseado (Dicho tiempo se mide en M/segundos, por ejemplo 5000 M/s = 5 segundos).

Modificando delay en el server

3)Yo cambiaré esos 5.000 M/Segundos por tan sólo 1M/s
Luego de modificar el archivo, guardamos los cambios y reiniciamo el servidor.

Configuración del delay

4)Lo que haremos ahora, será editar el mismo archivo pero en lado del cliente.
Entonces para eso podemos usar el Editor Online
Buscamos el archivo skill_eng.bmd (TuCliente/data/local/Eng) y editamos exactamente la misma columna con el mismo valor que editamos en el server (Recuerden que en este tutoriales estamos tomando como ejemplo una versión Season 6, y el nombre o la ruta de este archivo puede variar de acuerdo a tu versión de MuOnline)

Configuración del skil en el cliente

5)Guardamos los cambios y verificamos.

Verificando cambios de delay dentro del juego

Y efectivamente el Skill "Electric Spike" se puede arrojar sin delay, es decir, de forma consecutiva sin tener que esperar el tiempo que antes tenía.
Aclaraciones:
a)En caso de no funcionar, editen el archivo skill_spn.bmd de su cliente.
b)La guia se aplica a cualquier versión de MuOnline, lo que cambia son las rutas/nombres de los archivos.
c)En algunos servidores/versiones esto puede desconectar al usuario ya que puede ser detectado como "Speed-Hack", ese caso tendrán que deshabilitarlo desde el commonserver.cfg
d)Recuerden ingresar el mismo valor tanto del lado del servidor como del lado del cliente, no pongan valores diferentes.

LikeBox en ventana PopUP

Bienvenidos a un nuevo tutorial, hoy veremos como lanzar en una ventana Pop-Up nuestra "Fan Page" de facebook.
En la actualidad la interacción con las distintas redes sociales, como por ejemplo: Facebook, Twitter, etc. es fundamental para publicitar nuestro servidor MuOnline para que este se comparta con nuevos usuarios.



Lo que necesitamos para realizar este tutorial es:
a)Una fan page o página de Facebook ya creada
b)Una página web con acceso total (Ya que sino tienen acceso al root de la web, dificilmente podrán hacer algun tipo de modificación)
c)Lectura comprensiva.

Veamos un ejemplo del trabajo terminado:

Scrip Like box de facebook

1)Lo primero que debemos hacer es ingresar al index.php de nuestro sitio web.
Una vez dentro buscamos la etiqueta </head> y arriba de la misma copiamos el siguiente código diseñado por kakiheboh:

<style type="text/css">
#fblikepop { background-color: #fff;
    display: none;
    position: fixed;
    top: 200px;
    _position: absolute;
 /* hack for IE 6*/
    width: 450px;
    border: 10px solid #6F6F6F;
    z-index: 200;
    -moz-border-radius: 9px;
    -webkit-border-radius: 9px;
    margin: 0pt;
    padding: 0pt;
    color: #333333;
    text-align: left;
    font-family: arial,sans-serif;
    font-size: 13px;
}#fblikepop body {
    background: #fff none repeat scroll 0%;
    line-height: 1;
    margin: 0pt;
    height: 100%;
}

.fbflush {
    cursor: pointer;
    font-size: 11px !important;
    color: #FFF !important;
    text-decoration: none !important;
    border: 0 !important;
}
#fblikebg {
    display: none;
    position: fixed;
    _position: absolute;
 /* hack for IE 6*/
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: #000000;
    z-index: 100;
}#fblikepop #closeable {
    float: right;
    margin: 7px 15px 0 0;
}#fblikepop h1 {
    background: #6D84B4 none repeat scroll 0 0;
    border-top: 1px solid #3B5998;
    border-left: 1px solid #3B5998;
    border-right: 1px solid #3B5998;
    color: #FFFFFF !important;
    font-size: 14px !important;
    font-weight: normal !important;
    padding: 5px !important;
    margin: 0 !important;
    font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif !important;
}#fblikepop #actionHolder {
    height: 30px;
    overflow: hidden;
}#fblikepop #buttonArea {
    background: #F2F2F2;
    border-top: 1px solid #CCCCCC;
    padding: 10px;
    min-height: 50px;
}#fblikepop #buttonArea a {
    color: #999999 !important;
    text-decoration: none !important;
    border: 0 !important;
    font-size: 10px !important;
}#fblikepop #buttonArea a:hover {
    color: #333 !important;
    text-decoration: none !important;
    border: 0 !important;
}#fblikepop #popupMessage {
    font-size: 12px !important;
    font-weight: normal !important;
    line-height: 22px;
    padding: 8px;
    background: #fff !important;
}#fblikepop #counter-display {
    float: right;
    font-size: 11px !important;
    font-weight: normal !important;
    margin: 5px 0 0 0;
    text-align: right;
    line-height: 16px;
}
</style>
   
<script type="text/javascript" src="https://www.google.com/jsapi">

</script><script type="text/javascript">
google.load("jquery", "1");
</script><script type="text/javascript" src="https://connect.facebook.net/es_LA/all.js#xfbml=1">

</script><script type="text/javascript">
 kakinetworkdotcom01username="Mututoriales",
 kakinetworkdotcom01title="Hazte Fan!",
kakinetworkdotcom01time="4",
 kakinetworkdotcom01wait="0",
 kakinetworkdotcom01lang="es"
</script><script type="text/javascript" src="https://espacioforos.miarroba.st/1924848/webmastercv/popupfb.js">

</script><script type="text/javascript">
 $(document).ready(function(){$().kakinetworkdotcom({ closeable: true });});
</script>

2)Antes de guardar los cambios, lo primero que deben modificar es el valor de la variable
kakinetworkdotcom01username="Mututoriales",
Lo que deben hacer alli, es modificar "Mututoriales" por el nombre de nuestra página de Facebook
Y luego el contenido de la variable:
kakinetworkdotcom01time="4",
hace referencia al tiempo en el que la ventana se cerrará automáticamente, en este caso; 4 segundos.
Ustedes pueden modificar ese valor por el deseado.
Ahora si cerramos el archivo, guardamos cambios y verificamos.

Este código funciona al día de la fecha y dichas librerias fueron revisadas. Esto no implica que más adelante o luego de un tiempo el host en donde se alojan deje de funcionar o las mismas sean modificadas sin aviso previo.
En estos casos, lo que le recomendamos es descargarlas, y hacer un src. interno.

Dar items al comenzar

Bienvenidos a un nuevo tutorial, hoy aprenderemos a dar items a los personajes que recien comienzan en nuestro servidor.
Existen diversas formas de hacer esto, pero en esta oportunidad lo haremos tomando un molde del personaje editado y lo cargaremos a la base de datos.
Para este tutorial tomaré como base una versión Season 4



1)Lo primero que haremos, será crearnos una cuenta nueva, y en esa misma cuenta creamos un personaje, por ejemplo un [Dark Wizard]

Ingresando al juego mu

2)Ahora lo que haremos será crear el molde; para eso le editamos los items en el inventario/personaje.
Por ejemplo: En esta demostración le editaré un Set Legendary | +13 | Full option | +28 | Con luck
Una vez editado los items (Lógicamente ustedes pueden editar los items que deseen, tengan cuidado, recuerden que al crear un personaje nuevo este no tiene quest, por lo que algunos items al editarlos en el personaje, desaparecen al ingresar.
En ese caso esos items deberán ser editados en el inventario y no sobre el personaje)

Editando items con el mumaker

3)Lo que hacemos ahora, es ingresar al "Analizador de consultas" => MuOnline => User Tables => dbo.Character => Clic derecho y seleccionamos la opción "Open"
Ahora, buscamos nuestra cuenta, nos deslizamos hasta la columna llamada "Inventory" y copiamos su contenido:

Agregando código del items en el analizador de consultas

4)Lo que hemos copiado anteriormente es lo siguiente:
0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF036F595E6778007F0070000000000000036F591A6719007F0080000000000000036F59657D67007F0090000000000000036F59BA418E007F00A0000000000000036F59143374007F00B0000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF14081E000000000000D000000000000014101E000000000000D0000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Ese código es el inventario con el set Legendary Full editado sobre el personaje.
Lo que haremos ahora, será pegar dicho código en la columna "Inventory" de la tabla dbo.DefaultClassType.
Como el molde corresponde al "Dark Wizard", debemos trabajar sobre el inventario de la columna "Class 0", ya que como hemos visto en antiguos tutoriales, "Class=0" corresponde a la raza o clase "Dark Wizard"

Agregando el código a la base de datos

5)Guardamos los cambios y verificamos en el servidor.
Para verificar que todo este correcto, lo que haremos será crearnos un nuevo "DarkWizard" y ver con que items aparece.

Ingreso al juego para verificar cambios

6)Y efectivamente, el nuevo personaje aparece con el Set Legendary Full.
Como el personaje no tiene los requisitos del sets , estos aparecen en rojo, si el personaje se los quita no podrá ponerselos hasta que alcanze dichos requisitos.
Para que las demás razas, aparezcan con items, deberán repetir el mismo procedimiento es decir:
a)Se crean un personaje con la raza o clase deseada por ejemplo Dark Knigh [Class=16]
b)Le editan los items en el inventario / pesonaje con un editor
c)Copian el molde/código de la columna inventory de la tabla dbo.Character
d)Pegan el molde/código en la columna inventory de la tabla dbo.DefaultClassType en la class correspondiente
Les dejo las class de cada raza:
0=> Dark Wizard
16=> Dark Knigh
32=> Elf
48=> Magic Gladiator
64=> Dark Lord
80=> Summoner
96=> Rage Fighter
Adicional:
*Siempre realizen una copia se seguridad de su base de datos antes de realizar cualquier tipo de modificación en ella.
*Guarden el molde/código del "Inventory" original, ya que si en cualquier momento quieren suspender la entrega de items, necesitarán de los códigos originales.
*Antes de retirar el molde/código, verifiquen dento del juego que los items sean los deseados.

Filtro de palabras [Filter.bmd]

Bienvenidos a un nuevo tutorial, lo que aprenderemos hoy será a modificar el Filter.bmd
¿Qué es el archivo filter.bmd, para qué se utiliza y cómo funciona?
La respuesta es la siguiente: el filter.bmd es un archivo el cual se aloja en nuestro cliente en la ruta:
MiClienteMuOnline/data/local/[Filter.bmd]
y se utiliza para bloquear palabras y de esta forma evitar insultos, agresiones verbales, etc.



Su funcionamiento es bastante sencillo, las palabras ingresadas dentro del juego pasan por un filtro, si la palabra ingresada se encuentra en el listado del filter.bmd nos aparece una leyenda.
Esta leyenda puede variar dependiendo lo que tengamos en nuestro archivo text.bmd de nuestro cliente, por ejemplo en el cliente Season 4, la leyenda que aparecerá se encuentra en la linea 570 del archivo text.bmd
Veamos un ejemplo completo:

1)Ingresamos al Editor Online y abrimos nuestro Filter.bmd de nuestro cliente.
Recuerde que el archivo se aloja en la siguiente ruta:
MiClienteMuOnline/data/local/[Filter.bmd]
Editando archivo filter bmd

2)Ese listado de palabras marcadas con color rojo (son más que las que muestra la imagen, siguen abajo...), serán las que no podremos escribir dentro del juego, ya que si las escribimos nos aparecerá esa leyenda que habíamos comentado anteriormente.
Entonces, ingresaré al juego y escribiré la palabra "fuck"

Verificando en el juego el filtrado de palabras

3)Como podrán observar, cuando intente poner la palabra "fuck" aparecio la leyenda como habíamos dicho anteriormente.
Esa leyenda puede variar, en este ejemplo dicha leyenda la encontramos en la linea [570] del archivo text.bmd

Verificando en el juego

4)Entonces, en el caso de querer desbloquear alguna palabra del filtro, lo que hacemos es ingresar al archivo filter.bmd , borramos la palabra a desbloquear y guardamos los cambios.

Ingresando al juego

En el caso que quieran agregar más palabras para filtrar, lo que debemos hacer es ir al archivo filter.bmd y deslizarnos hasta la última palabra agregada y justo debajo escribimos lo que deseamos bloquear.

Agregar un chat virtual [Interactivo]

Bienvenidos a un nuevo tutorial, hoy veremos como agregar un chat virtual de modo interactivo.
Este tipo de chat permite tener una conexión virtual en tiempo real con el usuario. Generalmente este tipo de App. se aplican a sitios de ventas o empresas que ofrecen algun tipo de producto, es por eso que nosotros podemos hacer uso de esta aplicación en nuestra WebShop, de esta forma podremos conversar con nuestros usuarios sobre cualquier inquietud que tengan en relación a nuestros items/vips/etc.



Este tipo de aplicaciones son comunes en la red y existe una gama amplia a la hora de elegirlas.
En su mayoria comienzan siendo FREE (claro esta, con algunas limitaciones), y luego con el tiempo se convierten en sólo premiun o pagas. Pero hasta ese entonces podemos hacer uso de la aplicación sin problemas.
En esta oportunidad trabajaremos con https://www.zopim.com/

1)Lo primero que haremos será ingresar al sitio y registrarnos.

Ingresando a la interfaz de zopin

2)Completado los datos,nos llegará un mail para confirmar el mismo. Luego de confirmar el registro nos aparecerá una pantalla con un formulario el que debemos completar con nuestros datos de perfil; lo haremos de la siguiente manera:
First Name: Nuestro nombre
Last Name: Nuestro apellido
Display Name: Nombre a mostrar
Luego hacemos un clic en "Next"

Registro en el sitio zopin

3)En este paso nos aparecerá en pantalla un script o código.
Dicho código es el que debemos pegar en nuestro sitio, de preferencia en nuestro index.php.
El script debe estar entre las etiquetas:
<head> </head>
Obtiendo el código del chat

4)Una vez pegado el código, guardamos los cambios y verificamos.
Lo que nos debe aparecer es la ventana para iniciar el chat en la parte inferior derecha de nuestra web.

Visualizando el código del chat

5)Ahora volvemos a la página y hacemos un clic en el boton "Go to Visitor List"
Aqui podremos personalizar la ventana del "Chat", por ejemplo: En la opción "Widget" configuramos la parte estética: Colores, leyendas, etc.
En la opción "Visitor List" o "Lista de visitantes" podemos ver quienes nos visitan, asi como la URL de llegada, el país, etc...
En la opción "Personal", podemos modificar el lenguaje, para quienes no les gusta el Ingles pueden modificarlo a "Español" o al lenguaje que desean. Luego de hacer la modificación deben "Salvar/Guardar los cambios"

Personalizando el chat

6)Finalmente, lo más importante:
Cuando un usuario ingrese a nuestra web y se intente contactar con nosotros nos aparecerá un mensaje en la parte inferior izquierda de la pantalla con la leyenda de "Atender petición de 1"

Personalizando configuraciones

7)Simplemente hacemos un clic sobre dicho boton y nos aparecerá la ventana para poder comenzar el chat.

Atendiendo chat demo

Desde el panel de administración tenemos muchas funciones y configuraciones que podemos aplicar, eso quedará a gusto personal de cada uno de ustedes.

Desconectar usuarios online [Pegados]

Bienvenidos a un nuevo tutorial, hoy aprenderemos algo realmente sencillo pero práctico: "Desconectar usuarios online"
¿Para qué sirve esto y a qué se aplica?
Cuando los usuarios se conectan a nuestro servidor, la tabla "MEMB_STAT" se actualiza, pero no lo hace sola ni mucho menos, quien hace esta actualización es un procedimiento almacenado llamado WZ_CONNECT_MEMB.
Este procedimiento envia un conjunto de variables al SQL como por ejemplo la fecha de conexión, el nombre del servidor, etc y entre esas variable envia a la columna "ConnectStat" el parámetro "1".
Ese parámetro 1 es que la web identifica como "Cuenta Online" (Importante, aca no trabajamos con el personaje sino con la cuenta)



Cuando el usuario decide salir del juego, se ejecuta el procedimiento inverso/contrario/opuesto, el llamado WZ_DISCONNECT_MEMB, que lo que hará entre otras cosas, será ingresar el valor "0" en la tabla "MEMB_STAT" en la columna "ConnectStat"
Entonces, pasando en limpio lo nombrado anteriormente, cuando en la columna "ConnectStat" tenemos un "1", eso nos indica que la cuenta está Online, y cuando el valor es "0" eso nos indica que la cuenta está Offline.
Esa sería la dinámica del servidor, pero sucede que a veces el servidor es cerrado de manera brusca o repentina y el usuario no puede salir por sus propios medios, es por eso que decimos "Se pego la cuenta"
En versiones nuevas esto no trae dificultades mayores, pero si a la hora de ver los usuarios online ya que las estadísticas no serán las correctas.
Es por eso que veremos dos alternativas para solucionar el problema:

a)Si son pocos usuarios podemos hacer lo siguiente:
1)Ingresamos al "Administrador corporativo" => "Base de datos" => "MuOnline" => "Tablas" => "MEMB_STAT" => "Abir tabla" => "Devolver todas las filas"

Ingreso a la tabla del sql server

2)Lo que debemos hacer ahora, es buscar en la columna memb___id el ID o Login de la cuenta en cuestión.
Una vez localizado, en la columna siguiente, es decir, en la llamada "ConnectStat" veremos un 1, ese uno como ya hemos visto nos indica que la cuenta está conectada entonces lo que hacemos cambiamos el 1 que acompaña la cuenta por un 0.

Tabla que marca los conectados

Con eso, la cuenta estará desconectada. Como pudimos observar el procedimiento es totalmente manual, esto significa que con pocas cuentas no nos traíra mayores complicaciones, pero con 100 o 200 cuentas este proceso se puede convertir en una tarea compleja.

b)Por eso, si las cuentas conectadas o pegadas son muchas podemos hacer lo siguiente:
1)Ingresamos al "Analizador de consultas", seleccionamos como base de datos la "MuOnline" y corremos la siguiente consulta:
UPDATE MEMB_STAT
SET ConnectStat=0 where ConnectStat=1
Con esa consulta todas las cuentas serán desconectadas.

Consulta para desconectar las cuentas de la pagina del mu

*Es importante destacar que dicha consulta la debemos ejecutar antes de poner el servidor Online.
*Dependiendo la cantidad de cuentas, este procedimiento puede demorar.
*La condición where se aplica opcionalmente, ya que algun servidor puede usar dicha variable para otro uso.

Verificador de puertos online

Bienvenidos a un nuevo tutorial, aunque en esta oportunidad no se trata de una guia nueva sino vengo a dejarles un verificador de puertos.
¿Qué es y para qué sirve?
En variadas oportunidades recibimos preguntas cómo por ejemplo: "¿Tengo abierto el puerto de GameServer.exe?" "¿Cómo puedo saber si está correctamente abierto el puerto de mi web? "otras similares preguntas ..."
Es por eso que decidimos crear un simple pero práctico verificador de puertos Online, de esta forma no tendrán que instalar nada en su pc y su uso es realmente algo muy sencillo.
Veamos como se usa:

1)El primer paso será ingresar al siguiente enlace: Verificador Online

Interfaz del verificador de puertos

2)La imagen anterior muestra la interfaz del verificador.
Lo que debemos hacer es completar esos dos campos de la siguiente manera:
Ingrese su ip numérica o no-ip: Aqui lo que debemos ingresar es nuestra IP numérica, la misma la podemos observar en la página, ya que el verificador detecta la IP numerica desde donde nos estan visitando (Con esto tenemos que tener cuidado, ya que si ingresan al verificador desde otra PC que no sea la server, les detectará la IP incorrecta)
Tambien en dicho campo podemos agregar nuestra no-ip, por ejemplo asi: byasd.sytes.net
Ingrese el puerto a verificar: Aca lo que debemos hacer es ingresar el puerto que queremos saber si esta abierto o no. Por ejemplo el puerto convencional del ConnectServer.exe es el 44405
Luego hacemos un clic en donde dice "Enviar"

Si todo esta bien, les aparecerá una leyenda informando que el puerto está abierto, caso contrario les aparecerá un mensaje informando que el puerto esta cerrado.
En caso que el puerto este cerrado deberán verificar: Firewall de sistema, Firewall de Router [NAT-DMZ], antivirus instalado, etc ...
Recuerden que algunas empresas de internet bloquean los puertos, para abrirlos deben hablar con su proveedor.

Volver los stats de 65535 a 32767

Bienvenidos a un nuevo tutorial, a raíz de varias consultas hemos decidido publicar esta nueva guia.
¿De qué se trata esto?, lo que aprenderemos hacer es el paso inverso al siguiente tutorial Poner los stats en 65535
Si nosotros realizamos los pasos inversos al pie de la letra, nos encontraremos con un error ¿Por qué o cuál error?, la respuesta a continuación:
1)Lo primero que haremos será ingresar al "Administrador corporativo"

Acceso al administrador corporativo

2)Desplegamos todas las entradas hasta la llegar a la base de datos "MuOnline", seleccionamos donde dice "Tablas", luego hacemos un clic derecho sobre la llamada "Character" y seleccionamos la opción "Diseñar tabla"

Diseñando tabla character

3)Ahora lo que hacemos, es el paso inverso al tutorial anterior, es decir, seleccionamos la columna "Strength" y modificamos el tipo de datos "Int" a "SmallInt", lo mismo deberíamos hacer con las otras columnas pertenecientes a los stats, pero lo que haremos antes de eso, será intentar guardar los cambios de una sola columna y veamos lo que sucede:

Error por desbordamiento de datos

4)Lo que sucedio es el "Error" al cual habíamos anticipado anteriormente, lo que nos dice es lo siguiente:
Tabla 'Character'
- No se puede modificar la tabla.
Error ODBC: [Microsoft][ODBC SQL Server Driver][SQL Server]Error de desbordamiento aritmético para el tipo de datos smallint, valor = 65535.
[Microsoft][ODBC SQL Server Driver][SQL Server]Se terminó la instrucción.
¿Pero de que se trata este error y por qué? ¿Cómo soluciono esto?
Imaginemos que tenemos 5 litros de agua y nos piden que pongamos esos 5 litros en un vaso que tiene como máxima capacidad 1 litro ¿Qué creen que sucedería?
La respuesta sería la siguiente:
"Al pasar 1 litro no abria problemas, pero cuando querramos poner más agua comenzará a rebalsar o desbordar"




Exactamente lo mismo que sucede con el agua nos esta sucediendo aca, a diferencia que el vaso es una analogía que hace referencia al tipo de datos/longitud y el agua es otra analogía que hace referencia a los puntos contenidos en los stats (65535 / 32767).
Para solucionar esto entonces, tendremos que aplicar una querry, en dicha consulta lo que haremos será bajar a 32767 los stats de aquellos personajes que superen este número.
La consulta sería la siguiente:
UPDATE Character
set Strength='32767'
Where Strength>'32767'

UPDATE Character
set Dexterity='32767'
Where Dexterity>'32767'

UPDATE Character
set Vitality='32767'
Where Vitality>'32767'

UPDATE Character
set Energy='32767'
Where Energy>'32767'

UPDATE Character
set Leadership='32767'
Where Leadership>'32767'
Esta consulta la pegamos en el "Analizador de consultas" seleccionando la base de datos "MuOnline" y apretamos F5
[Recuerden siempre de hacer un backups o copia de seguridad]
Esta consulta puede demorar dependiendo la cantidad de personajes.

Querry SQL para bajas los stats

4)Y ahora si podemos volver a realizar lo que anteriormente no pudimos, es decir lo que detalla el paso número 3)
Entonces ingresaremos al diseño de la tabla "Character" y modificaremos el tipo de datos "Int" a "SmallInt" en las columnas Strength,Dexterity,Vitality,Energy y si tu versión utiliza "DarkLord" no se olviden de la colmuna Leadership

Editando la tabla character

Y finalmente podremos guardar los cambios sin error alguno.
Recuerde hacer las modificaciones en sus files.

Observación final:
Por un lado, esta es una solución rápida pero por el otro lado no sería muy justa
¿Por qué esta solución no es justa?
Porque pensemos lo siguiente, si tenemos un personaje con sus stats en 32768 y tenemos otro personaje con 65535 en en sus stats, ambos tendrán después de la consulta [Querry], "32767" eso quiere decir que ambos serán fulles tanto el que tenía 32768 como el que tenia 65535.
Para evitar esto abría que hacer hacer un pasaje de datos complicado, por ejemplo saber que equivalencia podríamos darle a cada valor si el limite máximo es 32767, es decir, tendríamos que armarmos un pasaje de datos referencial.

Reiniciar el servidor [Resets]

Bienvenidos a un nuevo tutorial, en tutoriales anteriores aprendimos a reiniciar las clases o razas en nuestro servidor conservando el resto de los datos.
Un usuario nos escribio a consultas@muonlinetutoriales.com para saber de que modo podría él reiniciar solamente los resets de su servidor conservando los demas datos.
Si bien la respuesta era bastante sencilla, puede dificultar a aquellos usuarios que recien se inician.



Entonces comenzemos:
1)Existen varias formas de reiniciar los datos contenidos en una columna, es este caso en la llamada "Resets", dicho trabajo lo podemos hacer mediante:
a)Una querry
b)Un job
c)O talvez, la más rápida o sencillo sería borrando la columna y volviendola a crear (Es importante saber que al hacer esto, eliminamos todas las propiedades de dicha columna, como por ejemplo: "El valor predeterminado")
Como en el anterior tutorial "Reiniciar el servidor [Class] lo hicimos desde una querry en el analizador de consultas, repetiremos el mismo esquema:
Lo primero que haremos será abrir el analizador de consultas, el mismo lo encontramos en Inicio => Microsoft SQL Server => Analizador de consultas

Analizador de consultas

2)Lo que hacemos ahora es loguearnos con nuestros datos del SQL y seleccionamos la base de datos MuOnline

Selección de base de datos MuOnline

3)Ahora copiamos la siguiente querry y la pegamos en el campo de texto
UPDATE Character SET resets=0
Para ejecutar la querry apretamos F5
Dependiendo la cantidad de personajes esta consulta puede demorar.

Ejecutando querry

4)Y finalmente todos los personajes volverán a tener 0 Resets

Ejemplificación

Información adicional:
a)Siempre debemos realizar una copia de seguridad antes de cualquier modificación.
b)La columna "Resets" puede tener otro nombre dependiendo los files.
c)Como abrán podido observar no usamos condicionales , pero si desean pueden agregarlos a la querry, eso ira de acuerdo a la necesidad específica de cada usuario.

Personalizar el login del cliente

Bienvenidos a un nuevo tutorial, hoy aprenderemos a modificar o personalizar el cuadro en donde ponemos nuestros datos para ingresar al servidor.
Veamos la siguiente imagen para saber de que se trata:

Interface del cliente

1)Lo primero que haremos, sera buscar el archivo login_back.ozt en nuestro cliente, el mismo se aloja en la siguiente ruta MiClienteMuOnline/Data/Interface
Una vez localizado lo copiamos y lo pegamos en nuestro escritorio (La idea de esto es no trabajar sobre el original sino con una copia, ya que si algo sale mal no necesitamos volver a descomprimir el cliente)

Archivo ozt

2)Nuestro siguiente paso, será convertir el archivo login_back.ozt en login_back.tga, para esto pueden usar cualquier convertidor, en nuestro pack de archivos encontrarán varios.
Una vez convertido, lo abrimos con el Photoshop y lo editamos a gusto.
Terminada la edición, guardamos el archivo con el mismo formato, el .tga

Edición del archivo en photoshop

3)Ahora simplemente lo que hacemos, es volver a convertir el archivo login_back.tga en login_back.ozj y pegamos ese archivo en la siguiente ruta MiClienteMuOnline/Data/Interface
(Recuerde que si quieren conservar el original no deben reemplazarlo)
El resultado será el siguiente:

Verificando los cambios dentro del cliente

Si necesitas saber como editar cualquier parte del cliente, sólo debes escribirnos a consultas@muonlinetutoriales.com para que publiquemos el tutorial.

Reiniciar el servidor [Class]

Bienvenidos a un nuevo tutorial, no fue hace mucho que nos consultaban como reiniciar o resetear las razas/clases/quest o como quieran denominarlo.
¿Qué significa esto?
Significa que por el ejemplo el Soul Master o Gran Master vuelva a ser Dark Wizard, es decir, que todos los personajes del server vuelvan a su raza original o de inicio.



Si son "muy" pocas cuentas, este procedimiento se puede realizar de forma manual pero quienes acceden a esto es porque seguramente ya tienen muchas cuentas, por lógica; muchos personajes.
1)Comenzemos, lo primero que necesitamos saber es como se organizan las clases, en tutoriales anteriores ya lo hemos visto, la raza o clase del personaje no se guarda en nuestra base de datos a través de su nombre, sino a través de un número, el listado es el siguiente:
0=> Dark Wizard
1=> Soul Master
2=> Gran Master
16=> Dark Knigh
17=> Blade Knigh
18=> Blade Master
32=> Elf
33=> Muse Elf
34=> Hight Elf
48=> Magic Gladiator
49=> Duel Master
50=> Duel Master
64=> Dark Lord
66=> Lord Emperor
65=> Lord Emperor
80=> Summoner
81=> Bloody Summoner
82=> Dimension Master
96=> Rage Fighter
97=> Rage Fighter
98=> First Master
Para quienes quieran verificar esto, pueden hacer lo siguiente, ingresar al server/editor, verificar la clase o raza y luego ingresan al SQL=>Character=>Abrir Tabla=>Devolver todas las filas.
Ahora lo que debemos buscar es al personaje y luego deslizar el scroll horizontal hasta la columna llamada "Class", en mi ejemplo yo tengo un Blade Master en el juego y verificaré si efectivamente la raza responde al número [18] teniendo en cuenta el listado de arriba.

Columna class de la tabla character

2)Y efectivamente mi personaje Blade Master responde correctamente a la Class=18
Entonces, lo que debemos hacer ahora es una simple querry para que mi Blade Master vuelva a ser Dark Knigh y atención, tambien debemos hacer lo mismo si nuestro personaje es un Blade Knigh.
Entonces como sabrán, son 2 evoluciones por RAZA, (Siempre y cuando tu versión sea superior a Season 3) es por eso que debemos tener en cuenta ese concepto.
Entonces gráficamente lo que deberíamos hacer es lo siguiente:
Las razas 1 y 2 , volverlas a raza 0
Las razas 17 y 18, volverlas a raza 16
Las razas 33 y 34, volveras a raza 32
Las razas 49 y 50, volverlas a raza 48
Las razas 65 y 66, volverlas a raza 64
Las razas 81 y 82, volverlas a raza 80
Las razas 97 y 98, volverlas a raza 96
Para realizar este procedimiento, debemos abrir nuestro "Analizador de consultas" y seleccionar como base de datos a la "MuOnline"

Interfaz del analizador de consultas

3)Y luego, en el campo del código pegamos las siguientes querrys [Importante: antes de ejecutar esto realizen una copia de seguridad de la base de datos]
UPDATE Character set class='0' where class='1' or class='2'
UPDATE Character set class='16' where class='17' or class='18'
UPDATE Character set class='32' where class='33' or class='34'
UPDATE Character set class='48' where class='49' or class='50'
UPDATE Character set class='64' where class='65' or class='66'
UPDATE Character set class='80' where class='81' or class='82'
UPDATE Character set class='96' where class='97' or class='98'
Luego apretamos F5 o hacemos clic en el boton "Ejecutar consulta"

Ejecutamos la querry para modificar las clases

Y finalmente podrán verificar que en nuestro SQL o en el juego sólo tendremos personajes sin ninguna evolución.
Las querrys son aplicables a cualquier versión, no importa sino tienes 3era quest, ya que usamos la condición "OR" para verificar las posibles razas.
Adicional:
a)Siempre realizen un backup o copia de seguridad antes de realizar modificaciones en la DB.
b)Esto sólo resetea la RAZA o CLASE (class) del personaje, no resetea puntos de skill tree, árbol de habilidades, magias/skills u otros...
c)Antes de realizar esto deberán informarles a sus usuarios que deben quitarse todos los items que el personaje tenga puesto, ya que cuando ingresen al server, estos pueden desaparecer.
d)En el caso de tener muchos personajes, esta consulta puede demorar un tiempo significativo acorde a la cantidad de personajes (No de cuentas)
e)Para ejecutar estas querrys deben tener el servidor Offline
f)No todos los files existentes manejan la misma codificación de números/class.

Personalizar nuestro main.exe [Textos]

Bienvenidos a un nuevo tutorial, como lo habíamos prometido en el anterior tutorial hoy veremos la forma de personalizar los textos de nuestro main.exe
Alguno se preguntará ¿Cuáles son los textos del main.exe?, la respuesta en la siguente imagen:

Archivo main

1)Lo que aprenderemos a modificar son esos textos que aparecen en la imagen anterior, ellos son:
Main y WebZen
Tambien veremos como modificar la versión y otros textos que aparecen al hacer clic derecho => Propiedades.
Lo primero que haremos será abrir el main.exe con el programa con el que hemos trabajado en el tutorial anterior Pesonalizar nuestro main.exe [Logos]

Interfaz del resource hack

2)Del lado izquierdo, seleccionamos la opción "Versión info" y desplegamos todas las entradas

Personalizando los textos del ejecutable

3)Como ya han podido observar, del lado derecho tenemos todo el código el cual podemos editar.
Es importante tener mucho cuidado con la edición ya que no debemos borrar parte del código sino después no vamos a poder compilarlo.
En este caso y particularmente realizé las siguientes modificaciones:
VALUE "CompanyName", "www.muonlinetutoriales.com"
VALUE "FileDescription", "by asd"
Simplemente haré esas dos modificaciones, ustedes lógicamente pueden modificar el archivo a gusto.
Terminada la modificación, hacemos un clic en el boton "Compile Script" y luego guardamos los cambios.
El resultado será el siguiente:

Verificando los cambios en main ejecutable

Con eso ya tendremos editado nuestros textos.
Importante: Esta función no tiene como objetivo quitarle los créditos a las aplicaciones, sino de darle un poco de personalidad.

Personalizar nuestro main.exe [Logos]

Bienvenidos a un nuevo tutorial, hoy aprenderemos a personalizar nuestro main.exe modificando el icono de la aplicación.
Para esto usaremos una fantástica herramienta llamada Resource Hacker, dicho programa nos ayudará a personalizar nuestro main.exe (o cualquier aplicación .exe, por ejemplo el "Luncher") de una forma realmente muy sencilla.



1)Lo primero que haremos será ingresar a la siguiente URL https://www.angusj.com/resourcehacker/
Ahora, nos deslizamos hasta el final y hacemos un clic en donde dice [Setup File 730kb] o donde dice [EXE install (2.9MB)]

Descarga del Resourse hack

2)Una vez descargado el programa, lo instalamos (La instalación la realizan de modo normal)
Terminada la instalación, abrimos el programa.
Veremos algo similar a lo siguiente:

Interfaz del programa

3)El siguiente paso será ir "File => Open" [Control+O] y seleccionamos nuestro .exe a modificar, en mi caso el main.exe
Una vez abierto, veremos algo similar a lo siguiente:

Abriendo archivo a editar

4)En este caso, sobre el lado izquierdo veremos diferentes carpetas (Depende de la edición de su .exe esta cantidad puede variar)
Nos concentraremos en la primera carpeta [Icon], dentro de dicha carpeta tenemos todos los iconos que utiliza la aplicación main.exe, veamos uno:

Visualizando icono del ejecutable

5)Es importante saber y conocer que la aplicación main.exe trabaja con diferentes tamaños/bits/etc, esto lo podemos ver en la opción "Icon Gruop" => "101" => "1042"
En mi caso el grupo de iconos que utiliza mi main.exe son los siguientes:
32 x 32 (16 colors) - Ordinal name: 1
48 x 48 (256 colors) - Ordinal name: 2
32 x 32 (256 colors) - Ordinal name: 3
16 x 16 (16 colors) - Ordinal name: 4
Entonces para poder remplazar ese resource, necesitamos respetar dichas características.
Para modificar ese grupo de iconos vamos a utilizar el IcoFx el que pueden descargar desde la siguiente URL https://icofx.ro/
Una vez descargado, lo instalamos y abrimos con el programa nuestro main.exe, nos aparecerá una ventana como la siguiente.
Hacemos un clic en el boton "Extraer"

Interfaz del icoFX

6)Lo que hemos hecho ahora, es extraer el grupo de íconos que contiene el main.exe, esto nos permitirá editarlos de forma individual.
Una vez que terminamos la edición, lo que haremos será guardar la imagen en formato .ico
El siguiente paso será volver al Resourse Hacker, sobre la carpeta "Icon Group" hacemos un clic izquierdo (Para marcarla) y nos vamos a donde dice "Action" => "Remplace Icon..."

Reemplazando icono en el resource

7)En nuestra nueva ventana, hacemos un clic en donde "Open file with new icon ..." , seleccionamos el archivo .ico creado anteriormente y hacemos un clic en "Remplace"

Salvando cambios

8)Como ya podrán observar los íconos han sido modificados por los nuestros, simplemente lo que debemos hacer ahora es guardar los cambios y verificar el trabajo realizado.
Para guardar los cambios, vamos a File => Save [Control+S] y para verificar los cambios buscamos el .exe
Atención, sino vemos los cambios, hacemos clic derecho y ponemos actualizar, o reiniciamos la pc (En el caso que no actualize)
El resultado será el siguiente:

Verificando el trabajo terminado

Y con eso ya tenemos nuestro propio main.exe personalizado con nuestro ícono.
En el próximo tutorial veremos como modificar las leyendas o descripción del .exe usando el mismo programa.
Adicionales:
a)Si van a encriptar el main.exe es mejor que este cambio lo realizen antes de la compresión.
b)Si el main.exe ya está encriptado, es posible que tengan varios errores al aplicar este tutorial
c)El autor nos informa que el programa tiene soporte desde Windows 95 hasta Windows 7, no hay referencia sobre Windows 8 o Windows 10.