Massassi Forums Logo

This is the static archive of the Massassi Forums. The forums are closed indefinitely. Thanks for all the memories!

You can also download Super Old Archived Message Boards from when Massassi first started.

"View" counts are as of the day the forums were archived, and will no longer increase.

ForumsDiscussion Forum → Patch for JK.exe::: No Thing Limit!
12345678910
Patch for JK.exe::: No Thing Limit!
2004-12-10, 11:45 AM #1
I had emailed Brian this and he said I should post it here, so here goes:

A friend of mine has researched and come up with a way to eliminate the 640 Thing Limit in JK. He did it by looking at JK.exe in a debugger with some assembly stuff, and figured out where he would need to hex edit JK.exe to make it have more things. (if you want specifics, just ask)

So anyway, the huge thorn that was 640 things is gone, however, it requires distributing a modified JK.exe, OR, the most legal route, a program that modifies JK.exe.

If a program was released to modify people's JK.exe's, would this community be able to accept it? JK.exe in any shape or fashion will not be distributed.

This frees up so much limitation on anyone who would want to Mod JK, or build levels! Think of the levels! I can recall many a level that was scrapped or not 100% because of the limit on things. All complex architechture could be done with 3dos, hell the whole level! The sky's the limit! (and the framerate :p )

I myself do not believe that distributing a patcher program this many years after JKs release would be negative for those involved because:
A) It would further the JK community/someone will buy a copy of JK because of it
B) The patcher isn't LEC copywrited material
C) When I was modding for X-Wing Vs TIE Fighter, the stats for the ships had to be edited in the XvT.exe. What we did was come up with a patch file and a program that just patched the exe in the ways we wanted. There was at one time, one of the developers from Totally Games popping up once in a while, with no quarrels over what we were doing. (Because we weren't distributing anything that came from LEC/TG)

With all that said, Discuss!

[Oh! And with a little more research, the 3do limit, and any other limit can be eliminated, maybe even mesh limits, adjoin limits, sector limits, everything!]
-Hell Raiser
2004-12-10, 11:47 AM #2
Rather than patch the file it would be more legal to modify the relevant memory locations while the game is running of course finding these out is somewhat difficult for constants.
TheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWho
SaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTh
eJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSa
ysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJ
k
WhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSays
N
iTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkW
2004-12-10, 11:50 AM #3
A wrapper?
-Hell Raiser
2004-12-10, 11:50 AM #4
I would be fine with a patcher. Nothing goes wrong in multiplayer, I assume?
2004-12-10, 11:51 AM #5
Quote:
Originally posted by Hell Raiser
A wrapper?


indeed. Just a program which launches the game and then alters the memory locations.
TheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWho
SaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTh
eJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSa
ysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJ
k
WhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSays
N
iTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkW
2004-12-10, 11:53 AM #6
questions.

If someone was to use this patched version to make a level with 1000 or more things in it, would an unpatched JK be able to run it? or would this mean that they would also have to patch it.

2. does this mean your gonna do this and make TDiR more excellent?

The game is what? 8 years old? I think I'd download the patch if people made beter mods because of it. Might bring some life back to our beloved game.
The Gas Station
2004-12-10, 11:55 AM #7
I guess I should explain what he did:

JK loads up an ID list for Things, then after that list is an ID list for Cogs.

If you set a .jkl to have a 641 or higher limit, JK will crash because when setting aside the space for this list, it will go past it's boundary of 640, and overwrite the cog IDs. A whacked out number is a cog ID now, so JK crashes when trying to access that cog on startup.

What he did, was tell JK to build this list elsewhere in memory, and change all references from the old place, to the new place. Now JK.exe will create as many things as you have computer memory. :cool: (the same principle could very well apply for any other limit)
-Hell Raiser
2004-12-10, 11:57 AM #8
Quote:
Originally posted by Grant
questions.

If someone was to use this patched version to make a level with 1000 or more things in it, would an unpatched JK be able to run it? or would this mean that they would also have to patch it.


The level would have to come with the patcher, or specify that you need the patcher to run it. The thing limit is only the number in the .jkl, you still have to up it to squeeze more things in it. (I guess it could be modified so that the number in the .jkl doesn't matter)

Quote:
2. does this mean your gonna do this and make TDiR more excellent?


Sprite particle system, longer beam tails, all sorts of **** flying around on screen. **** ya, you bet your ***!

Quote:
The game is what? 8 years old? I think I'd download the patch if people made beter mods because of it. Might bring some life back to our beloved game.


Thats the plan stan. :cool:

Pile this in with the Editing Hub, and you could have yourself a community on FIRE!
-Hell Raiser
2004-12-10, 12:02 PM #9
Is there a way to remove other limits such as the number of adjoins that result in detail HOM? Surfaces per mesh etc?

I prefer making a level out of architecture as much as possible, whilst 3dos are now an option, I think archi would still be the better option if possible.
Detty. Professional Expert.
Flickr Twitter
2004-12-10, 12:03 PM #10
would you have tor un the patcher everytime you play a map thats used a patched jk? or does it permently re-write your exe. this does nto effect other mods or anything else about jk?
The Gas Station
2004-12-10, 12:04 PM #11
GBK has already found a way around the thing limit using a cog. As an added bonus, his way isn't illegal.
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 12:14 PM #12
GBKs cog wouldn't be able to display 700 things (and keep track of them) on screen at once. :p

It would backup your original JK.exe, and patch. AFAIK, it shouldn't interfere with anything else. It's just more memory for things. If a level with 1000 things was run with the 640 limit JK.exe, it would crash on startup. You could play MP with someone with different exes and it would work. (Checksum killer)

My Friend discussed a wrapper (and something about being able to forward graphics to OpenGL O_o) but I don't know the details on that with him.
-Hell Raiser
2004-12-10, 12:21 PM #13
modifying JK.exe shouldnt cause a checksum error.
TheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWho
SaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTh
eJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSa
ysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJ
k
WhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSays
N
iTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkW
2004-12-10, 12:33 PM #14
There's really not much point in discussing the matter any further. We've already been over this. It's illegal. Do you really need it spelled out for you any easier? Your friend shouldn't even be looking at the source, as that is also illegal.

The RVTCS is more than enough to handle most needs. It can't handle 640+ things in the same scene, as per the limitations of the engine. It was designed with level longevity and 3do architecture in mind.
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 12:37 PM #15
Who cares if it's "illegal" :p You really think LEC would sue over such a trivial matter? :rolleyes:

I don't.
-Hell Raiser
2004-12-10, 12:40 PM #16
Quote:
Originally posted by Freelancer
There's really not much point in discussing the matter any further. We've already been over this. It's illegal. Do you really need it spelled out for you any easier? Your friend shouldn't even be looking at the source, as that is also illegal.


He's not looking at the source he's looking at the decompiled assembly code.
It's only illegal if jk.exe is modified. Changing memory locations while the game is running is perfeclty legal.
TheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWho
SaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTh
eJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSa
ysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJ
k
WhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSays
N
iTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkW
2004-12-10, 12:42 PM #17
Quote:
Originally posted by DeTRiTiC-iQ
Is there a way to remove other limits such as the number of adjoins that result in detail HOM? Surfaces per mesh etc?


If it's a matter of running out of memory, then quite possibly yes. Or even if it's a matter of a max limit for a for loop running through all the visible adjoins. It'd take some time, but anything is possible. :)

[realized i didn't answer that]
-Hell Raiser
2004-12-10, 12:44 PM #18
Quote:
Originally posted by Hell Raiser
Who cares if it's "illegal" :p You really think LEC would sue over such a trivial matter? :rolleyes:


lmao.. you're serious? Yes! I do!

As for looking at the decompiled ASM code, it's all in the EULA under reverse engineering. It's all in the same boat. I'll see if I can post a copy of the EULA in a second. I still can't believe you're trying to debate with me about this being legal.
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 12:45 PM #19
Watch this tear the editing community in half, and a new underground will BEGIN!!!!

No, but really, I'm all for it.
</sarcasm>
<Anovis> mmmm I wanna lick your wet, Mentis.
__________
2004-12-10, 12:47 PM #20
Quote:
Originally posted by Freelancer
lmao.. you're serious? Yes! I do!

As for looking at the decompiled ASM code, it's all in the EULA under reverse engineering. It's all in the same boat. I'll see if I can post a copy of the EULA in a second. I still can't believe you're trying to debate with me about this being legal.


I'm not debating the legality. I'm saying LEC won't sue or even contact me in a negative way. Debate that. :p

Don't even bother with the EULAPOS.
-Hell Raiser
2004-12-10, 12:50 PM #21
I understand you acknowledge the illegality of it all. I should have been more clear in my post, but I was talking to TheJkWhoSaysNi when I said that.

As far as LEC not contacting you about this... you're incredibly naive. They have a vast track-record of bullying people for things just like this.
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 12:51 PM #22
In case this might get overlooked and closed/deleted, please note, it was Brian Lozier himself who told me to initiate this discussion. :o
-Hell Raiser
2004-12-10, 12:53 PM #23
uh where in the EULA does it mention reverse engineering?

closest thing i could find was:

(2) New Levels may not modify any COM, EXE, DLL or other executable files.
TheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWho
SaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTh
eJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSa
ysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJ
k
WhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSays
N
iTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkW
2004-12-10, 12:54 PM #24
f*** the law. this is real innovation here. I'm all for it.
2004-12-10, 12:55 PM #25
Quote:
Originally posted by TheJkWhoSaysNi


(2) New Levels may not modify any COM, EXE, DLL or other executable files.


except this would not be a level, it would be more like a patch.

all we're doing is fixing something that the JK developers couldn't be arsed to fix themselves.
2004-12-10, 12:57 PM #26
Yes, but as I said if we just modified memory locations we don't even need to do that.
TheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWho
SaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTh
eJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSa
ysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJ
k
WhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSays
N
iTheJkWhoSaysNiTheJkWhoSaysNiTheJkWhoSaysNiTheJkW
2004-12-10, 12:58 PM #27
Quote:
Originally posted by Freelancer
I understand you acknowledge the illegality of it all. I should have been more clear in my post, but I was talking to TheJkWhoSaysNi when I said that.


:o

Quote:
As far as LEC not contacting you about this... you're incredibly naive. They have a vast track-record of bullying people for things just like this.


Examples? :confused: Have they stomped on anyone who did something positive for their engines?
-Hell Raiser
2004-12-10, 1:20 PM #28
TheJkWhoSaysNi, I'm willing to believe that it's legal if you post a link to the EULA and it contains no reverse-engineering clause. Most games do have one. I've been looking for the EULA on the net and I can't find it.
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 1:21 PM #29
And for those wishing to broswe the EULA

http://www.hellraiser64.com/JKEULA.txt
-Hell Raiser
2004-12-10, 1:25 PM #30
It's illegal.

Quote:
You may not: (1) copy
(other than once for back-up purposes), distribute, rent,
lease or sublicense all or any portion of the Software; (2)
modify or prepare derivative works of the Software; (3)
transmit the Software over a network, by telephone, or
electronically using any means, except in the course of your
network multi-player play of the Software; or (4)
reverse engineer, decompile or disassemble the Software.


I rest my case.
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 1:30 PM #31
If LEC somehow found out I named my gerbils Guybrush and Elaine, they probably would have sent me a cease and desist letter.


As for something they have done... They tried to stop the people making ScummVM (an emulator of the Scumm engine, which belongs to LEC). They failed because the ScummVM people weren't actually doing anything illegal.
I'm just a little boy.
2004-12-10, 1:31 PM #32
To answer DeT's question, yes, you could up the (128?) adjoin limit, but it wouln't make anything render faster.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
2004-12-10, 1:32 PM #33
And let me clarify something:

I used to Edit X-Wing Vs TIE Fighter and X-Wing Alliance. We had to edit the executable in order to change the ship stats or add new ones in. We thrived for a long time, and even a developer from Totally Games popped up every once in a while to oogle at us, lol.

What we did was modify the exe with an external program, and a file that indicated what offsets to change. This Patcher program for JK.exe is no different. Nothing bad happened to the XvT/XWA community of yore, and nothing bad will happen to the JK community of now.

With that said, if any of the file posters feel they are privelaged enough, PM me and I'll give you the file to post. (might be a few hours till I reply, I work nights) If massassi.net will not host this, then I will. Untill then, nobody gets it. :p
-Hell Raiser
2004-12-10, 1:34 PM #34
WTF? Why is this in the EULA?

Quote:
(4) New Levels may not include any LEC sound effects or music files or portions thereof.


I'm assuming they're talking about LEC games other than Jedi Knight?
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 1:36 PM #35
This is the excerpt from XWA's EULA:

Quote:
You may not: (1) copy (other than once for back-up purposes), distribute, rent, lease or sublicense all or any portion of the Software; (2) modify or prepare derivative works of the Software; (3) transmit the Software over a network, by telephone, or electronically using any means, except in the course of your network multi-player play of the Software over authorized networks; (4) engage in matchmaking for multi-player play over unauthorized networks; (5) design or distribute unauthorized levels; or (6) reverse engineer, decompile or disassemble the Software. You may transfer the Software, but only if the recipient agrees to accept the terms and conditions of this Agreement. If you transfer the Software, you must transfer all components and documentation and erase any copies residing on computer equipment. Your license is automatically terminated if you transfer the Software.


Were we under the radar or not?
-Hell Raiser
2004-12-10, 1:36 PM #36
Quote:
[the licensee may not](7) reverse engineer the Software, derive source code, or otherwise attempt to reconstruct or discover any underlying source code, ideas, algorithms, file formats, programming or interoperability interfaces of the Software by any means whatsoever, except to the extent expressly permitted by law despite a contractual provision to the contrary, and then only after you have notified LucasArts in writing of your intended activities;

(my "[]" at the begining)
part of the EULA at the present (from Battlefront). JKs might be different.
Steal my dreams and sell them back to me.....
2004-12-10, 1:38 PM #37
Quote:
Originally posted by Hell Raiser
This is the excerpt from XWA's EULA:



Were we under the radar or not?


No, because you obviously had to reverse engineer and decompile/disassemble the executable for your mods.
"it is time to get a credit card to complete my financial independance" — Tibby, Aug. 2009
2004-12-10, 1:40 PM #38
I've proven my point (and am living proof) LEC doesn't care about modders having fun with their engines.

You haven't. :p
-Hell Raiser
2004-12-10, 1:41 PM #39
If that were the case then why did they have no problems? if it were illegal, why would LEC leave that project alone, and not this one?
My girlfriend paid a lot of money for that tv; I want to watch ALL OF IT. - JM
2004-12-10, 1:41 PM #40
Quote:
Originally posted by Freelancer
Massassi won't host it since it's against the EULA.


Massassi hosts a lot of things that violate the EULA.
Bassoon, n. A brazen instrument into which a fool blows out his brains.
12345678910

↑ Up to the top!