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.

ForumsShowcase → Gorc
123456
Gorc
2014-02-16, 4:13 PM #161
Originally posted by Jon`C:
^


I'd believe that zeq figured something interesting out, but he was never really careful about documenting anything, iirc. Like whatever disassembly he and others did on jk.exe, all of that **** is lost to history.


I have the source files somewhere, with all the code and ollydbg comments for the assembly. I can get them to you if you want them. They might be on my PC back in Canada, but I think I can get them if I try hard enough. :)

PS: If you want any help, particularly for any of the render-side stuff, give me a shout! I'd jump at the opportunity. :D
2014-02-16, 6:24 PM #162
I'm (slowly, after my day job) refactoring Gorc to use a proper entity-component system. I'm definitely open to pull requests, but I'd recommend waiting until that work is done.
2014-02-16, 7:58 PM #163
You are basically creating a different engine to run JK on?
Or, in other words, would you mind summarizing what Gorc actually is in layman's terms please? :)
幻術
2014-02-21, 6:24 PM #164
**** yes
"Nulla tenaci invia est via"
2014-02-27, 12:52 AM #165
Originally posted by Koobie:
You are basically creating a different engine to run JK on? Or, in other words, would you mind summarizing what Gorc actually is in layman's terms please? :)


Quote:
Early-development Jedi Knight: Dark Forces 2 game engine recreation.


https://github.com/jdmclark/gorc
? :)
2014-02-27, 8:38 AM #166
I see. Well ... good luck.
I hope you'll be able to use the assets created / skills learnt doing this for other projects as well.
幻術
2014-02-27, 5:55 PM #167
The only thing I am learning by working on Gorc is how utterly awful JK was.
2014-04-01, 1:52 AM #168
Oh, well, good thinking then, Jon'C, good thinking. Please tell us more, Master.
幻術
2014-04-01, 3:03 AM #169
Would it be advantageous, if feasible, to have JED/ZED launch a simplified version of your engine as its 3d preview in addition to or instead of the ****ty one that said application currently has? Gawd, I'm on Windows 8 & the only thing uglier than the JED/ZED 3d preview is the actual game itself (in software mode).
? :)
2014-04-01, 4:48 AM #170
I'm just glad JED has a 3d preview at all. It didn't originally have one.
And when the moment is right, I'm gonna fly a kite.
2014-04-01, 8:33 AM #171
Originally posted by Mentat:
Would it be advantageous, if feasible, to have JED/ZED launch a simplified version of your engine as its 3d preview in addition to or instead of the ****ty one that said application currently has? Gawd, I'm on Windows 8 & the only thing uglier than the JED/ZED 3d preview is the actual game itself (in software mode).
Not really feasible. Using Gorc as a base for a JED rewrite is certainly feasible, but that's pretty much at the bottom of my TODO list.

Just don't have a lot of time to work on this right now, I'm afraid. Been slowly working on utility code for the big ECS refactor.
2014-04-13, 4:47 PM #172
Props to you for getting the color map lights to work properly. Now they're nice and bright in dark locations. :)

Really sucks that LEC didn't get it working for hardware rendering... hopefully that was just a hardware limit of D3D.
2014-04-15, 12:19 PM #173
Code:
D:\Steam\steamapps\common\star wars jedi knight>gorc "The Force Within" 06abarons.jkl
"restricted\misc/glsl/gui.glsl"(0,0): error: Vertex shader failed to compile with the following errors:
ERROR: 1:1: error(#105) #version must occur before any other statement in the program
ERROR: error(#273) 1 compilation errors.  No code generated [ShaderLoader]
"restricted\misc/glsl/gui.glsl"(0,0): error: Fragment shader failed to compile with the following errors:
ERROR: 1:1: error(#105) #version must occur before any other statement in the program
ERROR: error(#273) 1 compilation errors.  No code generated [ShaderLoader]
critical error: file 'restricted/misc/glsl/gui.glsl' was not loaded [contentmanager]
terminate called after throwing an instance of 'gorc::io::file_corrupt_exception'
  what():  std::exception

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.


I assume this is related to AMD hardware.
error; function{getsig} returns 'null'
2014-04-15, 1:47 PM #174
Worked on my AMD card. :)

Jon`C: I found the JK patcher files. I'll try to remember to upload them next time I have the chance. :)
2014-04-21, 11:01 PM #175
Very impressive! I'm amazed you made it this far. Do you think there will be a surge in JK editing once Gorc has reached a stage where people can freely mod it?
Nothing to see here, move along.
2014-04-22, 6:25 AM #176
Originally posted by SF_GoldG_01:
Do you think there will be a surge in JK editing once Gorc has reached a stage where people can freely mod it?


:huh:
Author of the JK levels:
Sand Trap & Sand Trap (Night)

2014-04-22, 6:45 AM #177
no...
2014-04-24, 11:12 AM #178
Originally posted by SF_GoldG_01:
Do you think there will be a surge in JK editing once Gorc has reached a stage where people can freely mod it?


JK is 17yrs old now. Like any other 17yr old it's time spent playing around pretending to be something it never has been and never will be is over. It now spends it's days either playing with itself or being rebellious and not holding up to it's responsibilities.
2014-04-24, 11:21 AM #179
JK was already overshadowed by Quake 2 in 1997, so it never got a chance to become truly popular anyway. And since Q2's source code was actually released many years ago, Q2 editing is still actually thriving compared to JK.

Of course, even Wolfenstein 3D is still being edited more actively than JK has been for 12 or so years so eh, there you go.

Still hoping for a stable Gorc release one day in the futurosphere. [http://img.photobucket.com/albums/v215/garosaon/smiley/fgrwink.png]
Star Wars: TODOA | DXN - Deus Ex: Nihilum
2014-04-25, 4:20 PM #180
Originally posted by Alco:
JK is 17yrs old now. Like any other 17yr old it's time spent playing around pretending to be something it never has been and never will be is over. It now spends it's days either playing with itself or being rebellious and not holding up to it's responsibilities.


And sadly we probably won't get another JK for a long time (if ever), and I doubt that there would be remotely enough interest to do a fan-made modern updated remake of JK.
Nothing to see here, move along.
2014-05-01, 10:46 PM #181
What I've been doing lately re: Gorc.

I'm still working on the ECS refactor. There has been some good progress recently; I've added the actual ECS and related support code, and I've refactored surface animations into entities as a pilot. The next step will be to refactor things out into components.

Switching to an ECS is a major departure from the way JK was originally implemented. Unfortunately this also means that Gorc may not be able to support some unused cog verbs:

- ParseArg
- SetThingType

This change won't affect the original game, but it may affect some mods. It's unfortunate, but the #1 goal of Gorc is to make the original singleplayer campaign playable, and switching to an ECS makes that goal much easier to achieve.
2014-06-03, 8:57 AM #182
~Monthly update: The ECS refactor is coming along nicely.

So far things and surface animations have been made entities. Basically what this means is that JK things and surface animations are both now considered 'things' in the Gorc sense. This has some nice consequences, e.g. verbs like destroything() and stopanim() are synonymous, with the code behind the verb doing the correct thing automatically. There has also been a lot of work decoupling gameplay code through an event interface. The short-term plan is to also refactor key animations, sounds, and cog timers as entities.

Thing behavior is being slowly split out into components (the whole reason for this refactor in the first place). The old character controller has been split into new character, soundclass, and puppet components, with corresponding aspects/systems, while fixing a number of bugs along the way. Component initialization and destruction has also mostly been refactored into event handlers. If you look at src/game/world/components/thing.h it will give you some idea about how much work is left to do here, since this class should be empty.

My rough plan after this work is done:

  • Revisit renderer and physics code to smooth out some minor perf issues caused by this refactor.
  • Set up a Windows build machine. I have a Linux 64 build server running for code coverage, but I'd like to be able to do regular Win64 builds for two reasons: one, so I know when I accidentally break Win64 support, and two, so I can make regular Windows builds available for people to try. I develop on Linux so it's not really practical to do by hand right now. The last Windows build was last year, which is a little crazy. If anybody wants to volunteer to do this, just go ahead.
  • Savegames (gamestate serialization). Best to do this now, because it'll only get harder later. Big job because it has to include serialization asset references.
  • Possibly some work on a multiplayer prototype, if it still sounds like fun when I get here.
  • Continue gameplay reverse engineering.
2014-06-03, 8:58 AM #183
Woo!
Star Wars: TODOA | DXN - Deus Ex: Nihilum
2014-06-03, 1:30 PM #184
Originally posted by Jon`C:
~Monthly update: The ECS refactor is coming along nicely.

technical stuffs


[http://gifatron.com/wp-content/uploads/2013/03/joffrey-clapping-game-of-thrones.gif]
Author of the JK levels:
Sand Trap & Sand Trap (Night)

2014-06-04, 4:25 AM #185
Originally posted by Jon`C:
Possibly some work on a multiplayer prototype, if it still sounds like fun when I get here.

I hope that it still sounds like fun when you get there.
? :)
2014-06-13, 11:47 PM #186
There is a new Windows build here: https://github.com/jdmclark/gorc/releases

I skipped ahead on my list and set up a Gorc build farm. That means Windows builds are now automatic, which means new releases will be much more frequent in the future. The build farm includes a Mac, so once I fix the OSX build I'll be able to upload binaries for that platform, too.
2014-06-23, 7:34 AM #187
New Windows build.

Refactored sounds into entities, fixing a few bugs along the way:


  • Explosion sounds are no longer clipped at the end.
  • Actors can no longer play multiple 'voice' sounds simultaneously, although I think this still needs some more work.
  • Implemented previously-unknown sound flag 0x8: stop sound when thing destroyed.
  • PlaySoundThing and PlaySoundPos now correctly convert their attenuation parameters from meters into JKUs. I can vaguely imagine a scenario where you'd want to use meters for PlaySoundThing and PlaySoundPos, but I have absolutely no clue why soundclasses would still use JKUs for the same fields.



The most noticeable change in this build is that 02narshadda and 04escapehouse are no longer deafening cacophonies.
2014-07-03, 7:52 AM #188
Significantly refactored the GLSL shader loader in order to fix a bug which was affecting certain Intel drivers.

If you haven't been able to try Gorc because the shaders won't load, please try the new Windows build and let me know if it works for you: https://github.com/jdmclark/gorc/releases/tag/v0.15.2-nightly

If Gorc works fine for you already, you can skip this one.
2014-07-03, 9:33 AM #189
Now I got it working. Of course, I'm not sure if it's because I finally copied the JK Episode & Resource directories under game\ or if it was the new patch. >_>

In any case, pretty great stuff thus far. Maybe even great enough for me to consid-

No.
Star Wars: TODOA | DXN - Deus Ex: Nihilum
2014-07-05, 5:32 AM #190
This version works for me! The previous builds wouldn't load. I'm running Windows 8.1 and Intel Integrated Graphics. Looks very nice!
JediDreams
2014-07-07, 8:11 AM #191
Will you be adding new cog verbs
2014-07-07, 9:06 AM #192
Originally posted by Reid:
Will you be adding new cog verbs


Not until v2.0.0.

It's not hard to add new verbs to Gorc, but each feature you add introduces some technical debt. The more verbs there are, the harder it becomes to refactor the code that underlies them.

For now, the plan is to only implement verbs used in the original JK. After that point there are a few options, but most likely I would start looking into the feasibility of MotS support before I worried about wholly custom verbs.

If there are any especially impatient mod authors who want to port something to Gorc we can always have a discussion about that as we get closer to v1.0.0, but it would have to be something technically stressing enough to be worthwhile.
2014-07-07, 10:10 AM #193
Originally posted by Jon`C:
Not until v2.0.0.

It's not hard to add new verbs to Gorc, but each feature you add introduces some technical debt. The more verbs there are, the harder it becomes to refactor the code that underlies them.

For now, the plan is to only implement verbs used in the original JK. After that point there are a few options, but most likely I would start looking into the feasibility of MotS support before I worried about wholly custom verbs.

If there are any especially impatient mod authors who want to port something to Gorc we can always have a discussion about that as we get closer to v1.0.0, but it would have to be something technically stressing enough to be worthwhile.

That makes perfect sense

good for me i'm studying linear algebra in a month and so i'll have to program a graphics engine and dig through your code to see how it's done in a full application
2014-07-07, 10:15 AM #194
Originally posted by Reid:
That makes perfect sense

good for me i'm studying linear algebra in a month and so i'll have to program a graphics engine and dig through your code to see how it's done in a full application


Note: the Gorc renderer is not modern OpenGL yet. The LA library (src/base/math) is decent, but not optimized in any way. You're free to look at it all you want, but don't be under the impression that this is how a new AAA game should be implemented.
2014-07-07, 10:38 AM #195
Originally posted by Jon`C:
Note: the Gorc renderer is not modern OpenGL yet. The LA library (src/base/math) is decent, but not optimized in any way. You're free to look at it all you want, but don't be under the impression that this is how a new AAA game should be implemented.

I thought most AAA games used DirectX?
2014-07-07, 8:49 PM #196
Each major platform has different graphics APIs.
2014-07-07, 10:37 PM #197
Right so DirectX is the XBox and Windoze one, and Apple has it's own called like Johnny Appleseed or something, and most Linux-based distros uses OpenGL so that's the platform you selected

Of course, OpenGL is.. open, so it's the most ported graphics library so I'm sure porting the code from platform to platform is as easy as simply setting up the libraries.
2014-07-07, 10:42 PM #198
oh gee, apple is structured off OpenGL
2014-07-09, 12:10 AM #199
Wow! Excellent work, from what I can tell from the posts and the videos. I'll have to check it out soon!
I can't wait for the day schools get the money they need, and the military has to hold bake sales to afford bombs.
2014-07-09, 11:55 AM #200
One Cog verb I would like--and I know I have no place making demands now but I gotta bring it--would be better functions for moving things between frames. I know you will need to replicate the older functions for consistency but one that like, sets the rotation speed to take the same time that it would take for the object to travel. IIRC in standard JK the rotation speed is offset and if you have an object rotate on any axis between frames, the object will arrive but will still be rotating

and, you know, rotation verbs that aren't complete ****
123456

↑ Up to the top!