Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - chooseusername

Pages: 1 [2] 3 4 ... 22
Programming / Re: Visual Studio so close to awesome
« on: July 04, 2015, 01:02:29 AM »
By darker I meant more rare, somewhat complex, error-prone even. Explicit memory order of atomic operations is also modern standardised C/C++ but using it for ad-hoc synchronization without a good reason and whole lot of understanding is plain wrong. I am under impression you indeed understand what you're doing and therefore curious about the reason. I've seen a fair amount of C code and the only reasonable use for unioning was close-to-metal operation. Heavily constrained code, interfacing with hardware modules with particular layout quirks and all that stuff. Since it almost always came to jumping through code and documentation figuring what goes where, I came to conclusion this is somewhat like volatile, which is indispensable in its very narrow use case, but totally misunderstood and horribly misused in modern desktop code.

Don't intend to start some flame, just can't see how mashing several loosely related things into one can help in arguably high-level (as opposed to MCU programming) roguelike world. Would be nice to see some example =)
I am just venting about an unfortunate bug that makes editing code that is both valid and supported by Microsoft impossible.  Hopefully it's fixed in VS2015.

You've made an assumption about union.  I don't know why.  I can't sit here and defend it, as I think that I shouldn't need to.  The benefits are obvious in my code, for the readability it adds. And being straightforward and readable is my main goal in my code.  All I can do is hope that some day you'll try using it, and judge it on it's merits.

It's unfortunate when people imagine problems with things, and then proceed to discourage their use.  The worst is the "goto considered harmful" meme.

Programming / Re: Visual Studio so close to awesome
« on: June 30, 2015, 09:49:49 PM »
It looks like you are trying to do something "smart". Usually when you start to stretch the language it's not going to give you any real advantages and will probably give you only problems, if not immediately then later.
I'm using straightforward natural feeling modern C and my code is cleaner for it.  I'm hitting a bug in Microsoft's editor.  Trying to do something "smart" is programming in C++  ;)

Programming / Re: Visual Studio so close to awesome
« on: June 30, 2015, 09:47:10 PM »
Being rather subjective, I am curious if there is a good reason using these darker sides of C in something like roguelike engine. Unions make data strcture less obvious and introduce possibilities for subtle bugs. It's justified in bare-metal situations or when trying to process something on a scale of millions of items per second. But roguelike?
It's modern standardised C, and a Microsoft extension of that which they use themselves in their headers.  darker?

You're really missing out.  I find it to be a natural extension of C that makes it easier to do what I want without preprocessor hanky panky.  If someone gets confused about combinations of structs and unions, honestly, they're not a very good programmer, or they've named them badly.  It makes code more straightforward and cleaner when done right.  If someone would get the use of them wrong, I worry about their use of pointers, and things like pointer arithmetic.

Programming / Visual Studio so close to awesome
« on: June 30, 2015, 08:05:12 AM »
I was working on my Roguelike engine and something I've made use of is anonymous structs and unions, which come as part of C11.

Code: [Select]
struct tagged {
    unsigned int top_type;
    struct {
        int b;
    struct {
        unsigned int key_type;
        union {
            char c;
            char text[32];
            unsigned int keycode;
All struct and union members accessible on the same flattened level.  Now you might wonder what happens if you want to share a part of this in two locations.  You could make a #define and hack it in place anonymously, or you could take advantage of a custom microsoft extension to C (also available in GCC).
Code: [Select]
union shared_key_value_u {
    char c;
    char text[32];
    unsigned int keycode;

struct shared_key_entry_s {
unsigned int key_type;
union shared_key_value_u;

struct location1_s {
    unsigned int top_type;
    struct {
        int b;
    struct shared_key_entry_s;

union location2_u {
    struct shared_key_entry_s;
    unsigned int v1;
    struct {
        int aa;
        char cc;
This allows me to write much nicer code.  Honestly, I think it should have been part of the C11 standard.  It's portable anyway, as you can pass "-fms-extensions" to GCC.

The only problem is that Intellisense doesn't implement the same grammar as the VS compiler, so it chokes and claims an error on every single member reference that compiles without error.  Which, floods your editor view with red incorrect noise.

Such a pity.  The weird thing is that Intellisense will work, if you limit your usage of this feature, perhaps to 'struct location1_s' or 'struct shared_key_entry_s'.  But if you throw in the 'union location2_u' case, then all the other cases now choke in Intellisense where they didn't before.  So annoying.

I hope they fix this in VS2015 which is coming out in a month.

Dungeons of Dredmor is $2.49 for the next 40 hours by the way. Not that I'd recommend it, but the argument that you can get 50 hours of gameplay out of something for a few bucks and it wasn't a good value is hard for me to understand (of course I've seen "not recommended" reviews on steam with 500+ hours logged... this blows my mind). Most of my favorite (non-RL) games are ~4 hours long.
What's depressing about this thread is the logic.

There's complaints that people don't want to pay a few bucks for something they don't value.    There's complaints that people just feel entitled and won't pay for anything.  So what?  People don't have to do things the way you do them.  And if someone plays the 7DRL cogmind, and considers it a free experience equivalent to the commercial version, I suspect they are deluding themselves.  Their loss.

I bought Dungeons of Dredmor, it could have 50000 hours of gameplay, and it'd still be a bland funless experience for me.  I probably played it for tens of hours, until I realised I was cheated and the fun wasn't coming.  So some people play it for 500 hours?  Good for them, even if I can't fathom how they could enjoy it.  I wish I could get a refund on it from Steam, not because the dollar or two I spent on it means anything, but rather because it sends a message to the game developer that he needs to do better if he wants my money.

Steam refunds are going to be great.  I can't want to try more games, and get refunds on the ones that I don't like.

I`m not sure though if - or how - the whole "new wave" thingy affects the traditional camp. After all, it was always a very niche part of videogaming. It`s not at all given that all these folks who play FTL would love Angband too, if only they knew it existed. I suppose most actually did try a classic RL or two, and they simply didn`t like it, one possible reason that it`s just not for them, or another - like in my case for 2 decades - misunderstanding and miscommunication of what the genre really is about.
Which might include unapproachability.

How it affects the traditional camp: If you were to look for a roguelike now, you have to hope that whomever is making a traditional roguelike uses the keyword "traditional" otherwise you might miss it amongst the detritus that litters the references to the term.

If people, like me, don't want to see the concept of a roguelike continue to be appropriated as the shortest path between between getting a BA in computer science and having a game on the market, new, exemplary work has to appear and new voices must appear with it to oppose the current establishment.
We've had decades for this to happen.  Do you really expect a champion to arise from within the proletariat to shake off the shackles of the establishment any time soon?

Traditional Roguelikes (Turn Based) / Re: Cogmind (now at Alpha 1b)
« on: June 15, 2015, 10:15:35 PM »
Wow Nikolai, thanks :)

I do get that occasionally, support from other professional software devs who dabble in RLs as a hobby, and I'm really glad I can be that somebody to you guys :D

It's true, in the long run making games is rarely practical since it's certainly tough to make money compared to a "real" job. I can't say how long I'll be able to continue doing it full time (beyond Cogmind), but I did at least promise myself that I'd take this last opportunity to try going full indie, otherwise I know I'd regret it one day ;)
I was thinking about you saying that you thought you might break even.  The way I see it, is that what you've done is an investment.

You've made a game which will age well, because it will always be part of a genre that is pretty much timeless.  We now live in a gaming culture where games not only get second lifes, but they live endlessly on places like gog and steam.  System Shock 2 and so on.  These are sold indefinitely.  An System Shock 2 is a game that looks somewhat dated.  Your better than state of the art roguelike, will age better, and you should continually be able to benefit from the investment.

For each game you make where you at least break even, from that point on there should be residual income.  And if the second game is closely inspired by a game that many more people already look back on with rose coloured glasses, something that should be more appealing because of it, and it's to the same quality that Cogmind is - I'd be surprised if it didn't work out well for you.

Disclaimer: Not an indie developer, and not placed to tell you how to risk your life, just sharing loose thoughts.  Very inspiring to hobbyist dabblers.


The libtcod bitbucket repo has moved under the new libtcod team:

It used to be under the url (which now 404s):

As the repo has been transferred properly from jice's account, it contains all issues, and existing forks and watchers are still linked to it.  But if you pull from the old repo, it will no longer work.  You will need to update the hg repo url your clone uses.

Jice may make an announcement related to this as he finds time.


Yeah I didn't see that one. And the definition is well established. Pretending it's not is odd. You don't have to be in the box, you can be a rogue-lite, it's not a problem. The label has such value to people, dunno why, it should just be used as a descriptor for players, so they know what to expect.
What if there's an argument to be made that most roguelike players these days are roguelite players, because games like FTL and Spelunky have had a much wider range of players and potentially higher numbers?  Because these games are labelled roguelikes, and have been used to push the expansion of the defintion, it can be argued that numerically players who understand a descriptor for roguelike, incorporate roguelite in the roguelike definition.

In which case by your own logic, there are no roguelites, only roguelikes and no real definition for the term!  Conundrum!  ;)

It's not hate, but real time RL's lack the problem solving component of a roguelike.

Roguelikes are not RPG's, they aren't about action or grinding or timing or memorization. They are strategy games with very real consequences for failure.

So when labels a game a roguelike just because it has procedural content and permadeath, well, there's that strategy part that's missing.

I really like Spelunky and Binding and the such. But they aren't strategy games for me, so they don't scratch the itch I have to play a roguelike. They scratch the Zelda or Megaman itch instead.

So not hate or anything, just some mild confusion by people who don't know what roguelike games are. People think the hybrid types are roguelikes. Meh. It's just a word but there's definitely something different about the strategy games.

Haven't you watched Jeff Lait's presentation at IRDC USA 2015?

"Some people" believe that roguelikes can only be like rogue, and are only making definitions to exclude.  Definitions should be ignored.  Apparently, if you start wanting to make a roguelike, and end up with something else, then it's still a roguelike because you want it to be.    It was well presented, and full of empty rhetoric, ending that segment with Jeff pushing his own definitions which seemed odd given all the previous talk.

Lots of people believe different things make roguelikes roguelikes, and lots of people want to tell other people their definition is the right one.

Me, I just want to be able to find games that are actually roguelikes, and ignore the ones that use the label but lack resemblance, as an ego thing.

Programming / Re: GUI library experiences
« on: June 12, 2015, 11:56:35 PM »
Now that you reminded me SDL has same kind of problem in default event handling. The reason I give up easily is over 20 years of programming. You get sensitive to certain things.
Getting a library to not hog the cpu is generally a matter of the person using the library doing it wrong and needing to learn some fundamentals.  A call to SDL_Delay in your main loop if none of the API you are using is blocking, at judicious lengths, is I suspect somewhat standard.

Programming / Re: and libtcod
« on: June 12, 2015, 11:55:01 PM »
Maybe this question is a bit silly, but:

Is way to auto-hide console?
How do you start it, and on what platform?

Traditional Roguelikes (Turn Based) / Re: Cogmind (now at Alpha 1b)
« on: June 12, 2015, 11:50:30 PM »
And we have our first update!

This is a minor release aimed at fixing all known bugs, and adding any feature requests that were either extremely high priority or could be implemented with minimal fuss.

I like how all the changes are clearly described, the iron will and focus it must have taken to compile that list, and keep the descriptions useful to players is admirable.  Too often I go back and look at my own and wonder what it all means, and have to do source code archaeology.

Incubator / Re: Dungeon G
« on: June 12, 2015, 11:47:12 PM »
Hello, i am developing a game, in Unity5 to android. And there is my latest version.
I am not sure this is going to drive many people to download it.  Post some screenshots to give people motivation to download it.  And maybe say some things about it.

Like "Don't you wish you were kung fu fightin?  With kicks as fast as lightning? Perhaps a little bit frightening, but with expert timing?  Then play my roguelike where you ....  and ....  Oh-hoh-hoh-hoah  Oh-hoh-hoh-hoah"

Pages: 1 [2] 3 4 ... 22