No ests registrado! Recuerda que para poder participar debes registrarte.
  Registrarse Buscar FAQ Miembros Grupos de Usuarios Login  
Este tema est cerrado y no puede editar mensajes o responder Gua para Modear la Demo del Empire :Total War by Katalambda
Gua para Modear la Demo del Empire :Total War by Katalambda
Katalambda
Gladiator [gladiador]

Registrado: 22 Feb 2009
Mensajes: 60
Ubicacin: At London gates, defending the Greatest Empire ever
Responder citando
Gua sobre cmo modear la Demo, katalambda (katkiller para los viejos amigos xD).

Antes que nada quiero decir que no me hago responsable de los pasos a seguir por los que sigan este tutorial, hganlo bajo su propio riesgo, responder a las dudas que tengan pero bajo ningn concepto asumir las responsabilidades de lo que hagan con sus archivos.

Es sumamente recomendable que hagan una copia de la carpeta Data la cual es con la que vamos a trabajar y se encuentra en:

Steam/Steammapps/common/empire total war demo/data.

Antes que nada nos bajaremos el Python, la versin 3.1, si usas Vista es la de 86x:
http://www.python.org/download/releases/3.0.1/

Ok, una vez instalado vamos a Inicio-Todos los Programas-Python-IDLE (PYTHON GUIDE), lo abrimos.

Una vez en Python le damos a File/New Window y se nos abrir otra ventanida as:





Una vez abierta la nueva ventana, dentro copiaremos esto tal cual, copia y pega de aqu a ah:





import struct, os, sys, re

# For easy file reading and writing interactions
def readLong(fhandle):
return struct.unpack('l', fhandle.read(4))[0]
def readShort(fhandle):
return struct.unpack('h', fhandle.read(2))[0]
def readByte(fhandle):
return struct.unpack('B', fhandle.read(1))[0]
def readBool(fhandle):
val = fhandle.read(1)
if val == "00":
return False
else:
return True

def writeLong(fhandle, value):
fhandle.write(struct.pack('l',value))
def writeShort(fhandle, value):
fhandle.write(struct.pack('h',value))
def writeByte(fhandle, value):
fhandle.write(struct.pack('B',value))
def writeBool(fhandle, value):
if value:
fhandle.write('\x01')
else:
fhandle.write('\x00')

def removeDir(path):
# remove all files in a folder
if not (os.path.isdir(path)):
return True

files = os.listdir(path)

for x in files:
fullpath=os.path.join(path, x)
if os.path.isfile(fullpath):
os.remove(fullpath)
elif os.path.isdir(fullpath):
removeDir(fullpath)
os.rmdir(path)

def parseArgs(args):
pack = packFile('demo1.pack','unpacked')

# create argument tree
argtree = []
for arg in args[1:]:
if arg.startswith('-'):
argtree.append([arg,[]])
else:
argtree[-1][1].append(arg)

# wander the tree, top level always has hyphenated arguments
for arg in argtree:
# case 1: list
if arg[0] == '-l':
if len(arg[1]) > 0:
for file in arg[1]:
pack.printEyeCandy(str(file))
else:
pack.printEyeCandy('./list.txt')
# case 2: unpack
elif arg[0] == '-u':
for file in arg[1]:
if file == 'all':
for i in range(len(pack.files)):
pack.exportFile(i)
else:
pack.exportFile(file)
# case 3: unpack (regexp)
elif arg[0] == '-ur':
for file in arg[1]:
pack.exportFile(file, True)
# case 4: change pack
elif arg[0] == '-p':
for file in arg[1]:
print()
print('Changing pack to '+file)
print()
pack.newPack(file,pack.outputdir)
# case 5: change output directory
elif arg[0] == '-o':
for file in arg[1]:
print()
print('Changing output directory to '+file)
print()
pack.changeOutputDir(file)


class packFile:
def __init__(self, path='', outputdir=None):
self.handle = None
if outputdir:
removeDir(outputdir)
self.newPack(path,outputdir)

def newPack(self,path,outputdir=None):
# safely open new pack
if self.handle:
self.handle.close()
self.handle = None
self.files = []
self.numFiles = 0
self.arr = 0
self.outputdir = outputdir
self.defLength = 0
self.path = path
self.readPackDefinition()

def changeOutputDir(self,path):
self.outputdir = path
if self.outputdir != None:
removeDir(self.outputdir)

def packOpen(self):
if not self.handle:
self.handle = open(self.path,"rb")
return self.handle

def packClose(self):
self.handle.close()

def readPackDefinition(self):
pack = self.packOpen()

# skip empty bytes and stuff at the start
pack.seek(16)
self.defLength += 16

# read number of files
self.numFiles = readLong(pack)
self.defLength += 4

# read ??
self.arr = readLong(pack)
self.defLength += 4

# store the offset of a certain file
offset = 0
# read file metadata
for i in range(self.numFiles):

# read length of file
length = readLong(pack)
self.defLength += 4

# read file name
char = ''
filename = ''
while char != b'\x00':
char = pack.read(1)
if (char != b'\x00'):
filename += char.decode()
self.defLength += 1
self.files.append((filename,length,offset))
offset += length

def exportFile(self, arg, regexp = False):
try:
arg = int(arg)
# option a: arg is an index
list = [self.files[arg]]
except:
# option b: arg is a string
if regexp:
list = filter(lambda x: re.search(str(arg),x[0]),self.files)
else:
list = filter(lambda x: arg in x[0],self.files)
for (path,length,offset) in list:
print('Exporting '+path+', length: '+str(length)+', at offset: '+str(offset))

# create output directory
dir = os.path.split(os.path.join(self.outputdir,path))[0]
if not os.path.isdir(dir):
os.makedirs(dir)
output = open(os.path.join(self.outputdir,path),'wb')

# open pack and go to offset
pack = self.packOpen()
pack.seek(self.defLength+offset)
# copy content
i = 0
# read MB-sized chunks as long as possible
j = length//(2**20)
while i < j:
output.write(pack.read(2**20))
i+=1
i = 0
j = (length%(2**20))//(2**10)
# read KB-sized chunks
while i < j:
output.write(pack.read(2**10))
i+=1
i = 0
j = length%(2**10)
# read byte-sized chunks
while i < j:
output.write(pack.read(1))
i+=1
output.close()
return True



def printEyeCandy(self, outfile):
output = open(outfile,'w')
for (path,length,offset) in self.files:
output.write(str(path)+'\r\n')
output.close()


# main
parseArgs(sys.argv)




Una vez hecho esto le dan a File/Save as y le ponen este nombre emp_unpacker.py y lo guardan en la carpeta Steam/Steammapps/common/empire total war demo/data

Ok, ahora cerramos el python, la dos ventanas y vamos al CMD, si tienes XP, yo no uso XP, vas a inicio ejecutar CMD y tecleas la ruta desde C:Donde quieras que tengas los programas\steam\steamapps\common\empire total war demo\data y listo, si tienes VISTA como yo vete a la carpeta Data y con el shift presionado le das al botn derecho y le das donde pone "abrir ventana de comandos aqu" no hace falta que pongas nada ya que tendrs la ruta puesta.



Bien, ahora aqu introduces lo siguiente tras toda esa linea de comandos:
emp_unpacker.py -u all

Ahora deberas ver como se descomprimen una serie de elementos que van directamente a tu carpeta Data y se almacenan en una carpeta llamada unpacked, de aqu copias, copias no cortas que sino se va todo a la M, copias y pegas todo su contenido en la carpeta Data y le dices que s a reemplazar todo.

Ahora en la carpeta Data mueve el archivo demo1 a donde te d la gana pero qutalo de la carpeta Data o no funcionarn los cambios que hagas para las unidades.

Y tachn, ya tienes todos los archivos a modear ah mismo.

Ahora te preguntars cmo modeas las unidades o los barcos.

Pues aqu est la respuesta:

Carpeta Data/Scenarios y vamos a coger por ejemplo Battle_of_lagos como ejemplo, abrimos ese archivo de extensin XML con el bloc de notas.



Yo he creado el First Rate Ship o navo de primera lnea "Canarias", el mejor sitio del mundo RazzP xD, es simple, con fijarse en los dems comandos de la lista y copiando y pegando se crean cuantos barcos quieras, de primera, segunda, tercera o cuarta lnea, solo se ha de cambiar las coordenadas para que no estn juntos en la batalla que si tropiezan sufren daos.

No se puede cambiar la nacionalidad de los barcos, son britnicos y as han de permanecer porque sino el juego se cuelga, seguro.

Donde pone "<ship_experience level="X"/>" el valor X podemos poner entre 0 y 9, esa ser la experiencia de nuestro navo.




Para las tropas? pues lo mismo, buscamos la batalla de Brandywine y vemos las tropas, el nmero de tropas est en el valor <unit unit_category="infantry" num_soldiers="1200" script_name="britain_euro_grenadiers_bearskin"> 1200 es el valor que le he puesto yo y esto sera la imagen en el juego de mi pequeo ejrcito, por cierto son mucho mayores que en los anteriores Total War ya que parece incluso que no hay lmite, aunque hasta 10.000 he llegado yo.

Aqu tienen a mis fusileros Britnicos o ms bien una Horda:


_________________



England Expects That Everyman Will Do His Duty.

Horatio Nelson in the glorious victory at Trafalgar.
Ver perfil de usuarioBuscar todos los mensajes de KatalambdaEnviar mensaje privado
Maximo.
Imperator [Emperador]

Registrado: 03 Jun 2008
Mensajes: 6556
Ubicacin: En las Tierras altas, intentado sacar mi espada de la cabeza de un ingles...
Responder citando
Ostias !!!

Esta muy bien, lastima que si pongo el empire mi PC explote...

Cuantos soldados te aguanta???

_________________

..............................................................................................................................................................................................................................Por la libertad !!!!!!!!!!!!!!!!!!!!!!
Ver perfil de usuarioBuscar todos los mensajes de Maximo.Enviar mensaje privado
Katalambda
Gladiator [gladiador]

Registrado: 22 Feb 2009
Mensajes: 60
Ubicacin: At London gates, defending the Greatest Empire ever
Responder citando
Pues Mximo la verdad que hasta ahora me ha aguantado la de dios xDD porque mira que le he puesto, pero aguanta, no veas, y no veas tambin a todos esos granaderos tirando granadas contra el enemigo, parece un bombardeo areo xD

_________________



England Expects That Everyman Will Do His Duty.

Horatio Nelson in the glorious victory at Trafalgar.
Ver perfil de usuarioBuscar todos los mensajes de KatalambdaEnviar mensaje privado
Maximo.
Imperator [Emperador]

Registrado: 03 Jun 2008
Mensajes: 6556
Ubicacin: En las Tierras altas, intentado sacar mi espada de la cabeza de un ingles...
Responder citando
Me alegro por ti, aver si alguien con la demo viene y confirma si esta todo bien y funciona jeje.

_________________

..............................................................................................................................................................................................................................Por la libertad !!!!!!!!!!!!!!!!!!!!!!
Ver perfil de usuarioBuscar todos los mensajes de Maximo.Enviar mensaje privado
Katalambda
Gladiator [gladiador]

Registrado: 22 Feb 2009
Mensajes: 60
Ubicacin: At London gates, defending the Greatest Empire ever
Responder citando
A ver si le funciona xD a m esto tal cual me ha funcionado, he exprimido la demo al mximo xD

P.D: a t no te va ni con los mnimos?

_________________



England Expects That Everyman Will Do His Duty.

Horatio Nelson in the glorious victory at Trafalgar.
Ver perfil de usuarioBuscar todos los mensajes de KatalambdaEnviar mensaje privado
Maximo.
Imperator [Emperador]

Registrado: 03 Jun 2008
Mensajes: 6556
Ubicacin: En las Tierras altas, intentado sacar mi espada de la cabeza de un ingles...
Responder citando
Me va el medieval al minimo... no te digo mas xDD

_________________

..............................................................................................................................................................................................................................Por la libertad !!!!!!!!!!!!!!!!!!!!!!
Ver perfil de usuarioBuscar todos los mensajes de Maximo.Enviar mensaje privado
Gale Geha
~Cursor~

Registrado: 06 Jul 2007
Mensajes: 3602
Ubicacin: Yermo Capital
Responder citando
Admins, haced este tema Posit, por favor.

Muy buen tutorial Kat, por cierto, has puesto mi nombre al barco del almirante que me he dado cuenta XDDD.

_________________
Ver perfil de usuarioBuscar todos los mensajes de Gale GehaEnviar mensaje privado
Katalambda
Gladiator [gladiador]

Registrado: 22 Feb 2009
Mensajes: 60
Ubicacin: At London gates, defending the Greatest Empire ever
Responder citando
Pues s, para que vieran que se poda poner el nombre de alguien del foro.

_________________



England Expects That Everyman Will Do His Duty.

Horatio Nelson in the glorious victory at Trafalgar.
Ver perfil de usuarioBuscar todos los mensajes de KatalambdaEnviar mensaje privado
Gua para Modear la Demo del Empire :Total War by Katalambda
Puede publicar nuevos temas en este foro
No puede responder a temas en este foro
No puede editar sus mensajes en este foro
No puede borrar sus mensajes en este foro
No puede votar en encuestas en este foro
Todas las horas son GMT + 1 Hora  
Pgina 1 de 1  

  
  
 Este tema est cerrado y no puede editar mensajes o responder  


Ludoskopos | Jessica Alba
Roma: Guerra Total - Rome: Total War y Barbarian Invasion 2005 © (1784 días en línea)
Para contactar con el administrador (publicidad, patrocinios, etc.), mande un correo a webmaster [-@-] romaguerratotal.com
x}]s۶u2*sjT߲8qz'v{z&x ` <yZ.{Nw%"eqڦi"Qbw],_~GO(=rݣ/JWqqxrH~x~%i՛D@񐋀zƓrNeF~ѩ 9li\"vkao ݇zK ^Ύ]!.{/.㳐Uc?E|Wy,ad:fo{] 8#* NU!eér:J ߽σKBĄɁ'.vɄ+hͿcaXKS|(E5GxBO?\v6_Sm@}MwL4Ur 99&,/<. >%.U#hCt i$ǃb3|f,w{sݎǨD*‘}`굶; t:0L6859BR3Uaξlr#!h>HRK$@ĸBF *hQ!!=THːV'R @}h|Oy)lCO@-q}&=TWc&q1͝v )8\,0+`(>8NjH4#{ doD@eb`Oƀ]pZ)8G): @kJ3 Q ?პz_Q GTr*;;W?%(f3-v6/^܈5~M#sy)IKk:-n H 뤁a!WhH]QTF>E:F.-h;=E2 h这]("i~ R ^v^=2oVH*gGC&Y2)>4} + UIVH'_֢p0 KO}0%daR #8ThPbHKo"G2*%"[ (z}(i]?YS/޴sEKXV9?%]#r̼_"1{SaL2Cb\fDR i|Ǵ<><, -gE| 9`r3,QD|$-ԥvZOdINvs5 o 0XVK 耪h>GA^L ,@}R\rL-N)< 0< 3T "1e$P>("l)ul R98e<.iJٕĤ*=G1-# i&.EF\Iͭ '_3)ГV_-VcHAҦ?qdZn+ X)Zi:/^j &*!ݭL\J=IR&Qt/-<-e|B`&^9 vŠ>߼MqZ8 f3A& !ABY 4GrijMzr^R9(74;J}\*w>F4?NvZUb],µ٦rvƜمO(71?Ȩ$%G#&Kv繤]aIm轤c|+`#0lU!9_]=/?~0ʽw&]ylGCI6 pl:f [ $È3:aC2t+U?S EF^<88gP+7%!5.śY6茨sNBA!)$\k/@8"c"WSx຺bsB!~x!#؃\0\'vKB =V0Ӑ;z˴Nˆ8"c$B.jyFJ廃ZgkʃfL3  )"v{`‡ fe L `Ãwzeko5k[[gمɀF%ɿs'qK~x(6>&CUAhU^ T\|A0'ŠSČIC7a8F$Ah}x7w`q-T{d19px0< #-DUƈ. k:k9xvw`{NE9b`2 Z\0qdό@ ]Srx}h -޽f)V1Y 7#\yW^[hnYCٙ2mkn[y-EB '\Hh&٬(}ZN^Pmy&Qțrd{+&鄈^DYf@CRumX{Q{EhlnV3/5wZܳg:_HB=p}yv?B͎489ʛS~IAp٠FFkuvmЦ;[p&NӜj.=Y%lz3ۻSO4L(ʮ׼㙝ZdY>[0Ի~$al ]. sS[6qߴEla;EJ\ L:^:.$N.0$o~Y"y2zU|S$<>^aPck-q~Ϩ;GQQBF;U-&c?yHZea3]n6`}o=%pS ?Tlu#{ ă(V3|\nakهp;9z_3åy 228jQ.@X#b:a=Q!,ё dz *"f9@L Y\ ]7r(#vwcTCA| SqL|5 n0>Er8DA b O&~& ?>S9S01{N" yf~B}2b@GXD u".!~CX5,F f֟P;z  C=BT VnNU$~K9F]1kཆpŅFS1@;f'ځ{K~6HyŪLxPG ""U5Áڋ×OѿO<ᓍ*Kwv4X.;SJqa&{"p'xT A?H3[zX8(Bяsfʪ׏|ՈZncfNMq6ƍ(?&I#A&1}%da EE}Z2$џ':ZJUVMMړŶSRXxA0\6Tu`Ʌ؀@bRj\@`=1G3X ,(_|}[۾7766-> MCV ,V`!x>/ $ՂL=Ri6+ ԞROԏ 6?Qu iaɷd-sfizl,N`iȣ%3Xe3LSk?^6[kט~LyC;2a\i8`x ZA|,1:XqTʍan@45z=:u][ %'¸ 3 J.4A1MIn6oЎy)HPSG1zȡZ@eBa>?zk5c#wp:v/ ynaG-YݼrP]pV[+8o{wySD okwo[bHt).e.:>_ H :US`;Z}֮ -`,,ռ|2 _4FL/3S6X¢dsh>Fn)Voʃ2̱tK]b8_ 8Ut"@0k˙9AuM6a;ϸ.Q7 ,go0=WE||% 5,oyXVjR.^&mqk/LWl6\dO.IѼOD#\F ԝ1ɴś 9 òX »rqlMK)xxz7퇬A80"`9 Ƴz*1%bGGE;i=ȺO0oJ, _3K4;P`~I$<3ʜE6i淠R8c :ۗjr[{o(89l٬Ig\DY7LUҚu(@߂4^^$)e (Y]~e(I̅c-8_GL<X-ƪ9)O1 FXBs]늱Vo*jzwK@)} }+5wrB\uQeV `40`XX5R/t ,%D/x,fbp$*'/+w]^#rˀZ}kqPM3iKe +ˆ(Y]K`U3U#QoZ_Ϩ&Bla 9, t: 9Ԙ*2BwM􎶐|q]90Qn`||PL9s\.˃ 0 \Яnjt l^Qph8!6ȸiq;dH[UO@n+hDSٺ VQQWoT^at|Y5ctL;0-kⲻejGc36 F$R;q9#atDKS{"p[K3̝-Y4aDX()_>_TB"}̌53XNbk m[nǯu MbQLUEJoe)1'" oP0T.#wNʔk%+LE8hQ!o$GC#Iq|r|pmI35P`,Yo%O_\M N2蚘XU[jBӇB{ t뚦)YjƴqWuK4443n`q8̒eWrdաfxN (ʫ4󪰤OG0n>3m]<oe@`顲U! Lc&!uFA@12𴅥t\)l^R./%sE(94zʔҜ 4Q\> (#;Sbrc5.Yb2/^?BDBէ1!(-&`P=X4%Do0j;1J|diFan *FUgg6F,}ɏ'GTLKɂi>"+ gU?CA>"Wsn%SӁ>FZ6BmpK`5AiU#.|hAvh < rd)j.F\M*h_r鱍 uc Xҩh K͕zhs8t>4LVy]X"߀ІKТOf34(xcT`f*a2"647|y}XkE||.IrC*?TX}QA_o CeΠ1 wzтUD+ )P٥OV_Ona@*GGkp(7!oG f1>4yO0C!:09^)h YFnsݩ9," a):JTl{ڇDku#Z(̴[95QB< ,FC_њ"*~?BҧS!nMNR3x:?9]DJJ?)|!E# &լ7(`|.RXXR_2Sgla[G9Xuͥ"j ϑŇ .NoP0gO]u8s, d|e/LuO+f~Z4xr5zD09 '8%λ "}Ik& \r5^wK^}|r愼6kN\z~r?6$+V%u @ֺ;!K{<;m-Ddv ug|9;k5azS=Wv#}y i1vk߹Ң獸HO|U?dܸ#yI5K\I3aai5/_׿J]*w6pd侨5*'yf{77mwi9ΠٯQiv7QIl5*n/Ry =3 1=uAF͊GQ=h}DK .^_ݰ;߰bޛz}67t[Vnrsyݰ-v/ y7载?4g~wYvF1=$$ylw.0J1!>_*JCXLK|2v7k$_ʁރcreG[څ|Yra[A~o5q*GBm>w9f*O-4,)\/M8k|-L*EJS%LUiu_}zW٤OM̳I*]en1ftY[Ts^5f*}q:U;zNd\T۾U,Q0̨O$Ă_P oJPW\zZH{g=WWb8Ѕxc"UjU[ՇVɟUsOtWɟUѪhUa0ZU9<'rB[-愺ݜ+ C^%o]Pk)Z|e> \xs>!8]@2UЪnhU7ZV+u[VuCUЪnh#9]J׬*}V>JUϪlϳ8۟Ol8KWLy0Nga8&STˇx7>J*wV;ʝUΪrg Z~TP{ukU'n=@36庝yI%n:^innnKg7-:f?f1oJ V9%pVe8ij>TU`5(95s:2rHN=ŮīwEVd|ǣ~&|H_7EW署Yb6vvv@NQl<4RWڻ?c v>d:v_cǧf>7,?i[V)RakrXU'BBB,[z I`~/@TJ bNU7Wߡkko9} >$*JgW^&vγV);6{f!|Q 6 ^HeWy!( ZuXϩxbϏbwp)1C~𼰪(>J{ٔ]c9oC Imd_+qPrjKLӘ̃&MNen#,D#bӐ荚OZR2ÆЪZ;D[{1pT4(ni0؁lmh[ަā~ +|2X|>;Aȇ@ggR!2(28`$>7r_șKN-5xx\1tKi5]D aGjHF2 *࿳b?@h} -qU7$K:h Ń.%H7Njgg=ђ)2(Y+j{\?^H:^10WP[C>a^*/ËKeHP/6\%7 %@2ۘD^} am]}Pa_E,y&9@~]XmsS}m'2 w[ ,0Vj^n'ܥݬp'-N4{*i,6< 4/ױD ͥ}Dq7Oc])`8.v̍Y5&|% Њ0G-&H#|`7ɝ뮋"[HcR# Rc = ԑU}-;_ !va&zɠ]c% 3{ Vb0 +?cз07ђn3dڻ@LD;W-A?CQbk!WئmeCCYC:/ݺRgObeރHr (8Z&]Lvwwp 6 4-=oås c i8|ؚ8Ymv{`ӭ~kt)8q*e5B:ډ;q=WdWU:tyO .|O̦yXeIp7 G6j`5O85̖u=b*| Xi;7-͑oq.a w- 7S Ri^姈;禮o1-^:pOYdﲼsv$"kM(Z,V:h6s2䙽/y +Ln9], g^z,4U 8&Vk%*OoÁcon*aYWRg:2JR2O9t.g4ʶ͝4qx lNk۱q#k |2;N˟3bι1|3*w: }B$!CL W/g[VfX1%XaǣG. L*ش62Ka*>L)D% | pA ;)**|Z"??+^2ǸBOR$GN_1ұt }mFRvv^R:4i@'E(7kvoҧ2>z7dQ]zx UBT~bħ>s'R@Rҟ"̋ܲ t8FJQ̰ zP`(HGZMnGjsz7<9Y5 2h̊h5Ze7)wԏ%pF4'9!&'Ȗ[,'(U.z:CYF[N~f5TL\~&> ߮k5kkַyua#o@Z...HOVq N嬑^pA:BO%g5i7wrTM"J],¼I+P7 SwXO=N;5!.y?}#ƮiQQ <fkM~ɩ쁩CCvټ }@P˭v-{_uS]IV@2.TЩoTX&A(`}$y[~oAa]roK1N7sb/1