If anyone remembers, Gyohdon and I were making text-based RPGs. I have my weapons coded, but I need more names for armor types.
Weapons:
Shortswords
- Iron
- Steel
- White Steel
- Silver
- Silver Ash
- Mythril
- MythSteel
Broadswords
- Iron
- Steel
- White Steel
- Silver
- Silver Ash
- Mythril
- MythSteel
Sabers
- Iron
-Steel
- White Steel
- Silver
- Silver Ash
- Mythril
- MythSteel
Claymores
- Iron
- Steel
- White Steel
- Silver
- Silver Ash
- Mythril
- MythSteel
Battleaxes
- Iron
- Steel
- White Steel
- Silver
- Silver Ash
- Mythril
- MythSteel
Warhammers
- Iron
- Steel
- White Steel
- Silver
- Silver Ash
- Mythril
- MythSteel
Armor:
Light Armor
- Hide Armor
- Leather Armor
- Scale Armor
- Studded Leather Armor
Chainmail
- Iron
- Steel
- White Steel
- Silver
- Duranthium
- Mythril
Plate Armor
- Iron
- Steel
- White Steel
- Silver
- Duranthium
- Adamantium
I obviously need more Light Armor types. I was thinking Hide as a type, but after looking up official armor used in the middle ages, armor types like Hide, Fur, or Boiled Leather wouldn't protect against slashing weapons well at all. Am I missing any "REAL" armor types used in the middle ages?
Calling all Fantasy Nerds
Started by: ChristianEater | Replies: 23 | Views: 2,409
Jan 19, 2012 5:54 PM #579424
Jan 19, 2012 6:00 PM #579427
Thats pretty much it i think. Chianmail is usually considered light armor i think anyway.
Jan 19, 2012 6:07 PM #579430
What about Scale Armor? Said to be a good defense against slashing attacks, but weak against bludgeoning attacks. I would rank it above Leather Armor, but not above Studded Leather Armor, since it has Leather for bludgeoning attacks, and an Iron plate underneath for slashing attacks. I'm not sure if I should break it in like that. You think I should create my own armor types based on my world?
Jan 19, 2012 6:11 PM #579432
Out of curiosity, what language are you programming it in?
Jan 19, 2012 6:12 PM #579433
Its a game. You can make up whatever shit you want.
Jan 19, 2012 6:12 PM #579434
C ++
Like a boss.
Like a boss.
Jan 19, 2012 6:25 PM #579438
Quote from ChristianEaterAm I missing any "REAL" armor types used in the middle ages?
In terms of material, all you'd really have is leather, iron, or steel, and wood for shields. The differences would be in the fitting, the joints, and the angles. If you want more variety you're probably going to have to scale back on the realism.
I guess theoretically you could have some of your leather made from cow and some of it made from rhinoceros.
Jan 19, 2012 7:02 PM #579453
The rhino armor must be named Horn Mail ~_^
Jan 19, 2012 8:00 PM #579465
Quote from TheSawThe rhino armor must be named Horn Mail ~_^
I like that Idea.
Jan 19, 2012 8:02 PM #579466
Quote from ChristianEaterC ++
Like a boss.
Cool :)
Wish you luck and all that.
I'm developing a game myself atm, using libSDL.
Jan 19, 2012 9:22 PM #579488
Something is wrong with my code. It generates the weapons like it's supposed to, but something goes wrong with armor. I've checked it a shitload of times, and I can't find anything wrong with it. Someone look at this and tell me what the hell is going on.
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
char playerName[50];
char lastname[50];
char fullname[100];
void Game();
void shop();
void makeweapon();
void makearmor();
void levelUp();
void attributes();
void pHealthCheck();
double randomNUM;
signed int playerLevel = 0;
signed int playerHealth = 100;
signed int playerMaxHealth = 100;
signed int attributePoints = 5;
signed int strength = 10;
signed int agility = 10;
signed int faith = 10;
signed int aptitude = 10;
signed int constitution = 10;
signed int strengthMod = 0;
signed int agilityMod = 0;
signed int faithMod = 0;
signed int aptitudeMod = 0;
signed int Speed = 0;
signed int atkMod = 0;
signed int evade = 0;
signed int DMGMod = 0;
string choice;
string shopWeaponCRE;
string shopWeapon1;
string shopWeapon2;
string shopWeapon3;
string shopWeapon4;
string shopArmorCRE;
string shopArmor1;
string shopArmor2;
// Setup //
int main()
{
cin.sync();
cout << "Enter a name for yourself" << endl << endl;
cout << "First Name: ";
cin.getline(playerName, 50);
cout << endl << endl << "Last Name: ";
cin.getline(lastname, 50);
strcat(fullname, playerName);
strcat(fullname, " ");
strcat(fullname, lastname);
system("cls");
cout << "MAN" << endl;
cout << "Please follow me.";
cin.get();
cout << "So, what is your name?" << endl;
cin.get();
cout << "YOU" << endl;
cout << fullname << "." << endl;
cin.get();
cout << "MAN" << endl;
cout << playerName << "?";
cin.get();
cout << "New Blood? You'll be fine. Just keep your head down.";
cin.get();
cout << "Here we are. Ask to see Gabriel." << endl;
cin.get();
system("cls");
cout << "You walk inside the building. A man runs up to you." << endl << endl;
cin.get();
cout << "GABRIEL" << endl;
cout << "There you are. I'm Gabriel. We have much to do, and little time to do it.";
cin.get();
cout << "Fill out this form." << endl;
cin.get();
levelUp();
system("cls");
cout << "GABRIEL" << endl;
cout << "Now that we've taken care of that, you can fight in the Arena.";
cin.get();
cout << "Follow the torches on the wall to a stairwell.";
cin.get();
cout << "Down those stairs is the preparation room. Talk to Jacob when you want a match." << endl;
cin.get();
Game();
} // End of "Setup"
// Main Game //
void Game(){
Main:
system("cls");
cin.sync();
cout << "JACOB" << endl;
cout << "I don't got all day, what is it going to be?" << endl;
cout << "- [1] HEAL" << endl;
cout << "- [2] ARMORY" << endl;
cout << "- [0] ARENA" << endl;
cin >> choice;
if (choice == "1"){
cin.sync();
playerHealth = playerMaxHealth;
cout << "JACOB" << endl;
cout << "There, now stop whining." << endl;
cin.get();
goto Main;}
else if (choice == "2"){
system("cls");
cin.sync();
shop();
cin.get();
goto Main;}
} // End of "Main Game"
// Displays equipment //
void shop(){
makeweapon();
makearmor();
cout << "WEAPONS" << endl << endl;
cout << "- [1] " << shopWeapon1 << endl;
cout << "- [2] " << shopWeapon2 << endl;
cout << "- [3] " << shopWeapon3 << endl;
cout << "- [4] " << shopWeapon4 << endl << endl << endl;
cout << "ARMOR" << endl << endl;
cout << "- [5] " << shopArmor1 << endl;
cout << "- [6] " << shopArmor2 << endl;
} // End of "Displays equipment"
// Generates random weapons //
void makeweapon(){
int shopWeapon1val = 0;
int shopWeapon2val = 0;
int shopWeapon3val = 0;
int shopWeapon4val = 0;
srand((unsigned)time(0));
WeaponCRE:
if (playerLevel == 1 or playerLevel == 2){
randomNUM = (rand()%18)+1;
if (randomNUM == 1 or randomNUM == 2)
shopWeaponCRE = "Iron Shortsword";
else if (randomNUM == 3 or randomNUM == 4)
shopWeaponCRE = "Iron Broadsword";
else if (randomNUM == 5 or randomNUM == 6)
shopWeaponCRE = "Iron Saber";
else if (randomNUM == 7 or randomNUM == 8)
shopWeaponCRE = "Iron Claymore";
else if (randomNUM == 9 or randomNUM == 10)
shopWeaponCRE = "Iron Battleaxe";
else if (randomNUM == 11 or randomNUM == 12)
shopWeaponCRE = "Iron Warhammer";
else if (randomNUM == 13)
shopWeaponCRE = "Steel Shortsword";
else if (randomNUM == 14)
shopWeaponCRE = "Steel Broadsword";
else if (randomNUM == 15)
shopWeaponCRE = "Steel Saber";
else if (randomNUM == 16)
shopWeaponCRE = "Steel Claymore";
else if (randomNUM == 17)
shopWeaponCRE = "Steel Battleaxe";
else if (randomNUM == 18)
shopWeaponCRE = "Steel Warhammer";
if (shopWeapon1val == 0){
shopWeapon1 = shopWeaponCRE;
shopWeapon1val ++;
goto WeaponCRE;}
else if (shopWeapon2val == 0){
shopWeapon2 = shopWeaponCRE;
shopWeapon2val ++;
goto WeaponCRE;}
else if (shopWeapon3val == 0){
shopWeapon3 = shopWeaponCRE;
shopWeapon3val ++;
goto WeaponCRE;}
else if (shopWeapon4val == 0){
shopWeapon4 = shopWeaponCRE;
shopWeapon4val ++;}}
} // End of "Generates random weapons"
// Generates random armor //
void makearmor(){
int shopArmor1val = 0;
int shopArmor2val = 0;
srand((unsigned)time(0));
ArmorCRE:
if (playerLevel == 1 or playerLevel == 2){
randomNUM = (rand()%3)+1;
if (randomNUM == 1 or randomNUM == 2)
shopArmorCRE = "Hide Armor";
else if (randomNUM == 3)
shopArmorCRE = "Leather Armor";
if (shopArmor1val = 0){
shopArmor1 = shopArmorCRE;
shopArmor1val ++;
goto ArmorCRE;}
else if (shopArmor2val = 0){
shopArmor2 = shopArmorCRE;
shopArmor2val ++;}}
} // End of "Generates random armor"
// Levels up character //
void levelUp(){
if (constitution == 10)
playerMaxHealth = playerMaxHealth + 10;
else if (constitution == 11)
playerMaxHealth = playerMaxHealth + 14;
else if (constitution == 12)
playerMaxHealth = playerMaxHealth + 18;
else if (constitution == 13)
playerMaxHealth = playerMaxHealth + 22;
else if (constitution == 14)
playerMaxHealth = playerMaxHealth + 26;
else if (constitution == 15)
playerMaxHealth = playerMaxHealth + 30;
Attribute:
system("cls");
if (attributePoints == 0)
goto stats;
cin.sync();
cout << "Points Remaining: " << attributePoints << endl << endl;
attributes();
cout << "Type letter(s) in brackets and press Enter to increase attribute." << endl << endl;
cin >> choice;
if (choice =="s" or choice =="S"){
strength ++;
if (strength == 12 or strength == 13)
strengthMod = 1;
else if (strength == 14 or strength == 15)
strengthMod = 2;
else if (strength == 16 or strength == 17)
strengthMod = 3;
else if (strength == 18 or strength == 19)
strengthMod = 4;
else if (strength == 20 or strength == 21)
strengthMod = 5;
attributePoints --;
goto Attribute;}
else if (choice =="a" or choice =="A"){
agility ++;
if (agility == 12 or agility == 13)
agilityMod = 1;
else if (agility == 14 or agility == 15)
agilityMod = 2;
else if (agility == 16 or agility == 17)
agilityMod = 3;
else if (agility == 18 or agility == 19)
agilityMod = 4;
else if (agility == 20 or agility == 21)
agilityMod = 5;
attributePoints --;
goto Attribute;}
else if (choice =="f" or choice =="F"){
faith ++;
if (faith == 12 or faith == 13)
faithMod = 1;
else if (faith == 14 or faith == 15)
faithMod = 2;
else if (faith == 16 or faith == 17)
faithMod = 3;
else if (faith == 18 or faith == 19)
faithMod = 4;
else if (faith == 20 or faith == 21)
faithMod = 5;
attributePoints --;
goto Attribute;}
else if (choice =="p" or choice =="P"){
aptitude ++;
if (aptitude == 12 or aptitude == 13)
aptitudeMod = 1;
else if (aptitude == 14 or aptitude == 15)
aptitudeMod = 2;
else if (aptitude == 16 or aptitude == 17)
aptitudeMod = 3;
else if (aptitude == 18 or aptitude == 19)
aptitudeMod = 4;
else if (aptitude == 20 or aptitude == 21)
aptitudeMod = 5;
attributePoints --;
goto Attribute;}
else if (choice =="c" or choice =="C"){
constitution ++;
attributePoints --;
goto Attribute;}
goto Attribute;
stats:
playerHealth = playerMaxHealth;
playerLevel ++;
cin.sync();
cout << "Level: " << playerLevel << endl;
cout << fullname << endl;
cout << playerHealth << "/" << playerMaxHealth << endl << endl;
attributes();
cin.get();
} // End of "Level up character"
// Displays Attributes //
void attributes(){
cout << "TRENGTH: " << strength << " (+" << strengthMod << ")" << endl;
cout << "[A]GILITY: " << agility << " (+" << agilityMod << ")" << endl;
cout << "[F]AITH: " << faith << " (+" << faithMod << ")" << endl;
cout << "A[P]TITUDE: " << aptitude << " (+" << aptitudeMod << ")" << endl;
cout << "[C]ONSTITUTION: " << constitution << endl << endl;
} // End of "Displays Attributes"
Jan 20, 2012 2:30 PM #579776
If you can explain the issue a little bit more than "something goes wrong" and upload the code to pastebin I'll take a look at it properly :)
Just reading through it now and noticed you are using system("cls") - was generally told to stay away from that sort of thing.
Just reading through it now and noticed you are using system("cls") - was generally told to stay away from that sort of thing.
Jan 21, 2012 12:09 AM #580002
I don't know what pastebin is. If you can give me a link or something I'll try it. I wrote the armory in a different way, so there no longer is a problem. If you can tell me a better command to clear everything, I'll try it, but the game would look like bullshit if I let the text keep building on itself.
Jan 21, 2012 7:48 AM #580142
Quote from ChristianEaterI don't know what pastebin is. If you can give me a link or something I'll try it. I wrote the armory in a different way, so there no longer is a problem. If you can tell me a better command to clear everything, I'll try it, but the game would look like bullshit if I let the text keep building on itself.
I don't know if there is any other way to do it short of just putting a bunch of \ns. But if you aren't looking to compile for Linux then meh :)
PasteBin
And glad to hear you got it working =)
Jan 21, 2012 6:18 PM #580342
you probably want bone armour, that shit always makes you feel badass
also if you want your dreams of making the best text based fantasy game ever crushed look at this http://www.bay12games.com/dwarves/
also if you want your dreams of making the best text based fantasy game ever crushed look at this http://www.bay12games.com/dwarves/