101Level - Foro

[Guía] Crear actualizador Neoncube

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Sero

  • *
  • 1.654
  • 55
  • Actividad:
    0%
  • Sexo: Masculino
  • Dale click al angelito o te perseguiré eternamente
[Guía] Crear actualizador Neoncube
« en: 02 de Agosto de 2012, 23:20 »
[Guía] Crear actualizador Neoncube
Idea Original: 2Wire
Re-edición: Sero
Nuevas cosas añadidas: Sero


Requisitos:

-Tener un servidor (?)
-Tener conocimientos básicos de computación
-Tener Paciencia


Descripción de Neoncube

Neoncube es un programa actualizador que permite a los usuarios de un  determinado servidor, descargar las modificaciones que el Administrador o Programador haga en el cliente de dicho servidor, ya sea de sprites, palletes, textures, books, AI's, models, mapas y demas archivos de texto o xml's.
Su principal ventaja es que NO necesita un servidor FTP para funcionar, lo cual lo vuelve un programa muy versátil, por su contra parte tiene la desventaja de no poderse modificar a el mismo (para el cambio de Styles, Skins), y no puede modificar o reemplazar el EXE por uno nuevo


Ultima Actualización de Neoncube (Jikari Patcher)
Neoncube dejo de actualizar en el 2006 (realmente el programa estaba muy completo no necesitaba muchos cambios), así que un programador muy conocido llamado Jikari cambio el nombre de Neoncube a Jikari Patcher y le agrego nuevas funciones.


Descargas

Neoncube

Jikari Patcher


Configurando el Neoncube


Luego de desgargar el Neoncube descomprimelo en la carpeta de tu preferencia (Les recomiendo que para configurarlo lo introduzcan en una carpeta vacía), luego iremos a la sub-carpeta "neoncube", en ella localizaremos el archivo neoncube.ini, lo abriremos y nos saldrá algo semejante a esto:

Código: [Seleccionar]

;##############################################################################
;## NEONCUBE - RAGNAROK ONLINE PATCH CLIENT
;##
;##  http://openkore.sourceforge.net/neoncube
;##  (c) 2005, 2006 Ansell Cruz a.k.a Meowmix Publicar emails esta prohibido en DivineRO y se castiga con penas de baneo permanente del foro, este mensaje ha sido enviado a un administrador para que aplique la sancion)
;## 
;##  This program is free software; you can redistribute it and/or modify
;##  it under the terms of the GNU General Public License as published by
;##  the Free Software Foundation; either version 2 of the License, or
;##  (at your option) any later version.
;##
;##  This program is distributed in the hope that it will be useful,
;##  but WITHOUT ANY WARRANTY; without even the implied warranty of
;##  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;##  GNU General Public License for more details.
;##
;## You should have received a copy of the GNU General Public License
;##  along with this program; if not, write to the Free Software
;##  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
;##
;###############################################################################

; neoncube.ini
;
; -- [server] section
; server_name = Server's name (EG: Korean Ragnarok Online, International Ragnarok Online, mRO, aeRO, etc)
; notice_url = URL of the HTML notice (without the http://) (EG: [url=http://www.domain.com/notice.php]www.domain.com/notice.php[/url])
; patch_site = hostname/IP of the HTTP patch server (where the files will be downloaded) (EG: [url=http://www.patchserver.domain.com]www.patchserver.domain.com[/url])
; patch_port = port number (1-65535). If omitted, defaults to 80.
; patch_list = absolute path to the patchlist text document, in patch_site (EG: /path/to/patchlist.txt, which forms the URL http://www.patchserver.domain.com/path/to/patchlist.txt)
; patch_folder = path to the folder which contains the patch files, in patch_site (EG: /path/to/folder/which/contain/patches/)
; executable = program to be launched when the "start game" button has been pressed (EG: ragexe.exe)
; registration_link = URL to launch when the user clicks the registration link (EG: http://www.domain.com/register.php). The associated program will be used to view the page.
; grf = grf file (EG: adata.grf)
; skin = skin to use (EG: default_skin). See the neoncube folder for a list of choices
; Backup_GRF = set to 1 if you want to backup the GRF file before applying the patch. 0 to disable.
; startup_option = [1] Can start the ragnarok client anytime.
;     (patcher is still downloading files, patcher failed to connect, patcher failed to extract, etc).
;   [2] Can start the ragnarok client only AFTER the patch process has completed
;     (if it fails to connect/download a patch, it won't start).
;   [3] Can start the ragnarok client only AFTER the patch process has completed
;     (if it fails to connect/download a patch. it WILL start). *recommended*
;
; -- [general] section
; debug_mode = set to 1 to leave a the downloaded patch list as tmp.nc. If omitted, defaults to 0
; keep_patches = <not implemented yet>
; archive_passphrase    = archive passphrase, e.g. for RAR passworded files
;
; -- [network] section
;
;

[server]

server_name = Server's name
notice_url = openkore.sourceforge.net/neoncube/
patch_site = TAIYAKI
patch_port = 80
patch_list = /patchlist.txt
patch_folder = /

executable = c:\windows\np.exe
registration_link = http://ragnarok.co.kr/

skin = skin_default

grf_file = adata.grf
Backup_GRF = 1
startup_option = 3

[general]

;debug_mode = 0
archive_passphrase = American Idiot


En este archivo todo lo que este delante de un ; será ignorado, por lo general es usado para referencias o créditos, todo lo demás es lo que modificaremos, aquí le daré una breve descripción de cada apartado a modificar:

server_name: Es el nombre de el servidor, lo que pongas aquí aparecera en la barra de tareas cuando se abra programa.

notice_url: Es el documento HTML o PHP donde publicas los cambios que haces a tu cliente, o las noticias de tu servidor. Aparece en el cuadro grande de Neoncube.

patch_site: Es el sitio web donde donde subes tus actualizaciones, sean RAR o GPF

patch_port: Es el puerto por el cual se conectara el neoncube para descargar las actualizaciones, por default en la mayoria de las webs 80

patch_list: Es la lista con todas las actualizaciones que se van a descargar de tu servidor web.

patch_folder: La carpeta dentro de tu website donde guardas los parches y la lista de parches.

executable: El ejecutable de el cliente, o sea, con el que te conectaras al servidor.

registration_link: Es la URL o direccion web donde la gente podra crear una cuenta para entrar a tu servidor (el Control Panel).

skin: El skin, tema o mascara que usaras para tu Neoncube. Viene varios incluidos, pero si gustas, puedes crear tus propios skins.

grf_file: El GRF (en caso de que uses) de tu servidor. Si no usas, deja como default el que viene.

Backup_GRF: Esta opcion es para que se guarde un respaldo de tu anterior GRF antes de hacer las modificaciones (coloca un 1 si quieres que haga un respaldo, un 0 sino).

startup_option: El metodo en que Neoncube abrira tu cliente. Si pones un 1, Neoncube abrira tu cliente sin importar si aun no descarga las actualizaciones, o si esta a medio proceso. Si pones 2, el cliente se abrira solo cuando se completen las actualizaciones, si fallan, no se abrira. Si pones 3, el cliente se abrira solo cuando se completen las actualizaciones, sin embargo, si falla, si se abrira. Esta ultima es la opcion mas recomendable.

debug_mode: Sirve para dejar la patch list descargada como un  tmp.nc, si quieres desactivarla pon un 0

archive_passphrase: Si subes tus actualizaciones para Data Folder como un rar, y deseas ponerle una clave a los archivos, aquí debes colocar la clave que le pondras a TODOS los archivos.rar, si estableces una contraseña y no la utilizas no habra ningun incombeniente

Un ejemplo de un Neoncube perfectamente funcional, seria el de mi servidor (lo he adaptado de Jikari Patcher):


Código: [Seleccionar]
[server]

server_name = RuneKingdom
notice_url = http://www.runekingdom.net/
patch_site = runekingdom.net
patch_port = 80
patch_list = /patch/patchlist.txt
patch_folder = /patch/

executable = "RuneKingdom.exe"
registration_link = http://www.runekingdom.net/cp/

skin = skin_default

grf_file = rkdata.grf
Backup_GRF = 1
startup_option = 3

[general]

;debug_mode = 0
archive_passphrase = American Idiot

Con esto concluimos las modificaciones a ClientSide, proseguiremos con el WebSide


Crear Patch List para Neoncube

Lo primero que deben hacer es dirigirse hacia su directorio web y crear una carpeta llamada patch de manera que quede www/patch, luego prosederemos a introducir un archivo .txt en esa carpeta llamado patchlist.txt, entonces quedaria: www/patch/patchlist.txt, para saber si lo han creado bien, deberán ir a su navegador y escribir su dirección weby agregarle despues /patch, en mi caso seria www.runekingdom.net/patch, si al ponerla no les presenta ningun tipo de error, y pueden ver en el directorio el archivo patchlist.txt, han hecho este paso bien, de lo contrario deben serciorarse de haber creado la carpeta dentro de www

Neoncube como expliqué anteriormente te brinda la oportunidad de actualizar sea tu Data Folder o tu GRF así que explicaré brevemente ambas:


Subir Actualizaciones al Data Folder con Neoncube

Para subir actualizaciones a tu data folder se usa el comando FLD de la siguiente forma:

#deactualizacion FLD nombredeactualizacion.rar

Ejemplo:

1 FLD actualización001.rar //---> Esto debes escribirlo en tu patchlist.txt
2 FLD actualización047.rar //---> Esto debes escribirlo en tu patchlist.txt
3 FLD actualización145.rar //---> Esto debes escribirlo en tu patchlist.txt

Las actualizaciones para la carpeta data deben ir siempre en un archivo .rar, y debe tener el mismo formato que la carpeta data, osea si deseas actualizar o agregar un texture debes crear una carpeta data dentro de ella una carpeta texture y dentro de ella poner lo que deseas meter en texture, y así con todo tipo de archivos, quedaria de esta manera data/texture/loquesubas.txt.

Nota: La actualización SIEMPRE debe estar directamente en la carpeta de tu web Patch, quedaría de esta manera www/patch/actualización001.rar


Borrar Actualizaciones al Data Folder con Neoncube

Solamente debes agregar la ruta completa de donde esta, y un * al final de la linea.

Ejemplo:

4 FLD data\sprite\npc\misprite.act*


Subir Actualizaciones al GRF con Neoncube

Para subir actualizaciones a tu data folder se usa el comando GRF de la siguiente forma:

#deactualizacion FLD nombredeactualizacion.rar

Ejemplo:
 
1 GRF actualización001.gpf //---> Esto debes escribirlo en tu patchlist.txt
2 GRF actualización047.gpf //---> Esto debes escribirlo en tu patchlist.txt
3 GRF actualización145.gpf //---> Esto debes escribirlo en tu patchlist.txt

Las actualizaciones GPF, se crean igual que los GRF's, pero llevan extension .GPF Una vez descargado el archivo GPF, reempaquetara tu GRF original, metiendole las actualizaciones que descargaste, la actualizacion debe tener el mismo formato que la carpeta data, osea si deseas actualizar o agregar un texture debes crear una carpeta data dentro de ella una carpeta texture y dentro de ella poner lo que deseas meter en texture, y así con todo tipo de archivos, quedaria de esta manera data/texture/loquesubas.txt.
Nota: La actualización SIEMPRE debe estar directamente en la carpeta de tu web Patch, quedaría de esta manera www/patch/actualización001.gpf


Borrar Actualizaciones al GRF con Neoncube

Aunque algunos digan que esto no es posible, les digo que no es así para hacerlo solamente debes agregar la ruta completa de donde esta, y un * al final de la linea.

Ejemplo:
 
4 GRF data\sprite\npc\misprite.act*

Nota: El numero de actualización es una serie de números consecutivos, es decir, tu listado debe ir numerado. Por ningun motivo te saltes, o repitas un numero, ya que Neoncube solo reconoce numeros consecutivos.



Configurando el Jikari Patcher

Luego de desgargar el Jikari Patcher descomprimelo en la carpeta de tu preferencia (Les recomiendo que para configurarlo lo introduzcan en una carpeta vacía), luego localizaremos el archivo jikpatch.ini, lo abriremos y nos saldrá algo semejante a esto:

Código: [Seleccionar]
[server]

server_name = Server's Name
server_slogan = Server's Slogan
notice_url = News Page
patch_site = Patch Domain
patch_port = 80
patch_list = Patch List Location
patch_folder = Patch Location

executable = Game Executable
registration_link = Server's Registration Link

vote_link1 =
vote_link2 =
vote_link3 =

skin = Skin\Default
disable_bgm = 0

grf_file1 =
grf_file2 =
grf_file3 =

Backup_GRF = 0
startup_option = 3

[general]

debug_mode = 0
archive_passphrase = 0
folder = Jikari's Patcher

[credits]

programmer = Jikari
version = 3.7
contact = Publicar emails esta prohibido en DivineRO y se castiga con penas de baneo permanente del foro, este mensaje ha sido enviado a un administrador para que aplique la sancion


En este archivo todo lo que este delante de un ; será ignorado, por lo general es usado para referencias o créditos, todo lo demás es lo que modificaremos, aquí le daré una breve descripción de cada apartado a modificar:

server_name: Es el nombre de el servidor, lo que pongas aquí aparecera en la barra de tareas cuando se abra programa.

server_slogan Es el Slogan del servidor, saldra en la barra de tareas al lado del nombre del server

notice_url: Es el documento HTML o PHP donde publicas los cambios que haces a tu cliente, o las noticias de tu servidor. Aparece en el cuadro grande de Jikari Patcher.

patch_site: Es el sitio web donde donde subes tus actualizaciones, sean RAR o GPF

patch_port: Es el puerto por el cual se conectara el Jikari Patcher para descargar las actualizaciones, por default en la mayoria de las webs 80

patch_list: Es la lista con todas las actualizaciones que se van a descargar de tu servidor web.

patch_folder: La carpeta dentro de tu website donde guardas los parches y la lista de parches.

executable: El ejecutable de el cliente, o sea, con el que te conectaras al servidor.

registration_link: Es la URL o direccion web donde la gente podra crear una cuenta para entrar a tu servidor (el Control Panel).

vote_link1,2,3: Es la URL o direccion web que te brindan los sistemas de votacion a tu server cuando te registras en ellos

skin: El skin, tema o mascara que usaras para tu Jikari Patcher. Viene varios incluidos, pero si gustas, puedes crear tus propios skins.

disable_bgm: Activa o desactiva el sonido que trae el Jikari Patcher, el archivo de sonido puede ser modificado, se encuentra dentro de la carpeta skin

grf_file1,2,3: Los GRF's (en caso de que uses) de tu servidor. Si no usas, o usas menos de 3, dejalo(s) en blanco

Backup_GRF: Esta opcion es para que se guarde un respaldo de tu anterior GRF antes de hacer las modificaciones (coloca un 1 si quieres que haga un respaldo, un 0 sino).

startup_option: El metodo en que Jikari Patcher abrira tu cliente. Si pones un 1, Jikari Patcher abrira tu cliente sin importar si aun no descarga las actualizaciones, o si esta a medio proceso. Si pones 2, el cliente se abrira solo cuando se completen las actualizaciones, si fallan, no se abrira. Si pones 3, el cliente se abrira solo cuando se completen las actualizaciones, sin embargo, si falla, si se abrira. Esta ultima es la opcion mas recomendable.

debug_mode: Sirve para dejar la patch list descargada como un  tmp.nc, si quieres desactivarla pon un 0

archive_passphrase: Si subes tus actualizaciones para Data Folder como un rar, y deseas ponerle una clave a los archivos, aquí debes colocar la clave que le pondras a TODOS los archivos.rar, si estableces una contraseña y no la utilizas no habra ningun incombeniente

folder: Es el nombre de la carpeta que usará el updater, por default es Jikari's Patcher

Un ejemplo de un Jikari perfectamente funcional, seria el de mi servidor:


Código: [Seleccionar]

[server]

server_name = RuneKingdom
server_slogan = ... Una Experiencia...
notice_url = http://www.runekingdom.net/
patch_site = runekingdom.net
patch_port = 80
patch_list = /patch/patchlist.txt
patch_folder = /patch/

executable = "RuneKingdom.exe"
registration_link = http://www.runekingdom.net/cp/

vote_link1 = //No tengo ninguno por ahora
vote_link2 =
vote_link3 =

skin = Skin\Default
disable_bgm = 0

grf_file1 = rkdata.grf
grf_file2 = rkpdata.grf
grf_file3 =

Backup_GRF = 0
startup_option = 3

[general]

debug_mode = 0
archive_passphrase = 0
folder = RuneKingdom Patcher

[credits]

programmer = Jikari
version = 3.7
contact = Publicar emails esta prohibido en DivineRO y se castiga con penas de baneo permanente del foro, este mensaje ha sido enviado a un administrador para que aplique la sancion

Con esto concluimos las modificaciones a ClientSide, proseguiremos con el WebSide


Crear Patch List para Jikari Patcher

Lo primero que deben hacer es dirigirse hacia su directorio web y crear una carpeta llamada patch de manera que quede www/patch, luego prosederemos a introducir un archivo .txt en esa carpeta llamado patchlist.txt, entonces quedaria: www/patch/patchlist.txt, para saber si lo han creado bien, deberán ir a su navegador y escribir su dirección weby agregarle despues /patch, en mi caso seria www.runekingdom.net/patch, si al ponerla no les presenta ningun tipo de error, y pueden ver en el directorio el archivo patchlist.txt, han hecho este paso bien, de lo contrario deben serciorarse de haber creado la carpeta dentro de www

Jikari Patcher como expliqué anteriormente te brinda la oportunidad de actualizar sea tu Data Folder o tu GRF así que explicaré brevemente ambas:


Subir Actualizaciones al Data Folder con Jikari Patcher

Para subir actualizaciones a tu data folder se usa el comando FLD de la siguiente forma:

#deactualizacion FLD nombredeactualizacion.rar

Ejemplo:

1 FLD actualización001.rar //---> Esto debes escribirlo en tu patchlist.txt
2 FLD actualización047.rar //---> Esto debes escribirlo en tu patchlist.txt
3 FLD actualización145.rar //---> Esto debes escribirlo en tu patchlist.txt

Las actualizaciones para la carpeta data deben ir siempre en un archivo .rar, y debe tener el mismo formato que la carpeta data, osea si deseas actualizar o agregar un texture debes crear una carpeta data dentro de ella una carpeta texture y dentro de ella poner lo que deseas meter en texture, y así con todo tipo de archivos, quedaria de esta manera data/texture/loquesubas.txt.

Nota: La actualización SIEMPRE debe estar directamente en la carpeta de tu web Patch, quedaría de esta manera www/patch/actualización001.rar


Borrar Actualizaciones al Data Folder con Jikari Patcher

Solamente debes agregar la ruta completa de donde esta, y un * al final de la linea.

Ejemplo:

4 FLD data\sprite\npc\misprite.act*


Subir Actualizaciones al GRF con Jikari Patcher

Para subir actualizaciones a tu data folder se usa el comando GRF de la siguiente forma:

#deactualizacion #deGRF FLD nombredeactualizacion.rar

Ejemplo:
 
1 1 GRF actualización001.gpf //---> Esto debes escribirlo en tu patchlist.txt ira a el GRF numero 1
2 2 GRF actualización047.gpf //---> Esto debes escribirlo en tu patchlist.txt ira a el GRF numero 2
3 1 GRF actualización145.gpf //---> Esto debes escribirlo en tu patchlist.txt ira a el GRF numero 1

Las actualizaciones GPF, se crean igual que los GRF's, pero llevan extension .GPF Una vez descargado el archivo GPF, reempaquetara tu GRF original, metiendole las actualizaciones que descargaste, la actualizacion debe tener el mismo formato que la carpeta data, osea si deseas actualizar o agregar un texture debes crear una carpeta data dentro de ella una carpeta texture y dentro de ella poner lo que deseas meter en texture, y así con todo tipo de archivos, quedaria de esta manera data/texture/loquesubas.txt.
Nota: La actualización SIEMPRE debe estar directamente en la carpeta de tu web Patch, quedaría de esta manera www/patch/actualización001.gpf


Borrar Actualizaciones al GRF con Jikari Patcher

Aunque algunos digan que esto no es posible, les digo que no es así para hacerlo solamente debes agregar la ruta completa de donde esta, y un * al final de la linea.

Ejemplo:
 
4 GRF 1 data\sprite\npc\misprite.act*

Nota: El numero de actualización es una serie de números consecutivos, es decir, tu listado debe ir numerado. Por ningun motivo te saltes, o repitas un numero, ya que Jikari Patcher solo reconoce numeros consecutivos.


Errores y sus posibles soluciones

Error: Invalid entry in neoncube.ini: "executable" (file not found).
   Esto es, porque el ejecutable de tu cliente (el que va en el parametro "executable") no se encuentra en la misma carpeta que Neoncube, o le has puesto otro nombre, se te ha olvidado la extencion, no lo has puesto entre "", etc, etc.
 
Error: Failed to create file: data.grf.txt.
   Esto se debe a que te falta la carpeta de configuracion llamada "neoncube". Es esa donde va el neoncube.ini, y los skins.
 
Error: Invalid entry in neoncube.ini: "grf_file" (file not found).
   Se debe a que no tienes tu GRF en la misma carpeta que neoncube, le has puesto otro nombre, se te ha olvidado la extencion, etc, etc.. Si no usas GRF, deja el default (sdata.grf o data.grf)
 
El Neoncube no quiere actualizar, dice "No New Updates".
   Borra el archivo Neoncube.file, ubicado en donde tienes tu ejecutable de Neoncube. Neoncube.file es donde se guarda el control de las actualizaciones que se han descargado.
 
 
Bueno, aquí termina la guía espero que les haya servido, muchas gracias


Si deseas Host Profesional con servicio de configuración TOTAL de servidor + cliente contactar con migo o visita www.caoshost.com
Server Mid rates 150/99 http://www.xcution-ro.com


 

[Guía] Crear un cliente para tu servidor

Iniciado por Leeg

Respuestas: 0
Vistas: 11296
Último mensaje 10 de Julio de 2012, 22:07
por Leeg
[Guía] Crear un instalador para tu cliente

Iniciado por Leeg

Respuestas: 0
Vistas: 3652
Último mensaje 10 de Julio de 2012, 22:18
por Leeg
[Guía] Creación de un cliente profesional [2012-04-10]

Iniciado por Leeg

Respuestas: 0
Vistas: 23048
Último mensaje 12 de Enero de 2013, 15:46
por Leeg