Quick question about beginner software

Started by
3 comments, last by Ultrafool 14 years, 4 months ago
hey all, Im not exactly new to programming (extensive Matlab experience) but i dont know any other languages and im interested in giving game development a try as its been a passion of mine for many years. My question is, what program would you guys recommend for someone who wants to make something remotely similar to diablo (rpg, not graphic heavy necessarily, 2d, online capability) in under a year? is it even possible? the idea is be able to create deep gameplay mechanics (stats, talent trees perhaps, etc) without having to spend too much time worrying about the graphical side of things - i have a lot of game ideas that i want to bring to life and im looking for the best way to do this. is it necessary to start from the bottom like with C# or C++ (i dont know the difference honestly)? or would it be better using something like Unity, or Dark basic (mentioned alot on the forums) thanks alot guys, just a bit lost here. TLDR: What software should i get that will allow me to efficiently bring some of my gameplay ideas to life, without getting bogged down with a steep learning curve.. ie - remake crappy version of diablo in 1 year.
Advertisement
Yep sounds like dark basic is perfect for you.

You could try to learn c++, but there will most likely be a lot of work for you to build an engine from scratch.

I suggest Dark GDK, made by the game creators, will allow you to use their engine and c++.

If you don't mind spending some time setting up and using a more advanced engine e.g. ogre (i'd avoid Irrlicht).

You will end up with nicer games and more flexible, as far as graphics are concerned.

It's up to you, either way will get you what you seem to want.

c++ is very similar to c.

If you;re going to learn one i suggest c++, more flexibility, more tools and help available.

Anyway there are my thoughts.

PureBlackSin
For Games, Articles and Custom High End Computers, come visit.Myndoko
Flash (Flex is enough). &#106avascript like language, integrated graphics, integrated networking, trivial to deploy. You end up with one file, and since everyone has flash, they just run that and it magically works. No forethought or deployment needed.

While graphics could be considered the weak point, it is highly unlikely that you will have art of sufficiently high quality to require more. Flash 10 supports mildly hardware accelerated graphics and textured polygon rendering which is more than enough for your purposes. Bonus points for being embedded in a web page - want to show off, just put it inside static HTML page and you're done.

For full networking support there is SmartFox server (and others) as well.

Second obvious choice is C# with XNA library. Modern, active community, but primarily for client-side. This adds the extra hassle of deployment and testing, as well as dealing with usual Microsoft quirks and dealing with various Windows version-specific issues. As long as you stick with mostly XNA, not really a problem. I don't keep up, not sure if networking needs to be tacked on separately. Could potentially run in browser via Silverlight.

Quote:If you;re going to learn one i suggest c++, more flexibility, more tools and help available.


C++ is worst choice of all. While there is lots of documentation, it spans last 20 years, ranging from completely useless, to obsolete, to cutting edge to incorrect to doesn't-even-compile. Flexibility is moot as well - one needs ability to render sprites in 2D plane, something which is surprisingly hard to do right using just C++, since most libraries either provide much more advanced features or 3D, or are just too comprehensive for such a trivial task.

And as always, for someone with mere Matlab experience, just tackling the syntax and memory bugs, let alone platform issues will waste more than a year.

But the biggest annoyance with C++ is deployment. Getting useful debug reports is science in its own right (and needs to be frequently invented from scratch), one needs to maintain one build for each platform, there is the usual mess with debug vs. run-time builds, messing up with installers, make files, DLLs, DX, and whatnot, as well as random crashes for no reason at all. While professional developers found ways to mitigate these effects - there is effectively zero documentation on this, especially since it requires so much effort and tends to change over time.


Third choice would be Python using one of graphics frameworks (PyGame, etc), but these see considerably less usage than either XNA (with professional support) or Flash (kinda just works) so the hassle of deployment remains, and there is potentially some struggle with various native bugs in graphics. While it works, it is still predominantly used for console and server-side applications, so it simply lacks the out-of-box polish for front-end design.


Note that none of those listed above provide server hosting, so to make use of multiplayer you will need to rent a dedicated server, or find some way to host the it.
To enforce what Antheus said, I would definitely not recommend going the C++ route if you have not already since it will take you quite a long time to get your head wrapped around the language itself, let alone an api or sdk. I'll give another vote for DarkBASIC as it is quite easy to get going and if you plan the development accordingly, you could very well have a demo version of the full game up and running within a year. It also depends on your art assets, whether you are making your own or have them already. Good luck either way =)
__________________________________________
Eugene Alfonso
GTP | Twitter | SFML | OS-Dev
Honestly, it would be difficult and would require a lot of sweat and tears. If I had to bet on if it were possible I think I'd say no.

If I were you I would lower my goals a bit and start thinking smaller.

If you want to learn how to make games you would have to start with simple games like Tetris, Asteroids and Pong anyway.

I have very basic MatLab knowledge, but I am quite sure that there are some major differences with other programming languages that are used for making games. MatLab is a language specifically designed for mathematics.


In short, first you would have to learn the basics of programming in general.
Then you would have to learn the basics of game programming by making some simple games like Pong, Space Invaders, Asteroids, Tetris.


I wouldn't say you could finish your game in under a year.

But if you are committed you could probably do in less than a year:
learn the basics of programming
learn the basics of game programming
start your RPG game project(but it will probably not be finished before the end of the year)


One last tip:

Start with Python. It's simple and easy to read. You can do lots of things(like making simple games) with it in less time than with most languages.

Good luck

This topic is closed to new replies.

Advertisement