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.

Topics - Kevin Granade

Pages: [1] 2 3 ... 7
These forums have been hosted by GlyphGryph for the last 4 years, but that time is coming to an end.

I've acquired new hosting at Discord Inc. and I've migrated the entire forum contents (300,000 posts!) there.  The new site is accessible at

Please join me there where we can continue to discuss cataclysm (among other things).

This site will stay up in read-only mode until some time in March when the current contract expires, at which point it will go down.

I have a plan for redirecting links to the corresponding posts in that I'll try to get working before then, so that external links won't break.

Evidently github and other companies are celebrating October as an open-source awareness month thingy . *cough*schoolstarting*cough*

No guarantee what is going to go down, but if you have some changes you've wanted to make to DDA, code, json, documentation fixes, typos, whatever, maybe now is the time to do it and *maybe* there's some tshirts or something in it for you.

I'll post any swag offers I run across here throughout the month.

The aim rebalance I've been working on for about a month now is nearing completion, we'll need people to try it out and see what they think, I'll post again once it lands.
For now here's a preview of the updated aiming menu (click through to see detail, this is kind of a terrible image host):

Been looking into fixing ranged balance for good, see
Had what I think is a good idea for addressing the problem we have where rifles are unatturally good at very close range by overhauling how dodging works, but I can't follow up on it right now, so I want to make sure I don't forget it.

The stats quo is you spend time aiming, which drives down your dispersion, which you can think of as the width of your shot grouping.  At the instant when you fire, the target gets a chance to apply it's dodge bonus as a penalty to your accuracy.  If the target just keeps getting lucky, it can force you to miss no matter how well you aim, though the better you aim, the less likely this is.

What I realized is that a dodging opponent should be continuously attempting to interfere with your aim instead of doing so just at the final instant, and your aim should be "chasing" the opponent.
Just as a visualization, think of a movie or game with modern-ish dogfighting, where the hero (or villan) is trying to get a target lock on their opponent, the opponent is changing direction erratically, and the attacker is trying to steer their targeting recticle over the target so they can get a clean shot off.

To break it down, as the player is aiming, each amount of time spent aiming should be contested by the opponent, with the player improving their aim, and the opponent making it worse by moving away from where the player is aiming.

This isn't particularly interesting until you adjust the effectiveness of aiming and dodging based on various factors.  In particular, aiming speed would be angular speed, and dodging would be linear, so rifles with a low aiming speed would be efective at long range, but once an enemy is close, a rifle would be unable to keep up (unless you have superheros stats, in which case whatever), but a pistol or shotgun, which have much higher aiming speeds, would be able to aim faster than the monster dodges.

Implementation is simple, with each aim action, aim would improve based on weapon aim speed - monster dodge speed, where weapon aim speed is constant and monster dodge speed decreases linearly with range, i.e. monster.dodge_speed() / range.

I just recently landed an experimental implimentation of a HUUUGE new map feature by acadia (if you don't remember acadia, he's responsible for all of our large map features, the school, the mall, the sarcophagus, the refugee center, the farm, and all the missions related to them).
To try it out, start a new world with the "Beta National Guard Camp" mod enabled.
Please post any issues you encounter here so we can sort it out, it's so huge the only way to really check it out thoroughly is to explore a bunch.

Announcements / New main site, new forums.
« on: March 22, 2017, 06:13:32 AM »
As I'm sure most people are aware, we had a forum outage recently.  The cause if this was me not keeping up with my responsibilities, specifically I got a message from GlyphGryph that his hosting would be going down, but I misinterpreted this as meaning the website was going down, not the forums, and then I didn't follow up on it.  To be clear his message wasn't unclear, I was just being dumb.

Once the sites went down I started looking into options (also we have hosting offers from community members), and what I'd *like* to do is replace with a GitHub sites page (see here for the first draft) and replace with

Why?  There are a number of reasons, but it boils down to:

GitHub sites is just free, they have a hosting model that's not significantly more expensive than serving your source code, so they just tack it on as a value-add.
Discourse is normally a bit pricey, especialky for their hosted service, but we qualify for their open source plan, meaning again, free.

I'm not a very good sys admin, and the people running GitHub and Discourse respectively are good sys admins.  Additionally, time I spend managing these sites is time I don't spend working on dda, so it's a win win all around.

GitHub sites is pretty much designed to do exactly what we want it to, it's highly available, wired into repository metadata, and incredibly easy to update.  On the other hand is a custom Ruby/Heroku site.  I barely know Ruby, and I know nothing about Heroku, which is a big part of why it's not updated.
Discourse is similarly much more modern and feature full compared to smf.  To me the most outstanding features are community management and mobile support, but a lot of the features are really compelling, take a look at the Discourse homepage for the main ones.  Also check out their demo site to see how it works.

The GitHub sites transition is pretty much a done deal, it's already up, though we haven't flipped the DNS over yet.

The Discourse thing is very much a work in progress though, I got the go ahead to get started about an hour ago and there are a number of technical issues to address before we can migrate.  I want to hear from the community whether this is a change people are interested in.  Migrating will be pointless if we lose half of the community in the process.

Some questions you might have:
Will the posts in the current forums transfer?
Yes, there's a content transfer process, and we should be able to copy everything over.
Will my account transfer?
As far as I know, yes, you can keep using the same account.

Traffic rates looked sketchy at first but after an email exchange with Discourse they're pretty sure it's not going to be an issue.

Announcements / New GitHub feature, Project boards
« on: March 04, 2017, 04:08:10 AM »
GitHub has added a new feature recently, project boards that allow visual arrangement of related issues.
See for a few projects I've set up so far to check out the system (they're legit projects though, not toys).

Unfortunately GitHub hasn't addressed their wackjob permissions model, so you must have commit rights to edit the projects, which is unfortunate because I'd love to throw this open to lots of contributors.
When we're doing large scale or long-term projects, this will be a decent tool for showing progress across the individual issues and pull requests so users can follow along.

Check it out :)

Brought up here was using an ECS in DDA.  The resulting discussion was off-topic for github, so I'm moving it here as I'm interested in evaluating it, as a mental exercise if nothing else.

basic intro to ECS
A specific C implementation
A series of blog posts about ERC
A (IMO better) outline of the rationale for ECS
Wikipedia page

Combined list of benefits of ECS:
    No programmer required for designers to modify game logic
    Circumvents the “impossible” problem of hard-coding all entity relationships at start of project
    Allows for easy implementation of game-design ideas that cross-cut traditional OOP objects
    Much faster compile/test/debug cycles
    Much more agile way to develop code
    Data-driven composition of objects
    Safe managing of dependencies

I'm planning on following up with an outline of how ECS could be used in DDA.  Feel free to pitch in.

General Discussion / It's a boy (no, really)
« on: July 05, 2016, 01:37:31 PM »
I'm not sure if this is going to mean more time on the forums/dda or less, but I'm holding a 6lb, 13oz person named ronin parker granade* on my chest that I'm told is going to change everything about my life, wish me luck.

*technically not named yet, evidently that happens some time after the current age of 6 hours.

Pages: [1] 2 3 ... 7