-
Contador contenido
26 -
Ingreso
-
Última visita
-
Días ganados
1
Mensajes publicados por LuisCbr13
-
-
buen combo pero no seria
texturas .by grim
- PromeTheuS reacciono a esto
- 1
-
que raro el pck gui que te pase me va de pocajontas
-
de que juego es?
-
sql o cliente
-
no has entendido niño copy & paste
-
todo llevan creditos no veo que ninguno propio
-
XD ya pa cuando lo resubes
-
no le pasen nada este mamon no se digna ni ah responder si ha sido solucionado
-
2shared:
Debes iniciar sesión para ver el contenido del enlace en esta publicación.girlshared: www.girlshare.ro/3788321.9
epvp:
Debes iniciar sesión para ver el contenido del enlace en esta publicación.en el rar viene con:
itemproto cliente
itemproto navicat
itemlist
-
no los lees y como sabes que es un insulto XDse ven bien pero tambien has los iconos y las querys porfa
-
estuve buscando extractor para el rift con archivos assets y solo hay el de h4x0r que es para la version 1.9 y el cliente ahora es 2.5
probe con el script y me descompile archivos sin formato y con una mierda de números XD
-
me he huebeado es para este juego
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -
hablamos por skype
-
from inc_noesis import * import noesis import rapi import os import struct MODE = 1 def registerNoesisTypes(): '''Register the plugin. Just change the Game name and extension.''' handle = noesis.register("RFOnline", ".msh") noesis.setHandlerTypeCheck(handle, noepyCheckType) noesis.setHandlerLoadModel(handle, noepyLoadModel) return 1 def noepyCheckType(data): '''Verify that the format is supported by this plugin. Default yes''' if len(data) < 2: return 0 try: bs = NoeBitStream(data) idstring = noeStrFromBytes(bs.readBytes(6)) if idstring != "MESH08": bs.seek(0) numMesh = bs.readShort() if numMesh <= 0 or numMesh > 50: return 0 return 1 except: return 0 def get_type(data): bs = NoeBitStream(data) string = bs.readBytes(6) try: if noeStrFromBytes(string) == "MESH08": return 1 return 0 except: return 0 def load_all_models(mdlList): '''Load all models''' #carry over from previous models matList = [] texList = [] dirPath = rapi.getDirForFilePath(rapi.getInputName()) fileList = [file for file in os.listdir(dirPath) if file.lower().endswith(".msh")] for file in fileList: f = open(dirPath + file, 'rb') data2 = f.read() modelType = get_type(data2) if modelType == 0: parser = SanaeParser(data2) else: parser = RFParser(data2) parser.parse_file() matList.extend(parser.matList) texList.extend(parser.texList) mdl = rapi.rpgConstructModel() mdl.setModelMaterials(NoeModelMaterials(texList, matList)) mdlList.append(mdl) def load_single_model(data, mdlList): '''Loads a single model. For testing purposes''' modelType = get_type(data) if modelType == 0: parser = SanaeParser(data) else: parser = RFParser(data) parser.parse_file() mdl = rapi.rpgConstructModel() mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList)) mdlList.append(mdl) def noepyLoadModel(data, mdlList): '''Load the model''' ctx = rapi.rpgCreateContext() if MODE == 1: load_all_models(mdlList) else: load_single_model(data, mdlList) return 1 #def noepyLoadModel(data, mdlList): #'''Build the model, set materials, bones, and animations. You do not #need all of them as long as they are empty lists (they are by default)''' #ctx = rapi.rpgCreateContext() #modelType = get_type(data) #if modelType == 0: #parser = SanaeParser(data) #else: #parser = RFParser(data) #parser.parse_file() #mdl = rapi.rpgConstructModel() #mdl.setModelMaterials(NoeModelMaterials(parser.texList, parser.matList)) #mdl.setBones(parser.boneList) #mdl.setAnims(parser.animList) #mdlList.append(mdl) #return 1 class RFParser(object): '''Type MESH08 parser''' def __init__(self, data): '''Initialize some data. Refer to Sanae.py to see what is already initialized''' self.inFile = NoeBitStream(data) self.animList = [] self.texList = [] self.matList = [] self.boneList = [] def plot_points(self, numVerts): rapi.rpgCommitTriangles(None, noesis.RPGEODATA_USHORT, numVerts, noesis.RPGEO_POINTS, 1) def read_name(self, n): string = self.inFile.readBytes(n) try: return noeStrFromBytes(string) except: return "" def parse_vertices(self, numVerts): vertBuff = self.inFile.readBytes(numVerts*64) rapi.rpgBindPositionBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 64, 0) rapi.rpgBindNormalBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 64, 32) rapi.rpgBindUV1BufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 64, 44) def parse_faces(self, numIdx): return self.inFile.readBytes(numIdx*2) def parse_mesh(self, numMesh): for i in range(1): print(i, self.inFile.tell()) meshName = self.read_name(100) #print(i, meshName, self.inFile.tell()) unk = self.read_name(100) matrix1 = NoeMat44.fromBytes(self.inFile.readBytes(64)).toMat43() matrix2 = NoeMat44.fromBytes(self.inFile.readBytes(64)).toMat43() matrix3 = NoeMat44.fromBytes(self.inFile.readBytes(64)).toMat43() unk, unk2, unk3 = self.inFile.read('3H') texName = os.path.basename(self.read_name(204)) self.inFile.seek(91, 1) numVerts = self.inFile.readUShort() if numVerts: self.parse_vertices(numVerts) numIdx = self.inFile.readUShort() if numIdx: idxBuff = self.parse_faces(numIdx) rapi.rpgSetMaterial(texName) rapi.rpgCommitTriangles(idxBuff, noesis.RPGEODATA_USHORT, numIdx, noesis.RPGEO_TRIANGLE, 1) def parse_file(self): idstring = self.inFile.readBytes(6) numMesh = self.inFile.readUShort() self.parse_mesh(numMesh) class SanaeParser(object): def __init__(self, data): '''Initialize some data. Refer to Sanae.py to see what is already initialized''' self.inFile = NoeBitStream(data) self.animList = [] self.texList = [] self.matList = [] self.boneList = [] def read_name(self, n): string = self.inFile.readBytes(n) try: return noeStrFromBytes(string) except: return "" def build_mesh(self, vertList, normList, uvList, idxList, matrix1, texName): #build buffers vertBuff = bytes() normBuff = bytes() uvBuff = bytes() idxBuff = bytes() count = 0 for idx in idxList: vertBuff += bytes(struct.pack('3f', *vertList[idx])) normBuff += struct.pack('3f', *normList[idx]) uvBuff += struct.pack('2f', *uvList[count]) idxBuff += struct.pack('L', count) count += 1 rapi.rpgBindPositionBuffer(vertBuff, noesis.RPGEODATA_FLOAT, 12) rapi.rpgBindNormalBuffer(normBuff, noesis.RPGEODATA_FLOAT, 12) rapi.rpgBindUV1Buffer(uvBuff, noesis.RPGEODATA_FLOAT, 8) rapi.rpgSetTransform(matrix1) rapi.rpgSetMaterial(texName) rapi.rpgCommitTriangles(idxBuff, noesis.RPGEODATA_UINT, count, noesis.RPGEO_TRIANGLE, 1) #rapi.immBegin(noesis.RPGEO_TRIANGLE) #count = 0 #for index in idxList: #rapi.immVertex3(vertList[index]) #rapi.immNormal3(normList[index]) #rapi.immUV2(uvList[count]) #count += 1 #rapi.immEnd() #rapi.rpgSetTransform(matrix1) def parse_vertices(self, numVerts): #vertBuff = self.inFile.readBytes(numVerts*28) #rapi.rpgBindPositionBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 28, 0) #rapi.rpgBindNormalBufferOfs(vertBuff, noesis.RPGEODATA_FLOAT, 28, 16) vertList = [] normList = [] for i in range(numVerts): vertList.append(self.inFile.read('3f')) self.inFile.readUInt() normList.append(self.inFile.read('3f')) return vertList, normList def parse_faces(self, numFaces): #idxBuff = bytes() #uvBuff = bytes() #for i in range(numFaces): #idxBuff += self.inFile.readBytes(12) #self.inFile.seek(36, 1) #uvBuff += self.inFile.readBytes(8) #self.inFile.readFloat() #uvBuff += self.inFile.readBytes(8) #self.inFile.readFloat() #uvBuff += self.inFile.readBytes(8) #self.inFile.readFloat() #self.inFile.readUInt() #rapi.rpgBindUV1Buffer(uvBuff, noesis.RPGEODATA_FLOAT, 8) #return idxBuff idxList = [] uvList = [] for i in range(numFaces): idxList.extend(self.inFile.read('3L')) self.inFile.seek(36, 1) uvList.append([self.inFile.readFloat(), self.inFile.readFloat() * -1]) self.inFile.readFloat() uvList.append([self.inFile.readFloat(), self.inFile.readFloat() * -1]) self.inFile.readFloat() uvList.append([self.inFile.readFloat(), self.inFile.readFloat() * -1]) self.inFile.readFloat() self.inFile.readUInt() return idxList, uvList def parse_bones(self, numBones): for i in range(numBones): self.inFile.seek(100, 1) def parse_unk(self, count): for i in range(count): self.inFile.seek(40, 1) def parse_mesh(self, numMesh): for i in range(numMesh): meshName = self.read_name(100) unk = self.read_name(100) matrix1 = NoeMat44.fromBytes(self.inFile.readBytes(64)).toMat43() matrix2 = NoeMat44.fromBytes(self.inFile.readBytes(64)).toMat43() matrix3 = NoeMat44.fromBytes(self.inFile.readBytes(64)).toMat43() numVerts, numFaces, unk1 = self.inFile.read('3H') texName = os.path.basename(self.read_name(204)) self.inFile.seek(91, 1) if numVerts: vertList, normList = self.parse_vertices(numVerts) #rapi.rpgSetTransform(matrix1) if numFaces: idxList, uvList = self.parse_faces(numFaces) #numIdx = numFaces * 3 #rapi.rpgSetMaterial(texName) #rapi.rpgCommitTriangles(idxBuff, noesis.RPGEODATA_UINT, numIdx, noesis.RPGEO_TRIANGLE, 1) self.build_mesh(vertList, normList, uvList, idxList, matrix1, texName) numBones = self.inFile.readUInt() self.parse_bones(numBones) self.parse_unk(unk1) def parse_file(self): '''Main parser method''' numMesh = self.inFile.readUShort() self.parse_mesh(numMesh)
copialo dentro de un fmt_Riftonline.py si quieres llamarlo asi pero siempre que le preceda el fmt_
que fue ya aprendiste a adaptar armaduras?
-
antes eras chevere que paso one piece ya eres para kids
-
ESTE LINK funciona
Debes iniciar sesión para ver el contenido del enlace en esta publicación.!4Qgy3BKJ!CQ1SVhqM1fZZqDAqZwblF1rErctoAJYCEJS0zQWZmSI -
se ve genial pero
hay para hombre?
-
como que la puedo usar de dos manos o de espada?si son distintas posicionesse ve bien .
-
eso se modifica en las columnas values del imtemproto de navicat o si solo quiere visualizarlos en el locale/item_proto del cliente
[Abrir puertos]router Huawei HG352s
en Informática
Publicado
oye y como hago para que me muestre la interfaz grafica del router, creo que se conecta un cable por el puerto consola es asi?