|
 |
« Reply #120 on: April 07, 2012, 07:10:33 AM » |
|
I'll be waiting for that model convertor so I can make professional models for brawl. Can't wait.
 it's called importing. okay, now to test the programs!
|
|
|
Logged
|
I know for a fact that the vast majority of the public here cares more about free products than actual quality. I mean, we're kinda modding an old Wii game after like 6 years, instead of buying new stuff. That's pretty telling. 
|
|
|
|
|
 |
« Reply #121 on: April 07, 2012, 07:21:56 AM » |
|
well... UMC isn't really doing too well I'm afraid 
ever since the restructure, I've been tryuing to think of functions like this:
#internal function (don't use) def _Bit(big,signed,byte_size,value): global allow_access if bool(allow_access): try: if type(value)==str: if value=='': #Read try: strval=f.read(byte_size) if len(strval)<byte_size: sv=(reversed(strval) if big else strval) val=0 for i,v in enumerate(sv): val=val|(int(v.encode('hex'),16)<<(i*8)) if signed == 1: val=(val-(int('1'*(byte_size*8),2)+1) if val>int('1'*(byte_size*4),2) else val) if signed == 2: #byte_size must be 4 or 8 (IEEE format standard) from struct import unpack switch(byte_size) if case(4): val=unpack(('>f' if big else '<f'), strval)[0] if case(8): val=unpack(('>d' if big else '<d'), strval)[0] return val else: if sub_function: return 'Null',0 else: _Warning("End Of File reached") except IOError: if sub_function: return 'Null',1 else: _Warning("Error: function is set to read while file is set to write ( "+ ('b' if big else '')+('s' if signed else 'u')+str(byte_size*8)+"('') )"); else: if sub_function: return 'Null',4 else: _Warning("Error: function contains an invalid value: ( "+ ('b' if big else '')+('s' if signed else 'u')+str(byte_size*8)+"('"+value+"') )") elif type(value)==int: #write int try: if signed==1: value=(value+(int('1'*(byte_size*8),2)+1) if value<0 else value) Bytes=[chr((value>>(8*i))&255) for i in range(byte_size)] f.write(''.join(reversed(Bytes)) if big else ''.join(Bytes)) except IOError: if sub_function: return 'Null',2 else: _Warning("Error: function is set to write while file is set to read ( "+ ('b' if big else '')+('s' if signed else 'u')+str(byte_size*8)+'('+str(value)+')'+" )"); return 'Null' elif type(value)==float: #write float try: from struct import pack if byte_size==4: f.write(pack(('>f' if big else '<f'), value)[0:4]) if byte_size==8: f.write(pack(('>d' if big else '<d'), value)[0:4]) except IOError: if sub_function: return 'Null',2 else: _Warning("Error: function is set to write while file is set to read ( "+ ('b' if big else '')+('s' if signed else 'u')+str(byte_size*8)+'('+str(value)+')'+" )"); return 'Null' elif type(value)==list: return list(_Bit(big,signed,byte_size,Lval) for Lval in value) elif type(value)==tuple: return tuple(_Bit(big,signed,byte_size,Tval) for Tval in value) elif type(value)==bool: return (_Bit(big,signed,byte_size,int(value))) else: if sub_function: return 'Null',3 else: _Warning("Error: function contains an invalid value: ( "+ ('b' if big else '')+('s' if signed else 'u')+str(byte_size*8)+"("+str(value)+") )") except NameError: if sub_function: return 'Null',3 else: _Warning("file is not open") allow_access=0; sub_function=0 else: _Notice("_Bit() is for internal function use only",0)
^that function can write a hex string of any length from an int. I'm still working on floats...
and it's also able to be used as a sub-function for other internal functions >_> (errors won't display if this is a sub-function)
I'm calling this function done for the first release of UMC, but now I have to get the others working >_>
my next function being StructArr() which can do this: 3F A5 07 C0 BD E1 47 AE 41 82 AA FD 3F CC 2E D3 00 00 00 00 00 00 00 00 StructArr(['bf32','bf32'],'0') >>> [[float,float],[float,float]] #[0,0] is not returned
3F A5 07 C0 BD E1 47 AE 41 82 AA FD 3F CC 2E D3 00 00 00 00 00 00 00 00 StructArr(['bf32','bf32'],3) >>> [[float,float],[float,float],[0,0]] #StructArr(['bu32'],0) returns []
3F A5 07 C0 BD E1 47 AE 41 82 AA FD 3F CC 2E D3 00 00 00 00 00 00 00 00 StructArr(['bf32','bf32'],[0,'*']) >>> [[float,float],[float,float]] #[0,0] is not returned # '*' is a wild call (value can be anything)
StructArr(['bu32','bu16'], [[0,32],[1,64]] ) >>> '00 00 00 00 00 20 00 00 00 01 00 40' #you'll have to designate the stop-struct or 0-struct to write
yea... I've got alot to do >_<
EDIT: btw Volt, I havn't forgotten about programming the script again 
Post Merge: April 08, 2012, 08:13:47 PM I may as well talk about it now that the word is out... heh
my new method for modelling
 basically, I want to get it to where I can simply use 4 verts to make a sphere. I intend to build Riku using this method. (now that I have a base mesh)
right now it's proving to be quite a pain to program, and doesn't want to work correctly... you'll notice how the sub-vert outline doesn't want to be smooth...
and in that last mesh, (I need to add the aglorithms to support this) the sub-verts should never extend outside of the base mesh.
is there anyone more skilled than me with this type of geometry to help me fix this?? :/ (I never took geometry in school, and my knowledge only extends so far)
|
|
« Last Edit: April 08, 2023, 06:10:52 AM by DarkPikachu »
|
Logged
|
|
|
|
|
|
|
 |
« Reply #123 on: April 23, 2012, 09:09:37 PM » |
|
update:
 ^fixed it =D
looks like a patrat lol
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #124 on: April 24, 2012, 05:17:07 AM » |
|
looks like a patrat lol lol it's just my old sub-mesh model of Riku :3
|
|
« Last Edit: November 29, 2019, 05:23:52 PM by DarkPikachu »
|
Logged
|
|
|
|
|
|
|
 |
« Reply #126 on: April 29, 2012, 06:05:03 AM » |
|
I like it, but it does need gfx or a background. Will you ever release an exe?
|
|
|
Logged
|
I know for a fact that the vast majority of the public here cares more about free products than actual quality. I mean, we're kinda modding an old Wii game after like 6 years, instead of buying new stuff. That's pretty telling. 
|
|
|
|
|
 |
« Reply #127 on: April 29, 2012, 07:58:19 AM » |
|
yea... all I want to do is put either 'UMC' or 'Universal Model Converter' in front of Pichu... (most likely 'UMC') but I'm not quite sure how :/
the best idea I've got would be something like the Universal Studios logo where the text wraps around the world...
but I don't really want that as it wouldn't look right. X( anyone got any ideas??
Will you ever release an exe? glad you asked XD
this version will integrate the Python271 interpreter with it's src. (no need to install Python) 
so it technically is, but isn't an exe. (fraid IDK how to compile yet... heh)
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #128 on: April 29, 2012, 08:27:23 AM » |
|
So python will be included? I've tried to install it, but failed. and I think you could use pythontoexe, / I can't get it to work since I can't install stuff. (I use portable drives)
|
|
|
Logged
|
I know for a fact that the vast majority of the public here cares more about free products than actual quality. I mean, we're kinda modding an old Wii game after like 6 years, instead of buying new stuff. That's pretty telling. 
|
|
|
|
|
 |
« Reply #129 on: April 29, 2012, 02:17:17 PM » |
|
So python will be included? umm... yes, but due to the complications of getting the seperate loaders to work with it, an installer will be needed... (especially for the start-menu and shortcut entries)
I've tried to install it, but failed. and I think you could use pythontoexe, / I can't get it to work since I can't install stuff. (I use portable drives) O.o how?? unless you're on school or library compys <_< (this would pose a slight problem for my program as it uses .bat files)
^I'll see if I can make a pseudo portable version... (click and drag the loader (.py) over the interpreter (.exe) to start it)
you can also get Portable Python you know... but it still requires an installer <_< (R-Click -> Open With: -> select your interpreter -> click OK)
and yes I've tried Py2exe... the output programs don't even work D:
Post Merge: April 29, 2012, 03:01:20 PM uugh... sry if I take a while to reply at times...
it's my freakin connection >:O I literally have to run like this to make sure I'm fully connected:

yes I use IE8, don't bamf me. it's protected my compy for over 6 years so GTFO. and I've never had a problem with it. (poor website scripting such as my video about this forum doesn't count)
anyways, sure my connection looks decent right? it only lasted for the next second of that image and then completely cut out. then only 1 program displayed the connection, and then dead again >:O it's even dead right now, and maybe for even the next 2 days (if you're reading this then luckilly it wasn't)
but yea, so if I disappear for a good long while, it's cause I smashed this card with a mallet. >:O
EDIT: ??? why is my post being merged, ON MY THREAD?!?!?! I thought they fixed that previously >_>
and it still merges the wrong way XDD
|
|
« Last Edit: December 02, 2019, 05:33:51 PM by DarkPikachu »
|
Logged
|
|
|
|
|
|
 |
« Reply #130 on: May 20, 2012, 01:23:34 AM » |
|
some progress on UMC:  I was able to duplucate my previous best results, and then some: ^Giga Bowser (Trophy) uses NBT vectors which apparently have an unparsed index or something... >_>
if anyone would like to see if they can help, I have my DAT script UL'd here: http://gist.github.com/2757147 as well as some session info containing the conversion of 'PlPcNr.dat' (literally how to read (what's known of) the file) you can find that here: http://raw.github.com/gist/2757154/2563436a4bde943ea5ef583ddcb48ea889fa2fbb/Session-info.log (you need PlPcNr.dat and at least HxD to follow the session info) ^the file offsets are exact so you don't need to add 32 
note: Noobs can also use the session-info.log to learn how to read what I know about melee files  (in case my script confuses you)
I've just gotten some useful sources though, so hopefully I can figure something out 
if you have any advanced requests as to how to format information in the log file, please share your ideas  (I want to know the best ways to log and label info. (especially for debugging purposes))
Post Merge: May 20, 2012, 10:48:59 AM working on speeding up my bit processor... I can take a shower while converting Pichu on my 400MHz compy, and it'll still be converting when I finish D:
hopefully these speedups will work as expected 
you can follow me on this here: http://www.daniweb.com/software-development/python/threads/422101/floating-point-arithmatic-wtf-am-i-doing-wrong/2
|
|
« Last Edit: November 29, 2019, 05:12:13 PM by DarkPikachu »
|
Logged
|
|
|
|
|
|
 |
« Reply #131 on: May 20, 2012, 08:25:17 PM » |
|
Can you make a program that can capture/rip models from Champions Online? There's already one for wow, which is the same company that made CO.
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #132 on: May 23, 2012, 07:04:59 PM » |
|
Can you make a program that can capture/rip models from Champions Online? There's already one for wow, which is the same company that made CO.
depends on if the models are client or server side >_>
if client side, I could add a plugin to UMC 
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #133 on: May 23, 2012, 07:57:23 PM » |
|
depends on if the models are client or server side >_>
if client side, I could add a plugin to UMC 
How do I tell if the game is client or server side?
|
|
|
Logged
|
|
|
|
|
|
 |
« Reply #134 on: May 25, 2012, 05:37:38 AM » |
|
Can your model converter fixing normals? Or can you create a small program that ca fix the normals? that´s would be nice 
|
|
|
Logged
|
|
|
|
|
|