|
Post by Cooldudepoke on May 19, 2012 15:53:30 GMT
I'd like to know if any of these methods are possible/legal and if the're possible, how would anyone go about doing them: Method 1:Decompile The MarbleBlastGold.exe file and after getting the C++, merge in the missing shader stuff from TGEA or T3D. Method 2:Emulate Fake Shaders with TorqueScript for both Marbles and Platforms.(In MB9, I noticed that the marble had fake shading on it in BlazerYo's video). Those were the methods I thought of, Can you let me know if they're possible/legal and how(somewhat) as I said before... Also If you can think of any other methods just say so PS: Did I post this in the right place
|
|
|
Post by IsraeliRD on May 19, 2012 16:12:01 GMT
1) Technically not very legal, but if you do it for private use (i.e. never share with anyone, because else you pretty much violate many laws) then well no one would care (as long as they don't find out you did that to begin with). To do it, you first need to figure out what goes into the engine, aka the compression type. There are several methods so you gotta figure out which one is it. I suspect I know what it is but there's more than just compression. The biggest thing you have to know is that if you want to decompile *any* engine is that you aren't going to get 100% of the data. You'll be happy to get even half, maybe more. And it's not just one simple step, there's quite a process and that could take a few weeks/months on its own. You aren't going to find a decompiler either, it's something you have to build yourself manually.
Additionally, MB's engine was heavily modified for MB and pretty much differs from any other Torque Engine. Go with the fact you aren't going to get 100% data (as said) and you get pretty stuck. Likewise, the engine misses things like terrain, water, AI and other things (mind you, shaders didn't come until later versions/engines).
You're better off getting TGEA and working on that engine and doing your own physics for it... will be much faster and has all the stuff you need (terrain, AI, water, shaders, multiplayer, etc.).
2) I don't know here, but then again, MB9 uses code from MBU which is illegal so I can't help you there.
|
|
|
Post by Cooldudepoke on May 19, 2012 16:20:27 GMT
Thanks Matan I'll hope to see someone telling me more about method 2, since that should be legal
|
|
|
Post by MadMarioSkills on May 19, 2012 17:01:09 GMT
The marble in BlazerYo's video was just using an environment map, regular MB has it if you've enabled it and run on OpenGl.
|
|
|
Post by Jeff on May 19, 2012 17:50:04 GMT
$pref::environmentMaps = "1"; enables reflection. Then, go to marble.cs and find the datablock containing the defaultMarble. Find the emap value (if it exists, and make it look like this): emap = true; should give you a good reflection (at least for marble blast lol) But yea, i was looking into shaders myself with torque game engine, but the oldest things i can find on the engine is engine version 1.5, which is like years later marble blast's. The marble blast engine is roughly torque game engine 1.1/1.2 , but as Matan pointed out, there are a ton of differences. Example, try to find 1/2 of the other c++ callback classes in the torque side of marble blast. Good luck , as you can't. There is no player class (marble class replaced it), no weather classes, no shader data classes, and many others. But, we make do with what we have.
|
|
|
Post by Cooldudepoke on May 19, 2012 20:01:46 GMT
$pref::environmentMaps = "1"; enables reflection. Then, go to marble.cs and find the datablock containing the defaultMarble. Find the emap value (if it exists, and make it look like this): emap = true; should give you a good reflection (at least for marble blast lol) But yea, i was looking into shaders myself with torque game engine, but the oldest things i can find on the engine is engine version 1.5, which is like years later marble blast's. The marble blast engine is roughly torque game engine 1.1/1.2 , but as Matan pointed out, there are a ton of differences. Example, try to find 1/2 of the other c++ callback classes in the torque side of marble blast. Good luck , as you can't. There is no player class (marble class replaced it), no weather classes, no shader data classes, and many others. But, we make do with what we have. Tried it! I love my *Horrible* Marble Texture Now
|
|
|
Post by Jeff on May 19, 2012 21:00:43 GMT
Also, to elaborate on what I said, there are no shader objects in the current marble blast torque game engine, so its virtually impossible to do it legally.
|
|
|
Post by Trace on May 20, 2012 2:58:39 GMT
A script hook could probably accomplish it. But it would take a lot of work and you would have to be really knowledgeable with Direct X hooks.
If it was even possible.
|
|
|
Post by Jeff on May 20, 2012 4:14:56 GMT
@trace you can't execute anything outside of torqueScript without hacking the EXE.
Jeff
|
|
|
Post by Hi Guy on May 20, 2012 4:56:59 GMT
Unnnnnnnnnnnnnless you set a program shortcut (itms:// anyone?) and launch that through gotoWebPage(). Pwnt.
|
|
|
Post by Jeff on May 20, 2012 4:58:16 GMT
Still, I don't see how that would make it compatible with the torque game engine, and how it would just hook into it...
|
|
|
Post by Trace on May 20, 2012 6:29:09 GMT
@trace you can't execute anything outside of torqueScript without hacking the EXE. Jeff Jeff you silly if you think that.
|
|
|
Post by Cooldudepoke on May 20, 2012 14:10:40 GMT
@trace you can't execute anything outside of torqueScript without hacking the EXE. Jeff Jeff you silly if you think that. How??? I have no Idea how you did that but...does that mean shaders are possible in MBG? Edit: @matan forum bug I can't put the : D emoticon
|
|
|
Post by Jeff on May 20, 2012 14:33:40 GMT
@trace you can't execute anything outside of torqueScript without hacking the EXE. Jeff Jeff you silly if you think that. Sure, but its still glichy and you know it Once you get the textures to show up with it, i'll be impressed.
|
|
|
Post by Trace on May 20, 2012 14:51:25 GMT
Jeff you silly if you think that. How??? I have no Idea how you did that but...does that mean shaders are possible in MBG? Edit: @matan forum bug I can't put the : D emoticon Yea shaders are possible to a certain extent. I'll put something else up later today. Still can't figure out the texture bug tho.
|
|
|
Post by IsraeliRD on May 20, 2012 14:54:23 GMT
I posted some info in the vid if anyone wants to check
|
|
|
Post by Jeff on May 20, 2012 18:12:32 GMT
@trace, going onto what matan said, 1. make a new datablock datablock fxlightData(lighty) { // add your properties, i am to lazy to look it up };
2. then, create the object: function addLight() { if (isObject(localclientconnection)) { %light = new fxLight() { datablock = lighty; position = localclientconnection.player.getWorldBoxCenter(); scale = "1 1 1"; rotation = "1 0 0 0"; }; missionCleanup.add(%light); } }
3.Then, call in the console: addLight(); Or, you could try an explosion data object, which makes a little light explosion for dynamic lighting.
|
|
|
Post by Trace on May 20, 2012 20:51:42 GMT
@trace, going onto what matan said, 1. make a new datablock datablock fxlightData(lighty) { // add your properties, i am to lazy to look it up };
2. then, create the object: function addLight() { if (isObject(localclientconnection)) { %light = new fxLight() { datablock = lighty; position = localclientconnection.player.getWorldBoxCenter(); scale = "1 1 1"; rotation = "1 0 0 0"; }; missionCleanup.add(%light); } }
3.Then, call in the console: addLight(); Or, you could try an explosion data object, which makes a little light explosion for dynamic lighting. Seizure told me how to make this last night silly people.
|
|
|
Post by MarbleDuck on May 20, 2012 21:34:18 GMT
1) Technically not very legal, but if you do it for private use (i.e. never share with anyone, because else you pretty much violate many laws) then well no one would care (as long as they don't find out you did that to beg--snip-- You're better off getting TGEA and working on that engine and doing your own physics for it... will be much faster and has all the stuff you need (terrain, AI, water, shaders, multiplayer, etc.). 2) I don't know here, but then again, MB9 uses code from MBU which is illegal so I can't help you there. Torque 3D > TGEA. And if you're rebuilding MB, you might as well use a superior engine, like Unity, Cryengine 3.4, Unreal 3, etc. I was actually thinking of doing an MB-like game in CE3. That way, we can have full DirectX 11.1 support in MB =P 2) Wrong, Matan. MB9 does not, has not, and never will use MBU code. Just because we have an illegal XBOX port of MBU doesn't mean we use it in MB9. All of our scripts and codes are completely original. Silly Matan. =P --- Holy mother of bloom, Trace
|
|
|
Post by Trace on May 20, 2012 21:45:46 GMT
Aight, last silly thing I'm going to post. If I can get textures working somehow I'll update you all, but this it for me.
|
|
ChaosUnown
Experienced Marbler
MB Interior Graphics Designer
Posts: 126
|
Post by ChaosUnown on May 20, 2012 22:48:54 GMT
That's insane, haha. Is it possible to apply these effects in the Mac build too? Or does it not matter?
|
|
|
Post by Jeff on May 20, 2012 22:50:06 GMT
If what he is using is an explosion data then yes, if he is using fxLight, then no, because fxLight classed based objects are for the windows executable only.
|
|
|
Post by Trace on May 20, 2012 22:54:57 GMT
No it's not possible to apply those effects to the Mac build, as Directx (and fxLight for that matter), are both Windows only.
|
|
|
Post by IsraeliRD on May 20, 2012 23:40:41 GMT
2) Wrong, Matan. MB9 does not, has not, and never will use MBU code. Actually at some point it did (with admittance from BlazerYo, unless he lied to everyone again like usual).
|
|
๖ۣۜAddict™
Advanced Marbler
[ss:Resurrection]
ツ ツ ツ ツ ツ ツ ツ ツ ツ ツ ツ
Posts: 312
|
Post by ๖ۣۜAddict™ on May 20, 2012 23:56:55 GMT
Yeah, Blazer isn't a reliable source to get info from, EVER.
|
|
Matthew
Experienced Marbler
[ss:Default Skin]
I'm salty.
Posts: 127
|
Post by Matthew on May 21, 2012 22:27:35 GMT
OMG!!! That is sick! Your shaders are amazing!
|
|
|
Post by Trace on May 21, 2012 23:08:22 GMT
OMG!!! That is sick! Your shaders are amazing! I didn't program them or anything else I'm using to get this to work, so I can't take much credit.
|
|
|
Post by brandondorf9999 on Mar 27, 2013 1:20:03 GMT
You can make shaders using milkshape3d and making a color texture of what you want on the model. Frankly, milkshape3d can perform shaders when the regular un-colored and the color texture to perform a shader on it when the detail map name is applied to the material in separete materials and one color texture isn't applied on it. It's best to view this document on the dts exporter so that you can make shaders for models using detail map: docs.garagegames.com/torque-3d/official/content/documentation/Artist%20Guide/Exporters/ms2dtsplus.html#MATERIALS_DETAILMAPHopefully, that would be helpful to you when making custom shapes.
|
|