the cutting room mirror

Carnivores 2

Carnivores 2 is the sequel to Carnivores with more dinosaurs, an improved version of the AtmosFear engine, and more features. This game was used as a base for Carnivores Dinosaur Hunter on iOS, PSN, and Android platforms.

Sub-Pages#

Debug Mode#

As with the previous title, Carnivores 2 has a debug mode. The steps necessary to turn on debug mode is dependent on the selected video driver in the options menu. If using the Software driver, type "DEBUGUP" during a hunt. If using the 3DFX or D3D Video Driver, press the ~ key and type "enable debug 1". The debug mode in Carnivores 2 has more features than the one of the original game. Here is a list of the available keybinds.

  • Ctrl: Super Run
  • Space + Ctrl: Super Jump
  • I: Decrease Bitmapping Distance
  • U: Increase Bitmapping Distance
  • O: Decrease Approximate Texturing Distance
  • P: Increase Approximate Texturing Distance
  • [: Decrease View Radius
  • ]: Increase View Radius
  • Shift + C: Toggle Clouds Shadows
  • Shift + E: Toggle Environment Mapping
  • Shift + F: Toggle Fog
  • Shift + G: Toggle Gouraud Mapping
  • Shift + L: Toggle Fly Mode
  • Shift + M: Toggle Models
  • Shift + P: Toggle Phong Mapping
  • Shift + S: Toggle Slow Motion
  • Shift + T: Display on-screen Triangle, Call, Time per Frame and FPS count

As with the last game, the player is also granted unlimited ammo, and creatures will not be able to sense them unless the player shoots the creatures, the creature hears the player shooting a weapon or, in the case of herbivorous and ambient creatures, if the creature hears the call of a carnivore. However, ambient creatures will still run away if the player gets too close.

Carnivores 1 Leftovers#

The game engine has numerous leftovers of the Carnivores 1 source. Many of which are just commented out. These leftovers are also still present in Carnivores Ice Age.

Among the things leftover in the menu data is the Carnivores 1 ranking system. Carnivores 2 lacks this in the final iteration, but a prototype menu EXE that came with Alt Editor II (Action Forms' old map editor/maker program for Carnivores 2 and Ice Age) still has this intact. Alt Editor II was given to the Carnivores Fan Community as a gift by Tatem games (one of Action Forms' Child companies and the one in charge of the iOS and Android ports). The menu system still works in the final version, but it has simply been commented out in favor of displaying the player's points only instead.

Old Resource Entries#

In the semi-private source code of Carnivores 2 is a bunch of old entries that predate the final release. These entries are commented out and were scrapped in favor of the _RES.txt file. A lot of these are leftover things from Carnivores 1. Here's the list:

   WeapInfo[0].Name = "Shotgun";
   WeapInfo[0].Power = 1.5f;
   WeapInfo[0].Prec  = 1.1f;
   WeapInfo[0].Loud  = 0.3f;
   WeapInfo[0].Rate  = 1.6f;
   WeapInfo[0].Shots = 6;

    WeapInfo[1].Name = "X-Bow";
   WeapInfo[1].Power = 1.1f;
   WeapInfo[1].Prec  = 0.7f;
   WeapInfo[1].Loud  = 1.9f;
   WeapInfo[1].Rate  = 1.2f;
   WeapInfo[1].Shots = 8;

    WeapInfo[2].Name = "Sniper Rifle";
   WeapInfo[2].Power = 1.0f;
   WeapInfo[2].Prec  = 1.8f;
   WeapInfo[2].Loud  = 0.6f;
   WeapInfo[2].Rate  = 1.0f;
   WeapInfo[2].Shots = 6;


    DinoInfo[ 0].Name = "Moschops";
   DinoInfo[ 0].Health0 = 2;
   DinoInfo[ 0].Mass = 0.15f;

    DinoInfo[ 1].Name = "Galimimus";
   DinoInfo[ 1].Health0 = 2;
   DinoInfo[ 1].Mass = 0.1f;

    DinoInfo[ 2].Name = "Dimorphodon";
   DinoInfo[ 2].Health0 = 1;
   DinoInfo[ 2].Mass = 0.05f;

    DinoInfo[ 3].Name = "Dimetrodon";
   DinoInfo[ 3].Health0 = 2;
   DinoInfo[ 3].Mass = 0.22f;  


    DinoInfo[ 5].Name = "Parasaurolophus";
   DinoInfo[ 5].Mass = 1.5f;
   DinoInfo[ 5].Length = 5.8f;
   DinoInfo[ 5].Radius = 320.f;
   DinoInfo[ 5].Health0 = 5;
   DinoInfo[ 5].BaseScore = 6;
   DinoInfo[ 5].SmellK = 0.8f; DinoInfo[ 4].HearK = 1.f; DinoInfo[ 4].LookK = 0.4f;
   DinoInfo[ 5].ShDelta = 48;

    DinoInfo[ 6].Name = "Pachycephalosaurus";
   DinoInfo[ 6].Mass = 0.8f;
   DinoInfo[ 6].Length = 4.5f;
   DinoInfo[ 6].Radius = 280.f;
   DinoInfo[ 6].Health0 = 4;
   DinoInfo[ 6].BaseScore = 8;
   DinoInfo[ 6].SmellK = 0.4f; DinoInfo[ 5].HearK = 0.8f; DinoInfo[ 5].LookK = 0.6f;
   DinoInfo[ 6].ShDelta = 36;

    DinoInfo[ 7].Name = "Stegosaurus";
   DinoInfo[ 7].Mass = 7.f;
   DinoInfo[ 7].Length = 7.f;
   DinoInfo[ 7].Radius = 480.f;
   DinoInfo[ 7].Health0 = 5;
   DinoInfo[ 7].BaseScore = 7;
   DinoInfo[ 7].SmellK = 0.4f; DinoInfo[ 6].HearK = 0.8f; DinoInfo[ 6].LookK = 0.6f;
   DinoInfo[ 7].ShDelta = 128;

    DinoInfo[ 8].Name = "Allosaurus";
   DinoInfo[ 8].Mass = 0.5;
   DinoInfo[ 8].Length = 4.2f;
   DinoInfo[ 8].Radius = 256.f;
   DinoInfo[ 8].Health0 = 3;
   DinoInfo[ 8].BaseScore = 12;
   DinoInfo[ 8].Scale0 = 1000;
   DinoInfo[ 8].ScaleA = 600;
   DinoInfo[ 8].SmellK = 1.0f; DinoInfo[ 7].HearK = 0.3f; DinoInfo[ 7].LookK = 0.5f;
   DinoInfo[ 8].ShDelta = 32;
   DinoInfo[ 8].DangerCall = TRUE;

    DinoInfo[ 9].Name = "Chasmosaurus";
   DinoInfo[ 9].Mass = 3.f;
   DinoInfo[ 9].Length = 5.0f;
   DinoInfo[ 9].Radius = 400.f;    
   DinoInfo[ 9].Health0 = 8;
   DinoInfo[ 9].BaseScore = 9;
   DinoInfo[ 9].SmellK = 0.6f; DinoInfo[ 8].HearK = 0.5f; DinoInfo[ 8].LookK = 0.4f;
   //DinoInfo[ 8].ShDelta = 148;
   DinoInfo[ 9].ShDelta = 108;

    DinoInfo[10].Name = "Velociraptor";
   DinoInfo[10].Mass = 0.3f;
   DinoInfo[10].Length = 4.0f;
   DinoInfo[10].Radius = 256.f;
   DinoInfo[10].Health0 = 3;
   DinoInfo[10].BaseScore = 16;
   DinoInfo[10].ScaleA = 400;
   DinoInfo[10].SmellK = 1.0f; DinoInfo[ 9].HearK = 0.5f; DinoInfo[ 9].LookK = 0.4f;
   DinoInfo[10].ShDelta =-24;
   DinoInfo[10].DangerCall = TRUE;

    DinoInfo[11].Name = "T-Rex";
   DinoInfo[11].Mass = 6.f;
   DinoInfo[11].Length = 12.f;
   DinoInfo[11].Radius = 400.f;
   DinoInfo[11].Health0 = 1024;
   DinoInfo[11].BaseScore = 20;
   DinoInfo[11].SmellK = 0.85f; DinoInfo[10].HearK = 0.8f; DinoInfo[10].LookK = 0.8f;
   DinoInfo[11].ShDelta = 168;
   DinoInfo[11].DangerCall = TRUE;

    DinoInfo[ 4].Name = "Brahiosaurus";
   DinoInfo[ 4].Mass = 9.f;
   DinoInfo[ 4].Length = 12.f;
   DinoInfo[ 4].Radius = 400.f;
   DinoInfo[ 4].Health0 = 1024;
   DinoInfo[ 4].BaseScore = 0;
   DinoInfo[ 4].SmellK = 0.85f; DinoInfo[16].HearK = 0.8f; DinoInfo[16].LookK = 0.8f;
   DinoInfo[ 4].ShDelta = 168;
   DinoInfo[ 4].DangerCall = FALSE;

From this alone we can see how development was progressing at that point. This old RES data is located in the source file labeled Game.cpp. These were left intact albeit commented out. As you can see, by this point in production Dimetrodon and Brachiosaurus were added (note that Brachiosaurus was spelled as Brahiosaurus at this point as well), Chasmosaurus had replaced Triceratops, and Pachycephalosaurus hadn't been replaced by Ankylosaurus yet. Also, note that the Pteranodon, Ceratosaurus, and Spinosaurus had yet to be put in yet and none of the new weapons were added. All the old weapon values from Carnivores 1 are present as well.

In addition, note that Brachiosaurus is listed after T-Rex. In the final version, it's placed at the top with the other ambients. This hints it was planned as huntable at one point. It probably would have had a mortal spot like the T-Rex seeing as how it had (and still has in the final) 1024 health. More on the Brach later though as there's other special things about it.

Also, these entries are still using the old smellk, lookk, and heark values instead of the final's hear and smell. The smellk, lookk, and heark are still present in the final _RES.txt as well and still work but they aren't supposed to be in it as the new smell, look, and hear RES values are present as well making them redundant to use but the devs still did it anyway.

(Source: Carnivores wiki info provided by Dinoguy1000)

Unused Accessory Prices#

While accessories do not have a set cost in the menu, they have fully functional price values in the _RES.txt.

acces  = 0
acces  = 0
acces  = 0
acces  = 0
acces  = 0

It seems that at one point Action Forms intended to make the player earn points to use the accessories, but decided against doing so for whatever reason.

Brachiosaurus#

As stated above, there are several indications that the ambient and immortal Brachiosaurus was originally planned to be huntable. First off, the entry in the Game.CPP data that was commented out above. It was listed after the T-Rex which is where slot 10 of the huntable animals (which isn't used normally in the final game) is located. In addition, it has a basescore value. Even in the final RES. You can see that entry here:

{
 name = 'Brachiosaurus'
 file = 'BRACHI1.CAR'
 ai        = 6
 mass      = 9
 length    = 12
 radius    = 400
 health    = 1024
 basescore = 0
 smell     = 0.4
 hear      = 0.8
 look      = 0.6
 shipdelta = 168
}

The basescore value is interesting to note because no other non-huntable animal in the game has one. The Brachiosaurus is the only Ambient to have such a value making it unique. Why it was scrapped is open for debate but it may have something to do with it being too difficult to shoot its weak point. In the final, it can be killed with cheats or by modifying a weapon's damage value. However, it has no death animation so it still acts as if it was alive. However, its name will no longer be displayed in the binoculars and its shadow will disappear. A new Brach will also spawn on land nearby. This may mean they changed it to an ambient because they ran out of time to make a death animation. However, no real reason for it becoming an ambient animal is known at this time.

Cut Features#

As stated in the E3 1999 press release of Carnivores 2, the game was planned to feature the ability to go prone, advanced weather effects, a secret level, as well as a hidden rocket launcher bonus weapon. These features, however, were never fully implemented, likely due to time constraints, though the idea of a bonus slot seems to have been recycled and implemented in Carnivores: Ice age for the Yeti, the final huntable. The advanced weather effects might be referring to snowing, which is fully functional in Carnivores 2 and seems to automatically appear when the textures of a playable area are too bright, yet this feature was not used in any of the areas and only appeared in Carnivores: Ice Age.

(Source: http://outdoors.wizworks.com/carnivores2/press.htm)