We have a Steam curator now. You should be following it. https://store.steampowered.com/curator/44994899-RPGHQ/
Chat client updated, if you have issues using chat press CTRL + SHIFT + R to force a hard refresh.

The 3D Software Rendering Technology of 1998's Thief: The Dark Project

Game development hub. Projects, modding, and resources.

Moderator: Mod Janitor

Ignore Topic
User avatar
rusty_shackleford
Site Admin
Posts: 45443
Joined: Feb 2, '23
Gender: Watermelon

Geolocation

Adventurer's Guild

The 3D Software Rendering Technology of 1998's Thief: The Dark Project

Post by rusty_shackleford »

Thank you for your attention to this matter!
Steam friend code: 40552640 https://steamcommunity.com/friends/add | email: [email protected]
Having trouble running an old Windows game?
Rusty's Stuff Collection
User avatar
Orvas Dren
Posts: 1565
Joined: Nov 28, '23
Location: Tel Uvirith

Geolocation

Post by Orvas Dren »

Imagine if these guys had the tech we had today to work with :sad:
Seax þyrsteþ, gierneþ blōd!
User avatar
Tweed
Turtle
Turtle
Posts: 6837
Joined: Feb 2, '23

Geolocation

Adventurer's Guild

Post by Tweed »

By MIT students for MIT students, if you can sneak in thief you can apply for big brain math jobs.
User avatar
KnightoftheWind
Posts: 3518
Joined: Feb 27, '23

Geolocation

Post by KnightoftheWind »

CPUs are so advanced now, you could probably render a lot of PS3/360-era looking games entirely in software. If not better. These old 90s renders only took advantage of a single core, yet were mighty impressive at the time regardless.
User avatar
Element
Posts: 1167
Joined: Jul 23, '23

Geolocation

Adventurer's Guild

Post by Element »

Nammu Archag wrote: February 10th, 2024, 20:58
Imagine if these guys had the tech we had today to work with :sad:
There's plenty of devs who are still in the industry and have the tech. They don't make anything good.
User avatar
Tweed
Turtle
Turtle
Posts: 6837
Joined: Feb 2, '23

Geolocation

Adventurer's Guild

Post by Tweed »

It does make me wonder though, what's the IQ cutoff for various genres?
User avatar
Orvas Dren
Posts: 1565
Joined: Nov 28, '23
Location: Tel Uvirith

Geolocation

Post by Orvas Dren »

Element wrote: February 11th, 2024, 17:59
Nammu Archag wrote: February 10th, 2024, 20:58
Imagine if these guys had the tech we had today to work with :sad:
There's plenty of devs who are still in the industry and have the tech. They don't make anything good.
These guys in their 60s are barely the same devs tbf
Seax þyrsteþ, gierneþ blōd!
User avatar
KnightoftheWind
Posts: 3518
Joined: Feb 27, '23

Geolocation

Post by KnightoftheWind »

Western devs rarely had any direct, supreme control over the games they worked on. Games in the west are supposedly a collaborative effort, and often change on the whims of managers and executives. You can't really point to a western equivalent of Kojima or Miyazaki, someone who has direct oversight and veto control. So the games that we think are spearheaded by one or two guys, actually aren't.

On their own, they probably couldn't make anything nearly as good.
User avatar
rusty_shackleford
Site Admin
Posts: 45443
Joined: Feb 2, '23
Gender: Watermelon

Geolocation

Adventurer's Guild

Post by rusty_shackleford »

kojima's games are ***
Thank you for your attention to this matter!
Steam friend code: 40552640 https://steamcommunity.com/friends/add | email: [email protected]
Having trouble running an old Windows game?
Rusty's Stuff Collection
User avatar
Orvas Dren
Posts: 1565
Joined: Nov 28, '23
Location: Tel Uvirith

Geolocation

Post by Orvas Dren »

KnightoftheWind wrote: February 11th, 2024, 20:05
Western devs rarely had any direct, supreme control over the games they worked on. Games in the west are supposedly a collaborative effort, and often change on the whims of managers and executives. You can't really point to a western equivalent of Kojima or Miyazaki, someone who has direct oversight and veto control. So the games that we think are spearheaded by one or two guys, actually aren't.

On their own, they probably couldn't make anything nearly as good.
I am 90% sure Kojima doesn't even know how to code and that most of the brains behind his early games was his 2nd in command.
Seax þyrsteþ, gierneþ blōd!
User avatar
KnightoftheWind
Posts: 3518
Joined: Feb 27, '23

Geolocation

Post by KnightoftheWind »

Not saying he's talented or that his games are good, I'm saying he had much more control over the games he was a part of than any western developer. Japanese corporations have rigid hierarchy, Burgerland does not.
User avatar
Orvas Dren
Posts: 1565
Joined: Nov 28, '23
Location: Tel Uvirith

Geolocation

Post by Orvas Dren »

KnightoftheWind wrote: February 11th, 2024, 20:16
Not saying he's talented or that his games are good, I'm saying he had much more control over the games he was a part of than any western developer. Japanese corporations have rigid hierarchy, Burgerland does not.
The same applied to Western game companies at the time when his name was still on decent games. At Konami he didn't really have that much control, he wasn't even there for the early phase of the development of MGS 1. The only games he has tons of control over are the later ones, largely due to his reputation. BTW, Todd Howard had total control over Starfields development, which was just last year, so idk if that's really the case. Anything added or diverging would ultimately have to go through him. I think Kojima is essentially just the Japanese version of Todd at this point.

Jap corporate game dev isn't really something people should want to emulate, it is just a more extreme version of what we have right now, except without the same ESG pressures and nig society
Seax þyrsteþ, gierneþ blōd!
User avatar
Element
Posts: 1167
Joined: Jul 23, '23

Geolocation

Adventurer's Guild

Post by Element »

Nammu Archag wrote: February 11th, 2024, 20:09
KnightoftheWind wrote: February 11th, 2024, 20:05
Western devs rarely had any direct, supreme control over the games they worked on. Games in the west are supposedly a collaborative effort, and often change on the whims of managers and executives. You can't really point to a western equivalent of Kojima or Miyazaki, someone who has direct oversight and veto control. So the games that we think are spearheaded by one or two guys, actually aren't.

On their own, they probably couldn't make anything nearly as good.
I am 90% sure Kojima doesn't even know how to code and that most of the brains behind his early games was his 2nd in command.
He had a knack for finding talented people to give his games a unique flair, Shinkawa being a good example. But his own contributions, outside of inserting Plissken into a capeshit universe, are paltry. His writing was horrid and overwrought to the point of absurdity.

I'm glad Death Stranding finally demolished his reputation.
User avatar
rusty_shackleford
Site Admin
Posts: 45443
Joined: Feb 2, '23
Gender: Watermelon

Geolocation

Adventurer's Guild

Post by rusty_shackleford »

I wasn't aware that the entire source code for Thief 2(incl. Dark Engine) was leaked. I thought it was just the debug symbols.
Seems to also have SS2 code.

https://github.com/DeathEngine2/Looking ... /tree/main

Also includes all the original sourcecode for the scripts. It looks like they were just some unholy C preprocessor macro hack. Did Thief/SS2 really not have a scripting language/VM?

Code: Select all



/* Script for any light that can be extinguished with water and gas, or
   lit with fire.  Assumes that the model is animating via a TweqModels.

   We commit the following gruesome hack to avoid hard-coding in the model
   to swap to when the light is extinguished:  since TweqModels animates until
   the first empty entry of its Tweq Config model list, we count on this and
   support no more than 4 models in the animation, when actually there are
   spaces for six in the property.  The sixth is the "dead" version of the
   model, and the fifth is left empty as a separator, so the normal animation
   does not include the "dead" version.

 */

BEGIN_SCRIPT(Extinguishable, AnimLight)

   METHODS:
      METHOD void ChangeMode(boolean on)
      {
         // turn on/off our TweqModels animation
         ActReact.React("tweq_control",1.0,self,0,kTweqTypeModels,
                        on?kTweqDoActivate:kTweqDoHalt);
         if(!on)
         {
            string deadmodel="Newt01"; // default from Thief1 standard torches.

            // change our model
            if(Property.Possessed(self,"CfgTweqModels"))
            {
               string propmodel=Property.Get(self,"CfgTweqModels","Model 5");
               if(propmodel!=string(""))
                  deadmodel=propmodel;
            }
            Property.Set(self,"ModelName",(const char*)deadmodel);
         }

	 if ((Property.Possessed(self,"SuspObj")) &&
             (IsLightOn() != on)) //make sure we are changing states
         {
	   //I tried to do something clever here with negating the
	   //gotten data in a set directly, but it failed.  So I do this.
           //easier to read anyway.
           boolean wassusp = Property.Get(self,"SuspObj","Is Suspicious");  
           if (wassusp)
             Property.Set(self,"SuspObj","Is Suspicious",FALSE);
           else
             Property.Set(self,"SuspObj","Is Suspicious",TRUE);
           wassusp = Property.Get(self,"SuspObj","Is Suspicious");
         }

#ifdef TORCH_HEAT_SOURCE
         // Extinguishable items are also assumed to be touch sources of heat...
         if(on)
         {
            if(!Object.HasMetaProperty(self,"TouchHeatSource"))
               Object.AddMetaProperty(self,"TouchHeatSource");
         }
         else
            Object.RemoveMetaProperty(self,"TouchHeatSource");
#endif

         Base::ChangeMode(on);
      }

   MESSAGES:
      OnBeginScript()
      {
         ActReact.SubscribeToStimulus(self,"WaterStim");
         ActReact.SubscribeToStimulus(self,"FireStim");
         ActReact.SubscribeToStimulus(self,"KOGas");
         DefaultOnBeginScript();
      }
      OnEndScript()
      {
         ActReact.UnsubscribeToStimulus(self,"KOGas");
         ActReact.UnsubscribeToStimulus(self,"FireStim");
         ActReact.UnsubscribeToStimulus(self,"WaterStim");
         DefaultOnEndScript();
      }
      OnStimulus(KOGas)
      {
         TurnOff();
      }
      OnStimulus(WaterStim)
      {
         TurnOff();
      }
      OnStimulus(FireStim)
      {
         TurnOn();
      }

  // This will allow us to get the stimulus messages we're asking for
  SCRIPT_BEGIN_MESSAGE_MAP()
    STIMULUS_MESSAGE_MAP_ENTRY(KOGas)
    STIMULUS_MESSAGE_MAP_ENTRY(WaterStim)
    STIMULUS_MESSAGE_MAP_ENTRY(FireStim)
  SCRIPT_END_MESSAGE_MAP()

END_SCRIPT(Extinguishable)
Thank you for your attention to this matter!
Steam friend code: 40552640 https://steamcommunity.com/friends/add | email: [email protected]
Having trouble running an old Windows game?
Rusty's Stuff Collection