|
Post by CavGunner on Apr 20, 2012 1:48:31 GMT
I'm making a second one alongside Infection.
This time, it's a text-based, free-roam RPG game. Current features; -Stats and Levelling (Demo soon) -Randomized Battle Events (Demo soon) -Randomized quests with random objectives, random targets, random rewards, random difficulty, and random requirements (Demo soon) -Tons of weapons and armour (Demo soon) -Melee, ranged, and magic-based combat (Demo soon -- included in Randomized Battle Events Demo) -Cities, towns, trading, and castles, dungeons, and more environments to explore through words (Demo soon) -A proper story line that's optional to follow (No Demo) -POSSIBILITY of online play. I'll see what I can do (Demo soon)
I'll update this as I get things finished.
|
|
|
Post by Chiral on Apr 20, 2012 2:43:52 GMT
...you're making a text-based roguelike?
I've wanted to make one for a while, but I suck with coding so I'm just taking little steps with little projects trying to get better, One day. Maybe. >.>
|
|
|
Post by CavGunner on Apr 20, 2012 3:52:21 GMT
...you're making a text-based roguelike? I've wanted to make one for a while, but I suck with coding so I'm just taking little steps with little projects trying to get better, One day. Maybe. >.> Yes...yes I am. I DID invite you to help me out with this one xD
|
|
|
Post by Chiral on Apr 20, 2012 4:00:32 GMT
You said something about a game, I remember, I remember... Didn't know that this was what you meant at the time, though ^^
|
|
|
Post by CavGunner on Apr 20, 2012 5:16:14 GMT
You said something about a game, I remember, I remember... Didn't know that this was what you meant at the time, though ^^ Well then here you fucking go It IS possible to work together on a coded game, by the way. Provided we agree on the names of the variables and how they'll be used throughout the game. But yeah, we can separately code blocks and send them back and forth. Eg; I do combat/health, you do quests, etc. Although I'd likely do both of those, as I have major plans on how they'll work ^.^ Either way, just let me know if you want in on it.
|
|
|
Post by Chiral on Apr 20, 2012 16:24:38 GMT
No idea how much help I'd be, but screw it, why the hell not...
Note I'm back at uni now so I don't have so much free time any more. But still... I can try. If everything I try and do goes horribly wrong I'll probably learn at least a little from it ^^
|
|
|
Post by CavGunner on Apr 20, 2012 17:12:35 GMT
No idea how much help I'd be, but screw it, why the hell not... Note I'm back at uni now so I don't have so much free time any more. But still... I can try. If everything I try and do goes horribly wrong I'll probably learn at least a little from it ^^ Well, I just finished Uni, so I have plenty of time ;P But yeah. If you need a small tutorial for Turing (That's what I'm using), let me know. I know you saw my Infection script, and it really isn't that difficult to learn, and you said yourself that there were only a few differences to Python, so just let me know. I'm starting the Questing and Combat scripts now.
|
|
|
Post by CavGunner on Apr 20, 2012 20:47:00 GMT
GUI...so much GUI... And sounds! And music! And pictures! And dynamic gameplay that changes based on how you play and what you chose, and even if you make the same choices a second time around, the game will still be different!
Woo! Kill me.
|
|
|
Post by CavGunner on Apr 21, 2012 6:52:45 GMT
%This is the Combat Script for the RPG game. %Made by CavGunner
View.Set("graphics:640;480,nobuttonbar")
var lvl:int var mob:array 1..20 of string var reg:array 1..100 of int var roll:int var mobcurrent:array 1..5 of string var mobnm1:array 1..5 of string var mobnm2:array 1..5 of string var mobhp:array 1..5 of int var mobaff:array 1..5 of string var mobdmgmin:array 1..5 of int var mobdmgmax:array 1..5 of int var aff:array 1..100 of string var mobaffint:string var mobdefaff:string %Mob types mob(1):="Goblin" mob(2):="Faerie" mob(3):="Wolf" mob(4):="Snake" mob(5):="Spider" mob(6):="Bandit" mob(7):="Centaur" mob(8):="Giant" mob(9):="Zombie" mob(10):="Spriggen" mob(11):="Wyvern" mob(12):="Ghast" mob(13):="Ogre" mob(14):="Dryad" mob(15):="Spirit" mob(16):="Reaper" mob(17):="Harpy" mob(18):="Dragon" mob(19):="Troll" mob(20):="Lich" %Mob Affinities aff(1):="Immune to fire" aff(2):="Plate armour" aff(3):="Night vision" aff(4):="Berserk" aff(5):="Flight" aff(6):="Poison immunity" %Default Values mobcurrent(1):="none" mobcurrent(2):="none" mobcurrent(3):="none" mobcurrent(4):="none" mobcurrent(5):="none" mobaffint:="No Inherant Affinity" mobdefaff:="No Additional Affinity" mobaff(1):="No Additional Affinity"
procedure mobtype if lvl<=30 then roll:=Rand.Int(1,20) if roll=1 then mobcurrent(1):=mob(1) elsif roll=2 then mobcurrent(1):=mob(2) elsif roll=3 then mobcurrent(1):=mob(3) elsif roll=4 then mobcurrent(1):=mob(4) elsif roll=5 then mobcurrent(1):=mob(5) elsif roll=6 then mobcurrent(1):=mob(6) elsif roll=7 then mobcurrent(1):=mob(7) elsif roll=8 then mobcurrent(1):=mob(8) elsif roll=9 then mobcurrent(1):=mob(9) elsif roll=10 then mobcurrent(1):=mob(10) elsif roll=11 then mobcurrent(1):=mob(11) elsif roll=12 then mobcurrent(1):=mob(12) elsif roll=13 then mobcurrent(1):=mob(13) elsif roll=14 then mobcurrent(1):=mob(14) elsif roll=15 then mobcurrent(1):=mob(15) elsif roll=16 then mobcurrent(1):=mob(16) elsif roll=17 then mobcurrent(1):=mob(17) elsif roll=18 then mobcurrent(1):=mob(18) elsif roll=19 then mobcurrent(1):=mob(19) elsif roll=20 then mobcurrent(1):=mob(20) end if if lvl<=15 then roll:=Rand.Int(1,10) if roll=1 then mobcurrent(1):=mob(1) elsif roll=2 then mobcurrent(1):=mob(2) elsif roll=3 then mobcurrent(1):=mob(3) elsif roll=4 then mobcurrent(1):=mob(4) elsif roll=5 then mobcurrent(1):=mob(5) elsif roll=6 then mobcurrent(1):=mob(6) elsif roll=7 then mobcurrent(1):=mob(7) elsif roll=8 then mobcurrent(1):=mob(8) elsif roll=9 then mobcurrent(1):=mob(9) elsif roll=10 then mobcurrent(1):=mob(10) end if end if end if if lvl<=5 then roll:=Rand.Int(1,5) if roll=1 then mobcurrent(1):=mob(1) elsif roll=2 then mobcurrent(1):=mob(2) elsif roll=3 then mobcurrent(1):=mob(3) elsif roll=4 then mobcurrent(1):=mob(4) elsif roll=5 then mobcurrent(1):=mob(5) end if end if
end mobtype
procedure mobstats if mobcurrent(1)=mob(1) then if lvl<=30 then mobhp(1):=Rand.Int(42,78) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(2) else mobaff(1):=aff(3) end if roll:=Rand.Int(9,13) mobdmgmin(1):=roll roll:=Rand.Int(15,18) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(21,37) mobaff(1):=aff(2) roll:=Rand.Int(4,8) mobdmgmin(1):=roll roll:=Rand.Int(8,11) mobdmgmax(1):=roll end if if lvl<=5 then mobhp(1):=Rand.Int(9,15) roll:=Rand.Int(1,3) mobdmgmin(1):=roll roll:=Rand.Int(3,5) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(2) then if lvl<=30 then mobhp(1):=Rand.Int(45,81) roll:=Rand.Int(7,10) mobdmgmin(1):=roll roll:=Rand.Int(10,14) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(23,40) roll:=Rand.Int(3,6) mobdmgmin(1):=roll roll:=Rand.Int(6,8) mobdmgmax(1):=roll end if if lvl<=5 then mobhp(1):=Rand.Int(13,19) roll:=Rand.Int(1,2) mobdmgmin(1):=roll roll:=Rand.Int(2,4) mobdmgmax(1):=roll end if mobaffint:=aff(5) elsif mobcurrent(1)=mob(3) then if lvl<=30 then mobhp(1):=Rand.Int(41,72) mobaff(1):=aff(3) roll:=Rand.Int(1,3) mobdmgmin(1):=roll roll:=Rand.Int(3,5) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(22,35) roll:=Rand.Int(1,3) mobdmgmin(1):=roll roll:=Rand.Int(3,5) mobdmgmax(1):=roll end if if lvl<=5 then mobhp(1):=Rand.Int(15,21) roll:=Rand.Int(4,5) mobdmgmin(1):=roll roll:=Rand.Int(5,6) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(4) then if lvl<=30 then mobhp(1):=Rand.Int(35,52) roll:=Rand.Int(9,11) mobdmgmin(1):=roll roll:=Rand.Int(11,13) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(16,24) roll:=Rand.Int(5,8) mobdmgmin(1):=roll roll:=Rand.Int(8,10) mobdmgmax(1):=roll end if if lvl<=5 then mobhp(1):=Rand.Int(6,12) roll:=Rand.Int(2,5) mobdmgmin(1):=roll roll:=Rand.Int(5,7) mobdmgmax(1):=roll end if roll:=Rand.Int(1,2) if roll=1 then mobaffint:=aff(3) else mobaffint:=aff(6) end if elsif mobcurrent(1)=mob(5) then if lvl<=30 then mobhp(1):=Rand.Int(45,76) mobaff(1):=aff(3) roll:=Rand.Int(10,13) mobdmgmin(1):=roll roll:=Rand.Int(13,16) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(29,39) mobaff(1):=aff(3) roll:=Rand.Int(5,8) mobdmgmin(1):=roll roll:=Rand.Int(8,12) mobdmgmax(1):=roll end if if lvl<=5 then mobhp(1):=Rand.Int(18,26) roll:=Rand.Int(2,4) mobdmgmin(1):=roll roll:=Rand.Int(4,7) mobdmgmax(1):=roll end if mobaffint:=aff(6) elsif mobcurrent(1)=mob(6) then if lvl<=30 then mobhp(1):=Rand.Int(47,87) mobaff(1):=aff(2) roll:=Rand.Int(12,17) mobdmgmin(1):=roll roll:=Rand.Int(17,23) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(28,40) roll:=Rand.Int(6,9) mobdmgmin(1):=roll roll:=Rand.Int(9,14) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(7) then if lvl<=30 then mobhp(1):=Rand.Int(50,82) mobaff(1):=aff(2) roll:=Rand.Int(15,19) mobdmgmin(1):=roll roll:=Rand.Int(19,25) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(30,38) roll:=Rand.Int(8,10) mobdmgmin(1):=roll roll:=Rand.Int(10,14) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(8) then if lvl<=30 then mobhp(1):=Rand.Int(100,150) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(2) else mobaff(1):=aff(4) end if roll:=Rand.Int(22,28) mobdmgmin(1):=roll roll:=Rand.Int(28,36) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(60,90) roll:=Rand.Int(15,20) mobdmgmin(1):=roll roll:=Rand.Int(20,25) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(9) then if lvl<=30 then mobhp(1):=Rand.Int(51,76) mobaff(1):=aff(2) roll:=Rand.Int(20,27) mobdmgmin(1):=roll roll:=Rand.Int(27,29) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(32,48) roll:=Rand.Int(13,16) mobdmgmin(1):=roll roll:=Rand.Int(16,22) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(10) then if lvl<=30 then mobhp(1):=Rand.Int(43,62) roll:=Rand.Int(20,23) mobdmgmin(1):=roll roll:=Rand.Int(23,25) mobdmgmax(1):=roll end if if lvl<=15 then mobhp(1):=Rand.Int(23,40) roll:=Rand.Int(12,15) mobdmgmin(1):=roll roll:=Rand.Int(15,18) mobdmgmax(1):=roll end if mobaffint:=aff(6) elsif mobcurrent(1)=mob(11) then if lvl<=30 then mobhp(1):=Rand.Int(87,186) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(3) else mobaff(1):=aff(5) end if roll:=Rand.Int(26,32) mobdmgmin(1):=roll roll:=Rand.Int(32,39) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(12) then if lvl<=30 then mobhp(1):=Rand.Int(69,157) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(3) else mobaff(1):=aff(5) end if roll:=Rand.Int(22,34) mobdmgmin(1):=roll roll:=Rand.Int(34,49) mobdmgmax(1):=roll end if mobaffint:=aff(6) elsif mobcurrent(1)=mob(13) then if lvl<=30 then mobhp(1):=Rand.Int(94,212) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(2) else mobaff(1):=aff(4) end if roll:=Rand.Int(30,50) mobdmgmin(1):=roll roll:=Rand.Int(50,62) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(14) then if lvl<=30 then mobhp(1):=Rand.Int(75,176) roll:=Rand.Int(23,27) mobdmgmin(1):=roll roll:=Rand.Int(27,32) mobdmgmax(1):=roll end if mobaff(1):=aff(6) elsif mobcurrent(1)=mob(15) then if lvl<=30 then mobhp(1):=Rand.Int(100,120) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(3) else mobaff(1):=aff(5) end if roll:=Rand.Int(21,25) mobdmgmin(1):=roll roll:=Rand.Int(25,31) mobdmgmax(1):=roll end if mobaffint:=aff(6) elsif mobcurrent(1)=mob(16) then if lvl<=30 then mobhp(1):=Rand.Int(180,297) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(2) else mobaff(1):=aff(3) end if roll:=Rand.Int(35,48) mobdmgmin(1):=roll roll:=Rand.Int(48,59) mobdmgmax(1):=roll end if mobaffint:=aff(6) elsif mobcurrent(1)=mob(17) then if lvl<=30 then mobhp(1):=Rand.Int(97,153) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(2) else mobaff(1):=aff(5) end if roll:=Rand.Int(32,44) mobdmgmin(1):=roll roll:=Rand.Int(44,49) mobdmgmax(1):=roll end if elsif mobcurrent(1)=mob(18) then if lvl<=30 then mobhp(1):=Rand.Int(312,567) roll:=Rand.Int(1,2) if roll=1 then mobaff(1):=aff(2) else mobaff(1):=aff(5) end if roll:=Rand.Int(56,72) mobdmgmin(1):=roll roll:=Rand.Int(72,88) mobdmgmax(1):=roll end if mobaffint:=aff(1) elsif mobcurrent(1)=mob(19) then if lvl<=30 then mobhp(1):=Rand.Int(87,113) mobaff(1):=aff(4) end if roll:=Rand.Int(27,36) mobdmgmin(1):=roll roll:=Rand.Int(36,42) mobdmgmax(1):=roll elsif mobcurrent(1)=mob(20) then if lvl<=30 then mobhp(1):=Rand.Int(97,164) mobaff(1):=aff(3) end if mobaffint:=aff(6) roll:=Rand.Int(22,33) mobdmgmin(1):=roll roll:=Rand.Int(33,44) mobdmgmax(1):=roll end if end mobstats
procedure mobname if lvl <=30 then roll:=Rand.Int(1,3) if roll=1 then mobnm1(1):="Massive" elsif roll=2 then mobnm1(1):="Terrifying" elsif roll=3 then mobnm1(1):="Deadly" end if end if if lvl <=15 then roll:=Rand.Int(1,3) if roll=1 then mobnm1(1):="Large" elsif roll=2 then mobnm1(1):="Tough" elsif roll=3 then mobnm1(1):="Muscled" end if end if if lvl <=5 then roll:=Rand.Int(1,3) if roll=1 then mobnm1(1):="Weak" elsif roll=2 then mobnm1(1):="Scraggly" elsif roll=3 then mobnm1(1):="Puny" end if end if end mobname
%---------------------------------------------------------------------------------------------------------------------
put "This is just a Test/Demo at the way the combat will work in the main game." put "This is the actual script I'm using, just SEVERELY simplified." put "Essentially, you put in what level you want to simulate, between 1 and 20..." put "Then, a monster will be randomly selected from my generated list to pick the type of mob." put "THEN, a second randomizer will decide it's exact health, damage, abilities, and affinity." put "Finally, the last randomizer will take all these stats and create a random name for the mob." put "Then, the battle begins. It's straight-forward from there." put "" loop mobcurrent(1):="none" mobcurrent(2):="none" mobcurrent(3):="none" mobcurrent(4):="none" mobcurrent(5):="none" mobaffint:="No Inherant Affinity" mobdefaff:="No Additional Affinity" mobaff(1):="No Additional Affinity" put "---" put "Enter the level you want to test (1-30):" loop get lvl exit when lvl>=1 and lvl<=30 end loop mobtype mobstats mobname put "Now, since this is only a PART of the Combat Demo, I'll only include what the mob would have had;" put "Mob type: ",mobcurrent(1) put "Mob health: ",mobhp(1) put "Mob affinity: ",mobaff(1) put "Mob inherant affinity: ",mobaffint put "Mob damage range (Standard attack): ",mobdmgmin(1),"-",mobdmgmax(1) put "Mob abilities: COMING IN NEXT PATCH" put "Mob name: ",mobnm1(1)," ",mobcurrent(1) end loop
A partial Combat Demo. It's actually the Mob Selection Demo. It randomly selects a mob dependent on what level you put in, then it randomly selects the health, damage range, Inherant Affinity, Additional Affinity, and Abilities (Not yet in) of the mob. THEN it picks a name from a rather (for now) short list. Then is splurts it all out at you. In the actual game, and later updates...it will work a LOT differently. This is just a test to see what kind of combinations you can get. Give it a go if you're interested. Download: www.mediafire.com/download.php?jn6927movojmqql
|
|
|
Post by CavGunner on Apr 23, 2012 22:24:31 GMT
Alright, just figure out a way to make this even more awesome; At the start of the game, there will be 999,999 randomly generated weapons, and...(Here we go): 9999 randomly generated each of; -Head Armour -Torso armour -Leg armour -Foot armour -Left arm -Right arm -Left Hand -Right Hand -Belt -2 sets of 9999 rings -Left shoulder -Right shoulder
And every single piece will have a different name, damage value, chance of critical strike, material, weapon type (Dagger, sword, claymore, etc), and chance of an enchantment, with a random enchantment. Every single item will then have a random value. And this will all be different EVERY SINGLE TIME YOU PLAY. I also added a save/load feature. Only one file for now, though. I can add more slots, though. No time at the moment. I'm also pumping out a GUI.
Oh, and this won't be one of those bullshit games where you can't wear certain things until you're strong enough. Use whatever you want, but each item will have different strengths and weaknesses against different things.
I'll make another Demo for the item and weapon generation once I get it fully working, and I've already started on the full game, with this EXACT system built in.
|
|
|
Post by CavGunner on Apr 24, 2012 4:25:00 GMT
FINISHED THE WEAPON GENERATION! I changed the values around a bit. Only 9999 weapons are generated... But here's an example of 100 of the generated weapons: Damaged Silver Hand Axe of Flames :: 26-63 :: 0.8 Hardened Adament Mace :: 74-182 :: 1.2 Gold Spear :: 22-62 :: 1 Rusty Steel Staff :: 7-33 :: 0.5 Fine Copper Dagger :: 75-127 :: 1.5 Obsidian Dagger :: 37-199 :: 1 Pyerite Staff :: 20-182 :: 1 Fine Gold Halberd :: 54-114 :: 1.5 Fine Copper Warhammer :: 43-119 :: 1.5 Hardened Pyerite Staff :: 61-197 :: 1.2 Hardened Bone Knife :: 37-146 :: 1.2 Damaged Resin Sword :: 30-61 :: 0.8 Silver Staff :: 13-81 :: 1 Hardened Gold Flail :: 36-61 :: 1.2 Damaged Ice Warhammer :: 49-103 :: 0.8 Rusty Bronze Battleaxe :: 13-48 :: 0.5 Damaged Iron Halberd :: 29-45 :: 0.8 Hardened Resin Knife of Death :: 47-108 :: 1.2 Damaged Silver Battleaxe :: 28-51 :: 0.8 Fine Bronze Spear :: 34-100 :: 1.5 Rusty Adament Mace :: 38-60 :: 0.5 Bone Flail :: 40-110 :: 1 Damaged Obsidian Hand Axe :: 61-170 :: 0.8 Rusty Obsidian Claymore :: 24-105 :: 0.5 Resin Warhammer :: 69-88 :: 1 Hardened Celestial Mace :: 38-191 :: 1.2 Hardened Stone Knuckles :: 7-20 :: 1.2 Damaged Iron Claymore :: 11-34 :: 0.8 Fine Ice Staff of Gale :: 37-228 :: 1.5 Damaged Bone Sword :: 51-86 :: 0.8 Rusty Steel Bow :: 17-49 :: 0.5 Fine Celestial Mace :: 73-177 :: 1.5 Rusty Bronze Battleaxe :: 22-36 :: 0.5 Rusty Wood Bow :: 4-5 :: 0.5 Copper Halberd :: 32-75 :: 1 Copper Battleaxe :: 33-95 :: 1 Rusty Steel Flail :: 11-50 :: 0.5 Hardened Wood Spear :: 10-11 :: 1.2 Hardened Steel Halberd :: 52-99 :: 1.2 Hardened Pyerite Dagger :: 58-129 :: 1.2 Rusty Gold Warhammer :: 13-26 :: 0.5 Rusty Onyx Flail :: 35-92 :: 0.5 Damaged Steel Mace :: 37-56 :: 0.8 Damaged Stone Halberd :: 10-27 :: 0.8 Fine Steel Warhammer :: 75-143 :: 1.5 Hardened Silver Halberd :: 40-118 :: 1.2 Fine Iron Knuckles :: 48-65 :: 1.5 Obsidian Hand Axe :: 38-154 :: 1 Mithril Hand Axe :: 66-135 :: 1 Damaged Copper Knuckles :: 24-76 :: 0.8 Ice Dagger :: 60-100 :: 1 Rusty Bone Battleaxe :: 19-43 :: 0.5 Fine Celestial Staff :: 77-200 :: 1.5 Celestial Sword :: 65-91 :: 1 Damaged Copper Knife :: 14-60 :: 0.8 Rusty Iron Battleaxe :: 6-22 :: 0.5 Fine Pyerite Halberd :: 101-193 :: 1.5 Hardened Wood Claymore :: 8-18 :: 1.2 Fine Wood Halberd :: 12-18 :: 1.5 Fine Bronze Flail :: 66-172 :: 1.5 Fine Gold Dagger :: 27-122 :: 1.5 Fine Silver Knife :: 63-159 :: 1.5 Celestial Bow :: 78-116 :: 1 Fine Copper Scythe :: 58-101 :: 1.5 Iron Staff :: 16-60 :: 1 Damaged Stone Warhammer :: 12-20 :: 0.8 Damaged Ice Scythe :: 33-105 :: 0.8 Fine Copper Scythe of Light :: 86-99 :: 1.5 Fine Mithril Sword :: 54-157 :: 1.5 Damaged Iron Knuckles :: 20-44 :: 0.8 Hardened Pyerite Dagger :: 62-118 :: 1.2 Fine Stone Sword :: 16-47 :: 1.5 Damaged Ice Warhammer :: 46-110 :: 0.8 Fine Bronze Mace :: 78-109 :: 1.5 Rusty Adament Claymore :: 15-78 :: 0.5 Fine Resin Dagger :: 40-155 :: 1.5 Hardened Gold Halberd :: 52-84 :: 1.2 Fine Mithril Dagger :: 67-163 :: 1.5 Rusty Stone Sword :: 5-10 :: 0.5 Hardened Resin Battleaxe :: 33-117 :: 1.2 Rusty Mithril Sword :: 29-61 :: 0.5 Hardened Obsidian Dagger :: 125-236 :: 1.2 Hardened Pyerite Scythe :: 108-112 :: 1.2 Fine Pyerite Scythe :: 48-183 :: 1.5 Hardened Stone Mace :: 14-28 :: 1.2 Fine Silver Dagger :: 23-122 :: 1.5 Damaged Gold Warhammer :: 16-39 :: 0.8 Damaged Wood Battleaxe :: 4-10 :: 0.8 Fine Iron Claymore :: 27-65 :: 1.5 Bronze Hand Axe :: 14-122 :: 1 Celestial Battleaxe :: 66-170 :: 1 Steel Bow :: 39-78 :: 1 Fine Stone Flail :: 20-30 :: 1.5 Rusty Steel Knuckles :: 18-26 :: 0.5 Hardened Pyerite Sword :: 24-130 :: 1.2 Fine Onyx Spear :: 44-275 :: 1.5 Damaged Steel Warhammer :: 31-80 :: 0.8 Fine Gold Claymore of Brute Strength :: 36-124 :: 1.5 Rusty Bone Mace :: 37-65 :: 0.5 Fine Iron Hand Axe :: 28-75 :: 1.5
In order of the name, you have: 1) Durability (Decides the final multiplier of Max and Min damages) 2) Material (Decides the primary multiplier of Max and Min damages) 3) Weapon Type (Decides the constant for the weapon damage) 4) Enchantment (If available...adds bonuses to the weapon, though none have been coded yet) 5) Min Damage - Max Damage 6) Final Multiplier (Testing purposes), shows how much the damage is affected by the durability. Damage calculation equation: roll:=Rand.Int(10,50) wepdmgl(k):=ceil(((roll*wepvar(k))+wepcore(k))*wepdurbval(k)) roll:=Rand.Int(50,100) wepdmgh(k):=ceil(((roll*wepvar(k))+wepcore(k))*wepdurbval(k))
But yeah. That's done. Now to complete armour (Now that the weapons are done...armour will be easy), and start Quests. Then complete enchantments (Easy). Then finish Locations and Navigation (Easy). Then NPC's (Long, but easy). Then Inventory, Gear (Hard to do). Then Mobs (Meh...) Finally, Stats and Levelling (Easy). And then I can release a stable Demo version of the game, while I shut off the lights and add dozens of new weapons, armours, quests, mobs, and places. That's not hard. It's all random, anyway ^.^ By the way, if you guys are actually interested in this, or actually read this...let me know. Else I'll just stop posting here
|
|
|
Post by Master Littica on Apr 24, 2012 4:47:41 GMT
You gonna try and get this into a web browser or something? cause its looking really nice
|
|
|
Post by CavGunner on Apr 24, 2012 7:52:58 GMT
You gonna try and get this into a web browser or something? cause its looking really nice It'll be a downloadable .exe file and a few extra files for music and sounds and such, but no installation will be required. I'm still trying to work in how I'm going to do multiplayer... Possibly just the option to do PvP... But we'll see. It'll be free, obviously. Despite how fricking long it's going to take me, and how much blasted code I'll have to write for everything... xD But yeah, I'll link some downloads up when it's all ready. Will literally be an extract-and-go.
|
|
|
Post by CavGunner on Apr 25, 2012 8:09:59 GMT
|
|