Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 2 3 [4]

Author Topic: I want to learn how to program roguelikes.  (Read 6140 times)

miauw62

  • Bay Watcher
  • Every time you get ahead / it's just another hit
    • View Profile
Re: I want to learn how to program roguelikes.
« Reply #45 on: May 25, 2014, 03:54:17 am »

desperately swimming against the shitstream that is old SS13 code
I've heard the legends of men swallowed whole by the seas of spaghetti. Is it true?
Yeah, it's fairly true. We have certain areas of code that are just universally considered shit and dysfunctional, like botcode and saycode (there are currently about 15 bugs caused by saycode, most of which are extremely hard to fix), but they're so large and play such an important role that rewrites are near-impossible.

Mobcode is an entirely different can of worms, though. It's very, VERY spaghetti-y, but it constantly changes. Saycode and botcode don't get touched very often, but changes happen in mobcode all the time because, well, mobs are an integral part of the game. Saycode and botcode could be rewritten from the ground up, but mobcode is simply too large for that.

Fun fact: there used to be 3 functions to unequip items, and none of them called the others. The overrides of these functions did not call the parent.

Tgstation is currently in feature freeze, since we have about 300 bugs.
« Last Edit: May 25, 2014, 03:55:54 am by miauw62 »
Logged

Quote from: NW_Kohaku
they wouldn't be able to tell the difference between the raving confessions of a mass murdering cannibal from a recipe to bake a pie.
Knowing Belgium, everyone will vote for themselves out of mistrust for anyone else, and some kind of weird direct democracy coalition will need to be formed from 11 million or so individuals.

Trickman

  • Bay Watcher
    • View Profile
Re: I want to learn how to program roguelikes.
« Reply #46 on: May 25, 2014, 05:32:44 am »

I'd dare to say that most commercial games nowadays are written in C++, simply because you can do anything with them and because they have so many libraries.
They're created from a graphics engine with all the programming done in the graphics engine's scripting language, which is usually some kind of "evolved" C++/C# with different libraries, along with a few declarative-based scripts (LISP-like) for the IA routines. Think of it as a 3D photoshop with movement and a script editor.

Graphics engines themselves are usually written in a more standard/classic language (like C++), for speed.
Logged
This is a plain text forum signature. All typedwarfship is of the finest quality. It menaces with sentences of plain text.

Abalieno

  • Bay Watcher
    • View Profile
Re: I want to learn how to program roguelikes.
« Reply #47 on: May 29, 2014, 01:30:46 am »

Oh hey.

If you want the documentation of someone going from the very start (no programming) to trying to code an ambitious roguelike in C++, here I am:
http://brokenforum.com/index.php?threads/know-nothing-make-an-ambitious-roguelike-in-c.6227/

The first post contains a link to the actual beginning of the journey. It's all open-source, using open-source tools (Vim, mingw).

My manifesto is conceptual:
- While I learn how to (barely) code I go through the history of RPGs. So playing all classics on C64, PC, Amiga, even the JRPGs with good ideas, and trying to capture that particular flavor that went missing. And then roll all this into a messy whole that is going to be built on top of a full pen&paper system, mixing rules from the most complex and systems-simulations available (Rolemaster, Harnmaster, Dangerous Journey and similar). Something hardcore oldschool (but the goal is on party-based handcrafted world, so no randomly generated stuff, and milder death system than permdeath).

Obviously, I'm not even close to achieve any of that, but the fun is on the journey, and I made at last SOME progress (follow the link, all the code and stuff is available).
« Last Edit: May 29, 2014, 01:38:52 am by Abalieno »
Logged
 HRose / Abalieno
cesspit.net
Pages: 1 2 3 [4]