Suitable Language for Roguelike

Hi everyone! I hope you are having a great day (or night.) I feel the need to warn you all in advance that this post will be extremely nooby.

That being said, I am searching for the perfect language for Roguelike development. Now, before you jump to the reply button and say "Use whatever language you are comfortable in" let me say a couple of things. The first time I got serious about learning to program, I tried learning C++. As you can imagine, this did not end well at all. I was struggling to understand basic things like functions (not necessarily the functions themselves, but I didn't realize how functions were supposed to work together.)

I have been learning Python recently from the book Learn Python the Hard Way(I'm not amazing at it, but I'm not a complete noob either.) I've always wanted to learn C++ though, and sometimes I just stop what I'm doing with Python and try replicating what I was doing in C++. I've noticed that although I still really suck at C++, I finally understand things because of my experience with Python.

You might be asking why I don't just stick to learning Python, and my answer is that I just really want to learn C++. Something about the fact that everything is manually managed makes me really excited to learn it, due to the fact that I love messing around with my computer and learning the ins and outs of everything that I do.

Now, my big question is, should I take the time to learn C++ (from what I've heard, this will take a couple of years, and then you keep perfecting the skills you already have) or just stick to Python to create a Roguelike.

In addition, which language will be more valuable to learn in the future?

My eventual goal is to create a massive, complex game like Dwarf Fortress (yes, I do realize that this will not happen until I REALLY, REALLY understand a language.) If you read this far, then I want to thank you for your time. You obviously have a great attention span :).
Last edited on
What is the point of the wall of text? You appear to answer your own question both for learning C++ (it is the language you want to ultimately learn) and for sticking to Python (sticking to the language you are comfortable with). Pick one and do it as both languages are fine for a Roguelike game. Yes C++ will take a while to pick up and you do keep building your skills as you go. All that said, even if you understand the language you won't get a massive game like Dwarf Fortress by yourself, but will achieve it by working in a team.

If you want to start coding it right now stick to Python because you are familiar with it.

If you aren't in a hurry to make a roguelike game then jump to learning C++ and learn everything you can before tackling it.

Also, reading to the end of a post doesn't equate to a great attention span.
The reason for the wall of text was mostly to get someone else's opinion on what I was thinking (if that makes any sense.) As for the great attention span, well that was a misuse of words. What I meant to say was that the person reading the wall of text managed to read the entire thing without closing the thing mid-way. Even then, since I'm speaking to programmers, this doesn't really make sense, but pretty much everyone I know would distracted by something else after the first couple of sentences. I am going to go the route of C++, as I have an entire life ahead of me to make a roguelike. What resources would you recommend I look at for learning C++? I've tried learncpp.com, but the tutorials there seem to go rather fast paced, and I prefer to have something thoroughly explained to me, otherwise I will be rereading the tutorial over and over until something finally clicks in my head and I understand. Thanks for replying!
I'd recommend a book to get you started http://www.stroustrup.com/programming.html
(while I don't really condone it, if you can't afford to buy the book you may be able to find a pdf online)
Hey Lachlan, I've heard about Stroustrup's book and how it's very good, but I don't think I can afford such a hefty price for the book. I'm only 12, so I'll have to mow an awful amount of lawns to get that money ;) I'll see if I can get a pdf version of it to start off, and then when I get enough money I'll buy it. Thanks for the recommendation!
Just a quick bit of advice. Break up what you write into many small paragraphs and it will be much more readable.

Hi everyone! I hope you are having a great day (or night.) I feel the need to warn you all in advance that this post will be extremely nooby.

That being said, I am searching for the perfect language for Roguelike development. Now, before you jump to the reply button and say "Use whatever language you are comfortable in" let me say a couple of things. The first time I got serious about learning to program, I tried learning C++. As you can imagine, this did not end well at all. I was struggling to understand basic things like functions (not necessarily the functions themselves, but I didn't realize how functions were supposed to work together.)

I have been learning Python recently from the book Learn Python the Hard Way(I'm not amazing at it, but I'm not a complete noob either.) I've always wanted to learn C++ though, and sometimes I just stop what I'm doing with Python and try replicating what I was doing in C++. I've noticed that although I still really suck at C++, I finally understand things because of my experience with Python.

You might be asking why I don't just stick to learning Python, and my answer is that I just really want to learn C++. Something about the fact that everything is manually managed makes me really excited to learn it, due to the fact that I love messing around with my computer and learning the ins and outs of everything that I do.

Now, my big question is, should I take the time to learn C++ (from what I've heard, this will take a couple of years, and then you keep perfecting the skills you already have) or just stick to Python to create a Roguelike.

In addition, which language will be more valuable to learn in the future?

My eventual goal is to create a massive, complex game like Dwarf Fortress (yes, I do realize that this will not happen until I REALLY, REALLY understand a language.) If you read this far, then I want to thank you for your time. You obviously have a great attention span :).

Find the PDF if you must, but wait on the hardcopy because he is releasing a C++11 updated edition the 2nd of June.
@BHX You can order it now directly from the publisher (follow the link I provided)
Thanks for the advice, I fixed the post. I also want to thank everyone who replied here. This might not have been the most constructive question, but you all took the time to reply to this thread. For that I thank you.

EDIT: I just realized that I should probably mark this thread as solved, since there really is nothing to add.
Last edited on
hi you seems to have similar interest as mine. i really want to develop games like rouge like or dwarf fortress.

i suggest you to learn C++

i think best way to learn is to learn while creating very simple projects.

this is nice book
www.cplusplus.com/files/tutorial.pdf

must check
http://lazyfoo.net/SDL_tutorials/index.php

i have just started started learning C++ and sdl 2.
i can create window and put texture/images on window-screen and key-press detection.


There is similar game called goblin camp(cant be compared to df), its code is open source and mainly written in C++.



It really depends on how complex you think the game will be. If it's just a really simple roguelike with a few levels, you can probably get by with python and pygame. If you're going to do something complex with lots of art assets and levels, you should probably use C++. There are a lot more engines and resources available for a game made with C++, and a lot more people that can help you out.

tl;dr: Learn C++ and use it for your game.
If it's just a really simple roguelike with a few levels, you can probably get by with python and pygame. If you're going to do something complex with lots of art assets and levels, you should probably use C++.
Are you serious?

Yea I know game developers like C++. But come on, roguelikes are turn-based games without graphics. Even if they are complex, with "lots of art assets and levels", that doesn't require much CPU power. No need to to bash Python like that.

Are you serious?

Yea I know game developers like C++. But come on, roguelikes are turn-based games without graphics. Even if they are complex, with "lots of art assets and levels", that doesn't require much CPU power. No need to to bash Python like that.


Totally serious.

Python, in its current form, really isn't good for game development. It has a lack of tools, resources, and developers. Sure, he could make a super simple mock game with python, but I wouldn't go beyond that. If he wants something of good quality, Python really isn't the way to go.

The language isn't bad, it's great. It just lacks resources, engines tool-sets, etc...
Last edited on
Lots of vague statements that have very little to do with the reality.

Yea, I suppose there are no game engines dedicated to Python, because that is not what this language is usually used for, but what is the problem of creating bindings if you want to? Not to mention you don't need crytek engine 10 to make a fucking rogue clone.
octopussy wrote:
Python, in its current form, really isn't good for game development. It has a lack of tools, resources, and developers.

That is really a sad reason. C++ was at that form too in the early 90s. In the early to mid 90s all the developers had to make all their tools, engines, and resources themselves.

octopussy wrote:
The language isn't bad, it's great. It just lacks resources, engines tool-sets, etc...

The lack of tools, engines, etc. is the whole point of being a programmer because then you (the programmer) has to make them. Though, I'm sure this argument makes pygame creators and users scratch their heads.

PyGame http://www.pygame.org/news.html

Not many developers? Again this must be news to Pygame:
http://www.pygame.org/tags/all


projects
arcade (593)
2d (548)
pygame (497)
game (238)
puzzle (233)
shooter (180)
strategy (153)
python (149)
libraries (145)
other (142)
action (120)
space (103)
spam (99)
rpg (93)
applications (90)
multiplayer (86)
gpl (76)
platformer (72)
pyopengl (69)
pyweek (64)... more
Last edited on
Topic archived. No new replies allowed.