Hi Modders! Just introducing myself before I break all your stuff. ;)

Discussion in 'Mod Discussions' started by chargrove, October 24, 2013.

  1. chargrove

    chargrove Uber Alumni

    Messages:
    107
    Likes Received:
    350
    Hi folks! Lots of comments here since the last time I had a chance to write something. :)

    I thought about replying to individual mod feature requests with Yes/No/Maybe/Dunno responses, but I don't know if that's really going to be the best approach. So instead let me just talk a bit about what I'm doing right now.

    This may get a bit technical, but hey you're modders, you can handle it. ;)

    You may have browsed through our various .json spec files for units, tools, ammo, effects etc. A bunch of game content is defined this way. Some of these files are used exclusively on the client, hence they're open for client-side mods. Others are used exclusively on the server, which right now means you folks can't mod those (as we control the servers during the beta period), but that'll change once you start running your own servers.

    Hopefully both those cases will be kinda straightforward, mod-wise. Pure server mod here, pure client mod there.

    But then there's the spec data that's used on both the server and client, which tend to be some of the more interesting things, like units. Units have some fields that are only relevant to the server, some that are only relevant to the client, and some that are used on both. The ones that are used on both are things where the server is conceptually authoritative, but the client needs access to them for stuff like UI, or eccentric shader behavior.

    For example, the client needs to know about a unit's placement size (for rects when you're about to place the unit down), about the ways it can legally move (so you get the right icon when you hover over a place you may want to move to), you get the idea.

    Anyway, right now, the game expects these files to be in sync between the server and client in a way that makes many mods difficult, and makes dynamically creating new units on the server (and which don't even exist on the client) very problematic. So I'm overhauling these systems so that the client only uses its local spec info for things that are specific to the client (making client-only mods safer to do), while letting the server be more authorative with the data that it's supposed to be authoritative over, even if it's relevant to the client downstream and/or completely dynamic (like a buffed unit type).

    I don't know yet how that will impact each of your planned/desired mods, but I do know it's a precursor to many of them (especially once the server goes out the door), and it's good to be prepared. Plus there are some fun unit types that we could try that require us getting this working, so that's some additional motivation. ;)

    I can't speak regarding AI mods though, that's completely out of my domain here right (I haven't even been here 3 weeks yet!), but @sorien may be able to help there. :)

    TL;DR incase this sounds like internal engine gobbledegook: Making game friendly to more types of mods, so modded servers and clients can play nicer with each other.
  2. Pawz

    Pawz Active Member

    Messages:
    951
    Likes Received:
    161
    Hi Chargrove. If you could possibly find the time, would you be able to give us modders a bit of a heads up on what the animation system is like currently and/or future plans for it? Unless I've missed it somewhere, the current information consists of that there are some kind of animation rigs that are shared across units of the same type, and these rigs are complex / hard to create / potentially resource intensive.


    Second, is there any updates as to whether or not FBX is going to be used instead of the PAPA format?
  3. KNight

    KNight Post Master General

    Messages:
    7,681
    Likes Received:
    3,268
    My understanding is that in relation to the Commanders the Skeletons are 100% rigid and will be the same across all commanders using it. There has been no mention of this type of thing for units thought.

    Mike
  4. stormingkiwi

    stormingkiwi Post Master General

    Messages:
    3,266
    Likes Received:
    1,355
    (I fixed the tag to Sorian)
    Yep :) That would be awesome. You're talking about giving all units AI to reduce player micromanagement (and also making commands like hold position, return fire/hold fire more useful - you're actually turning their AI off because you have some specific purpose for them)

    In effect, you're talking about making the kind of unit a unit is more important, so force composition is more important? (E.g. you give an army a handful of fabbers to repair units on the go, creating escort behaviours and so on?)

    I'm hoping some of that stuff is in the game. If you have a unit whose combat behaviour is repair stuff, it makes sense for them to retreat from combat if they aren't protected.

    It would be great to be able to mod the AI :) Even reading the AI's source code to see what's going on would be fun as well. But I'm not really sure how plausible that is.

    Is Sorian likely to write an article/produce a video talking about the AI in depth? The approach used, the algorithms that make it up, why he uses that approach, etc.?

    If that is already somewhere, I apologise. I'm wondering if it will happen with the finished product.
    LavaSnake likes this.
  5. Pawz

    Pawz Active Member

    Messages:
    951
    Likes Received:
    161
    Right, but you'd assume they would use the most powerful tools in animation for the commander (unique, one unit per side etc), not the least. So I'm assuming whatever we have available with commanders is going to be the same as with units.
  6. mushroomars

    mushroomars Well-Known Member

    Messages:
    1,655
    Likes Received:
    319
    I won't dive too deeply into the dialogical hell that has been Commanders, but I highly doubt that the rig is rigid for any in-engine reasons, but rather for saving the animators' and modelmakers' time.

    Anyways, welcome to the slaughter! Grab a brain bucket, a kettle of tea and a rigid opinion or two. You're going to need it if you plan on spending a modicum of time on the forums.

    One thing I am curious about is how mods will be looked at by Uber. Various games, such as System Shock 2, and pretty much all lf Valve have incorporated various major user-made mods directly into the game in a later patch, sequel or re-release. I know SMNC has hit a few potholes with this idea, but I would still like to see Uber experimenting with it.
    archcommander likes this.
  7. cwarner7264

    cwarner7264 Moderator Alumni

    Messages:
    4,460
    Likes Received:
    5,390
    Here you go, Shroomy.
  8. KNight

    KNight Post Master General

    Messages:
    7,681
    Likes Received:
    3,268
    Well so far as we can tell the system is limiting and perfectly rigid, I suggest you go through the Alpha Commander thread in the Backer's Lounge to continue this discussion.

    Mike
  9. mered4

    mered4 Post Master General

    Messages:
    4,083
    Likes Received:
    3,149
    Red 4, standing by.
    maxpowerz likes this.
  10. thetrophysystem

    thetrophysystem Post Master General

    Messages:
    7,050
    Likes Received:
    2,874
    He means the AI being able to do tasks under the player, like a subcommander.

    Like, he sends fabbers here, and can request them basebuild like the AI would.

    Or, he can give them fabbers and a factory, and have it perpetually build units, amass them, and send them on raids just in the fashon AI would do.

    Its like you play, but if you need something done, you can give the AI just these units, and the AI will do it on it's own with just those units, so you are left with the rest of what you got to do your own usual thing with.

    As I said before, this would also be a newbie friendly learning tool, they could give it their commander and watch how they start up, so they can learn how to play this game without any prior experience. Right now, newbies don't understand expand fast and constantly produce, and they always end up small army against big and just flooded till death.

    I got to admit, I had this idea long ago, having an AI aide, and I think it becomes more favored by players and more interesting to have, as the AI gets smarter. Right now it already competitively does most these things, as far as base building and raid sending. I would love to have it do something for me, while I do something else, and never once have to micro on it myself or even scroll over to it.
    stormingkiwi, LavaSnake and Raevn like this.
  11. swizzlewizzle

    swizzlewizzle Active Member

    Messages:
    216
    Likes Received:
    56
    Yea sorian should know well how important AI modding is... He got his start in supcom 2 and here because of the good AI modding capability of supcom. Honestly if we don't get decent AI modding freedom then we can know for sure that sorian had joined the dark side :(
  12. exterminans

    exterminans Post Master General

    Messages:
    1,881
    Likes Received:
    986
    It got a bit quiet from Sorian's side. Sure, there are still improvements to the AI as in enabling it to use new unit types, but no word whatsoever on how he structured the AI and how/if it can be modded.


    Also one important point which never got answered properly yet:

    Server side mods containing active code. Not just tweaking the json files, but actually implementing new features which require full access to internal data structures and the netcode (for sending custom packages), option to replace core systems (e.g. the visibility calculation). As well as proper bindings for the client side so the UI / shaders can be fed with the additional data.

    Without, you are essentially bound to the limitations of the existing engine, which truly is lacking in several aspects, especially concerning the intelligence system.
  13. zihuatanejo

    zihuatanejo Well-Known Member

    Messages:
    798
    Likes Received:
    577
    Absolutely fantastic to hear this kind of thing from a developer. Mods are fantastic things, and they can really prolong the longevity and appeal of a videogame. One of the great points about PA from the start was the promise that you would design the engine from scratch with an eye to making modding easy. You've certainly delivered! Can't wait to see what the mod scene for PA is like a month or two after release (not to mention a year or two after release!).
    LavaSnake likes this.
  14. swizzlewizzle

    swizzlewizzle Active Member

    Messages:
    216
    Likes Received:
    56
    Well, haven't quite delivered just yet as we don't have any access to server side modding and don't know vast swathes of information yet but.. communication has been spot on. :)
  15. mrkroket

    mrkroket Member

    Messages:
    55
    Likes Received:
    8
    Server side modding. Anything else it's usually cosmetic and not a total conversion.

    For example I would like to see some kind of conversion to Civil like games: Tech trees, wonders (unique projects), alliances, trading, etc. And custom achievements (everybody loves achievements).
    It could be feasible with tools Uber provide for modding?

    Any deadline for server side modding? scripted language or API?
  16. exterminans

    exterminans Post Master General

    Messages:
    1,881
    Likes Received:
    986
    Sounds like much is going to be scripted, according to neutrinos latest status update.

    Although there might be some parts which can't be modified using solely the script API. Not necessarily because the data isn't made available, but because of massive overhead. Doesn't really matter much which scripting language they are going to use (I assume the went for javascript?), the most expensive part is always communication between script and native API.

    Simply unlocking special buildings under special occasions or maybe even adding another html based UI element shouldn't be an issue at all (that's all you need for tech tree). Going to 2D maps isn't exactly an issue either, new script for camera controls, adjusted map generator and that's it.

    Altering elements of the gameloop on the server itself might still be tricky though. That means I wouldn't count on mods which alternate basic functionalities, like alternative vision/radar implementations, additional movement layers, proper path finding for new movement patterns and alike.

Share This Page