Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 104 105 [106] 107 108 ... 796

Author Topic: if self.isCoder(): post() #Programming Thread  (Read 882924 times)

Aqizzar

  • Bay Watcher
  • There is no 'U'.
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1575 on: February 17, 2012, 08:28:26 pm »

Also, it is never too late to pick up a new language. Libtcod has implementations in c# and python as well, both easier to pick up, so you will be making roguelikes more quickly in either.

So the theory goes.  I really should get back to work on turning a Libtcod frame into something demonstrable.
Logged
And here is where my beef pops up like a looming awkward boner.
Please amplify your relaxed states.
Quote from: PTTG??
The ancients built these quote pyramids to forever store vast quantities of rage.

Max White

  • Bay Watcher
  • Still not hollowed!
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1576 on: February 17, 2012, 08:32:51 pm »

Well yea, sometimes the lower level languages can be faster to work in. Python is high as a butterfly, yet I find it very slow to work in next to Java and c#... I really should get back to making mine shit work, but I sort of got distracted by all this awesome level gen stuff. I'm currently developing a matrix for it, but tables don't handle 4d, so that makes things annoying. Too many factors involved...

Urist McScoopbeard

  • Bay Watcher
  • Damnit Scoopz!
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1577 on: February 17, 2012, 08:48:57 pm »

The question is which one has more flexibility? I wouldnt mind learning python if i could do it quickly (relatively) in additon, ive been led to believe that you can do alot more with c++, also I would like to delve straight into atleast simple game development, picking up more advanced stuff as I go. At some point getting procedurally genned content, etc. Etc.
Logged
This conversation is getting disturbing fast, disturbingly erotic.

Stargrasper

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1578 on: February 17, 2012, 08:52:29 pm »

Right, so I was directed here from 'that other programming thread' to get some help using c++ and libtcod to program a basic rl. 1st Q.) what do I need to know about the base language to reliably program this? 2nd.) are there any tutorials dealing with this? 3rd and final.) Is there anything else I need to know?

FYI, I know half the people in this thread are active in the other one as well.  I suggested he come here because there's a half dozen people making roguelikes in this thread.  There is a lot of information already here regarding design of these things if you're willing to search the thread (use the search bar).

My c++ is limited and I've never used libtcod.  Basically, you need a decent handle on the language.  If you don't mind poor quality and a lot of re-writing, you could pursue this as a learning experience.  It sounds like it's going to be over your head, but that doesn't mean you can't do it.  And as suggested, you could trying learning another language that's a bit easier to work with.  If you decide to learn another language, C# and Python are good for starting.  I like Java, but there aren't many roguelike libraries to help you if you use that language.  For now, though, focus on learning your language of choice to a decent level.

The question is which one has more flexibility? I wouldnt mind learning python if i could do it quickly (relatively) in additon, ive been led to believe that you can do alot more with c++, also I would like to delve straight into atleast simple game development, picking up more advanced stuff as I go. At some point getting procedurally genned content, etc. Etc.

C++ is one of the more powerful languages, but it can be difficult to use.  You'll spend a lot of time learning to use it.  Python is supposed to be very fast to learn and easy to use.  It's also probably more than powerful enough for your purposes.
Logged

Max White

  • Bay Watcher
  • Still not hollowed!
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1579 on: February 17, 2012, 08:54:43 pm »

It isn't that you will be missing functionality choosing any one language when it comes to making games. Flexibility isn't an issue here, as just about anything can do what ever you want it to. Rather some would argue that it is a matter of speed. C++, when written well, is the fastest of the three languages being described here, while python is the slowest.

Just personally, I find c# a lot easier than python, and it is also closer to c++. Also, it fills me with glee every time I turn another undead servant. Listen not to these foolish heros.

Urist McScoopbeard

  • Bay Watcher
  • Damnit Scoopz!
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1580 on: February 17, 2012, 08:58:57 pm »

Hmmm, so what your saying is that for starting off it doesnt matter too much, but there might be problems as the game gets bigger? Also yes I look at it as a learning experience, c++ isnt to difficult to learn to me, its just combining the aspects ive learned (doing the tutorials at learncpp)
Logged
This conversation is getting disturbing fast, disturbingly erotic.

nenjin

  • Bay Watcher
  • Inscrubtable Exhortations of the Soul
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1581 on: February 17, 2012, 09:04:48 pm »

That's the real challenge in any language. Most people that are willing to try coding can read a tutorial and follow instructions, iterate a little bit on it. But the real leap is trying something novel, and putting together all the tools a language offers you to solve problems. C++ gives you control at a deeper level. But with great power....

There's nothing stopping you too from doing something small in one language to get your feet wet, then moving on to a different language for your real work. Like I said, I programmed a text adventure out of a Python tutorial and then spent two days trying things as I read further through advanced tutorials, growing the program a good ways beyond where it functionally ended in previous tutorials. The point where I started getting into deeper Python stuff (what I guess now would be program scope and pointers and references) is where I started getting curious about C++ as a lower level language.

Put it this way. Python has this statement (and I'm rusty) that's something like:

For x in y: do stuff.

In C++:

for (x , x<z, x++)
 do stuff

In lower level languages, you have to do stuff more explicitly. In higher level languages, it's been simplified by someone else....but in being simplified, you're constricted too. So it's really a question of how much control you want. The more control you want though, the more understanding you'll need (and the more work you'll have to do.)
« Last Edit: February 17, 2012, 09:11:32 pm by nenjin »
Logged
Cautivo del Milagro seamos, Penitente.
Quote from: Viktor Frankl
When we are no longer able to change a situation, we are challenged to change ourselves.
Quote from: Sindain
Its kinda silly to complain that a friendly NPC isn't a well designed boss fight.
Quote from: Eric Blank
How will I cheese now assholes?
Quote from: MrRoboto75
Always spaghetti, never forghetti

Max White

  • Bay Watcher
  • Still not hollowed!
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1582 on: February 17, 2012, 09:06:22 pm »

Hmmm, so what your saying is that for starting off it doesnt matter too much, but there might be problems as the game gets bigger? Also yes I look at it as a learning experience, c++ isnt to difficult to learn to me, its just combining the aspects ive learned (doing the tutorials at learncpp)

Well I guess if you are trying to make Dwarf Fortress, c++ would be a better choice. If you are going for Stone Soup, I would look at your other options.
Although remember, what you learn in one language will often carry over to another, especially for things like c++, c#, python, Java, VB. They are all object oriented, procedural languages. So really, anything you learn in c++ is still valuable for other things, and visa versa.

Mego

  • Bay Watcher
  • [PREFSTRING:MADNESS]
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1583 on: February 17, 2012, 09:08:12 pm »

It took me quite a long time for the concepts to finally click in my head when learning C++. I worked through a pointer tutorial uncountable times before I finally figured out what they were. Something you should be wary of is learning a lot of different programming styles. I've found that it can hold me back, as I try to figure out what things should be done functionally, what should be done procedurally, and what should be done with OOP. The great thing about C++ is, you can choose any of the 3, or any combination of the 3, and get done whatever you need to get done. Contrast that with Java and (if I'm not horribly mistaken; correct me if I am) C#, which force you to use OOP unless you want to jump through major hoops to avoid it.

nenjin

  • Bay Watcher
  • Inscrubtable Exhortations of the Soul
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1584 on: February 17, 2012, 09:12:28 pm »

And if you don't actually want to use C++ in C++, you can always use C too.

As a total aside, a co-worker handed me his copy of the manga "Databases!" I don't know whether I should be happy for a simpleton's introduction to databases, or embarrassed at reading a princess manga.
« Last Edit: February 17, 2012, 09:15:32 pm by nenjin »
Logged
Cautivo del Milagro seamos, Penitente.
Quote from: Viktor Frankl
When we are no longer able to change a situation, we are challenged to change ourselves.
Quote from: Sindain
Its kinda silly to complain that a friendly NPC isn't a well designed boss fight.
Quote from: Eric Blank
How will I cheese now assholes?
Quote from: MrRoboto75
Always spaghetti, never forghetti

Levi

  • Bay Watcher
  • Is a fish.
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1585 on: February 17, 2012, 09:20:40 pm »

I should mention that one of the nice things about using a higher language like python is that its easier to get things done than a language like c++, but if you DO ever run into a wall and need c++'s efficiency, you can always re-write your program in c++.  Its surprisingly easy to rewrite code you've already written into another language.

Then you can view your current work with one of the easier to use languages as your prototype.
Logged
Avid Gamer | Goldfish Enthusiast | Canadian | Professional Layabout

Max White

  • Bay Watcher
  • Still not hollowed!
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1586 on: February 17, 2012, 09:22:59 pm »

Contrast that with Java and (if I'm not horribly mistaken; correct me if I am) C#, which force you to use OOP unless you want to jump through major hoops to avoid it.
Well not really. Use of static classes will easily allow you to treat Java or c# like purely procedural languages. Not sure why you would want to.

Araph

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1587 on: February 18, 2012, 12:05:24 am »

I notice that their are some tutorials in the OP, and I was just wondering if anyone would be interested in a tutorial for DarkBASIC. It's a really easy to use programming language, and (although its syntax is a good bit different than most other languages would use) it makes for a good language for people to learn if they're just starting programming. I'm not very good with C++, but I was fairly good with BASIC. One downside of DarkBASIC is that it isn't very good for making more useful programs, since it was intended to make games.

Does anyone think I should write an introduction to that?
Logged

Levi

  • Bay Watcher
  • Is a fish.
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1588 on: February 18, 2012, 12:17:00 am »

I notice that their are some tutorials in the OP, and I was just wondering if anyone would be interested in a tutorial for DarkBASIC. It's a really easy to use programming language, and (although its syntax is a good bit different than most other languages would use) it makes for a good language for people to learn if they're just starting programming. I'm not very good with C++, but I was fairly good with BASIC. One downside of DarkBASIC is that it isn't very good for making more useful programs, since it was intended to make games.

Does anyone think I should write an introduction to that?

At the very least I'd love to know what sets it apart from the other languages, as I know almost nothing about it.
Logged
Avid Gamer | Goldfish Enthusiast | Canadian | Professional Layabout

Araph

  • Bay Watcher
    • View Profile
Re: if self.isCoder(): post() #Programming Thread
« Reply #1589 on: February 18, 2012, 12:27:36 am »

I notice that their are some tutorials in the OP, and I was just wondering if anyone would be interested in a tutorial for DarkBASIC. It's a really easy to use programming language, and (although its syntax is a good bit different than most other languages would use) it makes for a good language for people to learn if they're just starting programming. I'm not very good with C++, but I was fairly good with BASIC. One downside of DarkBASIC is that it isn't very good for making more useful programs, since it was intended to make games.

Does anyone think I should write an introduction to that?

At the very least I'd love to know what sets it apart from the other languages, as I know almost nothing about it.

Let's see... When you're making 3d games, you don't have to go through the trouble of setting up libraries or learning how to use them, as it automatically includes a preset one. It doesn't require as much knowledge of program flow, because most of what you do is just inside single loops (that is, you don't need to use functions or figure out how to use pointers). Once again about 3d games, you don't need to know how to use a modelling program for simple things, since you can create basic shapes with commands in the program. Here's the creator's website; you would want to look for the free version of DarkBASIC Professional in the Game Development section.

Sorry if I didn't give an optimal description of major differences; bear in mind I only have a cursory knowledge of C++, and I don't know anything about any other languages.
Logged
Pages: 1 ... 104 105 [106] 107 108 ... 796