Author Topic: Roguelike Game Engines or Developer Wanted.  (Read 53008 times)

Darren Grey

  • Rogueliker
  • ***
  • Posts: 2027
  • Karma: +0/-0
  • It is pitch black. You are likely to eat someone.
    • View Profile
    • Games of Grey
Re: Roguelike Game Engines or Developer Wanted.
« Reply #15 on: March 03, 2009, 01:24:32 AM »
You're probably correct. However, learning to program with an end goal in mind is a bit different than having programming experience and moving on to an extensive project.

By that I mean that learning to program from scratch is one thing. Learning to program from scratch on a multi-thousand line programmed game is something else. At my current "Hello World" level of programming expertise, simply understanding the dungeon creation algorithms and how they are used is asking quite a bit.

It's not so hard.  I picked programming up from scratch last September, and got a basic game out in January, in spite of having very little time to learn or do work on it.  And I started from absolute scratch, inventing my own line-drawing algorithms and so on (because I was too dumb to read other peoples code).  Free Pascal helped a lot - it's very easy to learn if you have no coding history.  If you want to code purely for gaming then you really don't need to know much programming - just some basic display and math libraries and how to handle conditions and loops.  If you want a well-coded game you can learn pointers and OOP, but it's actually not necessary.  Another important thing to remember is to start out small - your ideas are big, and won't get anywhere unless you start out with an extremely stunted version of them.

For help on learning some basics it can do a lot of good to read some article on RogueBasin.  An excellent starting point is this one:
http://roguebasin.roguelikedevelopment.org/index.php?title=How_to_Write_a_Roguelike_in_15_Steps

CoachWade

  • Newcomer
  • Posts: 11
  • Karma: +0/-0
    • View Profile
    • Football for Youth!
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #16 on: March 03, 2009, 02:00:55 AM »

Actually if you look at the AD&D CRPGs they in fact often improvised a little with the spell effects.

As rule system for a CRPG or roguelike its just not an ideal choice because there are too many rules and too little system. Its not impossible or stupid to try, its just .. a bit on the tedious side to implement  faithfully.

Magellan, this is EXACTLY the sort of feedback I was looking for on my ideas! Thank you!

I've been thinking about exactly how I might implement various of these. I think your idea of adding a seventh statistical variable (to cover the variance from strength 18/01 to 18/00) is a solid one.

As for the spells, I think that it would start with selected spells at first, especially direct damage and direct defense. (Magic Missile and Shield, for example.) These would have immediate and easily developed affects, I would think (Everything is easy when you haven't got a clue how the hell it's done!)

I was also considering how spells would recharge, and I think that "sleep and study" might not be as effective as the standard gaming tradition of "spell points" that gradually recharge (I was thinking of about one point per round.)

This is great stuff, guys. Thanks everyone for the feedback and ideas! I don't know if this will ever happen, but if it does it'll be as a result of all your input!

~D.
~D.

CoachWade

  • Newcomer
  • Posts: 11
  • Karma: +0/-0
    • View Profile
    • Football for Youth!
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #17 on: March 03, 2009, 02:10:16 AM »
Maybe right the story? make the quests more interesting?  Talk to the programmer and figure out how to make existing stuff better, and so on.

I have definitely considered that and I think it would be great. If nothing else it would help me cut my teeth.

Actually, I really like that idea. Right now I'm a student teacher, which means that I'm working in a classroom under the watchful eye of a host teacher with 23 years of teaching experience.

The most ideal way to gain experience in this sort of project, in my (inexpert) opinion, would be to work on someone else's project, have them give short assignments ("Code this dungeon." "Insert these new weapons into the game.") and keep them out of trouble.

This is the way teachers are trained, coaches are trained (usually a coach spends years as an assistant before taking a position as a head coach), and even military and civilian jobs train their people. It's almost like "shadowing."

I really think it's a GREAT idea.

So, who needs a complete and utter liability... er... I mean who needs a writer with no coding experience to help them develop their roguelike?
~D.

CoachWade

  • Newcomer
  • Posts: 11
  • Karma: +0/-0
    • View Profile
    • Football for Youth!
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #18 on: March 03, 2009, 02:22:38 AM »
It's not so hard.  I picked programming up from scratch last September, and got a basic game out in January, in spite of having very little time to learn or do work on it.  And I started from absolute scratch, inventing my own line-drawing algorithms and so on (because I was too dumb to read other peoples code). 

Yeah, but you're smarter than I am, Darren. :)

Free Pascal helped a lot - it's very easy to learn if you have no coding history.  If you want to code purely for gaming then you really don't need to know much programming - just some basic display and math libraries and how to handle conditions and loops.  If you want a well-coded game you can learn pointers and OOP, but it's actually not necessary.  Another important thing to remember is to start out small - your ideas are big, and won't get anywhere unless you start out with an extremely stunted version of them.

For help on learning some basics it can do a lot of good to read some article on RogueBasin.  An excellent starting point is this one:
http://roguebasin.roguelikedevelopment.org/index.php?title=How_to_Write_a_Roguelike_in_15_Steps

This is more great stuff. I was looking at Free Pascal earlier today and there seemed to be a lot of resources out there to support new learners. I noted there was something that Christian Knudsen of AsciiSector used called "SDL" that apparently makes the games easier to code as well. (But I haven't got a clue what that is.)

I would like to proffer the game cross platform. Does Free Pascal require anything special to compile software for multiple operating systems?

In speaking of starting small, I think the easiest way to start out would be to code a single character class (fighter comes to mind) a single monster type (kobold or orcs or something) and a basic randomized dungeon with a single type of treasure. Once this is stable other aspects can be added on a piecemeal basis.

Maybe I should solicit for previous experience: how did everyone here code their first-ever game?

If there's one thing I've learned from coaching football, it's that reinventing the wheel is a waste of time. I'm sure someone else here came up with something way more cooler than I'm likely to come up with to start.
~D.

Darren Grey

  • Rogueliker
  • ***
  • Posts: 2027
  • Karma: +0/-0
  • It is pitch black. You are likely to eat someone.
    • View Profile
    • Games of Grey
Re: Roguelike Game Engines or Developer Wanted.
« Reply #19 on: March 03, 2009, 07:05:50 PM »
It's not so hard.  I picked programming up from scratch last September, and got a basic game out in January, in spite of having very little time to learn or do work on it.  And I started from absolute scratch, inventing my own line-drawing algorithms and so on (because I was too dumb to read other peoples code). 

Yeah, but you're smarter than I am, Darren. :)

I find that hard to believe  ;)  Honestly, I think if I can make a game then almost anyone can.  Takes a bit of work and patience, but approaching it with the thought of "I could never do something that hard" will get you nowhere.


Quote
This is more great stuff. I was looking at Free Pascal earlier today and there seemed to be a lot of resources out there to support new learners. I noted there was something that Christian Knudsen of AsciiSector used called "SDL" that apparently makes the games easier to code as well. (But I haven't got a clue what that is.)

I would like to proffer the game cross platform. Does Free Pascal require anything special to compile software for multiple operating systems?

Free Pascal is pretty much 100% portable.  There are certain libraries that only work on certain platforms, but they're generally clearly marked and are usually not the best ones to use in my experience.  The Free Pascal Compiler is available on all systems and will compile any FP code on any system.  I was actually shocked when my first release of Gruesome, developed only on a Windows platform, turned out to compile without any problems on Linux and Mac.

SDL just seems to be an interface library.  Seems a little over the top for a roguelike project - ncurses works great for ASCII, and Pascal has its own extremely easy to use crt interface library (a bit slower than ncurses, but it's so incredibly simple to learn).  If after you get used to these you want to expand into graphics or music then you can use SDL or the Valkyrie Library (created by the guy who wrote DoomRL and a few other awesome Pascal roguelikes).

Quote
In speaking of starting small, I think the easiest way to start out would be to code a single character class (fighter comes to mind) a single monster type (kobold or orcs or something) and a basic randomized dungeon with a single type of treasure. Once this is stable other aspects can be added on a piecemeal basis.

A most excellent thought.  In general after you have a simple fighter wandering around killing simple monsters you'll have new ideas about where you want to go with your whole project, and it may lead to a complete redesign.  Most developers build up in layers, adding further complexity and options as they go on, whilst also changing and improving what's already there.  You learn a lot from each step, and each step after tends to become easier.  It also helps to have simple playable versions as you go on so you can show them to others and get feedback - even the most basic of releases can teach you a lot.

Anvilfolk

  • Rogueliker
  • ***
  • Posts: 374
  • Karma: +0/-0
    • View Profile
Re: Roguelike Game Engines or Developer Wanted.
« Reply #20 on: March 03, 2009, 10:15:09 PM »
Hi there! Haven't said anything yet, as I've been a bit too busy ;)

I'm a Computer Science student, so feel free to ask any programming related questions in the Development forum and I'll try to answer them. I did program in Pascal 3 or 4 years ago, but have completely forgotten the syntax. However, you'll find that most programming languages will have the same capabilities / control structures (functions, ifs, loops). If you pose the questions at that level of abstraction, we could go from there :)

Regarding SDL, it's simply a graphical library. This means that with it you can call functions that will, for example, open up a window, load images from disk, and draw them on screen. You will find libraries for all kinds of things, like (specialized) math functions, game development, network communication, and all sorts of stuff. Libraries are a way to abstract and modularize code, much like the engine idea you mentioned :)

Ncurses/crt might be a better choice. Instead of drawing images, it simply gives you the ability to write characters to a matrix (just like mathematical matrices) on-screen. So if you want the player to be at position (2,4), you can tell it to put character '@' at that position :) That's it, plus a few other things. I recommend this, since graphic libraries have a tendency to involve a lot of error handling, which is bothersome and ugly.

Although some will argue that object-orientation is bad for learning programming, I now believe otherwise. It is a great abstraction! You can think of everything you do in terms of real-life objects! I think it might be easier to get into programming that way. Want a player? Program a Player class that contains everything that a player has, and offer functions for everything that a player can do! Want an object? Program an Object class... want some objects to be wieldable (and inflict damage), but retain stuff that is still valid from Object (such as weight, shape, etc?), then say that class Wieldable is the same as Object, but "specialized", by adding damage, type of damage, etc. That's basically inheritance for you.


If you have some time on your hands and are enthusiastic about it, I would recommend learning programming. It can be a wonderful thing to finally get something working. You will feel great about elegant solutions to problems, and perfect your logical reasoning ability. Plus, like it's been said, it's a marketable skill, and useful too.

Like others have said, keep it small for starters. I've never done roguelikes, but will happily give suggestions and follow your progress on this forum. Not that I have a lot of time on my hands, but there you go. I'm sure others will be willing to help too :)

Have a good stay!

-- edit --

Oops, a little big here. Sorry if I overextended myself, but let me just say that you will be very hard pressed indeed to find a programmer willing to "work for you". Most have projects of their own, or are too busy, and, like pointed out, while it can be satisfying, it is hard work. You'll find most programmers want to derive some fun from the other parts, or maybe it is the conjunction of both work and design coming to life that makes them 'tick'. That's my case ;) I enjoy programming, but not enough to do it "just because", and I don't particularly enjoy simply designing things. I need to think them up, and do them myself, see them growing piece by piece :)
« Last Edit: March 03, 2009, 10:20:02 PM by Anvilfolk »
"Get it hot! Hit it harder!!!"
 - The tutor warcry

One of They Who Are Too Busy

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Roguelike Game Engines or Developer Wanted.
« Reply #21 on: March 03, 2009, 10:42:31 PM »
CoachWade: I have a suggestion you might like, check your email :)

-Ido.

CoachWade

  • Newcomer
  • Posts: 11
  • Karma: +0/-0
    • View Profile
    • Football for Youth!
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #22 on: March 05, 2009, 08:43:39 PM »
Hi folks!

I haven't had a lot of time to respond. I'm preparing for a coaching presentation I'm giving this weekend in Texas, but I appreciate the advice and responses to my ideas.

Ido, I got your email and I like your idea. I'll get back to you more, later on. (I'd do it now, but my school has Hotmail locked out for all staff members as well as all students. Grrr!)

Thanks everyone. Have a great weekend and I'll be back to pester you with more questions on Monday.

~D.
~D.

ido

  • Rogueliker
  • ***
  • Posts: 618
  • Karma: +0/-0
    • View Profile
    • Tame Tick
Re: Roguelike Game Engines or Developer Wanted.
« Reply #23 on: March 05, 2009, 09:00:14 PM »
Seeing as the 7drl challenge starts in 2 days, let's do it after it's over, ok?

CoachWade

  • Newcomer
  • Posts: 11
  • Karma: +0/-0
    • View Profile
    • Football for Youth!
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #24 on: March 05, 2009, 09:03:15 PM »
Seeing as the 7drl challenge starts in 2 days, let's do it after it's over, ok?

Roger that. Have fun and good luck!

~D.
~D.

Anvilfolk

  • Rogueliker
  • ***
  • Posts: 374
  • Karma: +0/-0
    • View Profile
Re: Roguelike Game Engines or Developer Wanted.
« Reply #25 on: March 05, 2009, 10:19:20 PM »
Oh, come on, you guys are gonna keep that a secret from us? Scallywaggery, is what I say! :D

You should try some other email providers and maybe change gradually. Are there any that aren't forbidden?
"Get it hot! Hit it harder!!!"
 - The tutor warcry

One of They Who Are Too Busy

Slash

  • Creator of Roguetemple
  • Administrator
  • Rogueliker
  • *****
  • Posts: 1203
  • Karma: +4/-1
    • View Profile
    • Slashie.net
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #26 on: March 05, 2009, 10:53:36 PM »
There are no secrets between the roguelike cultists! :P

purpleflayer

  • Newcomer
  • Posts: 13
  • Karma: +0/-0
    • View Profile
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #27 on: March 20, 2009, 01:31:36 PM »
I would be happy to help with answering questions or even writing some small parts of code if you have some specific troubles.  But I could not spend time to write whole thing as I already have a project and, am also chasing a problem in my 7DRL release. :)  Unfortunately I am not familiar with Pascal, but a few other languages.

I think another person already has mentioned that "libtcod" is very good portable library for drawing on screen and handling map.  I am using it in my own project.

Perdurabo

  • Rogueliker
  • ***
  • Posts: 99
  • Karma: +0/-0
    • View Profile
    • Email
Re: Roguelike Game Engines or Developer Wanted.
« Reply #28 on: March 20, 2009, 09:17:21 PM »
I'm writing my own Roguelike in Delphi (which is basically Object Pascal), and I've coded professionally in Pascal for nigh-on a decade, so I'd be happy to help out with any Pascal queries you've got.

getter77

  • Protector of the Temple
  • Global Moderator
  • Rogueliker
  • *****
  • Posts: 4957
  • Karma: +4/-1
    • View Profile
Re: Roguelike Game Engines or Developer Wanted.
« Reply #29 on: March 20, 2009, 11:27:14 PM »
I'm writing my own Roguelike in Delphi (which is basically Object Pascal), and I've coded professionally in Pascal for nigh-on a decade, so I'd be happy to help out with any Pascal queries you've got.

Tad to the side, but, since you mention Delphi....

Might ye be interested in reviving a Roguelike that also went down this path?
Brian Emre Jeffears
Aspiring Designer/Programmer/Composer
In Training