Jump to content

Wijitmaker

WFG Retired
  • Posts

    9.673
  • Joined

  • Last visited

  • Days Won

    10

Everything posted by Wijitmaker

  1. Ok, I got one more revision trying to clean up the things Ken pointed out. I'm trying to get it so that it makes logical sense, and each unit has 2 things its better against and two things its weaker against. Thats the goal See if you like it better Glad we might be finding something that would be tollerable from all 3 of us. Here is the history behind the units as I understand it. Ken, Paul, and Bobby – you’ll have to correct me if you see any problems. Infantry Spearman – probably one of the most primitive units in the game. Fighting with a shart object at the end of the pole didn’t require a lot of technology to develop. It also allowed the human to distance themselves from their attacker. As time pasted the spears got longer and longer. Started with a fighting style similar to a quarterstaff, then to using them in numbers as a ‘pin cushion’ vs. humans (sarrisa in a phalanx). Later it was developed to combat cavalry. During mid-evil time it evolved to the pike. These units tended to be armored heavily as possible. Clearly a solid advantage vs. all forms of cavalry. Infantry Sword – basically a developed sickle. Probably from the club, to the axe, to the sickle to the sword. It was the Romans who used them to combat the long range of the sarrisa. Simply knock the shield aside and walk your way up the shaft of the spear and thrust the sword into the ribs. The spears were so long they had to use two hand to wield them and that meant no shields, so it was a pretty easy kill.once you got past the point of the spear. Generally these were armored well, had shields, and tended to be the nobles. A good sword was an expensive weapon. Clearly a solid advantage vs. spearman – and pretty much any other units on foot that wasn’t well armoured. Infantry Javelinst – these were the skirmishers. These lightly armored units would advance quickly, throw a hail of javelin and then retreat back to their ranks. Grab another spear and repeat. They would do well against any unit that wasn’t wearing proper armor, but do more poorly if they fought hand to hand vs a well armored unit. They didn’t always have to thow their spears either. They used these light small spears in hand to hand similar to quarterstaff. Also note that the development of the pilum was a key transition. This pilum was a weapon with a long steal shaft that would sink into a shield, but be nearly impossible to remove. This rendered the shield useless. They also wighted and balanced them to make them accurately hit with a punch. These guys were great for unshielded units and units that were not armored well. Infantry Archers – they tended to be lightly armored. They usually only took part of first part of the battle which involved sending a volley of raining down the enemy. Of course they would have to stop shooting once the melee units closed in. This means their job was largely over once the ‘true battle’ was underway. They spent hours of training with a bow. If you were hit by an arrow it was more likely an act of random chance than being specifically targeted by an archer. Also worked will vs. any unit that was not properly shielded or armoured. Slingers – they were amazing shots with their slings. They used choice rocks, and often specifically created ‘shot’ made from lead. They could pierce amour in close distances. They were lightly armored because they needed the mobility in their arm regions. Effective vs. armoured units, but if they were effective vs. armored units, then they were especially effective vs. non armored units. Cavalry Spearman – this was the weapon of choice from horseback. This was the unit that would eventually evolve to the medieval knight (after heavy influence by the Sarmartians and their lances). Infantry were an easy kill, just ride them down and squewer them with your stick and its point on the end. As with all cavalry – it was only the rich and the nobles who were able to fight from horseback due to the cost of owning such a beast. These guys have a strong advantage vs. any infantry unit except those spear infantry. Cavlary Swordsman – fighting from horseback with a sword is a tricky thing to do. This required usage of a sword that was longer than the typical infantry sword. One needed a good reach to attack from the height of a horse. If you were without spear (the ideal weapon of choice) it was probably because you needed your hands free to do other tasks such as riding hard and fast. It wasn’t uncommon for the men to dismount and attack from foot if they were armed with only a sword. Used as a quick strike force united to run down the weak units and put a sword in their back. Cavalry Javelins – the javelins thrown from a horse’s back were probably 3 at most. The idea was to quickly advance with 3 in hand, then throw them all. After you had done that it was time to switch to your secondary weapon which was usually a spear or a sword. Fairly vs. any foot unit. Probably pretty good vs some cavalry too if they weren't moving. Cavalry Acher – a very rare unit. It was used by the Persians, but it didn’t gain much traction until the parthians, huns, mongols, and other people of the nomadic steeps introduced them to western Europe. This was the most effective unit on the battlefield for several hundred years till the well armoured knight game allong. Good vs. any foot unit that wasn't heavily armoured.
  2. Quick reply before I go to bed. I'm looking at the 3 sieges as (non of these rank): Ballista - specifically used vs. nonmech units. Its that one unit on the map with super high attack, long reloading time, very weak HPs, small splash damage, expensive, automatic unpack and pack time is required as soon as it stops moving, longer range, with moderate speed. Ram - specifically for buildings. this packs the bigest punch with crush damage. Its slow, highest attack vs. structures, high resitance to pierce damage, week vs melee damage and crush damage, espensive. Onager - basically a cross between the ballista and the ram. Its used vs. anything on the map. Slower as a, shorter range than the ballista, can fire as soon as it stops moving, little faster reloading times than a balista, weak against melee attack, more HP than the ballista, attack is evenly split vs buildings and units so the overal effect against either is less.
  3. I forgot I had visio now... so I redid what I had before here: Ok, this is Stuart's idea he explained to me today via email: And, this is the one where I tried to do a graph from above: Here is the visio files Stuart if you want to play around with them: http://www.wildfiregames.com/~art/wijit/rps.zip Complexity? Hah! That's *depth*, that is! That's strategy! Er... wait.... how did you.... how did you know I would say that! I veiw super units as uniquely adapted to fit the civ. But, I imagine they generally would be based on the 'normal' CS units. I think I'll adress your concerns in the next reply when I'll type up some history background for you that I'm basing my system on.
  4. Thanks for looking it over guys Tomorrow I'll try to draft up something to make a graphical presentation of Stuart's idea.
  5. I had a few minutes, so I decided to get my thoughts down on paper to make my presentation for the RPS paradigm of the game. Instead, I got involved and decided to just type it all up right now Here are the links of a few of the main sites I used for reference: http://www.gamedev.net/reference/articles/...article1087.asp http://www.gamasutra.com/features/20020313...reimeier_02.htm http://www.gamasutra.com/features/game_des...16/symmetry.htm http://www.gdconf.com/archives/2004/johnson_soren.zip http://www.worldrps.com/ Here is the primary dilemma we as designers are posed with in relation to unit interaction. How do we give players an assortment of units that are unique in their own right but at the same time do not overpower one another? We need to maintain balance to make the game not just fair… but the more variety you have, the more strategies and tactics you have. You empower the players with different offensive options, and in turn more options to respond defensively. Here are the basics of how the system works: Rock beats Scissors, Scissors beats Paper, and Paper beats Rock. This next image is an example of how the cycle works in AoK: It’s a pretty simple concept. Mounted units beat Ranged units, Ranged beat Foot units, Foot units beat Mounted units. Nothing to hard to grasp. AoK also shook things a up a bit because there were different ‘types’ within these 3. You had your skirmishers that were a cross between melee and ranged. Your pikemen that were great vs. cavalry and cheaper than swordsmen. And we know the rest… because we have all played AoK. This leads us to AoM: Basically the same thing at the ‘core’. But, this isn’t the only level. We give the player more stages: Notice how the human units are a subset of the greater collection of AoM units. This category in itself is a just a part in a great RPS dynamic. But, wait! That’s not all, it continues! All these choices here are now overshadowed by a greater RPS choice of which god you choose. This isn’t as pure of a RPS dynamic is the others… but, I don’t think it was dumb luck that the ES designers set it up this way. And finally: This is the weakest in the ‘RPS’ concept… but they made a graphic for it, so I thought it was worth showing Why do we use Rock – Paper – Scissor? RPS is used to ‘even the playing field’ of strategies that could be dominantly used multiple times because it proved effective in the past. Instead every action causes a reaction and the response to that action has another possible actions. If we had for example… one uber unit that was good for everything – then why would we use any other unit? The uber unit will be the unit of choice, if you don’t use it… you’ll loose. Another thing I noticed while trying to refine the interactions in warfare is that we have a few units that are not inherently different. The spearman and the swordsman? What makes them different? The archer and the slinger? Any unit that is the same as another should be cut. We don’t want to cut units because they were historically used… So, our only option is to make units unique in a way that might be a stretch in realism. Example, Why do we need to have a slinger? We already have 2 ranged units (arrows/javelin) – one long range and one short – one is more armoured and one is weaker. Where does a slinger fit in? How can he be different? I also noticed we have a few other things going on here. With the unit experience system, the computer is managing the evolution of these units on a unique unit to unit level. We can’t just magically wave a wand and instantly make all our swordsman super strong. We have to use military experience and ‘toughen’ up our units one by one, battle hardening them. Technologies are also unique because you can adjust your path of the game by the choices you choose while your advancing through your tech tree. I think both of those things fit very nicely with what I have here now: Here is how I have the interactions set up. Now, I think it’s important that all unit types from all civs start out with the same traits. If we decide to make greater distinctions, we can do it in their rankings (post basic). To explain the idea a bit: each CS unit is ‘good’ vs. 2 different types of units. It is also week vs. two different units (except the rare cavalry archer). This is important because it gives the player to different options to respond to an army. Also, not every civ has ever unit and this gives us a little compensation in that too. Also the slinger is a bit unique in his own right as he is ‘out of the loop’ with really only one main purpose (basically a mini-onager). I don’t think the bonuses should be vastly different. I do think the distinctions between units to widen as they do gain experience. Much of the greater effect the units will have on other units is compounded by the attack and armour types – these are affected largely be techs and unit experience. What this does do is that it singles out what unit they would choose to attack under the control of the AI. I imagine the attack priority would be something like this: 1] Attack units you were commanded to attack by the human player 2] Attack units that are attacking you 3] Attack units that you are bonused to attack 3] Attack any enemy in LOS So this chart would also play a role in that area. Without further adeu… I present to you the first draft of my RPS chart: I also made up a chart to explain some of the basic distinctions between units that make them unique. Why would I use unit A over B. Well, this is why. As always, I'm open to suggestions on how to improve the interactions and distinctions. I tried to follow history and common sense as much as possible, to there were a few things I had to fudge a bit to maintain a symetry. And that concludes my RPS presentation… Thank you all for attending, I’ll take questions in the back of the room, after we break for refreshments
  6. You need to talk to your newsies, Sting and Code Optimist. Looks like they have been slacking Send them a PM and ask them to post more news
  7. Just finished my second java homework assignment. Wahooo! Tell me what you think!? Note: it assumes some user intellegence on input import java.io.*; //calling all classes in the java.io file in the java directory import java.text.DecimalFormat; public class Video { public static void main (String [] arguements) throws IOException { /***************************************************************************** * Name: Jason Bishop * Program: Video * Description: Simulation of a video store cash register * References: None *****************************************************************************/ BufferedReader kb = new BufferedReader (new InputStreamReader(System.in)); //calling up classes from the java.io file we imported DecimalFormat money = new DecimalFormat("'$'#.00"); //setting a money format, note I figured out how to autimatically include the dollar sign /*******************************INPUT SESSION********************************/ final String Pad1 = " "; // setting a pad of 26 spaces final String Pad2 = " "; //setting a pad of 16 spaces System.out.print("Please enter your name: "); // asking for name input String name = kb.readLine(); System.out.println(""); System.out.println("Now enter your rental information for video rental #1"); System.out.println(""); System.out.print("Title: "); //asking for title input String title1 = (kb.readLine() + Pad1).substring(0,26); //decided to pad this up here, instead of waiting to do it below System.out.print("Type (n = New, o = Old, c = Classic): "); String type1 = kb.readLine(); type1.toLowerCase(); //setting to lowercase to minimize input errors System.out.print("Days rented? "); String rent1 = kb.readLine(); // This is a copy of the form for video rental #1 above (except I changed all 1's to 2's) System.out.println(""); System.out.println("Now Enter your rental information for video rental #2"); System.out.println(""); System.out.print("Title: "); String title2 = (kb.readLine() + Pad1).substring(0,26); System.out.print("Type (n = New, o = Old, c = Classic): "); String type2 = kb.readLine(); System.out.print("Days rented? "); String rent2 = kb.readLine(); System.out.println(""); /*************************USER INPUT INTERPRITATION**************************/ int rent1int = Integer.parseInt(rent1); //changing a string entry to an interger for calcuations int rent2int = Integer.parseInt(rent2); double cost1 = 0.0; //setting a place holder for a movie cost value String type1full = "error"; //setting a place holder for the string output of the movie type if (type1.equalsIgnoreCase("c")) {cost1 = .598; type1full = "Classic";} else if(type1.equalsIgnoreCase("o")) {cost1 = .998; type1full = "Old";} else if(type1.equalsIgnoreCase("n")) {cost1 = 2.495; type1full = "New";} //next few lines are a repeat from above double cost2 = 0.0; String type2full = "error"; if (type2.equalsIgnoreCase("c")) {cost2 = .598; type2full = "Classic";} else if(type2.equalsIgnoreCase("o")) {cost2 = .998; type2full = "Old";} else if(type2.equalsIgnoreCase("n")) {cost2 = 2.495; type2full = "New";} double rentcost1 = cost1 * rent1int; //multiplying daily cost by days rented double rentcost2 = cost2 * rent2int; if (rentcost1 > 99.00) rentcost1 = 99.00; //caps the cost per video at 99.00 max if (rentcost2 > 99.00) rentcost2 = 99.00; double tax = (rentcost1 + rentcost2) * .081; //calculating the tax cost double total = rentcost1 + rentcost2 + tax; //adding the tax cost to the video cost String cost1output = money.format(rentcost1); //applying the money format to the doubles and creating new string variables String cost2output = money.format(rentcost2); String taxoutput = money.format(tax); String totaloutput = money.format(total); /******************************OUTPUT SESSION********************************/ System.out.println("Your Recipt:"); System.out.println(""); System.out.println("STUDENT NAME: " + name); String cell_a1 = ("VIDEO NAME" + Pad1).substring(0,26); //padding the 'cell' to the right String cell_a2 = ("TYPE" + Pad2).substring(0,16); String cell_a3 = ("DAYS RENTED" + Pad2).substring(0,16); String cell_a4 = ("COST OF VIDEO" + Pad2).substring(0,16); String cell_b2 = (type1full + Pad2).substring(0,16); String cell_b3 = (Pad2 + rent1).substring(rent1.length(),16 + rent1.length()); //padding the cell to the left (note: I found it easier to take the length of the string as the minimum and the length of the string plus the pad as the maximum) String cell_b4 = (Pad2 + cost1output).substring(cost1output.length(),16 + cost1output.length()); String cell_c2 = (type2full + Pad2).substring(0,16); String cell_c3 = (Pad2 + rent2).substring(rent2.length(),16 + rent2.length()); String cell_c4 = (Pad2 + cost2output).substring(cost2output.length(),16 + cost2output.length()); String cell_d3 = ("TAX:" + Pad2).substring(0,16); String cell_d4 = (Pad2 + taxoutput).substring(taxoutput.length(),16 + taxoutput.length()); String cell_e3 = ("TOTAL DUE:" + Pad2).substring(0,16); String cell_e4 = (Pad2 + totaloutput).substring(totaloutput.length(),16 + totaloutput.length()); System.out.println("@" + "--------------------------" + "-" + "----------------" + "-" + "----------------" + "-" + "----------------" + "@"); System.out.println("|" + cell_a1 + "|" + cell_a2 + "|" + cell_a3 + "|" + cell_a4 + "|"); System.out.println("|" + "--------------------------" + "|" + "----------------" + "|" + "----------------" + "|" + "----------------" + "|"); System.out.println("|" + title1 + "|" + cell_b2 + "|" + cell_b3 + "|" + cell_b4 + "|"); System.out.println("|" + "--------------------------" + "|" + "----------------" + "|" + "----------------" + "|" + "----------------" + "|"); System.out.println("|" + title2 + "|" + cell_c2 + "|" + cell_c3 + "|" + cell_c4 + "|"); System.out.println("|" + "--------------------------" + "-" + "----------------" + "|" + "----------------" + "|" + "----------------" + "|"); System.out.println("|" + Pad1 + " " + Pad2 + "|" + cell_d3 + "|" + cell_d4 + "|"); System.out.println("|" + Pad1 + " " + Pad2 + "|" + "----------------" + "|" + "----------------" + "|"); System.out.println("|" + Pad1 + " " + Pad2 + "|" + cell_e3 + "|" + cell_e4 + "|"); System.out.println("@" + "--------------------------" + "-" + "----------------" + "-" + "----------------" + "-" + "----------------" + "@"); }//end of main }//end of Video Class
  8. I thought of one today that would be pretty handy... [tab] =
  9. Hopefully Saturday/Sunday... everyone cross your fingers! I can't make any promises though.
  10. Drats, that was quick... someone found us out!
  11. Requirements to update to DD 1.8 status *assign xml attributes as needed to the different fauna *roughly (low, medium, high) assign statistics need to be applied *add a listing of what xml attributes/booleans may be applied to the fauna
  12. That is the key The other big ones are: 1) don't go to sleep with a greesy face or greesy hair 2) change your pillow case weekly Those made the biggest differences for me (that and getting older )
  13. Tim's Brother eh? Well... welcome Tim's brother, give Tim a noogy for me
  14. lol @ Boris Sounds good Ben I think I'll probably go in the mountains and live like a hermit for 20 years to recover from this insainity. Maybe when I return to society WWIII will be over and done wth and there will be no more computers to consume my time (seriously it isn't all that bad )
  15. This might be what your refering to Erik? http://www.holytrinity.ok.goarch.org/Inter...%20Picture.html That is a pretty good account behind the science, history, and physiology of a crusifixion. From what I have read, Gibson's portrayal was mild in comparisons to the practices of the day. But, that isn't really the question, the question would be - is it appropriate for audiences now.
  16. Decent to AK_Thug AMish The Passion was an Excellent movie. Even if you stripped it of Christianity, Judism, and politics it was a great movie. The acting was amazing, cinimitography was beatuifully done, and the score was very good also. If the Hollywood doesn't blackball Gibson for making his art 'his art', then look for the movie at next years Oscars. I've read scores of reviews of the film, the fact is everyone comes away with a different interpritation of what the movie means for them. My advice, don't trust anyone elses advice (not even mine) Go watch the movie for yourself and then decide if "The Passion" was a good movie or not.
  17. Yeah Tim, I really don't have any advice I could send you that would apply to Germany's laws. I'm sure they are simliar to the US laws, but not sure. Anway, my advice would be to maintian a tight bond with you lawyer, and perhaps seek a second oppinion from another lawyer. If they are doing illegal activities she could report them to the authorites and I think that would get her out of her contract safely
  18. Alright it seems we haven't convinced you, well how about I make some demos and then you guys decide after you see those instead of looking at the PAoM ones. I'm thinking more rectagular shaped, smaller, only 5 levels, and smaller file size (of course). Give me a few days to make a mockup
  19. http://dynamic.gamespy.com/~aoe/forums/ubb...anks/rank_2.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...anks/rank_3.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...anks/rank_4.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...anks/rank_6.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...anks/rank_7.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...anks/rank_8.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_10.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_11.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_12.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_14.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_15.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_16.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_18.jpg http://dynamic.gamespy.com/~aoe/forums/ubb...nks/rank_19.jpg Of course, ours would look much better And be project specific for 0ad and TLA. WFG would probably stay the same as it is now.
  20. I tend to use the links at the top of the forum under the banners to forum jump
  21. Me!? I can spell just phine@! Seriously, good to see you here Cian. Check back in 6-8 months and we'll hopefully have some good screenshots up for you! But, do stop by more often
  22. Here is a neat interview I found today: http://www.livejournal.com/users/insomnia/382402.html
×
×
  • Create New...