• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.


  • Content count

  • Joined

  • Last visited

Community Reputation

152 Neutral

About Malazar

  • Rank
  1. Thanks, that's exactly the kind of thing I'm looking for.
  2. So I want my users to be able to create a file, and name it, then while the program is running they can see the name of the file they're using, when creating a new file they're asked to input a name for it, and once accepted, the form will load with their new file, setting the form name (or a label) to the name they've input. My problem at the moment is that, when I take the text box text and convert to a string, then set the name of the new form to that string, it does nothing. the code compiles and runs without error, but does nothing. I've trawled through the MSDN documentation, however, none of it seems to handle anything remotely like this that I can find - only converting things like integers into strings, etc. If I try to directly input the text box text anywhere it throws errors that it can't be implicitly converted into a string. Anyway, here's the code: [code] LeagueView StartNewLeague = new LeagueView(); string NameString; //NewLeagueName.Text.ToString(); //This line seems to make no difference, moved down one. //this converts newleaguename.text into a string and makes NameString = that text (i.e. the name the user has input) NameString = NewLeagueName.Text.ToString(); //this sets the name of the new league to the name the user has input StartNewLeague.Name = NameString; //only it actually doesn't, as it does nothing whatsoever. StartNewLeague.Show();[/code] Does anyone have any ideas about how to set the name of the new form window (or alternatively to set the name of a label within the new form) ?
  3. Ah, thanks - the perils of looking through multiple tutorials and MSDN at the same time. Got it working now (that is, not throwing any errors) using the StreamWriter, however, when I hit save on the save dialogue box, it doesn't actually create a file. Any ideas what's missing?
  4. Hi, I've been trying to get back into coding, and started on a little project for a local games league to track scores, etc, but I seem to be having issues with using the StreamWriter method in C#. I can run and debug fine, but when I actually try to output a file, it throws an unhandled exception: [code]System.IO.IOException was unhandled Message=The process cannot access the file 'C:\**project filepath**\bin\Debug\enter league name' because it is being used by another process. Source=mscorlib StackTrace: at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options) at System.IO.StreamWriter.CreateFile(String path, Boolean append) at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize) at System.IO.StreamWriter..ctor(String path, Boolean append) at WindowsFormsApplication1.CreateNewLeague.SaveNewLeague_Click(Object sender, EventArgs e) in C:\**project filepath**\\CreateNewLeague.cs:line 50 at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg) at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData) at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context) at System.Windows.Forms.Application.Run(Form mainForm) at WindowsFormsApplication1.Program.Main() in C:\**project filepath**\Program.cs:line 18 at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args) at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args) at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly() at System.Threading.ThreadHelper.ThreadStart_Context(Object state) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean ignoreSyncCtx) at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state) at System.Threading.ThreadHelper.ThreadStart() InnerException: [/code] The code I'm running that causes this is the following: [code]private void SaveNewLeague_Click(object sender, EventArgs e) { SaveFileDialog NewLeagueSave = new SaveFileDialog(); NewLeagueSave.Filter = "XML File|*.xml|Text File|*.txt"; NewLeagueSave.Title = "Save League"; NewLeagueSave.ShowDialog(); // set file name to NewLeagueName text box value string NameString; NewLeagueName.Text.ToString(); NameString = NewLeagueName.Text; NewLeagueSave.FileName = NameString; //this appears to do nothing. if (NewLeagueSave.FileName != "") { // Saves the Image via a FileStream created by the OpenFile method. System.IO.FileStream fs = (System.IO.FileStream)NewLeagueSave.OpenFile(); // Saves the Image in the appropriate ImageFormat based upon the // File type selected in the dialog box. // NOTE that the FilterIndex property is one-based. switch (NewLeagueSave.FilterIndex) { case 1: break; case 2: StreamWriter myStream = new StreamWriter(NewLeagueSave.FileName, true); myStream.Write(NewLeagueName.Text); myStream.Close(); break; } fs.Close(); } }[/code] Now I've not really used C# before, and haven't touched any code for a couple of years, so I'm probably missing something really obvious here, but does anyone know why StreamWriter would be throwing an exception on the line "StreamWriter myStream = new StreamWriter(NewLeagueSave.FileName, true); " ? Thanks in advance, Mal.
  5. Quote:Original post by Punk Designer X - Virtual representation of the player in cyber space. Y - Data files. Z - Virtual representations of the government in cyber space. I like this idea, it's kinda cool. How about Z being hackers or viruses or something trying to take over the world. The government works for this one, too, of course.
  6. Quote:Original post by GninjaGnome Gummi Worms vs. Gummi Bears ??*I don't know whats going on either*?? This idea rocks. Harribo-wars!!! Of course, then you get someone playing the gummi-dinosaur flattening everyone, and that's just not cricket. I think going with the sweets (candy for Americans) theme would be kinda cool, since you can theme weapons and terrain around this easily as well.
  7. Quote:Original post by Edtharan What if the overall total of the stats doesn't increase over time, but the variation from a median can. In most stat systems when you gain a level you get X amount of point you can add to your stats. However, in this new system, if you increase a stat, you have to decrease other stats to compensate. The amount of points you can move increases with your level, but not the total of the points in the stats. For example: If you had these stats at these values at level 1 Strength = 1000 Health = 1000 Mind = 1000 Reflex = 1000 At each level you get to move 10 points between the stats so at level 2 you might have: Strength = 990 Health = 1000 Mind = 1010 Reflex = 1000 At level 10 you might have: Strength = 910 Health = 1000 Mind = 1050 Reflex = 1040 And so forth. OF course, you could have a larger or smaller amount of points that can be moved each level if you wanted. This way, all characters are equal, but they become more specialised over time. So a level 1 character could conceivably enter a level 20 dungeon, but they might not have as easy a time as one who had become a specialist in their field. It would also make it that new characters are more flexible in what they could do but they just would not be as effective in any one field. They would be a Jack of all trades master of none). This would actually make low level characters an asset, but would also give high level characters a role within the group. High level characters would feel advancement as they would become better at their given field (a low level fighter would not hit as hard as a high level fighter that had placed points their other stats into strength). If gear needed a certain level of stat to be able to be used (say a two handed sword needing a 1100 strength before it can be wielded), or special features to be used (anyone can wield a 2 handed sword, but to use the "Overhead Cleave" power of it you need 1100 Strength, or any character can wield the Illuminatus wand and create light and fire off some minor spell with it, but to unleash the "fireball" power you need to have 1200 Mind). This way high level characters have a non linear edge over the lower level characters, but Lower level characters still ahve a chance against them. That's a really good system, I like it. It's not stat-less, however, it's a great way to allow players to freely grow their character in a direction they want. You can create a bruiser with high strength but low inteligence, or a quick, agile character with low hitpoints, etc, etc.
  8. Sandbox games are great, there's freedom to explore and take things at your own pace, which is great. But, if they are too open, you can find yourself lost or aimlessly wandering about not quite sure what to do next. At the same time, linear content gives structure, but, can feel restrictive - what if I want to go over that hill over there, or go visit that town, or even little things like how you go about achieving the same objective - perhaps I see some cunning or just plain silly method of achieving an objective that feels like it *should* work, but for some reason, there's an invisible wall in the way or my avatar in this world just refuses to do whatever it is I'm telling them to do. I feel the best content is that which is structured to a degree, but that structure is flexible, something not too rigid, by allowing objectives to be done in different orders or allowing for multiple methods of achieving objectives. Afterall, If I wanted to watch a movie - even an awesome one - I'd go watch a movie, but if I'm playing a game, It's important to feel that your decisions are relevant. -Pete McDonald
  9. Quote:Original post by samoth The choice of "titan" may be unwise to begin with, as this suggests Greek mythology, in which as we know titans are, like the gods, immortal. Demigods, while being much more powerful than ordinary people, are still only mortals, and mortals are delivered to the gods' capricious will. A man cannot stand against a god by definition, and a god will crush a man whenever he feels like it, which happens regularly. It doesn't even take much for a god to get pissed enough to kill someone. Apollo destroyed a man because he could sing better than himself, and Zeus threw a lightning bolt at Asclepius (who was a demigod) because he was a successful healer, to give two examples. Thus, the situation "soldiers against titan" and "demigod against titan" can only have one reasonable outcome, which will be the destruction of the mortals. Whilst true, not everything has to be based 100% on existing mythology, and titan can be taken to mean anything. Besides which, being immortal would explain why, when killed, your character isn't lost forever. Perhaps the physical form is mortal, but powerful, and can be defeated, leading to it having to be resurrected by the titan's force of will, or some other process. I like the premise of such a game, though making it into an MMO is probably extremely over ambitious. I'd go with a single player RPG, similar to black and white, I guess.
  10. Quote:Original post by bakanoodle As long as you are able to develop a fun and engaging mechanic around each different power, I don't see why you couldn't have more. Indeed, as long as each is different, and not just a generic damage ability with a different animation, there's no reason you can't have as many abilities as you want. If you have ideas for a dozen mechanically different spells/attacks/skills whatever, then why not? if you can justify having each one, then what's stopping you. of course, you might not want to overwhelm the player to the point where, sure, each ability is unique and special, but they are so specialised that each only really has one use. Sure you can justify 50 different abilities for a single use, but is that really useful throughout the game?
  11. Quote:Original post by jbadams If you're looking for an alternative to giving the player all the abilities at once (eventually) you could possibly use a similar method to the old Mega Man game where the player is given the abilities of defeated bosses, but only retains the power from the most recently defeated; kill boss 1 and you gain power 1, but once you use power 1 to defeat boss to you gain power 2 and lose power 1. If the player can choose the order in which they face each boss they can then plan things out so that they have the desired power for each fight. I like this idea, too. I also like the GameBoy Advance megaman games, where you could add powers to megaman, a kind of AI/internet avatar in these games, by adding "programs" to a grid (or memory). say you start with a 4x4 grid, and fit in abilities like tetris, there were different colours and shapes, with rules such as two like colours could not touch, and you could only have certain types of "program" in certain spaces, making fitting in everything you wanted much harder. You could also expand the memory grid, unlocking new lines for you to put new abilities in to. the rules for fitting these abilities in could be decided by you, but I think the concept would fit nicely with what's been discussed so far.
  12. Quote:Original post by Thatotherguy My preference: avoid turn-based combat altogether. If you must, make attacks take so long that they occur in turns, but don't take control away from the player during combat. Allow the player to block, dodge, or parry at will. You could make a sort of hybrid between turn-based and real-time combat by forcing each player to attack when it is "their turn," but allowing them to move about and block at will. I don't believe this would work, you're open to situations where it's player A's turn to attack, they don't select an attack, but both players/characters can move freely. meaning they can just make no decision and run off, Player B can only follow helplessly watching the back of his opponent's head wishing he could whack it with his mace. A better system would be a semi-realtime system, similar to the one you propose where both characters get an attack action every X seconds, allowing both to act. this also allows for "fast" characters to act quicker, whilst slow characters, such as those in heavy plate armour, would take a few more seconds to take their agressive action. Another option is to keep it turn based, but have simultaneous turns, you can select a move, a defence and/or an attack (depends on how you want to do things, you could have players select one of each, or just a single action), and then their action is held "pending" until the opponent selects one as well. That way both players take their first turn at the same time, eliminating the "first hit/recovery" issues. Though this comes with it's own challenges. The Stamina concept makes a certain sense, after a long fight, you would be tired, your movements a little more sluggish, you're more likely to take a solid blow than someone who'd fresh to the fight and well rested.
  13. Quote:Original post by swiftcoder Quote:Original post by Swarmer I remember reading an article a while ago where one of the designers of the Magic: The Gathering card game was talking about balance. He said that printing bad cards is a necessary aspect of the game.I may just be cynical, but I would place the printing of 'bad' cards as a matter of economics, rather than balance. Since there are only a few good cards in each deck you buy, they keep you buying many more decks. I think that is the cynic in you. Having been an avid player of a certain popular TCG, In my experience, there are two kinds of "bad" card, the weak, cheap, fodder type cards, these are shunned by some, but experienced players know that these are the meat and potatoes onto which you put the heavy hitting card gravy, or the seemingly detrimental bad cards, which in combination with other cards actually do something that few people will notice at first, but is actually very cool. there's a reason wizards spend so much time on balance... people like me, and yes, bad is relative. less desirable, easy to come by, throwaway weapons in a game is a reasonable mechanic. you got your super gun, which kills everything, but runs out of bullets fast, so you gotta have a "bad" gun to use as an alternative, this balances things out, and also makes players consider when to use the supergun-5000 when the cheapy-bullethose is a (less desirable) alternative.
  14. I must say, having read your post, and the comments made by others, I agree almost entirely with Telastyn, some of your ideas seem to lack an understanding of most features. You know what you want to see in a game, which is good, but you seem to be missing the reasons why they aren't like that. Unique models: There's a reason weapons, armour, NPCs, etc get reused. You can usually fit a current MMO client, with all the compressed models and other graphics/sound files as well as all the game files onto a DVD. and that's when they have the little spider, the bigger spider, the huge spider, the green, red and blue spiders all using the same model. and that's just the practical issue for the distribution and installation, you've gotta get an artist to design them, a different artist will probably be doing the textures, and a third one will do the modelling. Now, how much do you think this little art team will cost to make one model, and how long? that's a while, since there's all the animations and jazz as well, now, multiply that by how many NPCs you got. Yeah. Ouch. Balance: "it'll sort itself out"... no. Absolutely not. That is, in no way, how it works. If something is unbalanced, everyone will do that, then it'll be "balanced" since everyone has the same race/class/item/spell combination, and can all one-shot kill the last boss and everything in a 5-mile radius. But that's not balance, if the warrior has a skill to kill everything with his "ancient axe of killingeverythingintheroom", and the wizard has to bend over and take it like a man, that's not fun, or balance. You need to spend alot of time and effort on balance, ensuring that there are no "I-win" trump cards, make sure that there is not a reason for everyone to play one class/character over all others, etc. Class/race: ugly charaters? what's wrong with playing an Orc? so you may not want to take him out to dinner, that's not the point, sometimes people want to play the "bad guy" archetype, sometimes brutal looking savages are fun, they can still look good, good looking characters doesn't always mean you want to see them in the cliché chainmail bikini. It means they have a unique style and feel about them. Classes on the other hand, I know what you mean about the D&D style str/dex/wis kind of system, and I love it. Play Knights of the Old Republic, D&D Online, Baldur's gate, Ultima online and RuneScape. These games have similar systems, and less restrictive classes, you can specialise your character as you wish, which usually leads to archetypes developing, for example, in RS you could specialise in a dex-like skill that would mean you hit often and fast, but for only 1-2 damage, wheras someone with a high STR would hit you once every few hits, but you'd really feel it. Min-Maxing is a problem, players who know the system can get the most out of it, those who do not, will be at a disadvantage. There are reasons things are done the way they are. Snobbery: You eliminate the most successful games from your play-list because they are popular? no, you see, there are reasons they are popular, it's worth playing with them for a while to figure out why this is so. I mean, what was the last press release for WoW? 10 million or something? they can't be doing everything wrong, can they? might be worth figuring out what they got that's so great? Ragnarok, the same, it seems very much like the kind of game you seem to be aiming at in a lot of respects, give it a shot. Non-MMORPGs... well, you can't call yourself a gamer if you play only one genre, and limit that genre down to a few select games. Play an FPS or two, play a few offline RPGs (the aforementioned KoTOR is a good place to start), play a racing game, an RTS, get a feel for different games. Infact I recommend Dawn of War 2, it's got alot of systems similar to an RPG in alot of respects, squad customisation and equipment dropping and such, it's refreshing, and mixes things up a bit, no more "must build a billion turrets then 5 billion "crushinator" tanks and rush into the enemy's base" strategies from the days of old. Play RuneScape. It's butt ugly. I think it'd do you good to see that game. The gathering system seems to be very similar to the one you described. Plus, it's free, so what have you got to lose, bar a few hours of your time. ;) Economy: once more, a balance issue. every game needs gold-sinks. There's a reason you lose your sword every now and then when you try to add the ultra-stabbing enchantment to it, or whatever, it's because if it wasn't hard, everyone would have one, and, it'd be dirt cheap, gold, dollars, shiny-shells, pretty pebbles, earlobes-of-your-enemies or whatever currency you use in your game will become worthless. Most games, the first time you see a hundred gold you'll feel rich, right? then you play a little longer and realise "hey, that's pocket change, but i'd like to see 1000 gold", and so on. That's going to happen, no matter what. Using three differing examples I know personally, RF Online has a messy economy, things cost millions to buy from players, because farming is so easy, you can more or less do it AFK. WoW has gold sinks all over the place, but in their latest expansion they put in a mammoth mount that costs 19,000 gold. Yeah, 19k. and you know what? lots of people have it. Personally, I still think a thousand gold is alot of money on that game, but hey. Then there's EvE Online. man, is that economy good or what. Almost all games have out of control, or seeping inflation, low level items and materials cost alot to buy from other players compared with when the game started, and the pice is steadily increasing. Not so in EvE. Why? because there are gold-sinks everywhere. doing stuff is expensive, and not very proffitable unless you put in the corresponding time/effort, and every now and then your ship goes boom. and you lose it, and everything in it. Oh yes, none of this "oh noes, my health bar is empty, hurry up and resurrect me so we can carry on", no, death means going out and buying a new ship, and all the bits that make it. That's awesome, they have an economist, and actual propper economist, on staff studying the in-game economy because it's such a good model of a real economy. To sum it all up: play more, broader selections of games, play those games you don't like, even if it's a free trial, since they're popular, they're doing something right, and sure, the choice not to play them is fine, but, understand why people think they're good. There's a reason lots of people do things very similar to WoW, might be worth asking yourself why. and I'll give you a clue: it's not because they're lazy and just want to copy someone. Play "ugly" games, not to torture yourself, but to see what they have to offer game-play wise. Personally, I think RF online is very pretty. It's also rather bad. Pretty doesn't make good, just like ugly doesn't make bad. I guess what I'm trying to say is - if you want to go into a field, any field, know what's out there, know as much about the subject as you can, rather than saying "I got this Idea, and I'm gonna do it." there may be reasons it's not been done before, and it could cost you alot of time, money and heartbreak to discover them yourself, when you could have just taken a little look around.
  15. Quote:Original post by Evil Steve If anyone recommends you using DirectInput for keyboard or mouse input, then they're wrong or an idiot. Or one of my old university lecturers. It's true, I was in exactly the same situation trying to get direct input to work, asked pretty much the same question on these forums, and have been using windows messages ever since, it's much better with those.