Page 2 of 2 FirstFirst 12
Results 41 to 76 of 76

Thread: Engine remakes

  1. #41
    Alternatively, we could move all posts containing 'New Forum Structure' and all 'New Forum Structure'-adjacent posts into one section, and all the rest into one dump.

    Then iterate this algorithm over all possible variations of that sentence...and, et voilŗ, we have invented... threads (i.e., what we have now).

  2. #42
    We should move all posts containing non-train related posts and all non-train adjacent posts into one section, and all the rest into one dump.

  3. #43
    (OK, now I've really derailed this thread. Banned?)

  4. #44
    Admiral of Awesome
    Posts
    16,863
    Sigh. Youíre making it worse.

  5. #45

    NIKVMVS-REX-TODOA

    Posts
    16,598
    Eh, not a problem, I've included links to the on-topic posts in the OP.

  6. #46
    A more efficient data structure than a list of off-topic posts is a list of users banned for making off-topic posts.
    Last edited by Reverend Jones; 07-28-2018 at 02:13 PM. Reason: (I promise this is my last off-topic post in this thread)

  7. #47

    NIKVMVS-REX-TODOA

    Posts
    16,598
    Last edited by Nikumubeki; 12-02-2018 at 06:21 AM.

  8. #48
    Likes Kittens. Eats Fluffies
    Posts
    11,733
    Wow! Super neat.

  9. #49
    lmao

    This is really cool though! Beyond graphics updates, what pipe dream stuff would you guys want to see from a project like this?

    I want JK but an imsim RPG

  10. #50
    Admiral of Awesome
    Posts
    16,863
    Bug accurate emulation

  11. #51
    Admiral of Awesome
    Posts
    16,863
    To be serious for a second, what I’d want to see from a project like this is a serious effort to achieve gameplay feature parity before going into the weeds. Renderers and editors and extensions are a lot more fun to write than gameplay code, but that stuff can be a harmful diversion. I don’t just mean because they take time away from the real work, but moreso because overinvesting in those systems can ossify gameplay code and data structures that turn out to be wrong.

    Really what I mean by ^ is for it to be done.

    Another thing I’d like to see is, well, tbh, the source code. I don’t know strike but I do know some of his friends, and I’m not gonna run any of his code that I haven’t read and compiled myself. I know it’s guilt by association, but his associates have also worked very hard to be untrustworthy. I’m skeptical enough about code from engineers who purport to be professionals, so I’m really not sure what to make of a software project that’s been voluntarily associated with that side of the community.

    Another thing I’d like to see - something totally selfish. A compilation of reverse engineering efforts. The main reason I stalled out on Gorc is because to go any further I’d need to do some serious reverse engineering to figure out how the template parameters and flags worked. If someone already did that work (and I mean really did it, like collect data for real, don’t just say **** like “slippery” or “air drag”) then I’d probably do more work on Gorc again. I know this sounds like picking at the bones of another project, and it is. Like I said, it’s selfish and I know it’s selfish. But it’s honest, I’d love to have a real spec for that stuff to work from.

  12. #52

    NIKVMVS-REX-TODOA

    Posts
    16,598
    Oh yeah, I wouldn't recommend downloading it or anything just yet.
    Last edited by Nikumubeki; 12-05-2018 at 11:04 AM.

  13. #53
    Likes Kittens. Eats Fluffies
    Posts
    11,733
    Quote Originally Posted by Jon`C View Post
    Another thing I’d like to see is, well, tbh, the source code. I don’t know strike but I do know some of his friends, and I’m not gonna run any of his code that I haven’t read and compiled myself. I know it’s guilt by association, but his associates have also worked very hard to be untrustworthy. I’m skeptical enough about code from engineers who purport to be professionals, so I’m really not sure what to make of a software project that’s been voluntarily associated with that side of the community.
    Huh, what'd they do?

  14. #54
    Admiral of Awesome
    Posts
    16,863
    Quote Originally Posted by saberopus View Post
    Huh, what'd they do?
    Multiple CFAA violations to CM alone.

  15. #55
    ^^vv<><>BASTART
    Posts
    7,770
    Quote Originally Posted by Jon`C View Post
    Multiple CFAA violations to CM alone.
    Oh yeah, weren't there a group of JK players who tried hacking Massassi a while ago?

  16. #56
    Administrator
    Posts
    7,323
    The video itself looks cool.

    Jon`C is your obsession with the exact template flags or whatever just because you want an exact copy of the original gameplay experience or what? I'd love to walk around in some rough approximation (on modern hardware with modern rendering and whatever else) and deal with having drag or physics or whatever "feel" a little different. It doesn't seem like this game needs "perfect" emulation like the original Super Mario Brothers or something.

  17. #57
    Admiral of Awesome
    Posts
    16,863
    Quote Originally Posted by Brian View Post
    The video itself looks cool.

    Jon`C is your obsession with the exact template flags or whatever just because you want an exact copy of the original gameplay experience or what? I'd love to walk around in some rough approximation (on modern hardware with modern rendering and whatever else) and deal with having drag or physics or whatever "feel" a little different. It doesn't seem like this game needs "perfect" emulation like the original Super Mario Brothers or something.
    No, there were reverse engineering tasks that were hard blockers for Gorc. I havenít worked on it in four years so I honestly donít remember what the problem is anymore. The goal was only ever to be good enough to play through the official single player campaign, I never intended to be bug accurate.

    Iím obviously not obsessed with it because I didnít keep working on it.

  18. #58
    Admiral of Awesome
    Posts
    16,863
    The datamaster and jkspecs are just wrong and incomplete. They were good enough for modding back in the day I guess, but theyíre both full of blatant speculation to the point that they arenít useful for writing an engine recreation.

    A few months ago xzero told me about a new discovery: there are hard-coded global variable symbols in cog. The original single player levels depend on this behaviour. Jkspecs and datamaster document the globals as messages, though, which is just wrong and more importantly random. Like they dumped strings from jk.exe and assumed they were just messages. Itís stuff like that. Our tribal knowledge is full of red herrings and you donít know whether something is subtly or incredibly wrong until you individually validate everything.

    And then thereís the pile of unknown flags. JK actually uses a lot of them and we have no idea what they do - but ****s broken without them implemented right.

    So Iím really not kidding, 90% of the outstanding work is reverse engineering. At least for me! I know BAH has been doing this work, so their emulator has a more promising future than mine does.

  19. #59
    As someone who knows nothing about reverse engineering, I spent the last couple minutes pondering just what very general search techniques could possibly be used to disassemble whatever state machines might be controlling the various hidden flags in the engine, e.g., by running jk.exe on a vast array of parallel machines and mutating the machine code and observing the behavior of instances that don't crash right away, or maybe trying to extract features from jk.exe with a neural net, or whatever else in the kitchen sink one could throw at it (SAT solver???). But in the end I realized that I have no idea what I am talking about, and that somebody would have already done this already. So if reverse engineering is really that hard, it makes me wonder what an executable game really "is": we can run it on our computer and we know how it should run, but without the source code, our understanding of just why it does is no better than why the genes of a human being create a functioning organism and not a fatally flawed one. And the wrong mutation is usually fatal (in both the case of organisms and programs).

  20. #60
    In other words (now to consider merely the idea of attempts at imitation rather than complete reverse engineering), I feel that engine remakes are doomed to only be as convincingly game-like as artificial robots are convincingly human-like.

    Well, in some ways, such robots are actually better than humans (even though they can't do all the things you'd expect a human to do), and likewise something like Gorc would fix most of the defects of the original jk.exe. But it still isn't compatible with what jk.exe expects, just like robots aren't compatible with what humans expect other humans to look and act like.
    Last edited by Reverend Jones; 12-04-2018 at 08:01 PM.

  21. #61
    Actually, rather than attempting to recreate JK.exe, perhaps a more enjoyable activity would be to replicate the correct subset of its functionality, and then automate the conversion of the majority of existing game data to a saner spec: that is, treat game data that relies on unknown engine behavior as a bug in the data. And then fix all those "bugs" manually, by re-implementing them with tools, like a modified version of JED which generates game data for a new engine that can only parse game data conforming to the sane spec.

    The question arises: what subset of JK game data will run at all in any sensible way whatsoever on a sane engine that doesn't reproduce bugs?

    Maybe the solution is to run a neural net on the game data and train it to find places it relies on undefined engine behavior, and try to guess what the game data would have meant to say (in a sane universe, where the game data is written in a language with only well-defined behavior).
    Last edited by Reverend Jones; 12-04-2018 at 08:16 PM.

  22. #62
    Admiral of Awesome
    Posts
    16,863
    Just make a new game then.

  23. #63
    ...that is visually indistinguishable from JK, and for which there exist automated tools to convert JK assets to run on.

    Actually, I do remember that somebody wrote a program that would import JK level data into Radient for use with JK2. Needless to say, it didn't even come close to reproducing the behavior or even appearance of JK.

  24. #64
    I wonder if there are many portal-based rendering engines around these days, and if any are open source and maintained. If so, one could envision writing a tool to convert the JK assets to run on one of them.

  25. #65

    "Has it won yet?"

    Posts
    17,027
    Quote Originally Posted by Reverend Jones View Post

    Actually, I do remember that somebody wrote a program that would import JK level data into Radient for use with JK2. Needless to say, it didn't even come close to reproducing the behavior or even appearance of JK.
    I remember that! The level output wasn't scaled properly too so you get levels that are too tiny compared to Kyle's height.
    SnailIracing:n(500tpostshpereline)pants
    -----------------------------@%

  26. #66
    ^^vv<><>BASTART
    Posts
    7,770
    No chance in hell the copyright owner would make it public domain?

  27. #67
    Admiral of Awesome
    Posts
    16,863
    Quote Originally Posted by Reverend Jones View Post
    I wonder if there are many portal-based rendering engines around these days, and if any are open source and maintained. If so, one could envision writing a tool to convert the JK assets to run on one of them.
    All of them but functionally none of them.

  28. #68
    Quote Originally Posted by Reid View Post
    No chance in hell the copyright owner would make it public domain?
    Honestly using JKL2OBJ to take JK levels into Unreal or Unity would be faster & easier than trying to wrangle the Radiant thing, and you'd get a more modern engine for your trouble.

  29. #69

    "Has it won yet?"

    Posts
    17,027
    Yeah. It was for JK2Radiant too, the inbred cousin of the Radiant family. Looking back, Jedi Outcast did NOT age well visually.
    SnailIracing:n(500tpostshpereline)pants
    -----------------------------@%

  30. #70
    Quote Originally Posted by ECHOMAN View Post
    I remember that! The level output wasn't scaled properly too so you get levels that are too tiny compared to Kyle's height.
    Haha, so it wasn't just me. The scaling was definitely off.

  31. #71
    Quote Originally Posted by ECHOMAN View Post
    Yeah. It was for JK2Radiant too, the inbred cousin of the Radiant family. Looking back, Jedi Outcast did NOT age well visually.
    I was watching the opening cutscene for JK2 a few weeks ago, and the skybox animation (the one with the stars drifting by) just struck me as really ugly. I'd be more convinced by the ambiance that I was inside a flying spacecraft if I were in a Disneyland ride (wait a minute, what am I saying, those rides are pretty convincing).

  32. #72

    "Has it won yet?"

    Posts
    17,027
    I don't think it was a skybox even. It was literally a scrolling texture.
    SnailIracing:n(500tpostshpereline)pants
    -----------------------------@%

  33. #73
    Admiral of Awesome
    Posts
    16,863
    Every single JK level has overlapping sectors you walk through. Not far apart either, the very first level you walk around a corner and youíre in a room that overlaps the hallway you were just in. All of the levels also have zero-width walls. I donít know how to import them into a modern engine without major rework.

    The only assets you wouldnít have to redo are the sounds and textures.

    imho it would be easier to black box reverse engineer and do a normal engine recreation.

    Iím not sure what a neural network would contribute to this process.

  34. #74
    Quote Originally Posted by Jon`C View Post
    Every single JK level has overlapping sectors you walk through. Not far apart either, the very first level you walk around a corner and you’re in a room that overlaps the hallway you were just in. All of the levels also have zero-width walls. I don’t know how to import them into a modern engine without major rework.
    I think this much at least would be pretty trivial to deal with in Unreal, since it just uses meshes for level geometry. The most you'd have to do is split up the overlapping chunks of the level in Maya or Blender or something. No idea abt anything beyond that though.

  35. #75

    NIKVMVS-REX-TODOA

    Posts
    16,598
    Quote Originally Posted by ECHOMAN View Post
    I remember that! The level output wasn't scaled properly too so you get levels that are too tiny compared to Kyle's height.
    Not only that, but dr0id's JKL->JK2Radiant converter also didn't take kindly to overlapping sectors.

  36. #76
    Quote Originally Posted by Nikumubeki View Post
    Not only that, but dr0id's JKL->JK2Radiant converter also didn't take kindly to overlapping sectors.
    I don't take kindly to your FACE
    [01:52] <~Nikumubeki> Because it's MBEGGAR BEGS LIKE A BEGONI.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •