Mostrar posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - caron22

Paginas: [1] 2
1
Mains / MAIN Main 97D Free
« on: July 15, 2018, 07:12:14 PM »
Bueno gente les libero un pequeño proyecto basados en las zerg que andan por ahi dando vuelta, la cual arregle un poco.

//== Customs ==//

Camara 3D:
Acticva y desactiva con F5
Mensajes activado y desactivado
Rotacion de camara y zoom

Minimap:
Acticva y desactiva con F6
Mensajes activado y desactivado
Minimap en todos los mapas
Minimap en pamas nuevos: (No free)

Fog:
Acticva y desactiva con F7
Mensajes activado y desactivado
Configurar color de fog por mapa : (No free)

Sky
Fijo o se desactiva del ini
Agregar mas cielos en mapas customs: : (No free)


//== Fixes ==//

//- Camara 3D:
Fix Camara 3D items que se achican al scroolear
Fix Camara 3D Texturas que desaparecen en profuncidad
Fix Camara 3D Scrool invertido
Fix Camara 3D Serruchos al alejar la camara

//- Minimap:
Fix  Minimap Cierre inesperado en mapa que no tiene minimap
Fix  Minimap Minimiza al entrar al golden archer
Fix  Minimap Minimiza al entrar al guilds

//- Fog:
Fix Fog oscuro en mapas que no tiene configurado el fog
Fix Fog en menu de inicio

//- Sky:
Fix Sky noche y dia
Fix Sky Profundidad
Fix Sky Esquinas cuadros negros

Encriptacion del main: (No free)

Serial: : (Lo podes buscar ya que no esta encriptado)
Version: (Lo podes buscar ya que no esta encriptado)

Antihacks: (No free)



Pass: tuservermu.com.ve



2
Sources Generales / SOURCES Iniciar Main sin launcher 97D
« on: June 30, 2018, 09:01:32 PM »
Nuevamente les traigo una modificacion para iniciar el main sin launcher, personalmente lo busque para poder levantar el main con olly y me cargue las variables de los textos que estan en los bmd.
Pero se le puede dar otros usos.

Code: [Select]
*(BYTE*)(0x0041E175) = 0xEB;

Creditos: Caron22 <- (Para el copy/paste)

3
Sources Generales / SOURCES Fix ¡Û gameserver 97d
« on: June 29, 2018, 01:10:33 PM »
Bueno les dejo el fix de esta u asquerosa al menos para mi.
Espero les sirva, son detalles pero bueno ahi les va.


Code: [Select]
BYTE FixUdorados[15] = { 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20 };
memcpy((int*)0x0050B057, FixUdorados, sizeof(FixUdorados));

Creditos: Caron22 <- (Para el copy/paste)

4
Sources Generales / SOURCES Offset curioso de la 97D (No se si tiene nombre)
« on: June 09, 2018, 09:56:01 PM »
Bueno hoy les traigo un offset curioso que vimos con Sacha un colega con el que trabajo.
Este offset permite descongelar la vision del pj al morir, puede que no les guste a unos a otros si, personalmente en una pvp puede que no sea bueno porque sabes donde esta tu rival pero bueno seria usar otra mecanica de juego.
Que afecta esto?
Al morir podes ver los chats y el movimientos de los pjts y mobs.

Code: [Select]
SetNop(0x00468906, 4);

Creditos: Caron22 <- (Para el copy/paste) Y a Sacha gracias por plantearme el tema.

5
Sources Generales / SOURCES PreviewCharSet Main 97D
« on: June 08, 2018, 11:26:44 PM »
Bueno gente les traigo otro trabajo que libero ya que es un buen inicio para agregar nuevas alas lado main de la 97.
Los que conoscan del tema creo que valoraran esto ya que es una buena base.
Si bien no tengo el codigo completo es por falta de interes, solo me pidieron el cahrset y generalmente luego lo libero, espero les sirva a los programadores mas avanzados.

Code: [Select]
void PreviewCharSet(int ObjectIndex, BYTE * CharSet, LPBYTE Object, int Mode)
{
 ((void(*)(int, LPBYTE, LPBYTE, int))0x0045B3A0)(ObjectIndex, CharSet, Object, Mode);

 
 BYTE WingCharSet = CharSet[16] >> 2;

 if(WingCharSet > 0)
 {
 Mensaje para test
 }
}

HOOK
Code: [Select]
SetCompleteHook(0xFF, 0x0042396A, &PreviewCharSet);
SetCompleteHook(0xFF, 0x00428831, &PreviewCharSet);
SetCompleteHook(0xFF, 0x004291FC, &PreviewCharSet);
SetCompleteHook(0xFF, 0x00438A47, &PreviewCharSet);


Creditos: Caron22 <- (Para el copy/paste) Y a AcTeam gracias por plantearme el tema.

6
Sources Generales / SOURCES Fix Personal ID 97D
« on: May 21, 2018, 03:51:51 PM »
Bueno gente les traigo otro fix para la querida 97D, este fix permite la lectura de los datos en el campo del personal id.
Generalmente se usa un nop para saltear la verificacion, la cual nunca funciono.
Les dejo la solucion al problema para que se pueda usar esta ID ya que puede servir para seguridad en el server.


Code: [Select]
#define gObjJoominCheck				    ((BOOL(*)(int aIndex, char *szInJN)) 0x460b50)  

Code: [Select]
BOOL gObjJoominCheckEx(int aIndex, char *szInJN)
{
if (strncmp(szInJN, gObj[aIndex].LastJoominNumber, 7) == 0)
{
LogAddTD("OK", szInJN);
return TRUE;
}

LogAddTD("Pass: %s", szInJN);
return gObjJoominCheck(aIndex, szInJN);
}

Code: [Select]
func.HookThis((DWORD)&gObjJoominCheckEx, 0x0040294B);

Datos a tener en cuenta:

1) Si tienen estos nop comentarlos:

   //*(BYTE*)(0x417781) = 0xEB;
   //*(BYTE*)(0x420D2A) = 0x90;
   //*(BYTE*)(0x420D2B) = 0x90;
   //*(BYTE*)(0x420DEB) = 0x90;
   //*(BYTE*)(0x420DEC) = 0x90;

2) La pass tiene como limite 7 caracteres y se guarda en:
MEMB:INFO / sno__numb

Explicacion:
Por lo que vi siempre devuelve false la funcion, por mas que pongas el id correcto.
Lo que se modifico fue poner una validacion para que si se cumple la condicion devuelva true y si no se cumple que continue ya que por defecto no funciona y siempre devolvera false.

Creditos: Caron22 <- (Para el copy/paste) Y a @Zeus gracias por plantearme el problema


7
Sources Generales / SOURCES Fix bug zen version 97d
« on: May 07, 2018, 04:51:06 PM »
Bueno les traigo otro fix que realmente jode un poco, puede que tengan alguna otra forma algunos pero yo trato de armar mi propias funcionesm no porque sea groso sino mas bien que me entiendo mejor y creo que es la manera mas facil de hacerlo.




Declaraciones:

Code: [Select]
#define dword_4CEE778				*(DWORD*)0x4CEE778
#define MAX_ZEN 2000000000
#define GCItemMoveResultSend ((void(*)(int aIndex, BYTE result, BYTE pos, BYTE ItemInfo[])) 0x0041A670)
#define DataSend                        ((void(*)(DWORD aIndex, PBYTE Packet, DWORD Size)) 0x00440240)
Funcion:
Code: [Select]
void CGSellRequestRecv(LPPMSG_SELLREQUEST lpMsg, int aIndex)
{
LPOBJECTSTRUCT lpObj = (LPOBJECTSTRUCT)&gObj[aIndex];
PMSG_SELLRESULT pResult;

BYTE NewOption[5];
int sellmoney = 0;

sellmoney = lpObj->pInventory[lpMsg->Pos].m_SellMoney;
__int64 _Money = 0;
_Money = (__int64)lpObj->Money + (__int64)sellmoney;

if (_Money > MAX_ZEN)
{
pResult.Result = 0xFF; //EERROR::E_NOT_SELL_EQUIPITEM;
pResult.Money = 0;//Puede que no sirva pero por las dudas lo dejamos
GCItemMoveResultSend(aIndex, 0xFF, 0, NewOption);//Retorna el items al inventario
DataSend(aIndex, (LPBYTE)&pResult, pResult.h.size);//Envia paquete vecio
return;
}


((int(*)())0x0041C610)();//Funcion original de retorno
}

Paquetes:

Code: [Select]
typedef OBJECTSTRUCT	*LPOBJECTSTRUCT;

typedef struct
{
PBMSG_HEAD h;
BYTE Pos;
} PMSG_SELLREQUEST, *LPPMSG_SELLREQUEST;

typedef struct
{
PBMSG_HEAD h;
BYTE Result;
DWORD Money;
} PMSG_SELLRESULT, *LPPMSG_SELLRESULT;

Hook

Code: [Select]
func.HookThis((DWORD)&CGSellRequestRecv, 0x00401C35);

Creditos: Caron22 <- (Para el copy/paste)
Gracias a @日メリーのRu por prestar pc para esta config

8
Sources Generales / SOURCES Loading de archivos ini customs Gameserver 96.40
« on: May 01, 2018, 01:28:34 PM »
Bueno esto esta pensado para los que quieren que se carguen las configuraciones nuevas desde la option reload desde el gs 96.40 .
Solo tienen que agregar la carga de los ini dentro de la funcion.

Code: [Select]
int Loading()
{
((int(*)())0x48C2E0)(); //Retorno de la funcion original
Command->LoadExtCommand();// Nuevos archivos de config customs

 //MessageBoxA(NULL,"Carga loading ok","Carga Nuevos Ini",NULL);
return 1;
}

Carga Funcion
Code: [Select]
Func.HookThis((DWORD)&Loading, 0x004027DE);

Creditos: Caron22 <- (Para el copy/paste)
Gracias a @Mph1405 por prestar pc para esta config

9
Sources Generales / SOURCES Precio visual de joyas en ASM 97D Main
« on: April 19, 2018, 09:20:02 PM »
Bueno gente les libero el precio de las joyas visual lado Main, no hay mucho que acotar solo que esta en ASM y fue un trabajo que me pidieron y no estaba con muchas ganas de recrear las funciones originales.

Code: [Select]
//precios
DWORD JewelOfChaosPrecio = 80000000;
DWORD JewelOfSkillPrice = 350000000;
//offsets
DWORD ReturnJewelPrecio1= 0x47A526;
DWORD ReturnJewelPrecio2= 0x47AA99;

void __declspec(naked) PriceJewels()
{
__asm
{
CMP AX, ITEMGET(12, 15);"items"
JNE CMP_JEWELOFBLESS;
MOV ESI, JewelOfChaosPrecio ;
JMP ReturnJewelPrecio2;

CMP_JEWELOFBLESS:
CMP AX, ITEMGET(14, 29); "items"
JNE CMP_PANDAPET;
MOV ESI, JewelOfSkillPrice;
JMP ReturnJewelPrecio2;

CMP_PANDAPET:
CMP AX, ITEMGET(13, 7);"items"
JNE JMP_FALSE;
MOV ESI, 2000000000;"O bien ponemos el precio aca directo"
JMP ReturnJewelPrecio2;

JMP_FALSE:
JMP ReturnJewelPrecio1;
}
}




Code: [Select]
SetByte(0x47A4D6, 0xE9);
Hook(0x47A4D6, (DWORD)(&PriceJewels));
SetNop(0x47A4DB, 0x4B);
IMAGEN:
http://prntscr.com/j7m3u8

Creditos: Caron22 <- (Para el copy/paste) Basados en ASM de Randy de la 1.0M.

10
Sources Generales / SOURCES Tiempo item drop
« on: April 19, 2018, 06:13:05 PM »
Bueno les traigo otras modificaciones que no son muy necesarias y que son solo para detallistas
Como dice el titulo esto es para modificar el el tiempo de los itemd drop por mobs.

Gs 97D:
Serian unos 20 segundos el tiempo actual con esta modificacion:
Code: [Select]
BYTE ItemsDrop[5] = { 0x05, 0x00, 0x50, 0x00, 0x00 };
memcpy((int*)0x00446DCA, ItemsDrop, sizeof(ItemsDrop));

Con esta otra casi al instante:
Code: [Select]
BYTE ItemsDrop[5] = { 0x05, 0x00, 0x01, 0x00, 0x00 };
memcpy((int*)0x00446DCA, ItemsDrop, sizeof(ItemsDrop));
Creditos: Caron22 <- (Para el copy/paste)

11
Sources Generales / SOURCES Puntos en el zen
« on: March 29, 2018, 02:50:49 PM »
Bueno gente aca les traigo algunas curiosidades para gente detallista.
La webzen en el zen en vez de ponerle puntos le pusi comas, esto a perturbado a unos de mis colegas y le solucione el problema.
Personalmente esto me da lo mismo pero se que hay personas muy detallistas que ven esto necesario. (Que no esta mal claro)

Code: [Select]
	//FIX PUNTO EN EL ZEN MAIN 99.24
memcpy((char*)0x607C98, "%d.%03d.%03d.%03d", 17);
memcpy((char*)0x607CAC, "%d.%03d.%03d", 12);
memcpy((char*)0x607CBC, "%d.%03d", 6);

//FIX PUNTO EN EL ZEN MAIN 96.40
memcpy((char*)0x5554CC, "%d.%03d.%03d.%03d", 17);
memcpy((char*)0x5554E0, "%d.%03d.%03d", 12);
memcpy((char*)0x5554F0, "%d.%03d", 6);

       //FIX PUNTO EN EL ZEN MAIN 1.0M
memcpy((char*)0x671434, "%d.%03d.%03d.%03d", 17);
memcpy((char*)0x671448, "%d.%03d.%03d", 12);
memcpy((char*)0x671458, "%d.%03d", 6);

Si alguien necesita para mas versiones me avisa.
Creditos: Caron22 <- (Para el copy/paste)

12
Sources Generales / SOURCES Source iniciar baul desde comando
« on: March 09, 2018, 10:31:20 AM »
Este es uno de mis primeros inventos en el mu el cual te permite iniciar el baul desde cualquier lugar con algun comando.
Es muy simple el aporte pero les puede servir para entender como abrir mas shops y cosas por el estilo.



Code: [Select]
  
gObj[aIndex].m_ReqWarehouseOpen = false;
 gObj[aIndex].m_IfState.use = 1;
 gObj[aIndex].m_IfState.type = 6;
gObj[aIndex].WarehouseCount = 0;
GDGetWarehouseList(aIndex, gObj[aIndex].AccountID);

GS  99.60T:
Code: [Select]
#define	GDGetWarehouseList	((void(*)(int aIndex, char *AccountID))   0x0040302B) //CRISTIAN 99 OK


GS  96.40:
Code: [Select]
#define GDGetWarehouseList		((void(*)(int, char*)) 0x00411560)//CRISTIAN 97 OK

Creditos: Caron22

13
Herramientas / EXTRAS Query sql para versiones viejas
« on: March 05, 2018, 12:28:39 PM »
Estas son algunas query sql que use en mis primeros pasos, algunas mias otras de brasileros. No pondre creditos porque fueron cosas que busque en su momento.
Les recuerdo que es solo para estudio no lo ejecuten en bases de datos trabajando sin antes testearlo en alguna base de pruebas.

http://www.mediafire.com/file/1yzqz081675y0s6/GUIAS.rar

14
Sources Generales / SOURCES Source lanzador de GS sin Launcher 97d
« on: February 27, 2018, 09:08:15 AM »
Este sistema permite ejecutar al gameserver.exe sin necesidad de crear un accesodirecto con parametros haciendo que el abrir y cerrar el ejecutable sea una tarea mucho mas rapida.

Source para la 97:

Code: [Select]

//----------------------
//Sistema de Links
//----------------------
bool SystemIPS ( char * ini )
{
DWORD IPs;
memset((DWORD*)0x0048F820, 0xEB, 1);
memset((DWORD*)0x0048F821, 0x68, 1);
char LoaderInfo[50], IP[16];
int JS = 0, DS = 0, GS = 0;
IPs = GetPrivateProfileStringA("SystemIP", "LoaderInfo", "127.0.0.1 55970 55960 55901", LoaderInfo, 50, ini);
sscanf(LoaderInfo, "%s %d %d %d" , IP, &JS, &DS, &GS);
memcpy((DWORD*)0x7300B80, IP, strlen(IP));
memcpy((DWORD*)0x7300C80, IP, strlen(IP));
*(unsigned int*)0x704E168 = (unsigned int)JS;
*(unsigned int*)0x704E164 = (unsigned int)DS;
*(unsigned int*)0x704E16C = (unsigned int)GS;
return 1;
}


bool IniciaIni()
{
char aini[] = "Data\\ServerInfo.dat";
bool rResultado;
rResultado = SystemIPS ( aini );
return 1;
}


Source para la 99.60T:

Code: [Select]

//----------------------
//Sistema de Links
//----------------------
bool SystemIPS ( char * ini )
{
DWORD IPs;
memset((DWORD*)0x004FDACE, 0xEB, 1);
memset((DWORD*)0x004FDACF, 0x73, 1);
char LoaderInfo[50], IP[16];
int JS = 0, DS = 0, GS = 0;
IPs = GetPrivateProfileStringA("SystemIP", "LoaderInfo", "127.0.0.1 55970 55960 55901", LoaderInfo, 50, ini);
sscanf(LoaderInfo, "%s %d %d %d", IP, &JS, &DS, &GS);
memcpy((DWORD*)0x0AB550B0, IP, strlen(IP));
memcpy((DWORD*)0x0AB551B0, IP, strlen(IP));
*(unsigned int*)0x0A78EF1C = (unsigned int)JS;
*(unsigned int*)0x0A78EF18 = (unsigned int)DS;
*(unsigned int*)0x0A78EF20 = (unsigned int)GS;
return 1;
}


bool IniciaIni()
{
char aini[] = "kaizen\\Gameserver.ini";
bool rResultado;
rResultado = SystemIPS(aini);
return 1;
}


Dentro del dat o ini poner lo siguiente:
;----------------------------------------------------------------------
[SystemIP]
;----------------------------------------------------------------------
LoaderInfo      = 127.0.0.1 55970 55960 55901;    //Datos para ejecutar directamente del gameserver

Creditos Caron22

15
Guias / Antihack GUIA Curso de Seguridad Web: SQL Injection & XSS
« on: February 23, 2018, 06:55:24 PM »
Bueno gente les comparto este curso de los cientos que tengo grabados que he cursado.
Si veo que les interesa los pasare de a poco ya que lo tengo en formato camstasia y es trabajoso editar y compilar todo en hd.
Les dejo la primera clase:

Curso de Seguridad Web: SQL Injection & XSS

En este curso aprenderás :

    Detectar qué tecnologías utiliza una aplicación Web.
    Modificar al vuelo las peticiones y respuestas HTTP.
    Descubrir vulnerabilidades con Zed Attack Proxy y Vega.
    Detectar vulnerabilidades XSS, CSRF, SQL Injection y más.
    Asistir a los desarrolladores en la solución de vulnerabilidades.
    Modificar cabeceras HTTP para explotar vulnerabilidades.
    Tomar el control de un navegador web a través de BeEF.
    Crear archivos remotos en servidores vulnerables.
    Interpretar mensajes de error para detectar vulnerabilidades.
    Desarrollar e instalar shells y backdors en PHP para controlar un servidor.
    Identificar qué cookies pueden ser importantes para la seguridad de una aplicación.
    Proteger aplicaciones web a través de Web Application Firewalls.
    Detener ataques utilizando ModSecurity y ModEvasive para Apache.


1. Introducción   
OWASP Top 10   

2. Entorno de Pruebas

3. Descubrimiento de Tecnologías
NMap
Wappalyzer
Análisis de Código Cliente
Hosting Compartido

4. OWASP Zed Attack Proxy
Análisis de Peticiones y Respuestas
Mapeo de la Aplicación
Análisis Automatizado

5. Cross-Site Scripting
Ejemplo con Mutillidae
Contramedidas

6. Cross-Site Scripting Almacenado
Descripción
Ejemplo en Mutillidae

7. XSS para Denegación de Servicio (XSSDoS)
8. Cross Agent Scripting (XAS)
Ejemplo en Mutillidae

9. Cross-Site Request Forgery (CSRF)
Descripción
Escenario de ejemplo
Contramedidas
Usuarios
Desarrolladores

10. Browser Exploitation Framework (BeEF)
Utilización
Browser Hooking

11. SQL Injection
Detección
Ejemplo con Mutillidae (Login)
Pruebas con consultas unidas
Creación de archivos con SQL Injection
Inyección de comandos

12. Local/Remote File Inclusion (LFI/RFI)   
Ejemplos con Mutillidae

13. Shells en PHP
Instalación de BackDoors con PHP

14. Fallas en sistemas de autenticación
Petición directa de páginas
Modificación de Parámetros
Predicción de IDs de sesión
Análisis de código fuente

15. Gestión del caché y de salida de sesión
Atributos de cookies
Secure
HttpOnly
Domain
Path
Expires
Robo de cookies
Modificación de cookies

16. ModSecurity   
Instalación de ModSecurity   
Primeras Pruebas y Correcciones
Interpretación de Reglas
Antes y Después de ModSecurity
Resumen Comparativo

17. Ataques DoS y DDoS
Recursos de Red
Recursos de Hardware
Servidores Distribuidos
Firewalls Dinámicos
Apache ModEvasive

Clase 1:



Clase 2:
Paonto..
Clase 3:
Pronto..
Clase 4:
Pronto..
Clase 5:
Pronto..
Clase 6 Examen:
Pronto..

PDF:
http://www.mediafire.com/file/odgb74xjbnscsdn/mpdf.pdf
No vi en el foro donde ponerlo, dejo a criterio de los administradores este tema.
P/D: Esto es un arma de doble fijo ya que te enseña a como defenderte y como atacar o entrar a terminales por medio de navegadores.

16
Sources Generales / SOURCES Rango expancion Twisting Slash 97D
« on: February 16, 2018, 12:20:22 PM »
Como dice el titulo este es el rango de expancion para matar a mas distancia los mobs.
Por defecto el valor es 3 y lo encontraran de esta manera en olly:



Cambiando este valor el skill pegara a mobs mas lejos o mas cerca.

Offset del gs 96.40:
Code: [Select]
0x0041B6E0


Offset del gs 99.60T:
Code: [Select]
0x0049E1E9
Creditos: Caron22


17
Archivos desarrollo / EN DESARROLLO Proyecto 1.0M
« on: February 14, 2018, 11:46:40 AM »
Como se liberaron las fuentes voy a ir programando a pedido partiendo de esta base.
Se programara lado main como gs de acuerdo a lo que vallan pidiendo.
Se respetara el orden de los pedidos y se evaluara si es un desarrollo que valga la pena (O sobrepase el conocimiento).

Changelog... (Completar)

Version: 0.0.0
Proyecto base.

Version: 1.0.0
* Fix Jewels of chaos 100% //- Ok
* Fix GS crash 0%
* Venta de cash en npc 0%
Preguntas:
Liberare el codigo fuente? No.
Liberaras la dll? Si.
Cuanto tiempo te tomara? El que me tome.
Puedo ayudar en el proyecto?  Si.
Esto es gratis? Si.
Podes programarme para otra version? No.
Cuantas cosas puedo pedir? una sola, (luego vere si modifico esto)

Les dejo el link de los archivos base para que vallan testeando y viendo que se les ocurre para agregar.
http://tuservermu.com.ve/index.php?topic=9953.0

(No programare trabajos que contengan parte del codigo sedido por 007Jodex o Randy)

18
Archivos desarrollo / EN DESARROLLO Proyecto MuExilio 97D
« on: January 20, 2018, 10:00:32 PM »
Bueno gente como no voy a trabajar por un largo tiempo la 97 ya que ando trabajando en un nuevo proyecto voy a liberar una version 97 para ir testeando.
Voy a ir completando de a poco el post y luego que arme todo prolijo dejare una beta para el que le interese.


// -------------
// - Main:
// -------------

* Camara 3D
* Fog (Neblina)
* Sky
* Minimizador incorporado
* Sistema New Jewel (3 jouas)
* 3 Nuevas cajas Green, Blue y Purple
* 3 Nueos Cofres de zen
* 5 Nuevos NPC (No Skyn)
* 25 Mobs nuevos agregados (No Skin)
* 1 Nuevo Pet (Mascota)
* Barra hpbar para mobs
* 5 Nuevos Mapas
* Sistema top reset
* Resolucion HD
* Inicia directo del main o launcher
* Minimap
* Nuevo anillo que combinado con un nuevo escudo incrementa el rate del set puesto con sus atributos
* Nuevo anillo que al tenerlo puesto junta jewels de drop
* Nuevo anillo que incrementa la experiencia por tiempo
* Banda sonora para la medusa
* Sistema de seguridad del main vinculado al GS
* Bloqueo de palabras del chat desde el main
* Mix de joyas Nueva jewel +10
* Nuevos items Gratis en tiendas (Precio 0)
Completar....
* Hora lado Cliente y servidor tiempo real
* Hpbar Ex700 New

Correcciones:
* Fix cursor
* Fix level
* Fix Letras borrosas
* Fix acentos
* Fix Limite de items (Escudos completo)
* Fix MuError o quitarlo directamente
* Fix consumo de cpu
* Fix consumo de ram
Completar ...
* Fix evil Spirit (Bug podes sm lado gs y main)
* Fix state 1 golden archer

// ------------------
// - Gameserver
// ------------------

* Rango expancion Twisting Slash  New
Completar ...

https://prnt.sc/inrhsy


HPBar EX700



Hora: (Imagen prestada de otro proyecto)



Code: [Select]
Algunos videos del proyecto:

Sonido Medusa

[/youtube]

Nuevo sistema de rates en combinacion de joyas y escudos



Sistema de ranking + reset en pestaña de stats



HPBAR



Scrool crea Mobs (Si bien esta para la s1 en este video tambien lo adapte para la 97)



Custom Jewels



Venta de items por MUCOINS


Inner Nuevo


Mini juego dentro del server


Move custom con letra M


Misiones customs


Redistribuir stats individual


19
Sources Generales / SOURCES Source limite de shields GS
« on: December 20, 2017, 09:11:58 PM »
Como dice el titulo la version 97 tiene un limite tanto en el main como en el gs para los shields .
Este es un aporte que lo libero ya que un colega me lo pidio y lo comparto con la comunidad.
Cual es el bug? los shields agregados no se les aplican las propiedades como hp, reflect etc ya que esto lo maneja el gs.
Note que hay un limite de esto lado gs. Para arreglar esto hay dos formas de hacerlo, una es con olly y la otra por dll.
Como no estoy trabajando actualmente en la 97 les dejo la solucion por olly
Buscamos el siguiente offset:
Code: [Select]
0X004A7C5E

Vamos a ver el siguiente valor: CMP EAX,0CF (Que para los que tengan curiocidad es el exa de: 6x32+15 = 207  EXA: CF)

Lo cambiamos por: CMP EAX,0E0 (Que es 6x32+32 = 224  EXA: E0)

En otras palabras tendria que quedarles asi:



Los que usan Darksteam 97d les va a servir mucho.

--------

Lo mismo pasa en la S1 les dejo el offset:
Code: [Select]
0X004A7C5E
Creditos: Caron22

20
Temas solucionados / TEMA SOLUCIONADO Estructura de items main 99.28
« on: November 07, 2017, 12:32:13 PM »
Como dice el titulo necesito si alguien tiene la estructura del main 99.28, les dejo un ejemplo de lo que necesito:

Code: [Select]
struct SObjectPreview
{
BYTE gap0[2];
WORD word2;
DWORD dword4;
BYTE byte8;
BYTE gap9[3];
float fScalarMode;
float float10;
float float14;
float float18;
BYTE gap1C[60];
DWORD dword58;
BYTE gap5C[8];
DWORD dword64;
DWORD dword68;
BYTE gap6C[12];
DWORD dword78;
BYTE gap7C[8];
BYTE byte84;
BYTE gap85[8];
BYTE byte8D;
BYTE gap8E[6];
BYTE byte94;
BYTE gap95[79];
BYTE byteE4;
BYTE gapE5[43];
DWORD dword110;
DWORD dword114;
BYTE gap118[20];
DWORD dword12C;
DWORD dword130;
DWORD dword134;
BYTE gap138[52];
DWORD dword16C;
BYTE gap170[86];
WORD word1C6;
BYTE btCtlCode;
char Name[25];
BYTE gap1CA[46];
short HelmSlot;
BYTE _HelmLevel;
BYTE HelmExcellent;
BYTE HelmAncient;
BYTE gap213[27];
short ArmorSlot;
BYTE _ArmorLevel;
BYTE ArmorExcellent;
BYTE ArmorAncient;
BYTE gap233[27];
short PantsSlot;
BYTE _PantsLevel;
BYTE PantsExcellent;
BYTE PantsAncient;
BYTE gap253[27];
short GlovesSlot;
BYTE _GlovesLevel;
BYTE GlovesExcellent;
BYTE GlovesAncient;
BYTE gap273[27];
short BootsSlot;
BYTE _BootsLevel;
BYTE BootsExcellent;
BYTE BootsAncient;
BYTE gap293[27];
WORD WeaponFirstSlot;
BYTE WeaponFirstLevel;
BYTE WeaponFirstExcellent;
BYTE WeaponFirstAncient;
BYTE gap2B4[27];
WORD WeaponSecondSlot;
BYTE WeaponSecondLevel;
BYTE WeaponSecondExcellent;
BYTE WeaponSecondAncient;
BYTE gap2D3[27];
short WingsSlot;
BYTE WingsLevel;
BYTE WingsExcellent;
BYTE WingsAncient;
BYTE gap2D3_01[27];
short PetSlot;
BYTE PetLevel;
BYTE PetExcellent;
BYTE PetAncient;
BYTE gap2D3_02[67];
BYTE btStateCode;
BYTE gap2D3_04[20];
BYTE m_btPkLevel;
BYTE gap2D3_03[4];
BYTE byte36D;
WORD word36E;
BYTE gap370[14];
WORD word37E;
BYTE gap380[2];
BYTE byte382;
BYTE gap383[9];
DWORD dword38C;
BYTE gap390[12];
WORD word39C;
BYTE gap39E[62];
BYTE byte3DC;
};

Abrazo


----------

Solucione de otra manera mi problema.

Paginas: [1] 2