davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 19, 2013 19:14:19 GMT
Hey folks,
with all this new 1.50 stuff going on, I've heard that some things are just not possible due to engine limitations (like Mac+Windows Multiplayer, More fluid marble movement, etc.).
But as far as I know, Torque Script (I think that's the engine's name) is directly integrated into Marble Blast. It's not like Java, which you need to install FIRST before you're able to run java applications and so on.
Well, I thought about this: If the engine is indeed integrated, are you guys able to make changes to it (change code)?
|
|
|
Post by ProMarbler on Nov 19, 2013 19:45:41 GMT
You can't make changes to the engine, it's integrated into the MarbleBlast binary itself; decompiling it would be illegal. That's what you meant, right?
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 19, 2013 19:49:20 GMT
You can't make changes to the engine, it's integrated into the MarbleBlast binary itself; decompiling it would be illegal. That's what you meant, right? MarbleBlast binary? What's that?
|
|
|
Post by ProMarbler on Nov 19, 2013 19:54:35 GMT
It's the actual file that is first launched when you start the game. On a Mac, if you right-clicked and selected "Show Package Contents", the executable file would be Contents/MacOS/MarbleBlast Gold. On Windows, it would be the Marbleblast.exe file (or similarly named).
|
|
|
Post by IsraeliRD on Nov 19, 2013 21:23:37 GMT
The executable is c++ based, and de-compiling it is fairly illegal. Well technically you can, according to the readme, but then you cannot share that. De-compiling though is also pretty hard, especially since this is a C++ based engine. You're going to get lots of blank pieces, broken parts, missing functions and way more. It's actually incorrect to think you'll get 100%, because you're not gonna get a lot. Also you'll either have to pay a lot for a program that is capable of de-compiling (and again it won't be perfect), or you'll need to have a lot of expertise in the area.
The scripts are, on the other hand, TorqueScript (CS/GUI) which is what we do edit. What we create is dependable on the engine and therefore functions that exist in it. When we say something is impossible, we talk directly about the engine as it has missing functions. That said, even if the engine does have a function name it does not mean it has anything in it, it can be an empty function.
The Wnidows and Mac versions of MBG have two different engines in terms of some minor differences that shouldn't exist, but do. These are enough to corrupt multiplayer to not function between the two.
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 20, 2013 14:00:14 GMT
Well thanks, that covers pretty much everything I wanted to know! Just one more question: Why are you talking about decompiling the whole time? Can't you just open certain files with certain applications?
|
|
|
Post by IsraeliRD on Nov 20, 2013 14:19:52 GMT
Since you were talking about the engine itself, I was explaining what it is - an end product of a compiler. While you can definitely open it using any text program or a hex editor, it will have little value.
Since you are asking about changing the code I explained why it's not possible, the problems that you face during de-compiling and some legality.
The c++ code does come in h/cpp files that you can read normally in a text editing program, but the compiler makes it all an exe that you can't really de-compile and expect perfect h/cpp files as a result.
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 20, 2013 16:19:59 GMT
Whey. Seems to be a pretty complicated thing, but I think I'm starting to understand it. Thanks!
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 22, 2013 15:22:58 GMT
Are you guys (HiGuy, Jeff…) actually part of GarageGames or just a MBG fan?
|
|
|
Post by ProMarbler on Nov 22, 2013 17:40:09 GMT
They're just part of the community. I'm not even sure whether we have any GG staff/developers on these forums.
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 22, 2013 17:45:11 GMT
On this topic, what is the language used in MB?
|
|
|
Post by ProMarbler on Nov 22, 2013 18:01:53 GMT
The "engine" or core executable uses C++. The scripting language that MarbleBlast uses for the interface and levels and just about everything else uses a scripting language called TorqueScript.
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 22, 2013 18:33:27 GMT
So… TorqueScript is a language itself? And why TorqueScript? Isn't there a thing called TorqueEngine?
|
|
|
Post by Jeff on Nov 22, 2013 20:25:40 GMT
topic.derailedOffTheTracks = true;
look up torque game engine. Its scripting language is called TorqueScript. The Torque Engine IS Torque Game Engine
And no we are not part of GarageGames and GarageGames doesn't even own marble blast anymore. I'm still in Highschool theres no way I can be working there hahahaha.
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 22, 2013 22:05:32 GMT
topic.derailedOffTheTracks = true; look up torque game engine. Its scripting language is called TorqueScript. The Torque Engine IS Torque Game Engine And no we are not part of GarageGames and GarageGames doesn't even own marble blast anymore. I'm still in Highschool theres no way I can be working there hahahaha. function.stopDerailing() = true; Lol yeah Okay I think I got it now, only thing left to do is wait… PS.: A TorqueScript Tutorial would be nice
|
|
|
Post by IsraeliRD on Nov 22, 2013 22:15:27 GMT
Moved posts here because it relates to this topic and not 1.50 beta.
|
|
|
Post by Jeff on Nov 22, 2013 22:31:02 GMT
No time for that. I learned with no tutorials. It's an easy language. I started with TS I had no idea what TS was when I started. Never programmed before and started coding MB. Now I am very perficient in TS and C++. I do Java as well as a little PHP. Just start by diving into it or looking at documentation garagegames provides (which isn't a lot but will push you on basic syntax)
|
|
|
Post by Sporlo on Nov 23, 2013 4:36:34 GMT
"proficient"
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 23, 2013 10:12:12 GMT
No time for that. I learned with no tutorials. It's an easy language. I started with TS I had no idea what TS was when I started. Never programmed before and started coding MB. Now I am very perficient in TS and C++. I do Java as well as a little PHP. Just start by diving into it or looking at documentation garagegames provides (which isn't a lot but will push you on basic syntax) Do you need to have a general programming knowledge? I can code a bit of Java, will that help me out?
|
|
|
Post by Jeff on Nov 23, 2013 16:59:26 GMT
somewhat, I mean the language is dynamically typed. There is only strings and objects in torquescript : P You can't define a var as an int or float. If its a number the engine does a typecast to an int or float and pushes it on the float/int stack.
That's why TorqueScript is a slow scripting language, because everything is converted to and from strings (const char*)
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 23, 2013 18:37:02 GMT
Well that sounds kinda interesting, I must say! I kinda want to get into TorqueScript, I think it'll allow for some pretty awesome stuff! Well, do I need like a TorqueScript Editor or just Notepad++, or how do I even run it?
|
|
|
Post by Jeff on Nov 23, 2013 20:46:15 GMT
notepad++, to load a script go into the console and type
exec("path/scriptname.cs");
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 24, 2013 20:22:03 GMT
notepad++, to load a script go into the console and type exec("path/scriptname.cs"); Well yeah, I still need a little explanation. Are there some tutorials out there or anybody from the staff who can give me some How To's? Not asking you guys to stop your work on 1.50, this is just a small question with not much priority.
|
|
|
Post by Jeff on Nov 24, 2013 20:23:56 GMT
|
|
davidskanal
Intermediate Marbler
[ss:Default Skin]
10%
Sign hit.
Posts: 89
|
Post by davidskanal on Nov 24, 2013 20:31:22 GMT
Thanks, I really appreciate that you've taking your time!
|
|