• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Armor Project

superdurnius

Corsair
Coordinator
3D Artist
Storm Modeller
Original Post
Just noting, that I'm, with help of Damski and ZarethPL, messing with armors...
armorproject.jpg

Much work, before release... But still, wanted to brag a little.
-------------------------------------------------------------------------------------------------------------------
Instalation instructions:
  1. Download the files from files section (Note: Password is for files FTP)
  2. Extract RunMeBliat.7z content to main directory and run RunMeBliat.bat
  3. Extract Models.7z and Textures7.z content to RESOURCE foldier.
  4. Edit the code like noted in code section of this post.
  5. new game or re-initialization required... I guess

Files: (Last update: 2010.12.01)
Note: Password is from files FTP

Models part (last update: 2010.12.01)
Texture part (last update: 2010.12.01)


RunMe.bat file (last update: 2010.12.01)

Code: (Last update: 2010.12.01)
...PROGRAM\MODELS\initModels.c
find and delete armor code for:
Blaze_A1, Blaze_A2, Blaze_A3

and add this code:
Code:
// SD armors -->
makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_A0";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_A1";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_A2";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_A6";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_NB_A0";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_NB_A1";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_NB_A2";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze_NB_A6";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze4_A0";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze4_A1";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze4_A2";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze4_A6";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze5_A0";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze5_A1";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze5_A2";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze5_A6";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze6_A0";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze6_A1";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze6_A2";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze6_A6";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze7_A0";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze7_A1";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze7_A2";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;

makeref(model,Models[n]);
model.description =  "";
model.id           =  "Blaze7_A6";
model.FaceId    = "Blaze";
model.nation      =  BROKEN; // we autoassign it elsewhere
model.price        =  1000;
model.assigned  =  true;
n++;
// SD armors <--
...PROGRAM\ITEMS\initItems.c
replace:
Code:
//-----------------------------------------------------------------------------------------------
// STANDARD ARMOR:	   		       picIndex            price      bladefrac      armor
//				   armorID		         |  rare         | coverage  |  gunstop   |      quality
//		 ItemIndex   |	  	picTexture   |   |  minlevel |   | bladestop | gunfrac|  cmodel|
//---------------|---|---------------|---|---|-----|-----|---|---|---|---|---|----|----|---|-----
n = InitStdArmor(n, "cheaparmor",    7, 14, 0.60,  2,  2000, 50, 20, 90, 15, 67, 15,  "1", 3); // Frac values are inverse.
n = InitStdArmor(n, "commonarmor",   7,  6, 0.20,  6,  6000, 67, 40, 50, 25, 50, 30,  "2", 6); // Lower is better!
n = InitStdArmor(n, "goldarmor",     7,  5, 0.05, 12, 15000, 75, 75, 40, 40, 40, 50,  "3", 9);
//-----------------------------------------------------------------------------------------------
//  scheffnow - tailorsmod <--
with:
Code:
//-----------------------------------------------------------------------------------------------
// STANDARD ARMOR:                    picIndex         price      bladefrac      armor
//               armorID                 |  rare         | coverage  |  gunstop   |      quality
//       ItemIndex   |      picTexture   |   |  minlevel |   | bladestop | gunfrac|  cmodel|
//---------------|---|---------------|---|---|-----|-----|---|---|---|---|---|----|----|---|-----
/*
//Original armor code <--                     
n = InitStdArmor(n, "cheaparmor",    7, 14, 0.60,  2,  2000, 50, 20, 90, 15, 67, 15,  "1", 3); // Frac values are inverse.
n = InitStdArmor(n, "commonarmor",   7,  6, 0.20,  6,  6000, 67, 40, 50, 25, 50, 30,  "2", 6); // Lower is better!
n = InitStdArmor(n, "goldarmor",     7,  5, 0.05, 12, 15000, 75, 75, 40, 40, 40, 50,  "3", 9);
//Original armor code -->      
*/
//SuperDurnius armor code -->
n = InitStdArmor(n, "cheaparmor",    30, 1, 0.64,  5,  1995, 40, 20, 90, 15, 67, 15,  "0",  3); // Cheap Cuirass
n = InitStdArmor(n, "commonarmor",   30, 2, 0.47, 10,  5850, 40, 30, 75, 25, 50, 25,  "1",  6); // Guard Cuirass
n = InitStdArmor(n, "qualityarmor",  30, 3, 0.28, 15, 11835, 40, 60, 60, 30, 45, 38,  "2",  9); // Quality Cuirass
n = InitStdArmor(n, "goldarmor",     30, 4, 0.11, 25, 21375, 40, 75, 40, 40, 40, 50,  "6", 12); // Gold-Plated Cuirass

n = InitStdArmor(n, "corsairarmor",  30, 5, 0.18, 17, 15198, 65, 60, 50, 30, 45, 38,  "3", 10); // Corsair Armor (Quality Cuirass+)
n = InitStdArmor(n, "captainarmor",  30, 6, 0.21, 19, 16416, 65, 60, 60, 30, 45, 38,  "4", 10); // Captain Armor (Quality Cuirass+)
n = InitStdArmor(n, "royalarmor",    30, 7, 0.05, 25, 26100, 80, 70, 50, 55, 45, 38,  "5", 10); // Royal Guard Armor (Quality Cuirass+)

n = InitStdArmor(n, "officerarmor",  30, 8, 0.01, 30, 32850, 70, 75, 40, 50, 40, 50,  "7", 13); // Officer Armor (Gold-Plated Cuirass+)
//SuperDurnius armor code <--

...RESOURCE\INI\INTERFACES\pictures.ini
Add:
Code:
//SuperDurnius armors -->
[ITEMS_30]
sTextureName	= items30.tga
wTextureWidth	= 512
wTextureHeight	= 512

picture = itm1,0,0,128,128
picture = itm2,128,0,256,128
picture = itm3,256,0,384,128
picture = itm4,384,0,512,128
picture = itm5,0,128,128,256
picture = itm6,128,128,256,256
picture = itm7,256,128,384,256
picture = itm8,384,128,512,256
picture = itm9,0,256,128,384
picture = itm10,128,256,256,384
picture = itm11,256,256,384,384
picture = itm12,384,256,512,384
picture = itm13,0,384,128,512
picture = itm14,128,384,256,512
picture = itm15,256,384,384,512
picture = itm16,384,384,512,512
//SuperDurnius armors <--
 
I love armor. Nice work! We need more armor. Prior to marines, the navies of the 16th/17th centuries had lots of heavily armored musketeers aboard. Wonder if that's where the term sink or swim came from.

If I'd been wearing a morion helmet like that when my matchlock blew up I wouldn't have the big piratey scar across my forhead that I sport now. :yes

MK
 
That looks amazing! I can see that being used for some really tough guards, perhaps, but I can't imagine someone wearing that stuff while boarding a ship. If they did, they'd terrify the enemy crew into surrendering! :slap
 
Thanks for comments and Ideas... Good to hear that someone likes...

BTW: Note, that I'm also redoing "default" armors. This mod will decrease Characters texture folder by ~150 MB...
armorproject2.jpg
 
It would be nice if we could see more varients of costumes/clothing that we can give our characters such as armours, perhaps armours with and without that mask but are otherwise similar and then other armours from different nations?


Just reminded me of Voyage Century a little bit, other than the fact the graphics of that game (at least the ships) are really out of date, it was a really fun game.
(Except when a level 10 Ship of the Line is almost twice as fast as any Frigate).
 
This is great, SuperDurnius! The mask looks like something out of Chronicles of Narnia: Prince Caspian! :wp
That's not a bad thing though, but I can't quite picture many characters in the game wearing that.
Still, the redone armor is going to be a great thing and the same goes for decreasing the texture folder size! :bow

And I love the pose you placed Nathaniel Hawk in on that armored screenshot? Whahaha! :rofl
 
That Nathanael is bothering me... he's smiling...

Did you manage to replace his head with the Nathanael talking head? :b:
 
Don't sure... I have minor bugs in problems... And also waiting for damski to send me one file, so I could finish something, that could be called a start for my armor mod.
 
Give me some news about this work over the next days, SuperDurnius :?
If you can't finish this project because of minor bugs, I would like you work on a new character from one already existing in the Buildmod : a big wicked Spanish soldier with an armor.
 
Someone plz post me original armor item code from itemsInit.c plz? from newest build... Thanks.
 
You mean this? Note that this contains some newer code still, but that shouldn't interfere with anything of yours. :no
 
OK, code for now... will release resources little later: You can add it now or little later, don't care... For resources... need to doo some testings.
...PROGRAM\ITEMS\initItems.c
replace:
Code:
//-----------------------------------------------------------------------------------------------
// STANDARD ARMOR:	   		       picIndex            price      bladefrac      armor
//				   armorID		         |  rare         | coverage  |  gunstop   |      quality
//		 ItemIndex   |	  	picTexture   |   |  minlevel |   | bladestop | gunfrac|  cmodel|
//---------------|---|---------------|---|---|-----|-----|---|---|---|---|---|----|----|---|-----
n = InitStdArmor(n, "cheaparmor",    7, 14, 0.60,  2,  2000, 50, 20, 90, 15, 67, 15,  "1", 3); // Frac values are inverse.
n = InitStdArmor(n, "commonarmor",   7,  6, 0.20,  6,  6000, 67, 40, 50, 25, 50, 30,  "2", 6); // Lower is better!
n = InitStdArmor(n, "goldarmor",     7,  5, 0.05, 12, 15000, 75, 75, 40, 40, 40, 50,  "3", 9);
//-----------------------------------------------------------------------------------------------
//  scheffnow - tailorsmod <--
with:
Code:
//-----------------------------------------------------------------------------------------------
// STANDARD ARMOR:                    picIndex         price      bladefrac      armor
//               armorID                 |  rare         | coverage  |  gunstop   |      quality
//       ItemIndex   |      picTexture   |   |  minlevel |   | bladestop | gunfrac|  cmodel|
//---------------|---|---------------|---|---|-----|-----|---|---|---|---|---|----|----|---|-----
/*
//Original armor code <--                     
n = InitStdArmor(n, "cheaparmor",    7, 14, 0.60,  2,  2000, 50, 20, 90, 15, 67, 15,  "1", 3); // Frac values are inverse.
n = InitStdArmor(n, "commonarmor",   7,  6, 0.20,  6,  6000, 67, 40, 50, 25, 50, 30,  "2", 6); // Lower is better!
n = InitStdArmor(n, "goldarmor",     7,  5, 0.05, 12, 15000, 75, 75, 40, 40, 40, 50,  "3", 9);
//Original armor code -->      
*/
//SuperDurnius armor code -->
n = InitStdArmor(n, "cheaparmor",    30, 1, 0.64,  5,  1995, 40, 20, 90, 15, 67, 15,  "0",  3); // Cheap Cuirass
n = InitStdArmor(n, "commonarmor",   30, 2, 0.47, 10,  5850, 40, 30, 75, 25, 50, 25,  "1",  6); // Guard Cuirass
n = InitStdArmor(n, "qualityarmor",  30, 3, 0.28, 15, 11835, 40, 60, 60, 30, 45, 38,  "2",  9); // Quality Cuirass
n = InitStdArmor(n, "goldarmor",     30, 4, 0.11, 25, 21375, 40, 75, 40, 40, 40, 50,  "6", 12); // Gold-Plated Cuirass

n = InitStdArmor(n, "corsairarmor",  30, 5, 0.18, 17, 15198, 65, 60, 50, 30, 45, 38,  "3", 10); // Corsair Armor (Quality Cuirass+)
n = InitStdArmor(n, "captainarmor",  30, 6, 0.21, 19, 16416, 65, 60, 60, 30, 45, 38,  "4", 10); // Captain Armor (Quality Cuirass+)
n = InitStdArmor(n, "royalarmor",    30, 7, 0.05, 25, 26100, 80, 70, 50, 55, 45, 38,  "5", 10); // Royal Guard Armor (Quality Cuirass+)

n = InitStdArmor(n, "officerarmor",  30, 8, 0.01, 30, 32850, 70, 75, 40, 50, 40, 50,  "7", 13); // Officer Armor (Gold-Plated Cuirass+)
//SuperDurnius armor code <--


...RESOURCE\INI\INTERFACES\pictures.ini
Add:
Code:
//SuperDurnius armors -->
[ITEMS_30]
sTextureName	= items30.tga
wTextureWidth	= 512
wTextureHeight	= 512

picture = itm1,0,0,128,128
picture = itm2,128,0,256,128
picture = itm3,256,0,384,128
picture = itm4,384,0,512,128
picture = itm5,0,128,128,256
picture = itm6,128,128,256,256
picture = itm7,256,128,384,256
picture = itm8,384,128,512,256
picture = itm9,0,256,128,384
picture = itm10,128,256,256,384
picture = itm11,256,256,384,384
picture = itm12,384,256,512,384
picture = itm13,0,384,128,512
picture = itm14,128,384,256,512
picture = itm15,256,384,384,512
picture = itm16,384,384,512,512
//SuperDurnius armors <--
 
Give me some news about this work over the next days, SuperDurnius :?
If you can't finish this project because of minor bugs, I would like you work on a new character from one already existing in the Buildmod : a big wicked Spanish soldier with an armor.
No news about that? I'm in the part of the quest which this character is used. Tell me, SuperDurnius, if I need to make a modified character or not...
 
Sorry, didn't had time to complete this pack... But you can use any of blaze characters in your qest (blaze7.gm or blaze6.gm for example). And make sure that this character would have Royal Guard Armor equiped. When my pack will be released you won't even need to edit any code, everything will be set automatically...
 
Sorry, didn't had time to complete this pack... But you can use any of blaze characters in your qest (blaze7.gm or blaze6.gm for example). And make sure that this character would have Royal Guard Armor equiped. When my pack will be released you won't even need to edit any code, everything will be set automatically...

OK, for a start I've released what I did manage to complete for a moment. Check the first post...
 
Back
Top