Official Codex Discord Server

  1. Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.
    Dismiss Notice

Starting Development on First Game (Dev Journal)

Discussion in 'Codex Workshop' started by Druidpeter, May 20, 2019.

  1. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    Hello!

    So, basic boilerplate out of the way first. I'm a guy. I've never released a video-game, commercial or otherwise, and this is my first post. As it is my first post, nobody can see it except for mods, but which is fine, because I'm sure threads like these are a dime a dozen, and I don't expect anyone to take this seriously for a good long while, and I imagine most people assume I will fail anyways, so putting up a dev journal strikes me as inherently reasonable right now. At least, it can't make things any worse.

    I'm starting development on my first videogame, and I want to have a thread where I post about it and my progress. It is a Roguelike project: Koldrunn. On the surface, my ultimate intention for this game is to create a new, major roguelike, which will ascend to the land of major roguelikedom, with many happy offshoots and other games inspired by it. But underneath, I also am aiming to structure the code in such a way that it becomes a natural shooting off point for an open world 3D fantasy RPG more or less in the same vein as games like Skyrim, etc.

    No, no, it's all right. I'll wait for all of you to finish laughing before I continue.

    All right, now that the laughter and mockery is behind us(for now, I suppose...), here are some basic features of Koldrunn(As in, desired features, not implemented ones.)

    1. Base the underlying RPG Ruleset and task resolution system off of my own personal expansion of the ARM: Advanced Roleplaying Mechanics Ruleset, which was created by the inimitiable R.E. Bridson. (My own expansion of the ruleset is called ARMcore, and has not been published.)
    2. Completely re-engineered class, race, and alignment system, as well as magic mechanics, from the ground up, with almost no overlap between the more traditional D&D based systems.
    3. Explicit combat initiation! No more simply walking into creatures in order to attack them! Likewise, expanded tactical combat! New and shiny explicit attacking, blocking, shoving, grappling, and grunting actions! Enhanced tactical possibilities!
    4. Permadeath gives way to Legacy Lines, where you may resume a game after death if you have offspring! Likewise, a robust romance and social engineering system.
    5. Integrated Social, Barter and Combat systems: Enemies may spare your life, if you're willing to accept certain... conditions.
    6. And Much More!

    So, basically, you chase a figure from your past up 100 levels of a great tower. At the top, you meet the gatekeeper, and if he deems you worthy, then there are 4 Big Bosses for you to beat. If you manage to beat them and also meet certain conditions, then you unlock and get to proceed through 3 final chambers, where there are even bigger fatties for you to beat. And then finally you have a meeting with the figure from your past and a closing scene that resolves the mystery at the beginning.

    I will be posting elsewhere on the forum, as well. Not *just* posting a dev journal. I also want to be a member of the community, too. But I wanted to get this thread out of the way. Expect me to update this thread with my progress on a... semi-weekly basis?

    Well, we'll see.
     
    • Salute Salute x 7
    • Friendly Friendly x 3
    • Brofist Brofist x 1
    ^ Top  
  2. Catacombs Scholar Patron

    Catacombs
    Joined:
    Aug 10, 2017
    Messages:
    1,106
    Location:
    The Crypt
    Make the Codex Great Again!
    Sounds interesting. I would be interested in the code you're using to develop the game. What languages are you thinking?
     
    • it is a mystery it is a mystery x 2
    ^ Top  
  3. Bester Arcane Patron Vatnik

    Bester
    Joined:
    Sep 28, 2014
    Messages:
    4,897
    You're going to have to be a little bit more specific. How do you see romance in a roguelike? Is it a mini game? Is it a roguelike itself?
     
    Last edited: May 21, 2019
    • it is a mystery it is a mystery x 1
    • retadred retadred x 1
    • Excited! Excited! x 1
    ^ Top  
  4. hello friend Arcane

    hello friend
    Joined:
    Feb 26, 2012
    Messages:
    5,395
    Location:
    I'm on an actual spaceship. No joke.
    Loverslab confirmed
     
    • incline incline x 4
    • WTF am I reading WTF am I reading x 1
    ^ Top  
  5. Bester Arcane Patron Vatnik

    Bester
    Joined:
    Sep 28, 2014
    Messages:
    4,897
    Maybe you too can spare their life in exchange for romance? He said a "robust romance system" after all.
     
    • retadred retadred x 1
    ^ Top  
  6. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    Catacombs. Right now, the Roguelike just uses C++ and Ncurses. Later on, I want to basically swap out the Ncurses for SFML and OpenSceneGraph. The current code basically has every object render itself in immediate mode using ncurses library calls. I figure that these functions can be swapped out for ones that update a scene graph pretty easily with no large scale codebase changes, and all Ncurses initialization is done in a single method which can easily be swapped out for a single SFML initialization function.

    Bester and hello friend , So, the romance system is based off of three principles:
    1. Lust -- Basically physical attractiveness. Females have the edge on this point.
    2. Protection/Provision -- Basically, what you can provide or if you can protect. Males have the advantage here.
    3. Intimacy -- how close you are to a person in terms of things they tell you. You can't just walk up to people and expect them to tell you their life's story. You have to prove yourself trustworthy through the other two points, various other things.
    Actual implementation of these three principles, however, will have to wait for later. Need to get just the basics down first.
     
    • Sweat gathers upon my brow, let me dab it Sweat gathers upon my brow, let me dab it x 2
    • Funny Funny x 1
    • Thanks! Thanks! x 1
    • Friendly Friendly x 1
    ^ Top  
  7. Bester Arcane Patron Vatnik

    Bester
    Joined:
    Sep 28, 2014
    Messages:
    4,897
    Unless you write your own 3d engine, which is obviously instanity, your architecture will have to change drastically depending on 3d engine. So most of your code will be thrown out the window.

    So, procedurally generated quests?
     
    • hopw roewur ne hopw roewur ne x 1
    • it is a mystery it is a mystery x 1
    ^ Top  
  8. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    Bester , Well, I'll just have to cross that bridge when I get to it, I suppose. As for procedurally generated quests, no, I don't think so. Having quest systems is too artificial, and it's too difficult to really have a lot of variety and naturalism. I'm thinking I'd like to try something else. Maybe extending the combat system to incorporate other types of activities?
     
    • it is a mystery it is a mystery x 1
    ^ Top  
  9. Mastermind Arcane Patron Bethestard

    Mastermind
    Joined:
    Apr 15, 2010
    Messages:
    19,303
    *never made a game in his life*

    "Hey guys for my first project I'm gonna mix Daggerfall with The Sims, what do you think?"

    Make a shmup or tower defense game from start to finish then worry about roguelikes with advanced social interaction.
     
    • Brofist Brofist x 1
    ^ Top  
  10. Wayward Son Fails to keep valuable team members alive

    Wayward Son
    Joined:
    Aug 23, 2015
    Messages:
    1,866,082
    Location:
    Anytown, USA
    I don’t tend to like to say this, but I kind of agree with Mastermind here. With something this complex, you might burn out early on, which I never want to see (more people finishing their games gives me more entertainment and reference material :P). Personally I’d start with like he said, simple shit so you become proficient with the libraries and languages you’re using. However if your heart is set on it, then go for it. At the very least your project is ambitious, even if a little too much so imo.
     
    ^ Top  
  11. Bester Arcane Patron Vatnik

    Bester
    Joined:
    Sep 28, 2014
    Messages:
    4,897
    I think burning out and understanding what it is and what causes it specifically for you is an important lesson for success later on.
     
    • Brofist Brofist x 3
    ^ Top  
  12. Mastermind Arcane Patron Bethestard

    Mastermind
    Joined:
    Apr 15, 2010
    Messages:
    19,303
    I think a less ambitious project will give you a better idea of what it takes to make a game. Not properly planning even a medium complexity game will turn into a nightmare later on.
     
    • Yes Yes x 1
    ^ Top  
  13. ThisNameIsFree Learned

    ThisNameIsFree
    Joined:
    Mar 16, 2016
    Messages:
    448
    Since he is novice i doubt he can design shit. Can as well just make prototype and refactor it later on. As for less ambitious projects - he is not trying learn here, it's some kind of passion project. In such case it's better start coding right away doing features you want the most first.
     
    ^ Top  
  14. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    Hello, friends!

    It's been a productive week. Time for an update on my progress. So, the code base is coming along fairly nicely... I've saved time by not implementing a build process using makefiles or cmake or similar. This means that the game is currently not portable, as I have to actively invoke g++ with the proper compiler flags for my system to get a running executable. I've also saved time by in general organizing everything within only one header file, kolldrunn.hpp, and one source file, kolldrunn.cpp. Modern computers compile code very fast anyways, so I don't really have to worry about multiple headers and sources until the codebase gets TRULY huge. So that's nice.

    Here is a short gameplay video I've uploaded to demonstrate what I have so far:



    Not bad, eh? Currently implemented is:

    1. Level traversal and Dungeon generation
    2. Some basic functional character creation screens
    3. basic item pickup (though inventory system is not yet complete)
    4. Insertion of monsters into the level
    Quite nice, if I do say so myself! Though, there are some issues. First, monster behavior is very buggy. In the video, you see an 'M' standing perfectly still on the map. The monster is supposed to move randomly over open nearby tiles, but sometimes it will freeze like this. Other times it will move about a bit, and then freeze and stop moving. Don't know why. But I'll figure it out.

    Some other cool things to note are the stairs!
    1. Stairs going up and down are represented by a single glyph: '/'.
    2. Going up stairs or down depends on whether you move onto them from the left or right!
    3. In the game, you can easily go up all the levels right from the very beginning, if you'd like!
    4. Though, you'd best be prepared for the consequences... lol.
    I have a ton of refactoring, debugging, and general code cleanup to do before I add any more features on top of what I've already done, so I'll probably wait two weeks before my next update. Sorry about that, but you can't rush quality, you know. :3

    Oh! I also already have the base stat system up and working, but I don't have the GUI up yet, so that'll have to wait for the next time I post here. Hopefully I'll be able to comment on all of your other threads, too, soon!

    If you have any questions, please ask, and thanks for following along! :D
     
    • it is a mystery it is a mystery x 1
    • what? what? x 1
    ^ Top  
  15. Catacombs Scholar Patron

    Catacombs
    Joined:
    Aug 10, 2017
    Messages:
    1,106
    Location:
    The Crypt
    Make the Codex Great Again!
    Any plans to release the code? I've been teaching myself C, and I'm curious to see how a game like this is created through the code.
     
    ^ Top  
  16. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    Catacombs , Sure, if I can get the initial feature set of the game that I want implemented, then I've no problem with releasing the code. Having said that, it'll likely be a while before that happens, lol. But we'll see.
     
    • Thanks! Thanks! x 1
    • Friendly Friendly x 1
    ^ Top  
  17. Catacombs Scholar Patron

    Catacombs
    Joined:
    Aug 10, 2017
    Messages:
    1,106
    Location:
    The Crypt
    Make the Codex Great Again!
    All good. I'll be on the look out!
     
    ^ Top  
  18. luj1 You're all shills

    luj1
    Joined:
    Jan 2, 2016
    Messages:
    2,051
    Location:
    Eastern block
    :nocountryforshitposters:


    :nocountryforshitposters::nocountryforshitposters:


    Show Spoiler
    Just kidding, carry on
     
    ^ Top  
  19. Bester Arcane Patron Vatnik

    Bester
    Joined:
    Sep 28, 2014
    Messages:
    4,897
    :prosper:
     
    • Agree Agree x 1
    ^ Top  
  20. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    lol. xD Well, I do have some additional source conventions that help me keep things separate and detangled, so as to avoid circular dependency hell, and all that.
     
    ^ Top  
  21. Bester Arcane Patron Vatnik

    Bester
    Joined:
    Sep 28, 2014
    Messages:
    4,897
    Forward declarations.
     
    • Brofist Brofist x 1
    • Agree Agree x 1
    ^ Top  
  22. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    Yes! :D

    Plus some other things. I group classes together in reverse order of dependency( less dependent items above more dependent) , and only use forward declarations above classes that store pointers to, but don't call methods or access internal data objects of unknown definition.

    I also store methods in the source file in strictly the same order in which they are declared in the header, and define static members always directly above the constructor of their owning class. Likewise, defines and other preprocessor directives are always placed directly above the first object which has methods which use said define in the header.
     
    ^ Top  
  23. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    UPDATE:

    Hey everyone! Sorry for going ghost on you guys like that. My development was derailed because I am participating in the illustrious nation wide Illustrator's of the Future Contest, by the L. Ron Hubbard foundation. It's a national contest whereby participants submit 3 works depicting sci-fi and fantasy material, and it attracts the best of the best of the best. I originally had intended to finish my entries by the end of March, so as to enter the 2nd quarter of the competition. But I missed the deadline, and so I basically ended up having to put everything on hold and rush so as to meet the 3rd quarter deadline. I will be finishing up my submissions and submitting them to the contest by either the 22nd or the 24th of June. And then, after a brief resting period, will return to my video game project with some goodies. :D
     
    ^ Top  
  24. Catacombs Scholar Patron

    Catacombs
    Joined:
    Aug 10, 2017
    Messages:
    1,106
    Location:
    The Crypt
    Make the Codex Great Again!
    Post your submissions.
     
    ^ Top  
  25. Druidpeter Literate

    Druidpeter
    Joined:
    May 19, 2019
    Messages:
    18
    Due to contest rules, I can not post them anywhere until after the embargo period has passed, but I definitely will once that has happened! :D
     
    ^ Top  

(buying stuff via the above buttons helps us pay the hosting bills, thanks!)