Olá, Como o Próprio nome já Diz Estou querendo Adicionar Um Novo Mapa em meu MuServer Porem não tenho á minima ideia de onde começar, alguém pode estar me ajudando
Servidor Easy / Hard Nome: Mu Square Versão: 97D+1.0E Edition Experiência Free: 1.000x Experiência Vip Simples: 2.000x Experiência Super Vip: 5.000x Drop: 80% - PVP Equilibrado 100% Comandos Exclusivos para Player. Vários eventos e Novidades ! Vagas na Staff Acesse: Hidden Content Fórum: Hidden Content Fan Page: Hidden Content
mudominio
Primeiro vc precisa de uma dll para fazer o gs ler os novos terrains.att, se não me engano aqui no forum tem. Depois conseguir os arquivos do mapa desejado para o client, imagens, texturas etc.. ou seja a pasta WorldX e ObjectX... X= numero do mapa E tbm conseguir o TerrainX.att que vai no servidor para o gs ler o mapa... Tem q manjar um pouco de C++ pra fazer a dll e depois dar hook dela no Gs...(da pra fazer direto no gs em asm tbm, mas é mais foda. Eu acho^^) Depois disso vc basta configurar um Gate em alguma cidade para o mapa desejado, lembrando que no Gate o numero do mapa é sempre 1 a menos do numero q vc colocou no terrainX.att ... (a pior parte é a dll^^)
Sê Sóbrio...
guido
Aqui no Fórum tem algum tutorial Explicando passo a passo ?
Tem a source em código aberto, mas ai vc tem q saber montar a dll... eu não te ajudo pq tbm não sei^^ Só sei oq é necessário pra adc mapa novo, e já disse como é... Tem um tópico na area vip, mas o arquivo foi apagado do download, então nem adianta;;
Hola gente este es mi primer comentario y ante todo gracias de ante mano, tengo un problema al agregar nuevos mapas a la 97d, si bien los agrego de la source no puedo agregar mobs, ya que me crashean cuando los toco, alguien tiene alguna soluciona esto? gracias
Sistema de mapas 96.40 #include "mapas.h" CHAR MapBuff[21][15] = { "Terrain1.att", "Terrain2.att", "Terrain3.att", "Terrain4.att", "Terrain5.att", "Terrain6.att", "Terrain7.att", "Terrain8.att", "Terrain9.att", "Terrain10.att", "Terrain11.att", "Terrain12.att", "Terrain12.att", "Terrain12.att", "Terrain12.att", "Terrain12.att", "Terrain17.att", "Terrain18.att", "Terrain19.att", "Terrain20.att", "Terrain22.att", "Terrain23.att", "Terrain24.att", "Terrain25.att", "Terrain26.att", "Terrain27.att", "Terrain28.att", "Terrain29.att", "Terrain30.att", }; void MapLoad() { for(int i=0;i<0x15;i++) { _asm { Mov Ecx, i Imul Ecx, Ecx, 0x4DB68 Add Ecx, 0x6354C78 Mov Eax, 0x00402225 Call Eax Mov Eax, i Push Eax Mov Ecx, i Imul Ecx, Ecx, 0FH Add Ecx, offset MapBuff Push Ecx Mov Ecx, 0x0687DE60 Mov Eax, 0x00401A7D Call Eax Push Eax Mov Ecx, i Imul Ecx, Ecx, 0x4DB68 Add Ecx, 0x6354C78 Mov Eax, 0x00401FC3 Call Eax } } } -------------------------- #include "StdAfx.h" bool MapDataInit(); void MapLoad(); ------------------------- Llamada: //LoadMaps 100% SetByte(0x00489424,0x15); SetByte(0x0048948F,0x15); SetByte(0x0047C7D4,0x15); SetByte(0x0047334E,0x15); SetByte(0x0047C499,0x15); SetByte(0x0047C7D4,0x15); SetByte(0x0047C7FE,0x15); SetByte(0x0045D153,0x15); SetByte(0x00443782,0x14); SetByte(0x00497B30,0x14); SetByte(0x00497C00,0x14); SetByte(0x0045C620,0x14); SetByte(0x0045C77B,0x14); SetByte(0x0045BA63,0x14); *(DWORD*)(0x004D0A00) = (DWORD)&MapLoad; ------------------------------ Funcion: //SetByte void SetByte(DWORD dwOffset, BYTE btValue){ *(BYTE*)(dwOffset) = btValue; } ---------------------------- Me funcionaron perfectamente en esta version, cualquier duda los ayudo, gracias Agradecimentos > DsTeamDev (Chris/Diguinho) ---------- Post added at 03:52 PM ---------- Previous post was at 03:44 PM ---------- Sistema de mapas 96.40 #include "mapas.h" CHAR MapBuff[30][15] = { "Terrain1.att", "Terrain2.att", "Terrain3.att", "Terrain4.att", "Terrain5.att", "Terrain6.att", "Terrain7.att", "Terrain8.att", "Terrain9.att", "Terrain10.att", "Terrain11.att", "Terrain12.att", "Terrain12.att", "Terrain12.att", "Terrain12.att", "Terrain12.att", "Terrain17.att", "Terrain18.att", "Terrain19.att", "Terrain20.att", "Terrain22.att", "Terrain23.att", "Terrain24.att", "Terrain25.att", "Terrain26.att", "Terrain27.att", "Terrain28.att", "Terrain29.att", "Terrain30.att", }; void MapLoad() { for(int i=0;i<0x15;i++) { _asm { Mov Ecx, i Imul Ecx, Ecx, 0x4DB68 Add Ecx, 0x6354C78 Mov Eax, 0x00402225 Call Eax Mov Eax, i Push Eax Mov Ecx, i Imul Ecx, Ecx, 0FH Add Ecx, offset MapBuff Push Ecx Mov Ecx, 0x0687DE60 Mov Eax, 0x00401A7D Call Eax Push Eax Mov Ecx, i Imul Ecx, Ecx, 0x4DB68 Add Ecx, 0x6354C78 Mov Eax, 0x00401FC3 Call Eax } } } -------------------------- #include "StdAfx.h" bool MapDataInit(); void MapLoad(); ------------------------- Llamada: //LoadMaps 100% SetByte(0x00489424,0x15); SetByte(0x0048948F,0x15); SetByte(0x0047C7D4,0x15); SetByte(0x0047334E,0x15); SetByte(0x0047C499,0x15); SetByte(0x0047C7D4,0x15); SetByte(0x0047C7FE,0x15); SetByte(0x0045D153,0x15); SetByte(0x00443782,0x14); SetByte(0x00497B30,0x14); SetByte(0x00497C00,0x14); SetByte(0x0045C620,0x14); SetByte(0x0045C77B,0x14); SetByte(0x0045BA63,0x14); *(DWORD*)(0x004D0A00) = (DWORD)&MapLoad; ------------------------------ Funcion: //SetByte void SetByte(DWORD dwOffset, BYTE btValue){ *(BYTE*)(dwOffset) = btValue; } ---------------------------- Me funcionaron perfectamente en esta version, cualquier duda los ayudo, gracias Agradecimentos > DsTeamDev (Chris/Diguinho)
Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)
Regras do Fórum